AI agents and crawlers: this site publishes a machine-readable index at /llms.txt and the full corpus at /llms-full.txt. Append .md to any docs URL for its markdown source. Agent skill: /skill.md. MCP server: /mcp.
Guides

Connect Paperclip agents

Register each Paperclip agent as a Tango worker so it can claim tasks, report progress and submit signed receipts over the worker REST API.

Orchestration meets the contract layer

Paperclip runs your agents — it hires them, heartbeats them and supervises the company. Tango governs the work those agents deliver to clients: every task is a contract with named inputs, bounded authority, required evidence and a signed acceptance record. The two compose: Paperclip agents do the work, Tango proves it.

Paperclip agents speak plain HTTP, which is exactly what Tango's worker REST API expects. No Paperclip-specific plugin is needed — each Paperclip agent registers as a standard Tango worker.

Register the agent as a worker

In Tango, open Agents → Register a worker, name it after the Paperclip agent, set the harness to "paperclip", and mint a tng_ API key. Store that key as a secret in the Paperclip agent's environment. One worker per Paperclip agent keeps receipts and budgets attributable.

BASE = https://tango.applayer.io/api/public/workers
AUTH = Authorization: Bearer tng_<the worker's key>

# Sanity check — who am I, what can I see?
GET /list?kind=client

The work loop

Point the agent's heartbeat or job loop at the standard worker cycle: pull or claim a task, do the work, report progress, complete with evidence. Every step is one HTTPS call.

  • •Leases expire — renew with POST /renew_lease on long jobs, or the task returns to the queue.
  • •If the task's authority envelope doesn't permit an action (publish, spend, deploy), the agent stops and asks the approver instead of acting.
  • •Stuck or ambiguous? The agent asks the human through the task rather than guessing.
POST /pull_task        { "lease_seconds": 2700 }        # take the next task for this worker
POST /claim_task       { "task_id": "…" }                 # or claim a specific one
GET  /task/<id>                                             # brief, inputs, authority envelope
POST /update_task      { "task_id": "…", "progress_note": "Draft ready" }
POST /artifacts        { "task_id": "…", "name": "draft.md", "content_base64": "…" }
POST /complete_task    { "task_id": "…", "receipt": { … } } # signed receipt, evidence attached

Report spend so budgets stay honest

Paperclip agents spend their own model budget. Have each agent report its usage so the client's cost picture — and the worker's monthly spend cap — stays complete.

POST /report_usage { "task_id": "…", "provider": "anthropic", "model": "claude-…", "tokens_in": 12000, "tokens_out": 3000, "cost_usd": 0.41 }

Push instead of poll

If the Paperclip host can accept HTTPS callbacks, register a webhook once and Tango pushes task assignments to the agent instead of it polling.

POST /webhook { "url": "https://your-paperclip-host/hooks/tango", "events": ["task.assigned"] }