/** * attach Command - open a worktree's tmux session in this terminal (Issue #2317, Phase A/D) * * commandmate attach [--instance ] [--read-only] [--live] * * ## Why this exists when `tmux attach` already does * * Three reasons, and each one is a thing an operator got wrong before it: * * 1. **The session name.** It is `mcbd--[-]`, and the * suffix depends on the agent-instance roster. `commandmate ls` did not print * it, so the name had to be assembled by hand from three facts spread across * two commands. * 2. **The `=` trap.** The exact-match target form is `'=:'` (Issue #1156), * and in zsh an unquoted `=name` is an equals expansion — `tmux attach -t * =mcbd-…:` fails with `not found` before tmux ever runs. Measured; it is in * the Issue. This command quotes it so nobody has to know. * 3. **What you will see.** For an alternate-screen agent a bare attach shows * the composer and nothing else — the transcript is at the top of a 1000-row * canvas and tmux follows the cursor at row 997. That is not a fault to * debug, it is the geometry, and the hint printed before attaching says so * and names the three ways to read anyway. * * ## `--live` is claude-only, and that is a measurement * * See `LIVE_ATTACH_TOOLS` in `lib/tmux/session-surface.ts`. Every other tool * either reads its reply off the pane, or has detection rules measured only at * 200x1000, or cannot survive a width change at all. */ import { Command } from 'commander'; /** * The lines printed to stderr before the terminal is handed to tmux. * * stderr, not stdout: the session takes the screen over immediately afterwards, * and a caller piping this command's stdout is not asking for advice. * * Exported so the test asserts the text a user actually sees rather than a * paraphrase of it. * * @param cliToolId - Resolved CLI tool * @param worktreeId - Worktree id, so the hint's commands are copy-pasteable * @param sessionName - Resolved tmux session name * @param options - The flags as given */ export declare function buildAttachHints(cliToolId: string, worktreeId: string, sessionName: string, options: { readOnly?: boolean; live?: boolean; }): string[]; export declare function createAttachCommand(): Command; //# sourceMappingURL=attach.d.ts.map