Routes Codex skill lifecycle requests by selecting one Skill Factory lane, mode, and handoff. Use when users ask to create a skill, skillify a workflow, fix or audit a skill, improve skill quality, analyze routing failures, install a skill, or decide whether to keep, merge, split, or retire skill guidance.
75
92%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Choose one Skill Factory lane before loading deeper instructions or editing files.
Route first, then load details. A good router narrows the work to one lane, keeps scope tight, and prevents accidental broad edits.
Do not use for ordinary product implementation, generic repo maintenance, or plugin package lifecycle work that belongs to plugin-factory.
| Request shape | Selected lane | Mode |
|---|---|---|
| create a skill, draft a new skill, new SKILL.md | .system/skill-creator | create |
| skillify this, save this workflow, make reusable guidance | skillify | capture |
| fix this skill, improve quality, repair evals, reduce token cost | skill-builder | harden |
| why is this skill failing, review skill health, merge or retire | skill-refactor | analyze |
| install skill, list skills, sync skill, prove runtime visibility | .system/skill-installer | install |
Explicit lane names win unless the user names multiple lanes or asks for an unsafe action.
next_handoff must use this shape when present:
lane: one of the Skill Factory lanesmode: the target lane modecondition: the concrete completion condition for the primary laneexpected_input: structured artifacts the target lane must receiveblocked_by: blockers that prevent the handoff, or an empty listIf a second lane is required and next_handoff is omitted, the route is
incomplete.
Return:
schema_version: 1
selected_lane: .system/skill-creator|skillify|skill-builder|skill-refactor|.system/skill-installer
mode: create|capture|harden|analyze|install
rationale: <one sentence tied to the request shape>
next_step: <specific skill or system lane to load next>
first_principles_check:
required: true|false
result: skill|docs|script|hook|validator|rule|answer|not_checked
blocked_by: nullselected_lane: skillify, mode: capture.selected_lane: skill-builder, mode: harden.selected_lane: skill-refactor, mode: analyze.selected_lane: .system/skill-installer, mode: install.Example return:
schema_version: 1
selected_lane: skill-builder
mode: harden
rationale: The user has an existing skill with Tessl and local audit findings.
next_step: Load skill-builder, patch the canonical target skill, then rerun strict audit and local external review.
first_principles_check:
required: false
result: not_checked
blocked_by: nullIf no single lane fits, return blocked_by with the ambiguity and the smallest question needed to route.
plugin-factory, not this router.Run python3 Infrastructure/scripts/validation-and-linting/check_plugin_active_archive_links.py --plugin skill-factory, python3 Infrastructure/scripts/validation-and-linting/check_skill_factory_system_overlays.py, bash Infrastructure/scripts/validation-and-linting/validate_skill_authoring_family.sh, and python3 Infrastructure/bin/ask skills external-review Plugins/skill-factory/skills/skill-factory-router --audit-level compat --json.
Fail fast: stop at the first failed required gate, classify it, and do not sync, commit, publish, or install until it is fixed or explicitly blocked.
references/Infrastructure/references/openai-style-plugin-design-contract.mdInfrastructure/references/first-principles-factory-gate.mdPlugins/skill-factory/references/operator-pattern-map.mdPlugins/skill-factory/references/live-deferred-context.md4c78f98
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.