-
-
Ready to save some tokens? Slash opens the video, then the agent puts a price on every call.
-
Hire the agent: a coding agent with a budget. Live run 2026-10-16: billed $0.006681, saved $0.003395 vs the models asked for.
-
Today's release notes, from Tavily. A model can't know last month's changes, so the agent searches and extracts first.
-
Plan, Write, Test, Iterate. Each step books the cheapest Nemotron model its quality floor allows. Upgrade jobs search with Tavily first.
-
Four jobs, one colour each: preset jobs on a small shop, a budget of 1 to 5 cents. Upgrade moves the checkout from Zod 3 to Zod 4.
-
Nemotron 3 Ultra plans, reasoning on, capped at its quote. The plan cites the notes: .errors is gone in Zod 4, use .issues.
-
Iterate is us too. A live run failed, the receipt said so, and we fixed the agent the same day (pull request #11).
-
Tavily on the receipt: searches, extracts and Tavily's own credit count, beside the Token Factory bill. Nothing billed above its quote.
-
Four Nemotron models, one API. Nebius Token Factory, OpenAI-compatible, a plain fetch client (src/nebius.ts).
-
Reasoning on to plan, off to write. Every call is capped at its own quote and reconciled against the usage Token Factory returns.
-
Writing books Nemotron 3 Super: asked for Ultra, booked Super at about a third of the price. Tests pass. Reasoning off to write.
-
Architecture: a small Bun app on Google Cloud Run; every model call goes to Nebius Token Factory. Deployed with no stored key.
-
Five Upgrade runs, five passes in round 1. Savings 15% to 38% a run, 24% overall (estimated vs the same tokens on Ultra). Oct 26.
-
From hackathon to enterprise. Built small on purpose, each piece has a clear next step at scale. Next: tests in Token Factory Sandboxes.
-
Slash, the Evaluator. He puts a price on every call. Slash turns a pile of AI calls into a price you can read before you hire.
Inspiration
Coding agents burn frontier-model tokens on steps a smaller model can do, and nobody sees the bill until it arrives. You wouldn't hire a contractor without a quote. We built the agent you can hire like one.
What it does
You give it a job and a budget. It works like this:
| Step | What happens | Model |
|---|---|---|
| QUOTE | prices the job before any call | none |
| PLAN | reads the project, writes a short plan | Nemotron 3 Ultra, reasoning on |
| WRITE | writes the change and a test that proves it | the smallest Nemotron the job allows, reasoning off |
| TEST | runs the project's own tests on a copy | none |
| ITERATE | sends failures back and writes again, up to 3 rounds, inside the budget | as WRITE |
| RECEIPT | what Token Factory billed, what the models asked for would have cost (estimated from the same tokens), what you saved | none |
TEST runs in the demo's container, not in Token Factory Sandboxes (beta access requested). PLAN and WRITE run on Token Factory.
Upgrade jobs look things up first. An upgrade needs today's release notes, not a model's memory. The Upgrade job (Zod 3 → Zod 4) runs one Tavily search and one extract of the official migration guide before it plans. PLAN and WRITE read the notes as data, and the plan cites them.
Try it live: pick one of four jobs on a small shop, set a budget of 1 to 5 cents, click Hire, and watch each step. Every run is a real job on Token Factory.
A live run (2026-10-21), the one in our video: Upgrade, 3¢ budget. SEARCH found the Zod migration guide. PLAN on Ultra: $0.010007 (2,682 tokens out, 2,455 of them reasoning). WRITE on Super: $0.002523. Tests passed in round 1. Billed $0.012530 against an estimated $0.018418 on the models asked for (the same tokens at their prices): $0.005888 saved. 1 Tavily credit. Nothing billed above its quote. That is one run, not a forecast: at 1,000 runs of the same shape the saving would be about $5.89 (arithmetic, not a measurement).
Who it's for
Anyone who runs coding agents on their own code: a solo developer with a handful of agents, or a whole team.
Agents spend frontier-model tokens on steps a smaller model can do. The bill arrives after the work.
Here, the agent quotes first and books the model per step:
- PLAN needs reasoning, so it gets Nemotron 3 Ultra.
- WRITE doesn't, so it gets the cheapest model at or above the floor. In our run that was Super: $0.002523, against an estimated $0.008411 on Ultra for the same step (30%).
- The receipt shows what Token Factory billed, what the models asked for would have cost, and the difference.
The point is a number you can check against the invoice. At demo scale it is cents.
Design
One page, one job at a time. Pick a job, set a budget of 1 to 5 cents, click Hire. Each step appears as a card as it runs: HIRED, then SEARCH and EXTRACT on an upgrade, PLAN, WRITE, TEST. A retry shows as ↻ round 2.
The receipt is the last card. Billed, asked-for cost, saved. If a call was billed above its quote, the receipt says so.
It shows what the agent did, including the retry. When PLAN runs out of room, the card says ↻ reasoning off.
Jobs are presets. Four preset jobs on sample projects, and there is no free-text input.
How we built it
- Nebius Token Factory with four NVIDIA Nemotron models (3 Ultra, 3 Super, 3 Nano, 3.5 Lightning) through the OpenAI-compatible API, a plain
fetchclient. The catalog has four; the demo's floors put PLAN on Ultra and WRITE on Super, so Nano and Lightning are available but not booked by these jobs. - Quality floor: each step has a floor, a tier from 1 to 3 (Ultra is 3, Super 2, Nano and Lightning 1). The engine books the cheapest model at or above it. PLAN's floor is 3 and WRITE's is 2.
- slash-tokens, our open-source engine, quotes each step with NVIDIA's own tokenizer, books the cheapest model at or above the step's quality floor, caps output at the quote, and reconciles every call with the
usageToken Factory returns. - Reasoning on or off per step (
chat_template_kwargs.enable_thinking): on to plan, off to write, because reasoning is billed as output. - Tavily search and extract for the Upgrade job, with Tavily's own credit count on the receipt.
- Safety: preset jobs only (no free text), the agent works on a copy, writes stay inside the project, installs run without scripts and can't add packages, one job at a time (others wait in a short queue), a $0.50 daily cap and 50 Upgrade runs a day.
- Google Cloud Run hosts the demo, deployed from GitHub with no stored key (Workload Identity Federation). Both API keys live in Secret Manager, readable only by the app.
Challenges we ran into
- Hidden request framing. Our first quotes counted message content only and came in under the bill. We measured the framing on real bills (16 tokens a request plus about 7 per extra message) and built it into every quote.
- Scope creep. An "add free shipping" job also fixed an unrelated coupon bug, because the project's rules said coupons should never discount shipping. We taught the planner to plan only what the job asks and note anything else.
- Release notes without code. The first Upgrade runs failed because the extracted notes lost a key line. Extracting the start of the guide, where breaking changes are listed by impact, fixed it.
- A search that came back empty. Tavily sometimes answers a good query with nothing, and still charges the credit. A visitor's first Upgrade run hit it on Oct 21 and stopped before any model call. The agent now asks once more.
- Planning that ran out of room. Our first live Upgrade run on Oct 16 did not finish. PLAN spent its whole 4,000-token output cap on reasoning (4000 out, 4000 reasoning), so there was no plan to write from. Token Factory confirmed it:
finish_reason: length. After 3 rounds the run billed $0.024614 and stopped, with nothing billed above its quote. The fix (PR #11): if a reasoning plan reaches its cap, plan once more with reasoning off. The next run passed in round 1.
Accomplishments that we're proud of
- The receipt reconciles to Token Factory's usage. No call was billed above its quote in our test runs.
- Smaller models do real work. Nemotron 3 Super wrote the change and a test that passed the project's tests in round 1, at about 30% of Ultra's estimated cost for that step.
- Five Upgrade runs on Oct 26 saved 15% to 38% a run, 24% overall, billed by Token Factory against the same tokens priced on Nemotron 3 Ultra (estimated). All five passed in round 1.
- A live run found a real bug, and we fixed it in the open. The failed run is in the repo history (PR #11), not hidden.
- Two Tavily calls on every Upgrade run, shown on the receipt.
- A public demo anyone can run, for a few cents a job, capped at $0.50 a day.
What we learned
- The cheapest model that passes the tests is the right model. You only know which one that is if you quote before the call and reconcile after it.
- Reasoning is billed as output. Turn it on to plan and off to write.
- Run it for real. The planning cap showed up in a live run.
- Quote the framing. Our first quotes counted message content only and came in under the bill. We measured the framing on real bills (16 tokens a request plus about 7 per extra message).
Honest limits
- Preset jobs on sample projects. Four jobs: three on a small shop, one Zod 3 → 4 upgrade. No free text.
- TEST runs on an isolated copy inside the demo's container, not in Token Factory Sandboxes. Beta access is requested.
- One job at a time, with a short queue (3 waiting, up to 2 minutes), capped at $0.50 a day and 50 Upgrade runs a day.
- Upgrade is not always a pass. On Oct 14 it passed 4 of 5 runs. On Oct 16 the first run failed until the planning fix. On Oct 21 a visitor's run ended early because Tavily returned an empty search, so the agent now asks once more. On Oct 26, 5 of 5 Upgrade runs passed in round 1 (3¢ budget each). The WRITE step sometimes needs a retry, or fails; the page shows it either way.
- Tavily: the receipt shows 1 credit a run, from the search. The extract response reports 0. Tavily's team confirmed that is expected for
/extract, and account usage shows on their/usageendpoint, after a short delay. The receipt counts what the responses report.
How it meets the hackathon requirements
- Runtime calls to Token Factory with NVIDIA open models: every job calls Nemotron 3 Ultra (PLAN) and the smallest Nemotron at or above the floor (WRITE), live on the demo.
- Where Token Factory accelerated our workflow: one OpenAI-compatible API for four Nemotron models: choosing a different model for a step is a change of the model ID, not a new integration, which is what lets each step book the cheapest model its quality floor allows. The
usageon every reply lets us check each call against its quote and show what Token Factory billed, with no separate billing export. A whole job fits a budget of 1 to 5 cents, so we could build and test it with live runs instead of mock data. - Tavily: two runtime calls on every Upgrade run (search, then extract), shown on the receipt.
- Significantly updated. slash-agent is new: its first commit is Oct 10, inside the submission period. Before the period (it opened Aug 26) the engine was slash-tokens 1.6.5 (Aug 25), a library with no agent loop and no Nemotron support. Since, six releases (1.6.6 to 1.8.1):
- slash-tokens 1.6.6 → 1.8.1 (Oct 7–11):
quote(),decide(),reconcile(),hire().run(), the four Nemotron models, request framing measured on real bills. - slash-agent (from Oct 10): the Token Factory client and the full loop; the live demo on Cloud Run (Oct 14).
- The Upgrade job with Tavily (PR #9).
- Files sent back unchanged are no longer counted as changes (PR #10).
- Planning again with reasoning off when PLAN runs out of room (PR #11, Oct 16), found by a live run.
- From the Oct 20 live review (PRs #14 to #18, Oct 20–21): the first screen explains itself and a ? button opens the basics; a live progress line and bar; a baseline on the receipt and a ROUTING view; a short queue; a Stop button.
- Upgrade job fixes (PRs #19 and #21, Oct 20–21): ask Tavily for the relevant parts of the changelog, and ask the search once more when it answers with nothing.
- slash-tokens 1.6.6 → 1.8.1 (Oct 7–11):
- Feedback: the README section "Feedback on Nebius Token Factory and NVIDIA Nemotron".
What's next
- Token Factory Sandboxes for every TEST (beta access requested): isolated microVMs, with checkpoint and branch to try fixes in parallel.
- Jobs on your own repositories, opened from issues.
- Budgets and model policies per project or team; receipts exported to BigQuery.
- Feedback shapes it: five changes here came from the judges' live review, recorded in the repo. This is a foundation, so tell us what to build next.
Built With
- bun
- github-actions
- google-cloud-run
- nebius-token-factory
- nvidia-nemotron
- secret-manager
- slash-tokens
- tavily
- typescript
- workload-identity-federation
- zod

Log in or sign up for Devpost to join the conversation.