Skip to content

Implement v1 skills extension prompt injection#26167

Merged
jif-oai merged 3 commits into
mainfrom
jif/skills-ext-2
Jun 3, 2026
Merged

Implement v1 skills extension prompt injection#26167
jif-oai merged 3 commits into
mainfrom
jif/skills-ext-2

Conversation

@jif-oai
Copy link
Copy Markdown
Collaborator

@jif-oai jif-oai commented Jun 3, 2026

Why

The skills extension needs a real turn-time path before host, executor, or remote skills can be routed through it. The previous code was mostly a placeholder catalog/provider sketch, so there was no bounded available-skills fragment, no source-owned SKILL.md read, and no place for warnings or per-turn selection state to live.

This PR makes ext/skills the authority-preserving flow for listing candidate skills and injecting only explicitly selected main prompts, without adding more of that logic to codex-core.

What changed

  • Expands catalog entries with main_prompt, display path, short description, dependency metadata, enabled/prompt visibility flags, and authority/package-aware read requests.
  • Replaces the placeholder providers/* modules with SkillProviderSource and SkillProviders, routing list/read/search calls by source kind and surfacing provider failures as warnings.
  • Adds bounded available-skills rendering and SKILL.md main-prompt truncation before the fragments enter model context.
  • Resolves explicit skill selections from structured UserInput::Skill, skill-file mentions, skill://... paths, and plain $skill text mentions, then reads selected prompts through their owning provider.
  • Stores mutable per-thread skills config and per-turn catalog/selection/warning state.
  • Adds install_with_providers so tests and future host wiring can supply concrete providers.

Testing

  • Not run locally.
  • Added codex-rs/ext/skills/tests/skills_extension.rs coverage for available-catalog injection, selected prompt injection through the owning provider, and prompt-hidden skills that remain invokable.

@jif-oai jif-oai changed the title feat: v1 of skills extension Implement v1 skills extension prompt injection Jun 3, 2026
@jif-oai jif-oai merged commit 96d2d2f into main Jun 3, 2026
31 checks passed
@jif-oai jif-oai deleted the jif/skills-ext-2 branch June 3, 2026 14:24
@github-actions github-actions Bot locked and limited conversation to collaborators Jun 3, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant