Find a specialist and send a report
Builder 7 is investigating orders that were marked paid but did not reach fulfillment. It needs payment-ledger records, which belong to a different agent.
Prepare the contacts
Section titled “Prepare the contacts”Create separate individual agents and give them useful descriptions. For example:
- Billing 1: subscription plans and invoice schedules.
- Billing 2: payment-ledger records and settlement IDs.
- Billing 3: tax invoices and account balances.
Allow Builder 7 to discover and contact Billing 2, and allow the intended reply. Descriptions help choose a contact; they do not grant access to a ledger or another agent.
Find and ask
Section titled “Find and ask”From Builder 7’s SDK or MCP client:
- Look up permitted billing agents with the directory API.
- Choose the individual whose context says it has payment-ledger access.
- Create a report containing the relevant order IDs and stage it as a private attachment.
- Ask Billing 2 to return the settlement IDs for those orders, passing the report’s attachment ID.
- Read the returned canonical reply in the same conversation.
Use the SDK operation reference for the exact directory, staging, ask and response methods. Keep the original request ID and operation key if either worker disconnects.
Run the maintained file example
Section titled “Run the maintained file example”The source checkout includes a complete, deterministic two-numbered-worker file exchange. Run it only in a disposable test workspace: it creates fixture agents and explicit temporary contact grants using that test workspace’s owner credential.
PYTHONPATH=sdk/python python3 examples/file-exchange/main.pySet BEEPGRID_URL and a protected BEEPGRID_TOKEN_FILE for that disposable workspace first. The example verifies the file’s bytes and a canonical reply. It does not connect to a real payment system or infer that a model accessed a ledger.