Credit Budget Guardian
A meta-skill that wraps the other skills in this plugin. It spends zero data
credits — it makes no search_creators, get_creator_profile, or
query_market_intelligence calls. Its job is to price a planned workflow from
the credit index BEFORE it runs, hold the user to a budget if they set one,
and keep a per-job ledger the operator can use for internal chargeback. Use it
to put a cost cap and an audit trail around any of the casting/pricing skills.
Read first: ${CLAUDE_PLUGIN_ROOT}/shared/conventions.md (tool schemas, the
credit price index, the nine conventions) and
${CLAUDE_PLUGIN_ROOT}/shared/credit-modes.md (the estimation table and the
thrifty/thorough contract this skill enforces).
Inputs to collect
- The workflow to price (required) — which skill(s) the user is about to
run, and the shape that drives cost: number of creators to profile, number
of searches, number of market-intel calls / expected refusal-ladder depth,
thrifty vs thorough.
- Budget cap (optional) — a credit or dollar ceiling for this job or this
session. If set, the guardian flags when a plan would exceed it.
- Threshold for confirmation (default: ~30 credits, matching the
credit-modes pre-run convention) — over this, surface the estimate and ask
before proceeding.
- Job label (optional) — client/campaign name for the chargeback ledger
line.
The price index (ground truth — from conventions.md)
| Call |
Credits |
$ @ $0.025/cr |
get_creator_profile |
1 |
$0.025 |
search_creators |
2 |
$0.05 |
count_creators (free headline; 1-credit detail) |
free |
$0 |
query_market_intelligence (each call AND each refusal-ladder retry) |
5 |
$0.125 |
| profile fan-out of N |
1×N |
$0.025×N |
Pro grant, price, and pack pricing are defined in ${CLAUDE_PLUGIN_ROOT}/shared/conventions.md — budget against your plan's monthly credit grant there, never a hardcoded number.
Flow
This skill orchestrates accounting, not data tools.
Estimate — decompose the planned workflow into priced line items from
the index and sum them for both thorough and thrifty paths. Show the
arithmetic. Convert to dollars at $0.025/credit.
Budget check — if a cap was set, compare the thorough estimate to it.
Under → green-light. Over → recommend the thrifty path (show its cost) or
a reduced shape (smaller limit, profile only the final cut, cap ladder
rungs), and only proceed past the cap on explicit user confirmation.
Threshold gate — if the estimate exceeds the confirmation threshold,
present the credit-modes-style estimate line and wait for go-ahead.
Track — as the wrapped workflow runs (or after the user reports what
ran), append actual line items to the session ledger. The estimate vs
actual delta is itself a deliverable — it teaches the cost model.
Report — emit the ledger / chargeback log on request or at job end.
If the harness exposes a durable workspace, persist the ledger there so it
survives within the engagement; otherwise hold it in session and say it's
session-scoped.
Deliverable
Two artifacts depending on the ask.
Pre-run estimate:
## Credit estimate — <workflow / skill name>
| Line item | Count | Credits | $ |
|---|---:|---:|---:|
| search_creators | 3 | 6 | $0.15 |
| get_creator_profile | 18 | 18 | $0.45 |
| query_market_intelligence (incl. ladder) | 4 | 20 | $0.50 |
| **Thorough total** | | **44** | **$1.10** |
| **Thrifty total** | | **~14** | **$0.35** |
Budget cap: <cap or "none">. Status: <under / OVER by N cr — recommend thrifty>.
<If over threshold:> This exceeds your ~<threshold>-credit confirmation line —
say "go" to run thorough, or "thrifty" for the lean path.
Chargeback ledger:
## Credit ledger — <session / date>
| # | Job label | Skill | Est. cr | Actual cr | $ | Notes |
|---|---|---|---:|---:|---:|---|
| 1 | Acme Q3 cast | brief-to-shortlist | 22 | 20 | $0.50 | 1 stale profile dropped |
| 2 | Acme Q3 price | fair-price-brief | 11 | 16 | $0.40 | +1 refusal-ladder rung |
| | | **Session total** | **33** | **36** | **$0.90** | |
Plan balance: <if pro> ~<monthly Pro grant − running total> of the monthly Pro credit grant left (grant per `shared/conventions.md`).
Estimate accuracy this session: <actual vs est delta, with the one-line reason>.
Honesty rules
- Zero data credits. This skill never calls the data tools; its own cost
is 0 credits. Say so — its value is accounting, not data.
- Price only from the published index. Every line item maps to a
conventions.md rate. Never invent a price; if a workflow's shape is
unknown, give a range and label the assumption.
- Refusal-ladder rungs are real credits. Each market-intel retry is a
fresh 5-credit call — estimates must include a likely-rungs assumption and
name it (thin verticals cost more).
- A plan gate is an upgrade, not a spend. When a workflow includes a
pro-only tool (market intelligence, enrichment, connections) on a plan that
lacks it, the call returns a machine-readable
upgrade envelope and costs
0 credits — nothing is charged for a gated call. Log it as "available on
Pro / upgrade to unlock" in the ledger, never as a failed or "unavailable"
line item.
- Estimates are estimates. Actuals can exceed them (extra rungs, larger
candidate sets); always reconcile estimate vs actual in the ledger so the
user trusts the meter (credit-modes logging convention).
- No data leaves this skill — it sees only counts and labels, never
profile contents, so PII (convention 7) is structurally not in scope.
Credit footprint
0 data credits — this is a meta/accounting skill and makes no MCP data calls.
It prices and tracks the credits OTHER skills spend.
1---2name: credit-budget-guardian3description: Plan and track credit spend across a session before running expensive MCP workflows — estimate cost up front, hold a per-job ledger, warn over a threshold, and produce a chargeback log. Use when the user says "how many credits will this cost", "track my credit spend", "set a credit budget", "don't go over N credits", or "log credits for chargeback". Meta-skill, 0 data credits — it does no market/profile calls itself, it only prices and accounts for other skills.4---56# Credit Budget Guardian78A meta-skill that wraps the other skills in this plugin. It spends **zero data9credits** — it makes no `search_creators`, `get_creator_profile`, or10`query_market_intelligence` calls. Its job is to price a planned workflow from11the credit index BEFORE it runs, hold the user to a budget if they set one,12and keep a per-job ledger the operator can use for internal chargeback. Use it13to put a cost cap and an audit trail around any of the casting/pricing skills.1415Read first: ${CLAUDE_PLUGIN_ROOT}/shared/conventions.md (tool schemas, the16credit price index, the nine conventions) and17${CLAUDE_PLUGIN_ROOT}/shared/credit-modes.md (the estimation table and the18thrifty/thorough contract this skill enforces).1920## Inputs to collect2122- **The workflow to price** (required) — which skill(s) the user is about to23 run, and the shape that drives cost: number of creators to profile, number24 of searches, number of market-intel calls / expected refusal-ladder depth,25 thrifty vs thorough.26- **Budget cap** (optional) — a credit or dollar ceiling for this job or this27 session. If set, the guardian flags when a plan would exceed it.28- **Threshold for confirmation** (default: ~30 credits, matching the29 credit-modes pre-run convention) — over this, surface the estimate and ask30 before proceeding.31- **Job label** (optional) — client/campaign name for the chargeback ledger32 line.3334## The price index (ground truth — from conventions.md)3536| Call | Credits | $ @ $0.025/cr |37|---|---:|---:|38| `get_creator_profile` | 1 | $0.025 |39| `search_creators` | 2 | $0.05 |40| `count_creators` (free headline; 1-credit detail) | free | $0 |41| `query_market_intelligence` (each call AND each refusal-ladder retry) | 5 | $0.125 |42| profile fan-out of N | 1×N | $0.025×N |4344Pro grant, price, and pack pricing are defined in `${CLAUDE_PLUGIN_ROOT}/shared/conventions.md` — budget against your plan's monthly credit grant there, never a hardcoded number.4546## Flow4748This skill orchestrates accounting, not data tools.49501. **Estimate** — decompose the planned workflow into priced line items from51 the index and sum them for both thorough and thrifty paths. Show the52 arithmetic. Convert to dollars at $0.025/credit.53542. **Budget check** — if a cap was set, compare the thorough estimate to it.55 Under → green-light. Over → recommend the thrifty path (show its cost) or56 a reduced shape (smaller `limit`, profile only the final cut, cap ladder57 rungs), and only proceed past the cap on explicit user confirmation.58593. **Threshold gate** — if the estimate exceeds the confirmation threshold,60 present the credit-modes-style estimate line and wait for go-ahead.61624. **Track** — as the wrapped workflow runs (or after the user reports what63 ran), append actual line items to the session ledger. The estimate vs64 actual delta is itself a deliverable — it teaches the cost model.65665. **Report** — emit the ledger / chargeback log on request or at job end.6768If the harness exposes a durable workspace, persist the ledger there so it69survives within the engagement; otherwise hold it in session and say it's70session-scoped.7172## Deliverable7374Two artifacts depending on the ask.7576**Pre-run estimate:**7778```markdown79## Credit estimate — <workflow / skill name>80| Line item | Count | Credits | $ |81|---|---:|---:|---:|82| search_creators | 3 | 6 | $0.15 |83| get_creator_profile | 18 | 18 | $0.45 |84| query_market_intelligence (incl. ladder) | 4 | 20 | $0.50 |85| **Thorough total** | | **44** | **$1.10** |86| **Thrifty total** | | **~14** | **$0.35** |8788Budget cap: <cap or "none">. Status: <under / OVER by N cr — recommend thrifty>.89<If over threshold:> This exceeds your ~<threshold>-credit confirmation line —90say "go" to run thorough, or "thrifty" for the lean path.91```9293**Chargeback ledger:**9495```markdown96## Credit ledger — <session / date>97| # | Job label | Skill | Est. cr | Actual cr | $ | Notes |98|---|---|---|---:|---:|---:|---|99| 1 | Acme Q3 cast | brief-to-shortlist | 22 | 20 | $0.50 | 1 stale profile dropped |100| 2 | Acme Q3 price | fair-price-brief | 11 | 16 | $0.40 | +1 refusal-ladder rung |101| | | **Session total** | **33** | **36** | **$0.90** | |102103Plan balance: <if pro> ~<monthly Pro grant − running total> of the monthly Pro credit grant left (grant per `shared/conventions.md`).104Estimate accuracy this session: <actual vs est delta, with the one-line reason>.105```106107## Honesty rules108109- **Zero data credits.** This skill never calls the data tools; its own cost110 is 0 credits. Say so — its value is accounting, not data.111- **Price only from the published index.** Every line item maps to a112 conventions.md rate. Never invent a price; if a workflow's shape is113 unknown, give a range and label the assumption.114- **Refusal-ladder rungs are real credits.** Each market-intel retry is a115 fresh 5-credit call — estimates must include a likely-rungs assumption and116 name it (thin verticals cost more).117- **A plan gate is an upgrade, not a spend.** When a workflow includes a118 pro-only tool (market intelligence, enrichment, connections) on a plan that119 lacks it, the call returns a machine-readable **`upgrade` envelope** and costs120 **0 credits** — nothing is charged for a gated call. Log it as "available on121 Pro / upgrade to unlock" in the ledger, never as a failed or "unavailable"122 line item.123- **Estimates are estimates.** Actuals can exceed them (extra rungs, larger124 candidate sets); always reconcile estimate vs actual in the ledger so the125 user trusts the meter (credit-modes logging convention).126- **No data leaves this skill** — it sees only counts and labels, never127 profile contents, so PII (convention 7) is structurally not in scope.128129## Credit footprint1301310 data credits — this is a meta/accounting skill and makes no MCP data calls.132It prices and tracks the credits OTHER skills spend.