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/nauta-ai/holsterWrote 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/nauta-ai/holster/holster)<a href="https://agentmods.dev/plugins/nauta-ai/holster/holster"><img src="https://agentmods.dev/badge/plugins/nauta-ai/holster/holster/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/nauta-ai/holster/holster"><img src="https://agentmods.dev/badge/plugins/nauta-ai/holster/holster.svg" alt="Reviewed on agentmods" width="80" height="20"></a>Grade A, and why
holster 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 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.
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": "holster",
"description": "Preflight security for AI-agent development. Run `holster guard .` to get a RUN verdict and a SHARE verdict on a repo before you hand it to an AI agent, commit it, or share it — catches live API keys, MCP servers that run unpinned code, and credential files missing from .gitignore. Local-first; the repo never leaves your machine. Not a password manager.",
"version": "0.1.0",
"mcpServers": {
"holster": {
"command": "uvx",
"args": ["holster-mcp"]
}
}
}
What it installs
The manifest is a name and a version. 1 skill travel with it, and installing the plugin installs all of them — 54 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.
- 2mo ago First seen · 12 lines scan A 4f9f2c491487
holster is a plugin published in the GitHub repository nauta-ai/holster (0 stars, last pushed 5mo 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.
holster compared with plugins from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| holsternauta-ai/holster | Plugin | 0 | 5mo ago | MIT | A | — | Claude Code |
| pad marketplacePerpetualSoftware/pad | Plugin | 203 | yesterday | Apache-2.0 | A | — | Claude Code |
| padPerpetualSoftware/pad | Plugin | 203 | yesterday | Apache-2.0 | A | — | Claude Code |
| paparatsIBazylchuk/paparats-mcp | Plugin | 34 | 3d ago | MIT | A | — | Claude Code, Cursor |
| paparatsIBazylchuk/paparats-mcp | Plugin | 34 | 3d ago | MIT | A | — | Cursor |
| paparatsIBazylchuk/paparats-mcp | Plugin | 34 | 3d ago | MIT | A | — | Gemini CLI |
| liansLians-ai/Lians | Plugin | 17 | 6d ago | Apache-2.0 | A | — | Claude Code |