spec-driven-development

作成者: n8n-io

Keeps implementation and specs in sync. Use when working on a feature that has a spec in .claude/specs/, when the user says /spec, or when starting…

npx skills add https://github.com/n8n-io/n8n --skill spec-driven-development

Spec-Driven Development

Specs live in .agents/specs/. They are the source of truth for architectural decisions, API contracts, and implementation scope. Implementation and specs must stay in sync — neither leads exclusively.

Core Loop

Read spec → Implement → Verify alignment → Update spec or code → Repeat

Before Starting Work

  1. Find the spec. Search .agents/specs/ for files matching the feature:
ls .agents/specs/
  1. Read the full spec. Understand scope, decisions, API contracts, and open questions before writing code.

  2. If no spec exists and the task is non-trivial (new module, new API, architectural change), ask the user whether to create one first.

During Implementation

  • Reference spec decisions — don't re-decide what the spec already settled.
  • When you diverge from the spec (better approach found, user requested change, constraint discovered), update the spec immediately in the same session. Don't leave spec and code out of sync.
  • Tick off TODO checkboxes (- [ ]- [x]) as items are completed.
  • Strike through or annotate items that were deliberately skipped or replaced, with a brief reason:
    - [x] ~~OpenRouter proxy~~ → Direct execution: nodes call OpenRouter directly
    

After Completing Work

Run a spec verification pass:

  1. Re-read the spec alongside the implementation.
  2. Check each section:
    • Do API endpoints in spec match the controller?
    • Do config/env vars in spec match the config class?
    • Does the module structure in spec match the actual file tree?
    • Do type definitions in spec match @n8n/api-types?
    • Are all TODO items correctly checked/unchecked?
  3. Update the spec for any drift found. Common drift:
    • New files added that aren't listed in the structure section
    • API response shapes changed during implementation
    • Config defaults adjusted
    • Architectural decisions refined
  4. Flag unresolved gaps to the user — things the spec promises but implementation doesn't deliver yet (acceptable for MVP, but should be noted).

Spec File Conventions

  • One or more markdown files per feature in .agents/specs/.
  • Keep specs concise. Use tables for mappings, code blocks for shapes.
  • Use ## Implementation TODO with checkboxes to track progress.
  • Split into multiple files when it helps (e.g. separate backend/frontend), but don't enforce a rigid naming scheme.

When the User Asks to "Self-Review" or "Verify Against Spec"

  1. Read all relevant specs.
  2. Read all implementation files.
  3. Produce a structured comparison:
    • Aligned: items where spec and code match
    • Drift: items where they diverge (fix immediately)
    • Gaps: spec items not yet implemented (note as future work)
  4. Fix drift, update specs, report gaps to the user.

n8n-ioのその他のスキル

n8n-cli
n8n-io
n8n CLIを使用して、n8nインスタンス上のワークフロー、認証情報、実行などを管理します。ユーザーがn8nとの連携やワークフローの自動化を依頼した場合に使用します。
official
create-issue
n8n-io
n8nの規約に従ってLinearチケットまたはGitHub Issueを作成します。ユーザーがチケット作成、バグ報告、Issue作成を依頼した場合、または/create-issueと入力した場合に使用します。
official
node-add-oauth
n8n-io
既存のn8nノードにOAuth2認証情報のサポートを追加します — 認証情報ファイルを作成し、ノードを更新し、テストを追加し、CLI定数を同期させます。次の場合に使用します…
official
spec-driven-development
n8n-io
実装と仕様の同期を維持します。.claude/specs/に仕様がある機能を扱う場合、ユーザーが/specと言った場合、または開始時に使用します。
official
content-design
n8n-io
Product content designer for UI copy. Use when writing, reviewing, or auditing user-facing text: button labels, error messages, tooltips, empty states, modal…
official
create-issue
n8n-io
Create Linear tickets or GitHub issues following n8n conventions. Use when the user asks to create a ticket, file a bug, open an issue, or says /create-issue.
official
agent-builder
n8n-io
Use when creating, configuring, or editing a target n8n agent's build configuration — chat integrations/triggers, MCP servers, node-tool resource locators,…
official
create-pr
n8n-io
Creates GitHub pull requests with properly formatted titles that pass the check-pr-title CI validation. Use when creating PRs, submitting changes for review,…
official