1
Install the CLI
npx @usenaive-sdk/vetta-cli ….The snippets below use jq to capture ids from JSON output (… | jq -r .id) — install it,
or copy the agt_... / ses_... ids from the output by hand.Working with a coding agent? Point it at the onboarding manifest —
https://usenaive.ai/skill.md — and it will walk your operator
through everything on this page. Every command below is also a REST call against
the API, so curl works before the CLI does.2
Authenticate
The CLI stores a profile — a credential plus base URL — and never prints it back.Confirm which organization you are pointed at before you spend anything:
VETTA_API_KEY and VETTA_API_BASE_URL override the stored profile for a single command, so
scripts and CI never need a config file at all.3
Add credits
Billing is real US dollars, prepaid. Your organization is the billing entity; every agent draws from the same balance. See
Billing.
topup prints a hosted checkout link — nothing is
credited until the payment settles.4
Create an agent
An agent bundles a model, a system prompt, a completion window, and a budget — the budget is
required, so every agent has a spend cap from birth.Later commands take the id, not the name.
vetta models list prints the model ids and the
completion windows each supports.You do not attach a computer to an agent. A session provisions its own fresh sandbox only
when the agent’s tools need one — a text-only agent pays nothing for a box it won’t use.
5
Run it and stream the output
A session is one directly-controlled run: create it with its first message, then stream events.The stream is the whole truth of the run — every model call with its quote, every tool call,
the reply, the usage line:Follow up with
vetta session send --session "$SID" --text "…"; resume a dropped stream with
--after-seq.6
Read the meter
Every dollar is metered per component, per agent, and per session.Files the agent published during the run are listed with
vetta file list --scope session --session "$SID".Create an API key for programmatic access
Code authenticates with a scoped API key — the secret is returned once and never again:Driving a sandbox directly
A computer is a disposable Linux sandbox you can drive yourself, independently of any agent. Pause it to bill storage only. Sessions always get their own sandbox — a computer you create here is never handed to one. See the Computer reference.The same arc over HTTP
The CLI is a thin client over the REST API; the whole arc above is a few requests.Next: how Vetta works
Harness, runtime, tools — the three layers that make a finished task cheap.