All skills
Skillintermediate

Rename All Skills and Agents to Consistent `ce-` Prefix

Rename all 37 compound-engineering-owned skills and all 49 agents to use a consistent `ce-` hyphen prefix, eliminating namespace collisions with other plugins and removing the colon character that required filesystem sanitization. Agent files are renamed with `ce-` prefix within their existing category subdirs, and 3-segment fully-qualified references (`compound-engineering:<category>:<agent>`) ar

Claude Code Knowledge Pack7/10/2026

Overview

Rename All Skills and Agents to Consistent ce- Prefix

Overview

Rename all 37 compound-engineering-owned skills and all 49 agents to use a consistent ce- hyphen prefix, eliminating namespace collisions with other plugins and removing the colon character that required filesystem sanitization. Agent files are renamed with ce- prefix within their existing category subdirs, and 3-segment fully-qualified references (compound-engineering:<category>:<agent>) are simplified to <category>:ce-<agent> (drop plugin prefix, keep category). This is a cross-cutting mechanical rename touching skill directories, agent files, frontmatter, cross-references, converter source code, tests, and documentation.

Problem Frame

Generic skill names (setup, plan, review) collide when users install multiple Claude Code plugins. The current naming is inconsistent: 8 core workflow skills use ce: colon prefix while 33 others have no prefix. Agent references use verbose 3-segment format (compound-engineering:review:adversarial-reviewer). Standardizing on ce- eliminates collisions, aligns directory names with frontmatter names, and simplifies agent references. (see origin: docs/brainstorms/2026-03-27-ce-skill-prefix-rename-requirements.md)

Requirements Trace

  • R1. All owned skills AND agents adopt ce- hyphen prefix
  • R2. ce: colon prefix -> ce- hyphen prefix (e.g., ce:plan -> ce-plan)
  • R3. Unprefixed skills and agents get ce- prepended (e.g., setup -> ce-setup, repo-research-analyst -> ce-repo-research-analyst)
  • R4. git-* skills replace prefix with ce- (e.g., git-commit -> ce-commit)
  • R5. report-bug-ce normalizes to ce-report-bug
  • R6. agent-browser and rclone excluded (upstream)
  • R7. lfg and slfg excluded (memorable names), but internal references updated (R12)
  • R8. Skill/agent frontmatter name: must match; directories reflect new names
  • R9. All cross-references updated (slash commands, fully-qualified, prose, descriptions, intra-skill paths)
  • R10. Active documentation updated (README, AGENTS.md); historical docs left as-is
  • R11. Agent prompt files updated where they reference skill names
  • R11b. Skill prompt files updated where they reference agent names
  • R11c. Agent references compound-engineering:<category>:<agent> simplified to <category>:ce-<agent>
  • R12. lfg/slfg orchestration chains updated (skill AND agent invocations)
  • R13. Sanitization infrastructure preserved; add lint assertion for no-colon invariant
  • R14-R16. Tests pass, release:validate passes
  • R17. Codex converter hardcoded ce: checks updated
  • R18. Test fixtures updated appropriately
  • R19. Grep sanity check: new names correct, old names do not persist in active code

Scope Boundaries

  • Not removing sanitizePathName() (defense-in-depth for future colons)
  • Not adding backward-compatibility aliases (clean break)
  • Not updating historical docs in docs/
  • Not renaming agent-browser, rclone, lfg, slfg
  • All renames use git mv; fallback only with notification
  • Single commit for the entire change

Context & Research

Relevant Code and Patterns

  • src/parsers/claude.ts:108 — Skill name from frontmatter data.name, fallback to dir basename
  • src/utils/files.ts:84-86sanitizePathName() replaces colons with hyphens
  • src/converters/claude-to-codex.ts:180-195 — Hardcoded ce: prefix checks for canonical workflow skills
  • src/utils/codex-content.ts:75-86normalizeCodexName() for Codex flat naming
  • tests/path-sanitization.test.ts — Collision detection test loading real plugin

Institutional Learnings

  • docs/solutions/integrations/colon-namespaced-names-break-windows-paths-2026-03-26.md — Documents the colon/hyphen duality and three-layer sanitization (target writers, sync paths, converter dedupe sets). After this rename, the duality is eliminated for CE skills but sanitization stays for other plugins.
  • docs/solutions/codex-skill-prompt-entrypoints.md — Codex derives skill names from directory basenames. The isCanonicalCodexWorkflowSkill() function identifies which skills get prompt wrappers. After rename, ALL skills start with ce-, so prefix-based detection breaks — needs frontmatter-field-based detection instead.
  • docs/solutions/skill-design/beta-skills-framework.md — Validates that stale cross-references after rename cause routing bugs. Must search all SKILL.md files for old names after rename.

Key Technical Decisions

  • Codex canonical skill detection via frontmatter field: After rename, startsWith("ce-") matches ALL skills. Rather than a hardcoded allowlist (fragile, poor discoverability), add codex-prompt: true to the 8 workflow SKILL.md frontmatter files, extend ClaudeSkill type with codexPrompt?: boolean, and parse it in loadSkills(). The converter then checks skill.codexPrompt === true instead of name patterns. This follows the codebase grain (parser already extracts frontmatter fields) and naturally propagates when copying workflow skill templates. New workflow skills are discoverable because the field is right where the skill is defined.
  • workflows: alias mapping: toCanonicalWorkflowSkillName() currently produces ce:plan from workflows:plan. Update to produce ce-plan. The isDeprecatedCodexWorkflowAlias() check (startsWith("workflows:")) is unaffected.
  • Converter content-transformation is idempotent — no other converter code changes needed: All 6 converters with slash-command rewriting (Windsurf, Droid, Kiro, Copilot, Pi, Codex) use generic normalizeName() that replaces colons with hyphens via .replace(/[:\\s]+/g, "-"). So /ce:plan and /ce-plan both normalize to ce-plan — identical output. The 4 converters without slash-command rewriting (OpenClaw, Qwen, OpenCode, Gemini) pass skill content through untransformed. Only the Codex isCanonicalCodexWorkflowSkill() function needs updating.
  • Droid converter behavioral change (expected, beneficial): Droid's flattenCommandName() strips everything before the last colon: /ce:plan -> /plan. After rename, /ce-plan has no colon so it passes through as /ce-plan. This preserves the ce- prefix in Droid target output, which is an improvement. No code change needed — it happens automatically from the content change.
  • Test fixture strategy: Fixtures testing compound-engineering-specific behavior (Codex prompt wrappers, review skill contracts) update to ce-plan. Fixtures testing abstract colon handling (path-sanitization) change examples to non-CE names like other:skill to preserve coverage of the colon path.
  • Agent rename in place (no flattening): Category subdirs preserved for organization. Agent files renamed with ce- prefix within their category dir: agents/review/adversarial-reviewer.md -> agents/review/ce-adversarial-reviewer.md. References drop the compound-engineering: plugin prefix but keep category: compound-engineering:review:adversarial-reviewer -> review:ce-adversarial-reviewer.
  • Major version bump: This is a breaking change affecting all users; plugin version will bump major to signal it.
  • git mv required: All renames use git mv for history preservation per requirements. Fallback only with notification.
  • Single atomic commit: All directory renames, content changes, code changes, and test updates in one commit. Intermediate states would have broken tests and stale references.

Open Questions

Resolved During Planning

  • Codex isCanonicalCodexWorkflowSkill fix strategy: Use codex-prompt: true frontmatter field instead of prefix check or hardcoded allowlist. Follows the codebase grain, is self-documenting, and naturally propagates via skill template copying.
  • Other converter content-transformation: Verified all 6 converters with slash-command rewriting use generic normalizeName() — idempotent on colon/hyphen. No code changes needed beyond Codex isCanonicalCodexWorkflowSkill.
  • Commit strategy: Single commit. The PR is the review artifact.
  • Test fixtures for colon handling: Change ce:plan examples in path-sanitization tests to other:skill so colon sanitization is still tested without depending on CE skill names.
  • /sync stale reference in README: Clean up during documentation pass.
  • Cross-reference scope: Exhaustive inventory found 24 files with ~100+ replacements across 7 distinct reference patterns (see Unit 3).

Deferred to Implementation

  • Exact wording of the AGENTS.md "Why ce-?" rationale rewrite — depends on how the surrounding context reads after all name changes
  • Whether any additional agent files beyond the 5 identified contain skill name references — implementer should grep comprehensively

Implementation Units

  • Unit 1: Skill directory renames

Goal: Rename all 29 skill directories that need new names via git mv.

Requirements: R1, R3, R4, R5, R8

Dependencies: None (first unit)

Files:

  • git mv 29 directories under plugins/compound-engineering/skills/:
    • 4 git-* replacements: git-commit/ -> ce-commit/, git-commit-push-pr/ -> ce-commit-push-pr/, git-worktree/ -> ce-worktree/, git-clean-gone-branches/ -> ce-clean-gone-branches/
    • 1 normalization: report-bug-ce/ -> ce-report-bug/
    • 24 prefix additions: agent-native-architecture/ -> ce-agent-native-architecture/, agent-native-audit/ -> ce-agent-native-audit/, andrew-kane-gem-writer/ -> ce-andrew-kane-gem-writer/, changelog/ -> ce-changelog/, claude-permissions-optimizer/ -> ce-claude-permissions-optimizer/, deploy-docs/ -> ce-deploy-docs/, dhh-rails-style/ -> ce-dhh-rails-style/, document-review/ -> ce-document-review/, dspy-ruby/ -> ce-dspy-ruby/, every-style-editor/ -> ce-every-style-editor/, feature-video/ -> ce-feature-video/, frontend-design/ -> ce-frontend-design/, gemini-imagegen/ -> ce-gemini-imagegen/, onboarding/ -> ce-onboarding/, orchestrating-swarms/ -> ce-orchestrating-swarms/, proof/ -> ce-proof/, reproduce-bug/ -> ce-reproduce-bug/, resolve-pr-feedback/ -> ce-resolve-pr-feedback/, setup/ -> ce-setup/, test-browser/ -> ce-test-browser/, test-xcode/ -> ce-test-xcode/, todo-create/ -> ce-todo-create/, todo-resolve/ -> ce-todo-resolve/, todo-triage/ -> ce-todo-triage/
  • 8 ce: skills need NO directory rename (dirs already use hyphens: ce-brainstorm/, ce-plan/, etc.)

Approach:

  • Execute all git mv operations in sequence
  • The 4 excluded skills remain: agent-browser/, rclone/, lfg/, slfg/

Verification:

  • All 41 skill directories present with correct names
  • git status shows 29 renames tracked

  • Unit 1b: Agent file renames (in place)

Goal: Rename all 49 agent files with ce- prefix within their existing category subdirs.

Requirements: R1, R3, R8

Dependencies: None (can run in parallel with Unit 1)

Files:

  • git mv 49 agent files within their category subdirs: agents/<category>/<name>.md -> agents/<category>/ce-<name>.md
  • Category subdirs preserved: design/, docs/, document-review/, research/, review/, workflow/

Approach:

  • For each agent file: git mv agents/<category>/<name>.md agents/<category>/ce-<name>.md
  • See the complete agent rename map in the requirements doc for all 49 mappings

Verification:

  • 49 ce-*.md files across category subdirs
  • Category directory structure unchanged
  • git status shows 49 renames tracked

  • Unit 2: Frontmatter and description updates

Goal: Update the name: and description: fields in all 37 renamed skills' SKILL.md files. Add codex-prompt: true to the 8 workflow skills.

Requirements: R1, R2, R3, R4, R5, R8, R9, R17

Dependencies: Unit 1 (directories exist at new paths)

Files:

  • Modify: All 37 SKILL.md files in renamed skill directories
    • 8 ce: skills: change name: ce:X to name: ce-X in frontmatter
    • 29 others: change name: X to name: ce-X (with appropriate prefix rule)
    • Update description: fields that reference old skill names (confirmed: ce-work-beta references "ce:work", setup references "ce:review", ce-plan references "ce:brainstorm")
    • Add codex-prompt: true to frontmatter of the 8 workflow skills: ce-brainstorm, ce-compound, ce-compound-refresh, ce-ideate, ce-plan, ce-review, ce-work, ce-work-beta

Approach:

  • For each SKILL.md, edit the YAML frontmatter name: field
  • Search each description: field for references to old skill names and update
  • Add codex-prompt: true field to the 8 workflow skill frontmatter blocks
  • Use the rename map from the requirements doc as the authoritative mapping

Patterns to follow:

  • Frontmatter format: name: ce-plan (no colons)
  • Keep description: prose style consistent with existing descriptions

Test scenarios:

  • Every SKILL.md has a name: field matching its directory name
  • No name: field contains a colon character
  • Exactly 8 SKILL.md files have codex-prompt: true

Verification:

  • grep -r "^name: ce:" plugins/compound-engineering/skills/ returns zero results
  • Every name: matches its containing directory name
  • grep -rl "codex-prompt: true" plugins/compound-engineering/skills/ returns exactly 8 files

  • Unit 3: Intra-skill cross-reference updates

Goal: Update all skill-to-skill references inside SKILL.md content (not frontmatter). Exhaustive inventory: 20 SKILL.md files, ~100+ individual replacements across 7 reference patterns.

Requirements: R9, R12

Dependencies: Unit 2

Files:

  • Modify (20 SKILL.md files with cross-references):
    • skills/ce-plan/SKILL.md — ~8 /ce:work refs + 7 document-review backtick refs
    • skills/ce-brainstorm/SKILL.md — ~12 /ce:plan, /ce:work refs + 1 document-review ref
    • skills/ce-compound/SKILL.md — ~7 /ce:compound-refresh, /ce:plan refs
    • skills/ce-ideate/SKILL.md/ce:brainstorm, /ce:plan refs
    • skills/ce-review/SKILL.md — routing table refs + 2 todo-create backtick refs
    • skills/ce-work/SKILL.md/ce:plan, /ce:review + skill: git-worktree loader ref
    • skills/ce-work-beta/SKILL.md — same as ce-work + frontend-design backtick ref
    • skills/lfg/SKILL.md/ce:plan, /ce:work, /ce:review + /compound-engineering:todo-resolve, :test-browser, :feature-video
    • skills/slfg/SKILL.md — same patterns as lfg
    • skills/ce-worktree/SKILL.md/ce:review, /ce:work + 20 ${CLAUDE_PLUGIN_ROOT}/skills/git-worktree/ path refs + 2 call git-worktree skill self-refs
    • skills/ce-todo-create/SKILL.md/ce:review + todo-triage backtick ref + /todo-resolve, `/tod