how
Investigate how a feature is implemented on backend or mobile/frontend, trace the flow, and generate C4, sequence, activity, ERD, state, and file-graph…
Skill by Spice-Z
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/spice-z-how
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: frontend, backend
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/how
What's inside
- Skill name
how- Description
- Investigate how a feature is implemented on backend or mobile/frontend, trace the flow, and generate C4, sequence, activity, ERD, state, and file-graph diagrams. Use only when the user invokes /how.
- License
- MIT
- Instructions
- 218 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Investigate Feature
The user will provide a short feature description. Trace how it works on whatever stack is present (backend, mobile/frontend, or both), explain it with file paths, then generate the diagram HTML.
## Phase 1: Research
Do not search the repo yourself first. Launch **parallel Task subagents** in one turn, then stitch their results. These are built-in agent types, not skills in this pack. The names below are Cursor's; in Claude Code use `Explore` for `explore` and `general-purpose` for `generalPurpose`.
1. Skim only enough to guess which surfaces exist (mobile, backend, or both).
2. Start 2–3 subagents together:
| Subagent | Type | Thoroughness | Job |
| --- | --- | --- | --- |
| Keywords | `explore` | medium | Files, symbols, and call sites matching the feature keywords |
| Backend | `explore` | medium | Routes, handlers, jobs, services, models, tables, queues — skip if no backend |
| Mobile / UI | `explore` | medium | Screens, navigation, view models, hooks, stores, clients, native modules — skip if no UI |
3. If one path is still unclear after they return, launch one `generalPurpose` follow-up to trace that path. Do not start the write-up until the first wave is back.
Each subagent should return: relative paths, package/app name, key functions, and how the files connect. Skip layers that are not in the repo.
## Phase 2: Explain
```
## Feature: [Name]
### How it works
[2-3 sentence end-to-end summary]
### Flow
1. Step → `file path` → what happens
...
### Key Files
| File | Project | Role |
|------|---------|------|
| `path/to/file` | app-or-package | What it does |
```
Add only the sections that research found:
- **Screens / Navigation** — screen, route, how the user gets there
- **Client state** — store, hook, view model
- **Types** — important types or props
- **Database tables** — only if the feature reads or writes a DB
## Phase 3: Diagrams
Write one HTML file: header "[Feature Name] — Codebase Investigation", sticky tab bar, Architecture open first.
| Tab | Include when... |
|-----|-----------------|
| Architecture | Always (C4: Context, Container, Component) |
| Sequence | Always |
| File Graph | Always |
| Activity | Conditional logic, branching, or error paths |
| ERD | Reads or writes database tables |
| State Machine | An entity, screen, or flow has a status/state lifecycle |
### Tab 1: Architecture Overview (C4)
Draw the feature with the C4 model: Context, Container, Component. One Mermaid diagram per level (`C4Context`, `C4Container`, `C4Component`). Do not mix levels. Skip C4 Code — files go on File Graph.
Level switcher inside this tab: **Context** | **Container** | **Component**. Default **Container**. Omit a level only when research found nothing for it.
| Level | Show | Nodes |
| --- | --- | --- |
| Context | People and systems around the feature | `Person`, `Person_Ext`, `System`, `System_Ext`, `SystemDb`, `SystemQueue` |
| Container | Deployable pieces | `Container`, `Container_Ext`, `ContainerDb`, `ContainerQueue` in a `System_Boundary` |
| Component | Modules inside the container that owns the feature | `Component`, `Component_Ext`, `ComponentDb` in a `Container_Boundary` |
A mobile app, web app, API, worker, and database are all containers. Screens, view models, routers, and domain services are components. Use `Rel(from, to, "label")` or `Rel(from, to, "label", "tech")`. Prefer real protocols (`HTTPS`, `SQL`, `navigation`). No `[]` or `<` in titles or labels.
```
C4Container
title Container diagram for Feature
Person(user, "User", "Starts the feature")
System_Boundary(sys, "This system") {
Container(mobile, "Mobile app", "React Native", "Screens and local state")
Container(api, "API", "Node.js", "Handles the request")
ContainerDb(db, "Database", "PostgreSQL", "Stores records")
}
Rel(user, mobile, "Taps action")
Rel(mobile, api, "Calls API", "HTTPS")
Rel(api, db, "Reads and writes", "SQL")
```
### Tab 2: Sequence Flow
Primary use case, chronological. Participants are screens, view models, services, or files. Solid arrows = sync, dashed = async/events/navigation. Group into phases.
### Tab 3: Activity Diagram (conditional)
Branching and error paths. Swim lanes by screen or service. Label each branch.
```json
{
"swimLanes": [
{ "name": "ServiceA", "file": "path/to/ServiceA.ts" }
],
"nodes": [
{ "id": "start", "type": "start" },
{ "id": "validate", "type": "action", "label": "validate(input)", "lane": "ServiceA", "file": "path/to/file.ts" },
{ "id": "isValid", "type": "decision", "label": "is valid?", "lane": "ServiceA" },
{ "id": "end", "type": "end" }
],
"edges": [
{ "from": "start", "to": "validate" },
{ "from": "validate", "to": "isValid" },
{ "from": "isValid", "to": "end", "label": "yes" }
]
}
```
### Tab 4: ERD (conditional)
Tables used by the feature. Mark PK/FK, cardinality, and `usedByFeature` on columns. Include the model or migration path.
```jsonFrom Spice-Z/yugo-stack, MIT.
More from Spice-Z/yugo-stack
- 0.570score
grasp
Spice-Z
Explain a pull request so a reviewer can understand it fast, big picture first.
SkillAFreshness: AClaude Code +9 - 0.565score
restate
Spice-Z
Restates the last user message in the agent's own words so the user can confirm understanding.
SkillAFreshness: AClaude Code +9 - 0.565score
up-yugo
Spice-Z
Updates the local yugo-stack plugin by pulling ~/.cursor/plugins/local/yugo-stack.
SkillAFreshness: AClaude Code +9 - 0.565score
radar
Spice-Z
Maps a PR diff to user-facing API endpoints and screens, then counts real production usage of those surfaces.
SkillAFreshness: AClaude Code +9 - 0.564score
intern
Spice-Z
Explains the same thing as the last chat, as you do for intern.
SkillAFreshness: AClaude Code +9 - 0.564score
japa
Spice-Z
Explains the same thing as the last chat, in Japanese.
SkillAFreshness: AClaude Code +9 - 0.564score
so
Spice-Z
Simplifies the last message and explains it with minimal bullet points.
SkillAFreshness: AClaude Code +9 - 0.524score
handbook
Spice-Z
Research the user's question and write a Notion handbook: one index page (TOC + Sources only) plus a subpage per chapter, including Chapter 1 Abstract.
SkillBFreshness: BClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 16, 2026 (12 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/Spice-Z/yugo-stack
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Spice-Z
- 0.570score
grasp
Spice-Z
Explain a pull request so a reviewer can understand it fast, big picture first.
SkillAFreshness: AClaude Code +9 - 0.565score
restate
Spice-Z
Restates the last user message in the agent's own words so the user can confirm understanding.
SkillAFreshness: AClaude Code +9 - 0.565score
up-yugo
Spice-Z
Updates the local yugo-stack plugin by pulling ~/.cursor/plugins/local/yugo-stack.
SkillAFreshness: AClaude Code +9 - 0.565score
radar
Spice-Z
Maps a PR diff to user-facing API endpoints and screens, then counts real production usage of those surfaces.
SkillAFreshness: AClaude Code +9 - 0.564score
intern
Spice-Z
Explains the same thing as the last chat, as you do for intern.
SkillAFreshness: AClaude Code +9 - 0.564score
japa
Spice-Z
Explains the same thing as the last chat, in Japanese.
SkillAFreshness: AClaude Code +9
Cite this page
how skill. Agent Mart. https://agentmart.dev/skills/spice-z-how (last updated 2026-10-24)