How

by backnotprop3a604672c46cNo license1.3K starsListed Oct 8, 2026Updated Oct 8, 2026Repository updated today

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.

AI-generated overview

Explains how a codebase subsystem works, producing architectural walkthroughs and placement or ownership guidance.

What it does
Explores a codebase to answer "how does X work" questions and produces an architectural explanation aimed at a senior engineer onboarding onto a subsystem. It assesses complexity, then either runs a single explainer pass or spawns parallel explorers whose findings are synthesized into one explanation. Output follows sections such as Overview, Key Concepts, How It Works, Where Things Live and Gotchas, and it also addresses placement, ownership and layering questions.
When to use it
Use it for questions about how a subsystem works, for code walkthroughs before changing something, and for placement, ownership or layering questions such as where something should live or which package owns it. It is intended for building a working mental model rather than for motivation, which the skill directs elsewhere.
Requirements
Runs in an agent harness with a subagent tool; the skill names Cursor's Task tool and alternatives in Claude Code, OpenCode and Codex, and says to run each role directly if no subagent tool exists. It reads two reference prompt files and optionally a pstack settings file for model selection. No scripts ship with it.

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.

Each spawn below names a role line in the pstack settings file (~/.cursor/rules/pstack-models.mdc in Cursor, ~/.agents/pstack-models.md in other harnesses) and a default. Set model to that line's value, or to the default if the file or the line is missing. Leave model unset when the value is auto or inherit-parent. If your subagent tool rejects a slug, use the default and say so. If it rejects the default, use the closest valid slug of the same family from its error message or your harness's model list.

Step 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. One explainer explores and explains in a single pass. Go to Step 2b.
  • Complex (a subsystem spanning multiple files or services, a cross-cutting feature, a full architectural overview): spawn parallel explorers first, then hand off to the explainer. Go to Step 2a.

When in doubt, take the simple path.

Other harnesses. The spawns in this skill use Cursor's Task tool. In another harness, use its subagent tool: Agent in Claude Code (subagent_type: general-purpose), task in OpenCode (subagent_type: general), spawn_agent in Codex. Keep the prompt and the model. Drop parameters your tool doesn't have. If your harness has no subagent tool, as in Pi without an extension, run each role yourself, one after another.

Step 2a. Explore (complex questions only)

Decompose the question into 2 to 4 exploration angles, each a distinct slice of the subsystem. Spawn all explorers in a single message:

  • subagent_type: generalPurpose
  • model: the how explorer line, default grok-4.7-xhigh-fast
  • readonly: true

Each explorer gets the prompt in references/explorer-prompt.md with its angle filled in. Then go to Step 3.

Step 2b. Direct Explain (simple questions)

Spawn one Task subagent that explores and explains in one pass:

  • subagent_type: generalPurpose
  • model: the how explainer line, default claude-opus-5-5-xhigh
  • readonly: true

Build its prompt from references/explainer-prompt.md without the explorer-findings section. Go to Step 4.

Step 3. Synthesize (complex questions only)

Once all explorers have returned, spawn one Task subagent to synthesize their findings into one explanation:

  • subagent_type: generalPurpose
  • model: the how explainer line, default claude-opus-5-5-xhigh
  • readonly: true

Build its prompt from references/explainer-prompt.md with every explorer's findings filled in.

Step 4. Present

Present the explainer's output to the user. 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.

Source and attribution

Source:backnotprop/pstackinskills/howat commit3a60467

License: No license

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal

How Agent Skill | SourceWeft