codeck-design
Designer role. Reads deck.md, generates a single HTML presentation file with CSS design system + JS slide engine + per-slide content. Accepts visual references…
codeck entry point. Scans local files for materials, shows pipeline dashboard with diagnostic intelligence, guides user to the next step. Use when the user says "codeck", "new deck", "make a presentation", "make a deck", "new slides", "build a presentation", "export", "speech",
$ npx -y skills add hiyeshu/codeck --skill codeck --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/codeckContext preview
The summary Claude sees to decide when to auto-load this skill.
codeck entry point. Scans local files for materials, shows pipeline dashboard with diagnostic intelligence, guides user to the next step. Use when the user says "codeck", "new deck", "make a presentation", "make a deck", "new slides", "build a presentation", "export", "speech",
name: codeck version: 2.4.1 description: | codeck entry point. Scans local files for materials, shows pipeline dashboard with diagnostic intelligence, guides user to the next step. Use when the user says "codeck", "new deck", "make a presentation", "make a deck", "new slides", "build a presentation", "export", "speech", "script", or wants to start or continue a presentation project. /codeck is the user-facing entry; legacy sub-skills are internal modules.
<!-- [INPUT]: Depends on local project materials and $DECK_DIR room artifacts. [OUTPUT]: Provides the /codeck entry protocol, routing rules, and Decision Ask semantics. [POS]: skills/codeck entry lane; orchestrates fixed lanes and owns room state rules. [PROTOCOL]: 变更时更新此头部,然后检查 CLAUDE.md -->
Open the deck room, scan materials, diagnose project state, route work to role lanes, and write the role channel as work moves.
Flag anomalies proactively: stale stages, upstream changes not reflected downstream, unresolved threads, and tasks without a handoff.
codeck follows a slock-style collaboration model in one skill runtime.
A skill is a channel: an addressable role with a clear write boundary, durable room files, and a handoff protocol. `/codeck` is the entry channel. The sub-skills are internal channels that own one part of the room.
Fixed role lanes:
| Handle | Owns | Writes | |--------|------|--------| | `@orchestrator` | room state, routing, task tickets, threads, handoffs | `MEMORY.md`, `tasks/tasks.md`, `threads/threads.md`, `channel/YYYY-MM-DD.md`, `roles/*.md` | | `@outline` | narrative, deck content, slide structure | `deck.md` | | `@design` | design skeleton, visual system, HTML source | `DESIGN.md`, `custom.css`, `slides.html` | | `@review` | audience resistance, QA, scoped fixes | `review.md`, scoped fixes to `slides.html` / `custom.css` | | `@speech` | talk track, presenter notes | `speech.md`, HTML `data-notes` | | `@export` | PDF/PPTX output and export QA | PDF/PPTX files, export notes in `review.md` or `MEMORY.md` |
Dynamic role persona:
Default user-facing output is compact: judgment, artifact, next action. The expanded role channel is written to `channel/YYYY-MM-DD.md`; show it only when the user asks to see the channel.
Compact response shape:
codeck: {state}
I read this as {task}. I {did/will do} {action}.
Artifact: `{path}`
Next: `{next command or next lane}`When the user asks to see the channel, show the handoff:
@orchestrator
I read the current request as: {task}. Owner: @outline.
@outline
I will change `deck.md` first and leave visual files alone.
@design
I will rebuild `slides.html` and `custom.css` after the content changes.
@review
I will check whether the change lands for the target audience.Room documents are not equal. The room has one current truth layer, one work-state layer, and one audit layer.
| Layer | Files | Read rule | Write rule | |-------|-------|-----------|------------| | Current truth | `MEMORY.md`, `deck.md`, `DESIGN.md`, `custom.css`, `slides.html`, latest assembled HTML, `speech.md` when present | Read first. These files define the rebuildable deck. | Rewrite compactly so they describe the current room, not the whole history. | | Work state | `diagnosis.md`, `tasks/tasks.md`, `threads/threads.md`, `roles/*.md`, `review.md` | Read current material diagnosis, active tickets, open decisions, lane persona/rules, and the latest valid review. | Keep live coordination clear; mark old decisions answered/defaulted/superseded. | | Audit trail | `channel/YYYY-MM-DD.md`, legacy `PROJECT.md`, legacy `outline.md`, legacy `design-notes.md`, superseded review notes, generated old previews | Read only when debugging history or when the user asks to see the channel. | Append-only or leave untouched. Never use as generation truth. |
Read order for every lane:
1. `MEMORY.md` Active Context, Role Registry, Open Threads, Task Index, Artifacts, Assumed Defaults, Decision Log. 2. `tasks/tasks.md` open or active rows only. 3. `threads/threads.md` open rows and their detail blocks only; closed rows are audit evidence. 4. `diagnosis.md` for material interpretation and dynamic persona, when present. 5. `roles/{lane}.md` for current lane persona and lane-local rules. 6. Owned source: `deck.md`; `DESIGN.md` before `custom.css` / `slides.html`; assembled HTML only after `build-html.sh`. 7. `channel/YYYY-MM-DD.md` only for audit/debug. Channel text must not override current truth.
Legacy artifacts:
`MEMORY.md` is the deck room index and current-state map. It replaces `PROJECT.md`.
Keep it short. Store current decisions, state, and indexes. Do not paste the full deck, channel transcript, or stale preview history.
`MEMORY.md` must include:
# Memory ## Active Context - Current request: - Active lane: - Next: - Blockers: ## Room Truth Contract - Current truth: MEMORY.md, deck.md, DESIGN.md, custom.css, slides.html, latest assembled HTML, speech.md when present. - Work state: diagnosis.md current material reading, tasks/tasks.md active
A skill is a channel. codeck is a deck room. You have a folder of notes, docs, data, and images. You want a presentation. You type /codeck. codeck opens a persistent deck room.
Repo: hiyeshu/codeck
Designer role. Reads deck.md, generates a single HTML presentation file with CSS design system + JS slide engine + per-slide content. Accepts visual references…
Internal publisher module for /codeck. Exports deck to PDF or PPTX with post-export QA. User-facing export requests should enter through /codeck; this skill…
Editor role. Reads local materials, asks narrative questions, plans story arc. Outputs $DECK_DIR/deck.md as the sole content source. Use whenever the user says…
Reviewer role. Opens rendered HTML, inspects every slide visually, fixes problems in custom.css or slides.html and rebuilds through build-html.sh. Use whenever…
Internal speech module for /codeck. Reads deck content, asks about style and duration only when missing, generates a verbatim speech transcript with stage…