MCPcopy Create free account
hub / github.com/AI45Lab/Code / build_effective_skill_registry

Function build_effective_skill_registry

core/src/agent_api/capabilities.rs:126–151  ·  view source on GitHub ↗
(
    agent_registry: Option<&SkillRegistry>,
    opts: &SessionOptions,
)

Source from the content-addressed store, hash-verified

124}
125
126pub(super) fn build_effective_skill_registry(
127 agent_registry: Option<&SkillRegistry>,
128 opts: &SessionOptions,
129) -> Arc<SkillRegistry> {
130 let base_registry = agent_registry
131 .map(|r| r.fork())
132 .unwrap_or_else(SkillRegistry::with_builtins);
133
134 if let Some(ref registry) = opts.skill_registry {
135 for skill in registry.all() {
136 base_registry.register_unchecked(skill);
137 }
138 }
139
140 for dir in &opts.skill_dirs {
141 if let Err(e) = base_registry.load_from_dir(dir) {
142 tracing::warn!(
143 dir = %dir.display(),
144 error = %e,
145 "Failed to load session skill dir - skipping"
146 );
147 }
148 }
149
150 Arc::new(base_registry)
151}
152
153fn register_task_capability(
154 code_config: &CodeConfig,

Callers 2

Calls 4

forkMethod · 0.80
allMethod · 0.80
register_uncheckedMethod · 0.80
load_from_dirMethod · 0.45

Tested by 1