Gardening Skills Wiki
Automates the maintenance of the skills wiki by validating links, checking naming conventions, and ensuring coverage in index files.
Install
mkdir -p .claude/skills/gardening-skills-wiki && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/19474" && unzip -o skill.zip -d .claude/skills/gardening-skills-wiki && rm skill.zipInstalls to .claude/skills/gardening-skills-wiki
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Maintain skills wiki health - check links, naming, cross-references, and coverageKey capabilities
- →Validate internal wiki links and resolve broken references
- →Enforce kebab-case naming conventions for skill directories
- →Verify presence of required frontmatter fields in skill files
- →Identify orphaned skills missing from category INDEX files
- →Check INDEX coverage for all skills and category links
- →Analyze search gaps to identify missing skill documentation
How it works
The tool executes a suite of diagnostic bash scripts that scan the wiki directory to validate link integrity, naming standards, and INDEX file synchronization. It identifies issues like backtick-wrapped links, relative paths, and orphaned files, providing a report for manual remediation.
Inputs & outputs
When to use Gardening Skills Wiki
- →Validate wiki documentation links
- →Check wiki index coverage
- →Analyze search gaps in skill documentation
About this skill
Gardening Skills Wiki
Overview
The skills wiki needs regular maintenance to stay healthy: links break, skills get orphaned, naming drifts, INDEX files fall out of sync.
Core principle: Automate health checks to maintain wiki quality without burning tokens on manual inspection.
When to Use
Run gardening after:
- Adding new skills
- Removing or renaming skills
- Reorganizing categories
- Updating cross-references
- Suspicious that links are broken
Periodic maintenance:
- Weekly during active development
- Monthly during stable periods
Quick Health Check
# Run all checks
~/.claude/skills/meta/gardening-skills-wiki/garden.sh
# Or run specific checks
~/.claude/skills/meta/gardening-skills-wiki/check-links.sh
~/.claude/skills/meta/gardening-skills-wiki/check-naming.sh
~/.claude/skills/meta/gardening-skills-wiki/check-index-coverage.sh
# Analyze search gaps (what skills are missing)
~/.claude/skills/meta/gardening-skills-wiki/analyze-search-gaps.sh
The master script runs all checks and provides a health report.
What Gets Checked
1. Link Validation (check-links.sh)
Checks:
- Backtick-wrapped
@links - backticks disable resolution - Relative paths like skills/ or skills/gardening-skills-wiki/~/ - should use skills/ absolute paths
- All
skills/references resolve to existing files - Skills referenced in INDEX files exist
- Orphaned skills (not in any INDEX)
Fixes:
- Remove backticks from @ references
- Convert skills/ and skills/gardening-skills-wiki/~/ relative paths to skills/ absolute paths
- Update broken skills/ references to correct paths
- Add orphaned skills to their category INDEX
- Remove references to deleted skills
2. Naming Consistency (check-naming.sh)
Checks:
- Directory names are kebab-case
- No uppercase or underscores in directory names
- Frontmatter fields present (name, description, when_to_use, version, type)
- Skill names use active voice (not "How to...")
- Empty directories
Fixes:
- Rename directories to kebab-case
- Add missing frontmatter fields
- Remove empty directories
- Rephrase names to active voice
3. INDEX Coverage (check-index-coverage.sh)
Checks:
- All skills listed in their category INDEX
- All category INDEX files linked from main INDEX
- Skills have descriptions in INDEX entries
Fixes:
- Add missing skills to INDEX files
- Add category links to main INDEX
- Add descriptions for INDEX entries
Common Issues and Fixes
Broken Links
❌ BROKEN: skills/debugging/root-cause-tracing
Target: /path/to/skills/debugging/root-cause-tracing/SKILL.md
Fix: Update the reference path - skill might have moved or been renamed.
Orphaned Skills
⚠️ ORPHANED: test-invariants/SKILL.md not in testing/INDEX.md
Fix: Add to the category INDEX:
- skills/gardening-skills-wiki/test-invariants - Description of skill
Backtick-Wrapped Links
❌ BACKTICKED: skills/testing/condition-based-waiting on line 31
File: getting-started/SKILL.md
Fix: Remove backticks - use bare @ reference
Fix: Remove backticks:
# ❌ Bad - backticks disable link resolution
`skills/testing/condition-based-waiting`
# ✅ Good - bare @ reference
skills/testing/condition-based-waiting
Relative Path Links
❌ RELATIVE: skills/testing in coding/SKILL.md
Fix: Use skills/ absolute path instead
Fix: Convert to absolute path:
# ❌ Bad - relative paths are brittle
skills/testing/condition-based-waiting
# ✅ Good - absolute skills/ path
skills/testing/condition-based-waiting
Naming Issues
⚠️ Mixed case: TestingPatterns (should be kebab-case)
Fix: Rename directory:
cd ~/.claude/skills/testing
mv TestingPatterns testing-patterns
# Update all references to old name
Missing from INDEX
❌ NOT INDEXED: condition-based-waiting/SKILL.md
Fix: Add to testing/INDEX.md:
## Available Skills
- skills/gardening-skills-wiki/condition-based-waiting - Replace timeouts with condition polling
Empty Directories
⚠️ EMPTY: event-based-testing
Fix: Remove if no longer needed:
rm -rf ~/.claude/skills/event-based-testing
Naming Conventions
Directory Names
- Format: kebab-case (lowercase with hyphens)
- Process skills: Use gerunds when appropriate (
creating-skills,testing-skills) - Pattern skills: Use core concept (
flatten-with-flags,test-invariants) - Avoid: Mixed case, underscores, passive voice starters ("how-to-")
Frontmatter Requirements
Required fields:
name: Human-readable namedescription: One-line summarywhen_to_use: Symptoms and situations (CSO-critical)version: Semantic version
Optional fields:
languages: Applicable languagesdependencies: Required toolscontext: Special context (e.g., "AI-assisted development")
Automation Workflow
After Adding New Skill
# 1. Create skill
mkdir -p ~/.claude/skills/category/new-skill
vim ~/.claude/skills/category/new-skill/SKILL.md
# 2. Add to category INDEX
vim ~/.claude/skills/category/INDEX.md
# 3. Run health check
~/.claude/skills/meta/gardening-skills-wiki/garden.sh
# 4. Fix any issues reported
After Reorganizing
# 1. Move/rename skills
mv ~/.claude/skills/old-category/skill ~/.claude/skills/new-category/
# 2. Update all references (grep for old paths)
grep -r "skills/gardening-skills-wiki/old-category/skill" ~/.claude/skills/
# 3. Run health check
~/.claude/skills/meta/gardening-skills-wiki/garden.sh
# 4. Fix broken links
Periodic Maintenance
# Monthly: Run full health check
~/.claude/skills/meta/gardening-skills-wiki/garden.sh
# Review and fix:
# - ❌ errors (broken links, missing skills)
# - ⚠️ warnings (naming, empty dirs)
The Scripts
garden.sh (Master)
Runs all health checks and provides comprehensive report.
Usage:
~/.claude/skills/meta/gardening-skills-wiki/garden.sh [skills_dir]
check-links.sh
Validates all @ references and cross-links.
Checks:
- Backtick-wrapped
@links (disables resolution) - Relative paths (
skills/orskills/gardening-skills-wiki/~/) - should beskills/ @reference resolution to existing files- Skills in INDEX files exist
- Orphaned skills detection
check-naming.sh
Validates naming conventions and frontmatter.
Checks:
- Directory name format
- Frontmatter completeness
- Empty directories
check-index-coverage.sh
Validates INDEX completeness.
Checks:
- Skills listed in category INDEX
- Categories linked in main INDEX
- Descriptions present
Quick Reference
| Issue | Script | Fix |
|---|---|---|
| Backtick-wrapped links | check-links.sh | Remove backticks from @ refs |
| Relative paths | check-links.sh | Convert to skills/ absolute |
| Broken links | check-links.sh | Update @ references |
| Orphaned skills | check-links.sh | Add to INDEX |
| Naming issues | check-naming.sh | Rename directories |
| Empty dirs | check-naming.sh | Remove with rm -rf |
| Missing from INDEX | check-index-coverage.sh | Add to INDEX.md |
| No description | check-index-coverage.sh | Add to INDEX entry |
Output Symbols
- ✅ Pass - Item is correct
- ❌ Error - Must fix (broken link, missing skill)
- ⚠️ Warning - Should fix (naming, empty dir)
- ℹ️ Info - Informational (no action needed)
Integration with Workflow
Before committing skill changes:
~/.claude/skills/meta/gardening-skills-wiki/garden.sh
# Fix all ❌ errors
# Consider fixing ⚠️ warnings
git add .
git commit -m "Add/update skills"
When links feel suspicious:
~/.claude/skills/meta/gardening-skills-wiki/check-links.sh
When INDEX seems incomplete:
~/.claude/skills/meta/gardening-skills-wiki/check-index-coverage.sh
Common Rationalizations
| Excuse | Reality |
|---|---|
| "Will check links manually" | Automated check is faster and more thorough |
| "INDEX probably fine" | Orphaned skills happen - always verify |
| "Naming doesn't matter" | Consistency aids discovery and maintenance |
| "Empty dir harmless" | Clutter confuses future maintainers |
| "Can skip periodic checks" | Issues compound - regular maintenance prevents big cleanups |
Real-World Impact
Without gardening:
- Broken links discovered during urgent tasks
- Orphaned skills never found
- Naming drifts over time
- INDEX files fall out of sync
With gardening:
- 30-second health check catches issues early
- Automated validation prevents manual inspection
- Consistent structure aids discovery
- Wiki stays maintainable
The Bottom Line
Don't manually inspect - automate the checks.
Run garden.sh after changes and periodically. Fix ❌ errors immediately, address ⚠️ warnings when convenient.
Maintained wiki = findable skills = reusable knowledge.
Prerequisites
Limitations
- →Requires manual remediation of reported errors and warnings
- →Does not automatically fix all identified issues
How it compares
Unlike manual inspection, this tool automates the detection of broken links and structural inconsistencies across the entire wiki to ensure consistent discoverability.
Compared to similar skills
Gardening Skills Wiki side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| Gardening Skills Wiki (this skill) | 0 | 9mo | Review | Beginner |
| notion-knowledge-capture | 10 | 8mo | No flags | Intermediate |
| feishu-doc | 14 | 5mo | No flags | Intermediate |
| openspec-continue-change | 4 | 5mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by obra
View all by obra →You might also like
notion-knowledge-capture
makenotion
Transforms conversations and discussions into structured documentation pages in Notion. Captures insights, decisions, and knowledge from chat context, formats appropriately, and saves to wikis or databases with proper organization and linking for easy discovery.
feishu-doc
openclaw
Feishu document read/write operations. Activate when user mentions Feishu docs, cloud docs, or docx links.
openspec-continue-change
studyzy
通过创建下一个产出物继续处理 OpenSpec 变更。当用户想要推进其变更、创建下一个产出物或继续其工作流程时使用。
kimi-cli-help
MoonshotAI
Answer Kimi Code CLI usage, configuration, and troubleshooting questions. Use when user asks about Kimi Code CLI installation, setup, configuration, slash commands, keyboard shortcuts, MCP integration, providers, environment variables, how something works internally, or any questions about Kimi Code CLI itself.
openspec-archive-change
studyzy
归档实验性工作流中已完成的变更。当用户想要在实现完成后最终确定并归档变更时使用。
feishu-perm
m1heng
Feishu permission management for documents and files. Activate when user mentions sharing, permissions, collaborators.