Kanvas — Visual Task Coordination
Kanvas uses Obsidian Canvas boards for task management. Tasks are represented as colored nodes; state transitions are enforced via CLI. NEVER edit .canvas files directly — always use the CLI tool.
CLI Usage
The CLI is available at $CLAUDE_SKILL_DIR/scripts/canvas-tool.py .
Board overview
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" status
List ready tasks
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" ready
Show task detail
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" show <TASK-ID>
Propose a new task (creates Purple card)
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" propose <GROUP> "Title" "Description"
Start a task (Red → Orange)
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" start <TASK-ID>
Finish a task (Orange → Cyan, awaiting human review)
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" finish <TASK-ID>
Pause a task (Orange → Red)
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" pause <TASK-ID>
Update task description (only Orange tasks)
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" edit <TASK-ID> "Updated text"
Add dependency between tasks
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" add-dep <FROM-ID> <TO-ID>
Normalize blocked states after changes
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" normalize
Color States
Color Meaning Value
Purple Proposed by agent "6"
Red To Do (ready) "1"
Orange Doing "2"
Cyan Ready for review "5"
Green Done (human only) "4"
Gray Blocked "0"
Session Protocol
- Start — read the board
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" status
- Pick a task
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" ready python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" start <TASK-ID>
- Work and update
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" edit <TASK-ID> "Progress notes"
- Finish
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" finish <TASK-ID>
Tell the user what was done. Do NOT mark cards green — only humans do that.
- After human approves (marks green)
python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" normalize python "$CLAUDE_SKILL_DIR/scripts/canvas-tool.py" "team.canvas" ready
What you CANNOT do
-
Edit .canvas files directly
-
Mark any card Green (Done) — human only
-
Work on Purple (proposals), Gray (blocked), or Cyan (review) cards
-
Remove cards or edges
-
Change Green cards