Prompt pack · Solo business

Budget Change Card: every ad budget move on one card, big ones wait for your yes

by PaperChaseWebb

A free kit for owners who let an agent suggest or make ad budget changes. Every proposed move becomes a card: old budget, new budget, the reason, and spend and conversions checked against one report export. Small moves from an agent you trust, on enough data and under a daily cap, may go. Bigger ones wait for your yes, moves over your ceiling are blocked, and the change itself goes through a gate that logs who allowed it.

Preview card for Budget Change Card
Works withClaude CodeCodexGrok BotHermesOne Python script, a rules template, a fictional bakery with eight campaigns and eight proposed moves, and agent rules for each harness. Tested on Linux
Price
Free
Difficulty
Beginner
Setup
15 min
Format
.md file
Free sample

budget-change-card-every-ad-budget-move-on-one-card-with-the-owners-yes.md · 43 KB · direct download, no signup

Download free

What you end up with

Every budget change has a card, a reason, numbers from one report and a name next to the yes.

What you get

  • The method: one report as the only source of numbers, a percent limit for small moves, a ceiling, a daily increase cap and a minimum of data
  • budget.py: 9 rules checks and 13 reasons a move is held or blocked, from a stale old budget or numbers that do not match the report to thin data and the daily cap
  • cards.md each run: old and new budget, percent change, reason, window, spend, conversions and cost per conversion
  • A gate called right before a budget changes, which lets a move through once; any edit after your yes stops it
  • The owner's yes refused inside an agent session, without a terminal, for a blocked card and from anyone but the owner
  • AGENTS.md, CLAUDE.md, a Grok Bot standing order and a Hermes skill, a fictional example, and 49 tests

Who it is for

Owners and small marketing teams who let an agent suggest or make ad budget changes.

Works with

Claude CodeCodexGrok BotHermesOne Python script, a rules template, a fictional bakery with eight campaigns and eight proposed moves, and agent rules for each harness. Tested on Linux

Solid chips: the agent is named in this listing's own tools list. Dashed chip: One Python script, a rules template, a fictional bakery with eight campaigns and eight proposed moves, and agent rules for each harness. Tested on Linux.

Tools needed

Python 3.8 or newerbudget.py: rules check, one card per proposed move (clear, needs your yes, blocked), owner yes, a change gate and status; standard library only; never connects to an ad account
Grok Bot, Claude Code, Codex or Hermes (optional)proposes moves with numbers copied from the report, runs the scan and calls the gate under AGENTS.md; never approves, edits the inputs or splits a move
You needPython 3.8 or newer
You needOne campaign report you can export to CSV each day
You needToday's daily budget per campaign

Cost to run: Free. Python is free.
Time to result: First cards in about 15 minutes

How it works

  1. Run the example

    Unpack the file and run python3 budget.py scan example/rules.json example/budgets.csv example/report.csv example/proposals.csv out/.

    Expected: 2 clear, 4 need a yes and 2 blocked, each with its reason.

  2. Write your rules

    Copy templates/rules.json. Keep every agent on propose_only and the auto limit at 0 to start.

    Expected: budget.py check shows rules OK.

  3. Export one report

    Each morning, export your campaign report to report.csv and today's budgets to budgets.csv.

    Expected: Cards whose numbers match the report; any that do not are blocked.

  4. Say yes at your own terminal

    Read the card, then run approve and type apply. Whoever changes the budget calls gate first.

    Expected: The log shows your yes; edit the card and gate says no-go.

Sample prompts, free to use

Before any budget change · Grok Bot, Claude Code, Codex, Hermes
Follow AGENTS.md. Add the move to proposals.csv under your own name with numbers copied from report.csv, run budget.py scan, and send the owner cards.md if anything is held or blocked. Call budget.py gate before changing a budget and change it only on exit 0. Do not approve, edit the rules, budgets, report or log, split a move or retry a refused change another way.

One prompt.

Free preview of the file

budget-change-card-every-ad-budget-move-on-one-card-with-the-owners-yes.md (excerpt)43 KB total
# Budget Change Card

**An agent that moves ad budgets on a hunch can spend a week's money by lunch. Make every move fit on one card: the old budget, the new one, the reason, and the numbers from one report. Small moves can go. Big ones wait for your yes.**

Version 1.0, 2026-11-04. By PaperChaseWebb Inc. Free. Works with Grok Bot, Claude Code, Codex and Hermes, or by hand. Python 3.8 or newer, no installs.

## The problem

Budget moves suggested by agents tend to arrive as a sentence in chat: "raise brand search, it's doing well." Doing well by which report, over which days, from what budget to what? When the numbers come from three dashboards that disagree, nobody can check the case, and when the move turns out wrong, nobody can say who allowed it.

This kit puts each move on a card and checks the card against a single report export. Moves that are small, from an agent you trust, backed by enough data and under a daily cap may go. The rest wait for you, and your yes covers that one card as it read.

## What you get out of it

- cards.md: one card per proposed move, sorted into blocked, needs your yes, and clear, with the reason for each.
- Every card shows old and new budget, the percent change, the reason, the window, spend, conversions and cost per conversion from the report.
- A gate called right before a budget is changed. Exit 0 means go; anything else means stop. A move goes once.
- changelog.jsonl: each yes and each change, with who, when, old and new budget, and a f

Test record

Date
Nov 4, 2026
What was run
tests/test_budget.py (49 tests) unpacked from the pack file and run fresh on Linux, Python 3.8, 3.9, 3.11, 3.12 and 3.13; check, scan, approve, gate and status on the fictional example.
Result
49 passed, 0 failed on all five versions; the example sorts 2 moves clear, 4 held (agent may only propose, over the auto limit, thin data, daily cap) and 2 blocked (over the ceiling, numbers off the report); the yes is refused in agent sessions, without a terminal, for the wrong name, without the typed word and for a blocked card; an edit or a budget change after a yes stops the move; a move goes once; the inputs are never modified.
Not run
macOS or Windows. A real ad account or report export. A live Grok Bot, Claude Code, Codex or Hermes session.

Copied from this item's dated test notes. What was not run stays in.

Worth knowing

  • It never connects to an ad account. It covers changes that pass through the gate, so remove direct budget access from agents where you can.
  • It checks that the numbers match one report, not that the report is right or the reason is wise. Read the cards.
  • On 2026-11-04: 49 tests passed on Python 3.8, 3.9, 3.11, 3.12 and 3.13 on Linux, run from the files unpacked out of the pack. Agent rules guide; they were not loaded inside each harness for this release.
  • Daily budgets only. Lifetime budgets, bids and targeting are out of scope.

Questions

Does it change my ad budgets?

No. It decides whether a move may be made and logs who allowed it. A person or your own tool makes the change after the gate says go.

Can my agent approve its own move?

No. The yes is refused inside an agent session, without a terminal and for anyone but the owner named in the rules.

Why block big moves even with a yes?

A ceiling makes big changes happen in steps you can watch. Raise max_move_pct if you want a higher ceiling.

What should I pair it with?

The Earned Autonomy Ladder (free) decides when an agent may move from proposing to applying small moves, and the Usage Cap Check (free) keeps the agent bill itself in view.

Details

Version 1.0 · Updated Nov 4, 2026 · Markdown version of this page
License: Personal and commercial use. Download terms

adsad budgetmarketingapproval-gatechange logagent limitsdailygrokclaude-codecodexhermes

Related

Preview card for Earned Autonomy Ladder
Prompt packFree

Earned Autonomy Ladder: agents earn each level from their record and your yes

by PaperChaseWebb

A free kit for owners moving agents from drafting to doing. Every agent action gets its own level: watch, draft, act and report, or act within a limit. A lane moves up one level only after enough clean runs over enough days and only with your yes at your own terminal. A reverted run drops it a level, an incident drops it to watch, and payments, first contact, deletes, contracts, public posts and credentials stay on draft for good.

Works withClaude CodeCodexGrok BotHermesOne Python script, a rules template, a fictional bookkeeping office with six lanes and a run log, and agent rules for each harness. Tested on Linux
Solo business · Beginner · 15 min setup
Preview card for Usage Cap Check
Prompt packFree

Usage Cap Check: see the month coming before the agent bill does

by PaperChaseWebb

A free kit for providers who bill agent or model usage to clients, and for the owners who pay it. Write one plan with a monthly cap, alert points, a rule for going over and every job that spends. Copy usage from the provider's own export into a three-column log. A checker gives spend to date, the last 7 days' pace and where the month lands, flags jobs over budget, unplanned spend and jobs with no off switch, and turns each into one decision sheet the client owner answers in a single reply.

Works withClaude CodeCodexGrok BotHermesOne Python script, a plan and log template, a fictional plumbing company example, and agent rules for each harness. Tested on Linux
Solo business · Beginner · 15 min setup
Preview card for Pilot Scorecard
Prompt packFree

Pilot Scorecard: agree the pass line before an agent pilot starts

by PaperChaseWebb

A free kit for providers who offer a trial before a monthly plan, and for owners who want to try one. Write one page of terms: one workflow, 30 days at most, up to 5 measures with today's number, a target and where each number comes from, plus data limits, an off switch, the refund rule and the next step after a pass or a fail. The client owner signs it at their own terminal, the pass lines lock, and the end report says pass or fail per measure without an argument.

Works withClaude CodeCodexGrok BotHermesOne Python script, terms and results templates, a fictional dental practice example, and agent rules for each harness. Tested on Linux
Solo business · Beginner · 15 min setup
Preview card for Ask-first rules for AI agents
Prompt pack$19

Ask-first rules for AI agents: hard nos, approval cards and a test set

by PaperChaseWebb

Paste-in rules that make an agent ask before it sends, spends, posts or deletes, define what a real yes is, and stop retries after a no, plus 12 test scenarios to check it.

Works withClaude CodeCodexClaudeGrok Bot+4Plain .md plus one Python 3 file, standard library only. The agent prompt in block 13 is written for any agent with a shell (Grok Bot, Claude Code, Codex, Hermes); it was not loaded inside each harness.
Solo business · Beginner · 20 min setup