Thread model
Threads & Handoffs
Durable work lines, visible participants, hidden delegation, and explicit ownership changes.
Durable work containers
A thread is a persisted ordered conversation with messages, tool results, model metadata, and timestamps. Threads are where the operator-facing history actually lives. Good tamux usage keeps one thread per real mission and continues it while that mission remains the same.
Visible participants
Use @agent ... to register or update a resident participant on the current thread.
@weles verify claims before answering
@rarog jump in when the operator looks confused
- The main thread owner does not change.
- Repeating
@agentupdates the participant instead of creating duplicates. - Participants stay registered until explicitly stopped.
This is the right mode when you want advisory or visible specialist participation without changing who owns future replies.
Hidden delegation
Use !agent ... for hidden internal coordination.
!weles verify whether this claim is correct
!rarog prepare a softer operator-facing summary
- The current visible thread stays where it is.
- The request is sent internally to the target agent.
- Current thread context can be attached when delegation originates from an existing thread.
Stop a participant
Participants can be deactivated without changing thread ownership:
@weles stop
@weles leave
@weles done
@weles return
Ownership handoffs
A handoff is different from both @agent and !agent. It changes who owns future replies in the thread. This is the correct tool when another persona should become the primary responder going forward.
- Ownership changes are explicit and visible.
- Future operator messages route to the new owner.
- Linked handoff context can remain hidden while the switch itself is recorded.
Why the model matters
| Mechanism | Use it when | Do not use it when |
|---|---|---|
@agent | You want visible advisory participation | You need another agent to own future replies |
!agent | You want hidden internal coordination | You want the user to talk directly to the other agent |
| handoff | Ownership should change | You only need a second opinion or background check |
This keeps thread state honest and prevents multi-agent work from becoming ambiguous to the operator.
File references and directives
Leading @agent is treated as an agent directive only when it matches a known agent alias. File references still work in other positions, which lets tamux preserve ordinary workspace mention behavior without breaking the directive model.
Continuity through handoffs
Because threads are daemon-owned and memory is shared, handoffs do not reset context. The receiving persona inherits durable thread history, linked runtime state, and the same goal/task associations. This is one of the reasons tamux can function as a real multi-agent environment instead of separate personas living in disconnected chat silos.