Skill v1.0.0
currentAutomated scan100/100name: markdown-rendering description: How to reliably open a markdown file in a cmux right pane without it rendering blank. Use whenever opening/showing/rendering a .md file in cmux's right pane via cmux markdown open. Covers the move-surface blank-render bug and the only two reliable approaches — open it correctly the first time, or close the existing right pane(s) first then open a fresh right pane. metadata: version: "1.0.0"
Markdown Rendering in cmux
The Problem
cmux markdown open defaults to spawning a brand-new pane every time, even with --direction right. The common "fix" — moving the new markdown surface into the existing right pane with move-surface — bugs out: the moved viewer renders BLANK. The surface keeps type=markdown and looks healthy, but shows nothing.
So you get stuck: either a stray extra pane, or a blank viewer after moving it.
The Rule
You have exactly two reliable options. Never `move-surface` a markdown viewer — that is the path that bugs.
Option A — Open it right on the first try
If there is no usable right pane yet, just let cmux create one and leave it where it lands:
cmux markdown open /abs/path/file.md --direction right --focus false
Do NOT then move it. If it spawned where you want it, you're done.
Option B — Close existing right pane(s), then open fresh
If there are other right panes in the way (and they're unused or irrelevant), close them first, then open the markdown fresh as a new right pane:
# 1. find panes in THIS workspacecmux list-panes --workspace "$CMUX_WORKSPACE_ID"# 2. close the unused/irrelevant right pane(s) by closing their surfacescmux list-pane-surfaces --pane pane:NNcmux close-surface --surface surface:XX # repeat per surface in that pane# 3. THEN open the markdown fresh — it creates its own clean right panecmux markdown open /abs/path/file.md --direction right --focus false
Hard Rules
- Never `move-surface` a markdown viewer. It renders blank afterward. This is the core bug this skill exists for.
- Open it correctly the first time (Option A), OR close the conflicting right pane(s) and open a fresh right pane from scratch (Option B).
- Only close panes that are unused or irrelevant — never close a pane the user is working in.
- Always anchor to
$CMUX_WORKSPACE_ID; never assume the visually focused workspace. - Pass
--focus falseso you don't steal the user's focus. - You can't screenshot/read a markdown surface to verify it. If unsure it rendered, ask the user.