Microkernel AI Agent$BUDGET

Run more.
Spend less.

BudgetAI routes every turn to the cheapest capable model, verifies the result, and proves what it saved — across CLI, Web UI, and chat.

SwiftFox on-device routingReceipts for every run
BudgetAI command center with budget meter, savings receipt, tier nodes R0–R3, and SwiftFox
$47 saved todayR1 routed · verified0.08¢ per success312k tokens sparedBudget guard activeReceipt #4f2a closed$BUDGET holders +12%Fox says: spend less$47 saved todayR1 routed · verified0.08¢ per success312k tokens sparedBudget guard activeReceipt #4f2a closed$BUDGET holders +12%Fox says: spend less

Fast

SwiftFox routes turns in milliseconds — no cloud judge on every message.

Frugal

Every tier earns its cost. Cheap first, expensive only when verified.

Verified

Results pass checks before you pay for a bigger model.

Smart Spend

Every turn earns the right model.

BudgetAI reads each message, judges the cheapest capable tier on-device, verifies the result, and only escalates when the work demands it.

Read the message

The full turn is classified by difficulty, risk, context, and intent.

tier R0 · verify

Extract signals

Local rules flag debug work, strict formats, long context, and agentic tasks.

tier R1 · verify

Judge the tier

A small on-device model picks the lowest tier that can finish the work.

tier R2 · verify

Verify, then escalate

The cheap answer is checked. Only failures climb to a pricier model.

tier R3 · verify

Run the model

The chosen tier maps to a concrete provider profile for that turn.

tier R0 · verify
R0Trivial
R1Simple
R2Hard
R3Critical
BudgetAI architecture: clients connect to gateway, router, and sandboxed tools
Budget Guard

Work is bound to limits, not hope.

Before a task runs, BudgetAI agrees to a goal, a budget, and the evidence it must produce. Every channel gets its own spend ceiling and approval posture.

Goal

Define what done means — tests green, file written, or user-confirmed.

Budget cap

Set a hard ceiling on cost, wall-clock time, and tool rounds per task.

Evidence

Require proof: logs, artifacts, screenshots, or a passing check.

Stop or escalate

BudgetAI halts or asks before it ever breaks the limits you set.

budget.tomlactive
[contract]
goal      = "tests pass in ./api"
max_usd   = 0.25
max_rounds = 8

[evidence]
require = ["test_log", "diff"]

[on_breach]
action = "escalate"
Telegram
Auto-approve low-risk shell
$2 / day
Slack
Dangerous tools need approval
$20 / day
Cron
No web, no writes outside workspace
R0–R1 only
Receipt Studio

Not just tokens. Proof of value.

BudgetAI measures what a task actually costs to complete — and gives you a receipt for every run, so savings are something you can show.

$47
saved this week
vs. always using the top tier
91%
success rate
tasks that met their budget
$0.08
per success
average cost of a completed task
receipt · session 4f2aPASSED
router · R1 (verify)$0.012
escalation · R2$0.061
tools · 5 calls$0.007
total$0.080
saved vs. top tier$0.41
Everywhere

One runtime. Three ways in.

CLI, Web UI, and chat share the same gateway, memory, tools, approvals, and usage accounting.

The shell you already live in

Configure a provider, start the gateway, and run full agent turns from the terminal.

# configure a provider once
$ budgetai onboard
# start the local gateway
$ budgetai gateway run
✓ gateway live on 127.0.0.1:18791
✓ router: on-device
✓ memory + embeddings ready
BudgetAI architecture diagram
Toolkit

Built for long-running usefulness.

Memory persists, tools stay controlled, and context remains focused across extended workstreams.

Tool-result compression

Large outputs stay useful without flooding context. Full results remain on disk.

Personal memory

Facts, notes, and task traces return through local keyword and semantic search.

Layered sandbox

File, shell, web, git, and media tools run behind policy and approval layers.

Meta-skills

Package recurring work as reusable, composable routines loaded only when needed.

Durable sessions

Transcripts, summaries, artifacts, cost, and replay data persist across restarts.

Built-in web search

Bring fresh external context into any turn through a configured search provider.

On-device embeddings

Local ONNX embeddings power semantic recall without sending memory to a remote model.

Turn Trail

Every message earns a receipt.

From the first user message to the final reply, BudgetAI routes, verifies, runs tools in the sandbox, and closes the loop with a cost receipt.

1User
2Channel
3Gateway
Agent
5Router
6Verify
7Tools
8Receipt
9Reply
Providers

One schema. Every provider.

Point BudgetAI at the backend that fits the work. Switching never requires application code changes.

BudgetAI
OpenRouter
OpenAI
Anthropic
Gemini
DeepSeek
Ollama
Qwen
MiniMax
Launch

Running in minutes.

Windows, macOS, and Linux use the same setup path. Install once, then route every surface through one budget-aware runtime.

01

Install uv

BudgetAI installs into an isolated tool environment and manages its own Python.

curl -LsSf https://astral.sh/uv/install.sh | sh
. "$HOME/.local/bin/env"
02

Install the runtime

Pull the recommended profile — router plus the on-device memory stack.

uv tool install --python 3.12 \
  "budgetai[recommended]"
03

Connect a provider

Run the onboarding wizard to pick a backend and set your key.

budgetai onboard
# non-interactive:
budgetai onboard --provider openrouter \
  --api-key-env OPENROUTER_API_KEY
04

Run the gateway

Start the shared runtime, then open the local control console.

budgetai gateway run
# → http://127.0.0.1:18791/control/
05

Run your first turn

Chat interactively, or fire a single one-shot turn under a budget.

budgetai chat
# or one-shot:
budgetai agent -m "Summarize the README here"
Token

Trade $BUDGET on the way up.

BudgetAI is built to save tokens — and the community token celebrates every dollar spared. Launch details coming soon on budgetai.fun.

$BUDGET
SwiftFox approved

The AI that counts every token.

Route each turn to the lowest-cost model that can complete it reliably — and prove what you saved with a receipt.