Getting it into your agent
There is no command for this one: it runs only inside a plugin, and the catalogue could not identify which plugin ships it. The source is linked below.
Wrote 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/instructions/punt-labs/punt-kit/claude-md)<a href="https://agentmods.dev/instructions/punt-labs/punt-kit/claude-md"><img src="https://agentmods.dev/badge/instructions/punt-labs/punt-kit/claude-md.svg" alt="Measured on agentmods" 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.04349 | $0.04349 |
| Opus 5 | $0.02174 | $0.02174 |
| Sonnet 5 | $0.00870 | $0.00870 |
| Haiku 4.5 | $0.00435 | $0.00435 |
Grade B, and why
punt-kit CLAUDE.md scanned grade B 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 5d 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.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
Scope options: `user` (default, `~/.claude/settings.json`), `project` How it starts
The opening of the file, as written. The whole thing — 291 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Agent Instructions
This project follows Punt Labs standards.
Scratch Files
Use .tmp/ at the project root for scratch and temporary files — never /tmp. The TMPDIR environment variable is set via .envrc so that tempfile and subprocesses automatically use it. Contents are gitignored; only .gitkeep is tracked.
Quality Gates
Run before every commit. Zero violations, zero errors, all tests green.
make check
The Makefile is the source of truth for what check means (make help lists targets).
Beads: Dual Role
punt-kit .beads/ tracks both project-specific work (punt-kit tooling, standards doc updates) and org-wide cross-project work (CI rollouts, security enablement, multi-repo changes). See the parent CLAUDE.md for the full placement scheme.
Plugin Lifecycle
punt-kit is both a Python package (punt CLI) and a Claude Code plugin
(punt@punt-labs on the marketplace). The plugin wraps the CLI with slash
commands (/punt init, /punt audit, /punt reconcile, etc.).
Key rules
- Never hand-edit plugin JSON config files (
installed_plugins.json,enabledPlugins, cache dirs). Useclaude pluginCLI commands or the/pluginslash command instead. - Plugin changes require a publish cycle: bump version in
plugin.json→ push → update marketplace catalog (punt-labs/claude-plugins) → user runs/plugin update. - Dev/prod isolation: the working tree uses
name: "punt-dev"so developers see bothpunt:*(marketplace) andpunt-dev:*(local) commands side by side. Launch withclaude --plugin-dir pluginfrom the repo root. - Can't run
claudeinside a session — ask the user to run plugin CLI commands in a separate terminal when needed.
Repository layout
The plugin surface — everything a marketplace install is meant to use — lives
under plugin/ (DES-025, DES-028):
| Path | Contents |
|---|---|
plugin/.claude-plugin/plugin.json |
Manifest. No mcpServers — punt is a prompt-and-command surface over the punt binary from PyPI. |
plugin/commands/ |
Slash commands (name.md + name-dev.md pairs). |
plugin/skills/ |
The auto playbook-executor skill. |
plugin/playbooks/ |
Playbook YAMLs the auto skill loads from ${CLAUDE_PLUGIN_ROOT}/playbooks/. |
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.
- 5d ago First seen · 291 lines · 4,349 tokens per session scan B 1ea54c7d6dbf
punt-kit CLAUDE.md is an instructions file published in the GitHub repository punt-labs/punt-kit (1 stars, last pushed 2d ago), licensed MIT. It adds 4,349 tokens to every session, about $0.0217 per session on Opus 5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other instructions, from other repositories
quarry CLAUDE.md
Claude Code instructions for punt-labs/quarry, covering quarry, mandatory reading, architecture, how a query works and how ingestion works.
beadle CLAUDE.md
Claude Code instructions for punt-labs/beadle, covering beadle, what beadle is, identity, no "pre-existing" excuse and standards.
vox AGENTS.md
AGENTS.md instructions for punt-labs/vox, covering agent instructions, quick reference and landing the plane (session completion).
quarry copilot-instructions.md
Copilot instructions for punt-labs/quarry, covering copilot code review instructions, what to focus on, what not to flag, do not suggest and context.
quarry python.instructions.md
Instructions for punt-labs/quarry, covering python review rules, construction, encapsulation, types and error handling.
prfaq AGENTS.md
AGENTS.md instructions for punt-labs/prfaq, covering agent instructions, quick reference and landing the plane (session completion).