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};