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/peerjakobsen/smartspenderWrote 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/plugins/peerjakobsen/smartspender/smartspender)<a href="https://agentmods.dev/plugins/peerjakobsen/smartspender/smartspender"><img src="https://agentmods.dev/badge/plugins/peerjakobsen/smartspender/smartspender/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/plugins/peerjakobsen/smartspender/smartspender"><img src="https://agentmods.dev/badge/plugins/peerjakobsen/smartspender/smartspender.svg" alt="Reviewed on agentmods" width="80" height="20"></a>Grade A, and why
smartspender 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
{
"name": "smartspender",
"version": "1.8.0",
"description": "Personal finance management for Danish bank customers. Sync transactions, analyze spending, detect subscriptions, and take action.",
"author": {
"name": "Peer Jakobsen",
"url": "https://github.com/peerjakobsen"
},
"repository": "https://github.com/peerjakobsen/SmartSpender",
"license": "MIT",
"keywords": [
"personal-finance",
"danish-banking",
"spending-analysis",
"subscriptions",
"budget",
"receipts",
"csv"
]
}
What it installs
The manifest is a name and a version. 13 skills, 19 commands travel with it, and installing the plugin installs all of them — 713 tokens a session between them. Each is measured on its own page, and each can be installed alone.
- Skill data-schemas A 26 tokens
- Skill document-parsing A 21 tokens
- Skill negotiation A 35 tokens
- Skill payslip-parsing A 33 tokens
- Skill categorization A 23 tokens
- Skill transaction-matching A 24 tokens
- Skill user-memory A 31 tokens
- Skill enable-banking-api A 25 tokens
- Skill spending-analysis A 33 tokens
- Skill email-receipt-scanning A 26 tokens
- Skill subscription-detection A 26 tokens
- Skill danish-finance-guide A 27 tokens
- Skill ui-ux-pro-max B 221 tokens
- Command advice A 15 tokens
- Command overview A 14 tokens
- Command payslip A 24 tokens
- Command sync A 10 tokens
- Command add-account A 14 tokens
- Command discover-standards A 0 tokens
- Command inject-standards A 0 tokens
- Command negotiate A 12 tokens
- Command receipt A 18 tokens
- Command receipt-email A 19 tokens
- Command shape-spec A 0 tokens
- Command analyze A 7 tokens
- Command plan-product A 0 tokens
- Command receipt-learn A 12 tokens
- Command command-format A 0 tokens
- Command index-standards A 0 tokens
- Command subscriptions A 9 tokens
- Command cancel A 8 tokens
- Command command-design A 0 tokens
What ships with it
1 file beside plugin.json 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.
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 · 21 lines scan A 5c8f8e540066
smartspender is a plugin published in the GitHub repository peerjakobsen/smartspender (5 stars, last pushed 8mo ago), licensed MIT. Its token cost is not measured: this kind of file is read by the harness, not the model. 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 plugins, from other repositories
slice-global
Read-only access to your Slice cap table, securities, ownership, compliance, workflows, valuations, and equity plans via the Slice MCP server.
bitwize-music
AI music generation workflow for Suno - album concepts, lyrics, prompts, mastering, release.
aceternity-ui
100+ animated React components (Aceternity UI) for Next.js with Tailwind. Use for hero sections, parallax, 3D effects, or encountering animation, shadcn CLI integration errors.
api-authentication
Secure API authentication with JWT, OAuth 2.0, API keys. Use for authentication systems, third-party integrations, service-to-service communication, or encountering token management, security headers, auth flow errors.
cloudflare-sandbox
Cloudflare Sandboxes SDK for secure code execution in Linux containers at edge. Use for untrusted code, Python/Node.js scripts, AI code interpreters, git operations.
csrf-protection
Implements CSRF protection using synchronizer tokens, double-submit cookies, and SameSite attributes. Use when securing web forms, protecting state-changing endpoints, or implementing defense-in-depth authentication.