{"_id":"@barney-media/ai-skills","_rev":"6-031a2e841417bf22c0f04d58915da097","name":"@barney-media/ai-skills","dist-tags":{"latest":"0.3.0"},"versions":{"0.1.0":{"name":"@barney-media/ai-skills","version":"0.1.0","license":"Apache-2.0","_id":"@barney-media/ai-skills@0.1.0","maintainers":[{"name":"fabian-barney","email":"fabian.barney@barney-media.com"}],"homepage":"https://github.com/fabian-barney/ai-skills#readme","bugs":{"url":"https://github.com/fabian-barney/ai-skills/issues"},"bin":{"ai-skills":"dist/cli.js"},"dist":{"shasum":"fa57a68e188d4fecbbb81f1c1de4fb18d9288109","tarball":"https://registry.npmjs.org/@barney-media/ai-skills/-/ai-skills-0.1.0.tgz","fileCount":169,"integrity":"sha512-zBpkRzf9lnkoL/5693axKDC6gQypPQk7O1MXVLYvCz+Jo4LBklViVwUFze8XrydbgwReD66BwhFrrb9YiiWGFg==","signatures":[{"sig":"MEYCIQCJTzCtFzNPZ8K0vzD+/VjqHget56aEKkcPKCWl/CBR0wIhAITx3XZTs9ZFD37+nEEog8ipHQlfbxihbakVS94wraVo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":313826},"type":"module","engines":{"node":">=20.11"},"gitHead":"378dc651493fea31cd0546cf228030e97acbea81","scripts":{"test":"tsc -p tsconfig.json && vitest run","build":"tsc -p tsconfig.json","lint:md":"markdownlint-cli2 \"**/*.md\" \"!**/node_modules/**\" --config .markdownlint.json","prepack":"node tools/validate-catalog.mjs && tsc -p tsconfig.json","validate":"node tools/validate-catalog.mjs","pack:dry-run":"npm pack --dry-run","quality:crap":"tsc -p tsconfig.json && vitest run --config vitest.crap.config.ts","quality:cognitive":"tsc -p tsconfig.json && vitest run --config vitest.cognitive.config.ts"},"_npmUser":{"name":"fabian-barney","email":"fabian.barney@barney-media.com"},"repository":{"url":"git+https://github.com/fabian-barney/ai-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Canonical AI skill catalog and installer CLI package.","directories":{},"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.1.2","devDependencies":{"vitest":"^4.1.6","typescript":"^6.0.3","@types/node":"^24.12.3","markdownlint-cli2":"^0.22.1","@vitest/coverage-v8":"^4.1.6","@barney-media/crap-typescript-vitest":"^0.3.0","@barney-media/cognitive-typescript-vitest":"^0.1.1"},"_npmOperationalInternal":{"tmp":"tmp/ai-skills_0.1.0_1779223179816_0.02648247674201243","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@barney-media/ai-skills","version":"0.2.0","license":"Apache-2.0","_id":"@barney-media/ai-skills@0.2.0","maintainers":[{"name":"fabian-barney","email":"fabian.barney@barney-media.com"}],"homepage":"https://github.com/fabian-barney/ai-skills#readme","bugs":{"url":"https://github.com/fabian-barney/ai-skills/issues"},"bin":{"ai-skills":"dist/cli.js"},"dist":{"shasum":"2f2f456489601dddb43926c08a4e133c00ae4527","tarball":"https://registry.npmjs.org/@barney-media/ai-skills/-/ai-skills-0.2.0.tgz","fileCount":178,"integrity":"sha512-Z7zJFahvP+oOK3Gi3IEpqm4DwbZu6xzP0wfiLf0kQVeu2pARAQtYSKDYB6TZSikIWSoy9t9G7rYivL3DlJaYCw==","signatures":[{"sig":"MEUCIQDuO7r1jF4sNN2TzqwS58JTOWQsWsSlXCuBT/qG4LYfVwIgWc7Surar0WdaXkn2V8/PgHOO9VV0e4SgyCO4ToH0A1Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@barney-media%2fai-skills@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":350820},"type":"module","engines":{"node":">=22.12.0"},"gitHead":"97477d025ae608ac04b97cbc40c06185448fa0ec","scripts":{"test":"tsc -p tsconfig.json && vitest run","build":"tsc -p tsconfig.json","lint:md":"markdownlint-cli2 \"**/*.md\" \"!**/node_modules/**\" --config .markdownlint.json","prepack":"node tools/validate-catalog.mjs && tsc -p tsconfig.json","validate":"node tools/validate-catalog.mjs","pack:dry-run":"npm pack --dry-run","quality:crap":"tsc -p tsconfig.json && vitest run --config vitest.crap.config.ts","quality:cognitive":"tsc -p tsconfig.json && vitest run --config vitest.cognitive.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:cc0c5ec3-c278-4a7f-83a0-bf6d00a5a06e"}},"repository":{"url":"git+https://github.com/fabian-barney/ai-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Canonical AI skill catalog and installer CLI package.","directories":{},"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.1.2","devDependencies":{"vitest":"^4.1.6","typescript":"^6.0.3","@types/node":"^24.12.3","markdownlint-cli2":"^0.22.1","@vitest/coverage-v8":"^4.1.6","@barney-media/crap-typescript-vitest":"^0.3.0","@barney-media/cognitive-typescript-vitest":"^0.1.1"},"_npmOperationalInternal":{"tmp":"tmp/ai-skills_0.2.0_1779389219173_0.534640436628486","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@barney-media/ai-skills","version":"0.2.1","license":"Apache-2.0","_id":"@barney-media/ai-skills@0.2.1","maintainers":[{"name":"fabian-barney","email":"fabian.barney@barney-media.com"}],"homepage":"https://github.com/fabian-barney/ai-skills#readme","bugs":{"url":"https://github.com/fabian-barney/ai-skills/issues"},"bin":{"ai-skills":"dist/cli.js"},"dist":{"shasum":"5ad6cfec4ef4d5e5c77a6a47c413260497dd27cc","tarball":"https://registry.npmjs.org/@barney-media/ai-skills/-/ai-skills-0.2.1.tgz","fileCount":178,"integrity":"sha512-MPizWgAr2RyIMWZYsKixTfFdnk6XqNvyyekoHS+RS0i1WyssuEVOe42lnhu/eOUcsIYNsTBeOoYcNthS/bcaSg==","signatures":[{"sig":"MEQCIGlvxzLDQV8izFpOwERaT1/hnMJJTgU9wuPxCP2Ed3fdAiAi3jAlEv1DtnqbCOZ6bIckmH1oyU3RyW7XYc4XXOUE2w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@barney-media%2fai-skills@0.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":361695},"type":"module","engines":{"node":">=22.12.0"},"gitHead":"2a211fd25aea86031f00b0e0c0b25b3a9d783392","scripts":{"test":"tsc -p tsconfig.json && vitest run","build":"tsc -p tsconfig.json","lint:md":"markdownlint-cli2 \"**/*.md\" \"!**/node_modules/**\" --config .markdownlint.json","prepack":"node tools/validate-catalog.mjs && tsc -p tsconfig.json","validate":"node tools/validate-catalog.mjs","pack:dry-run":"npm pack --dry-run","quality:crap":"tsc -p tsconfig.json && vitest run --config vitest.crap.config.ts","quality:cognitive":"tsc -p tsconfig.json && vitest run --config vitest.cognitive.config.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:cc0c5ec3-c278-4a7f-83a0-bf6d00a5a06e"}},"repository":{"url":"git+https://github.com/fabian-barney/ai-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Canonical AI skill catalog and installer CLI package.","directories":{},"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.1.2","devDependencies":{"vitest":"^4.1.6","typescript":"^6.0.3","@types/node":"^24.12.3","markdownlint-cli2":"^0.22.1","@vitest/coverage-v8":"^4.1.6","@barney-media/crap-typescript-vitest":"^0.3.0","@barney-media/cognitive-typescript-vitest":"^0.1.1"},"_npmOperationalInternal":{"tmp":"tmp/ai-skills_0.2.1_1779406109721_0.32556290682512823","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@barney-media/ai-skills","version":"0.2.2","license":"Apache-2.0","_id":"@barney-media/ai-skills@0.2.2","maintainers":[{"name":"fabian-barney","email":"fabian.barney@barney-media.com"}],"homepage":"https://github.com/fabian-barney/ai-skills#readme","bugs":{"url":"https://github.com/fabian-barney/ai-skills/issues"},"bin":{"ai-skills":"dist/cli.js"},"dist":{"shasum":"87617692d50f9936e63833c1e27ab77f927b1763","tarball":"https://registry.npmjs.org/@barney-media/ai-skills/-/ai-skills-0.2.2.tgz","fileCount":178,"integrity":"sha512-qUyxNesumOKjkfIDA2u+EQXgrR0pfhYbC+T04xJhfjhpO49wb7VnwsgE1nzYVI6CPSgefGByxOUTuzz2ngRrzA==","signatures":[{"sig":"MEUCIQDPbknRQf+4+cVk0xVA2mA/ef8O9m0zdJlP9V8LE4fbnQIgISSIZk9h65J77I1BorXEBt+AyFXyNukOpezO0sxTt/M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@barney-media%2fai-skills@0.2.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":362243},"type":"module","engines":{"node":">=22.12.0"},"gitHead":"8ddc962da4d9ea106b1247eb9752a204577fc54a","scripts":{"test":"vitest run --coverage.enabled true","build":"tsc -p tsconfig.json","lint:md":"markdownlint-cli2 \"**/*.md\" \"!**/node_modules/**\" --config .markdownlint.json","prepack":"node tools/validate-catalog.mjs && tsc -p tsconfig.json","validate":"node tools/validate-catalog.mjs","pack:dry-run":"npm pack --dry-run","quality:crap":"node ./scripts/run-crap-typescript-gate.mjs src","quality:cognitive":"node ./scripts/run-cognitive-typescript-gate.mjs src"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:cc0c5ec3-c278-4a7f-83a0-bf6d00a5a06e"}},"repository":{"url":"git+https://github.com/fabian-barney/ai-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Canonical AI skill catalog and installer CLI package.","directories":{},"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.1.2","devDependencies":{"vitest":"^4.1.6","typescript":"^6.0.3","@types/node":"^24.12.3","markdownlint-cli2":"^0.22.1","@vitest/coverage-v8":"^4.1.6","@barney-media/crap-typescript-core":"^0.3.0","@barney-media/crap-typescript-vitest":"^0.3.0","@barney-media/cognitive-typescript-core":"^0.1.1","@barney-media/cognitive-typescript-vitest":"^0.1.1"},"_npmOperationalInternal":{"tmp":"tmp/ai-skills_0.2.2_1779548350520_0.7099325063685997","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@barney-media/ai-skills","version":"0.2.3","license":"Apache-2.0","_id":"@barney-media/ai-skills@0.2.3","maintainers":[{"name":"fabian-barney","email":"fabian.barney@barney-media.com"}],"homepage":"https://github.com/fabian-barney/ai-skills#readme","bugs":{"url":"https://github.com/fabian-barney/ai-skills/issues"},"bin":{"ai-skills":"dist/cli.js"},"dist":{"shasum":"491e267131676a27e0f95073149621486a660bb4","tarball":"https://registry.npmjs.org/@barney-media/ai-skills/-/ai-skills-0.2.3.tgz","fileCount":178,"integrity":"sha512-HS1GgmEZZQspXPlLbkZ/9Dyzi1THYBAmwjHeEWZNp8dpvXIquZRCLxru2QVGCTwxC0RvfBX4NRPTGn6+8xX/0Q==","signatures":[{"sig":"MEYCIQDJhqFl+sOXVLXltIHyf0XG0iRVeh2+TRpgNo/6Thmp4gIhAKahdJ3ltYNKd74OUbw9pfMtqmNxc5+JwdNZxSN+cUEU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@barney-media%2fai-skills@0.2.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":372448},"type":"module","engines":{"node":">=22.12.0"},"gitHead":"e96113796d2153d56cec071e83a2be0d74298dc0","scripts":{"test":"vitest run --coverage.enabled true","build":"tsc -p tsconfig.json","lint:md":"markdownlint-cli2 \"**/*.md\" \"!**/node_modules/**\" --config .markdownlint.json","prepack":"node tools/validate-catalog.mjs && tsc -p tsconfig.json","validate":"node tools/validate-catalog.mjs","pack:dry-run":"npm pack --dry-run","quality:crap":"node ./scripts/run-crap-typescript-gate.mjs src","quality:cognitive":"node ./scripts/run-cognitive-typescript-gate.mjs src"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:cc0c5ec3-c278-4a7f-83a0-bf6d00a5a06e"}},"repository":{"url":"git+https://github.com/fabian-barney/ai-skills.git","type":"git"},"_npmVersion":"11.12.1","description":"Canonical AI skill catalog and installer CLI package.","directories":{},"_nodeVersion":"24.15.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"pnpm@11.1.2","devDependencies":{"vitest":"^4.1.6","typescript":"^6.0.3","@types/node":"^24.12.3","markdownlint-cli2":"^0.22.1","@vitest/coverage-v8":"^4.1.6","@barney-media/crap-typescript-core":"^0.3.0","@barney-media/crap-typescript-vitest":"^0.3.0","@barney-media/cognitive-typescript-core":"^0.1.1","@barney-media/cognitive-typescript-vitest":"^0.1.1"},"_npmOperationalInternal":{"tmp":"tmp/ai-skills_0.2.3_1779703367443_0.8277568370454027","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@barney-media/ai-skills","version":"0.3.0","description":"Canonical AI skill catalog and installer CLI package.","license":"Apache-2.0","type":"module","bin":{"ai-skills":"dist/cli.js"},"scripts":{"build":"tsc -p tsconfig.json","test":"vitest run --coverage.enabled true","quality:cognitive":"node ./scripts/run-cognitive-typescript-gate.mjs src","quality:crap":"node ./scripts/run-crap-typescript-gate.mjs src","validate":"node tools/validate-catalog.mjs","lint:md":"markdownlint-cli2 \"**/*.md\" \"!**/node_modules/**\" --config .markdownlint.json","pack:dry-run":"npm pack --dry-run","prepack":"node tools/validate-catalog.mjs && tsc -p tsconfig.json"},"engines":{"node":">=22.12.0"},"packageManager":"pnpm@11.1.2","publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/fabian-barney/ai-skills.git"},"bugs":{"url":"https://github.com/fabian-barney/ai-skills/issues"},"homepage":"https://github.com/fabian-barney/ai-skills#readme","devDependencies":{"@barney-media/cognitive-typescript-core":"^0.1.1","@barney-media/cognitive-typescript-vitest":"^0.1.1","@barney-media/crap-typescript-core":"^0.3.0","@barney-media/crap-typescript-vitest":"^0.3.0","@types/node":"^24.12.4","@vitest/coverage-v8":"^4.1.7","markdownlint-cli2":"^0.22.1","typescript":"^6.0.3","vitest":"^4.1.7"},"gitHead":"bf06c290382eeb4c610e440511f8fce6dc0324bb","_id":"@barney-media/ai-skills@0.3.0","_nodeVersion":"24.16.0","_npmVersion":"11.13.0","dist":{"integrity":"sha512-NGhsAHF8cPvlP2qEPeUPhHgbJpo/kJZ/UXSnxWuVNZpxSDOHFlA58q33RsD/Q27GMYLSgVD+QkmqK3TTfsnkHQ==","shasum":"6716b31cd24f5756a4a3916f7a78f3fa031a0c05","tarball":"https://registry.npmjs.org/@barney-media/ai-skills/-/ai-skills-0.3.0.tgz","fileCount":186,"unpackedSize":430597,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@barney-media%2fai-skills@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD6UJnU4/tJvX7PV3aWAKxDMC0DT400GbfzlmaRiPNDIAIgUSPms856+MIbR+cxAL3+JBbceZftLfRBKzYMC0sM9f4="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:cc0c5ec3-c278-4a7f-83a0-bf6d00a5a06e"}},"directories":{},"maintainers":[{"name":"fabian-barney","email":"fabian.barney@barney-media.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ai-skills_0.3.0_1780363485236_0.2580118454692888"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-19T20:39:39.676Z","modified":"2026-06-02T01:24:45.695Z","0.1.0":"2026-05-19T20:39:39.987Z","0.2.0":"2026-05-21T18:46:59.320Z","0.2.1":"2026-05-21T23:28:29.890Z","0.2.2":"2026-05-23T14:59:10.656Z","0.2.3":"2026-05-25T10:02:47.593Z","0.3.0":"2026-06-02T01:24:45.381Z"},"bugs":{"url":"https://github.com/fabian-barney/ai-skills/issues"},"license":"Apache-2.0","homepage":"https://github.com/fabian-barney/ai-skills#readme","repository":{"type":"git","url":"git+https://github.com/fabian-barney/ai-skills.git"},"description":"Canonical AI skill catalog and installer CLI package.","maintainers":[{"name":"fabian-barney","email":"fabian.barney@barney-media.com"}],"readme":"# ai-skills\n\n`ai-skills` is a TypeScript and npm package for defining and distributing\ntool-agnostic AI skills. It is the skill-focused sibling of `ai-agents`: this\nrepository is about reusable instruction bundles, not about full agent catalogs\nand renderers.\n\n## Source of Truth\n\nThe v1 specification lives in `spec.md`.\n\nIt defines:\n\n- the canonical skill bundle structure\n- authoring rules for portable skills\n- skill-private bundle visibility and canonical cross-skill references\n- the initial taxonomy for future skills\n- how the canonical format maps to Codex, Claude, and Copilot\n\n## Repository Layout\n\n- `skills/` is reserved for canonical skill bundles\n- `spec.md` defines the v1 contract for those bundles\n- `src/` contains the TypeScript CLI release surface\n- `dist/` contains compiled package output and is generated by `pnpm build`\n- `ai/PROJECT/DECISIONS/` contains repository ADRs\n\n## User Install\n\nInstall the public package globally with npm:\n\n```bash\nnpm install -g @barney-media/ai-skills\nai-skills --help\n```\n\nThe `install` and `update` commands both replace package-owned `ai-skills-*`\ndirectories in the supported target directories. Non-prefixed user skills are\npreserved.\n\n```bash\nai-skills install\nai-skills update --assume-yes\n```\n\nWithout `--assume-yes`, the CLI asks for confirmation before deleting and\nreplacing package-owned `ai-skills-*` directories.\n\nCatalog validation enforces that each skill bundle is `skill-private`: skills\nmay refer to other skills only as skill `ai-skills-...`, never through another\nbundle's file paths.\n\nFor repository development, build, and release validation details, see\n`CONTRIBUTIONS.md`.\n","readmeFilename":"README.md"}