一键导入
nw-buddy-project-reading
How the nWave buddy agent reads a project to answer questions — detection, order of inspection, and citation discipline.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
How the nWave buddy agent reads a project to answer questions — detection, order of inspection, and citation discipline.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Cross-agent collaboration protocols, workflow handoff patterns, and commit message formats for TDD/Mikado/refactoring workflows
Orchestrates the full DELIVER wave end-to-end (roadmap > execute-all > finalize). Use when all prior waves are complete and the feature is ready for implementation.
Acceptance test creation methodology for the DISTILL wave. Domain knowledge for the acceptance designer agent: port-to-port principle, prior wave reading, wave-decision reconciliation, graceful degradation, and document back-propagation.
Creates a phased roadmap.json for a feature goal with acceptance criteria and TDD steps. Use when planning implementation steps before execution.
Dispatches one unit of DELIVER work to a specialized agent for TDD execution. Runs a single roadmap.json step through the TDD cycle.
Deep knowledge for Outside-In TDD - double-loop architecture, ATDD integration, port-to-port testing, walking skeletons, and test doubles policy
| name | nw-buddy-project-reading |
| description | How the nWave buddy agent reads a project to answer questions — detection, order of inspection, and citation discipline. |
The buddy agent answers questions about a project by reading it, not by guessing. Every answer must be traceable to a specific file and line. This skill is the reading protocol.
path:line) so the user can verify.Read in this order. Stop as soon as you have enough context for the current question.
README.md — what is this project, for whom.CLAUDE.md (project root) — how Claude-based tools should behave here.pyproject.toml / package.json / Cargo.toml / equivalent — language, dependencies, versions, scripts.VERSION or the version field in the package manifest.These four files tell you the project's name, language, purpose, and roughly how big it is. Skip nothing here.
BACKLOG.md — the single source of truth for planned work (in nWave projects).CHANGELOG.md — recent user-visible changes.git status — what's in flight right now.git log --oneline -20 — recent direction of travel.If the user's question is "what should I work on next" or "what did we just do", these four are usually the answer.
docs/architecture/architecture-design.md (or similar SSOT file).docs/adrs/ — Architecture Decision Records.docs/feature/ — feature specs with wave subdirectories.The architecture doc is authoritative for design intent. If a claim in the architecture doc contradicts the code, the code is what runs — but the mismatch is itself a finding worth reporting.
ls the top-level dirs.ls src/ (or the project's source root).main.py, index.ts, Main.fs, etc.).A project's directory layout tells you 80% of its architecture in a few seconds: domain/, application/, adapters/, ports/, tests/ means hexagonal. src/, views/, controllers/, models/ means MVC. core/, api/, ui/ means layered.
tests/ or equivalent — top-level directories only, initially.conftest.py / test config — tells you how tests are organized and marked.Tests often document behavior more precisely than prose docs.
Once the question is clear, read the specific files it touches. Don't pre-load.
Answer these as you read:
nWave/ directory, framework-catalog.yaml, BACKLOG.md at root, agents/commands/skills layout, mentions of waves in docs.pyproject.toml, package.json, .csproj, build.sbt, etc.git status or git branch --show-current. Branch name often encodes the current focus.CODEOWNERS if present.Record the answers silently; draw on them when answering.
When reading a feature to answer "what's next?", check for these wave artifacts in order:
| Wave | Artifact Path | Existence Check |
|---|---|---|
| DIVERGE | docs/feature/{id}/diverge/recommendation.md | Branch point recommendation exists |
| DISCUSS | docs/feature/{id}/discuss/user-stories.md | User stories written |
| DESIGN | docs/feature/{id}/design/wave-decisions.md | Architecture decisions documented |
| DEVOPS | docs/feature/{id}/devops/wave-decisions.md | CI/CD and deployment decisions documented |
| DISTILL | tests/{test-type-path}/{id}/acceptance/*.feature | BDD test scenarios written (the .feature file is the SSOT) |
| DELIVER | docs/feature/{id}/deliver/roadmap.json | All implementation steps at COMMIT/PASS |
Stop at the first missing artifact — that's where the feature currently is. For features using the old flat model (no wave subdirectories), treat as pre-DIVERGE.
Every concrete claim in an answer must point to a source:
src/des/data/workflows/tdd-deliver.yaml:12)"docs/architecture/architecture-design.md section 3"feature/foo (from git status)"If you're paraphrasing, still cite. If you're guessing, say "I don't see this in the files I've read" and stop — don't fabricate.
When a citation would be noise (trivial claims like "this is a Python project"), omit it. When a claim is load-bearing, always cite.
node_modules/, .venv/, build/, dist/, target/, lock files (unless the question is about deps).If the user's question requires reading more than ~15 files, or requires running commands, or touches a part of the codebase you can't reach, say so explicitly. Offer a plan: "to answer this I would need to read X, Y, Z — proceed?"
A well-formed answer:
README.md, pyproject.toml, CLAUDE.md — get the elevator pitch and version.BACKLOG.md — get the current priorities.git status + git log --oneline -10 — get the current branch and recent direction.<name> v<version>, a <one-sentence purpose> written in <language>. The current branch is <branch>. Recent commits focus on <summary>. The backlog's top items are <top 3>. (citations for each claim)"Total reading: 4-5 files, under a minute. That's the standard to aim for.