Skip to content

[Feature] Add multilingual keyword matching for Codex App skill auto-invocation #1341

@Mineru98

Description

@Mineru98

Problem

Ouroboros skills are currently described with English-only SKILL.md metadata. For example, core packaged skills use descriptions such as:

---
name: interview
description: "Socratic interview to crystallize vague requirements"
---

Codex documents that skills are available in the Codex CLI, IDE extension, and Codex App. It also documents two activation paths: explicit invocation and implicit invocation. The implicit path depends on matching the user's task against the skill description.

That creates a Codex App compatibility gap for Korean and other non-English users: a natural-language Korean prompt such as “요구사항을 먼저 정리해줘” may not reliably auto-select the interview skill because the discoverable trigger text is English-only.

This issue is about multilingual keyword/description matching for automatic skill selection. It is not about translating command names.

Why now

Codex App users often interact through natural-language prompts and visual skill/plugin surfaces rather than terminal-style ooo <skill> commands. If Ouroboros skills only expose English trigger text, non-English Codex App users must know and invoke the canonical English skill name manually.

Related context:

User / persona

  • Korean-speaking Codex App users who describe goals in Korean.
  • Non-English users who expect installed skills to be selected from localized natural-language intent.
  • Maintainers who need better auto-invocation without changing canonical commands.

Current behavior

  • Core Ouroboros skill description fields are English-only.
  • Codex implicit skill invocation depends on the skill description.
  • Ouroboros does not provide localized trigger keywords or localized descriptions for matching.
  • Users can still explicitly type canonical commands such as ooo interview, but that assumes they know the English skill name.

Desired behavior

Ouroboros should expose multilingual matching metadata so Codex App can auto-select the correct skill from non-English user prompts.

Examples:

  • Korean prompt “요구사항을 먼저 명확히 해줘” should be able to match interview.
  • Korean prompt “시드를 생성해줘” should be able to match seed.
  • Korean prompt “실행 결과를 평가해줘” should be able to match evaluate or qa depending on intent.

Canonical routing must remain unchanged:

  • ooo interview still invokes interview.
  • /ouroboros:interview still invokes interview.
  • MCP tool names and dispatch identifiers stay English/canonical.

Proposed solution

Add localized matching metadata for packaged skills while keeping canonical skill ids stable.

Implementation options to evaluate:

  1. Add localized trigger metadata beside the documented Codex App skill metadata surface, agents/openai.yaml.
  2. Generate runtime-specific Codex skill guidance that includes locale-specific trigger phrases.
  3. Extend Ouroboros' skill registry/packaging layer to emit localized descriptions or aliases for matching, while keeping command routing canonical.

Example concept:

# agents/openai.yaml or generated Codex-facing metadata
matching:
  localized_triggers:
    ko:
      - 요구사항을 정리해줘
      - 먼저 인터뷰해줘
      - 애매한 요구사항을 명확히 해줘

The exact metadata shape should be verified against current Codex App behavior before implementation. If Codex App does not directly consume custom localized matching fields, Ouroboros should document and generate the closest supported fallback.

Constraints

Non-goals

  • Translating full SKILL.md instruction bodies.
  • Translating ooo commands or slash prefixes.
  • Changing MCP dispatch contracts.
  • Replacing README/documentation translation workflows.
  • Supporting every language in the first implementation.

Alternatives considered

  • Translate canonical skill names.
    • Rejected: skill names are routing identifiers and collision-sensitive.
  • Only add translated display names.
    • Insufficient: this issue targets automatic keyword/intent matching, not only visible labels.
  • Only translate README/docs.
    • Insufficient: Codex App skill auto-selection depends on discoverable skill metadata.

Acceptance criteria

  • Ouroboros defines a multilingual matching metadata contract for packaged skills.
  • Korean trigger phrases exist for core skills such as interview, seed, run, evaluate, qa, and status.
  • English remains the canonical and fallback matching language.
  • ooo <skill>, /ouroboros:<skill>, and MCP dispatch behavior is unchanged.
  • Tests prove localized matching metadata does not rename or shadow canonical skill ids.
  • A Codex App compatibility note documents whether localized metadata is consumed directly or generated as fallback guidance.

References

Checklist

  • I searched existing issues and discussions first.
  • I explained the problem, not just the solution.
  • I included clear scope boundaries and non-goals.
  • I listed concrete acceptance criteria.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or meaningful improvementready-for-devStory ready to be picked up

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions