Expand description
The pick-up note: when a fresh session continues a pane’s conversation from
AgentMux’s record (after an account switch, typically), the agent says
nothing until the user types, because the record only rides on the first
message (continuity::prefix_user_message). So once the session’s “Given to
the agent” card is written, the pane gets one ambient narration line: where
things stand, then “How can I help?”.
View-only, like every ambient narration: it never enters the CLI transcript and the record still goes with the first message. Best-effort: a slow, capped or failed model call means no note, never a held-up session.
Structs§
- Notes 🔒
- The latest spawn of each pane that carries the record, and when each pane last showed a note.
Constants§
- CARD_
POLL 🔒 - CARD_
SLACK_ 🔒MS - A card composed this long before the spawn was recorded still counts: the hook can run before the spawn path reaches its bookkeeping.
- CARD_
WAIT 🔒 - How long to wait for the new session’s card before writing the note anyway (a provider without the startup hook never writes one).
- KIND 🔒
- The narration kind the pane receives.
- REPEAT_
WINDOW_ 🔒MS - One note per pane in this window: a resume the CLI rejects respawns within the same launch, and the retry carries the record again.
Statics§
- NEXT_
TOKEN 🔒 - NOTES 🔒
Functions§
- is_
user_ 🔒message - Whether a stdin line is a message the user sent: a
type: userframe that isn’t AgentMux’s hidden memory re-delivery (<system-reminder>+ the reinjection signature). Control responses and hidden turns don’t cancel the note. - notes 🔒
- schedule 🔒
- Schedules the note for a session spawned at
spawned_mscarryingrecord.record_pendingturns false when the record goes out with the user’s first message: by then the user has spoken, and the note is dropped.