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.
git clone --depth 1 https://github.com/ThrownLemon/claude-code-pluginsWrote 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/commands/thrownlemon/claude-code-plugins/setup)<a href="https://agentmods.dev/commands/thrownlemon/claude-code-plugins/setup"><img src="https://agentmods.dev/badge/commands/thrownlemon/claude-code-plugins/setup/github.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/commands/thrownlemon/claude-code-plugins/setup"><img src="https://agentmods.dev/badge/commands/thrownlemon/claude-code-plugins/setup.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00006 | $0.00620 |
| Opus 5.5 | $0.00002 | $0.00248 |
| Sonnet 5.5 | $0.00001 | $0.00124 |
| Haiku 4.5 | $0.00001 | $0.00062 |
Grade A, and why
setup 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 1mo 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.
What it actually says
You are verifying that the Cloudflare plugin environment is correctly set up.
Run the following checks:
-
Check cf CLI installation:
- Run
which cfor check ifcfcommand exists - If not found, inform the user: "The cf CLI is not installed or not in your PATH. Please install it from github.com/ThrownLemon/cloudflare-cli"
- If found, display the version by running
cf --version
- Run
-
Check credentials configuration (without printing secrets):
- Confirm
~/.cloudflare/.envexists:[ -f ~/.cloudflare/.env ] && echo present || echo missing - Confirm the required variable names are present without revealing values:
for k in CLOUDFLARE_API_TOKEN CF_API_KEY CF_API_EMAIL CF_ACCOUNT_ID; do grep -q "^${k}=" ~/.cloudflare/.env 2>/dev/null && echo "$k: set in .env" || echo "$k: not in .env" done - Optionally check whether the variables are in the process environment (
[ -n "$CLOUDFLARE_API_TOKEN" ]etc.) — again without echoing their values. - Never
catthe .env file or print its values. Only report whether each key name exists. - Recommended credential path — scoped API Token:
Set
CLOUDFLARE_API_TOKENto a token created at dash.cloudflare.com → My Profile → API Tokens. Scoped tokens grant only the permissions they need and can be revoked without rotating your global account. The legacyCF_API_KEY+CF_API_EMAILpair (Global API Key) gives full account access — avoid it for new setups.CF_ACCOUNT_IDis only required by commands that target account-level resources; it is optional for zone-scoped operations. - If neither source has the required variables, instruct the user:
"Cloudflare credentials not found. Add
CLOUDFLARE_API_TOKEN=<your-scoped-token>to~/.cloudflare/.env. If your cf CLI version requires the legacy keys, also addCF_API_KEYandCF_API_EMAIL, but prefer the token path."
- Confirm
-
Test API connectivity:
- Run
cf zones list --jsonto verify credentials work - If successful, display: "✓ API connectivity verified"
- If failed, display the error and suggest checking credentials
- Run
-
Generate a status summary:
Cloudflare Plugin Setup Status: cf CLI: [installed/not installed] Version: [version if available] Credentials: [configured/missing] API Connectivity: [working/failed] Zones accessible: [count of zones]
If any checks fail, provide clear instructions on how to fix the issue.
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.
- 1mo ago First seen · 51 lines · 6 tokens per session scan A 782b56780c9b
setup is a command published in the GitHub repository ThrownLemon/claude-code-plugins (2 stars, last pushed 4mo ago), licensed MIT. It adds 6 tokens to every session and 620 once invoked, about $0.0000 per session on Opus 5.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-08-31.
Other commands, from other repositories
cost-optimize
Reduce cloud costs across AWS, Azure, and GCP through rightsizing, reserved and spot capacity, storage tuning, and cost monitoring.
deploy
Deploy a frontend (React, Next.js, or static HTML) to a live URL on Butterbase.
env
Manage Vercel environment variables. Commands include list, pull, add, remove, and diff. Use to sync environment variables between Vercel and your local development environment.
firebase-publish
Create or reuse a Firebase project, configure Hosting, and deploy the current static site. Never deletes.
scan
Scan AWS account for cost optimization.
finops-status
Orientation — say where an opportunity or assignment sits in the five-step FinOps lifecycle and what unlocks next. Useful when a record has no active stage: an opportunity while its assignments do the work, an assignment whose plan has not been approved yet, or a rejected or archived assignment. Read-only; mutates…