Skip to content

Keep operator chat rooms open after agents leave - #72

Open
mostlydev wants to merge 2 commits into
masterfrom
chat-keeps-room
Open

mostlydev wants to merge 2 commits into
masterfrom
chat-keeps-room

Conversation

@mostlydev

Copy link
Copy Markdown
Owner

Summary

Operator feedback: tt chat exited as soon as the last agent left, because the room was deleted. Operators often want to stay in the room after agents think they're done, and wake them again later.

  • A running tt chat console now keeps its room when the last agent leaves or is kicked. Agents that rejoin land in the same room with its history.
  • An agent-less room is deleted when the last console closes it. A console whose process is gone, or can't be verified, never keeps a room alive. Idle purge follows the same rule.
  • Addressing an agent that left explains that it can't receive messages until it rejoins.
  • Skill and bundled instructions: while an operator console is in the room, agents finish with tt standby (cmux wake, or manual outside cmux) instead of tt leave, unless the operator says to leave.

Affected commands

tt chat, tt leave, tt kick, idle room purge; the shipped skill and bundled instructions.

Verification

  • Full suite: 499 passed, 1 skipped; typecheck, build, git diff --check clean.
  • New tests: a live console keeps the room across leave and kick, and a rejoin lands in the same room; dead and unknown console liveness don't retain; the last console closing an agent-less room deletes it; idle purge keeps or drops by console liveness; the last owner leaving clears the lease and keeps history; a chat session stays open after the last agent leaves and streams a returning agent's messages.
  • Real PTY check (codex): a zero-agent console stays open and accepts messages, rejoin keeps the same room and history, /quit restores the terminal and deletes the empty room.

Native waking of idle harnesses is tracked separately in #69.

A running tt chat console now keeps its room when the last agent leaves
or is kicked, so the operator can stay and agents rejoin the same room.
The last console closing an agent-less room deletes it, and a console
whose process is gone never retains a room. Chat explains when an
addressed agent has left, and the skill tells agents to finish with
tt standby instead of tt leave while an operator console is present.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant