Execution decomposition
Tasks & subagents
tamux separates durable objectives from executable work and keeps delegation bounded, inspectable, and governable.
Task queue fundamentals
Tasks are daemon-owned work records with status, priority, dependencies, scheduling, session affinity, retry policy, parent/child relationships, and approval-waiting state.
This means work can be queued, resumed, cancelled, scheduled, or inspected independently of the current chat surface.
Goals above tasks
Goal runners convert executable plan steps into child tasks. That keeps planning and queue execution separate:
- Goals own objective, planning, replanning, and reflection.
- Tasks own dispatch, retries, session execution, and approval waits.
What subagents are
Subagents are bounded child work units, not free-floating clones. They can have tool filtering, context budgets, termination conditions, supervision policies, and duration caps.
| Control | Purpose |
|---|---|
| Tool filtering | Restrict the tools the child can see or use |
| Context budget | Keep the child within bounded prompt size and overflow policy |
| Termination conditions | Auto-stop on timeout, error count, or tool-call limits |
| Supervisor config | Control health checks, retries, and intervention level |
| Duration limits | Prevent runaway execution |
Collaboration protocol
tamux can also model collaboration explicitly through sessions containing contributions, disagreement records, voting, and persisted shared state. This is important because multi-agent decomposition is only useful if the resulting coordination is inspectable.
Why this matters
- Large work can be decomposed instead of forced through one loop.
- Delegation remains bounded and governable.
- Disagreements can become explicit instead of being hidden inside a merged answer.
- The operator can inspect collaboration state rather than trusting black-box swarm behavior.