Skip to content
Development
Skill

/canvas-sync

Synchronize canvas state across team sessions via git. Ensures all team members see the same product knowledge.

From plugin
mycelium
4662 skills
Install
$ npx -y skills add haabe/mycelium --skill canvas-sync --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/canvas-sync

Context preview

The summary Claude sees to decide when to auto-load this skill.

Synchronize canvas state across team sessions via git. Ensures all team members see the same product knowledge.

SKILL.md

canvas-sync.SKILL.md
name: canvas-sync
description: "Synchronize canvas state across team sessions via git. Ensures all team members see the same product knowledge."
metadata:
  instruction_budget: "8"
  framework_dependency: "mycelium"
  framework_dependency_note: "This skill is designed to run within the Mycelium framework (https://github.com/haabe/mycelium). Standalone use will skip the canvas state, theory gates, and harness behavior the skill assumes. Install: /plugin install mycelium@haabe-mycelium."

Canvas Sync

When to Use

  • Starting a new session (pull latest canvas)
  • Ending a session (commit canvas changes)
  • After team discussion that changes product direction
  • When canvas conflicts arise from parallel work

Workflow

Pull Latest

git pull origin main

Then run `/mycelium:diamond-assess` to see what changed.

Commit Changes

git add .claude/canvas/ .claude/harness/decision-log.md .claude/memory/
git commit -m "canvas: [brief description of what changed and why]"

Conflict Resolution

  • Different canvas files: auto-merges (no conflict)
  • Same file, different sections: usually auto-merges
  • Same field conflicting: the person with more evidence wins — a *manual* resolution heuristic for the team, not an automated merge. No tooling evaluates evidence weight; `Gated by:` a `/canvas-merge` procedure (read both versions, compare provenance depth on overlapping entries, recommend) — not yet built.
  • When uncertain: discuss as team, log decision

GitOps Principle

The canvas system IS GitOps for product knowledge — git is the single source of truth, changes are declarative (YAML), and updates flow through version control with review. For infrastructure GitOps (ArgoCD, Flux), see JiT tooling detection for Kubernetes/infrastructure-as-code projects.

Read more
Ships withmycelium

A harness that asks who this is for before the agent writes code. Built on Claude Code, where the gates are structural. The files and skills port to opencode, Codex and Cursor. Outcome over output. You know how this goes.

Get the whole plugin
Stats
46
Stars
3
Forks
Active
Maintenance
Python
Language
MIT
License
3d ago
Last commit
5mo ago
Created

Repo: haabe/mycelium

Other skills on mycelium.

adopt
Skill

adopt

Bring Mycelium into a project that already has code. Detects that the repo predates the framework, asks before touching anything, then reads the codebase to…

@haabe@haabeView Skill