Labs · Agent Agreement Preflight
Controleer een verzoek tot ondertekening voordat je agent het verstuurt
Je agent stelt een NDA, een dienstenovereenkomst of een huurcontract op. Voordat iemand wordt gevraagd te tekenen, zegt deze controle of het verzoek klaar is, jouw goedkeuring nodig heeft of geblokkeerd is — en precies waarom. Het tekent nooit, verstuurt nooit en zegt nooit of een handtekening rechtsgeldig is.
Geen e-handtekeningdienst
Jithox tekent niet, verstuurt niet, bewaart je document niet en praat niet met een handtekeningaanbieder. Alleen de vingerafdruk van het document (een sha256-hash) en neutrale verwijzingen reizen mee. De beslissing is een deterministische beleidscontrole, geen juridisch advies.
Stap 4 van 4 · Resultaat. Deze pagina tekent en verstuurt niets.
Resultaat
Beoordeeld op de vaste klok 2026-09-10T12:00:00Z, zodat iedereen hetzelfde antwoord ziet.
Klaar om voor te bereiden
Je agent mag het ondertekenverzoek samenstellen en het formulier van de aanbieder invullen zonder te versturen. Versturen blijft bij jou.
Er is niets getekend, verstuurd, bewaard of betaald.
Waarom
- Het verzoek bereikt iemand buiten je werkruimte.
- Jouw goedkeuring dekt precies dit verzoek.
Wat toe te voegen
- —
Wat je agent nu mag doen
- Assemble the signature request draft: document hash and version, signer roles and signing order.
- Fill the provider's request form locally without sending it.
- Record the action hash next to the draft so the owner approves exactly this request.
- Ask the owner to approve the action hash before the expiry.
Wat hier nooit gebeurt
- Send the signature request (never here; only the owner, through the chosen provider, after approval)
- Sign or apply any signature or seal
- Declare a signature or the document legally valid
- Consent, accept or waive anything on anyone's behalf
- Store or transmit the raw document
- Call the provider's API
Kosten aanbieder
EUR 3.00 · Within the budget; nothing is charged by this check.
Handtekeningniveau
Meets the policy floor "simple". Legal sufficiency is not assessed here.
Ondertekenaars
- signer:jithox-owner · Tekent voor je bedrijf
- signer:shop-owner · De andere partij · buiten je bedrijf
Goedkeuringsreferentie (precies het verzoek dat jij zou goedkeuren)
b954d27a9ec8b94370ac82a097c28bb0edeadefad892234f49c622fca50c8f8a
Ongetekend en aan de hash gebonden: iedereen kan het narekenen. Het is geen handtekening en zegt niets over rechtsgeldigheid.
Details voor ontwikkelaars
Verzoek zoals beoordeeld
{
"schemaVersion": "jithox.agreement-preflight-request/v1",
"document": {
"type": "sales_contract",
"hash": "cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
"version": "2026-09-v1",
"title": "Reseller agreement",
"dataClass": "internal"
},
"signers": [
{
"role": "company_representative",
"ref": "signer:jithox-owner",
"external": false,
"authority": {
"kind": "registered_representative",
"ref": "kbo:EXAMPLE",
"scope": "Sign sales contracts"
}
},
{
"role": "counterparty",
"ref": "signer:shop-owner",
"organisationRef": "org:shop-EXAMPLE",
"external": true,
"authority": {
"kind": "none"
}
}
],
"agent": {
"id": "commerce-bot",
"client": "gemini"
},
"owner": {
"ref": "owner:jithox",
"workspaceRef": "ws:commerce"
},
"jurisdiction": {
"country": "BE",
"signatureLevel": "simple"
},
"expiry": {
"requestedExpiresAt": "2026-09-17T12:00:00Z",
"reminderPolicy": {
"enabled": true,
"everyDays": 3,
"maxReminders": 3
}
},
"provider": {
"id": "docusign",
"estimatedCostMinor": 300,
"currency": "EUR"
},
"budget": {
"maxAmountMinor": 500,
"currency": "EUR"
},
"revocable": "yes",
"requiredEvidence": [],
"humanApproval": {
"ref": "approval:commerce-2026-09-10",
"approvedBy": "owner:jithox",
"approvedAt": "2026-09-10T11:00:00Z",
"expiresAt": "2026-09-17T12:00:00Z",
"actionHash": "b954d27a9ec8b94370ac82a097c28bb0edeadefad892234f49c622fca50c8f8a"
},
"idempotencyKey": "commerce-reseller-2026-09-10"
}Resultaat
{
"schemaVersion": "jithox.agreement-preflight-result/v1",
"policyVersion": "jithox.agreement-preflight-policy/v1",
"status": "preview_local_build",
"preflightId": "agp_b954d27a9ec8b943",
"decision": "READY_TO_PREPARE",
"reasonCodes": [
"external_recipients",
"approval_valid"
],
"reasons": [
{
"code": "external_recipients",
"message": "The request would reach at least one party outside the workspace. The owner approves this exact request (its hash) before anything is sent."
},
{
"code": "approval_valid",
"message": "Approved by owner:jithox (approval:commerce-2026-09-10) for exactly this hash."
}
],
"missingRequirements": [],
"allowedPreparationSteps": [
"Assemble the signature request draft: document hash and version, signer roles and signing order.",
"Fill the provider's request form locally without sending it.",
"Record the action hash next to the draft so the owner approves exactly this request.",
"Ask the owner to approve the action hash before the expiry."
],
"prohibitedSteps": [
"Send the signature request (never here; only the owner, through the chosen provider, after approval)",
"Sign or apply any signature or seal",
"Declare a signature or the document legally valid",
"Consent, accept or waive anything on anyone's behalf",
"Store or transmit the raw document",
"Call the provider's API"
],
"approvalRequired": true,
"approvalStatus": "valid",
"cost": {
"relevant": true,
"estimatedMinor": 300,
"currency": "EUR",
"budgetMinor": 500,
"withinBudget": true,
"source": "caller",
"note": "Within the budget; nothing is charged by this check."
},
"signatureLevel": {
"requested": "simple",
"policyMinimum": "simple",
"meetsPolicy": true,
"note": "Meets the policy floor \"simple\". Legal sufficiency is not assessed here."
},
"signers": [
{
"ref": "signer:jithox-owner",
"role": "company_representative",
"external": false,
"authorityOk": true
},
{
"ref": "signer:shop-owner",
"role": "counterparty",
"external": true,
"authorityOk": true
}
],
"expiresAt": "2026-09-17T12:00:00.000Z",
"actionHash": "b954d27a9ec8b94370ac82a097c28bb0edeadefad892234f49c622fca50c8f8a",
"evidence": {
"required": [],
"supplied": [],
"missing": []
},
"replayProtection": {
"scope": "process_memory",
"durable": false,
"idempotencyKey": "commerce-reseller-2026-09-10"
},
"receipt": {
"kind": "agent_agreement_preflight_receipt",
"signature": "unsigned_hash_bound",
"algorithm": "sha256-canonical-json",
"digest": "53388c92c11b9731b2ada756c74bdc41fb11ea80f4e717a38bf38da0e7b51ac6",
"boundTo": {
"actionHash": "b954d27a9ec8b94370ac82a097c28bb0edeadefad892234f49c622fca50c8f8a",
"decision": "READY_TO_PREPARE",
"policyVersion": "jithox.agreement-preflight-policy/v1",
"evaluatedAt": "2026-09-10T12:00:00.000Z",
"preflightId": "agp_b954d27a9ec8b943"
},
"note": "This receipt is NOT signed, is NOT a signature, and says nothing about legal validity. It is bound by a sha256 digest over the canonical decision; anyone can recompute it."
},
"signed": false,
"sent": false,
"legalValidity": "not_assessed",
"executed": false,
"evaluatedAt": "2026-09-10T12:00:00.000Z"
}Zo werkt het
1 · Je agent beschrijft het verzoek
Vingerafdruk en versie van het document, wie tekent met welke bevoegdheid, gegevensklasse, land en handtekeningniveau, vervaldatum, aanbieder en budget, bewijs.
2 · Jithox controleert deterministisch
Hetzelfde verzoek krijgt altijd dezelfde beslissing: beleidsregels, geen model, geen opzoekingen, geen opslag.
3 · Jij beslist
Klaar, goedkeuring nodig of geblokkeerd — met redenen en een goedkeuringsreferentie die jij kunt goedkeuren. Versturen blijft bij jou en je aanbieder.
Zo gebruiken Jithox' eigen teams het
Vier teams, vier verzoeken, vier beslissingen op een vaste klok. Demonstraties, geen echte verzoeken.
Beoordeeld op de vaste klok 2026-09-10T12:00:00Z, zodat iedereen hetzelfde antwoord ziet.
MCP/Agent Tooling
Partner terms for a new MCP integrator
The tooling bot prepared partner terms for an integrator. The counterparty is external and the document is confidential, so the owner approves this exact request before it leaves.
uitroeptekenJouw goedkeuring nodig
external_recipients · data_class_requires_approval · approval_missing
Security
Pentest authorisation letter drafted by the agent
The security bot wanted to be recorded as the signer of a customer's authorisation letter. An agent never signs by itself: without a standing grant with scope and expiry the request is blocked.
kruisGeblokkeerd
signer_role_unsupported_for_agent · external_recipients · data_class_requires_approval · signature_level_unknown · approval_missing
Commerce
Reseller agreement with a web shop, approved
The commerce bot prepared a reseller agreement; the owner already approved this exact hash. External and within budget, so it is ready to prepare — sending stays with the owner.
vinkjeKlaar om voor te bereiden
external_recipients · approval_valid
First Cash
Statement of work with a client, over budget
The first-cash bot prepared a statement of work and picked a provider whose estimated cost is above the stated budget. Blocked until the budget or the provider changes; nothing is charged.
kruisGeblokkeerd
external_recipients · budget_exceeded · approval_missing
Wat waar is over deze controle
- Het is een beleidscontrole, geen juridisch advies: het zegt niets over of een handtekening rechtsgeldig is.
- Alleen de sha256-vingerafdruk van het document reist mee; het document zelf nooit.
- Ondertekenaars zijn neutrale verwijzingen; een e-mailadres, telefoonnummer of bankrekening wordt geweigerd.
- Een AI-agent is nooit de ondertekenaar: hij mag alleen handelen onder een vastgelegde machtiging of vertegenwoordiging, met reikwijdte en vervaldatum.
- Alles wat iemand buiten je werkruimte bereikt, heeft jouw goedkeuring van de exacte verzoekhash nodig.
- De kosten van de aanbieder worden vooraf geschat en met je budget vergeleken; deze controle rekent niets aan.
- Het ontvangstbewijs is ongetekend en aan de hash gebonden; iedereen kan het narekenen.
- Het is een gratis Labs-preview: niet verkocht, niet in de sitemap, geen belofte.
Wat dit nooit doet
- Een document tekenen.
- Een juridische identiteit claimen.
- Een ondertekenverzoek versturen.
- Namens iemand toestemming geven.
- Een ruw document bewaren.
- Een externe aanbieder aanroepen.
- Beweren dat een handtekening rechtsgeldig is.
- Klantgegevens naar een model sturen.
Gratis. De interactieve controle, de API en de verbindingstool kosten niets in deze build; een betaalde controle met ontvangstbewijs is een voorstel voor de eigenaar, geen prijs. Status: preview local build.
Details voor ontwikkelaars
Drie gratis routes en één verbindingstool. De verzoek- en resultaatschema's zijn gesloten; elke beslissing, redencode en foutcode staat in het schemadocument.
Details voor ontwikkelaars
- Schema:
- GET https://jithox.com/api/agreement-preflight/v1/schema
- Beoordelen:
- POST https://jithox.com/api/agreement-preflight/v1/evaluate
- Voorbeelden:
- GET https://jithox.com/api/agreement-preflight/v1/fixtures
- Policy:
- jithox.agreement-preflight-policy/v1 · 60/min
- MCP:
- agreement_preflight @ https://jithox.com/api/agent-connection/v1/mcp · CONFIG_READY
- Decisions:
- READY_TO_PREPARE · NEEDS_APPROVAL · BLOCKED · UNAVAILABLE
Via je Jithox-verbinding heet de tool agreement_preflight en vereist hij de scope actions:prepare:agent-agreement-preflight. CONFIG_READY: vermeld en aanroepbaar; geen client is CERTIFIED totdat een productiecanary heeft gelopen.