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/technicalpickles/pickled-claude-plugins/capturenpx skills add technicalpickles/pickled-claude-plugins --skill capturegit clone --depth 1 https://github.com/technicalpickles/pickled-claude-pluginsWhat 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.00201 | $0.02676 |
| Opus 5 | $0.00101 | $0.01338 |
| Sonnet 5 | $0.00040 | $0.00535 |
| Haiku 4.5 | $0.00020 | $0.00268 |
Grade A, and why
capture 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 2d 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.
How it starts
The opening of the file, as written. The whole thing — 198 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Capture
Write a note into the vault from a source the user hands you. One arc, five steps: search → read the primary source → create through sb → leave it in the inbox → offer connections.
This is the dominant vault interaction. Do not decompose it into separate asks; the user saying "read this and make a note" means all five steps, and the connect step in particular will not happen unless this skill runs it.
See references/note-format.md for frontmatter and body shape. See ../obsidian/references/sb-cli.md for the full sb command surface.
Step 0: Locate the vault
npx @techpickles/sb vault info
npx @techpickles/sb config qmd-collection
Read the vault's own CLAUDE.md if you haven't this session. Vault-specific policy (destinations,
status vocabulary, disambiguation rules) overrides the defaults here.
Step 1: Search before creating - never skip this
Run a lex + vec pair through the qmd MCP tools, not the shell. (mcp__qmd__query is the
working path; shelling out to qmd hits Metal-init failures under the sandbox.)
mcp__qmd__query
searches: [{type: 'lex', query: '<topic terms>'},
{type: 'vec', query: '<what the note would say>'}]
collection: <from sb config qmd-collection>
intent: '<why you are searching>'
rerank: false # CPU-only box, reranking is not worth the latency here
Show the user what already exists - path + score + snippet - before anything gets written. Often the right move is extending a note, not minting one. If a result is a strong match, say so and ask which way to go instead of quietly creating a duplicate.
When search comes up empty
A miss is not proof the note is absent. In order:
- Basename is the stable identity. Notes get routed between folders constantly. Search the
basename across the whole vault (
Glob/Grep) before concluding anything is missing. - Check both inboxes.
10-19 System & Capture/11 Inbox & triage/and10-19 System & Capture/11 Inbox/are separate folders with the same JD code.sb inbox listonly reads the first. - The note may genuinely not exist. Say that plainly and offer to start one.
What ships with it
9 files beside SKILL.md 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.
- evals/eval_config.yaml 1.6 KB
- evals/README.md 5.5 KB
- evals/results/2026-08-14-no-pointer.json 2.4 KB
- evals/results/2026-08-14-pointer-scoped-to-create.json 4.5 KB
- evals/results/2026-08-14-pointer-widened.json 4.5 KB
- evals/scenarios/no-route-offer/scenario.yaml 6.6 KB
- evals/trigger_eval.py 8.2 KB runs code
- evals/trigger-evals.json 4.0 KB
- references/note-format.md 3.9 KB
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.
- 2d ago First seen · 198 lines · 201 tokens per session scan A aa3bda955740
capture is a skill published in the GitHub repository technicalpickles/pickled-claude-plugins (10 stars, last pushed 5d ago), licensed MIT. It adds 201 tokens to every session and 2,676 once invoked, about $0.0010 per session on Opus 5. 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 skills, from other repositories
aip-tracker
Track Airflow Improvement Proposal (AIP) implementation progress by comparing Confluence specs against codebase evidence. Use when asked to assess, report on, or compare AIP status.
html-ppt-hermes-cyber-terminal
OpenDesign + BYOK: choosing and wiring your own model, hands-on — cost, quality, and the routing decision. Built as a decision-grade AI literacy deck for engineers, IT, applied-AI teams.
development
开发语言能力索引。Python、Go、Rust、TypeScript、Java、C++、Shell。当用户提到编程、开发、代码、语言时路由到此。.
devops
DevOps 能力索引。Git、测试、DevSecOps、数据库。当用户提到 DevOps、CI/CD、Git、测试时路由到此。.
post-build-flow
Handles workflow verification and setup after build-workflow succeeds, or when the message contains workflow-verification-follow-up or workflow-setup-required. Load after direct builds, when verificationReadiness requires action, or on orchestrator verify/setup follow-up turns.
n8n:nathan
Deploy a temporary n8n test instance (or generate a local docker run command) via the internal "Nathan" bot, from the repo instead of Slack. Use after opening a PR to offer the user a live test instance, or whenever someone asks to spin up / deploy a test instance for a branch.