Core Dynamic Skills

actionbook/rust-skills/skills/core-dynamic-skills

作者 actionbook5c40d3ad7851無授權條款1.5K 個星標收錄於 2026年10月8日更新於 2026年10月8日儲存庫6 週前更新

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

僅含說明AI & Agents
AI 產生的概覽

為 Cargo.toml 中列出的 Rust crate 相依性產生並管理本機代理技能。

功能
此技能負責視需求為專案 Cargo.toml 中的相依性建立針對個別 crate 的技能。它會解析相依性、檢查 ~/.claude/skills/ 底下哪些 crate 缺少技能,並利用 docs.rs 的文件產生缺少的技能,包含關鍵模組的參考檔案。它也提供同步、清理與更新指令,並在完整外掛基礎設施無法使用時提供內嵌備援模式。
適用情境
適用於在 Rust 專案中想為其 crate 相依性產生代理技能的情境。它設計為透過 /sync-crate-skills、/clean-crate-skills 或 /update-crate-skill 指令明確叫用,而非自動觸發。
執行需求
需要一個包含 Cargo.toml 的 Rust 專案、對 docs.rs 的網路存取,以及本機 ~/.claude/skills/ 目錄。代理模式依賴外掛的代理與指令基礎設施以及 actionbook MCP;內嵌模式使用 shell 指令、agent-browser 工具與 WebFetch 備援方案。此技能不附帶指令碼。

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:

  1. Detect Cargo.toml (single or workspace)
  2. Parse dependencies list
  3. Check which crates are missing skills
  4. If missing: "Found X dependencies without skills. Sync now?"
  5. 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

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

Sync Command

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

Inline Mode (Skills-only Install)

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

Step 1: Parse Cargo.toml

bash
# Read dependenciescat 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

bash
# List existing skillsls ~/.claude/skills/

Compare with dependencies to find missing skills.

Step 3: Generate Missing Skills

For each missing crate:

bash
# 1. Fetch crate documentationagent-browser open "https://docs.rs/{crate}/latest/{crate}/"agent-browser get text ".docblock"# Save content
# 2. Create skill directorymkdir -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 modulesagent-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:

bash
# 1. Parse root Cargo.toml for workspace memberscat Cargo.toml | grep -A 10 '\[workspace\]'
# 2. For each member, parse their Cargo.tomlfor 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)

bash
# Clean specific craterm -rf ~/.claude/skills/{crate_name}
# Clean all generated skillsrm -rf ~/.claude/skills/*

Update Command (Inline)

bash
# Remove old skillrm -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

來源與署名

來源:actionbook/rust-skills位於skills/core-dynamic-skills提交5c40d3a

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架