You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* refactor: consolidate 6 per-session maps into sessionHandle struct
Replaces sessions, ptys, cmds, doneChans, frameDetectors, and
responders maps with a single handles map[string]*sessionHandle.
Eliminates the risk of map synchronization drift across handlers.
* refactor: remove Session struct, promote fields into sessionHandle
Eliminates the intermediate Session struct that duplicated SessionMeta
fields. All session state now lives directly in sessionHandle, removing
one layer of indirection and a source of state drift.
* refactor: extract waitForSettle helper from handleSnapshot
Deduplicates the two near-identical settle polling loops in
handleSnapshot into a shared helper function.
* refactor: consolidate send+wait+read into Client.Exec
Extracts the duplicated "send input, wait for output, return new
content" pattern from cmd/exec.go and mcp/tools.go into a single
Client.Exec method. Callers now use daemon.ExecOptions instead of
manually orchestrating Read/Send/ForOutput.
Also refactors MCP ToolRegistry to use registration-based pattern:
adding a tool is now a single register() call instead of coordinated
edits to List() schema, Call() switch, and handler method.
* refactor: add protocol versioning between daemon and client
Client sends ProtocolVersion=1 with every request. Daemon rejects
mismatched versions with a clear error message telling the user to
restart the daemon. Version 0 (omitted) is accepted for backward
compatibility during rollout.
* feat: add --log-file flag and panic recovery to daemon
Daemon previously ran with stdout/stderr discarded, making crash
debugging impossible. Now supports --log-file to capture logs and
redirect stderr. Added panic recovery in handleConn and captureOutput
goroutines to log stack traces instead of crashing silently.
Also fixes unparam lint: waitForSettle return value was unused.
Copy file name to clipboardExpand all lines: .claude/skills/tui-test/SKILL.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -38,7 +38,7 @@ The lead agent (you) does the following:
38
38
39
39
### Phase 2: Parallel Testing
40
40
41
-
Spawn one teammate per app (max 5-6 concurrent to avoid system overload). Use `general-purpose` agent type with `bypassPermissions` mode.
41
+
Spawn one teammate per app (max 5-6 concurrent to avoid system overload). Use `general-purpose` agent type with `bypassPermissions` mode and `model: "sonnet"` (cheaper, sufficient for mechanical test execution).
42
42
43
43
Each teammate gets:
44
44
- The **Teammate Test Protocol** section below (copy it fully into the prompt)
0 commit comments