Skip to content

bug: project canonical Engineer skill IDs for legacy flat installs #920

Description

@kaitranntt

Summary

Native Claude and Codex plugins both apply the ck plugin namespace to bare skill IDs. The legacy flat-copy path does not, so it needs an explicit destination projection after Engineer canonicalizes source frontmatter.

Root cause

Keeping name: ck:scout in canonical source preserves legacy invocation but Codex resolves it as ck:ck:scout. Changing canonical source to name: scout fixes both native plugins but would expose bare /scout in supported legacy installs unless the CLI transforms the copied destination.

Acceptance

  • Legacy Engineer copies rewrite bare name: X to name: ck:X exactly once.
  • Already-prefixed payloads remain unchanged for backward compatibility.
  • Plugin staging copies canonical source unchanged.
  • Destination projection is limited to Engineer skills and preserves frontmatter formatting/content.
  • Tests cover bare, already-prefixed, missing/invalid frontmatter, repeated install/update, and native staging non-mutation.
  • The compatibility change ships before the paired Engineer payload update in claudekit/claudekit-engineer#864.

Parent: claudekit/claudekit-engineer#681

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingkit-engineerClaudeKit Engineer

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions