docs/releases/2.1.0/plan-canvas-demo.plan.md
Plan artifact · generated by
/ecc:plan· review in Plan Canvas, then approve to begin
Your agent can already write code. ECC gives it an engineering system: it plans before it builds, verifies with tests, reviews its own work from a fresh context, and turns repeated wins into reusable skills.
flowchart LR
P[Plan] --> T[Test first] --> I[Implement] --> R[Review] --> V[Verify]
V --> M[Remember] --> S[Improve skills] -.-> P
style P fill:#6885e8,color:#fff
style V fill:#6885e8,color:#fff
| Concept | What it does | Context behavior |
|---|---|---|
| Skills | Reusable workflows: TDD, security review, deep research | Loaded when the task needs them |
| Agents | Scoped workers with their own context and tool permissions | Isolate planning, implementation, review |
| Rules | Durable project or language standards | Always loaded, so install selectively |
| Hooks | Scripts triggered by harness events | Run outside the model context |
| Instincts | Patterns learned from real sessions | Recalled when relevant |
flowchart TB
subgraph Harness["Any harness: Claude Code · Codex · Kimi · Cursor · OpenCode"]
A[Your agent]
end
subgraph ECC["ECC"]
SK[279 skills] --- AG[67 agents]
RU[Rules] --- HO[Hooks]
ME[Memory + instincts] --- AS[AgentShield]
end
A --> SK
A --> AG
/plan ends with a hard confirmation gate. Plan Canvas moves that gate from a
wall of terminal markdown to this page. Point at the part you mean, annotate
it, and approve from here.
sequenceDiagram
participant U as You (browser)
participant C as Plan Canvas
participant A as Agent (terminal)
A->>C: open plan-canvas-demo.plan.md
U->>C: annotate "Split phase 2"
C->>A: feedback JSON
A->>C: revised plan (live-reload)
U->>C: Approve plan
C->>A: verdict: approve
A->>A: begin implementation
| Risk | Mitigation |
|---|---|
| Plans reviewed as walls of text get skimmed | Canvas renders diagrams + anchored annotations |
| Same context writes and reviews code | Fresh-context reviewer agents |
| Harness config trusted by default | AgentShield scans the harness itself |