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/phil65/agentpool/sync-skills-specnpx skills add phil65/agentpool --skill sync-skills-specgit clone --depth 1 https://github.com/phil65/agentpoolWrote 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/skills/phil65/agentpool/sync-skills-spec)<a href="https://agentmods.dev/skills/phil65/agentpool/sync-skills-spec"><img src="https://agentmods.dev/badge/skills/phil65/agentpool/sync-skills-spec.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 | $0.00024 | $0.00548 |
| Opus 5 | $0.00012 | $0.00274 |
| Sonnet 5 | $0.00005 | $0.00110 |
| Haiku 4.5 | $0.00002 | $0.00055 |
Grade C, and why
sync-skills-spec 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 4d 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.
Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
rm -rf "$tmp" How it starts
The opening of the file, as written. The whole thing — 54 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Sync Skills Spec
Keep src/agentpool/skills/ aligned with the official Agent Skills Spec.
Steps
-
Clone the reference repo into a temporary directory:
tmp=$(mktemp -d) git clone --depth 1 https://github.com/agentskills/agentskills "$tmp/agentskills" -
Read the spec and reference implementation:
$tmp/agentskills/spec/— the formal specification documents$tmp/agentskills/implementations/— reference implementations (especially Python)- Focus on the
SkillPropertiesmodel, frontmatter fields, validation rules, and prompt generation
-
Compare with our implementation:
src/agentpool/skills/skill.py— ourSkillPydantic model, validators,parse_frontmatter(),to_prompt()src/agentpool/skills/registry.py— discovery and registration (our extension, not part of the spec)src/agentpool/skills/manager.py— pool-wide management (our extension)- Check for missing fields, changed validation rules, new spec requirements
-
Apply updates to our code:
- Add any new frontmatter fields to the
Skillmodel - Update validators to match spec changes (name format, length limits, allowed fields)
- Update
to_prompt()if the recommended XML format changed - Do NOT replace our registry/manager — those are agentpool-specific extensions
- Add any new frontmatter fields to the
-
Update the synced commit hash in
src/agentpool/skills/skill.py:- Get the current HEAD of the cloned repo:
git -C "$tmp/agentskills" rev-parse HEAD - Update the
SPEC_SYNCED_COMMITconstant to the new hash - This tracks which version of the spec we last synced against
- Get the current HEAD of the cloned repo:
-
Clean up:
rm -rf "$tmp"
Key differences from upstream
Our implementation extends the spec with:
- Async discovery via fsspec/UPath (supports GitHub, S3, etc.)
- Registry pattern (
SkillsRegistryextendingBaseRegistry) - Pool-wide management (
SkillsManagerwith async context manager) - YAML parsing via
yamling(notstrictyaml)
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.
- 4d ago First seen · 54 lines · 24 tokens per session scan C 051e59f1b43e
sync-skills-spec is a skill published in the GitHub repository phil65/agentpool (186 stars, last pushed 4mo ago), licensed MIT. It adds 24 tokens to every session and 548 once invoked, about $0.0001 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-30.
Other skills, from other repositories
braindb
Memory recall and save. Use at every conversation start and whenever the user shares personal information, expertise, project context, preferences, or decisions worth remembering long-term.
braindb-agent
Persistent memory across sessions via the BrainDB agent. Use at conversation start and whenever you need to recall what you know about the user or save new information to long-term memory.
braindb-custom-profile
How to author a BrainDB custom profile — prompt add/replace fragments and an optional keyless ingestor — that shapes wiki naming/structure and feeds a custom ingestion source, with zero effect on defaults when inactive.
complete-partial-pr
Evaluate and complete an issue or PR where the submitted patch fixes only a narrow symptom of the reported pain point. Use when a contribution may miss adjacent integration surfaces, provider/spec semantics, roundtrip behavior, tests, docs, or historical maintainer decisions.
edgeone skill scanner
Scan any agent skill for security risks before you install or use it. Powered by Tencent Zhuque Lab A.I.G (AI-Infra-Guard). 100% local static analysis — no file contents or credentials leave your device. Compatible with CodeBuddy, Cursor, Windsurf, Claude Code, OpenClaw and more. Triggers on: 这个 skill 安全吗, skill 安全扫描…
adding-a-provider-api-feature
Add a new provider API capability (prompt caching, strict/structured tool calling, thinking/reasoning effort, service tier, safety settings, logprobs, etc.) to Pydantic AI. Use when wiring a provider feature through the library — it enforces reasoning from the existing cross-provider abstraction before designing…