Agent skill

Codeck Outline

by hiyeshu in hiyeshu/codeck

Editor role. An agent skill from hiyeshu/codeck.

MITAuto-check: warningsDocuments & Office

Install Codeck Outline

The automated check flagged lines worth reading first. See the safety section below.

skills CLI
$ npx skills add hiyeshu/codeck --skill codeck-outline -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install hiyeshu/codeck codeck-outline --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/hiyeshu/codeck.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/codeck-outline .claude/skills/codeck-outline && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
codeck-outline
GitHub stars
198
Token cost
~3.2k tokens
SKILL.md length
1,206 words
Files
2 (incl. references)
Skills in repo
6
Repo updated
First seen
Licence
MIT

At a glance

Editor role. An agent skill from hiyeshu/codeck.

  • Works in 6 steps: Scan materials → 5: Material diagnosis → Deck Intent → …
  • The user says outline
  • SKILL.md covers Role activation, Setup, Step 1: Scan materials and Step 1.5: Material diagnosis, plus 7 more sections
  • Calls bash

What it does

Codeck Outline is an agent skill from hiyeshu/codeck. Editor role. Reads local materials, asks narrative questions, plans story arc. Outputs $DECKDIR/deck.md as the sole content source. Use whenever the user says "outline", "plan slides", "organize materials", "structure", "table of contents", "narrative", or wants to structure content into a presentation.

Its SKILL.md is about 3.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/checklist.md`).

It sits in Documents & Office, covering Slides and decks and Storytelling. The repository describes itself as: No Keynote. No dragging. No font sizes. The licence is MIT.

When your agent uses it

  • The user says outline
  • Organize materials
  • Table of contents
  • Wants to structure content into a presentation

Example prompts

  • “outline”
  • “plan slides”
  • “organize materials”
  • “/codeck-outline”

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Scan materials
  2. 5: Material diagnosis
  3. Deck Intent
  4. Research to fill gaps
  5. Narrative structure
  6. Write $DECK_DIR/deck.md

What it can do on your machine

Read from SKILL.md and the folder at commit 572a4bc. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • bash

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Codeck Outline loads about 3.2k tokens when it runs, and up to ~3.7k if it reads all its reference files. Until then it costs about 80 tokens; SKILL.md has 1,206 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~80
When it runs · the whole SKILL.md, loaded when a task matches
~3.2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: warnings

The automated check found patterns that need a careful read before installing.

  • WarningTells the agent its actions are pre-authorized / not to stop for confirmationSKILL.md:219
    Write the outline. Do not ask for confirmation before generating files.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from hiyeshu/codeck at commit 572a4bc, republished under its MIT licence (© hiyeshu). 1,206 words, ~3,190 tokens.

Download SKILL.mdSave it as .claude/skills/codeck-outline/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
codeck-outline
description
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 "outline", "plan slides", "organize materials", "structure", "table of contents", "narrative", or wants to structure content into a presentation.
version
2.2.1
<!--
[INPUT]: Depends on local materials, MEMORY.md, threads/threads.md, diagnosis.md, and prior deck.md.
[OUTPUT]: Provides deck.md with narrative structure and Decision Log.
[POS]: skills/codeck-outline lane; owns canonical deck content before design consumes it.
[PROTOCOL]: 变更时更新此头部,然后检查 CLAUDE.md
-->

codeck outline — @outline lane

@outline owns narrative structure and canonical deck content.

Write boundaries:

  • May write $DECK_DIR/deck.md
  • May update $DECK_DIR/roles/outline.md, $DECK_DIR/tasks/tasks.md, and $DECK_DIR/channel/YYYY-MM-DD.md
  • Must not edit DESIGN.md, custom.css, slides.html, review.md, speech.md, or export files
  • Cross-lane changes become proposals in $DECK_DIR/threads/threads.md

Role activation

Read $DECK_DIR/diagnosis.md for the recommended outline role and its derivation.

You ARE that person. Their way of questioning becomes your editorial instinct.

The role is chosen for how they think about this type of problem, not for their domain:

Material's core tension is "too abstract, audience won't feel it" → Feynman: starts with intuition, earns the abstraction. Outline restructures — no background section, open with a physical analogy.

Material's core tension is "audience doesn't care yet" → Chai Jing: leads with a human story, lets data land after empathy. Outline restructures — open with a person, not a statistic.

Material's core tension is "too many moving parts" → Tufte: compress, show relationships, cut the narrative fat. Outline restructures — merge five slides into two dense ones with clear visual logic.

The role must change what the outline includes, excludes, and sequences. If the outline would be the same without the role, the match is wrong.

Fallback if no diagnosis: curious magazine editor who asks "why" and won't accept vague answers.

Setup

bash
DECK_DIR="$HOME/.codeck/projects/$(basename "$(pwd)")"
CODECK_SKILL_DIR="${CODECK_SKILL_DIR:-}"
if [ -z "$CODECK_SKILL_DIR" ]; then
  for d in \
    "${CLAUDE_PLUGIN_ROOT}/skills/codeck" \
    "$HOME"/.claude/plugins/cache/*/codeck/*/skills/codeck \
    "$HOME"/.codex/plugins/cache/*/codeck/*/skills/codeck \
    "$HOME/.agents/skills/codeck" \
    "$HOME/.codex/skills/codeck" \
    "$HOME/.claude/skills/codeck"; do
    if [ -d "$d/scripts" ]; then CODECK_SKILL_DIR="$d"; break; fi
  done
fi
[ -n "$CODECK_SKILL_DIR" ] || { echo "codeck skill scripts not found; set CODECK_SKILL_DIR" >&2; exit 1; }
. "$CODECK_SKILL_DIR/scripts/resolve-dirs.sh"
mkdir -p "$DECK_DIR"
mkdir -p "$DECK_DIR/channel" "$DECK_DIR/tasks" "$DECK_DIR/threads" "$DECK_DIR/roles"
bash "$CODECK_SKILL_DIR/scripts/init-room.sh" "$DECK_DIR"
bash "$CODECK_SKILL_DIR/scripts/status.sh" "$DECK_DIR"

Read $DECK_DIR/MEMORY.md, active rows in $DECK_DIR/tasks/tasks.md, open rows in $DECK_DIR/threads/threads.md, $DECK_DIR/deck.md, and $DECK_DIR/diagnosis.md if they exist. Do not read channel/YYYY-MM-DD.md unless debugging history. Ignore legacy outline.md during normal generation.

Before writing content, claim the work ticket:

markdown
@orchestrator
Owner: @outline. Task: structure deck content. Artifact: deck.md.

@outline
I claim the narrative pass. I will write `deck.md` and hand off to @design.

Append that exchange to $DECK_DIR/channel/YYYY-MM-DD.md and reflect the ticket in tasks/tasks.md.

Step 1: Scan materials

Scan the current directory (the user's project), not DECK_DIR. Use the shared scan-materials.sh probe so the exclusion list and grouping stay aligned with /codeck.

bash
bash "$CODECK_SKILL_DIR/scripts/scan-materials.sh" .

Do not use eval find — the entry skill explicitly forbids it. If the probe is unavailable, fall back to a plain find with explicit ! -path exclusions.

User-provided structure is raw material — cut, merge, reorder freely.

Read text files with Read tool. Classify assets:

LevelWhenAction
inlineimages <2MB, SVG, code snippetscopy to assets/, assemble.sh base64-encodes
postervideo, audio, GIF, images >2MBthumbnail in assets/, annotate original path
extractPDF, DOCX, CSV, code filesextract content, don't copy file

Rule of thumb: can the HTML still be emailed? Yes → inline. No → poster or extract.

bash
mkdir -p "$DECK_DIR/assets"

If 0 files found, use the Deck Intent Decision Ask moment: create a room decision for the topic/core goal once, or tell the user to add files and run /codeck again.

Step 1.5: Material diagnosis

Silent checks on materials:

  1. Core message clarity — can you extract a one-sentence thesis?
  2. Density — concise or needs heavy trimming?
  3. Presentation fit — slide-ready or needs restructuring?
  4. Image assets — content images (architecture, charts) or decorative?

All clear → continue silently. If materials conflict in a way that changes the deck direction, summarize the conflict in the Deck Intent Decision Ask.

Results go into deck.md under "Material summary".

Step 2: Deck Intent

Use the shared /codeck Decision Ask Policy. Deck Intent is one allowed Decision Ask moment.

Do not ask for "mode". Default to fast: decide, write, and let the user edit after output.

Before creating a Decision Ask, fill these fields from the user request, materials, MEMORY.md, open threads/threads.md rows, and deck.md:

  • Core message
  • Audience scene: industry internal / commercial launch / demo day / private session
  • Duration: 15 minutes / 30 minutes / 45 minutes
  • Language

Do not ask for slide count. Derive page count from duration:

DurationDerived page count
15 minutesabout 10 pages
30 minutesabout 20 pages
45 minutesabout 25-30 pages

If the user explicitly provides a custom duration, derive the page count from the same rhythm and record the reason. A very short deck is not a default package; use it only when the user explicitly asks for a short teaser or the material cannot support more.

Skip any field that is already clear. If all four are clear enough, do not ask and record skipped: inferred from room/materials in the Decision Log.

If one or more missing fields would change the deck, create one D-YYYYMMDD-NN decision in threads/threads.md and render one bundled question:

text
codeck needs to lock the presentation scene.

Current read: {what the materials imply}.

I suggest {recommended scene} because {one concrete reason from the materials}.

A) {recommended scene}, {15/30/45 minutes}, {derived page count}, {language}, {goal}
B) {different scene or depth}, {15/30/45 minutes}, {derived page count}, {language}, {goal}
C) {different scene or depth}, {15/30/45 minutes}, {derived page count}, {language}, {goal}

Options must be mutually exclusive packages, not separate mini-questions. A good option includes audience scene, duration, derived page count, language, and goal in one line.

If the decision is non-blocking and the user does not answer, use the recommended option and write it to MEMORY.md as assumed default. If it is blocking in a runtime without structured AskUser UI, stop before writing deck.md.

Optional intent exploration is allowed only when the user volunteers it. Do not ask "why do you care?", "what should they feel?", or style-avoidance questions unless the answer is needed to resolve a material conflict.

Record the result in both MEMORY.md and deck.md.

Show full SKILL.md (421 more words)Show less

Step 3: Research to fill gaps

If the materials are thin, the topic is unfamiliar, or key claims lack supporting evidence, search the web to strengthen the outline. Don't fabricate data — find it.

When to search:

  • User mentions statistics or trends without providing source → find the real numbers
  • Material references a product, paper, or event you haven't seen → look it up
  • You need a concrete example to ground an abstract point → find one
  • The audience is specialized and you need to verify terminology or conventions

Integrate findings naturally into the outline. Cite sources in the material summary or as slide notes so the designer and reviewer can verify.

Step 4: Narrative structure

Story arc templates

Problem-driven: problem → solution → evidence → implications

Demo-driven: concept → demonstration → mechanism → extensions

Data report: summary → metrics → patterns → actions

Teaching: motivation → core idea → application → practice

These are narrative shapes, not slide titles. Derive actual titles from the content — "pain point" is a structural role, not a heading.

Title smithing

Slide titles are the only text the audience reads — like highway billboards.

Two rules:

  1. Instant clarity — no second read needed. Short > long, concrete > abstract.
  2. Hook — questions > statements, tension > flatness.

Priority: apt first, then as dramatic as accuracy allows. Flat but accurate is a floor, not a goal.

Five strategies per title:

Five strategies: Direct assertion, Question, Tension/contrast, Concrete image, Unexpected angle. Pick the one that serves each slide's argument — don't rotate through them mechanically.

Quality check:

  1. Understood in one read? No → rewrite.
  2. Want to hear more? No → switch strategy.
  3. Sounds human? AI-flavored → rewrite.

Write the outline. Do not ask for confirmation before generating files.

Step 5: Write $DECK_DIR/deck.md

deck.md is the canonical content source. Do not create or update outline.md.

markdown
# Outline: {topic}

## Material summary

{key content extracted from files}

## Basics

- Core message: {one-sentence thesis}
- Audience scene: {industry internal | commercial launch | demo day | private session | custom}
- Audience: {description}
- Duration: {15 minutes | 30 minutes | 45 minutes | custom}
- Page count: {derived from duration, e.g. about 10 pages}
- Language: {language}
- Intent source: {inferred from materials | user answered | assumed default}
- Assumed defaults: {none | list defaults and why}

## Decision log

| ID | Moment | Answer | Source |
|----|--------|--------|--------|
| {D-YYYYMMDD-NN or none} | Deck Intent | {answer package} | {user answered | assumed default | skipped: inferred from room/materials} |

## Story arc

{arc description}

## Slide structure

### 1. {cover title}
- Purpose: cover
- Rhythm: climax
- Key points: {points}

### 2. {slide title}
- Purpose: {purpose}
- Rhythm: {dense|breathe|climax|transition}
- Key points: {points}
- Assets: {assets/xxx.png or file:line if applicable}

...

## Asset manifest

| File | Level | Use | Assigned to |
|------|-------|-----|-------------|
| assets/architecture.png | inline | architecture diagram | slide 3 |
| assets/demo-cover.jpg | poster | video cover (source: demo.mp4) | slide 6 |

Level: inline / poster / extract. No assets → write "none".

## User intent

- Motivation: {Q1.5 answer in user's words, or "not explored"}
- Preferences: {likes/dislikes, or "not specified"}
- Mood: {desired audience feeling, or "not specified"}

## Note to designer

> {1-2 sentences: narrative intent and structural highlights}

Self-review

Read $CODECK_ROOT/codeck-outline/references/checklist.md, then check deck.md. (CODECK_ROOT is exported by the Setup block; if unset, it is the parent directory of the resolved codeck skill directory.)

  • Pass 1: structural issues → auto-fix
  • Pass 2: content quality → auto-fix mechanical issues. Ask only for real user-owned content conflicts.

Handoff

After writing and self-review:

  1. Update MEMORY.md Active Context, Latest Channel Summary, Task Index, and Artifacts.
  2. Mark the @outline task done in tasks/tasks.md.
  3. If content needs a user decision, add or update a row in threads/threads.md.
  4. Append the handoff to today's channel file:
markdown
@outline
I finished `deck.md`. The next owner is @design.

@design
I will read `deck.md`, `diagnosis.md`, and the design thread before writing visual files.

Done

Show the single sharpest title transformation — the one where the before/after gap is biggest:

codeck outline done.

@outline I wrote deck.md and handed the room to @design.

Best title move: "{before}" → "{after}"

{one-line quality assessment}

Output: $DECK_DIR/deck.md Next: /codeck will generate slides.

© hiyeshu, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in skills/codeck-outline of hiyeshu/codeck.

  • SKILL.md
  • references/checklist.md

Open the folder on GitHubat commit 572a4bc

Compare with similar skills

Codeck Outline next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Codeck Outline compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Codeck Outline this skillhiyeshu/codeck198—~3.2kAutomated safety check: WarnMIT
Japanese Hand Drawn Editorial Ppt Skillsoftware-ai-life/Awesome-PPT-Design-Skills121—~758Automated safety check: PassNone
Modern Illustration Editorial Ppt Skillsoftware-ai-life/Awesome-PPT-Design-Skills121—~851Automated safety check: PassNone
PresentationRightNow-AI/openfang18k—~829Automated safety check: PassApache-2.0
Textbook To Presentation Generatordmccreary/ibook-skills105—~2kAutomated safety check: PassNone
Technical PresenterFerroxLabs/wayland608—~3.9kAutomated safety check: PassApache-2.0

Similar skills

  • Japanese Hand Drawn Editorial Ppt Skill

    software-ai-life/Awesome-PPT-Design-Skills

    Create or redesign PowerPoint decks in a high-end Japanese hand-drawn editorial style: warm off-white paper texture, delicate pencil or ink line illustration, thin uneven strokes, mostly monochrome…

    121 GitHub stars~758 tokensUpdated 5 mo ago
    Documents & OfficeAuto-check passed
  • Modern Illustration Editorial Ppt Skill

    software-ai-life/Awesome-PPT-Design-Skills

    Create or redesign PowerPoint decks in a high-end editorial modern illustration style: clean white or light warm background with subtle texture, soft vector illustrations with refined details…

    121 GitHub stars~851 tokensUpdated 5 mo ago
    Documents & OfficeAuto-check passed
  • Presentation

    RightNow-AI/openfang

    Presentation expert for slide structure, storytelling, visual design, and audience engagement

    18k GitHub stars~829 tokensUpdated 3 mo ago
    Documents & OfficeAuto-check passed
  • Generates a lecture PowerPoint from an intelligent textbook using pptxgenjs — visual design, 4-act storytelling structure, and speaker notes.

    105 GitHub stars~2k tokensUpdated 2 days ago
    Documents & OfficeAuto-check passed
  • Technical Presenter

    FerroxLabs/wayland

    Technical presentation expert covering conference talk preparation, slide design for developer audiences, live coding demonstrations, demo preparation and backup plans, audience engagement…

    608 GitHub stars~3.9k tokensUpdated yesterday
    Documents & OfficeAuto-check passed
  • Mira Concept Storyteller

    sandeco/mira-animator

    Transformar conceitos em histórias explicativas, analogias narrativas ou roteiros que usem desejo, ação, conflito, revelação e transformação sem distorcer o conteúdo.

    218 GitHub stars~3.5k tokensUpdated 23 days ago
    Writing & ContentAuto-check passed

More from hiyeshu/codeck

  • Codeck Design

    hiyeshu/codeck

    Designer role. An agent skill from hiyeshu/codeck.

    198 GitHub stars~6.8k tokensUpdated 2 mo ago
    Auto-check passed
  • Codeck

    hiyeshu/codeck

    codeck entry point. An agent skill from hiyeshu/codeck.

    198 GitHub stars~6.4k tokensUpdated 2 mo ago
    Auto-check passed
  • Codeck Review

    hiyeshu/codeck

    Reviewer role. An agent skill from hiyeshu/codeck.

    198 GitHub stars~3.1k tokensUpdated 2 mo ago
    Auto-check passed
  • Codeck Export

    hiyeshu/codeck

    Internal publisher module for /codeck. An agent skill from hiyeshu/codeck.

    198 GitHub stars~2.1k tokensUpdated 2 mo ago
    Auto-check passed
  • Codeck Speech

    hiyeshu/codeck

    Internal speech module for /codeck. An agent skill from hiyeshu/codeck.

    198 GitHub stars~2.4k tokensUpdated 2 mo ago
    Auto-check passed

Questions about Codeck Outline

What does Codeck Outline do?

Editor role. An agent skill from hiyeshu/codeck. Codeck Outline is an agent skill from hiyeshu/codeck. Editor role.

When should I use Codeck Outline?

Codeck Outline fits situations like: the user says outline; organize materials; table of contents; wants to structure content into a presentation.

How do I install Codeck Outline in Claude Code?

Run `npx skills add hiyeshu/codeck --skill codeck-outline -a claude-code`. Or copy the skill folder (skills/codeck-outline in hiyeshu/codeck) into .claude/skills/codeck-outline in your project. Claude Code loads it when a task matches its description.

How do I install Codeck Outline in Codex?

Run `npx skills add hiyeshu/codeck --skill codeck-outline -a codex`. Or copy the skill folder (skills/codeck-outline in hiyeshu/codeck) into .agents/skills/codeck-outline in your project. Codex loads it when a task matches its description.

Can I use Codeck Outline in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add hiyeshu/codeck --skill codeck-outline -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/codeck-outline, .gemini/skills/codeck-outline, .github/skills/codeck-outline and .opencode/skills/codeck-outline in your project.

What does Codeck Outline need to run?

Going by SKILL.md and its folder, Codeck Outline needs the command-line tools its instructions call (bash).

Does Codeck Outline access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Codeck Outline safe to install?

Our automated static check of SKILL.md flagged 1 warning(s): tells the agent its actions are pre-authorized / not to stop for confirmation. Read the flagged lines before installing; the check is not a guarantee either way.

What licence does Codeck Outline use?

Codeck Outline is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Codeck Outline use?

About 3.2k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 502 tokens, read only when the agent opens those files.

What are the alternatives to Codeck Outline?

Skills that share tags, products or a category with Codeck Outline: Japanese Hand Drawn Editorial Ppt Skill (software-ai-life/Awesome-PPT-Design-Skills, 121 stars), Modern Illustration Editorial Ppt Skill (software-ai-life/Awesome-PPT-Design-Skills, 121 stars), Presentation (RightNow-AI/openfang, 18k stars) and Textbook To Presentation Generator (dmccreary/ibook-skills, 105 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Codeck Outline?

hiyeshu (a GitHub user) maintains it in hiyeshu/codeck, which has 198 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on August 8, 2026.

Source: hiyeshu/codeck on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.