MCPInstall

cmux-ref

Interpret pasted cmux workspace, pane, surface, or window refs and IDs. Use for cmux-ref, cmux-id, workspaceref, workspaceid, paneref, paneid, surfaceref, surfaceid, windowref, or windowid context blocks.

Installs
718
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/manaflow-ai/cmux-skills --skill cmux-ref
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads cmux-ref automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

cmux Ref

Use this skill when the user pastes cmux topology identifiers and expects the agent to target that exact workspace, pane, surface, or window. Treat those identifiers as explicit routing context for later instructions.

What To Recognize

Users may paste any mix of these fields, in plain text, Markdown, JSON, YAML, shell-style assignments, or logs:

workspace_ref=workspace:1
workspace_id=D9C23F06-55C8-4EF6-96D2-F2531B3327A8
pane_ref=pane:2
pane_id=60495E4A-56E3-469D-A274-A7877F48B54D
surface_ref=surface:370
surface_id=661B301A-2423-44F1-B789-7AEA1021CFCE

Recognize these keys:

  • window_ref, window_id
  • workspace_ref, workspace_id
  • pane_ref, pane_id
  • surface_ref, surface_id

Also recognize bare refs near user intent, such as workspace:1, pane:2, or surface:370.

Meaning

  • *_ref values are short cmux refs such as workspace:1, pane:2, and surface:370. They are convenient for immediate CLI calls in the same cmux instance, but can be renumbered after state changes.
  • *_id values are UUIDs for the same objects. Prefer them for identity checks and stale-ref recovery when both forms are available.
  • The most specific provided object is the default target: surface beats pane, pane beats workspace, and workspace beats window.
  • A complete block describes a hierarchy. Do not mix a surface_id from one pasted block with a workspace_ref from another unless the user clearly says they belong together.

Workflow

Step 1: Parse The Block

Extract keys case-insensitively. Accept = or : separators and ignore quotes, commas, and code fences.

Useful pattern:

\b(window|workspace|pane|surface)_(ref|id)\b\s*[:=]\s*["']?([A-Za-z0-9:-]+)["']?

If the user provides only bare refs, bind the most specific one as the target:

workspace:1 pane:2 surface:370

Step 2: Announce The Target

When taking action, say the exact target briefly:

I will target surface:370 in pane:2, workspace:1.

If a UUID is present, keep it in your internal target record and include it when useful for disambiguation:

I will target surface:370 (661B301A-2423-44F1-B789-7AEA1021CFCE).

Step 3: Verify Before Mutating

Before sending text, closing anything, moving surfaces, changing layout, or reading a screen for a non-current target, verify the target exists in the active cmux socket.

Use the current cmux CLI and request both refs and UUIDs:

cmux --json --id-format both tree --all
cmux --json --id-format both identify
cmux --json --id-format both list-pane-surfaces --workspace <workspace_ref_or_id>

If a ref is stale but the UUID exists in tree --all, use the current ref associated with that UUID. If neither the ref nor UUID can be found, stop and ask the user for a fresh cmux ref block.

Step 4: Use Explicit Targets

Do not fall back to the visually focused workspace when the user pasted explicit refs. Pass the parsed workspace, pane, and surface to cmux commands.

Examples:

cmux read-screen --workspace workspace:1 --surface surface:370 --scrollback --lines 120
cmux send --workspace workspace:1 --surface surface:370 "npm test\n"
cmux new-surface --workspace workspace:1 --pane pane:2 --type terminal --focus false
cmux open ./report.html --workspace workspace:1 --pane pane:2 --no-focus

If the command accepts only one handle, use the most specific relevant handle. Prefer the UUID when the command accepts UUIDs and you have verified it maps to the intended object.

Ambiguity Rules

Ask one concise question only when the target cannot be inferred safely:

  • Multiple unrelated ref blocks are pasted and the instruction says only "use this" or "that one".
  • A workspace ref and surface ref are both present but verification shows they belong to different current hierarchies.
  • The pasted identifiers are stale and no UUID match exists in cmux --json --id-format both tree --all.

Do not ask when one complete block is present. Use the most specific target in that block.

Safety Rules

  • User-provided cmux refs override caller environment variables and visual focus.
  • Preserve both the ref and UUID in notes or scripts when available.
  • Do not change focus just to verify or use a target. Prefer non-disruptive commands and --focus false or --no-focus when supported.
  • Do not close, move, or send input to a target until it has been verified in the current socket.
  • Browser snapshot element refs are separate from cmux topology refs. Use cmux-browser for DOM or webview snapshot refs.

FAQ

What does the cmux-ref skill do?

Interpret pasted cmux workspace, pane, surface, or window refs and IDs. Use for cmux-ref, cmux-id, workspaceref, workspaceid, paneref, paneid, surfaceref, surfaceid, windowref, or windowid context blocks.

How do I install cmux-ref?

Run npx skills add https://github.com/manaflow-ai/cmux-skills --skill cmux-ref in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/cmux-ref/ (personal) or .claude/skills/cmux-ref/ (project).

Which AI agents can use cmux-ref?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is cmux-ref safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains cmux-ref?

It is published by manaflow-ai in manaflow-ai/cmux-skills. It has 718 recorded installs.

More from manaflow-ai/cmux-skills

View all →

cmux-cli

manaflow-ai/cmux-skills

Comprehensive cmux CLI usage guide. Use when the user asks about cmux CLI, cmux --help, socket commands, command discovery, workspaces, panes, surfaces, browser CLI, hooks, feed, settings, or automation through the cmux command.

cmux-workspace

manaflow-ai/cmux-skills

Work inside the current cmux workspace and terminal. Use for cmux workspace, current workspace, caller surface, panes, surfaces, tagged reloads, socket targeting, and non-interfering cmux automation.

cmux-browser

manaflow-ai/cmux-skills

Automate the browser inside cmux. Use for cmux browser, browser surface, webview, current workspace browser, snapshot refs, DOM actions, waits, screenshots, cookies, storage, tabs, downloads, console, errors, and browser session state.

cmux-config

manaflow-ai/cmux-skills

Configure cmux through /.config/cmux/cmux.json: settings (appearance, sidebar, notifications, automation, browser, shortcuts, set/get/validate by JSON path), customization (tab bar buttons, plus-button click and right-click menus, custom actions/commands/menus, right sidebar), and sidebar workspace groups (anchor workspaces, group CLI/socket ops, per-cwd group config). Triggers: 'cmux config', 'cmux.json', 'change cmux setting', 'set in cmux', 'rebind a cmux shortcut', 'cmux-customize', 'customize cmux', 'tab bar button', 'add cmux action', 'workspace group', 'group sidebar', 'anchor workspace', 'workspaceGroups'.

cmux-artifact

manaflow-ai/cmux-skills

Create durable HTML walkthrough artifacts for cmux dogfood, verification, demos, evidence pages, artifact previews, and open helpful tabs or splits in the current cmux workspace.

Frontend & Design665 installs

cmux-sidebar-builder

manaflow-ai/cmux-skills

Build, inspect, or revise cmux custom sidebar views using the runtime SwiftUI-style interpreter. Use for sidebar vibe coding, custom sidebars in Bonsplit panes, left sidebar picker previews, interpreted Swift sidebars, /.config/cmux/sidebars/.swift, cmux docs sidebars, or Aziz's Swift interpreter work.

Mobile643 installs

Popular other skills

View category →

hyperframes-cli

heygen-com/hyperframes

The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.

1.3M installs

triage

mattpocock/skills

Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.

1M installs

ask-matt

mattpocock/skills

Ask which skill or flow fits your situation. A router over the skills in this repo.

778.4K installs

to-questionnaire

mattpocock/skills

Turn a decision you can't fully answer into a questionnaire for someone else to fill in.

508.9K installs

wait-what

mattpocock/skills

Stop. That last message did not land: re-pitch it.

459.7K installs

loop-me

mattpocock/skills

Grill me about specs for the workflows I want to build, within this workspace.

447.9K installs