Skip to main content

agent_core_runtime/skills/
mod.rs

1//! Agent Skills support for extended agent capabilities.
2//!
3//! This module implements the [Agent Skills](https://agentskills.io) open format,
4//! allowing agents to discover and use skills for extended capabilities.
5//!
6//! # Overview
7//!
8//! Skills are folders containing a `SKILL.md` file with YAML frontmatter and
9//! Markdown instructions:
10//!
11//! ```text
12//! my-skill/
13//! ├── SKILL.md          # Required: metadata + instructions
14//! ├── scripts/          # Optional: executable code
15//! ├── references/       # Optional: documentation
16//! └── assets/           # Optional: templates, resources
17//! ```
18//!
19//! # Usage
20//!
21//! ```rust,ignore
22//! use agent_core_runtime::skills::{SkillDiscovery, SkillRegistry};
23//!
24//! // Create discovery with default paths
25//! let discovery = SkillDiscovery::new();
26//!
27//! // Discover skills
28//! let registry = SkillRegistry::new();
29//! for result in discovery.discover() {
30//!     match result {
31//!         Ok(skill) => {
32//!             println!("Found skill: {}", skill.metadata.name);
33//!             registry.register(skill);
34//!         }
35//!         Err(e) => eprintln!("Error: {}", e),
36//!     }
37//! }
38//!
39//! // Generate XML for system prompt
40//! let xml = registry.to_prompt_xml();
41//! ```
42
43mod discovery;
44mod parser;
45mod registry;
46mod types;
47
48pub use discovery::SkillDiscovery;
49pub use parser::parse_skill_md;
50pub use registry::SkillRegistry;
51pub use types::{Skill, SkillDiscoveryError, SkillMetadata, SkillReloadResult};