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
Allow an Agentify-managed child to spawn or message another worker through injected relay MCP tools, while making escalation structurally impossible.
The broker—not the model and not caller-supplied fields—must own the authoritative task tree, remaining budgets, workspace roots, provider allowlist, delegation depth, fan-out, and permission grant.
User story
As a repository owner, I can permit one bounded level of Claude↔Codex delegation without allowing a child agent to broaden its authority, spend indefinitely, inspect unrelated tasks, or write to the workspace.
Effective grant
A child's effective authority is the intersection of:
repository policy
∩ controlling client grant
∩ parent task remaining grant
∩ provider capability
∩ operating-system enforcement capability
At minimum, a grant records:
parent task and immutable depth;
allowed operations and visible task IDs;
provider/model/route allowlist;
maximum children and total descendants;
remaining time, turn, token/cost budget where measurable;
workspace roots and read-only access in this slice;
terminal/network/MCP permission policy;
expiry, nonce, and revocation state.
Required behavior
Inject a task-scoped relay MCP endpoint/capability into eligible managed children.
Derive parent task, depth, and visibility from the authenticated connection; ignore caller-supplied attempts to spoof them.
Default maxDepth to 0. Nested delegation requires explicit repository/operator enablement.
Recommended first enabled policy is maxDepth: 1, bounded children, read-only, and explicit provider allowlist.
A child can only narrow limits. It cannot renew, transfer, mint, or widen its own grant.
Charge child reservations/usage against the authoritative parent budget and concurrency pool.
Prevent sibling observation or messaging unless explicitly granted by their common parent.
Detect cycles and reject task-tree references outside the caller's visibility.
Revoke descendant capabilities when the parent is cancelled or expires.
Fail closed when budget telemetry is unavailable; record whether each limit is native, broker-enforced, pre-run-only, advisory, or unavailable.
Do not treat AGENTIFY_CTX=off as the authorization mechanism; retain it only for context-capture recursion behavior.
Permission behavior
Read-only filesystem is the maximum grant in this slice.
Terminal and network default to deny or explicit ask according to repository policy.
Parent
#377
What to build
Allow an Agentify-managed child to spawn or message another worker through injected relay MCP tools, while making escalation structurally impossible.
The broker—not the model and not caller-supplied fields—must own the authoritative task tree, remaining budgets, workspace roots, provider allowlist, delegation depth, fan-out, and permission grant.
User story
As a repository owner, I can permit one bounded level of Claude↔Codex delegation without allowing a child agent to broaden its authority, spend indefinitely, inspect unrelated tasks, or write to the workspace.
Effective grant
A child's effective authority is the intersection of:
At minimum, a grant records:
Required behavior
maxDepthto 0. Nested delegation requires explicit repository/operator enablement.maxDepth: 1, bounded children, read-only, and explicit provider allowlist.AGENTIFY_CTX=offas the authorization mechanism; retain it only for context-capture recursion behavior.Permission behavior
Acceptance criteria
Out of scope
Blocked by