ai-skill-scout
goejgo/AI-Skill-Scout
INSTALL
npx skills add goejgo/AI-Skill-ScoutRequires npx skills — the open source skill installer.
SKILL_DESCRIPTION
Skill Scout
Continuous skill acquisition pipeline for AI assistants: discover → evaluate → adopt → package → install.
Skills are SKILL.md files with YAML frontmatter that extend an AI assistant's capabilities. They're distributed as .skill files (zip archives) and installed through the platform's skills UI. This skill provides a systematic framework for finding them in community repositories, vetting them for quality and security, packaging them, and managing a local library.
Directory Layout
Create this structure in your workspace:
skill-library/
incoming/ — Pulled from sources, awaiting review
vetted/ — Reviewed and approved, organized by domain:
finance/ — Investment, trading, due diligence
dev/ — Development tools, debugging, architecture
science/ — Research methodology, writing, peer review
data/ — Analysis, visualization, databases
process/ — Workflows, estimation, incident response
communication/ — Writing, stakeholder comms, documentation
testing/ — TDD, verification, evaluation
rejected/ — Declined with documented reasons
archive/ — Retired skills kept for reference (not actively loaded)
logs/ — Scout run history and decisions
zips/ — Packaged .skill files ready for installation
skill-scout/ — This skill (meta-skill)
Domain subdirectories are optional — you can start flat and reorganize later. The inventory script handles both layouts.
Pre-flight Checks
Run BEFORE any Scout or Vet workflow:
1. Environment Awareness Snapshot
Scan your current environment for existing capabilities before scouting. Any new candidate must not duplicate what's already covered.
For claude.ai users, check these installed layers:
/mnt/skills/public/— Anthropic public skills (docx, pdf, pptx, xlsx, frontend-design, etc.)/mnt/skills/examples/— Anthropic example skills (skill-creator, mcp-builder, web-artifacts-builder, theme-factory, etc.)/mnt/skills/user/— Your installed user skills
For other platforms, check:
- Platform built-in skills (e.g., Claude Code's built-ins, Cowork's
.skills/skills/) - Installed plugins and their bundled skills
Then run scripts/inventory.py to see your vetted library.
2. Cull Pass Check
Check when you last ran the cull workflow. If more than 90 days, consider culling before adding new skills — dead weight accumulates and the model landscape changes fast.
Workflows
| User Intent | Workflow |
|---|---|
| Find / check for new skills | → Scout |
| Evaluate skills in incoming/ | → Vet |
| Prepare a vetted skill for installation | → Package |
| Retire outdated skills from vetted/ | → Cull |
| Check what's available | → run scripts/inventory.py |
Scout (Discovery)
Search sources for new skills. Maintain your source registry in references/sources.md.
- Run Pre-flight Checks
- For each tracked source, fetch the current skill listing (README, catalog, or directory listing)
- Compare candidates against your full pipeline — check
vetted/,incoming/, ANDrejected/to avoid re-pulling - Redundancy scan for each candidate:
- Check against ALL vetted skills and all environment layers
- If >70% purpose overlap with any existing skill → flag as redundant, do NOT pull into incoming
- Log reason for skipping in scout report
- Usefulness review for every non-redundant candidate:
- Identify 1–3 closest existing skills by purpose
- Ask: Would loading this skill meaningfully improve the AI's output on tasks in its domain?
- If strictly better than an existing vetted skill → recommend replacing the old one
- If equivalent coverage → skip, log "not an improvement over [existing]"
- If genuinely new capability → proceed
- For each skill that passes both checks:
- Create
incoming/<skill-name>/SKILL.md - Add YAML frontmatter:
name,description,source(URL),trust_tier(1-3) - Preserve any bundled resources the skill depends on
- Create
- Log run:
logs/scout-YYYY-MM-DD.mdwith sources checked, findings, decisions, skips - Report: what's new, what looks promising, what needs vetting, what was skipped and why
Vet (Evaluate & Decide)
Evaluate skills in incoming/ against the checklist in references/vetting.md.
- Mandatory file audit first. Run
find <skill-directory> -type fand account for every file — bundled files are the primary attack surface. - Check every non-markdown file:
- Scripts (
.py,.sh,.js,.ts) → read every line, understand what each does - Config files (
.json,.yaml) → check for fields like"command":,"exec":,"eval":indicating code execution - Binary files → reject unless clearly a legitimate asset (image, font)
- Scripts (
- Redundancy re-check: Confirm the skill still adds value (environment may have changed since scouting)
- Score against the 5-dimension checklist (Structure, Value, Quality, Security, Adaptability — 1–5 each, 25 total)
- For complex multi-step skills: If you have access to the
skill-creatorskill, use its eval loop to test the skill against representative prompts before adopting — qualitative testing beats checklist scoring alone - Decision:
- Score ≥ 20 → Adopt. Copy to correct domain subdirectory in
vetted/, remove fromincoming/ - Score 15–19 → Adopt with modifications. Document changes in
MODIFICATIONS.md, copy tovetted/<domain>/ - Score < 15 → Reject. Create
REJECTION.mdwith scores and reasons, move torejected/
- Score ≥ 20 → Adopt. Copy to correct domain subdirectory in
- Human gate: Skills containing ANY executable code cannot be auto-adopted. Flag with full file listing and wait for human approval.
- Explain every decision
Package (Prepare for Installation)
Convert a vetted skill into an installable .skill file.
A .skill file is a zip archive containing the skill directory. It's what the platform's Skills UI expects for installation.
- Confirm skill is in
vetted/<domain>/<skill-name>/ - Copy to a writable temp location to avoid permissions issues:
/tmp/<skill-name>/ - Run the packager (see
scripts/package_skill.py):
Or use Anthropic's official packager if available:python3 scripts/package_skill.py /tmp/<skill-name>/ ./zips/python -m scripts.package_skill <path/to/skill-folder> ./zips/ - The resulting
<skill-name>.skillfile lands inzips/ - Install through the platform Skills UI — Claude cannot install directly
Batch packaging: To package all vetted skills at once, run package_skill.py without a target argument (if your version supports it) or loop over the vetted/ directory.
Load (Session Bootstrap)
Identify and load vetted skills relevant to the current task.
- Run
scripts/inventory.py <skill-library-path>to list available skills - Read YAML frontmatter from each skill in
vetted/to get names and descriptions - Match skill descriptions against the current task domain
- For matched skills, read the full SKILL.md body into context
- Report which skills were loaded and why
Principle: Skills share the context window. Load only what's relevant. Three to five skills per session is typical; more than seven is likely too many.
Update (Check for Upstream Changes)
Periodically re-check adopted skills against their source versions.
- For each skill in
vetted/with asourcefield in its frontmatter, fetch the current version - Compare against the local copy — look for meaningful changes, not just whitespace
- If updated: pull to
incoming/, re-vet with the full checklist (pay extra attention to newly added files or code), then replace the vetted version if it passes - Log all update checks in
logs/update-YYYY-MM-DD.md
Cull (Retire Obsolete Skills)
Periodic review to drop skills that no longer earn their place.
- Run
scripts/inventory.pyfor the full current inventory - For each skill, apply the retirement test:
- Has a newer/better skill superseded it (in vetted/ or in platform built-ins)?
- Has the underlying model improved enough to make the skill unnecessary?
- Is this domain still relevant to your actual work?
- Propose retirements with reasoning — human approves before anything moves
- Retired skills: move to
archive/(keep for reference) orrejected/(permanently dropped) with documented reason - Note the cull date so the pre-flight check stays accurate
Trust Tiers
| Tier | Source Type | Vetting Required | |------|-----------|-----------------| | 1 | Platform vendor official repos | Structure check only. Adopt unless environment-incompatible. | | 2 | High-reputation, actively maintained (10k+ stars) | Full 25-point checklist. Likely needs modifications for your environment. | | 3 | Individual repos, social media shares, unknown origin | Deep vet. All files read line-by-line. Assume untrusted. |
Star counts are social proof, not security audits. A compromised maintainer can push malicious updates to a trusted repo. Trending skills get more scrutiny, not less.
Rules
- Never execute scripts from unvetted skills
- Prefer methodology skills (plain markdown) over executable skills — safer and more portable
- Skills with executable code require human approval before adoption
- Log every scout run and every vetting decision — the audit trail matters
- When modifying community skills, document every change in
MODIFICATIONS.md - One skill, one purpose — if a community skill does too much, split it or reject it
- Re-vet adopted skills if their upstream source reports a security incident
- Place adopted skills in the correct domain subdirectory, not at
vetted/root - Skills must be packaged as
.skillfiles before installation —vetted/is the library, not the install location - Always run pre-flight checks before scouting
Reference Files
references/sources.md— Source registry template with community examplesreferences/vetting.md— Full security audit procedure and 25-point scoring checklistscripts/inventory.py— Skill inventory scannerscripts/package_skill.py— Single and batch.skillpackager
Last indexed: 6/16/2026
COMMENTS(0)
NO_COMMENTS_YET. BE_THE_FIRST.
SIGN_IN_TO_LEAVE_A_COMMENT
[SIGN_IN]