Skip to content
Back to skills

How

ASecurity

Trace how a subsystem actually works before changing it. Use for "how does X work", a walkthrough before an edit, or placement questions ("where should this live", "which package owns this"). Fans out read-only explorers for a subsystem, one explainer for a narrow question. Use `why` for motivation, `alternatives-considered` for options.

  • 4 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 19, 2026
ai-agentsgo

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned September 19, 2026

npx -y skills add EdbertChan/catstack --skill how --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of How?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for How
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/edbertchan-how/badge)](https://www.skillsdirectory.com/skills/edbertchan-how)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: how
description: >-
  Trace how a subsystem actually works before changing it. Use for "how does
  X work", a walkthrough before an edit, or placement questions ("where
  should this live", "which package owns this"). Fans out read-only
  explorers for a subsystem, one explainer for a narrow question. Use `why`
  for motivation, `alternatives-considered` for options.
---

# How

Build a working mental model of code you are about to change. The output is
the mechanism, not annotated source.

Feeds `principle-prove-it`: you cannot exercise the real artifact until you
know which artifact is real.

## Step 1. Size the question

State your reading of the scope in one line, then proceed. The user can
redirect.

- **Narrow** — one module, one function, one file. No fan-out. Read and
  explain in a single pass. Go to Step 3.
- **Broad** — a subsystem across files or packages, a cross-cutting flow, an
  architectural overview. Fan out first. Go to Step 2.

When it is ambiguous, take the narrow path. A second pass is cheaper than
four subagents answering a question that had one file in it.

## Step 2. Fan out (broad only)

Split the question into 2–4 angles that do not overlap. Spawn all explorers
in **one message** so they run concurrently:

- `subagent_type: Explore` (or `general-purpose` where Explore is absent)
- read-only; no edits, no worktree needed

Each explorer owns one angle and returns rows in the shape at
`corpus/skills/principle-prove-it/references/finding-shape.md`.

**Prompt hygiene:** give each explorer the question and the entry points,
not your working theory. A primed explorer finds roughly what you already
suspected.

**Every explorer states grounding per row.** `read-confirmed` means it
opened the actual import or call site and traced it. `name-matched` means
the path looked right. Two files can hold the same symbol name; a subagent
reasoning by name-proximity hands back a confident wrong file.

## Step 3. Explain

Merge the rows and write the explanation yourself. Sections, dropping any
that do not apply:

- **Overview** — what this does, in two sentences.
- **Runtime flow** — the actual call path, entry point to effect.
- **Key types** — the data structures the logic is written against.
- **Where things live** — `file:line` per claim, with the ref.
- **Gotchas** — the non-obvious parts, and what looks wrong but isn't.
- **Not traced** — every angle that came back empty or was not covered.

Do not drop the last section for brevity. A gap you name is a gap the reader
can fill; a gap you omit reads as coverage.

## Hand-off

When `how` precedes a change, end with the mechanism that must still work
afterward, phrased as a command or check. That line is what
`principle-prove-it` will demand output from later.

## Do not

- Explain from a grep hit. A name match is not a read.
- Fan out on a question one file answers.
- Report a flow you inferred from function names as if you traced it.

Files in this skill

  • SKILL.md2.9 KB
  • tests/fires_example.md688 B
  • tests/stays_silent_example.md579 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.