Skip to main content

Crate devboy_skills

Crate devboy_skills 

Source
Expand description

Procedural skills on top of the devboy-tools bundle.

This crate provides:

  • A SkillSource trait for pluggable skill backends
  • An EmbeddedSkillSource that ships baseline SKILL.md files inside the binary (via rust-embed)
  • The Skill / Frontmatter types, including YAML frontmatter parsing with a fixed required-field set and extensible unknown fields
  • A Catalog for filtering / counting skill summaries
  • Per-location install Manifests with SHA256-based three-state collision detection (classify)
  • The paired HistoricalHashes registry embedded at build time so that upgrade flows can distinguish “unchanged”, “historical-safe”, and “user-modified” files offline

The design decisions are captured, at the repository root, in docs/architecture/adr/ADR-012-skills-subsystem.md (architecture + CLI surface), ADR-013-skills-install-targets.md (install target resolution), and ADR-014-skills-lifecycle.md (manifest, three-state upgrade).

Re-exports§

pub use catalog::Catalog;
pub use catalog::canonical_skill_name;
pub use embedded::EmbeddedSkillSource;
pub use error::Result;
pub use error::SkillError;
pub use install::Agent;
pub use install::Environment;
pub use install::InstallOptions;
pub use install::InstallOutcome;
pub use install::InstallReport;
pub use install::InstallSpec;
pub use install::InstallTarget;
pub use install::LegacySkill;
pub use install::detect_installed_agents;
pub use install::install_skills_to_target;
pub use install::migrate_legacy_skills_at_target;
pub use install::remove_skills_from_target;
pub use install::resolve_targets;
pub use install::scan_legacy_skills_at_target;
pub use manifest::HistoricalHashes;
pub use manifest::HistoricalVersion;
pub use manifest::InstallState;
pub use manifest::InstalledFile;
pub use manifest::InstalledSkill;
pub use manifest::MANIFEST_FILE;
pub use manifest::MANIFEST_VERSION;
pub use manifest::Manifest;
pub use manifest::SkillHistory;
pub use manifest::classify;
pub use manifest::classify_path;
pub use manifest::sha256_hex;
pub use plugin_dedup::DEVBOY_PLUGIN;
pub use plugin_dedup::PluginId;
pub use plugin_dedup::is_claude_plugin_enabled;
pub use plugin_dedup::is_codex_plugin_enabled;
pub use skill::Category;
pub use skill::Frontmatter;
pub use skill::Skill;
pub use skill::SkillSummary;
pub use source::SkillSource;
pub use trace::Outcome as TraceOutcome;
pub use trace::Phase as TracePhase;
pub use trace::SessionMeta;
pub use trace::SessionTracer;
pub use trace::TraceRecord;
pub use trace::TraceTarget;
pub use trace::append_event;
pub use trace::create_session;
pub use trace::finalise_session;

Modules§

catalog
In-memory catalogue of skill summaries — supports filtering by category, fuzzy name search, and simple counting.
embedded
EmbeddedSkillSource — baseline skills compiled into the binary.
error
Error types for the skills subsystem.
install
Install target resolution plus the three-state install / upgrade flow.
manifest
Per-location manifest (.manifest.json) describing installed skills plus the embedded history of every previously-shipped SHA256.
plugin_dedup
Detect when a Claude Code / Codex plugin already provides our skills, so devboy onboard can skip re-installing into the same agent dir.
skill
Skill, frontmatter parsing, and category enumeration.
source
SkillSource trait — pluggable backends for skill discovery.
trace
Session traces for the self-feedback loop (ADR-015).