Full reference: korve.yaml
^[a-z][a-z0-9-]{1,61}$, repos are
owner/repo, env keys are UPPER_SNAKE. Runtime class is immutable after
creation — changing it in the manifest is reported as invalid rather than
applied.
plan / apply
API:
GET /v1/orgs/{orgId}/manifest (export),
POST .../manifest/plan, POST .../manifest/apply — all admin role;
apply requires active billing. See the
Manifest API. Over MCP:
await korve.manifest.plan({ orgId, body: manifest }).
Exporting current state
******** on export, and masked values are ignored on
apply — so the export → commit → apply loop never moves secrets through
git. Set real values with
korve env set.
A good workflow
korve manifest export -o korve.yaml— snapshot reality.- Edit, commit, PR — your infrastructure is now reviewed like code.
korve manifest plan -f korve.yamlin CI — the diff is the review.korve manifest apply -f korve.yaml --yeson merge.