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/V-Songbird/foundryWrote 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/v-songbird/foundry/razor-v1)<a href="https://agentmods.dev/plugins/v-songbird/foundry/razor-v1"><img src="https://agentmods.dev/badge/plugins/v-songbird/foundry/razor-v1/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/v-songbird/foundry/razor-v1"><img src="https://agentmods.dev/badge/plugins/v-songbird/foundry/razor-v1.svg" alt="Reviewed on agentmods" width="80" height="20"></a>Grade A, and why
razor 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 today.
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.
This is a copy
100% identical to razor — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 53 lines — stays where its author put it; the contents beside it link to each section on GitHub.
{
"name": "razor",
"description": "YAGNI enforcement at the harness level for real engineering work — nudges toward the simplest solution and gates against unnecessary dependencies, file sprawl, and unchecked build growth.",
"license": "MIT",
"author": {
"name": "Victor Villegas",
"email": "[email protected]"
},
"homepage": "https://github.com/V-Songbird/razor",
"repository": "https://github.com/V-Songbird/razor",
"keywords": ["yagni", "token-optimization", "minimalism", "over-engineering", "hooks", "subagents", "dependency-guard", "lazy"],
"userConfig": {
"file_budget": {
"type": "number",
"title": "New-file budget per turn",
"description": "New files allowed in one turn before razor asks whether existing files already cover it. 0 disables the check.",
"default": 4,
"min": 0
},
"search_budget": {
"type": "number",
"title": "Post-edit search budget",
"description": "Extra searches allowed after the code is written before razor asks whether the question is already answered. 0 disables the check.",
"default": 1,
"min": 0
},
"dep_guard": {
"type": "boolean",
"title": "Dependency guard (installs)",
"description": "One forced reconsideration before a command installs a new dependency.",
"default": true
},
"import_guard": {
"type": "boolean",
"title": "Dependency guard (imports)",
"description": "One forced reconsideration before code imports a package that isn't in the project manifest.",
"default": true
},
"manifest_guard": {
"type": "boolean",
"title": "Dependency guard (manifest edits)",
"description": "One forced reconsideration before an edit adds a new package to package.json or requirements.txt directly.",
"default": true
},
"ledger": {
"type": "boolean",
"title": "End-of-session build check",
"description": "One \"is all of this needed?\" qWhat it installs
The manifest is a name and a version. 1 skill travel with it, and installing the plugin installs all of them — 45 tokens a session between them. Each is measured on its own page, and each can be installed alone.
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.
- today First seen · 53 lines scan A 84596a353693
razor is a plugin published in the GitHub repository V-Songbird/foundry (4 stars, last pushed today), 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. It is 100% identical to razor, differing in 0 lines, and is treated as a copy.
Other plugins, from other repositories
base
Essential Claude Code workflow and context engineering tools for productive development.
search-plus
Enhanced web search with multi-service fallback architecture (Tavily, Brave, Exa, Jina) and comprehensive error handling.
adhd
Shape and restructure the assistant's output for a reader with ADHD — action-first, low-friction, and digestible. adhd:shape is a standing session posture: lead with the concrete next action, number multi-step work, restate state across turns, cap and rank lists, give concrete time estimates, make wins visible, and…
desktop-notification
Alert you when Claude Code needs input — an audible terminal bell, an OSC 9 terminal notification, and an OS-native toast (macOS/Linux) on permission and idle prompts.
disk-hygiene
Context-aware disk hygiene for arbitrary directory trees: inventories orphaned and temporary artifacts, classifies evidence into review tiers, and offers exact-path cleanup only after a fresh safety preview and explicit per-tier approval. The target is read-only by default; OS-managed paths, links and mount points…
naming
Generates and evaluates fresh name candidates for anything — an identifier, file, module, skill, repo, or domain term — by distilling a structured context brief, fanning out blind, fresh-context generators from distinct lenses (responsibility-literal, moment-of-use, domain-lore), then scoring a shortlist against a…