{"stamp":{"schema":"agent-livedocs@1","commit":"7ff6a54f6423","builtAt":"2026-10-14T14:12:26.629Z","dirty":false},"commit":"7ff6a54f6423","updated":"2026-10-14","scopes":[{"id":"work:read","title":"Read work","description":"AI workers, work items, their status and the delegate sessions on them.","minimumRole":"viewer"},{"id":"work:write","title":"Assign work and post messages","description":"Create work items for AI workers, post in work item threads, and revise specs and add notes to them.","minimumRole":"member"},{"id":"context:read","title":"Read work context","description":"A work item's brief, its checks, its evidence, the organization's knowledge, and its specs and decision log.","minimumRole":"viewer"},{"id":"memory:read","title":"Search memory","description":"The facts, procedures and episodes AI workers remember.","minimumRole":"viewer"},{"id":"approvals:read","title":"See pending approvals","description":"Actions waiting for a person. Deciding them stays in Agent.","minimumRole":"viewer"},{"id":"delegation","title":"Work on your own plan","description":"Take work Agent hands to your own Claude or ChatGPT, and report the results.","minimumRole":"member"},{"id":"offline_access","title":"Stay connected","description":"Refresh the connection without signing in again, until you revoke it.","minimumRole":"viewer"}],"tools":[{"name":"list_workers","title":"List AI workers","description":"The organization's AI workers with role, status, level and what they are doing now.","scope":"work:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"status","optional":true}]},{"name":"get_worker","title":"Get an AI worker","description":"A worker by id or handle: profile, role and open work.","scope":"work:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workerId","optional":true},{"name":"handle","optional":true}]},{"name":"list_work_items","title":"List work items","description":"Work items newest first, filtered by status, owner or text. Pass nextCursor back as cursor for the next page.","scope":"work:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"status","optional":true},{"name":"ownerWorkerId","optional":true},{"name":"q","optional":true},{"name":"limit","optional":true},{"name":"cursor","optional":true}]},{"name":"get_work_item","title":"Get a work item","description":"A work item by id (wi_…) or key (AGT-12): plan, status, artifacts, dependencies, approvals and escalations.","scope":"work:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workItem","optional":false}]},{"name":"get_work_item_snapshot","title":"Get a work item workspace snapshot","description":"Read one tenant-scoped work item with its checks, gates and evidence records. Use this data tool before render_work_item; it never changes work state.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workItem","optional":false}]},{"name":"list_delegates","title":"List delegate sessions on a work item","description":"The bounded agent sessions a worker ran on the item's slices: backend, status, usage and each one's report.","scope":"work:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workItem","optional":false}]},{"name":"get_work_item_context","title":"Get a work item's brief","description":"The item's brief as the platform gives it to an agent working on it: objective, constraints, settled decisions, the rules that apply, the checks, the files in scope and what done means. Read it before working on an item.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workItem","optional":false}]},{"name":"list_checks","title":"List a work item's checks","description":"The item's executable acceptance checks: what each runs, which criteria it covers and how it last ran, plus criteria no check covers yet.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workItem","optional":false}]},{"name":"list_evidence","title":"List a work item's evidence","description":"The item's evidence record: screenshots, recordings, logs, reports and links the platform captured, and waivers.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workItem","optional":false}]},{"name":"search_knowledge","title":"Search org knowledge","description":"Hybrid search over indexed documents (READMEs, ADRs, wiki pages) the workers can see.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"text","optional":false},{"name":"limit","optional":true}]},{"name":"search_memory","title":"Search worker memory","description":"Hybrid recall over the org memory the workers use: facts, procedures, episodes, with why each matched.","scope":"memory:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"text","optional":false},{"name":"workItem","optional":true},{"name":"limit","optional":true}]},{"name":"list_pending_approvals","title":"List pending approvals","description":"Actions waiting for a human decision. Read-only: approving or denying happens in the control plane, by a person.","scope":"approvals:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workItem","optional":true},{"name":"limit","optional":true}]},{"name":"get_workspace_overview","title":"Get the workspace overview","description":"Read sanitized organization-level work, worker, approval, escalation, provider and recent activity signals. Pass workerId to include launch readiness for that worker.","scope":"work:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workerId","optional":true}]},{"name":"get_work_launch_readiness","title":"Check work launch readiness","description":"Check the existing execution, provider, queue and budget readiness facts for one worker. This is a read-only preflight and does not reserve spend or launch work.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workerId","optional":false}]},{"name":"get_work_item_trace","title":"Trace a work item","description":"Read a bounded, redacted work item trace with event entries and run counts. Pass nextCursor to continue; this does not mutate runs or approvals.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workItem","optional":false},{"name":"runId","optional":true},{"name":"limit","optional":true},{"name":"cursor","optional":true}]},{"name":"explain_action","title":"Explain an action","description":"Explain one authorized action with its policy events, approval, same-run decisions and context manifest. The response is bounded and redacted.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"actionId","optional":false}]},{"name":"get_memory_record","title":"Read a memory record","description":"Read exactly one authorized memory record. Current records are returned by default; set history to inspect superseded, archived or expired history after explicit review.","scope":"memory:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"memoryId","optional":false},{"name":"history","optional":true}]},{"name":"read_evidence","title":"Read permitted evidence","description":"Read a permitted content-addressed evidence blob by its exact lowercase SHA-256 hash. Access is checked against the current tenant and caller before any bytes are read.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"sha256","optional":false}]},{"name":"render_workspace_overview","title":"Render the workspace overview","description":"Render a fresh, authorized workspace snapshot in Agent’s responsive read-only workspace view. Pass workerId to include launch readiness for that worker.","scope":"work:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workerId","optional":true}]},{"name":"render_work_item","title":"Render a work item workspace","description":"Render a fresh, authorized work item snapshot in Agent’s work, check, gate and evidence view. Pass the work item id or key from get_work_item_snapshot.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"workItem","optional":false}]},{"name":"get_repository_atlas","title":"Get a repository atlas","description":"A repository's atlas: its stack, commands, standards, infrastructure, data, observability, configuration (variable names only), CI, architecture and findings, computed from its files and Git history without a model. Without repository, lists every profiled repository in one line each. Read it before working in a repository.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"repository","optional":true},{"name":"section","optional":true},{"name":"depth","optional":true}]},{"name":"get_spend_savings","title":"Get ways to cut AI spend","description":"Ways to cut this organization's AI spend, ranked by monthly saving. Each one has the recorded numbers it starts from, how the estimate was computed, where to change it in Agent and a copy-ready prompt. Also lists unusual spend days and what drove them. Estimates at list prices, not bills; it changes nothing.","scope":"work:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"days","optional":true},{"name":"workerId","optional":true},{"name":"handle","optional":true}]},{"name":"assign_work","title":"Assign work to a worker","description":"Creates a work item owned by a worker (by id or handle). The worker picks it up on its own and may spend budget, change code and open pull requests within its policies; follow it with get_work_item. Use it when the person asks an AI worker to take something on.","scope":"work:write","readOnly":false,"destructive":true,"idempotent":false,"needsPerson":false,"inputs":[{"name":"title","optional":false},{"name":"objective","optional":false},{"name":"workerId","optional":true},{"name":"handle","optional":true},{"name":"requirements","optional":true},{"name":"priority","optional":true},{"name":"labels","optional":true},{"name":"parentId","optional":true},{"name":"dueAt","optional":true}]},{"name":"post_message","title":"Post a message","description":"Posts to a work item's thread (waking its worker) or to a thread by id. Mention workers with @handle. It is sent as this connection, not as the person.","scope":"work:write","readOnly":false,"destructive":true,"idempotent":false,"needsPerson":false,"inputs":[{"name":"body","optional":false},{"name":"workItem","optional":true},{"name":"threadId","optional":true}]},{"name":"list_my_runs","title":"List your runs","description":"Lists your connected-client runs. Overdue open runs are marked expired and their plan-use records are finalized as expired; those runs can no longer report results. Other open runs wait for submit_run_result. This operation updates run state without starting a worker or approving an action.","scope":"delegation","readOnly":false,"destructive":true,"idempotent":true,"needsPerson":true,"inputs":[{"name":"status","optional":true},{"name":"limit","optional":true}]},{"name":"get_run","title":"Get a run and its brief","description":"Gets your run and its brief. A fired or uncertain run is marked running with a pickup time; an overdue run is marked expired and can no longer report results, with its plan-use record finalized as expired. Use it to pick up an explicitly selected run, then report with submit_run_result. It does not approve actions or verify completion.","scope":"delegation","readOnly":false,"destructive":true,"idempotent":true,"needsPerson":true,"inputs":[{"name":"runId","optional":false}]},{"name":"start_run","title":"Start working on a work item","description":"Start working on a work item yourself, under your own plan: returns a run and the brief. Calling it again for the same item returns the open run. Report with submit_run_result.","scope":"delegation","readOnly":false,"destructive":false,"idempotent":true,"needsPerson":true,"inputs":[{"name":"workItem","optional":false},{"name":"note","optional":true}]},{"name":"submit_run_result","title":"Report a run result","description":"Report a run once: the outcome, a summary, links to what changed (pull requests, commits, branches) and the checks you ran. It is posted to the item's thread and the owning worker reviews it; the platform runs its own checks before relying on yours.","scope":"delegation","readOnly":false,"destructive":true,"idempotent":false,"needsPerson":true,"inputs":[{"name":"runId","optional":false},{"name":"outcome","optional":false},{"name":"summary","optional":false},{"name":"links","optional":true},{"name":"checks","optional":true},{"name":"questions","optional":true}]},{"name":"list_specs","title":"List specs","description":"Specs, most recently changed first, with status, revision, requirements proven, open notes and the latest audit. Archived specs only when asked for by status. Pass nextCursor back as cursor for the next page.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"status","optional":true},{"name":"q","optional":true},{"name":"limit","optional":true},{"name":"cursor","optional":true}]},{"name":"get_spec","title":"Get a spec","description":"A spec by key (SPEC-7) or id: its blocks with ids and refs, every note, the latest audit, the requirement trace, revisions and the standing decisions it should respect.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"spec","optional":false},{"name":"revision","optional":true}]},{"name":"search_record","title":"Search specs and decisions","description":"Searches spec titles, blocks, notes and the decision log. A key such as SPEC-7, SPEC-7 R3 or DEC-3 matches exactly first.","scope":"context:read","readOnly":true,"destructive":false,"idempotent":true,"needsPerson":false,"inputs":[{"name":"q","optional":false},{"name":"kinds","optional":true},{"name":"limit","optional":true}]},{"name":"add_spec_note","title":"Add a note to a spec","description":"Adds a comment, question or objection on one block of a spec (by blockId, or a ref such as R3) or on the whole spec, or a reply in a note's thread (parentId). It is recorded as this connection, not as the person.","scope":"work:write","readOnly":false,"destructive":false,"idempotent":false,"needsPerson":false,"inputs":[{"name":"spec","optional":false},{"name":"blockId","optional":true},{"name":"ref","optional":true},{"name":"kind","optional":false},{"name":"body","optional":false},{"name":"quote","optional":true},{"name":"parentId","optional":true}]},{"name":"revise_spec","title":"Revise a spec","description":"Saves one revision of a spec from block upserts (an id changes that block, only in the fields given; no id adds one) and removals, with a summary. Reply to notes by id in replies; list the notes the revision settles in answers.","scope":"work:write","readOnly":false,"destructive":false,"idempotent":false,"needsPerson":false,"inputs":[{"name":"spec","optional":false},{"name":"expectedRevision","optional":false},{"name":"upsert","optional":true},{"name":"remove","optional":true},{"name":"title","optional":true},{"name":"summary","optional":false},{"name":"answers","optional":true},{"name":"replies","optional":true}]}]}
