Files
Gitea-Tools/docs/workflow-skill-mount.md
sysadmin 44cf2a4ce8 feat: mount canonical gitea-workflow skill for Codex and MCP inventory (Closes #551)
Expose gitea-workflow / llm-project-workflow / git-pr-workflows as one
workflow router in mcp_list_project_skills, add preflight + Codex install
script, and document multi-runtime skill name parity.
2026-07-08 22:43:46 -04:00

2.1 KiB

Workflow skill mount across runtimes (#551)

Problem

Controller prompts require gitea-workflow, but:

  • Claude may load ~/.claude/skills/gitea-workflow
  • Codex often has no ~/.codex/skills/gitea-workflow
  • The portable package in-repo is skills/llm-project-workflow
  • mcp_list_project_skills historically listed operational guides only, not the workflow router

Sessions then either block incorrectly or proceed without the workflow wall.

Canonical names (must resolve to the same skill)

Name Use
gitea-workflow Primary controller / Codex skill name
llm-project-workflow Portable in-repo package name
git-pr-workflows Legacy alias

Source of truth: skills/llm-project-workflow/SKILL.md
In-repo alias stub: skills/gitea-workflow/SKILL.md

Codex install

From a branches/ worktree (or any clone of the repo):

./scripts/install-codex-workflow-skill.sh
# optional:
./scripts/install-codex-workflow-skill.sh --dry-run
./scripts/install-codex-workflow-skill.sh --skills-dir "$HOME/.codex/skills"

This symlinks the portable package under all three names. Restart Codex after install.

MCP discovery

  • mcp_list_project_skills includes gitea-workflow, llm-project-workflow, and git-pr-workflows.
  • mcp_get_skill_guide("<name>") returns the same router steps for each.
  • mcp_check_workflow_skill_preflight proves the in-repo skill file exists and reports Codex mount status.

Preflight rule

Before any git or Gitea mutation:

  1. Call mcp_check_workflow_skill_preflight.
  2. If blocked / workflow_skill_ready is false → BLOCKED + DIAGNOSE; do not mutate.
  3. Load the skill by any canonical name and follow the router.

Missing Codex mount alone does not block if the in-repo skill is present and loaded via MCP/docs; operators should still install the Codex symlink so prompt names resolve natively.

Controller prompts

Prefer:

Invoke skill gitea-workflow (alias of llm-project-workflow).

Do not require a name that is only available on one runtime.