{"_id":"@djm204/agent-skills","_rev":"12-a1980b34f701ca269cbdec615ebcf397","name":"@djm204/agent-skills","dist-tags":{"latest":"1.11.0"},"versions":{"1.0.0":{"name":"@djm204/agent-skills","version":"1.0.0","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","_id":"@djm204/agent-skills@1.0.0","maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"homepage":"https://github.com/djm204/agent-skills#readme","bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"bin":{"agent-skills":"bin/cli.js"},"dist":{"shasum":"2d51c2a404b4e7eb8b174d633b62d78141dab20c","tarball":"https://registry.npmjs.org/@djm204/agent-skills/-/agent-skills-1.0.0.tgz","fileCount":392,"integrity":"sha512-aOrxfavqcef+ClxBcmqesQzstqyANC4mUMwc6zTaxEnw7spar/dy7i0Mtywaf0dhjmqXAwkYT6wcse4u9yK//Q==","signatures":[{"sig":"MEUCIFwiqDDIfVDtNXiCijLZkedpTIERs/gU2ckVAqy6c0WEAiEAhqovk8maMqHML8WeIFVl22RNnYDkkmcX7z3YYMcWcOQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1762174},"type":"module","engines":{"node":">=18.0.0"},"gitHead":"7ce506365fbfe60d3305dd33d1f58a6d8f3bac88","scripts":{"test":"vitest run","dogfood":"node scripts/dogfood.js","prepare":"husky","test:watch":"vitest","test:coverage":"vitest run --coverage","validate:rules":"node scripts/validate-rule-sizes.js"},"_npmUser":{"name":"djm204","email":"davidjm204@gmail.com"},"repository":{"url":"git+https://github.com/djm204/agent-skills.git","type":"git"},"_npmVersion":"11.5.1","description":"AI agent skill templates for Cursor IDE, Claude Code, and GitHub Copilot. Pre-configured rules and guidelines that help AI assistants write better code.","directories":{},"_nodeVersion":"24.5.0","_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","vitest":"^4.0.18","@commitlint/cli":"^19.0.0","@commitlint/config-conventional":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/agent-skills_1.0.0_1771355211766_0.4492888268602868","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@djm204/agent-skills","version":"1.1.0","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","_id":"@djm204/agent-skills@1.1.0","maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"homepage":"https://github.com/djm204/agent-skills#readme","bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"bin":{"agent-skills":"bin/cli.js"},"dist":{"shasum":"4f4ddcd165ccd925eaf5628444d715986cfe5067","tarball":"https://registry.npmjs.org/@djm204/agent-skills/-/agent-skills-1.1.0.tgz","fileCount":422,"integrity":"sha512-73mqRPA/Qs+3v0tG2wIk3XyjEm09fZoR1L2KR0fWOhucM22JiSUUrj8j0Gj8wCjFgjOk2g2gmjU3F6P7JpToPw==","signatures":[{"sig":"MEYCIQD8P5vsZxlVB4dTJ/iIoLEP+BAl4T+UxaW/dQjuaWjchAIhAKFkeL/7AK8uo7u9diN1G3lURCC8L4Ud1VcpvjAfiFLS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@djm204%2fagent-skills@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1863427},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":"./src/index.js","./api":"./src/api/index.js"},"gitHead":"13c1882d973fa4364da691a84b6c724c485d3632","scripts":{"test":"vitest run","dogfood":"node scripts/dogfood.js","prepare":"husky","test:watch":"vitest","test:coverage":"vitest run --coverage","validate:rules":"node scripts/validate-rule-sizes.js"},"_npmUser":{"name":"djm204","email":"davidjm204@gmail.com"},"repository":{"url":"git+https://github.com/djm204/agent-skills.git","type":"git"},"_npmVersion":"10.8.2","description":"AI agent skill templates for Cursor IDE, Claude Code, and GitHub Copilot. Pre-configured rules and guidelines that help AI assistants write better code.","directories":{},"_nodeVersion":"20.20.0","_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","vitest":"^4.0.18","@commitlint/cli":"^19.0.0","@commitlint/config-conventional":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/agent-skills_1.1.0_1771463868229_0.43689789233847853","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@djm204/agent-skills","version":"1.2.0","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","_id":"@djm204/agent-skills@1.2.0","maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"homepage":"https://github.com/djm204/agent-skills#readme","bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"bin":{"agent-skills":"bin/cli.js"},"dist":{"shasum":"6faa8e33ff25233b4846da31bcef4ae0590d12d5","tarball":"https://registry.npmjs.org/@djm204/agent-skills/-/agent-skills-1.2.0.tgz","fileCount":448,"integrity":"sha512-i1iZR/Qd2ErxGpEInVVVZPe4jSqPzJph7zDRqnOWHHwpgeNOq0Yk3A+QtPNT3/REHx2gt/bSV/FAeIUAxTvqpg==","signatures":[{"sig":"MEUCICAG9vIIih9LHELh5/vosXRJyP2k21sEp6ZMHADewO6/AiEApXtVz50OVlVLcXRULOqLQ4Brm3VJWX97bnDbJi+wT3Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@djm204%2fagent-skills@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1959980},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":"./src/index.js","./api":"./src/api/index.js"},"gitHead":"5d163fdc1b08c612506e1422928d0bbb916e5fed","scripts":{"test":"vitest run","dogfood":"node scripts/dogfood.js","prepare":"husky","test:watch":"vitest","test:coverage":"vitest run --coverage","validate:rules":"node scripts/validate-rule-sizes.js"},"_npmUser":{"name":"djm204","email":"davidjm204@gmail.com"},"repository":{"url":"git+https://github.com/djm204/agent-skills.git","type":"git"},"_npmVersion":"10.8.2","description":"AI agent skill templates for Cursor IDE, Claude Code, and GitHub Copilot. Pre-configured rules and guidelines that help AI assistants write better code.","directories":{},"_nodeVersion":"20.20.0","_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","vitest":"^4.0.18","@commitlint/cli":"^19.0.0","@commitlint/config-conventional":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/agent-skills_1.2.0_1771466307164_0.09497079894711447","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@djm204/agent-skills","version":"1.3.0","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","_id":"@djm204/agent-skills@1.3.0","maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"homepage":"https://github.com/djm204/agent-skills#readme","bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"bin":{"agent-skills":"bin/cli.js"},"dist":{"shasum":"f0534add410dad571f8fc431580c8d827411f53a","tarball":"https://registry.npmjs.org/@djm204/agent-skills/-/agent-skills-1.3.0.tgz","fileCount":652,"integrity":"sha512-uc1mcq0welqAW0xajv+y7I13FbQdukjKKTNfvO3PSdQkADbCPH+sIAKND8HkYaKT/xVCHObYULJkhZcg+TcVUw==","signatures":[{"sig":"MEMCICHpsJUYQuAEdGiyJJjvhMwpEpvI8tl8FAQLy5VcAp2xAh9G38JTTyuyEE1e8V4wrvfrCwgR8rbcClAHlpYorf35","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@djm204%2fagent-skills@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2809471},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":"./src/index.js","./api":{"types":"./src/api/index.d.ts","default":"./src/api/index.js"}},"gitHead":"e3e762992b6d1b37e569049a343d247e6d9f998a","scripts":{"test":"vitest run","dogfood":"node scripts/dogfood.js","prepare":"husky","test:watch":"vitest","test:coverage":"vitest run --coverage","validate:rules":"node scripts/validate-rule-sizes.js"},"_npmUser":{"name":"djm204","email":"davidjm204@gmail.com"},"repository":{"url":"git+https://github.com/djm204/agent-skills.git","type":"git"},"_npmVersion":"10.8.2","description":"AI agent skill templates for Cursor IDE, Claude Code, and GitHub Copilot. Pre-configured rules and guidelines that help AI assistants write better code.","directories":{},"_nodeVersion":"20.20.0","typesVersions":{"*":{"api":["./src/api/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","vitest":"^4.0.18","@commitlint/cli":"^19.0.0","@commitlint/config-conventional":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/agent-skills_1.3.0_1771550588442_0.04184677663669323","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@djm204/agent-skills","version":"1.4.0","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","_id":"@djm204/agent-skills@1.4.0","maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"homepage":"https://github.com/djm204/agent-skills#readme","bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"bin":{"agent-skills":"bin/cli.js"},"dist":{"shasum":"dfd33bb4819c7bb9e988d8aa94415cc078bd41b0","tarball":"https://registry.npmjs.org/@djm204/agent-skills/-/agent-skills-1.4.0.tgz","fileCount":686,"integrity":"sha512-TH7Su6UTBuLARYXg8WdDC1Cm/0M2ZX889p3o1YhGsAcVe3BZFf/0yEP/ClRIkn+IqXXrz0VoFh3JTGL60FRqrg==","signatures":[{"sig":"MEQCIHrBFsyVGJd7FU6qoabsIkKKLbat7MxBp0YsmS9mcJ/QAiAvxtFbLSbV713/ZVbMB/Ng6Qor3M8rCcxnJqyFZsns1w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@djm204%2fagent-skills@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2583377},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":"./src/index.js","./api":{"types":"./src/api/index.d.ts","default":"./src/api/index.js"}},"gitHead":"502ebde240a57ec664010327619c785fea813f89","scripts":{"test":"vitest run","dogfood":"node scripts/dogfood.js","prepare":"husky","test:watch":"vitest","test:coverage":"vitest run --coverage","validate:rules":"node scripts/validate-rule-sizes.js"},"_npmUser":{"name":"djm204","email":"davidjm204@gmail.com"},"repository":{"url":"git+https://github.com/djm204/agent-skills.git","type":"git"},"_npmVersion":"10.8.2","description":"Curated prompt packs encoding domain expertise for AI coding assistants and agent frameworks","directories":{},"_nodeVersion":"20.20.0","typesVersions":{"*":{"api":["./src/api/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","vitest":"^4.0.18","@commitlint/cli":"^19.0.0","@commitlint/config-conventional":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/agent-skills_1.4.0_1772050095597_0.23336478946048422","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@djm204/agent-skills","version":"1.5.0","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","_id":"@djm204/agent-skills@1.5.0","maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"homepage":"https://github.com/djm204/agent-skills#readme","bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"bin":{"agent-skills":"bin/cli.js"},"dist":{"shasum":"a8295c29eb71ad6a9e8ea71ef23f0669dfa8f590","tarball":"https://registry.npmjs.org/@djm204/agent-skills/-/agent-skills-1.5.0.tgz","fileCount":692,"integrity":"sha512-UE5+qbLiIXPLKuD47bv91oWe6MxE5yc3pv1jz5OmAvlpkrVp8j6DrcHdPfTwRwB029YU/enCdZzmeLpNyPVagA==","signatures":[{"sig":"MEUCIQChMSPR+3S0+kEYrrOG53OWmObrHBUUQHzvNfpsYBR65gIgPCPZA4uqYaPNXTiaSRXI4Au2srRFqO8H2JxWM21Uu2M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@djm204%2fagent-skills@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2613875},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":"./src/index.js","./api":{"types":"./src/api/index.d.ts","default":"./src/api/index.js"}},"gitHead":"653050ad1fc0d1ee0cff486ff33ea6d5088283e6","scripts":{"test":"vitest run","dogfood":"node scripts/dogfood.js","prepare":"husky","test:watch":"vitest","test:coverage":"vitest run --coverage","validate:rules":"node scripts/validate-rule-sizes.js"},"_npmUser":{"name":"djm204","email":"davidjm204@gmail.com"},"repository":{"url":"git+https://github.com/djm204/agent-skills.git","type":"git"},"_npmVersion":"10.8.2","description":"Curated prompt packs encoding domain expertise for AI coding assistants and agent frameworks","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@djm204/mcp-web":"github:djm204/mcp-web"},"typesVersions":{"*":{"api":["./src/api/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","vitest":"^4.0.18","@commitlint/cli":"^19.0.0","@commitlint/config-conventional":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/agent-skills_1.5.0_1772464309123_0.19789754363025303","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@djm204/agent-skills","version":"1.6.0","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","_id":"@djm204/agent-skills@1.6.0","maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"homepage":"https://github.com/djm204/agent-skills#readme","bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"bin":{"agent-skills":"bin/cli.js"},"dist":{"shasum":"2f7fd2c94796a1274fb0fe5a64807dc47265d419","tarball":"https://registry.npmjs.org/@djm204/agent-skills/-/agent-skills-1.6.0.tgz","fileCount":700,"integrity":"sha512-9J1s/eFE0jeEBkBTYfQAZ2V7eIvzx/Hn5WAQAv3x8gPBiDOh8rSbQVgexmZTzq0d25McBwWBbKdezAW7AHX48w==","signatures":[{"sig":"MEUCIAVD9T3fVRsFqELsXc9eWLP0f8NtIiwDF9sjHCGFhQ4XAiEAmMG4zaxlvv0dbshM0pxFWE1xn29TDgjZVp7bJKDBKzk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@djm204%2fagent-skills@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2675511},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":"./src/index.js","./api":{"types":"./src/api/index.d.ts","default":"./src/api/index.js"}},"gitHead":"d139c6e2a9fb279ab17576a00fbc6cce71f93aeb","scripts":{"test":"vitest run","dogfood":"node scripts/dogfood.js","prepare":"husky","test:watch":"vitest","test:coverage":"vitest run --coverage","validate:rules":"node scripts/validate-rule-sizes.js"},"_npmUser":{"name":"djm204","email":"davidjm204@gmail.com"},"repository":{"url":"git+https://github.com/djm204/agent-skills.git","type":"git"},"_npmVersion":"10.8.2","description":"Curated prompt packs encoding domain expertise for AI coding assistants and agent frameworks","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@djm204/mcp-web":"github:djm204/mcp-web"},"typesVersions":{"*":{"api":["./src/api/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","vitest":"^4.0.18","@commitlint/cli":"^19.0.0","@commitlint/config-conventional":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/agent-skills_1.6.0_1772660425246_0.19348297492571476","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"name":"@djm204/agent-skills","version":"1.7.0","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","_id":"@djm204/agent-skills@1.7.0","maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"homepage":"https://github.com/djm204/agent-skills#readme","bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"bin":{"agent-skills":"bin/cli.js"},"dist":{"shasum":"74e1c199196a33ddabeee66b55e8a3874a5deafa","tarball":"https://registry.npmjs.org/@djm204/agent-skills/-/agent-skills-1.7.0.tgz","fileCount":712,"integrity":"sha512-lFUNkCnV4EyjbXC+WPYooROjxuqpV36Elp5diYFvc6MYbeG18e7pudYcvfzW0OPJlRfWYiMXIL//nxJpopz02Q==","signatures":[{"sig":"MEUCIG4yvnwwnGI25oNhFQBivsvAV6tXFkeQN1FxBU6oJzlJAiEA16klM2ewbsR1yIfHlEV/yXRFvuyqw24pAKeC/Y5oWxU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@djm204%2fagent-skills@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2752263},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":"./src/index.js","./api":{"types":"./src/api/index.d.ts","default":"./src/api/index.js"}},"gitHead":"465aac0c16398f65b17e979e78442efa07c9d4c6","scripts":{"test":"vitest run","dogfood":"node scripts/dogfood.js","prepare":"husky","test:watch":"vitest","test:coverage":"vitest run --coverage","validate:rules":"node scripts/validate-rule-sizes.js"},"_npmUser":{"name":"djm204","email":"davidjm204@gmail.com"},"repository":{"url":"git+https://github.com/djm204/agent-skills.git","type":"git"},"_npmVersion":"10.8.2","description":"Curated prompt packs encoding domain expertise for AI coding assistants and agent frameworks","directories":{},"_nodeVersion":"20.20.0","dependencies":{"@djm204/mcp-web":"github:djm204/mcp-web"},"typesVersions":{"*":{"api":["./src/api/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","vitest":"^4.0.18","@commitlint/cli":"^19.0.0","@commitlint/config-conventional":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/agent-skills_1.7.0_1772682070884_0.2423701902146449","host":"s3://npm-registry-packages-npm-production"}},"1.8.0":{"name":"@djm204/agent-skills","version":"1.8.0","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","_id":"@djm204/agent-skills@1.8.0","maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"homepage":"https://github.com/djm204/agent-skills#readme","bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"bin":{"agent-skills":"bin/cli.js","agent-skills-serve":"bin/mcp-serve.js"},"dist":{"shasum":"0edca50090e98f1f9f94d55bbec29d6c662f236e","tarball":"https://registry.npmjs.org/@djm204/agent-skills/-/agent-skills-1.8.0.tgz","fileCount":736,"integrity":"sha512-qmuNsbDIX3u/l0OaksDW1nMy1eO/5+PWPalpFF52VNn4kEqxMasnOy+56fqcSVVTrcKQGT7gF5dTPSOhOxoPBw==","signatures":[{"sig":"MEUCIFa0gb17d5ef9O9OqNAUCoCq70+fE2E4GFATuj0IXFtoAiEA+BW9uTE7IZleqsjc9lV78VtDixmpFbq+2RnjzCTehYs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@djm204%2fagent-skills@1.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2809116},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":"./src/index.js","./api":{"types":"./src/api/index.d.ts","default":"./src/api/index.js"},"./mcp":"./src/mcp/server.js"},"gitHead":"02c1ccd969066ae50e8ff3d287960ccbe2d8555c","scripts":{"test":"vitest run","dogfood":"node scripts/dogfood.js","prepare":"husky","test:watch":"vitest","test:coverage":"vitest run --coverage","validate:rules":"node scripts/validate-rule-sizes.js"},"_npmUser":{"name":"djm204","email":"davidjm204@gmail.com"},"repository":{"url":"git+https://github.com/djm204/agent-skills.git","type":"git"},"_npmVersion":"10.8.2","description":"Curated prompt packs encoding domain expertise for AI coding assistants and agent frameworks","directories":{},"_nodeVersion":"20.20.0","dependencies":{"zod":"^3.25.76","@djm204/mcp-web":"github:djm204/mcp-web","@modelcontextprotocol/sdk":"^1.27.1"},"typesVersions":{"*":{"api":["./src/api/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","vitest":"^4.0.18","@commitlint/cli":"^19.0.0","@commitlint/config-conventional":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/agent-skills_1.8.0_1772861559465_0.7783458896362134","host":"s3://npm-registry-packages-npm-production"}},"1.9.0":{"name":"@djm204/agent-skills","version":"1.9.0","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","_id":"@djm204/agent-skills@1.9.0","maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"homepage":"https://github.com/djm204/agent-skills#readme","bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"bin":{"agent-skills":"bin/cli.js","agent-skills-serve":"bin/mcp-serve.js"},"dist":{"shasum":"4e5a960ea5f395577dfb1fe931b45f0fef221e86","tarball":"https://registry.npmjs.org/@djm204/agent-skills/-/agent-skills-1.9.0.tgz","fileCount":738,"integrity":"sha512-pTP2ALox258IcwyKVrlr3gw3N2YvWJFhM0PCtHPog9jRQnuKBIpz4/1vFTTH6GI0AqZcUSW7Khjy/J6WXQvZNA==","signatures":[{"sig":"MEUCIFjYZTKhMr1xWaPsWI5h5WHlrL8ga7TLR3hUqFEepdWCAiEA2Los4M8X6nw6LBj3mOflkQGwFsFVejuKCWunQeeTb/0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@djm204%2fagent-skills@1.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2822579},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":"./src/index.js","./api":{"types":"./src/api/index.d.ts","default":"./src/api/index.js"},"./mcp":"./src/mcp/server.js"},"gitHead":"0e87d3a6f872815f1558dae7b65648526d062aad","scripts":{"test":"vitest run","dogfood":"node scripts/dogfood.js","prepare":"husky","test:watch":"vitest","test:coverage":"vitest run --coverage","validate:rules":"node scripts/validate-rule-sizes.js"},"_npmUser":{"name":"djm204","email":"davidjm204@gmail.com"},"repository":{"url":"git+https://github.com/djm204/agent-skills.git","type":"git"},"_npmVersion":"10.8.2","description":"Curated prompt packs encoding domain expertise for AI coding assistants and agent frameworks","directories":{},"_nodeVersion":"20.20.0","dependencies":{"zod":"^3.25.76","@djm204/mcp-web":"github:djm204/mcp-web","@modelcontextprotocol/sdk":"^1.27.1"},"typesVersions":{"*":{"api":["./src/api/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","vitest":"^4.0.18","@commitlint/cli":"^19.0.0","@commitlint/config-conventional":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/agent-skills_1.9.0_1772945545923_0.27394988178866897","host":"s3://npm-registry-packages-npm-production"}},"1.10.0":{"name":"@djm204/agent-skills","version":"1.10.0","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","_id":"@djm204/agent-skills@1.10.0","maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"homepage":"https://github.com/djm204/agent-skills#readme","bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"bin":{"agent-skills":"bin/cli.js","agent-skills-serve":"bin/mcp-serve.js"},"dist":{"shasum":"8bdf53fd3cc9d86239cbb1836c1b5a68771b1612","tarball":"https://registry.npmjs.org/@djm204/agent-skills/-/agent-skills-1.10.0.tgz","fileCount":740,"integrity":"sha512-IKvc86VJbDYNI8wEJYw6v/JG9xeU6i+GZ1pJqReomZHb1K10arwOkSO5yLB8i8pIuGpAm66rYvjxwaR19u7OHg==","signatures":[{"sig":"MEYCIQDACN/AikpXY1iZwdOMYO5zEMwhWeccGRTl3gRZlx40ZAIhAM12H6+IzZ2F0GJWFZEBV+Cw4WCd2GjKr5kvjtNJ4RR8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@djm204%2fagent-skills@1.10.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":2835198},"type":"module","engines":{"node":">=18.0.0"},"exports":{".":"./src/index.js","./api":{"types":"./src/api/index.d.ts","default":"./src/api/index.js"},"./mcp":"./src/mcp/server.js"},"gitHead":"5cf064d695325c05102defbe9ef95b35c03a8edf","scripts":{"test":"vitest run","dogfood":"node scripts/dogfood.js","prepare":"husky","test:watch":"vitest","test:coverage":"vitest run --coverage","validate:rules":"node scripts/validate-rule-sizes.js"},"_npmUser":{"name":"djm204","email":"davidjm204@gmail.com"},"repository":{"url":"git+https://github.com/djm204/agent-skills.git","type":"git"},"_npmVersion":"10.8.2","description":"Curated prompt packs encoding domain expertise for AI coding assistants and agent frameworks","directories":{},"_nodeVersion":"20.20.0","dependencies":{"zod":"^3.25.76","@djm204/mcp-web":"github:djm204/mcp-web","@modelcontextprotocol/sdk":"^1.27.1"},"typesVersions":{"*":{"api":["./src/api/index.d.ts"]}},"_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","vitest":"^4.0.18","@commitlint/cli":"^19.0.0","@commitlint/config-conventional":"^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/agent-skills_1.10.0_1773018971524_0.5446337439264577","host":"s3://npm-registry-packages-npm-production"}},"1.11.0":{"name":"@djm204/agent-skills","version":"1.11.0","description":"Curated prompt packs encoding domain expertise for AI coding assistants and agent frameworks","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/djm204/agent-skills.git"},"homepage":"https://github.com/djm204/agent-skills#readme","bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"bin":{"agent-skills":"bin/cli.js","agent-skills-serve":"bin/mcp-serve.js"},"exports":{".":"./src/index.js","./api":{"types":"./src/api/index.d.ts","default":"./src/api/index.js"},"./mcp":"./src/mcp/server.js"},"typesVersions":{"*":{"api":["./src/api/index.d.ts"]}},"type":"module","engines":{"node":">=18.0.0"},"scripts":{"test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","validate:rules":"node scripts/validate-rule-sizes.js","dogfood":"node scripts/dogfood.js","prepare":"husky"},"dependencies":{"@djm204/mcp-web":"github:djm204/mcp-web","@modelcontextprotocol/sdk":"^1.27.1","zod":"^3.25.76"},"devDependencies":{"@commitlint/cli":"^19.0.0","@commitlint/config-conventional":"^19.0.0","husky":"^9.1.7","vitest":"^4.0.18"},"_id":"@djm204/agent-skills@1.11.0","gitHead":"9a65fbf8a2e5cbda0ed272317a60bb60b69fe1bf","_nodeVersion":"20.20.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-7tWSmYEHJURm/1DRUYaKgJeaXCdev8Qfybydm5QmqOKwGmyK8Ij9+43IvgcSvSqJF2sJmI/shVA0r4271qeVzQ==","shasum":"7f9ccdf3c4c9248bcaa1a2daa10b8300c37dd32e","tarball":"https://registry.npmjs.org/@djm204/agent-skills/-/agent-skills-1.11.0.tgz","fileCount":740,"unpackedSize":2850781,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@djm204%2fagent-skills@1.11.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIH6jY/XrHgEDk+3KppGcxFD12LSScmz5v9lq9kGCPhRAAiEArZ6Wl5o6YwCMt2cHuOTPvGrz6n0kQe4p/jUD/uXoHwM="}]},"_npmUser":{"name":"djm204","email":"davidjm204@gmail.com"},"directories":{},"maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/agent-skills_1.11.0_1773443090546_0.1907793739801653"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-17T19:06:51.060Z","modified":"2026-03-13T23:04:51.068Z","1.0.0":"2026-02-17T19:06:52.044Z","1.1.0":"2026-02-19T01:17:48.455Z","1.2.0":"2026-02-19T01:58:27.420Z","1.3.0":"2026-02-20T01:23:08.677Z","1.4.0":"2026-02-25T20:08:15.891Z","1.5.0":"2026-03-02T15:11:49.362Z","1.6.0":"2026-03-04T21:40:25.435Z","1.7.0":"2026-03-05T03:41:11.133Z","1.8.0":"2026-03-07T05:32:39.740Z","1.9.0":"2026-03-08T04:52:26.152Z","1.10.0":"2026-03-09T01:16:11.815Z","1.11.0":"2026-03-13T23:04:50.787Z"},"bugs":{"url":"https://github.com/djm204/agent-skills/issues"},"author":{"name":"David Josef Mendez","email":"me@davidmendez.dev"},"license":"MIT","homepage":"https://github.com/djm204/agent-skills#readme","keywords":["cursor","cursor-ide","ai","agent-skills","templates","coding-assistant","cursorrules","claude","llm","developer-tools","code-quality"],"repository":{"type":"git","url":"git+https://github.com/djm204/agent-skills.git"},"description":"Curated prompt packs encoding domain expertise for AI coding assistants and agent frameworks","maintainers":[{"name":"djm204","email":"davidjm204@gmail.com"}],"readme":"# @djm204/agent-skills\n\n[![npm version](https://img.shields.io/npm/v/@djm204/agent-skills.svg)](https://www.npmjs.com/package/@djm204/agent-skills)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n**Compatible with:**\n\n![Cursor](https://img.shields.io/badge/Cursor_IDE-black?style=flat&logo=cursor)\n![Claude Code](https://img.shields.io/badge/Claude_Code-cc785c?style=flat&logo=anthropic)\n![Gemini CLI](https://img.shields.io/badge/Gemini_CLI-4285F4?style=flat&logo=google)\n![GitHub Copilot](https://img.shields.io/badge/GitHub_Copilot-000?style=flat&logo=githubcopilot)\n![OpenAI Codex](https://img.shields.io/badge/OpenAI_Codex-412991?style=flat&logo=openai)\n![Windsurf](https://img.shields.io/badge/Windsurf-0B6FBF?style=flat)\n![LangChain](https://img.shields.io/badge/LangChain-1C3C3C?style=flat)\n![OpenAI Agents](https://img.shields.io/badge/OpenAI_Agents-412991?style=flat)\n\n**44 curated prompt packs** that encode principal-level domain expertise for AI coding assistants. Install into Cursor, Claude Code, Gemini CLI, GitHub Copilot, or OpenAI Codex — or compose into LangChain, CrewAI, and OpenAI Agents SDK pipelines via adapter templates.\n\n> **Disclaimer:** This project is provided for **educational and experimental purposes only**. The author takes no responsibility for any actions, outputs, or consequences resulting from an LLM or AI assistant following these rules. Use at your own risk. Always review AI-generated code before deploying to production.\n\n## What This Is\n\n- **Tiered behavioral prompts** — each skill has 3 standalone tiers (minimal ~700 tokens, standard ~2,800, comprehensive ~7,500) encoding *how to think* about a domain, not just what to do\n- **A CLI installer** — copies rule files to the right locations for Cursor, Claude Code, Gemini CLI, GitHub Copilot, and OpenAI Codex, with smart merging and conflict detection\n- **Adapter templates** — reformats prompts into framework-specific boilerplate for LangChain, CrewAI, and OpenAI Agents SDK\n- **MCP servers** — 13 skills define tool schemas that can be served over MCP, making them callable by any MCP-compatible agent\n\n### What This Isn't (Yet)\n\n- **Not runtime agents** — skills are static prompts injected into context windows, not executable code\n- **Not deep framework integrations** — adapters produce formatted strings and code scaffolds, not framework plugins\n\n## Installation\n\nNo installation required. Run directly with `npx`:\n\n```bash\nnpx @djm204/agent-skills [skill-name]\n```\n\nOr install globally:\n\n```bash\nnpm install -g @djm204/agent-skills\nagent-skills [skill-name]\n```\n\n## How to Use\n\n### Install into Your IDE\n\nNavigate to your project directory and run:\n\n```bash\nnpx @djm204/agent-skills web-frontend\n```\n\nThis installs rule files for all supported IDEs (Cursor, Claude Code, Gemini CLI, GitHub Copilot, OpenAI Codex):\n\n- **`CLAUDE.md`** — Development guide for Claude Code and Cursor with Claude\n- **`GEMINI.md`** — Development guide for Gemini CLI\n- **`AGENTS.md`** — Development guide for OpenAI Codex\n- **`.cursor/rules/`** — Rule files for Cursor IDE (`.mdc` format)\n- **`.github/copilot-instructions.md`** — Instructions for GitHub Copilot\n\n### Install Multiple Skills\n\nCombine skills for projects that span multiple domains:\n\n```bash\nnpx @djm204/agent-skills web-frontend web-backend\n```\n\n### List All Available Skills\n\n```bash\nnpx @djm204/agent-skills --list\n```\n\n### Preview Before Installing (Dry Run)\n\nSee what files will be created without making changes:\n\n```bash\nnpx @djm204/agent-skills web-frontend --dry-run\n```\n\n### Update to Latest Rules\n\nRe-run with `@latest` to get updated skills:\n\n```bash\nnpx @djm204/agent-skills@latest web-frontend\n```\n\n### Install for Specific IDE\n\nBy default, skills install for all supported IDEs. Use `--ide` to target specific tools:\n\n```bash\n# Install only for Cursor IDE\nnpx @djm204/agent-skills web-frontend --ide=cursor\n\n# Install only for Claude Code\nnpx @djm204/agent-skills web-frontend --ide=claude\n\n# Install only for GitHub Copilot\nnpx @djm204/agent-skills web-frontend --ide=codex\n\n# Install for multiple IDEs\nnpx @djm204/agent-skills web-frontend --ide=cursor --ide=codex\n```\n\n### Remove Specific Skills\n\n```bash\n# Remove a single skill\nnpx @djm204/agent-skills --remove web-frontend\n\n# Remove multiple skills\nnpx @djm204/agent-skills --remove web-frontend web-backend\n\n# Remove from specific IDE only\nnpx @djm204/agent-skills --remove web-frontend --ide=cursor\n\n# Skip confirmation prompt\nnpx @djm204/agent-skills --remove web-frontend --yes\n```\n\n### Reset (Remove Everything)\n\n```bash\nnpx @djm204/agent-skills --reset\nnpx @djm204/agent-skills --reset --ide=cursor\nnpx @djm204/agent-skills --reset --yes\nnpx @djm204/agent-skills --reset --force\n```\n\n---\n\n## Skill Pack Adapter Mode\n\nSkills can also be composed into AI agent frameworks using the `--adapter` flag. This outputs a prompt file optimized for the target framework instead of installing IDE rule files.\n\n```bash\nnpx @djm204/agent-skills <skill-name> --adapter=<adapter> [--tier=<tier>] [--out=<dir>]\n```\n\n### Adapters\n\n| Adapter | Output | Use With |\n|---------|--------|----------|\n| `raw` | Plain markdown prompt | Any LLM, testing |\n| `cursor` | `.cursor/rules/` MDC files | Cursor IDE |\n| `claude-code` | `CLAUDE.md` section | Claude Code |\n| `gemini` | `GEMINI.md` section | Gemini CLI |\n| `copilot` | `.github/copilot-instructions.md` section | GitHub Copilot |\n| `codex` | `AGENTS.md` + `.agents/skills/<name>/SKILL.md` | OpenAI Codex |\n| `openai-agents` | Python `Agent(instructions=...)` snippet | OpenAI Agents SDK |\n| `langchain` | Python `SystemMessagePromptTemplate` | LangChain |\n| `crewai` | Python `Agent(backstory=..., goal=...)` | CrewAI |\n\n> **Note:** Adapters produce formatted prompt strings and code scaffolds — not runtime framework plugins. Tool definitions in skill packs (`tools/*.yaml`) are interface contracts that describe what a tool would accept and return. Your application provides the implementation.\n\n### Prompt Tiers\n\nEach skill has three standalone prompt tiers. Choose the tier that fits your context budget:\n\n| Tier | Approx. Tokens | Content |\n|------|---------------|---------|\n| `minimal` | ~700 | Core behavioral rules and anti-patterns only |\n| `standard` | ~2,800 | Principles, patterns, and decision frameworks (default) |\n| `comprehensive` | ~7,500 | Full reference with code examples and tables |\n\n### Examples\n\n```bash\n# Get a raw markdown prompt for use in any LLM\nnpx @djm204/agent-skills golang-expert --adapter=raw\n\n# Generate a LangChain agent with minimal token usage\nnpx @djm204/agent-skills python-expert --adapter=langchain --tier=minimal\n\n# Generate a CrewAI agent config and write to ./agents/\nnpx @djm204/agent-skills strategic-negotiator --adapter=crewai --out=./agents\n\n# Generate an OpenAI Agents SDK snippet\nnpx @djm204/agent-skills devops-sre --adapter=openai-agents --tier=standard\n\n# Compose multiple skills together (comma-separated)\nnpx @djm204/agent-skills fullstack,testing --adapter=claude-code --tier=comprehensive\n```\n\n### Preview Test Cases\n\nEach skill includes behavioral test cases. Use `--test` to see them without calling an LLM:\n\n```bash\nnpx @djm204/agent-skills --test strategic-negotiator\nnpx @djm204/agent-skills --test golang-expert\n```\n\n---\n\n## MCP Server Mode\n\nSkills with tool definitions can be served as MCP (Model Context Protocol) servers, making their tools callable by any MCP-compatible agent.\n\n```bash\n# Start an MCP server for a skill\nnpx @djm204/agent-skills serve research-assistant\n\n# With custom tool handler implementations\nnpx @djm204/agent-skills serve research-assistant --handler-dir=./my-handlers\n\n# With a specific prompt tier\nnpx @djm204/agent-skills serve research-assistant --tier=comprehensive\n```\n\n### How It Works\n\n1. The server loads the skill's tool definitions from `tools/*.yaml`\n2. Each tool is registered with the MCP SDK using Zod-validated schemas\n3. Tool handlers are resolved by priority: **built-in > user-provided > stub**\n4. Skill prompts are exposed as MCP resources at `skill://<name>/prompt/<tier>`\n\nTools without a real implementation return structured \"not implemented\" responses describing what the tool expects and returns — useful for development and testing.\n\n### MCP Client Configuration\n\nAdapters automatically emit the correct MCP config. For example, after `npx @djm204/agent-skills research --adapter=cursor`, the generated `.cursor/mcp.json` includes:\n\n```json\n{\n  \"mcpServers\": {\n    \"agent-skills-research-assistant\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@djm204/agent-skills-serve\", \"research-assistant\"]\n    }\n  }\n}\n```\n\n### Programmatic Usage\n\n```javascript\nimport { createMcpServer, loadSkill } from '@djm204/agent-skills/api';\n\nconst skill = await loadSkill('skills/research-assistant');\nconst { server } = await createMcpServer(skill, {\n  builtinHandlers: {\n    web_search: async (params) => ({\n      content: [{ type: 'text', text: JSON.stringify(results) }],\n    }),\n  },\n});\n```\n\n---\n\n## CLI Options\n\n| Option | Description |\n|--------|-------------|\n| `--ide=[name]` | Target IDE: `cursor`, `claude`, or `codex` (can be used multiple times) |\n| `--adapter=[name]` | Adapter for skill pack mode: `raw`, `cursor`, `claude-code`, `copilot`, `openai-agents`, `langchain`, `crewai`, `codex` |\n| `--tier=[tier]` | Prompt tier: `minimal`, `standard`, `comprehensive` (default: `standard`) |\n| `--test` | Preview test cases for a skill without calling an LLM |\n| `--skill-dir=[dir]` | Path to a custom skills directory (default: built-in `skills/`) |\n| `--out=[dir]` | Output directory for adapter files (default: current directory) |\n| `--list`, `-l` | List all available skills |\n| `--dry-run` | Preview changes without writing files |\n| `--force`, `-f` | Overwrite/remove even if files were modified |\n| `--remove` | Remove specified skills |\n| `--reset` | Remove ALL installed content |\n| `--yes`, `-y` | Skip confirmation prompt (for `--remove` and `--reset`) |\n| `--version`, `-v` | Show version number |\n| `serve <skill>` | Start MCP server for a skill (requires tools) |\n| `--handler-dir=<dir>` | Directory of custom tool handler `.js` files (with `serve`) |\n| `--help`, `-h` | Show help message |\n\n### Shorthand Aliases\n\nUse short names instead of full skill names. Run `--list` to see all aliases.\n\n**Languages**\n\n| Alias | Skill |\n|-------|-------|\n| `js`, `ts`, `javascript`, `typescript` | `javascript-expert` |\n| `go`, `golang` | `golang-expert` |\n| `py`, `python` | `python-expert` |\n| `rs`, `rust` | `rust-expert` |\n| `ruby`, `rb` | `ruby-expert` |\n| `swift` | `swift-expert` |\n| `kotlin`, `kt` | `kotlin-expert` |\n| `java` | `java-expert` |\n| `cpp` | `cpp-expert` |\n| `csharp`, `cs` | `csharp-expert` |\n\n**Engineering**\n\n| Alias | Skill |\n|-------|-------|\n| `frontend`, `fe` | `web-frontend` |\n| `backend`, `api` | `web-backend` |\n| `devops`, `sre` | `devops-sre` |\n| `cli` | `cli-tools` |\n| `data`, `dataeng` | `data-engineering` |\n| `ml`, `ai` | `ml-ai` |\n| `qa` | `qa-engineering` |\n| `test` | `testing` |\n| `chain`, `web3` | `blockchain` |\n| `platform`, `platform-eng` | `platform-engineering` |\n| `unity` | `unity-dev-expert` |\n| `security`, `sec`, `appsec` | `security-expert` |\n\n**Professional**\n\n| Alias | Skill |\n|-------|-------|\n| `docs` | `documentation` |\n| `grants` | `grant-writer` |\n| `exec`, `ea` | `executive-assistant` |\n| `knowledge` | `knowledge-synthesis` |\n| `research`, `researcher` | `research-assistant` |\n\n**Business**\n\n| Alias | Skill |\n|-------|-------|\n| `product` | `product-manager` |\n| `project` | `project-manager` |\n| `compliance`, `regulatory` | `regulatory-sentinel` |\n| `allocator`, `resources` | `resource-allocator` |\n| `market-intel` | `market-intelligence` |\n| `supplychain` | `supply-chain` |\n| `harmonizer` | `supply-chain-harmonizer` |\n| `negotiator` | `strategic-negotiator` |\n| `predictive` | `predictive-maintenance` |\n| `marketing` | `marketing-expert` |\n\n**Creative**\n\n| Alias | Skill |\n|-------|-------|\n| `ux`, `uxd`, `design`, `designer` | `ux-designer` |\n| `brand` | `brand-guardian` |\n| `social-media` | `social-media-expert` |\n| `content-creation` | `content-creation-expert` |\n\n**Education & Agents**\n\n| Alias | Skill |\n|-------|-------|\n| `teach`, `teacher` | `educator` |\n| `agent`, `utility` | `utility-agent` |\n\n---\n\n## Available Skills (45)\n\n### Engineering (14)\n\n| Skill | Description |\n|-------|-------------|\n| `blockchain` | Smart contracts, DeFi protocols, and Web3 applications (Solidity, Foundry, Viem) |\n| `cli-tools` | Command-line applications and developer tools (Cobra, Commander, Click) |\n| `data-engineering` | Data platforms and pipelines (ETL, data modeling, data quality) |\n| `devops-sre` | DevOps and SRE practices (incident management, observability, SLOs, chaos engineering) |\n| `fullstack` | Full-stack web applications with shared types, API contracts, and E2E testing |\n| `ml-ai` | Machine learning and AI systems (model development, deployment, monitoring) |\n| `mobile` | Mobile applications (React Native, Flutter, native iOS/Android) |\n| `platform-engineering` | Internal developer platforms, infrastructure automation, reliability engineering |\n| `qa-engineering` | Quality assurance programs for confident, rapid software delivery |\n| `security-expert` | Application security engineering — threat modeling, secure code, OWASP prevention, supply chain security |\n| `testing` | Comprehensive testing practices (TDD, test design, CI/CD integration, performance testing) |\n| `unity-dev-expert` | Unity game development (C#, ECS/DOTS, physics, UI systems, multiplayer, performance) |\n| `web-backend` | Backend APIs and services (REST, GraphQL, microservices) |\n| `web-frontend` | Frontend web applications (SPAs, SSR, static sites, PWAs) |\n\n### Languages (10)\n\n| Skill | Description |\n|-------|-------------|\n| `cpp-expert` | Principal-level C++ engineering (modern C++, RAII, concurrency, templates, performance) |\n| `csharp-expert` | Principal-level C# engineering (async, DI, EF Core, ASP.NET Core, testing) |\n| `golang-expert` | Principal-level Go engineering (concurrency, stdlib, production patterns, testing) |\n| `java-expert` | Principal-level Java engineering (JVM, Spring Boot, concurrency, JPA, testing) |\n| `javascript-expert` | Principal-level JavaScript & TypeScript engineering (Node.js, React, type system, testing) |\n| `kotlin-expert` | Principal-level Kotlin engineering (coroutines, multiplatform, Ktor, Spring Boot, testing) |\n| `python-expert` | Principal-level Python engineering (type system, async, testing, FastAPI, Django) |\n| `ruby-expert` | Principal-level Ruby engineering (idioms, concurrency, Rails, performance, testing) |\n| `rust-expert` | Principal-level Rust engineering (ownership, concurrency, unsafe, traits, async) |\n| `swift-expert` | Principal-level Swift engineering (concurrency, SwiftUI, protocols, testing, Apple platforms) |\n\n### Business (10)\n\n| Skill | Description |\n|-------|-------------|\n| `market-intelligence` | Data source aggregation, sentiment analysis, trend detection, and risk signal monitoring |\n| `marketing-expert` | Brand positioning, campaign planning, market analysis, analytics, and growth frameworks |\n| `predictive-maintenance` | Industrial sensor monitoring, failure prediction, maintenance scheduling, and asset lifecycle |\n| `product-manager` | Customer-centric discovery, prioritization, and cross-functional execution |\n| `project-manager` | Planning, risk management, stakeholder alignment, and delivery tracking |\n| `regulatory-sentinel` | Compliance tracking, impact assessment, monitoring, and risk classification |\n| `resource-allocator` | Demand prediction, scheduling optimization, crisis management, and capacity modeling |\n| `strategic-negotiator` | Game theory, deal structuring, scenario modeling, and contract analysis |\n| `supply-chain` | Supply chain operations, procurement, logistics, and vendor management |\n| `supply-chain-harmonizer` | Disruption response, autonomous rerouting, inventory rebalancing, and scenario simulation |\n\n### Creative (4)\n\n| Skill | Description |\n|-------|-------------|\n| `brand-guardian` | Brand voice enforcement, visual identity compliance, and content review workflows |\n| `content-creation-expert` | Content strategy, copywriting, SEO content, multimedia production, and editorial ops |\n| `social-media-expert` | Platform strategy, content planning, audience growth, community management, and analytics |\n| `ux-designer` | User research, interaction design, design systems, accessibility, and emotional design |\n\n### Professional (5)\n\n| Skill | Description |\n|-------|-------------|\n| `documentation` | Technical documentation standards (READMEs, API docs, ADRs, code comments) |\n| `executive-assistant` | Scheduling, correspondence, meeting management, and executive workflow optimization |\n| `grant-writer` | Proposal strategy, narrative development, budget justification, and funder research |\n| `knowledge-synthesis` | Document ingestion, knowledge graphs, search/retrieval, summarization, and research workflows |\n| `research-assistant` | Literature review, source evaluation, citation management, and synthesis reporting |\n\n### Education (1)\n\n| Skill | Description |\n|-------|-------------|\n| `educator` | Evidence-based teaching, learning retention, gamification, and assessment design |\n\n### Agents (1)\n\n| Skill | Description |\n|-------|-------------|\n| `utility-agent` | AI agent utilities with context management and hallucination prevention |\n\n---\n\n## What Gets Installed\n\n### IDE Mode (default)\n\nEvery skill installation includes foundational shared rules plus domain-specific rules:\n\n**Shared (always included):**\n\n| File | Description |\n|------|-------------|\n| `core-principles.mdc` | Honesty, simplicity, testing requirements |\n| `code-quality.mdc` | SOLID, DRY, clean code patterns |\n| `security-fundamentals.mdc` | Zero trust, input validation, secrets management |\n| `git-workflow.mdc` | Commits, branches, PRs, safety protocols |\n| `communication.mdc` | Direct, objective, professional communication |\n\n**Skill-specific rules** — each skill adds domain-focused `.mdc` rule files. For example, `web-frontend` adds:\n\n- `accessibility.mdc` — WCAG compliance, ARIA patterns\n- `component-patterns.mdc` — React/Vue/Svelte best practices\n- `performance.mdc` — Core Web Vitals, optimization\n- `state-management.mdc` — State patterns, data flow\n- `styling.mdc` — CSS architecture, design systems\n- `testing.mdc` — Unit, integration, E2E testing\n\n**Rule file format (`.mdc`):** Every file has YAML front matter with `description` and `alwaysApply`. Shared rules use `alwaysApply: true`; skill-specific rules use `alwaysApply: false` and load when relevant.\n\n### Adapter Mode\n\nWhen using `--adapter`, no IDE files are installed. Instead, a single prompt file is generated in the format required by the target framework. Output varies by adapter:\n\n| Adapter | Output |\n|---------|--------|\n| `raw` | `<skill-name>.md` — plain markdown prompt |\n| `claude-code` | Prompt formatted as a `CLAUDE.md` section |\n| `gemini` | Prompt formatted as a `GEMINI.md` section |\n| `cursor` | `.cursor/rules/<skill-name>.mdc` |\n| `copilot` | Prompt formatted for `.github/copilot-instructions.md` |\n| `codex` | `AGENTS.md` + `.agents/skills/<name>/SKILL.md` |\n| `openai-agents` | Python snippet: `Agent(name=..., instructions=...)` |\n| `langchain` | Python snippet: `SystemMessagePromptTemplate.from_template(...)` |\n| `crewai` | Python snippet: `Agent(role=..., goal=..., backstory=...)` |\n\n---\n\n## File Structure\n\n### After IDE install (`npx @djm204/agent-skills web-frontend`)\n\n```text\nyour-project/\n├── CLAUDE.md                              # Development guide (Claude Code, Cursor)\n├── GEMINI.md                              # Development guide (Gemini CLI)\n├── AGENTS.md                              # Development guide (OpenAI Codex)\n├── .cursor/\n│   └── rules/                             # Rule files (Cursor IDE)\n│       ├── core-principles.mdc                 # Shared\n│       ├── code-quality.mdc                    # Shared\n│       ├── security-fundamentals.mdc           # Shared\n│       ├── git-workflow.mdc                    # Shared\n│       ├── communication.mdc                   # Shared\n│       ├── web-frontend-overview.mdc           # Skill-specific\n│       ├── web-frontend-accessibility.mdc      # Skill-specific\n│       ├── web-frontend-component-patterns.mdc # Skill-specific\n│       ├── web-frontend-performance.mdc        # Skill-specific\n│       ├── web-frontend-state-management.mdc   # Skill-specific\n│       ├── web-frontend-styling.mdc            # Skill-specific\n│       └── web-frontend-testing.mdc            # Skill-specific\n└── .github/\n    └── copilot-instructions.md            # Instructions (GitHub Copilot)\n```\n\n### After adapter install (`npx @djm204/agent-skills golang-expert --adapter=langchain`)\n\n```text\nyour-project/\n└── golang-expert.py                       # LangChain SystemMessagePromptTemplate snippet\n```\n\n---\n\n## Programmatic API\n\nInstall the package and import from the `/api` subpath:\n\n```bash\nnpm install @djm204/agent-skills\n```\n\n```typescript\nimport { loadSkill, composeSkills, listSkills, runTestSuite } from '@djm204/agent-skills/api';\n\n// Load a single skill at a specific tier\nconst skill = await loadSkill('golang-expert', { tier: 'standard' });\nconsole.log(skill.prompt); // ready-to-use prompt string\n\n// Compose multiple skills (deduplicates shared fragments)\nconst composed = await composeSkills(['fullstack', 'testing'], { tier: 'minimal' });\n\n// List all available skills\nconst skills = await listSkills();\n\n// Run behavioral test cases against an LLM response\nconst suite = await loadTestSuite('golang-expert');\nconst results = await runTestSuite(suite, myLlmFn);\n```\n\nTypeScript types are included — no `@types/` package needed.\n\n---\n\n## Examples\n\n### New React Project\n\n```bash\nmkdir my-react-app && cd my-react-app\nnpm create vite@latest . -- --template react-ts\nnpx @djm204/agent-skills web-frontend\n# or use shorthand:\nnpx @djm204/agent-skills frontend\n```\n\n### Full-Stack Next.js Project\n\n```bash\nnpx create-next-app@latest my-app\ncd my-app\nnpx @djm204/agent-skills fullstack\n```\n\n### Microservices Backend\n\n```bash\ncd my-api-service\nnpx @djm204/agent-skills web-backend devops-sre\n# or use shorthands:\nnpx @djm204/agent-skills backend devops\n```\n\n### ML/AI Project\n\n```bash\ncd my-ml-project\nnpx @djm204/agent-skills ml-ai data-engineering\n# or use shorthands:\nnpx @djm204/agent-skills ml data\n```\n\n### Unity Game Project\n\n```bash\ncd my-unity-game\nnpx @djm204/agent-skills unity\n```\n\n### Marketing Team Workspace\n\n```bash\ncd marketing-workspace\nnpx @djm204/agent-skills marketing social-media content-creation\n```\n\n### Docs and Research\n\n```bash\nnpx @djm204/agent-skills docs research\n```\n\n### LangChain Agent Pipeline\n\n```bash\n# Standard tier for a Go expert agent\nnpx @djm204/agent-skills golang-expert --adapter=langchain --out=./agents\n\n# Compose a fullstack + testing specialist (minimal tokens)\nnpx @djm204/agent-skills fullstack,testing --adapter=langchain --tier=minimal --out=./agents\n```\n\n### OpenAI Codex Skill\n\n```bash\n# Install a skill as a Codex-compatible skill directory\nnpx @djm204/agent-skills security-expert --adapter=codex\n\n# With minimal tier for smaller context\nnpx @djm204/agent-skills golang-expert --adapter=codex --tier=minimal\n```\n\n### CrewAI Multi-Agent Team\n\n```bash\nnpx @djm204/agent-skills product-manager --adapter=crewai --out=./crew\nnpx @djm204/agent-skills web-frontend --adapter=crewai --out=./crew\nnpx @djm204/agent-skills qa-engineering --adapter=crewai --out=./crew\n```\n\n---\n\n## Roadmap\n\n| Phase | What | Status |\n|-------|------|--------|\n| Honest positioning | Clarify what skills are (prompts) vs. what they aren't (agents) | Done |\n| Remove off-brand skills | Cut lifestyle skills, focus on dev/business (48 → 44) | Done |\n| Runtime composition | Dynamic skill loading based on task detection (`--auto`) | Done |\n| JSON skill export | Export skills as JSON manifest (`--export`) | Done |\n| Usage analytics | Local usage tracking with `--stats` and privacy controls | Done |\n| MCP servers | Generic MCP server — serve any skill's tools via `serve` command | Done |\n| Effectiveness benchmarks | A/B test prompts vs. no-prompts, publish results | Planned |\n| Model-specific tuning | Test and document per-model tier recommendations | Planned |\n| Real framework integrations | LangChain Runnables, CrewAI Agent subclasses | Future |\n\n---\n\n## Requirements\n\n- **Node.js**: 18.0.0 or higher\n- **Supported IDEs/Tools** (IDE mode):\n  - Cursor IDE (any version with `.cursor/rules/` support)\n  - Claude Code (reads `CLAUDE.md` automatically)\n  - GitHub Copilot (reads `.github/copilot-instructions.md`)\n- **Supported Frameworks** (adapter mode):\n  - OpenAI Agents SDK, LangChain, CrewAI, or any LLM via `raw`\n\n---\n\n## Troubleshooting\n\n### \"Unknown option\" or Missing Features\n\nIf you're getting errors for options that should exist, you may have a cached old version:\n\n```bash\n# Force latest version (recommended)\nnpx @djm204/agent-skills@latest [command]\n\n# Clear npx cache\nnpx clear-npx-cache\n\n# Or manually clear npm cache\nnpm cache clean --force\n```\n\n### Verify Your Version\n\n```bash\nnpx @djm204/agent-skills --version\n```\n\nThe CLI will notify you if a newer version is available.\n\n### Update Global Installation\n\n```bash\nnpm update -g @djm204/agent-skills\n```\n\n---\n\n## How to Contribute\n\n### Adding a New Skill Pack\n\nSkill packs live in `skills/<skill-name>/` and follow this structure:\n\n```text\nskills/your-skill/\n├── skill.yaml                   # Metadata and manifest\n├── prompts/\n│   ├── minimal.md               # ~700 tokens: behavioral rules + anti-patterns\n│   ├── standard.md              # ~2,800 tokens: principles + patterns\n│   └── comprehensive.md         # ~7,500 tokens: full reference with examples\n└── tests/\n    └── test_cases.yaml          # Behavioral test cases\n```\n\n**`skill.yaml` format:**\n\n```yaml\nname: your-skill\nversion: 1.0.0\ncategory: engineering          # engineering | languages | business | creative | professional | education | agents\ntags: [tag1, tag2]\ndescription:\n  short: \"One-line description\"\n  long: \"Detailed description of what this skill does.\"\ncontext_budget:\n  minimal: 700\n  standard: 2800\n  comprehensive: 7500\ncomposable_with:\n  recommended: [skill-a, skill-b]\n  enhances: [skill-c]\nconflicts_with: []\nrequires_tools: false\nrequires_memory: false\n```\n\n**Prompt guidelines:**\n- Each tier must be **standalone** (does not depend on other tiers)\n- Prompts are behavioral guidance for AI assistants, not human documentation\n- `minimal.md`: numbered rules + anti-patterns list only\n- `standard.md`: prose-based principles, patterns, decision frameworks (no large code blocks)\n- `comprehensive.md`: full reference with code examples and reference tables\n\n**`test_cases.yaml` format:**\n\n```yaml\nname: your-skill-tests\nskill: your-skill\nversion: 1.0.0\ncases:\n  - id: descriptive-id\n    description: What behavior this tests\n    prompt: \"A realistic question a developer might ask\"\n    expected:\n      contains_any:\n        - keyword1\n        - keyword2\n      not_contains:\n        - bad answer phrase\n      min_length: 80\n    tags: [core, category]\n```\n\nRun `npx @djm204/agent-skills --test your-skill` to preview test cases, and check [`docs/skill-authoring-guide.md`](docs/skill-authoring-guide.md) for the complete authoring reference.\n\n### Adding a Legacy Template (IDE rule files)\n\n1. Create the template in the appropriate category directory:\n\n```text\ntemplates/<category>/your-template/\n└── .cursor/\n    └── rules/\n        ├── overview.mdc          # Scope and core principles (required)\n        ├── topic-one.mdc\n        └── topic-two.mdc\n```\n\n2. Follow existing patterns — look at `templates/engineering/web-frontend/` for reference.\n3. Add a `category` field to the template entry in `src/index.js`.\n\n### Testing\n\n```bash\nnpm test                         # Run all tests (490+)\nnpm run validate:rules           # Check template rule sizes (<100 lines)\nnode bin/cli.js --list           # List all skills/templates\nnode bin/cli.js golang-expert --adapter=raw   # Test adapter output\nnode bin/cli.js --test golang-expert          # Preview test cases\n```\n\n### Shared Rules\n\nThe `templates/_shared/` directory contains rules included with every IDE installation:\n\n- `core-principles.mdc` — Universal development principles\n- `code-quality.mdc` — Clean code patterns\n- `security-fundamentals.mdc` — Security basics\n- `git-workflow.mdc` — Git conventions\n- `communication.mdc` — AI communication style\n\nChanges to shared rules affect all templates — be thoughtful with modifications.\n\n### Submitting a PR\n\n1. Fork the repository\n2. Create a branch: `feat/your-skill-name`\n3. Add skill pack files and tests\n4. Run `npm test` and ensure all tests pass\n5. Submit a PR with a clear description of the skill's domain and behavioral focus\n\n---\n\n## License\n\nMIT © [David Mendez](https://github.com/djm204)\n","readmeFilename":"README.md"}