The AI-Native SDLC Playbook Anthropic's Applied AI team has published a playbook detailing how enterprises can transform their software development lifecycle (SDLC) into an AI-native process using Claude Code, arguing that traditional approval gates and reviews now bottleneck productivity gains from agentic coding. The guide outlines six stages—planning, design, building, testing, deploying, and maintaining—where AI can automate handoffs and accelerate processes, while keeping humans in the loop. The shift is driven by the fact that code generation is no longer the bottleneck, moving the constraint to planning, review, and deployment stages. Organizations have started using AI to write code at a speed unthinkable one year ago, yet the processes around the code haven't changed at the same pace. Many engineering teams still have the same approval gates, reviews, handoffs, and policies, stalling productivity gains made by using agentic coding solutions like Claude Code. The software development lifecycle SDLC is the process that takes software from idea to production. Most organizations run some version of the same six stages, covering planning, design, building, testing, deploying, and maintaining software. Traditionally, each stage is a discrete phase owned by a different role. Product managers write requirements, technical architects turn them into designs, engineers build the designs, QA teams at regulated enterprises verify it, releases teams ship it, and operations monitors what is running. Work moves between the phases through documents, tickets, and sign-offs. The traditional software development lifecycle SDLC is process-heavy to ensure accountability and control at each step. However, the traditional SDLC was designed to maximize efficiency in an era where the most time-consuming and expensive stage was writing and implementing code, which is no longer the case. PRDs, estimation rituals, and product security reviews all existed to force alignment during what could be weeks, months, or quarters of development work. The traditional SDLC also features controls that assume every step is performed by humans. The organizations generating the most value have rebuilt their process around what agentic AI can now do, while ensuring that humans stay in the loop. In this guide, we walk through several of our Applied AI team's best practices for integrating Claude internally across each stage of the SDLC to accelerate development and make processes run faster, inspired by working with our customers. When code is no longer the bottleneck and the build phase runs faster than the traditional SDLC allows for, three things become true: The bottleneck moves to the steps to the left and right of the build phase. This is mainly plan, review/test, and deploy, which still run at human speed. The controls stop matching reality and become intractable. Reviewing each line by hand made sense when a person had written it, but it can't keep up once agents write most of the diff. Governance costs increase because exceptions still route through meetings and committees that meet weekly or monthly. Let's use a security bottleneck as an example. Security teams are sized for human output, so when agents multiply code output, either the review queue builds or code ships under-reviewed. A regulated organization can't accept either outcome, so its security and policy checks have to keep pace with the agents. To better realize the productivity gains of and secure agentic AI, the traditional SDLC lifecycle requires the same level of transformation as the implementation phase has undergone. The AI-native SDLC is a reimagined process that combines the old control objectives with new enforcement. Instead of a linear flow, the process becomes a loop, and AI is embedded at each point. The AI-native SDLC promotes automated handover and triggering of subsequent plays, helping to address the manual and clunky nature of handoff between the phases of the traditional SDLC. You'll also hear this shift called the agentic SDLC, the AI SDLC, or simply agentic software development — the labels differ, but they describe the same thing. The shifts across the six stages of an AI-native SDLC The table below highlights the ends of the spectrum between traditional SDLC and AI-native SDLC, supported by Claude. Most organizations sit somewhere between the two columns. Stage Traditional SDLC AI-native SDLC Plan Requirements gathered by committee, distilled through workshops and sign-offs, written up by hand Claude synthesizes pain points straight from the sources and captures them within intent.md which is human readable and machine actionable Design Spec written by analysts, parsed by designers Requirements and design compressed into one working session with an agent, guided by standards encoded as skills, versioned in git Build Tests and code are handwritten and documentation is written after the main development happens Tests and code are generated by AI and institutional knowledge is maintained as versioned machine-readable CLAUDE.md files and skills Test QA gates at stage boundaries Continuous evals woven through implementation Deploy Humans review every line of code and governance occurs in review cycles, often inconsistently Layers of agentic review with human review reserved for regulated and critical code. Governance is enforced as the AI acts, with hooks as approval gates Maintain Humans watch production for bugs Agents monitor live deployments. Any breached control band is diagnosed and written back into the loop as a new intent.md The thread running through the right-hand column is the committed artifact. Each stage ends by writing one to version control including intent.md, spec.md, plan.md, the diff and its tests, the PR with its review findings, and the incident record and the next stage begins by reading it. For the early stages, .md files are the predominant artifact because a product owner and an agent can both read and act on the same file. From Build onward, the artifact is code and its records. The chain of commits is also the audit trail: who asked for what, what the agent produced, and who approved it. Humans remain accountable for every decision that requires judgment. In the agentic SDLC world, the human attention shifts along with the artifacts that must be reviewed. Every stage commits an artifact the next stage can read. Together, the intent, the spec, the plan, the diff and the review findings are the audit trail. Plays The plays are the core of the playbook and are grouped into six non-linear stages Plan, Design, Build, Test, Deploy, Maintain , which together cover the complete lifecycle. Each play covers: What changes; Getting started; Concrete steps for implementation; Governance considerations; and How you measure whether it worked. The steps are modular and organizations may choose to prioritize transforming different stages at different times based on their unique needs. Each play names its dependencies under "Prerequisites," which the dependency graph further illustrates. A stage ends by committing an artifact with the commit initiating the next stage. An accepted intent.md triggers the requirements and design pass, an approved spec.md triggers plan mode, a merged PR triggers the pipeline, and a breached control band in production writes the next intent.md and so the loop continues. First, you prompt each step by hand with the end state being a loop in which each accepted artifact fires the next gate. Human attention concentrates at the gates, reviewing what the agent flagged rather than starting each stage from scratch. 01 Plan Ideas stop waiting for someone to write them up. Intent is captured once, in the originator's own words, as a version-controlled artifact the next stage can act on. Capture as intent.md The intent.md, which kicks off the software development process can enter through different routes. A person has an idea, a ticket is filed, or an incident is surfaced via an alert see Stage 6: Maintenance . When a person has an idea, they brainstorm with Claude and produce a markdown proto-spec. In the traditional SDLC, the same person must then convince a member of the product team to write the idea up with them or on their behalf. The proto-spec generated by Claude is human readable, version-controlled, and immediately consumable by the next stage. The proto-spec is saved as an intent.md. Regardless of whether the intent originates from an event trigger or an agent, the same steps apply: the product owner reviews and corrects the agent-written intent.md before it is committed. TraditionalAn idea passes through backlog entries, user stories, story points, and refinement meetings before anyone can act on it. Ownership transfers at each handoff, so what reaches engineering is several steps removed from what the originator meant. AI-nativeThe originator brainstorms with Claude and writes the result down as intent.md, a proto-spec in the originator's own terms. The artifact contains what is wanted, why, and under which constraints. Repeat processes are encoded via skills. Getting started Prerequisites None. Infrastructure Claude access for people who are not engineers claude.ai or Cowork ; an agreed intent.md template; a shared, version-controlled home for intent that the product owner watches. For a single product the simplest home is an intent/ folder in the product repo. This setup keeps the artifact chain next to the code derived from it. A dedicated intent repo is only worth the overhead when intent spans many repositories, and in a monorepo it is a directory. The Stage 3: Build sidebar covers how this home relates to a Jira or requirements tool that already holds the record. Setting this up is a one-time task for the platform or engineering team. A technical team member needs to stand up the intent home and decide who can write to it, since many contributors will come from across the organization. Once the repository exists, contributors without git experience don't need to use git directly. Instead a connector to the version-control system e.g. GitHub lets Claude commit markdown files on their behalf from claude.ai or Cowork. How to execute it The originator describes the problem to Claude in their own words. The originator may describe what they cannot do today, who is affected by the idea, what better looks like, or what is out of scope. No formal language is required. Brainstorm until the idea is concrete. Claude asks the questions an analyst would ask: scope, users, constraints, and what success looks like. Ask Claude to write the result as intent.md using the organization's template, which can be encoded as a skill set up by a technical team member and signed off by a lead. This can cover the problem, proposed outcome, affected users and systems, constraints, and open questions. The originator corrects anything Claude misunderstood. Commit intent.md to the shared home. Author and timestamp join the record, and the product owner picks the idea up from there. Intent: claims status self-service Author: J. Ortiz claims operations . Status: draft. Problem Customers phone the contact center to ask where their claim is. Handlers spend roughly a third of call time on status-only queries. Proposed outcome Customers see claim status, next step and expected date in the portal. Affected users and systems Claims handlers, portal team, claims-core API. Constraints No new PII in the portal session. Existing authentication only. Open questions Do third-party loss adjusters need access too? Governance considerations The evidence is the committed intent.md, which lists the author, the timestamp and the full revision history. It's logged in the git history of the intent home. The product owner approves, and the accept or reject decision that sends the intent into Stage 2: Design is recorded as the merge or the closing review. How to measure it Leading indicator Time from first conversation to a committed intent.md, read from git history on the intent home, which records author and time stamp. The expectation is to fall from a multi-week elicitation and refinement cycle to hours. Lagging indicator The survival rate, or the share of intent.md files that the product owner accepts into Stage 2: Design rather than closes. The accept or reject decision is recorded as the merge of the artifact or the closed review. Additionally, the number of changes made to the intent.md that are made after the first spec.md commit for the same change. 02 Design Requirements and design collapse into one session. Policy is applied while the spec is written, not discovered in a review weeks later. Requirements and design Once approved by the product owner, Claude takes the accepted intent.md and produces a requirements and design spec. This is guided by the organization's skills for brand, security, compliance, and UX. The product owner reviews that spec, but doesn't write it. The goal of this process is to create a spec the engineering team can plan against, with flagged areas of concern. Front-end work is the clearest example. Once the intent.md is accepted, the product owner mocks the design up in Claude Design beta from the intent.md, iterates on the mock, and then exports it to Claude Code to build. TraditionalRequirements and design are separate phases run by separate teams. Analysts formalize the idea into requirements and designers then parse those back into a design. The separation exists for accountability, but it is slow and lossy. AI-nativeBoth phases happen in a single prompted session. Claude takes intent.md and produces a requirements and design spec, constrained by the organization's skills, with areas of concern flagged. Getting started Prerequisites Write an intent.md file, with brand, security, compliance, and UX policies written as skills. Infrastructure A product owner with Claude access. No engineering skill is required. How to execute it The product owner opens a session with the organization's skills available and attaches the intent.md. The product owners prompt points at the intent.md, names the constraints, and demands flagged concerns. Run it by hand at first, then codify it as an organization-level slash command. From there make the acceptance of intent.md in the intent home the trigger, with a non-interactive job that fires on the merge, run the pass with the organization's skills loaded, and commit spec.md as a pull request the CI/CD play in Stage 5: Deploy covers the plumbing . From that point the product owner's first involvement is the review. The same product owner reviews the spec against the idea. Does the spec solve the stated problem, and are the open questions from intent.md answered or carried forward? Work through the flagged concerns first as they are the points an analyst would have escalated. The product owner resolves each one with its policy owner before engineering sees the spec. Commit spec.md alongside intent.md. The file pair records what was asked for and what was decided. The product owner decides whether the spec and intent progress to build, consulting a technical lead for anything the organization classes as higher risk. A human team mate always makes this call, and accepting the spec is what starts the plan mode play in Stage 3: Build. What it looks like the prompt Read the attached intent.md and produce a requirements and design spec for integrating it into our existing codebase. Apply the skills available to you so the plan conforms to our brand guidelines, security policies and UX standards. Document the spec fully as spec.md, ready to hand to the engineering team. Describe clearly any areas of concern, especially where you cannot satisfy contradicting policies. Governance considerations Instead of being discovered in a review weeks later, the live policy is read and applied while the spec is written. The organization's skills are applied as constraints on the spec. The spec, the prompt that produced it, and the skill versions in force are all logged in version control. The product owner signs off the spec, and routes flagged concerns to the named policy owners. How to measure it Leading indicator Elapsed time between the intent.md commit and the spec.md commit for the same change two git timestamps , compared with the old requirements-plus-design cycle. Lagging indicator Requirements rework after build starts. Count spec.md commits dated after the first plan.md commit for the same change. Git log will give this directly. 03 Build Nothing is implemented without an accepted plan. Institutional knowledge becomes files the agent reads, and the guardrails run as code rather than as habits. Claude Code plan mode as the default starting point Engineers start Claude Code sessions in plan mode, give Claude the approved spec.md from Stage 2: Design, and let it interview them, iterating on the plan until the engineer is happy with it. TraditionalAn engineer reads the design and starts writing code. How the change will be made, down to which files and which tests, stays in the engineer's head or at best a ticket comment. Nobody else can review it. The first thing a reviewer sees is the finished diff, and by then rework is slow. AI-nativeWork starts with a written plan that Claude produces in plan mode, where it can read the codebase without changing anything. The engineer corrects the plan before code is written, and the approved version is committed as plan.md for later stages to check against. Getting started Prerequisites The intent artifact intent.md or spec.md if one exists, and the CLAUDE.md file helps. Infrastructure Claude Code with access to the repository. How to execute it The engineer starts the session in plan mode with Claude. The engineer gives Claude the intent.md and the spec.md and asks for an implementation plan that names the files that change, the order of the work, and the tests that prove it. Interrogate the plan by asking what the change could break, which step is most risky, and what other options Claude chose not to do. Iterate until an engineer who has never seen the conversation could implement the change from the plan alone. Commit the approved plan as plan.md. The plan joins the audit trail, and the PR review play Stage 5: Deploy checks the eventual diff against it. Accept the plan and let Claude implement. With a solid plan, the implementation is often a single pass. When implementation departs from the plan, update plan.md in the same commit. Consider using a hook to enforce synchronization between the two. What it looks like plan.md Plan: claims status self-service from intent.md 2026-06-02 Files that change portal/src/claims/StatusPanel.tsx new , claims-api/routes/status.py, claims-api/tests/test status.py Order of work 1. Add the status endpoint behind existing auth. 2. Panel against the endpoint. 3. Wire into the portal nav. Risks The claims-core API rate-limits at 50 rps; the panel must cache. Proof test status.py covers the four claim states; screenshot matches the approved mock. Governance considerations Design review happens before any code is generated, when changing course is still a matter of editing a document. Plan mode enforces this itself, since Claude cannot edit files until the engineer accepts the plan. The plan and its revisions are logged along with who accepted it. Routine changes are approved by the engineer, and anything the organization classes as higher risk goes to a tech lead or architect. How to measure it Leading indicator Share of changes that merge from the first implementation pass, and time from plan approval to merged PR with the required data within the PR metadata. Lagging indicator Rework cycles per change, again from the PR metadata, and how often the merged diff still matches the committed plan.md. Claude Code on auto mode Claude Code can also run in auto mode, where the engineer approves the plan and, once happy and iterated upon, Claude applies each change without a per-edit prompt. As the guardrails from the later plays mature a tuned CLAUDE.md, skills that encode policy, hooks that block unsafe actions, and a test suite Claude can run , auto-accept becomes the default for routine work: a tight spec.md, a small blast radius, and code the tests already cover. The shift is now away from the user watching the agent make the edits and reviewing actions, towards the review of artifacts after longer autonomous sessions. Auto-accept mode further enables parallelism across individuals and the team when used with worktrees and is fundamental to running the SDLC autonomously and closing the loop as described in Stage 6: Maintenance. Sidebar Legacy systems and the source of truth Applies to every artifact the process produces. Existing SDLC processes likely already track artifacts, just not in markdown files. Work items may be in Jira, requirements in a tool with regulatory traceability built in, designs in Figma, and change approvals with a change board. Those systems are hard to displace because auditors and regulators already accept them and other teams depend on them, so the AI-native SDLC has to fit around what exists. When transitioning to the AI-native SDLC, for every artifact the process produces, name one system as the source of truth, with everything else holding a copy or a link to the original. The configurations below can be set up to have one source of truth, with the choice differing per artifact: The repo as the source of truth. The markdown artifacts are the authoritative record and the legacy system references files within commits. This can be one of the cleanest configurations for engineering-led organizations, as all records live in one tool with one timestamp authority. The legacy system as the source of truth. Jira, ServiceNow, or the requirements tool holds the authoritative record and the markdown artifacts are working copies. Claude reads the record at the start of the session and writes the outcome back through an MCP connector in the same session that produced the spec or the plan. Linkage as the minimum bar. All artifacts note the record ID and all legacy records contain the commit SHA of the markdown file. Linkage is a good place to start when transitioning to the AI-native SDLC, accepting that there are two sources of truth. Both the legacy system and the markdown-first system can coexist, so long as there is a link between the two or one is declared the source of truth. The CLAUDE.md CLAUDE.md gives Claude the context a new joiner would need, covering conventions, commands, architecture, and the mistakes the team sees most often. Knowledge that used to sit in people's heads and on wikis becomes a file the agent reads at the start of every session, maintained by the whole team and iterated on whenever a mistake is made. Getting started Prerequisites None. Infrastructure A repo, Claude Code installed, and one engineer who knows the codebase well. How to execute it Run /init in the repo. Claude generates a starting CLAUDE.md from what it finds. Cut the generated file down to what a new joiner would need on day one. Keep the build, test and lint commands, the conventions that matter, and the things Claude keeps getting wrong. Check CLAUDE.md into git at the repo root so the whole team shares one version and changes are reviewed like code. A working rule helps here. When Claude makes a mistake twice, the correction goes into CLAUDE.md. Keep it under a page, because Claude reads all of it at the start of a session and anything stale is taking up context for no benefit. What it looks like CLAUDE.md Payments service Commands - Build: make build - Test: make test unit , make itest integration, needs docker - Lint: make lint runs in CI; fix before pushing Conventions - Java 21, Spring Boot 3. No new Lombok. - Money is always BigDecimal, never double. - Every endpoint needs an integration test in src/itest. Architecture - api/ holds REST controllers, core/ holds domain logic, adapters/ talks to external systems. - Kafka events are defined in schemas/; never edit generated classes. Things Claude gets wrong - Do not bump dependency versions; the platform team owns them. - The legacy v1/ package is frozen; changes go in v2/. Governance considerations CLAUDE.md is version controlled, so the instructions the agent works to are reviewable and auditable. Team conventions are applied through the file, changes to it are logged in git history, and code owners approve those changes in PR review. How to measure it Leading indicator How often Claude repeats a mistake CLAUDE.md should have caught. The corrections or changes to the CLAUDE.md should be tracked within the git history. Lagging indicator Time to first merged PR for a new member of the team from PR history. Skills as institutional knowledge Skills are how an organization makes its institutional knowledge operational. The instructions are explicit, version-controlled, applied broadly, and updated centrally when policy changes. The rule of thumb: write a skill for institutional knowledge that must be applied consistently; don't write a skill for components that belong in CLAUDE.md or a prompt. Getting started Prerequisites None required. Having a CLAUDE.md helps, because it keeps the agent's working knowledge in the repo, but a skill does not depend on it. Infrastructure One policy with a named owner and a written source of truth. How to execute it Pick one piece of knowledge that is enforced inconsistently today. This could be a security standard, an API design convention, or a brand rule. Write it as a skill, a folder containing a SKILL.md whose frontmatter says when it triggers and whose body says what to do. An engineer writes it from the policy owner's source of truth, using Claude to help. Put the skill in the repo at .claude/skills/