Files
loader/.cursor/skills/autopilot/flows/greenfield.md
T
Oleksandr Bezdieniezhnykh b0a03d36d6 Add .cursor AI autodevelopment harness (agents, skills, rules)
Made-with: Cursor
2026-03-26 01:06:55 +02:00

12 KiB
Raw Blame History

Greenfield Workflow

Workflow for new projects built from scratch. Flows linearly: Problem → Research → Plan → UI Design (if applicable) → Decompose → Implement → Run Tests → Security Audit (optional) → Performance Test (optional) → Deploy.

Step Reference Table

Step Name Sub-Skill Internal SubSteps
1 Problem problem/SKILL.md Phase 14
2 Research research/SKILL.md Mode A: Phase 14 · Mode B: Step 08
3 Plan plan/SKILL.md Step 16 + Final
4 UI Design ui-design/SKILL.md Phase 08 (conditional — UI projects only)
5 Decompose decompose/SKILL.md Step 14
6 Implement implement/SKILL.md (batch-driven, no fixed sub-steps)
7 Run Tests test-run/SKILL.md Steps 14
8 Security Audit security/SKILL.md Phase 15 (optional)
9 Performance Test (autopilot-managed) Load/stress tests (optional)
10 Deploy deploy/SKILL.md Step 17

Detection Rules

Check rules in order — first match wins.


Step 1 — Problem Gathering Condition: _docs/00_problem/ does not exist, OR any of these are missing/empty:

  • problem.md
  • restrictions.md
  • acceptance_criteria.md
  • input_data/ (must contain at least one file)

Action: Read and execute .cursor/skills/problem/SKILL.md


Step 2 — Research (Initial) Condition: _docs/00_problem/ is complete AND _docs/01_solution/ has no solution_draft*.md files

Action: Read and execute .cursor/skills/research/SKILL.md (will auto-detect Mode A)


Research Decision (inline gate between Step 2 and Step 3) Condition: _docs/01_solution/ contains solution_draft*.md files AND _docs/01_solution/solution.md does not exist AND _docs/02_document/architecture.md does not exist

Action: Present the current research state to the user:

  • How many solution drafts exist
  • Whether tech_stack.md and security_analysis.md exist
  • One-line summary from the latest draft

Then present using the Choose format:

══════════════════════════════════════
 DECISION REQUIRED: Research complete — next action?
══════════════════════════════════════
 A) Run another research round (Mode B assessment)
 B) Proceed to planning with current draft
══════════════════════════════════════
 Recommendation: [A or B] — [reason based on draft quality]
══════════════════════════════════════
  • If user picks A → Read and execute .cursor/skills/research/SKILL.md (will auto-detect Mode B)
  • If user picks B → auto-chain to Step 3 (Plan)

Step 3 — Plan Condition: _docs/01_solution/ has solution_draft*.md files AND _docs/02_document/architecture.md does not exist

Action:

  1. The plan skill's Prereq 2 will rename the latest draft to solution.md — this is handled by the plan skill itself
  2. Read and execute .cursor/skills/plan/SKILL.md

If _docs/02_document/ exists but is incomplete (has some artifacts but no FINAL_report.md), the plan skill's built-in resumability handles it.


Step 4 — UI Design (conditional) Condition: _docs/02_document/architecture.md exists AND the autopilot state does NOT show Step 4 (UI Design) as completed or skipped AND the project is a UI project

UI Project Detection — the project is a UI project if ANY of the following are true:

  • package.json exists in the workspace root or any subdirectory
  • *.html, *.jsx, *.tsx files exist in the workspace
  • _docs/02_document/components/ contains a component whose description.md mentions UI, frontend, page, screen, dashboard, form, or view
  • _docs/02_document/architecture.md mentions frontend, UI layer, SPA, or client-side rendering
  • _docs/01_solution/solution.md mentions frontend, web interface, or user-facing UI

If the project is NOT a UI project → mark Step 4 as skipped in the state file and auto-chain to Step 5.

If the project IS a UI project → present using Choose format:

══════════════════════════════════════
 DECISION REQUIRED: UI project detected — generate mockups?
══════════════════════════════════════
 A) Generate UI mockups before decomposition (recommended)
 B) Skip — proceed directly to decompose
══════════════════════════════════════
 Recommendation: A — mockups before decomposition
 produce better task specs for frontend components
══════════════════════════════════════
  • If user picks A → Read and execute .cursor/skills/ui-design/SKILL.md. After completion, auto-chain to Step 5 (Decompose).
  • If user picks B → Mark Step 4 as skipped in the state file, auto-chain to Step 5 (Decompose).

Step 5 — Decompose Condition: _docs/02_document/ contains architecture.md AND _docs/02_document/components/ has at least one component AND _docs/02_tasks/ does not exist or has no task files (excluding _dependencies_table.md)

Action: Read and execute .cursor/skills/decompose/SKILL.md

If _docs/02_tasks/ has some task files already, the decompose skill's resumability handles it.


Step 6 — Implement Condition: _docs/02_tasks/ contains task files AND _dependencies_table.md exists AND _docs/03_implementation/FINAL_implementation_report.md does not exist

Action: Read and execute .cursor/skills/implement/SKILL.md

If _docs/03_implementation/ has batch reports, the implement skill detects completed tasks and continues.


Step 7 — Run Tests Condition: _docs/03_implementation/FINAL_implementation_report.md exists AND the autopilot state does NOT show Step 7 (Run Tests) as completed AND (_docs/04_deploy/ does not exist or is incomplete)

Action: Read and execute .cursor/skills/test-run/SKILL.md


Step 8 — Security Audit (optional) Condition: the autopilot state shows Step 7 (Run Tests) is completed AND the autopilot state does NOT show Step 8 (Security Audit) as completed or skipped AND (_docs/04_deploy/ does not exist or is incomplete)

Action: Present using Choose format:

══════════════════════════════════════
 DECISION REQUIRED: Run security audit before deploy?
══════════════════════════════════════
 A) Run security audit (recommended for production deployments)
 B) Skip — proceed directly to deploy
══════════════════════════════════════
 Recommendation: A — catches vulnerabilities before production
══════════════════════════════════════
  • If user picks A → Read and execute .cursor/skills/security/SKILL.md. After completion, auto-chain to Step 9 (Performance Test).
  • If user picks B → Mark Step 8 as skipped in the state file, auto-chain to Step 9 (Performance Test).

Step 9 — Performance Test (optional) Condition: the autopilot state shows Step 8 (Security Audit) is completed or skipped AND the autopilot state does NOT show Step 9 (Performance Test) as completed or skipped AND (_docs/04_deploy/ does not exist or is incomplete)

Action: Present using Choose format:

══════════════════════════════════════
 DECISION REQUIRED: Run performance/load tests before deploy?
══════════════════════════════════════
 A) Run performance tests (recommended for latency-sensitive or high-load systems)
 B) Skip — proceed directly to deploy
══════════════════════════════════════
 Recommendation: [A or B — base on whether acceptance criteria
 include latency, throughput, or load requirements]
══════════════════════════════════════
  • If user picks A → Run performance tests:
    1. If scripts/run-performance-tests.sh exists (generated by the test-spec skill Phase 4), execute it
    2. Otherwise, check if _docs/02_document/tests/performance-tests.md exists for test scenarios, detect appropriate load testing tool (k6, locust, artillery, wrk, or built-in benchmarks), and execute performance test scenarios against the running system
    3. Present results vs acceptance criteria thresholds
    4. If thresholds fail → present Choose format: A) Fix and re-run, B) Proceed anyway, C) Abort
    5. After completion, auto-chain to Step 10 (Deploy)
  • If user picks B → Mark Step 9 as skipped in the state file, auto-chain to Step 10 (Deploy).

Step 10 — Deploy Condition: the autopilot state shows Step 7 (Run Tests) is completed AND (Step 8 is completed or skipped) AND (Step 9 is completed or skipped) AND (_docs/04_deploy/ does not exist or is incomplete)

Action: Read and execute .cursor/skills/deploy/SKILL.md


Done Condition: _docs/04_deploy/ contains all expected artifacts (containerization.md, ci_cd_pipeline.md, environment_strategy.md, observability.md, deployment_procedures.md)

Action: Report project completion with summary. If the user runs autopilot again after greenfield completion, Flow Resolution rule 3 routes to the existing-code flow (re-entry after completion) so they can add new features.

Auto-Chain Rules

Completed Step Next Action
Problem (1) Auto-chain → Research (2)
Research (2) Auto-chain → Research Decision (ask user: another round or proceed?)
Research Decision → proceed Auto-chain → Plan (3)
Plan (3) Auto-chain → UI Design detection (4)
UI Design (4, done or skipped) Auto-chain → Decompose (5)
Decompose (5) Session boundary — suggest new conversation before Implement
Implement (6) Auto-chain → Run Tests (7)
Run Tests (7, all pass) Auto-chain → Security Audit choice (8)
Security Audit (8, done or skipped) Auto-chain → Performance Test choice (9)
Performance Test (9, done or skipped) Auto-chain → Deploy (10)
Deploy (10) Report completion

Status Summary Template

═══════════════════════════════════════════════════
 AUTOPILOT STATUS (greenfield)
═══════════════════════════════════════════════════
 Step 1   Problem             [DONE / IN PROGRESS / NOT STARTED / FAILED (retry N/3)]
 Step 2   Research            [DONE (N drafts) / IN PROGRESS / NOT STARTED / FAILED (retry N/3)]
 Step 3   Plan                [DONE / IN PROGRESS / NOT STARTED / FAILED (retry N/3)]
 Step 4   UI Design           [DONE / SKIPPED / IN PROGRESS / NOT STARTED / FAILED (retry N/3)]
 Step 5   Decompose           [DONE (N tasks) / IN PROGRESS / NOT STARTED / FAILED (retry N/3)]
 Step 6   Implement           [DONE / IN PROGRESS (batch M of ~N) / NOT STARTED / FAILED (retry N/3)]
 Step 7   Run Tests           [DONE (N passed, M failed) / IN PROGRESS / NOT STARTED / FAILED (retry N/3)]
 Step 8   Security Audit      [DONE / SKIPPED / IN PROGRESS / NOT STARTED / FAILED (retry N/3)]
 Step 9   Performance Test    [DONE / SKIPPED / IN PROGRESS / NOT STARTED / FAILED (retry N/3)]
 Step 10  Deploy              [DONE / IN PROGRESS / NOT STARTED / FAILED (retry N/3)]
═══════════════════════════════════════════════════
 Current: Step N — Name
 SubStep: M — [sub-skill internal step name]
 Retry:   [N/3 if retrying, omit if 0]
 Action:  [what will happen next]
═══════════════════════════════════════════════════