/nw-auto
Evaluates and revises Request S/M/L and delivery choices from evidence, then uses nwdes to construct delivery artifacts.
Claude Code
$ npx -y skills add nWave-ai/nWave --skill nw-auto --agent claude-code
Codex
$ npx skills add nWave-ai/nWave --skill nw-auto -a codex -y
Cursor
$ npx skills add nWave-ai/nWave --skill nw-auto -a cursor -y
Gemini CLI
$ npx skills add nWave-ai/nWave --skill nw-auto -a gemini-cli -y
GitHub Copilot
$ npx skills add nWave-ai/nWave --skill nw-auto -a github-copilot -y
OpenCode
$ npx skills add nWave-ai/nWave --skill nw-auto -a opencode -y
Windsurf
$ npx skills add nWave-ai/nWave --skill nw-auto -a windsurf -y
SKILL.md
nw-auto.SKILL.mdname: nw-auto
description: Evaluates and revises Request S/M/L and delivery choices from evidence, then uses nwdes to construct delivery artifacts.
user-invocable: true
argument-hint: '<request>'
NW-AUTO
Before creating or inheriting a lane, or finalizing/resuming its cleanup, apply the worktree lifecycle in `nw-throughput`. If not already loaded, MUST resolve that skill through the host skill catalog and read its `SKILL.md`.
Before diagnosing or assigning corrections, load `nw-cross-cutting-invariants` and apply `delivery:trustworthy-baseline-and-repair-scope`. A blocking observation requires attention; it does not alone authorize an independent repair.
**Visible baseline for affected work.** The host establishes the project's required checks for the affected scope once, on the current source/environment, or cites applicable evidence already measured on those same inputs with its original provenance. The baseline runs alongside independent authoring; it is not a serial preflight before authoring. Tell the user what ran (or was reused), its scope, and whether the baseline is GREEN, RED, or INDETERMINATE. A baseline with no trustworthy execution is INDETERMINATE, not GREEN. The intentional acceptance RED is not a pre-existing failure. Use a short user-facing line such as `Baseline: GREEN — <command or evidence> (<affected scope>)`. For RED or INDETERMINATE, add `Blocker: <failure or missing evidence>` and `Next: <restoration or discriminator>`.
For RED or INDETERMINATE, show the failing check and concrete cause or missing prerequisite (mark an unknown cause as unknown), explain why affected work cannot start on that safety net, and name the next diagnostic or restoration. Restore required checks and show the new result before affected test/production work. Do not silently skip or weaken a failing check, rerun a whole suite per slice, claim an unrelated failure is caused by this Request, or absorb an independent redesign. Independent work can proceed only with its own trustworthy unaffected basis. This is a user-visible practice applying `nw-cross-cutting-invariants` clause `delivery:trustworthy-baseline-and-repair-scope`, not a new runtime gate.
You orchestrate. nwdes constructs the canonical handoff and derives briefs, prompts and packets from it. It has no workflow ledger, gates or next-step state. The LLM chooses sequencing, rework and the next invocation; the host executes models and verification commands.
Read `~/.claude/skills/nw-role-invocation/SKILL.md` when delegating: the native host invokes the exact installed role with its mandatory skills and tools ceiling. nwdes builds forms; it never launches models.
1. Read the route and current authority
Read `nw-nwdes` before using delivery commands. Resume from the feature's handoff and the briefs rendered by `nwdes document`; do not infer progress from a stored workflow state. Keep the original Request and current findings available to their owners.
2. Construct, then observe
Use `nwdes prompt` for the selected installed role; it supplies the typed verb reference. Every role uses Bash to call its kind's nwdes CLI verbs, records its own values and closes its draft:
| Owner | Role-owned recording | |---|---| | Product owner | `nwdes product` record edits, `nwdes product close` | | Charter author | `nwdes charter set/positive add/close` | | Solution architect | `nwdes design` record edits, `nwdes design close` | | Acceptance designer | `nwdes acceptance row add/close` | | Expectations author | `nwdes expectations row add/close`; revisions use `open --from-current`, then `close --revise` | | Examiner | `nwdes examine verdict set/close` | | Crafter | `nwdes craft file add/command add/close` | | Independent reviewer | `nwdes review finding add/close` |
The host writes no JSON and copies no reply into a constructor. For each role the route invokes, it passes that role's generated `nwdes prompt` bundle verbatim, and that role, not the host, runs its kind's verbs. Facts the route assigns to the host, such as `feature new` and `slice set`, stay with the host. nwdes builds ids, structure and serialization from typed values. For platform constraints, give semantic operational facts to the solution architect in `nwdes prompt --root-context`; there is no separate platform constructor. The owning role corrects authority with `open --from-current`, record edits and `close`, rather than patching a generated brief. Run every nwdes command from the top level of the checkout. Roots default to cwd and the repository root; lane verbs resolve the main worktree. The first add, set or remove creates the scoped draft. Close with no draft validates empty values.
The host runs the slice's declared verification commands once per candidate and records actual RED/GREEN and live native observations; it does not repeat them at the root. nwdes stores no verification seals and runs no supplied command. After composition, invoke the final whole-candidate independent review, then the source-blind public-perspective EXAMINE, using `nwdes packet` and each role's prompt. Reviewers record findings with review verbs; the examiner judges the user's actual observations. The final reviewer owns selection and sufficiency of the touched-file selected tests. It reuses a complete applicable native result (host, CI or the normal commit hook) whose source, test, argv and runtime inputs are unchanged, citing its original operator and run; it executes only missing or affected checks, once. Reuse never waives a check.
3. Interpret evidence, not completion prose
Read each command's actual result and each role's typed outcome. A diagnostic is an explanation, not proof of a host invocation, test result or cost. Keep actual provider/model/session provenance and captured native output.
A missing input, write failure or refusal does not choose a route. Send its WHAT/WHY/HOW unchanged directly to the owning role when native messaging exists, with your context
Read more
name: nw-auto description: Evaluates and revises Request S/M/L and delivery choices from evidence, then uses nwdes to construct delivery artifacts. user-invocable: true argument-hint: '<request>'
NW-AUTO
Before creating or inheriting a lane, or finalizing/resuming its cleanup, apply the worktree lifecycle in `nw-throughput`. If not already loaded, MUST resolve that skill through the host skill catalog and read its `SKILL.md`.
Before diagnosing or assigning corrections, load `nw-cross-cutting-invariants` and apply `delivery:trustworthy-baseline-and-repair-scope`. A blocking observation requires attention; it does not alone authorize an independent repair.
**Visible baseline for affected work.** The host establishes the project's required checks for the affected scope once, on the current source/environment, or cites applicable evidence already measured on those same inputs with its original provenance. The baseline runs alongside independent authoring; it is not a serial preflight before authoring. Tell the user what ran (or was reused), its scope, and whether the baseline is GREEN, RED, or INDETERMINATE. A baseline with no trustworthy execution is INDETERMINATE, not GREEN. The intentional acceptance RED is not a pre-existing failure. Use a short user-facing line such as `Baseline: GREEN — <command or evidence> (<affected scope>)`. For RED or INDETERMINATE, add `Blocker: <failure or missing evidence>` and `Next: <restoration or discriminator>`.
For RED or INDETERMINATE, show the failing check and concrete cause or missing prerequisite (mark an unknown cause as unknown), explain why affected work cannot start on that safety net, and name the next diagnostic or restoration. Restore required checks and show the new result before affected test/production work. Do not silently skip or weaken a failing check, rerun a whole suite per slice, claim an unrelated failure is caused by this Request, or absorb an independent redesign. Independent work can proceed only with its own trustworthy unaffected basis. This is a user-visible practice applying `nw-cross-cutting-invariants` clause `delivery:trustworthy-baseline-and-repair-scope`, not a new runtime gate.
You orchestrate. nwdes constructs the canonical handoff and derives briefs, prompts and packets from it. It has no workflow ledger, gates or next-step state. The LLM chooses sequencing, rework and the next invocation; the host executes models and verification commands.
Read `~/.claude/skills/nw-role-invocation/SKILL.md` when delegating: the native host invokes the exact installed role with its mandatory skills and tools ceiling. nwdes builds forms; it never launches models.
1. Read the route and current authority
Read `nw-nwdes` before using delivery commands. Resume from the feature's handoff and the briefs rendered by `nwdes document`; do not infer progress from a stored workflow state. Keep the original Request and current findings available to their owners.
2. Construct, then observe
Use `nwdes prompt` for the selected installed role; it supplies the typed verb reference. Every role uses Bash to call its kind's nwdes CLI verbs, records its own values and closes its draft:
| Owner | Role-owned recording | |---|---| | Product owner | `nwdes product` record edits, `nwdes product close` | | Charter author | `nwdes charter set/positive add/close` | | Solution architect | `nwdes design` record edits, `nwdes design close` | | Acceptance designer | `nwdes acceptance row add/close` | | Expectations author | `nwdes expectations row add/close`; revisions use `open --from-current`, then `close --revise` | | Examiner | `nwdes examine verdict set/close` | | Crafter | `nwdes craft file add/command add/close` | | Independent reviewer | `nwdes review finding add/close` |
The host writes no JSON and copies no reply into a constructor. For each role the route invokes, it passes that role's generated `nwdes prompt` bundle verbatim, and that role, not the host, runs its kind's verbs. Facts the route assigns to the host, such as `feature new` and `slice set`, stay with the host. nwdes builds ids, structure and serialization from typed values. For platform constraints, give semantic operational facts to the solution architect in `nwdes prompt --root-context`; there is no separate platform constructor. The owning role corrects authority with `open --from-current`, record edits and `close`, rather than patching a generated brief. Run every nwdes command from the top level of the checkout. Roots default to cwd and the repository root; lane verbs resolve the main worktree. The first add, set or remove creates the scoped draft. Close with no draft validates empty values.
The host runs the slice's declared verification commands once per candidate and records actual RED/GREEN and live native observations; it does not repeat them at the root. nwdes stores no verification seals and runs no supplied command. After composition, invoke the final whole-candidate independent review, then the source-blind public-perspective EXAMINE, using `nwdes packet` and each role's prompt. Reviewers record findings with review verbs; the examiner judges the user's actual observations. The final reviewer owns selection and sufficiency of the touched-file selected tests. It reuses a complete applicable native result (host, CI or the normal commit hook) whose source, test, argv and runtime inputs are unchanged, citing its original operator and run; it executes only missing or affected checks, once. Reuse never waives a check.
3. Interpret evidence, not completion prose
Read each command's actual result and each role's typed outcome. A diagnostic is an explanation, not proof of a host invocation, test result or cost. Keep actual provider/model/session provenance and captured native output.
A missing input, write failure or refusal does not choose a route. Send its WHAT/WHY/HOW unchanged directly to the owning role when native messaging exists, with your context
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-auto.
- Which coding agents can use nw-auto?
- nw-auto 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.

