What "Continuous Deployment" Means for a Prompt-Driven System
Continuous deployment for agents is not "merge and hope the model behaves."
Search across all documentation pages
Continuous deployment for agents is not "merge and hope the model behaves."
It is treating prompts, tool schemas, model routes, and policy packs as deployable artifacts with the same gates, versioning, canaries, and rollbacks you already demand of application code.
A classic web API change usually means:
The unit of deploy is the binary or image. Behavior is mostly in that revision.
An agent release can be any of:
| Artifact | Example change | User-visible effect |
|---|---|---|
| System prompt | New policy wording | Different refusals or tone |
| Tool schema | Required field added | Broken tool calls until prompt catches up |
| Model route | Swap model ID / provider | Quality, latency, and cost shift |
| Graph / skills | New node or tool pack | New side-effect paths |
| RAG pack / memory policy | Index or retrieval knobs | Different evidence and answers |
| Runtime policy | Max turns, spend caps | Completeness vs thrash |
Often no application container rebuild is required. The worker process is fine. Behavior still changed for everyone on the next request.
That is why "CD for agents" is really continuous delivery of behavior, with host code as only one channel.
Teams use three related terms loosely:
| Term | Intent for agents |
|---|---|
| Continuous integration | Every PR runs lint, unit tests, and eval suites against pinned fixtures |
| Continuous delivery | Artifacts (code + prompt pack + schema pack) are always releasable after gates |
| Continuous deployment | Passing main can auto-roll to production with canary, flags, and auto-rollback hooks |
Auto-deploy without eval and rollback is continuous exposure, not continuous deployment.
If you cannot name what is running, you cannot roll it back.
Every production run should resolve to pins such as:
prompt_pack_versiontool_schema_versionmodel_route_idpolicy_versioncode_git_shaLog those on every run trace. Store them with the deploy record. See Versioning Prompts and Tool Schemas Alongside Code.
Deterministic unit tests still matter for tools and parsers.
They do not prove:
So the pipeline adds eval suites as hard or soft gates before promote. See Running Eval Suites as a CI Gate Before Deploy and the testing section for suite design.
Even a green eval can miss live traffic shapes.
Healthy promote path:
See Canary and Shadow Deployments for Agent Updates and Feature-Flagging Agent Behavior Changes.
When quality, safety, or cost burns:
See Rollback Strategies When a Deployed Agent Regresses.
You still run normal CD for:
Agent CD extends that pipeline. It does not replace container deploys when the host binary actually changed.
| Change type | Primary pipeline focus |
|---|---|
| Host code / framework upgrade | Build, unit tests, container deploy |
| Prompt or few-shot only | Eval gate, pack version, canary |
| Tool schema | Schema compatibility + eval + dual-read if needed |
| Model swap | Eval + cost/latency canary |
| Mixed (code + prompt) | Single release train that pins both together |
Eval gates call models. That means:
Ignoring this produces flaky red builds that teams learn to skip - the worst outcome.
| Approach | Strength | Weakness | Best when |
|---|---|---|---|
| Manual prompt paste in prod UI | Fast experiments | No history, no gate, hard rollback | Never for multi-tenant prod |
| Git-only prompts, manual deploy | Auditable diffs | Humans forget gates | Small team, low traffic |
| Git + eval gate + manual promote | Safe and reviewable | Slightly slower ship | Default for most teams |
| Auto-deploy on green + canary | High velocity | Needs solid SLOs and auto-rollback | Mature observability |
| Dual-control for irreversible tools | Safer autonomy | Friction | Money, delete, external send |
Pin prompt packs with the code SHA that knows how to load them.
A new schema field that only new code understands must not ship against old workers. Use feature flags or coordinated release trains.
Promote per agent product, not "the whole monorepo at once," when blast radii differ.
Tenant overrides (enterprise custom prompts) need their own version trail and gates, or one tenant experiment becomes a global incident.
Regulated environments care that you can show what policy text produced a given decision.
Continuous deployment without versioned prompt history fails that story even when the app "worked."
"Prompts are just content, not software." They change control flow of tools and side effects. Treat them as code-adjacent config with review.
"We already have unit tests, so we're fine." Unit tests cover tools and parsers. They rarely cover full loop quality under a new prompt or model.
"Model upgrades are free improvements." New models change tool calling rates, verbosity, and refusal behavior. Always eval and canary.
"Rollback means redeploying yesterday's Docker image." If behavior lives in a remote config store, you must roll that pin too - often without a new image.
"Staging equals production for agents." Staging traffic mixes differ. Shadow and canary on real distributions still matter.
"Continuous deployment means no humans." Humans own thresholds, SEV response, and irreversible-action policy. Automation executes the promote rules they defined.
No. Versioning and a small gold-set eval still pay off when you change models often. Full canary machinery is optional at solo scale.
Prefer the repo (or a config service fed by the repo) so PRs, reviews, and CI attach to the same artifact. Runtime DBs can cache the active pin, not be the only source of truth.
Same progressive delivery idea. The payload is behavior packs and model routes, and the gates are eval scores plus agent SLOs (success, latency, cost, safety).
Yes. Tool schema and implementation changes alter agent plans. Version tools and run suite cases that exercise them.
(1) Prompts and schemas in git, (2) eval job on PR, (3) named production pin, (4) one-click rollback to previous pin, (5) run traces that log versions.
Only when canary + auto-rollback on SLO burn exist and the suite is trusted. Many teams auto-deploy to staging and human-promote to prod.
Treat LangGraph / SDK upgrades as code deploys with the full eval suite and a careful canary. Pin framework versions deliberately (verify at build).
Treat them as data that can poison behavior. Review, redact, version, and eval before they join the pack.
Platform owns the pipeline and flags. The agent team owns thresholds, gold sets, and go/no-go on quality. Shared ownership fails without a named RACI.
When product behavior intentionally changes or production incidents reveal gaps. Do not silently retarget the suite to make a bad prompt pass.
Often yes for full dual runs. Sample, async score, or score only high-risk routes to control spend.
Kill switches are incident controls during or after a bad promote. CD should not replace them. See Kill Switches: Stopping a Runaway Agent Mid-Execution.
Show PR diff of the pack, eval report, canary metrics, active pin, and who approved promote - stored with the release ID.
Stack versions: Pins from the category manifest (verify at build): OpenRouter (~315+ models, July 2026 pricing/fees); LangGraph 1.0+; CrewAI 1.14+; Microsoft Agent Framework 1.0; Vercel AI SDK 6; Pydantic AI (latest); LlamaIndex (latest); OpenAI Agents SDK (latest + MCP); MCP (Linux Foundation governance); A2A (HTTP+SSE+JSON-RPC 2.0); Solana
@solana/web3.js+@solana/spl-token.
Reviewed by Chris St. John·Last updated Jul 16, 2026