# Joule Table — A Metered, Gated, Attested Agent at Every Surface *Home: `jt.transaction.science`* An agent's accountability shouldn't stop at the edge of one tool. Joule Table is the open standard for **binding an accountable agent into any surface where work happens** — a coding editor, a chat channel, a git forge, a video meeting, a phone call. Wherever the agent shows up, the same three things hold: > **Its authority is a signed grant decided outside the model. Its work is > energy-metered. Every action seals to a verifiable receipt.** The name is the idea: the agent takes a **seat at the table** — present where the work is, and answerable for what it does there. Joule Table doesn't re-implement — it **composes** the sibling standards (**JCP** grants, **Mesh** metering, **`jcp-efficiency`** receipts, **Sandbox** attestation) into one contract, satisfied by two reference bindings: - **[Joule Hook](../joulehook)** — the **tool/editor** binding. Carries the gate + meter + receipt into a coding editor's own extension points (Claude Code, Cursor, Windsurf, Antigravity, Zed) — no fork required. - **[Joule Desk](../jouledesk)** — the **collaboration/teammate** binding. The persistent `@joule` you delegate to on a shared surface, whose every action seals to a ledger the channel can verify. Classes: `chat` (Slack/Discord/Matrix), `forge` (GitHub/GitLab), `room` (Zoom/Teams/Meet/LiveKit). Its `editor` class **is** Joule Hook. ## The three seams | Seam | What it guarantees | Composed from | |---|---|---| | **Gate** | each action decided **outside the model** against a signed capability + joule-budget grant | JCP | | **Meter** | joules at the **model-call boundary**, honest provenance, never overclaimed | Mesh · `jcp-efficiency` | | **Receipt** | every allow/deny/unit sealed, **verifiable** by anyone with the steward key | `jcp-receipt` · `jcp-efficiency` | ## The map ``` Joule Table · jt.transaction.science (gate · meter · receipt — at every surface) │ ┌───────────────────┴───────────────────┐ Joule Hook Joule Desk tool / editor binding collaboration / teammate binding Claude Code · Cursor · chat · forge · room Windsurf · Antigravity · Zed (Slack · GitHub · Zoom · LiveKit · …) └────────── editor class = Joule Hook ──────────┘ ``` - **Licence:** Apache-2.0 for reference code ([`LICENSE`](LICENSE)); CC-BY-4.0 for the specification text ([`LICENSE-SPEC`](LICENSE-SPEC)). - **Status:** v0.1.0 draft ([`SPEC.md`](SPEC.md)). The two bindings are implemented in [`../joulehook`](../joulehook) and [`../jouledesk`](../jouledesk). Joule Table is one of the [Transaction Science open standards](../README.md). Transaction Science is the steward, not the proprietor.