mirror of
https://github.com/l0ng-ai/tty7.git
synced 2026-11-06 08:15:35 +00:00
The composer now stands in for the agent's input instead of sitting under it, so the pane has one input rather than two. - For Claude Code, Codex and Gemini the box is laid over the input area it finds on the grid (Claude's ruled prompt block and the status rows under it, Codex's `›` line, Gemini's framed prompt), painted in the grid's background. When the agent puts something else there — a permission prompt, a picker — the area stops reading as an input; after a 250ms grace the box steps aside and the keyboard goes to the TUI, and both come back with the input. Other agents keep the docked layout. - Over the input, Esc is the agent's (it interrupts), Ctrl+C clears the box or reaches the agent when the box is empty, and text typed at the grid lands in the box. - The toolbar: permission mode (read off the status row the box covers, falling back to the hooks' permission_mode; click or Shift+Tab to cycle), model (click opens Claude's picker), Think (Claude's thinking toggle), and a context ring. Labels come only from what the agent reported. - Claude hooks now carry an AgentReadout — permission_mode from the hook payload, the model and context size of the last main-thread reply from the transcript, the context window (1M for a [1m] model or past 200k), and alwaysThinkingEnabled — worked out in the hook so remote panes get it too. - Visual pass against the design: 13.5px text with the design's padding (the input's own padding subtracted), a 40px toolbar of 28px buttons, a dark round send button, image chips with their own glyph.