Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Maintain CODEOWNERS file and team directories. Provides resolve-codeowners.js to annotate files with their owner team — useful to split a large PR by team. Use when working with "**/team-*/**" or splitting monolithic files.
.claude/skills/ledgerhq-codeownership/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | -49% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -25% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -32% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -5% | 0% |
| case-05 | ✗→✓ | ▲ Improved | -3% | 0% |
Use resolve-codeowners.js to annotate any list of files with their CODEOWNERS team — handy when splitting a large PR by team owner. The script finds ignore in the pnpm virtual store automatically (no extra install).
bash# From a git diff git diff --name-only HEAD~1 | node .agents/skills/codeownership/resolve-codeowners.js # Explicit file list node .agents/skills/codeownership/resolve-codeowners.js apps/ledger-live-desktop/src/foo.ts libs/env/src/bar.ts # Override CODEOWNERS location node .agents/skills/codeownership/resolve-codeowners.js --codeowners /path/to/CODEOWNERS <files...>
Output format (same columns as CODEOWNERS, but resolved to actual files):
apps/ledger-live-desktop/src/main/index.ts @ledgerhq/platform
apps/ledger-live-desktop/src/renderer/foo.ts @ledgerhq/wallet-xp
.github/workflows/e2e.yml @ledgerhq/wallet-ci @ledgerhq/qaa
random/unknown/file.xyz (no owner)Semantics: last-rule-wins; ownerless entries appear as (no owner).
[foo].ts into [foo]/team-[name]/*.ts/shared/feature-flags/src/flags/ contains team-coin-integration, team-engagement, team-live-devices, etc.
CODEOWNERS defines the owner for each of these:
**/team-coin-integration/ @ledgerhq/coin-integration
**/team-engagement/ @ledgerhq/engagement
**/team-live-devices/ @ledgerhq/live-devicesOther measured skills in the registry, with their headline benchmark lift.