Vector Docs

Features

Vector Tokenomics Engine

Vector prices each chat from the tokens the provider reported on the assistant messages — input, output, reasoning, cache reads and cache writes — at the model catalog's list price. Automations and parallel agents are also written to a local ledger, and an automation is refused a start once your daily cap is spent.

Measured tokens, catalog prices
Token counts come from what the provider reported: input, output, reasoning, cache reads and cache writes. Dollars are those tokens at the model catalog's list price, so plan billing, discounts and negotiated rates are not reflected.
Unmeasured is not free
In the spend ledger, a run whose provider reported no usage is recorded as unmeasured rather than as zero, because a fabricated zero reads as free and quietly poisons every total built on top of it.
The ledger is yours and it is local
Spend is kept in a file on your machine, with daily totals retained far longer than the raw events behind them. Vector reads it before an automation or parallel agent starts, and refuses the start once a cap is already spent.
Your keys, your bill
Connect your own provider account to start. From 1.99.99, guarded personal OpenRouter free access works independently of the free models provided by Vector, which a signed-in Vector account gets only while Vector's service has them switched on. Keep that account free: no credit purchase, payment method, automatic top-ups, paid upstream BYOK credentials, or default or enforced paid plugins. When free limits or eligible endpoints are unavailable, wait; the guarded route does not switch to paid models or providers. Other provider connections have their own pricing.

Economics that learn: every session feeds measured token and cost evidence into model recommendations, so the ranking is built from what providers actually reported rather than from list prices. A model gets no recommendation until it has at least three recorded runs for that kind of task, and an unmeasured model never outranks one that reported a real cost. Runs of the coding agents you start from Host locally are left out: their vendors' terms bar using them to rank models.

Usage and streaks

Settings → Usage reports what Vector recorded locally: lifetime tokens split into input, output, cache and reasoning, the cost recorded against them, chats completed, average tokens per chat, average time per run, the longest run and the peak day. It also keeps a daily streak with your current and longest run, seven days of activity, and your top five models by share of all-time token use.

The Run Guard, from desktop 1.99.108

From desktop 1.99.108, Vector holds runs to a live cap instead of checking only before they start. Vector checks spend after every model step and stops within one step of the cap for each agent running at the time. Dollars are the reported tokens at catalog list price unless the provider reported what the step cost, so discounts are not reflected. The npm CLI (1.99.99) and the CLI that vectordev.ai/install serves predate it, so the terminal UI and vector run with --max-cost and --max-steps get the Run Guard with the next CLI release, and Windows WSL servers, which run the 1.99.99 engine desktop 1.99.108 requires, get it once a later desktop release requires that CLI. From desktop 1.99.109, the limits are one overall set: they cover all your repositories together, and a repository cannot set its own.

Where caps come from
Settings → Spend limits in the desktop app, for its chats and the parallel agents you start; budget.run in the terminal's user config (~/.config/vector/vector.json, or %USERPROFILE%\.config\vector\vector.json on Windows) for the terminal UI and vector run, which the desktop app does not read; or vector run --max-cost and --max-steps for one run. Automations use the Left alone limits: $5 a run and $25 a day unless you change them.
One set of limits for every repository
From desktop 1.99.109, spend limits are overall: the day and month limits count spend in all your repositories together, and the per-repository monthly limit in Settings → Spend limits is gone, so set a monthly limit instead. A repository's own budget.run in its vector.json or .vector settings is ignored too, trusted or not, and Vector says so once for each repository file that still sets one, not again for the repository's agent worktrees or copies. Desktop 1.99.108 still reads a repository's budget.run. The terminal UI and vector run follow with the next CLI release, and Windows WSL servers once a later desktop release requires that CLI.
A stop before the step that would cross
After a step, Vector estimates the next one from catalog prices and the context it carries, shows the estimate as a range, and stops before starting a step that would go over the cap. One step can still cost more than its estimate, and subagents running side by side each finish the step they are on, so a run stops within one step of the cap for each agent running at the time.
Subagents and helpers share the cap
Spend from subagents, and from Vector's own helpers such as a Vectorscope review started during the run, counts against the same cap as the task that launched them. A helper you start after the run has ended runs under its own limits.
Automations and parallel agents hold while they run
An automation or a parallel agent gets the headroom left in your limits as its live cap, up to the per-run limit. With no per-run limit it holds half of that headroom, so a run that starts beside it is not shut out, and runs going at the same time share the headroom instead of each spending all of it.
Unpriced is not free
With a dollar cap set, a model with no catalog price stops after 40 unpriced steps, because its spend cannot be counted. A step whose provider reported what it charged, as OpenRouter does, counts at that amount. Vector Codium steps spend Codium credits, whose charge stays on vectordev.ai, so they count as unpriced steps. Free models are labelled free, and steps a plan pays for, such as a ChatGPT sign-in, are not counted in dollars; step and loop limits still hold both.
Loops pause themselves
In chats, the terminal UI and vector run, an agent that gets the same result from the same tool call three times, with no file change and no call that returned something new in between, or hits the same error three times in a row, is paused. Checking a page between clicks or running git status between commands returns something new each time, so it runs on. Auto-approve and --yolo cannot click through a pause. Set budget.loop.enabled to false to turn this off.
Outages end
In chats, the terminal UI and vector run, a provider outage ends the run after 10 retries or 15 minutes instead of retrying forever.
A way to continue
The stop card says why the run stopped and what it spent. Continue starts a new run with a new cap of the same size, or with a new step limit, and the stopped turn stays in the history so the agent picks up where it was. A subagent spends under its main session's run, so its stop card points to the main session, where a new message or Continue starts the new run.
Made for scripts
vector run exits with code 3 when a spend cap, step limit or loop pause stops it, so CI can tell a budget stop from a failure.