feat: configuracion de skills en schema

Agregar SkillsCfg y SkillsToolCfg al config schema:

SkillsCfg (nivel agente):
- enabled: activar/desactivar skills
- path: directorio de skills (default: skills/)
- categories: filtro de categorias a cargar
- timeout: timeout de ejecucion de scripts

SkillsToolCfg (nivel tools):
- allowed_interpreters: allowlist de interpreters (bash, python3, etc.)

Permite configurar skills por agente de forma granular.
This commit is contained in:
2026-03-08 22:13:19 +00:00
parent 3638529468
commit 945415112d
+15
View File
@@ -18,6 +18,7 @@ type AgentConfig struct {
Resilience ResilienceCfg `yaml:"resilience"`
Storage StorageCfg `yaml:"storage"`
Memory MemoryCfg `yaml:"memory"`
Skills SkillsCfg `yaml:"skills"`
}
// ── Identity ──────────────────────────────────────────────────────────────
@@ -130,6 +131,7 @@ type ToolsCfg struct {
Memory MemoryToolCfg `yaml:"memory"`
Knowledge KnowledgeToolCfg `yaml:"knowledge"`
SharedKnowledge SharedKnowledgeToolCfg `yaml:"shared_knowledge"`
Skills SkillsToolCfg `yaml:"skills"`
}
type MatrixToolCfg struct {
@@ -478,6 +480,19 @@ type MemoryToolCfg struct {
Enabled bool `yaml:"enabled"`
}
// ── Skills ────────────────────────────────────────────────────────────────
type SkillsCfg struct {
Enabled bool `yaml:"enabled"` // enable skills system (default false)
SkillsPath string `yaml:"path"` // path to skills directory (default: "skills/")
Categories []string `yaml:"categories"` // filter: only load skills from these categories (empty = all)
Timeout time.Duration `yaml:"timeout"` // timeout for script execution (default: 60s)
}
type SkillsToolCfg struct {
AllowedInterpreters []string `yaml:"allowed_interpreters"` // allowlist for skill script execution (default: ["bash", "sh"])
}
// ── Special Agents ────────────────────────────────────────────────────────
// SpecialConfig is the root configuration for a special agent (no Matrix identity).