
Plan Canvas Review
Open a plan in a browser canvas to annotate, approve or request changes.
Install
npx skills add affaan-m/ECC --skill plan-canvas -g -a claude-code -y- Repository
- affaan-m/ECC295k
- Category
- Design
- Updated
- 6d ago
- License
- MIT
- Context cost
- Mediumabout 2,046 tokens
- Runs scripts
- No, instructions only
What it does
Open plans and HTML artifacts in a local browser canvas where the human annotates elements, chats, and approves or requests changes without leaving the page. Use when presenting a plan for review, or when feedback like "move this, change that" is easier pointed at than typed.
Plan Canvas
Review loop for plans and visual artifacts: you write the artifact, the human reviews it in the browser, annotating the exact element they mean, chatting, and delivering an Approve plan / Request changes verdict, while you block on a single CLI call that returns their feedback as JSON.
Inspired by lavish-axi; rebuilt
ECC-native around the /plan confirmation gate, with zero dependencies.
When to Use
- You just wrote a plan artifact (
.claude/plans/*.plan.mdfrom/plan) and need the CONFIRM/approve decision, the canvas verdict replaces a typed "yes/proceed". - The user should point at what to change: reviewing designs, comparisons,
reports, or any local
.md/.htmlartifact. - The user asks for
/plan-canvas, a visual review, or "open it in the browser".
Do NOT use for: code review of diffs (/code-review), running web apps, or
remote URLs. The canvas serves local artifact files only.
How It Works
Invoke the CLI as ecc-plan-canvas, the bin shipped by the ecc-universal
package (on PATH after a global/plugin install; node "$CLAUDE_PLUGIN_ROOT/scripts/plan-canvas.js"
also works for plugin installs). Run it from the project you are reviewing in;
it works from any working directory. It manages a detached loopback server
(127.0.0.1:4517) shared by all sessions, keyed by artifact path, no session
ids to track.
The workflow is a plain CLI-plus-JSON loop, so it is model- and harness-agnostic:
any agent that can run a shell command and read stdout drives it the same way
(Claude Code, Codex, Cursor, Gemini, OpenCode, Copilot). Trigger it however your
harness surfaces skills, e.g. /plan-canvas in Claude Code, $plan-canvas in
Codex, or just run the ecc-plan-canvas commands directly.
# 1. Open the artifact in the user's browser (returns immediately)
ecc-plan-canvas open .claude/plans/feature.plan.md


