You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[coordination][deferred] Cross-agent delegation (delegate a goal to another instance's brain) #159
DEFERRED — needs a real second consumer beyond Coder. Generalize delegate so a coordinator hands a GOAL to ANOTHER instance/agent's brain (its AgentDO), which owns execution with its own tools/memory/guardrails — the manager+workers shape for the multi-agent marketplace. Do NOT build speculatively; wait for the second consumer. Part of #154 + epic #58.
This was deferred with "needs a real second consumer beyond Coder — do NOT build speculatively." That gate is now met: the requirement is configurable multi-layer supervision — a user wiring agents to oversee other agents, at arbitrary depth, as configuration rather than code.
Design: docs/supervision.md.
Rather than building this directly, it should now fall out of:
Live as of 67eb915 — lib/delegate-instance.ts + POST /v1/instances/:id/delegate.
This was deferred with "needs a real second consumer — do NOT build speculatively", then gated behind #183/#184/#185. All three landed, so it is on. Each is enforced on the delegation path, not assumed:
Delegation is logged under the parent's trace, so a multi-level tree reads as one run — the join choreography normally lacks.
11 tests, including the two that matter: a non-subordinate target is refused and never starts a workflow, and depth comes from a 2-level graph rather than the request.
Done in 67eb915, with capability routing in c9f093f and checkability in 25b3871. Proven in production: Coder Lead delegated to Repo Coder, run completed done in 1 of 2 iterations. Graph membership, derived depth, inherited budget and onBehalfOf-only authority are all enforced on the delegation path.
Activity
docs: coordination-primitives design (#154) — delegate goals, not one…
serge-ivo commentedon Aug 3, 2026
The second consumer has arrived
This was deferred with "needs a real second consumer beyond Coder — do NOT build speculatively." That gate is now met: the requirement is configurable multi-layer supervision — a user wiring agents to oversee other agents, at arbitrary depth, as configuration rather than code.
Design:
docs/supervision.md.Rather than building this directly, it should now fall out of:
delegatetarget fromrepoIdto a supervisable entity (the type change that unlocks everything)Cross-agent delegation is then the natural consequence of those four, not separate work. Keeping this open as the outcome to verify against.
feat(coordination): turn on agent-to-agent delegation; console rides …
serge-ivo commentedon Aug 4, 2026
Live as of
67eb915—lib/delegate-instance.ts+POST /v1/instances/:id/delegate.This was deferred with "needs a real second consumer — do NOT build speculatively", then gated behind #183/#184/#185. All three landed, so it is on. Each is enforced on the delegation path, not assumed:
allowance × fanout^depth.onBehalfOf— audit, never permission. The subordinate runs on its own brain, so [coordination][security] Supervision must not escalate authority — a delegation lends a goal, never privileges #185 holds by construction.Delegation is logged under the parent's trace, so a multi-level tree reads as one run — the join choreography normally lacks.
11 tests, including the two that matter: a non-subordinate target is refused and never starts a workflow, and depth comes from a 2-level graph rather than the request.
fix(budget): a DELEGATED coding run must draw on the tree's pool (#184,
fix(delegation): a Pilot delegation must be checkable (#159)
serge-ivo commentedon Aug 4, 2026
Done in
67eb915, with capability routing inc9f093fand checkability in25b3871. Proven in production: Coder Lead delegated to Repo Coder, run completeddonein 1 of 2 iterations. Graph membership, derived depth, inherited budget and onBehalfOf-only authority are all enforced on the delegation path.fix(supervision): the roster fits, and the count rides in front of it…
fix(coding): a Cloudflare attempt error is classified, reported as an…