Loading...
Loading...
Connect the complete AI development workflow through documents. It covers domain modeling and code organization (DDD), behavior verification and automated testing (BDD), as well as AI development specification setting (Agent specifications). Use when (1) the project has .feature files, (2) the user asks to organize code by business features or define naming conventions, (3) creating or updating AGENTS.md / project rule files, (4) writing or implementing Gherkin scenarios, (5) starting a new project from scratch, or (6) the agent needs the full development lifecycle.
npx skill4agent add cacaorick/skills ai-dev-workflowDDD (how to split) → BDD (what to do / how to verify) → Agent Specifications (how to standardize AI)The complete development process starts with documents. Written by the user, or produced after discussion with the Agent.
1. [DDD] Split modules with business thinking, define naming conventions, and write SPEC.md
↓
2. [BDD] Collaborate with the Agent to write .feature files (detailed behavior specifications) based on DDD Bounded Context
↓
3. [Specifications] Write other requirements and specifications that the Agent needs to know into AGENTS.md (supplementary architecture, UI preferences and restrictions, etc.)
↓
4. Hand over all documents to the AI Agent| Methodology | Output Document | What Problem It Solves | Detailed Description |
|---|---|---|---|
| DDD | "Strategic Design" section of SPEC.md | Boundaries, terminology and communication | references/ddd.md |
| BDD | features/*.feature | How to verify correct implementation | references/bdd.md |
| Supplementary Notes | AGENTS.md and other project specification files | Standardize Agent behavior and implementation details | [references/agent-rules.md] |
Add new features → Add .feature
Modify features → Modify .feature
Delete features → Delete .feature + inform the Agent to clean up code
Architecture changes → Modify AGENTS.mdWhen the specification documents are ready, the Agent develops independently following the process below.
1. Read SPEC.md
→ Product overview, technical architecture, functional requirements
→ Strategic Design (Bounded Context, Ubiquitous Language, Context Map)
2. Read project specification file AGENTS.md
→ Code style, architecture rules, testing requirements, prohibited items
3. Read features/*.feature
→ All behavior specifications (automatically verifiable acceptance criteria)Do not write any code until all specification documents are read. If documents are missing, request the user to supplement them, or ask if help is needed to supplement.
4. Understand the specifications in AGENTS.md and plan the implementation method according to the requirements in the specifications
5. Understand the dependency relationship between Features to determine the implementation order
The following verification commands are examples for Node.js / JavaScript projects. Please replace them with the corresponding commands specified in the SPEC.md and project specification files.
6. Select the next Feature
7. Implement Step Definitions (Cucumber)
8. Implement code to make the Scenario pass
9. Self-review (compliance with AGENTS.md specifications, edge cases, null checks, performance, a11y)
10. Execute verification:
a. npx tsc --noEmit → Fix type errors
b. npx jest → Fix unit tests
c. npx cucumber-js → Fix BDD tests
11. Failed → Analyze errors → Fix → Return to 10
12. Passed → Return to 613. Complete test suite (all Features + all Jest tests)
14. Confirm zero failures
15. Report resultsPhase 1 → Phase 2 Initialize project (follow tech stack in AGENTS.md) → Phase 3 → Phase 4 ...Read new .feature → Implement → All old and new .features passAll tests pass → Read modified .feature → Expected failure → Modify implementation → All tests passNew Scenario fails (reproduce Bug) → Fix → New Scenario passes + all tests passAll tests pass (baseline) → Refactor (no change to external behavior) → All tests still passUser informs to remove → Delete Step Definitions, code, components → Remaining tests all pass| Symptom | Solution |
|---|---|
| Unclear .feature description | Report to user and request clarification |
| Fixing one breaks another | Propose refactoring suggestion to user |
| Task is too large or complex | Split into smaller subtasks |
my-project/
├── SPEC.md ← Product Specification (Output of Part A)
├── AGENTS.md ← Project and Agent Specifications (Output of Part A)
├── features/
│ ├── [context]/
│ │ ├── [feature].feature ← BDD .feature (Output of Part A)
│ │ └── [feature].steps.ts ← Step Definitions (Implemented by Agent)
├── src/ ← Source Code (Implemented by Agent, grouped by Context)
│ ├── [context-1]/
│ ├── [context-2]/
│ ├── shared/
│ └── __tests__/ ← Unit Tests (Written by Agent)
└── package.json