Skip to content

AI-native SDLC with Cursor

The Cursor SDLC track implements the shared six-stage lifecycle with Ask, Plan, and Agent modes, project rules, worktrees, Bugbot, Cloud Agents, and automations. Use this page as the Cursor adapter: it identifies the native surface for each gate and links to the single canonical procedure for the stage.

The lifecycle stays independent of the editor. Read the AI-native SDLC overview first, then use this map to choose the correct Cursor surface without duplicating the process.

StageAccepted artifactCursor surfaceCanonical procedure
Planintent.mdAsk mode for discovery; Agent mode to save the reviewed artifactCapture intent
Designspec.md.cursor/rules/*.mdc, AGENTS.md, skills, image context, and approved MCP toolsWrite the spec
Buildplan.md, diff, testsPlan mode, Agent mode, Agents Window worktrees, /worktree, /best-of-nBuild from an accepted plan
TestTest evidenceTerminal commands, browser tools, checkpoints, and the active Agent feedback loopClose the feedback loop
DeployReviewed pull requestBugbot, Cloud Agent Autofix, required CI, human merge and release gatesLayer review and approvals
MaintainIncident record and next intent.mdCloud Agents and Automations triggered on a schedule or supported eventClose production back into planning

Prerequisites: a Git repository, Cursor authenticated, a clean working tree, and the repository’s real verification commands documented in project rules.

  1. Explore without edits in the IDE’s Plan mode or from the CLI:

    Terminal window
    cursor-agent --plan \
    "Read docs/intents/FEATURE.md and docs/specs/FEATURE.md. Inspect the repo and propose an ordered plan with risks, tests, and rollback."
  2. Review the plan and save the accepted version as docs/plans/FEATURE.md. Treat .cursor/plans/ drafts as working state unless the team explicitly versions that directory.

  3. Isolate implementation with the Agents Window or an IDE worktree skill:

    /worktree implement milestone 1 from docs/plans/FEATURE.md
  4. Give the implementation run bounded proof:

    Follow docs/plans/FEATURE.md and the applicable .cursor/rules files.
    Implement only milestone 1. Run typecheck, lint, unit, integration, and visual checks.
    Diagnose failures in the implementation; do not weaken tests or skip required checks.
    Finish with changed files, command results, screenshots where relevant, and remaining risk.
  5. Let Bugbot and CI review the pull request, then keep merge and production release behind named human approvals.

Cursor’s .cursor/worktrees.json can install dependencies and copy local configuration into worktrees. Those setup commands execute code, so review them like any other repository automation and never copy production credentials by default.

  • Put scoped, version-controlled instructions in .cursor/rules/*.mdc.
  • Use AGENTS.md for portable instructions shared with other compatible agents.
  • Put reusable procedures in skills rather than pasting the same prompt into every chat.
  • Use Ask or Plan mode for read-only discovery; use Agent mode only after the artifact gate.
  • Use branch protection and deployment-environment approvals for merge and production authority.

Cursor Agent supports non-interactive output through --print; --output-format accepts text, json, or stream-json:

Terminal window
cursor-agent --print \
--sandbox enabled \
--output-format json \
"Review the current diff against docs/specs/FEATURE.md. Report blocking findings only."

--force auto-allows commands unless explicitly denied. Reserve it for externally isolated runners with scoped credentials; it is not required for ordinary review.

  • cursor-agent --help shows --plan, --mode, --print, --output-format, and --sandbox.
  • Plan or Ask mode explores the repository without changing source files.
  • /worktree creates a separate checkout and git worktree list shows it.
  • The implementation session runs the repository’s actual checks and preserves test intent.
  • Bugbot or another agent adds evidence, but a human and platform policy still control merge and production.

A model or product name ages faster than the workflow. Keep the process model-agnostic. Choose models from the current picker and evaluate them against repository tasks instead of hard-coding a marketing name.

A worktree misses dependencies or configuration. Add reviewed setup commands to .cursor/worktrees.json, then confirm secrets, ports, and databases point at isolated local resources.

Headless mode has more authority than expected. --print has tool access. Keep sandboxing enabled, scope the workspace, and omit --force unless the runner is independently contained.