Support enable/disable skill via config/api. (#9328)

In config.toml:
```
[[skills.config]]
path = "/Users/xl/.codex/skills/my_skill/SKILL.md"
enabled = false
```

API:
skills/list, skills/config/write
This commit is contained in:
xl-openai
2026-01-16 20:22:05 -08:00
committed by GitHub
parent 246f506551
commit ad8bf59cbf
15 changed files with 550 additions and 238 deletions

View File

@@ -251,7 +251,8 @@ impl Codex {
);
}
let user_instructions = get_user_instructions(&config, Some(&loaded_skills.skills)).await;
let enabled_skills = loaded_skills.enabled_skills();
let user_instructions = get_user_instructions(&config, Some(&enabled_skills)).await;
let exec_policy = ExecPolicyManager::load(&config.features, &config.config_layer_stack)
.await
@@ -2264,7 +2265,8 @@ mod handlers {
for cwd in cwds {
let outcome = skills_manager.skills_for_cwd(&cwd, force_reload).await;
let errors = super::errors_to_info(&outcome.errors);
let skills_metadata = super::skills_to_info(&outcome.skills);
let enabled_skills = outcome.enabled_skills();
let skills_metadata = super::skills_to_info(&enabled_skills);
skills.push(SkillsListEntry {
cwd,
skills: skills_metadata,