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 agentmods add skills/23ag1/completely/initnpx skills add 23ag1/completely --skill initgit clone --depth 1 https://github.com/23ag1/completelyWhat 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 | $0.00075 | $0.01210 |
| Opus 5 | $0.00037 | $0.00605 |
| Sonnet 5 | $0.00015 | $0.00242 |
| Haiku 4.5 | $0.00007 | $0.00121 |
Grade C, and why
completely:init scanned grade C 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 yesterday.
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.
Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
`echo '{"tool_input":{"command":"rm -rf /"}}' | bash <guard-dangerous.sh>; echo exit=$?` (expect exit=2) How it starts
The opening of the file, as written. The whole thing — 75 lines — stays where its author put it; the contents beside it link to each section on GitHub.
You are scaffolding the claude-harness project thin layer into the current repo. The
heavy logic (hooks, evaluator agent) ships with the plugin/global install; this only adds
the small per-project pieces. Never overwrite an existing file without asking (unless
the user passed --force).
Steps
-
Locate the repo root (
git rev-parse --show-toplevel, else cwd) and detect the stack:pyproject.toml/setup.cfg→ Python (commands:ruff check,mypy,pytest)package.json→ JS/TS (read itsscripts; commands likelyeslint .,tsc --noEmit,vitest run/jest)go.mod→ Go;Cargo.toml→ Rust. Record the real lint/typecheck/test commands.
-
Create
.claude/and.claude/harness/if missing. -
Write
.claude/DEFINITION_OF_DONE.md. Copy the harness template. Locate it under the installed plugin (try${CLAUDE_PLUGIN_ROOT}/templates/DEFINITION_OF_DONE.md, then~/.claude/harness/core/); if you can't find it, regenerate it from the canonical content you know (default-FAIL checklist). Fill in the detected stack's commands. -
Merge the harness rules into the project
CLAUDE.md. IfCLAUDE.mdexists, append theCLAUDE.harness.mdsnippet (between its<!-- claude-harness -->markers) — do not duplicate if already present. If noCLAUDE.md, create a minimal one with the snippet. Fill in the real project commands you detected in step 1. -
Project quality command (optional). If the repo already has an aggregate check script (e.g.
scripts/check.sh, aMakefilechecktarget, or apackage.jsoncheckscript), create.claude/harness/quality-gate.local.shthat delegates to it — this makes the harnessquality-gatehook reuse the project's own gate instead of guessing. Make it executable. If there is no such script, skip this (the hook's built-in stack detection handles it). -
Confirm hook activation. If the plugin is installed, the gates are already active globally — say so. Otherwise tell the user to run
install.sh --project <repo>(manual path). -
Report exactly what you created/changed and what you skipped (and why). Suggest a one-line verification:
echo '{"tool_input":{"command":"rm -rf /"}}' | bash <guard-dangerous.sh>; echo exit=$?(expect exit=2)
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.
- yesterday First seen · 75 lines · 75 tokens per session scan C 3a09cfc8ecf1
completely:init is a skill published in the GitHub repository 23ag1/completely (5 stars, last pushed 2mo ago), licensed MIT. It adds 75 tokens to every session and 1,210 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
hive.chart-creation-foundations
Required reading whenever any chart tool is available. Teaches the one-tool embedding contract (call chartrender → live chart appears in chat AND a downloadable PNG lands in the queen session dir), the ECharts (data viz) vs Mermaid (structural diagrams) decision, the BI/financial-grade aesthetic baseline (no…
browser-edge-cases
SOP for debugging browser automation failures on complex websites. Use when browser tools fail on specific sites like LinkedIn, Twitter/X, SPAs, or sites with Shadow DOM.
openai-whisper-api
Transcribe audio via OpenAI Audio Transcriptions API (Whisper).
perf-code-paths
Use when mapping code paths, entrypoints, and likely hot files before profiling.
compare-harnesses
Diff two scaffolded harnesses (ADR-031). Reports manifest meta drift + host list + per-file fingerprint changes (added/removed/changed). Exits 0 IDENTICAL, 1 DRIFT, 2 missing manifest. Use --bundle for the ADR-031 schema-1 JSON envelope.
repo-genome
7-section readiness scorecard for a LOCAL repo. Reports repo type + agent topology + MCP risk + test confidence + release readiness + recommended harness plan + scorecard. Exit 0 ready, 1 needs-work, 2 blocked. --json for the 6-field scorecard, --bundle for the ADR-031 schema-1 envelope.