Skip to main content
This page is written to be executed. If you are an agent, follow it top to bottom; every step is copy-pasteable and every command has an API and MCP equivalent (see the parity promise).
This drops skill files with the platform mental model, CLI map, and troubleshooting recipes into your harness.

1. Get a key

API keys are minted by a human in the dashboard (organization settings → API keys) — key management is session-only by design, so an agent can never mint its own credentials. Ask your operator for:
  • the org id
  • an API key (korve_...) — role admin if you’ll create infrastructure, member if you’ll only observe.
Then either log in once:
or stay stateless (best for CI):
Verify before doing anything else:

2. Create the project

Choosing a runtime class: scale-to-zero for request/response apps, always-on for websockets and background work — details in Deploys. Slugs are permanent and become the public URL (https://storefront.korve.app).

3. Connect the repository

Check access first; the failure answer includes the exact URL where a human grants it:
Once connected, pushes to main deploy automatically and pull requests get preview environments.

4. Deploy and watch

korve deploy exits 0 with the live URL on success and non-zero with the build-log tail on failure. Add --json to any command for machine-readable output.

5. Read logs

Entries are retained for 7 days and tagged app or platform — see Logs.

6. Diagnose failures

Never guess at a failed deploy. Ask the platform agent:
The diagnosis is structured — summary, probableCause, suggestedFix {kind, title, detail, commands[]}, confidence — and suggestedFix.commands are shell commands you can apply directly. See Remediation.

Operating rules for well-behaved agents

  • Check before you create. korve projects list / korve database show first; creation is not idempotent (slugs collide with 409).
  • Mind the exit codes. 3 = auth, 4 = not found, 5 = billing inactive — don’t retry those blindly. Full table.
  • Treat shown-once secrets as toxic waste. Database connection strings and API key secrets appear exactly once; store them in env vars or your secret manager immediately.
  • Confirmations: destructive commands prompt; pass --yes only when your operator has approved the action.
  • Set a budget on anything autonomous: korve budget set --cap-usd 50 --hard-stop.

The same path over MCP

Every step above maps to execute calls — korve.projects.create, korve.projects.checkRepoAccess, korve.deploys.create, korve.logs.query, korve.deploys.diagnose — discoverable via search. See MCP setup.