telos_agent/knowledge/skills/
mod.rs1pub mod loader;
7pub mod registry;
8
9pub use loader::SkillLoader;
10pub use registry::SkillRegistry;
11
12#[derive(Debug, Clone)]
14pub struct Skill {
15 pub name: String,
16 pub description: String,
17 pub when_to_use: Option<String>,
18 pub prompt: String,
19 pub arguments: Vec<SkillArg>,
20 pub body: String,
21 pub source: SkillSource,
22}
23
24#[derive(Debug, Clone)]
26pub struct SkillArg {
27 pub name: String,
28 pub description: String,
29 pub required: bool,
30}
31
32#[derive(Debug, Clone, PartialEq, Eq)]
34pub enum SkillSource {
35 Bundled,
36 Managed,
37 Project,
38 User,
39 Plugin {
41 plugin_id: crate::integrations::plugin::PluginId,
42 },
43}