/nw-distill
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.
Claude Code
$ npx -y skills add nWave-ai/nWave --skill nw-distill --agent claude-code
Codex
$ npx skills add nWave-ai/nWave --skill nw-distill -a codex -y
Cursor
$ npx skills add nWave-ai/nWave --skill nw-distill -a cursor -y
Gemini CLI
$ npx skills add nWave-ai/nWave --skill nw-distill -a gemini-cli -y
GitHub Copilot
$ npx skills add nWave-ai/nWave --skill nw-distill -a github-copilot -y
OpenCode
$ npx skills add nWave-ai/nWave --skill nw-distill -a opencode -y
Windsurf
$ npx skills add nWave-ai/nWave --skill nw-distill -a windsurf -y
SKILL.md
nw-distill.SKILL.mdname: nw-distill
description: Produce an executable public oracle from durable authority.
nw-distill
Compile the value observation and executable oracle from durable product and architecture authority. Provide only consumed facts to the resident owner; do not create a workflow handoff or execute delivery.
Author the oracle while the focused baseline is established; do not serialize ATD behind an unrelated or broad baseline batch. Reuse applicable observed results, with their original provenance, when the relevant source, oracle, supports and runtime are unchanged. Before craft, establish the missing behavior's semantic RED on the original source and the independent public-oracle approval as an artifact-quality check of that oracle alone, not a whole-candidate review; the public oracle with that observed RED precedes craft. Broken setup is not RED; block only the affected work.
For an uncertain boundary, use the existing constructor and resident oracle delegation to make one concrete public-port case executable before expanding the affected design or solution. Preserve the RED observation for that oracle; DELIVER consumes the resulting oracle to implement the change. If the oracle consumer cannot express the case, return its specific missing semantic question and counterexample to the design owner. Do not invent a handoff, choose a successor, or create a separate cycle for an internal technical fragment.
The source-blind examiner fixes public expectations once per feature before the first acceptance designer. Keep oracle and expectations authorship independent. The acceptance designer supplies each stimulus, expected observation, user result, covered obligation and disposition. `Tested` names executable coverage, not a passed run; keep execution results separate. `NotTested` names its reason and owner; it is not a waiver. An assigned host observation or semantic assessment still runs under its owner, and the absence of an automatic test never removes it. Distinguish automatic tests, host observations and semantic assessments within the existing acceptance rows. Do not rewrite coverage merely because future production is not GREEN. Retain every promised final observation and report missing evidence honestly.
The host runs the declared verification commands on the original source and captures RED before implementation. For a bugfix, do not use HEAD after the fix is already committed. A setup/collection failure is unavailable evidence, not intentional RED; an oracle that already passes the source does not demonstrate the promised missing behavior.
Optional before-code alignment: when the public boundary is uncertain, read `~/.claude/skills/nw-at-completeness-check/SKILL.md` and supply the accepted public expectations and recorded acceptance facts to the acceptance reviewer as early feedback, within its allowed evidence boundary. Reuse a prior adequate alignment when the original value, selected contract, and findings are unchanged; do not repeat its ATD review. Its absence never blocks craft; it is early feedback; an optional early independent oracle review may run when risk warrants. Human scope authority remains unchanged. Follow `nw-role-invocation` for the source-blind boundary; alignment is authoring work, not a runtime gate.
For changed design or acceptance facts, supply complete current acceptance. Preserve unaffected coverage and replace superseded observations deliberately. Preserve the oracle, supports and ordered verification commands unless their owner revises them with a reason. Never infer an executor from a filename.
Test time (`test:feedback-loop-budget` in `nw-cross-cutting-invariants`): author every test within the design's declared budgets or the feature's granted derogation, measure per-test time over at least nine sequential runs and report n, median, maximum and load, a budget being met on the median with at most one run over it, put each formal law's executable projection in the default suite and real adapter fault injection only in the infrastructure suite of a feature whose derogation the human granted; never write a test above them: propose the feature's derogation request, with one risk/value record per test, and ask for the human's decision instead.
Native oracle selection follows `nw-test-design-mandates`, not the builder's implementation. Keep semantic expectation, executable oracle and source-blind public observations distinct. Preserve applicable architectural/contract check obligations from the generated DESIGN grammar (`nw-design`) across primary-oracle realignment; deliberately migrate their locators/verification, never drop them by override. Prefactoring preservation remains a separate before/after intermediate observation, not final feature GREEN relabeled.
Missing or inconsistent authority and unavailable oracle evidence return to their owning role with the concrete gap and remedy.
Human-readable acceptance context
Use current product/design briefs and HTML with `nw-doc-as-artifact` for collaborative reading. A rendered view is neither evidence nor a progression gate.
Read more
name: nw-distill description: Produce an executable public oracle from durable authority.
nw-distill
Compile the value observation and executable oracle from durable product and architecture authority. Provide only consumed facts to the resident owner; do not create a workflow handoff or execute delivery.
Author the oracle while the focused baseline is established; do not serialize ATD behind an unrelated or broad baseline batch. Reuse applicable observed results, with their original provenance, when the relevant source, oracle, supports and runtime are unchanged. Before craft, establish the missing behavior's semantic RED on the original source and the independent public-oracle approval as an artifact-quality check of that oracle alone, not a whole-candidate review; the public oracle with that observed RED precedes craft. Broken setup is not RED; block only the affected work.
For an uncertain boundary, use the existing constructor and resident oracle delegation to make one concrete public-port case executable before expanding the affected design or solution. Preserve the RED observation for that oracle; DELIVER consumes the resulting oracle to implement the change. If the oracle consumer cannot express the case, return its specific missing semantic question and counterexample to the design owner. Do not invent a handoff, choose a successor, or create a separate cycle for an internal technical fragment.
The source-blind examiner fixes public expectations once per feature before the first acceptance designer. Keep oracle and expectations authorship independent. The acceptance designer supplies each stimulus, expected observation, user result, covered obligation and disposition. `Tested` names executable coverage, not a passed run; keep execution results separate. `NotTested` names its reason and owner; it is not a waiver. An assigned host observation or semantic assessment still runs under its owner, and the absence of an automatic test never removes it. Distinguish automatic tests, host observations and semantic assessments within the existing acceptance rows. Do not rewrite coverage merely because future production is not GREEN. Retain every promised final observation and report missing evidence honestly.
The host runs the declared verification commands on the original source and captures RED before implementation. For a bugfix, do not use HEAD after the fix is already committed. A setup/collection failure is unavailable evidence, not intentional RED; an oracle that already passes the source does not demonstrate the promised missing behavior.
Optional before-code alignment: when the public boundary is uncertain, read `~/.claude/skills/nw-at-completeness-check/SKILL.md` and supply the accepted public expectations and recorded acceptance facts to the acceptance reviewer as early feedback, within its allowed evidence boundary. Reuse a prior adequate alignment when the original value, selected contract, and findings are unchanged; do not repeat its ATD review. Its absence never blocks craft; it is early feedback; an optional early independent oracle review may run when risk warrants. Human scope authority remains unchanged. Follow `nw-role-invocation` for the source-blind boundary; alignment is authoring work, not a runtime gate.
For changed design or acceptance facts, supply complete current acceptance. Preserve unaffected coverage and replace superseded observations deliberately. Preserve the oracle, supports and ordered verification commands unless their owner revises them with a reason. Never infer an executor from a filename.
Test time (`test:feedback-loop-budget` in `nw-cross-cutting-invariants`): author every test within the design's declared budgets or the feature's granted derogation, measure per-test time over at least nine sequential runs and report n, median, maximum and load, a budget being met on the median with at most one run over it, put each formal law's executable projection in the default suite and real adapter fault injection only in the infrastructure suite of a feature whose derogation the human granted; never write a test above them: propose the feature's derogation request, with one risk/value record per test, and ask for the human's decision instead.
Native oracle selection follows `nw-test-design-mandates`, not the builder's implementation. Keep semantic expectation, executable oracle and source-blind public observations distinct. Preserve applicable architectural/contract check obligations from the generated DESIGN grammar (`nw-design`) across primary-oracle realignment; deliberately migrate their locators/verification, never drop them by override. Prefactoring preservation remains a separate before/after intermediate observation, not final feature GREEN relabeled.
Missing or inconsistent authority and unavailable oracle evidence return to their owning role with the concrete gap and remedy.
Human-readable acceptance context
Use current product/design briefs and HTML with `nw-doc-as-artifact` for collaborative reading. A rendered view is neither evidence nor a progression gate.
AI agents that guide you from idea to working code, with human judgment at every gate. nWave runs inside Claude Code. It breaks feature delivery into seven waves (discover, diverge, discuss, design, devops, distill, deliver).
Other skills on nwave.
More skills from other plugins.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
ask-matt
Ask which skill or flow fits your situation. A router over the skills in this repo.
Questions about nw-distill.
- Which coding agents can use nw-distill?
- nw-distill installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.

