Skip to content
Development
Skill

/core-fix-skill-docs

Internal maintenance support for checking and fixing generated Rust skill documentation references. Use only when explicitly invoked by /fix-skill-docs.

From plugin
rust-skills
1.4k38 skills11 agents21 commands1 hook
+1
Install
$ npx -y skills add zhanghandong/rust-skills --skill core-fix-skill-docs --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/core-fix-skill-docs

Context preview

The summary Claude sees to decide when to auto-load this skill.

Internal maintenance support for checking and fixing generated Rust skill documentation references. Use only when explicitly invoked by /fix-skill-docs.

SKILL.md

core-fix-skill-docs.SKILL.md
name: core-fix-skill-docs
description: "Internal maintenance support for checking and fixing generated Rust skill documentation references. Use only when explicitly invoked by /fix-skill-docs."
disable-model-invocation: true
argument-hint: "[crate_name] [--check-only]"
context: fork
agent: general-purpose

Fix Skill Documentation

> **Version:** 2.1.0 | **Last Updated:** 2025-01-27

Check and fix missing reference files in dynamic skills.

Usage

/fix-skill-docs [crate_name] [--check-only] [--remove-invalid]

**Arguments:**

  • `crate_name`: Specific crate to check (optional, defaults to all)
  • `--check-only`: Only report issues, don't fix
  • `--remove-invalid`: Remove invalid references instead of creating files

Execution Mode Detection

**CRITICAL: Check if agent infrastructure is available.**

This skill can run in two modes:

  • **Agent Mode**: Uses background agents for documentation fetching
  • **Inline Mode**: Executes directly using agent-browser CLI or WebFetch

---

Agent Mode (Plugin Install)

**When agent infrastructure is available, use background agents for fetching:**

Instructions

1. Scan Skills Directory

# If crate_name provided
skill_dir=~/.claude/skills/{crate_name}

# Otherwise scan all
for dir in ~/.claude/skills/*/; do
    # Process each skill
done

2. Parse SKILL.md for References

Extract referenced files from Documentation section:

## Documentation
- `./references/file1.md` - Description

3. Check File Existence

if [ ! -f "{skill_dir}/references/{filename}" ]; then
    echo "MISSING: {filename}"
fi

4. Report Status

=== {crate_name} ===
SKILL.md: OK
references/:
  - sync.md: OK
  - runtime.md: MISSING

Action needed: 1 file missing

5. Fix Missing Files (Agent Mode)

Launch background agent to fetch documentation:

Task(
  subagent_type: "general-purpose",
  run_in_background: true,
  prompt: "Fetch documentation for {crate_name}/{module} from docs.rs.
           Use agent-browser CLI to navigate to https://docs.rs/{crate_name}/latest/{crate_name}/{module}/
           Extract the main documentation and save to ~/.claude/skills/{crate_name}/references/{module}.md"
)

---

Inline Mode (Skills-only Install)

**When agent infrastructure is NOT available, execute directly:**

Step 1: Scan Skills Directory

# List all skills
ls ~/.claude/skills/

# Or check specific skill
ls ~/.claude/skills/{crate_name}/

Step 2: Parse SKILL.md for References

Read SKILL.md and extract all `./references/*.md` patterns:

# Using Read tool
Read("~/.claude/skills/{crate_name}/SKILL.md")

# Look for lines like:
# - `./references/sync.md` - Sync primitives
# - `./references/runtime.md` - Runtime configuration

Step 3: Check File Existence

# Check each referenced file
for ref in references; do
  if [ ! -f "~/.claude/skills/{crate_name}/references/${ref}.md" ]; then
    echo "MISSING: ${ref}.md"
  fi
done

Step 4: Report Status

Output format:

=== {crate_name} ===
SKILL.md: OK
references/:
  - sync.md: OK
  - runtime.md: MISSING

Action needed: 1 file missing

Step 5: Fix Missing Files (Inline)

For each missing file:

**Using agent-browser CLI:**

agent-browser open "https://docs.rs/{crate_name}/latest/{crate_name}/{module}/"
agent-browser get text ".docblock"
# Save output to ~/.claude/skills/{crate_name}/references/{module}.md
agent-browser close

**Using WebFetch fallback:**

WebFetch("https://docs.rs/{crate_name}/latest/{crate_name}/{module}/",
         "Extract the main documentation content for this module")

Then write the content:

Write("~/.claude/skills/{crate_name}/references/{module}.md", <fetched_content>)

Step 6: Update SKILL.md (if --remove-invalid)

If `--remove-invalid` flag is set and file cannot be fetched:

# Read current SKILL.md
Read("~/.claude/skills/{crate_name}/SKILL.md")

# Remove the invalid reference line
Edit("~/.claude/skills/{crate_name}/SKILL.md",
     old_string="- `./references/{invalid_file}.md` - Description",
     new_string="")

---

Tool Priority

1. **agent-browser CLI** - Primary tool for fetching documentation 2. **WebFetch** - Fallback if agent-browser unavailable 3. **Edit SKILL.md** - For removing invalid references (--remove-invalid only)

---

Examples

Check All Skills (--check-only)

/fix-skill-docs --check-only

# Output:
=== tokio ===
SKILL.md: OK
references/:
  - sync.md: OK
  - runtime.md: MISSING
  - task.md: OK

=== serde ===
SKILL.md: OK
references/:
  - derive.md: OK

Summary: 1 file missing in 1 skill

Fix Specific Crate

/fix-skill-docs tokio

# Fetches missing runtime.md from docs.rs
# Reports success

Remove Invalid References

/fix-skill-docs tokio --remove-invalid

# If runtime.md cannot be fetched:
# Removes reference from SKILL.md instead

---

Error Handling

| Error | Cause | Solution | |-------|-------|----------| | Agent not available | Skills-only install | Use inline mode | | Skills directory empty | No skills installed | Run /sync-crate-skills first | | docs.rs unavailable | Network issue | Retry or use --remove-invalid | | Permission denied | Directory issue | Check ~/.claude/skills/ permissions | | Invalid SKILL.md format | Corrupted skill | Re-generate skill |

Read more
Ships withrust-skills

AI-powered Rust development assistant with meta-cognition framework

Get the whole plugin

Other skills on rust-skills.