agentleFS
mdsmithaustinmdsmithaustin/pstack/skills/how/SKILL.md

how

Skill9 starsChanged 37 days agoMITView on GitHub

Use for \"how does X work\", code walkthroughs before changing something, and placement / ownership / layering questions (\"where should this live\", \"which package owns this\", \"is this the right layer\"). Explains subsystem architecture, runtime flow, onboarding mental models. Use why for motivation.

95 other projects use a version of this, 53 of them edited.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

2 rules. 0 are common, 2 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 94 edited versions we read keep these.

  • 2

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    If the scope is ambiguous, state your interpretation and explore.

    line 14
  2. Distinctive:

    When in doubt, take the simple path.

    line 19

“Common” is measured: kept by at least 6 in 10 of the 94 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

How

Explore the codebase to answer "how does X work?" questions. Produce architectural explanations at the level of a senior engineer onboarding onto a subsystem, enough to build a working mental model, not so much that it reads like annotated source code.

Every spawn is a read-only general-purpose subagent. Explorers use the how explorer line in the pstack models config (default sonnet), and every explainer uses the how explainer line (default opus). Call the Skill tool with pstack-harness to resolve each spawn's model, effort, and agent type. Its Spawn a role section also covers a missing config, inherit-parent, and a rejected value.

1. Assess complexity

If the scope is ambiguous, state your interpretation and explore. The user can redirect.

  • Simple (a single module, a small utility, a narrow question such as "how does function X work"): no explorers. Spawn one explainer that explores and explains in one pass, built from references/explainer-prompt.md with the Direct exploration instructions. Omit Explorer Findings and Synthesis. Go to step 4.
  • Complex (a subsystem spanning multiple files or services, a cross-cutting feature, a full architectural overview): go to step 2.

When in doubt, take the simple path.

If the repo has a GitNexus index (.gitnexus/ exists) and gitnexus is on PATH, refresh it first — run gitnexus analyze --index-only once yourself before spawning anything (it is incremental and a no-op when up to date; never run it from parallel arms). Then seed exploration: gitnexus query "<concept>" for execution flows, gitnexus context <symbol> for callers/callees, gitnexus trace <from> <to> for the path between two symbols. Graph results choose where to read; the code itself remains the source of truth — the index reflects the last analyzed commit and never sees uncommitted edits. Without the index or the CLI, explore normally. When the repo has no index but gitnexus is on PATH, after answering a complex question, you may suggest gitnexus analyze to the user once for repos worth exploring again.

2. Explore (complex only)

Decompose the question into 2 to 4 angles, each a distinct slice of the subsystem. Spawn all explorers in a single message, each with references/explorer-prompt.md and its angle filled in.

3. Synthesize (complex only)

Once all explorers have returned, spawn one explainer with references/explainer-prompt.md, every explorer's findings, and the Synthesis instructions filled in. Omit Direct exploration.

4. Present

Present the explainer's output. Light edits for clarity or context from the conversation are fine. Do not substantially rewrite it.

Output format

The explanation uses the sections defined in references/explainer-prompt.md, dropping any that do not apply: Overview, Key Concepts, How It Works, Where Things Live, Gotchas.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.