cmux-debugging — Claude Code skill: debug UI and terminal rendering
Skill for adding debug logging, diagnosing UI and runtime issues in cmux. Use when working with terminal rendering, tab lists, drag-and-drop, or testing across macOS versions.
npx skills add manaflow-ai/cmux --skill cmux-debugging -a claude-codeWhat cmux-debugging does
cmux-debugging provides debugging tools: a unified event log (keys, mouse, focus, splits, tabs), Debug menu in macOS, and a reference for common runtime pitfalls. Logs write to /tmp/cmux-debug.log (or a tagged file), and you can tail them in real time. For profiling, use xctrace record --attach on your process PID—but never launch the profiler via launch mode.
The skill includes documentation on stable event prefixes (focus.panel, tab.select, pane.drop), how to add custom Debug menu panels via NSWindowController, and runtime pitfalls: how TabItemView uses Equatable to skip re-evaluation during typing, why TerminalSurface.forceRefresh() must avoid allocations, how snapshot boundaries work in LazyVStack and List. All logging calls are wrapped in #if DEBUG, so they vanish from release builds.
Test your changes on the same macOS version where the bug was found: Foundation, SwiftUI, and WebKit behaviour differs across major versions.
What it helps with
- add debug logging for UI events (keys, mouse, focus)
- diagnose UI and runtime issues
- trace terminal rendering behaviour
- verify drag-and-drop and custom UTType handling
- profile performance across macOS versions
Example prompts for the agent
- Add debug logging for keyboard events in `performKeyEquivalent`
- Help me diagnose typing latency in the terminal
- Explain why `TabItemView` requires updating the `==` operator when environment changes
How to install cmux-debugging
1Skills CLI (Vercel)
npx skills add manaflow-ai/cmux --skill cmux-debugging -a claude-code2Manually: put the files in place
~/.claude/skills/cmux-debugging/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/cmux-debugging/
1Skills CLI (Vercel)
npx skills add manaflow-ai/cmux --skill cmux-debugging -a codex2Manually: put the files in place
.agents/skills/cmux-debugging/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add manaflow-ai/cmux --skill cmux-debugging -a cursor2Manually: put the files in place
.cursor/skills/cmux-debugging/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install manaflow-ai/cmux cmux-debugging2Manually: put the files in place
.github/skills/cmux-debugging/SKILL.md1Skills CLI (Vercel)
npx skills add manaflow-ai/cmux --skill cmux-debugging -a gemini-cli2Platform CLI
gemini skills install https://github.com/manaflow-ai/cmux --path skills/cmux-debuggingManually: put the files in place
.devin/skills/cmux-debugging/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add manaflow-ai/cmux --skill cmux-debugging -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set12
The whole set →Similar
Questions about cmux-debugging
How do I install cmux-debugging in Claude Code?
Run npx skills add manaflow-ai/cmux --skill cmux-debugging -a claude-code, then open ~/.claude/skills/cmux-debugging/SKILL.md.
What does cmux-debugging do?
Provides debugging tools for cmux: unified event logging (keys, mouse, focus, splits, tabs), a Debug menu in macOS, and reference documentation for common runtime pitfalls in terminal rendering, list virtualization, and SwiftUI state.
Where are the debug logs stored?
By default in /tmp/cmux-debug.log; if you use a tagged build (./scripts/reload.sh --tag <tag>), logs go to /tmp/cmux-debug-<tag>.log. Tail them in real time: tail -f "$(cat /tmp/cmux-last-debug-log-path 2>/dev/null || echo /tmp/cmux-debug.log)".