Allow local overrides for skill implicit-invocation policy
What variant of Codex are you using?
codex-cli 0.146.0
What feature would you like to see?
Skills currently define whether they may be invoked automatically inagents/openai.yaml:
policy:
allow_implicit_invocation: false
This works well as a repository or skill-author default, but users cannot
override that policy locally without modifying the tracked openai.yaml file.
We want to ship a large collection of skills with implicit invocation disabled
by default while allowing individual users to opt selected skills into implicit
invocation. Different users work in different areas, so the appropriate
implicit skill set is personal rather than repository-wide.
Editing agents/openai.yaml locally has several drawbacks:
- It makes tracked repositories dirty.
- Local preferences can be committed accidentally.
- Upstream metadata changes can conflict with local policy changes.
.gitignorecannot suppress modifications to files already tracked.
Codex already supports per-skill local configuration through[[skills.config]]. Could this configuration support an optional
implicit-invocation override?
For example:
# ~/.codex/config.toml
[[skills.config]]
path = "/absolute/path/to/skill/SKILL.md"
allow_implicit_invocation = true
Suggested precedence:
- A local
skills.config.allow_implicit_invocationoverride, when present. - The default from
agents/openai.yaml. - The existing product default when neither is specified.
This should remain separate from the existing enabled setting:
[[skills.config]]
path = "/absolute/path/to/skill/SKILL.md"
enabled = false
enabled = false disables the skill entirely. By contrast,allow_implicit_invocation = false should prevent automatic selection while
preserving explicit $skill-name invocation.
This would let repositories publish conservative defaults while allowing each
user to customize implicit skill selection without modifying repository files.
Additional information
_No response_