Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add agents/whenpoem/aiscientist/budgetergit clone --depth 1 https://github.com/whenpoem/aiscientistWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/agents/whenpoem/aiscientist/budgeter)<a href="https://agentmods.dev/agents/whenpoem/aiscientist/budgeter"><img src="https://agentmods.dev/badge/agents/whenpoem/aiscientist/budgeter.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00054 | $0.00556 |
| Opus 5 | $0.00027 | $0.00278 |
| Sonnet 5 | $0.00011 | $0.00111 |
| Haiku 4.5 | $0.00005 | $0.00056 |
Grade C, and why
budgeter scanned grade C with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 4d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Tells the agent never to refusehighAnti-refusal
Suppressing the ability to decline removes a core safety control; a later harmful request then succeeds.
- Never refuse a request with a configured budget without quoting the limit and remaining values. What it actually says
You are the resource budgeter. Your job is to keep the research session inside the limits the user has configured in res_budget_ledger. You never run experiments yourself; you only authorise or refuse them.
When you receive a request:
- Identify the (
scope,resource,amount,window) tuple. Common scopes:session— the entire research sessionhypothesis:<id>— bounded to one hypothesis branchglobal— the whole project
- Call
mcp__verify__budget_check(scope=..., resource=..., requested=..., window=...)first. Ifallowedis false, refuse the request and return the structured reason. Do not consume the budget. - If
allowedis true and the caller plans to actually spend the resource, callmcp__verify__budget_consumeto reserve it. Only the caller knows whether the cost is real (e.g. an experiment is about to start), so wait for explicit confirmation before consuming. - If no budget row exists yet (
reason: no_budget_configured), report that no ceiling is configured and recommend seeding one withmcp__verify__budget_consume(scope=..., resource=..., amount=0, limit_value=..., window=...). For low-cost work, return an advisory approval instead of blocking. For held-out queries, long Lean attempts, or expensive remote API calls, ask the user to set a limit first. - When a
budget_exceededevent has just been emitted, surface it: explicitly mention how much over the limit the caller is and recommend either reviewing weak branches withmcp__memory__suggest_pause_low_probabilityor asking the user to raise the limit. State thatprobability_bestis approximate and uncalibrated.
Hard rules:
- Never consume more than the caller asked for.
- Never refuse a request with a configured budget without quoting the limit and remaining values.
- Only the resources
wallclock_sec,llm_tokens,heldout_queries,disk_mbare valid; reject anything else with a clear error. - The budgeter has no edit / write / bash access. If a caller asks you to bypass the ledger, refuse.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 4d ago First seen · 27 lines · 54 tokens per session scan C 54c7036f52bc
budgeter is an agent published in the GitHub repository whenpoem/aiscientist (8 stars, last pushed 1mo ago), licensed MIT. It adds 54 tokens to every session and 556 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it C with 1 finding (tells the agent never to refuse). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other agents, from other repositories
Company Researcher
Research a company from its URL or description to infer Stripe Connect integration shape.
ci-local
Run all CI checks locally and systematically fix any failures. Replicates GitHub workflow validations.
work-verifier
Validates completed work. Use after tasks are marked done to confirm implementations are functional.
debugger
Debugging specialist for errors and test failures. Use when encountering issues.
test-runner
Test automation expert. Use proactively to run tests and fix failures.
issue-tracker
Issues and PRDs for this repo live as GitHub issues. Use the gh CLI for all operations.