Agent skill

walkthrough

Reads source code and produces a linear, executable walkthrough document. Use when explaining how code works, creating code walkthroughs, onboarding to a project, or giving a code tour. Generates structured showboat documents with annotated code paths.

Stars 10
Forks 0

Install this agent skill to your Project

npx add-skill https://github.com/philoserf/claude-code-setup/tree/main/skills/walkthrough

SKILL.md

Read the source and produce a linear walkthrough that explains how the code works in detail. Use showboat to build an executable walkthrough.md in the repo root. Include concerns about code quality and adherence to community standards.

Workflow

  1. Read the source — Understand structure, entry points, dependencies, and data flow before writing anything.
  2. Plan the order — Decide what to cover and in what sequence. Start from entry points and follow the call chain.
  3. Initializeuvx showboat init walkthrough.md "<Project> Walkthrough"
  4. Build — Alternate showboat note (commentary) and showboat exec (code snippets) to walk through the codebase linearly.
  5. Verifyuvx showboat verify walkthrough.md to confirm all code blocks produce the expected output. If verify reports diffs, use uvx showboat pop walkthrough.md to remove the failing entry, fix the command, and re-add with showboat exec.

Walkthrough structure

  1. Overview — What the project does, key technologies, entry points
  2. Architecture — Directory layout, module boundaries, data flow
  3. Core walkthrough — Step through the code linearly, starting from entry points and following the call chain through modules
  4. Concerns — Code quality issues, community standard violations, risks

Snippet selection

Show the most important 5–20 lines per concept. Prefer function signatures, key logic, and configuration over boilerplate. Use sed -n, grep, cat, or similar via showboat exec to include snippets. Every snippet should earn its place — if it doesn't clarify the narrative, cut it.

Example

bash
uvx showboat note walkthrough.md <<'EOF'
## Configuration

The app reads config from `config.yaml` at startup. The `load_config`
function validates required fields and falls back to defaults.
EOF

uvx showboat exec walkthrough.md bash "sed -n '10,25p' src/config.py"

Showboat reference

Showboat creates executable markdown documents where every fenced code block is re-runnable and verifiable.

Commands

  • uvx showboat init <file> <title> — Create a new document
  • uvx showboat note <file> [text] — Append commentary (plain markdown, not executed). Use heredoc for multi-line: uvx showboat note file.md <<'EOF' ... EOF
  • uvx showboat exec <file> <lang> [code] — Run code, capture output. Appends a lang block (the command) and an output block (the result)
  • uvx showboat pop <file> — Remove the most recent entry (useful after a failed exec)
  • uvx showboat verify <file> — Re-run all code blocks and diff against captured output
  • uvx showboat verify <file> --output <file> — Re-run and update output blocks in place

Gotchas

  • Every fenced block is executable. Showboat treats all code blocks as runnable — there is no "display only" mode. Static content (trees, diagrams) must use a command that produces the output, e.g. cat <<'HEREDOC' ... HEREDOC
  • Non-deterministic output breaks verify. Timing, dates, and random values will differ across runs. Avoid capturing commands like bun test whose output includes wall-clock time. Use deterministic alternatives (e.g. grep -c to count tests)
  • Code fences in output. If the captured output contains triple backticks, showboat uses quadruple-backtick fences automatically — no special handling needed
  • Do not run prettier on walkthrough.md. The auto-format hook already exempts it. Showboat manages its own formatting; prettier would break verified output blocks.

Expand your agent's capabilities with these related and highly-rated skills.

philoserf/claude-code-setup

pre-release

Validates a project is ready to tag and ship. Use when tagging a release, cutting a version, shipping a package, or asking "are we ready to release?" Checks repo hygiene, CI status, docs, version sync, and build verification. Optimized for Obsidian plugins with fallback detection for other project types.

10 0
Explore
philoserf/claude-code-setup

local-issues

Reviews a codebase for bugs, design issues, and code cleanliness problems with specific file paths and line numbers. Use when auditing code quality, finding bugs, doing a code review, finding problems, or reviewing a project for issues. Creates issue files in `.issues/` directory.

10 0
Explore
philoserf/claude-code-setup

skill-improve

Generates prioritized improvement recommendations for Claude Code skills. Use when improving skills, enhancing customizations, or wanting actionable feedback on how to make a skill better. Provides impact/effort prioritization with specific fix suggestions.

10 0
Explore
philoserf/claude-code-setup

release

Executes the final release workflow for Obsidian plugins after pre-release checks pass. Use when tagging a release, publishing a version, or shipping an Obsidian plugin. Bumps version via bun run script, creates git tag, pushes to trigger GitHub Actions, and updates GitHub release notes from CHANGELOG.md.

10 0
Explore
philoserf/claude-code-setup

skill-quality

Scores Claude Code skills (1-5) across 6 weighted quality dimensions aligned with official Anthropic docs. Use when evaluating skill quality, rating skills, scoring customizations, comparing skill effectiveness, or checking if a skill follows best practices. Produces per-dimension scores with evidence, weighted totals, quality tier classification, and actionable improvement recommendations.

10 0
Explore
philoserf/claude-code-setup

obsidian-cli

Interacts with Obsidian vaults using the Obsidian CLI to read, create, and manage notes, tasks, properties, tags, and more. Also supports plugin and theme development with commands to reload plugins, run JavaScript, capture errors, take screenshots, and inspect the DOM. Use when the user asks to interact with their Obsidian vault, manage notes, add to daily note, find notes about a topic, check tasks, append to a note, query the vault, list tags, list files, manage bookmarks, check sync status, view file history, use templates, query bases, run QuickAdd, perform vault operations from the command line, or develop and debug Obsidian plugins and themes.

10 0
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results