core-dynamic-skills

Internal command support for dynamic Rust crate skill management. Use only when explicitly invoked by /sync-crate-skills, /clean-crate-skills, or…

INSTALLATION
npx skills add https://github.com/actionbook/rust-skills --skill core-dynamic-skills
Run in your project or agent environment. Adjust flags if your CLI version differs.

SKILL.md

Dynamic Skills Manager

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

Orchestrates on-demand generation of crate-specific skills based on project dependencies.

Concept

Dynamic skills are:

  • Generated locally at ~/.claude/skills/
  • Based on Cargo.toml dependencies
  • Created using llms.txt from docs.rs
  • Versioned and updatable
  • Not committed to the rust-skills repository

Trigger Scenarios

Prompt-on-Open

When entering a directory with Cargo.toml:

  • Detect Cargo.toml (single or workspace)
  • Parse dependencies list
  • Check which crates are missing skills
  • If missing: "Found X dependencies without skills. Sync now?"
  • If confirmed: run /sync-crate-skills

Manual Commands

  • /sync-crate-skills - Sync all dependencies
  • /clean-crate-skills [crate] - Remove skills
  • /update-crate-skill <crate> - Update specific skill

Execution Mode Detection

CRITICAL: Check if agent and command infrastructure is available.

Try to read: ../../agents/ directory

Check if /create-llms-for-skills and /create-skills-via-llms commands work.

Agent Mode (Plugin Install)

When full plugin infrastructure is available:

Architecture

Cargo.toml

    ↓

Parse dependencies

    ↓

For each crate:

  ├─ Check ~/.claude/skills/{crate}/

  ├─ If missing: Check actionbook for llms.txt

  │     ├─ Found: /create-skills-via-llms

  │     └─ Not found: /create-llms-for-skills first

  └─ Load skill

Workflow Priority

  • actionbook MCP - Check for pre-generated llms.txt
  • /create-llms-for-skills - Generate llms.txt from docs.rs
  • /create-skills-via-llms - Create skills from llms.txt

Sync Command

/sync-crate-skills [--force]
  • Parse Cargo.toml for dependencies
  • For each dependency:
  • Check if skill exists at ~/.claude/skills/{crate}/
  • If missing (or --force): generate skill
  • Report results

Inline Mode (Skills-only Install)

When agent/command infrastructure is NOT available, execute manually:

Step 1: Parse Cargo.toml

# Read dependencies

cat Cargo.toml | grep -A 100 '\[dependencies\]' | grep -E '^[a-zA-Z]'

Or use Read tool to parse Cargo.toml and extract:

  • [dependencies] section
  • [dev-dependencies] section (optional)
  • Workspace members (if workspace project)

Step 2: Check Existing Skills

# List existing skills

ls ~/.claude/skills/

Compare with dependencies to find missing skills.

Step 3: Generate Missing Skills

For each missing crate:

# 1. Fetch crate documentation

agent-browser open "https://docs.rs/{crate}/latest/{crate}/"

agent-browser get text ".docblock"

# Save content

# 2. Create skill directory

mkdir -p ~/.claude/skills/{crate}

mkdir -p ~/.claude/skills/{crate}/references

# 3. Create SKILL.md

# Use template from rust-skill-creator inline mode

# 4. Create reference files for key modules

agent-browser open "https://docs.rs/{crate}/latest/{crate}/{module}/"

agent-browser get text ".docblock"

# Save to ~/.claude/skills/{crate}/references/{module}.md

agent-browser close

WebFetch fallback:

WebFetch("https://docs.rs/{crate}/latest/{crate}/", "Extract API documentation overview, key types, and usage examples")

Step 4: Workspace Support

For Cargo workspace projects:

# 1. Parse root Cargo.toml for workspace members

cat Cargo.toml | grep -A 10 '\[workspace\]'

# 2. For each member, parse their Cargo.toml

for member in members; do

  cat ${member}/Cargo.toml | grep -A 100 '\[dependencies\]'

done

# 3. Aggregate and deduplicate dependencies

# 4. Generate skills for missing crates

Clean Command (Inline)

# Clean specific crate

rm -rf ~/.claude/skills/{crate_name}

# Clean all generated skills

rm -rf ~/.claude/skills/*

Update Command (Inline)

# Remove old skill

rm -rf ~/.claude/skills/{crate_name}

# Re-generate (same as sync for single crate)

# Follow Step 3 above for the specific crate

Local Skills Directory

~/.claude/skills/

├── tokio/

│   ├── SKILL.md

│   └── references/

├── serde/

│   ├── SKILL.md

│   └── references/

└── axum/

    ├── SKILL.md

    └── references/

Related Commands

  • /sync-crate-skills - Main sync command
  • /clean-crate-skills - Cleanup command
  • /update-crate-skill - Update command
  • /create-llms-for-skills - Generate llms.txt (Agent Mode only)
  • /create-skills-via-llms - Create skills from llms.txt (Agent Mode only)

Error Handling

ErrorCauseSolution
Commands not foundSkills-only installUse inline mode
Cargo.toml not foundNot in Rust projectNavigate to project root
docs.rs unavailableNetwork issueRetry or skip crate
Permission deniedDirectory issueCheck ~/.claude/skills/ permissions
BrowserAct

Let your agent run on any real-world website

Bypass CAPTCHA & anti-bot for free. Start local, scale to cloud.

Explore BrowserAct Skills →

Stop writing automation&scrapers

Install the CLI. Run your first Skill in 30 seconds. Scale when you're ready.

Start free
free · no credit card