Effect rewind: compensation registry for agent actions

Gates judge an action before it lands. Nothing answers the question after it lands wrong: can I take it back, and until when? This registry manufactures the answer in advance. Sitting in front of your side-effecting tools, it registers the compensating inverse and the pre-state snapshot before the effect lands — bound to the effect's receipt, fail-closed (no registration, no landing) — classes every effect at call time (FULLY REVERSIBLE UNTIL T / PARTIALLY REVERSIBLE with named residue / IRREVERSIBLE), and rewinds a whole run in reverse dependency order, restoring pre-run state exactly and naming residue precisely where reversal is impossible (the email a human already read; the payment that settled) instead of pretending.

Prices

Start

POST /register {"operator": "your-name"} → per-customer token (shown once). POST /trial to claim the one-time free effects. POST /verdict {"tool": "write_file", "args": {"path": "/r.txt"}} (Bearer token, or x402 payment without one) → the call-time class. POST /execute {"run_id": "r1", "tool": "write_file", "args": {"path": "/r.txt", "content": "..."}} → the effect lands in your managed effect store only after its inverse is registered; you get the receipt. POST /rewind {"run_id": "r1"} (Fleet) unwinds the run in reverse dependency order and names any residue. POST /consume {"artifact": "mail:mail-1"} reports that a human read a sent email (the read receipt that makes its residue real). POST /audit reconciles landed effects against registrations — a bypass shows up as a named GAP. GET /effects (Bearer) lists your account's registered effects — receipt, run, tool, class, status. MCP JSON-RPC at POST /mcp (tools: effect_verdict, effect_execute, effect_rewind, effect_audit). Machine docs: /openapi.json, /llms.txt, /.well-known/x402.

Limits (stated plainly)

Support: support@textforagents.com · Provider: TextForAgents LLC