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 skills add KeyArgo/custodian-kernel --skill stripe-spendgit clone --depth 1 https://github.com/KeyArgo/custodian-kernelWrote 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/skills/keyargo/custodian-kernel/stripe-spend)<a href="https://agentmods.dev/skills/keyargo/custodian-kernel/stripe-spend"><img src="https://agentmods.dev/badge/skills/keyargo/custodian-kernel/stripe-spend.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/keyargo/custodian-kernel/stripe-spend"><img src="https://agentmods.dev/badge/skills/keyargo/custodian-kernel/stripe-spend.svg?style=web" alt="Reviewed on agentmods" width="80" height="15"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Excessive Agency · line 62 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
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.1 | $0.00028 | $0.00960 |
| Opus 5 | $0.00014 | $0.00480 |
| Sonnet 5 | $0.00006 | $0.00192 |
| Haiku 4.5 | $0.00003 | $0.00096 |
Grade A, and why
stripe-spend scanned grade A with 0 findings 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 5d 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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 89 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Stripe Spend (bounded authority)
Create a real Stripe PaymentIntent (test mode) when you decide to spend money on an action — for example, starting a monitored worker, buying alerting credits, or charging a customer for a completed job. Every call is logged to the authority ledger and checked against the current authority band before the request is sent.
You are operating under bounded authority, not unlimited spend. Read references/authority-bands.md
before your first spend decision this session.
Quick Reference
| Action | Command |
|---|---|
| Check current authority band + remaining budget | python3 scripts/authority.py status |
| Propose + execute an in-budget spend | python3 scripts/spend.py --amount 0.50 --description "..." |
| Propose a spend that exceeds the cap (escalates) | same command — the script decides, you don't pre-check |
| View the audit log | python3 scripts/authority.py log |
How spend.py decides
- Reads the current band's cap from
references/authority-bands.md(band state lives instate/authority.json). - If
amount <= cap - already_spent_this_band: executes the Stripe PaymentIntent immediately. This is an autonomous, in-budget action — no human needed. - If
amountwould exceed the remaining budget: the script does not call Stripe. It writes anescalation_requiredrecord to the audit log and exits with a message telling you to surface this to the human operator and wait for an explicit approve/deny before retrying with--approved-by <name>. - Every outcome (executed, escalated, denied) is appended to
state/audit_log.jsonl— never overwritten, never deleted. This is the evidence trail.
Retry behavior
The underlying OpenShell sandbox proxy can occasionally drop the first connection to
api.stripe.com (NET:FAIL immediately after NET:OPEN ALLOWED in the sandbox logs). This is a
transient proxy issue, not a policy or auth failure. scripts/spend.py already retries once
automatically after a 1s backoff before reporting failure — you do not need to retry manually.
What ships with it
16 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- policy.yaml 1008 B
- references/authority-bands.md 1.1 KB
- references/refund-policy.md 2.0 KB
- scripts/_core.py 15 KB runs code
- scripts/approve_v2.py 1.8 KB runs code
- scripts/approve.py 2.2 KB runs code
- scripts/authority.py 2.7 KB runs code
- scripts/earn.py 2.6 KB runs code
- scripts/execute.py 1.2 KB runs code
- scripts/kill_toggle.py 3.0 KB runs code
- scripts/notify.py 6.6 KB runs code
- scripts/recipes/__init__.py 709 B runs code
- scripts/recipes/status_alert.py 1.5 KB runs code
- scripts/refund.py 6.2 KB runs code
- scripts/spend_v2.py 4.0 KB runs code
- scripts/spend.py 6.4 KB runs code
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.
- 5d ago First seen · 89 lines · 28 tokens per session scan A e0d68fcde0c5
stripe-spend is a skill published in the GitHub repository KeyArgo/custodian-kernel (118 stars, last pushed 17d ago), licensed MIT. It adds 28 tokens to every session and 960 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
floe-guard
Know what every AI call really costs — floe-guard meters STT + TTS + LLM + telephony per call (Pipecat, LiveKit — Python & TypeScript), keeps a live ledger of real spend, and hard-stops the next turn before it crosses a USD ceiling. Free Coverage Score + 7-day history on connect. Use when an agent's spend must be seen…
risk-metrics-calculation
Calculate portfolio risk metrics including VaR, CVaR, Sharpe, Sortino, and drawdown analysis. Use when measuring portfolio risk, implementing risk limits, or building risk monitoring systems.
paypal-integration
Integrate PayPal payment processing with support for express checkout, subscriptions, and refund management. Use when implementing PayPal payments, processing online transactions, or building e-commerce checkout flows.
stripe-integration
Implement Stripe payment processing for robust, PCI-compliant payment flows including checkout, subscriptions, and webhooks. Use when integrating Stripe payments, building subscription systems, or implementing secure checkout flows.
gnt-check-action
Check a side-effectful action against this organization's approved gnt rules before taking it, and stop on a blocked or needshuman verdict.
billing
Use for refunds, disputed charges, invoices and any billing question.