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 Yesterday-AI/skills --skill butler-deploygit clone --depth 1 https://github.com/Yesterday-AI/skillsWrote 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/yesterday-ai/skills/butler-deploy)<a href="https://agentmods.dev/skills/yesterday-ai/skills/butler-deploy"><img src="https://agentmods.dev/badge/skills/yesterday-ai/skills/butler-deploy/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/skills/yesterday-ai/skills/butler-deploy"><img src="https://agentmods.dev/badge/skills/yesterday-ai/skills/butler-deploy.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.00057 | $0.01169 |
| Opus 5.5 | $0.00023 | $0.00468 |
| Sonnet 5.5 | $0.00011 | $0.00234 |
| Haiku 4.5 | $0.00006 | $0.00117 |
Grade A, and why
butler-deploy scanned grade A 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 2mo 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -L -o butler.zip https://broth.itch.ovh/butler/linux-amd64/LATEST/archive/default How it starts
The opening of the file, as written. The whole thing — 137 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Butler Deploy
Push HTML5 game builds to itch.io with the butler CLI. Butler does delta uploads (only changed files after the first push) and the game is live the moment the push completes.
When to use
- First-time publish of a web build to itch.io
- Updating an existing itch.io page with a new build
- Wiring an itch.io deploy step into CI
Prerequisites
1. Install butler (one-time, per machine)
# macOS
brew install butler
# Linux
curl -L -o butler.zip https://broth.itch.ovh/butler/linux-amd64/LATEST/archive/default
unzip butler.zip
mv butler /usr/local/bin/butler
# Windows
scoop install butler
# or download from https://itchio.itch.io/butler
2. Authenticate (one-time, per machine)
butler login
# Opens browser → authorize → return to terminal.
For CI: set BUTLER_API_KEY instead (generate at
https://itch.io/user/settings/api-keys). No butler login needed.
3. Create the itch.io page (one-time, in browser)
Butler refuses the first push if the target page does not exist.
- https://itch.io/dashboard → Create new project
- Settings:
- Kind: HTML
- Viewport size: match your build (e.g. 1280×720)
- "This file will be played in the browser": checked
- Save as Draft (publish after verifying the first push).
After the page exists, all future deploys are fully scripted.
Core command
butler push <build-dir> <user>/<game>:<channel> --userversion <version>
| Argument | Example | Meaning |
|---|---|---|
<build-dir> |
dist/ |
local directory to upload |
<user>/<game> |
acme/spacelander |
itch.io target |
<channel> |
html5 |
upload channel (html5, windows, linux, osx, …) |
--userversion |
1.4.2 |
stamps the upload (optional but recommended) |
Example:
butler push dist/ acme/spacelander:html5 --userversion 1.4.2
Common patterns
Build then push
Wire build + push together — pick whichever fits your stack:
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.
- 2mo ago First seen · 137 lines · 57 tokens per session scan A c7186342d91b
butler-deploy is a skill published in the GitHub repository Yesterday-AI/skills (2 stars, last pushed 1mo ago), licensed MIT. It adds 57 tokens to every session and 1,169 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
butler-deploy compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| butler-deployYesterday-AI/skills | Skill | 2 | 1mo ago | MIT | A | 57 | Claude Code |
| threejs-animationcalesthio/OpenMontage | Skill | 78k | 5d ago | AGPL-3.0 | A | 40 | Claude Code, Codex |
| threejs-geometrycalesthio/OpenMontage | Skill | 78k | 5d ago | AGPL-3.0 | A | 46 | Claude Code, Codex |
| threejs-fundamentalscalesthio/OpenMontage | Skill | 78k | 5d ago | AGPL-3.0 | A | 51 | Claude Code, Codex |
| threejs-world-generationcalesthio/OpenMontage | Skill | 78k | 5d ago | AGPL-3.0 | A | 100 | Codex |
| sound-effectscalesthio/OpenMontage | Skill | 78k | 5d ago | AGPL-3.0 | A | 51 | Claude Code, Codex |
| character-animation-qacalesthio/OpenMontage | Skill | 78k | 5d ago | AGPL-3.0 | A | 31 | Claude Code, Codex |