agentsclimarketplace

Canonical root marketplace path normalization

Skill ychampion/cskill-agents/agents/codex/skills/canonical-root-marketplace-path-normalization

Normalize relative extension source paths against a canonical repo root so shared marketplace records stay stable across worktrees.From its SKILL.md

Install
npx -y skills add ychampion/cskill-agents --skill canonical-root-marketplace-path-normalization

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

1.7 KB, 281 tokens by cl100k_base, as published. Nobody here has run it

SKILL: Canonical-Root Marketplace Path Normalization

Domain: extensions-mcp Trigger: Use when project settings declare relative extension paths but the shared registry spans multiple worktrees or checkouts. Source Pattern: Distilled from reviewed shared-registry path normalization logic.

Core Method

Resolve relative local source paths against the repository's canonical root rather than the current worktree directory before comparing them to shared registry entries. This produces one stable identity for a shared record, prevents worktrees from overwriting each other with checkout-specific paths, and avoids dead paths when temporary worktrees disappear. Normalize before diffing so equivalent repo-relative settings are treated as the same source.

Key Rules

  • Normalize shared local paths against the canonical repo root, not the active worktree.
  • Run normalization before diff comparison so equivalent sources do not look like drift.
  • Preserve a valid existing entry when a transient worktree path is missing but the canonical source is still the same.

Example Application

If a repo declares ./plugins/internal, normalize it against the canonical checkout root so every worktree resolves to the same shared registry path.

Anti-Patterns (What NOT to do)

  • Do not stamp worktree-specific absolute paths into a user-global registry.
  • Do not treat equivalent repo-relative paths as true source changes.
  • Do not overwrite a valid shared entry with a dead temporary path.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.