How to install cmux-shared-behavior
npx skills add null --skill cmux-shared-behaviorFull instructions (SKILL.md)
Source of truth, from manaflow-ai/cmux.
name: cmux-shared-behavior description: "Shared behavior and mutation-path rules for cmux. Use when a behavior is exposed through multiple entrypoints such as keyboard shortcuts, command palette, context menu, CLI, settings, debug menu, optimistic UI, or tests that previously missed a bug."
cmux Shared Behavior
Use one shared action/model path when behavior is exposed through multiple entrypoints.
Shared entrypoints
When a behavior is exposed through multiple surfaces, implement one shared action/model path and verify every entrypoint that should invoke it.
Common entrypoints include:
- keyboard shortcut
- command palette
- context menu
- CLI/socket command
- settings UI
- debug menu
Do not patch one surface while leaving the others with duplicated logic.
Optimistic updates
For optimistic UI or CLI updates:
- keep one mutation path
- record pending state with a request id or previous snapshot
- reconcile from the authoritative result
- handle failure with an explicit rollback or error state
Do not let each entrypoint maintain its own optimistic copy.
Missed-bug coverage
When a user says tests missed a bug, add or adjust behavior-level coverage around the exact repro path before claiming the fix is complete.
Related skills
More from manaflow-ai/cmux and the wider catalog.
cmux
End-user control of cmux topology and routing (windows, workspaces, panes/surfaces, focus, moves, reorder, identify, trigger flash). Use when automation needs deterministic placement and navigation in a multi-pane cmux layout.
cmux-browser
End-user browser automation with cmux. Use when you need to open sites, interact with pages, wait for state changes, and extract data from cmux browser surfaces.
cmux-markdown
Open markdown files in a formatted viewer panel with live reload. Use when you need to display plans, documentation, or notes alongside the terminal with rich rendering (headings, code blocks, tables, lists).
cmux-settings
View and edit cmux settings in ~/.config/cmux/cmux.json. Use when the user wants to change cmux preferences (appearance, sidebar, notifications, automation, browser, shortcuts), set a value by JSON path, validate the file, open it in an editor, or look up which keys cmux recognizes. Triggers on '/cmux-settings', 'change cmux setting', 'set <something> in cmux', 'cmux config', 'cmux.json', or 'rebind a cmux shortcut'.
cmux-workspace
Work inside the current cmux workspace and terminal. Use for cmux workspace, current workspace, caller surface, panes, surfaces, socket targeting, and non-interfering cmux automation.
cmux-customization
Customize cmux for an end user. Use when changing cmux.json actions, custom commands, workspace layouts, plus-button behavior, surface tab bar buttons, Command Palette entries, Dock controls, sidebar and app settings, shortcuts, notifications, browser routing, examples-library presets, or Ghostty-backed terminal preferences.