{"_id":"@c0x12c/ai-toolkit","_rev":"17-e5e39f8ab27acf6c982953a291f4d9a5","name":"@c0x12c/ai-toolkit","dist-tags":{"latest":"1.27.0"},"versions":{"1.15.0":{"name":"@c0x12c/ai-toolkit","version":"1.15.0","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.15.0","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"7c6a3a8042224482146f18fdfb64a8bc519a5f58","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.15.0.tgz","fileCount":255,"integrity":"sha512-6ISGq/HJYDO5DHipK41El+VwAURhRc1LydyySny4Viy49VGJTaiKAX1d1ZQAc0bHDPlT4Cai7Mhb04jtfmQiDg==","signatures":[{"sig":"MEQCIHQIxeYrvpbP8jCX1AynE7Tpoh4AowQ92UW3wvoVWXBcAiB/e4enBHRFn+uY9BT7q7xt0bP/EKLoq2MZa9IpLJPECQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1719892},"type":"module","engines":{"node":">=18"},"gitHead":"90831c6fbb16f3bef7615b06c87ac391458366b7","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.1","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.15.0_1774921206480_0.13068842890152443","host":"s3://npm-registry-packages-npm-production"}},"1.17.0":{"name":"@c0x12c/ai-toolkit","version":"1.17.0","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.17.0","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"51b5a65b8e82123ad1195f1bbac0c5bdee8c8bd7","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.17.0.tgz","fileCount":267,"integrity":"sha512-6ypNd0tl1QT+yGp5JMeigTu233sRxfhU4fY/sLeLcwnI0YDZYvNSO7cBJgBYwWgeztw/o2aiWE/RuHEwmtexbQ==","signatures":[{"sig":"MEUCIQDheQu/q4p58beQTaCp8aGIHLb0s5Kp1iZjhkgSIVimZQIgRrDZrMMJAXiDGX8navY7fWQp8ayG0IKnKy3an6ULM2I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1790190},"type":"module","engines":{"node":">=18"},"gitHead":"19d9fa1fdb664991bf65d486aa5604e34cbf7b28","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.1","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.17.0_1775016060841_0.3528084174682664","host":"s3://npm-registry-packages-npm-production"}},"1.18.0":{"name":"@c0x12c/ai-toolkit","version":"1.18.0","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.18.0","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"ee408c1674e37cfcfd4ba6457895b92d17291021","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.18.0.tgz","fileCount":267,"integrity":"sha512-qq+/1XPJRJorUzYduvw65G8SRuus6fDfYhl1VYWaeBdce5UkRNvOhJ0OwwQDYiIHY3lKoSRxWidGoGBbQ/Diow==","signatures":[{"sig":"MEYCIQCPp9UWG5pBPptN7NbSFgetEvSc7nuJHmd2umXYFvt/VwIhAOL8LT+FyvbzMK6UXqcOkb9SNgAjDtz+nJ+e65K+SqNT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1790478},"type":"module","engines":{"node":">=18"},"gitHead":"695a573f022328da3db9ae0a8f04e639ede39d18","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.1","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.18.0_1775019926345_0.4613751792665337","host":"s3://npm-registry-packages-npm-production"}},"1.20.0":{"name":"@c0x12c/ai-toolkit","version":"1.20.0","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.20.0","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"8a525dddce3369de2bfa2913f0f1c2a0e0119291","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.20.0.tgz","fileCount":269,"integrity":"sha512-4ZEjjp98R4ar1TV1qQB9yTRUyN//dMHighVMrgnTpgEbKS1Hi5SiHK39VU9XE1gCmJcg3/Cd5JDWbKSFmRzf1A==","signatures":[{"sig":"MEQCIHMsCu9yDf0dWlWEO1OG8jdSn5axZaWCGYqMeG0xrw7yAiB4GN55iozWEzUwJMWpGo5K9hSiiRAR6SNpIRFfUmw1jg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1797113},"type":"module","engines":{"node":">=18"},"gitHead":"e87b5504f2d650f9e74aae055f27bae0dcffe497","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.1","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.20.0_1775027186806_0.16199469499416552","host":"s3://npm-registry-packages-npm-production"}},"1.21.0":{"name":"@c0x12c/ai-toolkit","version":"1.21.0","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.21.0","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"fdf7cb7380b9d92d0bb161a740e219fdfc22c22b","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.21.0.tgz","fileCount":280,"integrity":"sha512-v3DFUPt08ZT01R2sIJbFpeYtr+oZ9yNN7FYFwj3YAoE2FrCPdWcO+7lIvNvMmtcWjJhOCZ8qjtzvaA3zNAigwA==","signatures":[{"sig":"MEQCIDkpS1zx66WpgdljUL3/bzqZQIcs0Vd1e9ORHW1JOlUyAiAxDXTui3q2/eSiT4HBRJu0RUeHgtfMJUBXDdJNnZmMcw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1843159},"type":"module","engines":{"node":">=18"},"gitHead":"77130c96a120b06520e371254a8ff00594b71104","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.2","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.21.0_1775130597523_0.644899958832438","host":"s3://npm-registry-packages-npm-production"}},"1.21.1":{"name":"@c0x12c/ai-toolkit","version":"1.21.1","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.21.1","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"3e0845f3d50166c917bd3f94bf02f9524de7e62f","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.21.1.tgz","fileCount":280,"integrity":"sha512-2a+ChMnlW6wNUQB6KZBroLtEuUepslgpmcQQBgNxwE04l9a79tQ4YhW2BUO0liw2t2VeIrkTKK4sVdpCzDj0DQ==","signatures":[{"sig":"MEUCIQCbP0UgNtMuyfajuJJgvl7gLfgfl1SgTFRFivhxiP0HZgIgd+RSONJdDYpVv56HktGB5flreTdj7n7Pd5lpQzSH6yA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1849567},"type":"module","engines":{"node":">=18"},"gitHead":"5cbeb9589107bb526ebc13f2185882bfbaa1fc86","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.2","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.21.1_1775465633930_0.6478518869115886","host":"s3://npm-registry-packages-npm-production"}},"1.22.0":{"name":"@c0x12c/ai-toolkit","version":"1.22.0","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.22.0","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"1a562b73968848832d2957ee8a6674b2881880df","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.22.0.tgz","fileCount":281,"integrity":"sha512-Wib9TXfx3rqK5Xghgu0iTzXayAsasWlm+xzqfSCVBDj787he06GNvApspLqv/jGYPb3MTvjgh/N3UE92+oFTzA==","signatures":[{"sig":"MEUCIAW00gA6NGfDMAcJnIBHEbw3nDstzmGdEy73eoUoDVarAiEAp8q7neRTxaRtRDdoFSJzq8Q7935jhgkxKeL60qsPXeM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1858774},"type":"module","engines":{"node":">=18"},"gitHead":"456450992ee7acd02a6d65343e9b50315fb3c3f8","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.2","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.22.0_1775618663278_0.08016325224196574","host":"s3://npm-registry-packages-npm-production"}},"1.22.1":{"name":"@c0x12c/ai-toolkit","version":"1.22.1","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.22.1","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"633e0309325e0b24a8679c05684d160ee8ca0655","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.22.1.tgz","fileCount":281,"integrity":"sha512-Wq9vR1ORnI95QgWMIYApnghb3TzUk+BdgmJ7yMxyCTow9Q3UNUQW8mwj+yJj+33q5KovgXbGlBQhcRXLUnwU8A==","signatures":[{"sig":"MEYCIQC9u7xWOSX3jiUVsuhcbdd3jezipf6X1WGxjVPGACd7PQIhAOV3y5rY4yAPOozFMBY+5s1MmVxKwjTAkc80aPQwEb+8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1860362},"type":"module","engines":{"node":">=18"},"gitHead":"e5374eb027c9b0fc57eecbbd5f561c3f3c3aa2fe","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.2","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.22.1_1776568694525_0.5125396443192771","host":"s3://npm-registry-packages-npm-production"}},"1.23.0":{"name":"@c0x12c/ai-toolkit","version":"1.23.0","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.23.0","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"2b38715a4fdc168c1017c2ebbb5507c9fc688841","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.23.0.tgz","fileCount":288,"integrity":"sha512-79VhiLobszSt+FjSTKI5SWqC1AT01iWxcw9QvAXbpGcVNNPapXONh0WY609PiG7x6daiCZgQ7Hx/D27wS1l7jQ==","signatures":[{"sig":"MEYCIQCA5i/Ul6ln6Y7LE8zB7psHqvz2Kd4jAFqSUez4TCfvjQIhAOrCVhH84VIRdN8sIPIVEjpO6oelpdxgujKtQq30gxBc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1906896},"type":"module","engines":{"node":">=18"},"gitHead":"92fa2a51f42591d249f84178ad1f8762350b3e61","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.2","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.23.0_1777383880011_0.14136359840624868","host":"s3://npm-registry-packages-npm-production"}},"1.24.0":{"name":"@c0x12c/ai-toolkit","version":"1.24.0","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.24.0","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"f2ccd8f084379a540e28f37f732b9b6b4b57e96f","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.24.0.tgz","fileCount":278,"integrity":"sha512-t1p7YHmWqC6QifgAs174NTdtyLesLtL2GB1Jr44kklY1VyTipBvX+3QU4DNN8ImW7M+VEc8qNDzxyJ66a9qj/w==","signatures":[{"sig":"MEYCIQCcAgzcHWHCQvL12HJsqqirTeaDCrtHlU7lek7oRrE8kwIhAJDXaH6O0AyDOxlQHsKmudKMW/1+3WAAgIvo916hQEQt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1845234},"type":"module","engines":{"node":">=18"},"gitHead":"887338f1af2cb1ec48be7ff0f5e0ffdd2db248a8","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.2","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.24.0_1777720130708_0.3374571162983935","host":"s3://npm-registry-packages-npm-production"}},"1.24.1":{"name":"@c0x12c/ai-toolkit","version":"1.24.1","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.24.1","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"449dcd3435fa6604d8d5d3d4be2289b04de0df8e","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.24.1.tgz","fileCount":278,"integrity":"sha512-ucVp132zIodA4DGLHpTDSVIkWsfIqwQIh9143i5I/TJJiLcmGMOC93PIWrr7RIaI+Rv0gny+vYbUnihaBQ7DIw==","signatures":[{"sig":"MEUCIQCd7TDR6XdG7/x6ps/76rZOLwgBjSKMIj3++W+cDL/AsAIgVWj5E7mwhIqKFDRQ4eQb+DD5HpaCK3+2NFLwjg3X9aw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1845607},"type":"module","engines":{"node":">=18"},"gitHead":"68cc64627e571a512f99c3a3e34d3ae143a363de","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.2","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.24.1_1777720788238_0.5565400664273197","host":"s3://npm-registry-packages-npm-production"}},"1.24.2":{"name":"@c0x12c/ai-toolkit","version":"1.24.2","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.24.2","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"f75ca5baf6d7ea9428690dea64e36b46e0fd6f80","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.24.2.tgz","fileCount":278,"integrity":"sha512-UKZU7+4ZKOm69JpJ2PgWXrhG8vYaXVBbIoB6e1gGsoVrhMlT8cQdWzuA85n/IOqSIMlhNTAh83yG2BIy5MDtVw==","signatures":[{"sig":"MEUCIADdabgruOIpKQH21c61tkiV4xN8BWCgFVK+hM9bn9uwAiEA018xy+QP7qKnuKu5ZlDYkoFqLDDbOEZxKLnREeehS9k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1845802},"type":"module","engines":{"node":">=18"},"gitHead":"458c81eb29a7fbe4dd322947da93361fcde12c4a","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.2","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.24.2_1777721591586_0.2603150621514527","host":"s3://npm-registry-packages-npm-production"}},"1.25.0":{"name":"@c0x12c/ai-toolkit","version":"1.25.0","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.25.0","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"16974ad9f3ac91519a29c4c70e7efeb96b8a370b","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.25.0.tgz","fileCount":278,"integrity":"sha512-r31GrdM50EJDAhh6ckNTCjgMWvgkMODoLePq52cKT7DLYW6eBNSWXIexbnXZ+rObI1x8Y+60hVlQWrkBhGmAOQ==","signatures":[{"sig":"MEUCIAfXtSwykG3PLvqtUSwUrq1+BqwbHmyANFpOVMYXxELHAiEA4yIUdto+P6972gLc9TU26UiEQB4oiemGR6OzWU1V5kU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1853925},"type":"module","engines":{"node":">=18"},"gitHead":"ccd75f94947a176b5b6659e6ed28599c6153f799","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.2","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.25.0_1777738183761_0.7251010856678719","host":"s3://npm-registry-packages-npm-production"}},"1.26.0":{"name":"@c0x12c/ai-toolkit","version":"1.26.0","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","_id":"@c0x12c/ai-toolkit@1.26.0","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"}],"homepage":"https://github.com/c0x12c/ai-toolkit#readme","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"bin":{"ai-toolkit":"bin/cli.js"},"dist":{"shasum":"8e0e31993a76a944a903cf358893371a5f4584fa","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.26.0.tgz","fileCount":283,"integrity":"sha512-l3PxI9ScOF5ikENEYV59Y4B2bhUJ4GGHcRj0rpQwIIACHKpclKjl0ZaBsUWxChV8s0IY5O4aWf9YQ/HWUDL9RA==","signatures":[{"sig":"MEYCIQDPNBJHTy7N4XfyelT+mB41O1Vc4qmNMmiLFmm9ldlcrAIhAJgg2RhH2IiEgxG8WoJjtCGsFWx5Yj4NO0ZfLWInabZ4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1900633},"type":"module","engines":{"node":">=18"},"gitHead":"965f256bda59d78df779d548f892fc31dd0cb2cd","scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"repository":{"url":"git+https://github.com/c0x12c/ai-toolkit.git","type":"git"},"_npmVersion":"10.8.2","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","directories":{},"_nodeVersion":"20.20.2","dependencies":{"js-yaml":"^4.1.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ai-toolkit_1.26.0_1778482635156_0.5389602403771026","host":"s3://npm-registry-packages-npm-production"}},"1.27.0":{"name":"@c0x12c/ai-toolkit","version":"1.27.0","description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","type":"module","bin":{"ai-toolkit":"bin/cli.js"},"keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"license":"MIT","repository":{"type":"git","url":"git+https://github.com/c0x12c/ai-toolkit.git"},"scripts":{"test":"node --test lib/resolver.test.js lib/assembler.test.js lib/detector.test.js","gen:codex":"node scripts/gen-codex-skills.js","check:codex":"node scripts/check-codex-skills.js","prepublishOnly":"node scripts/compile-packs.js && node scripts/gen-codex-skills.js"},"engines":{"node":">=18"},"dependencies":{"js-yaml":"^4.1.1"},"_id":"@c0x12c/ai-toolkit@1.27.0","gitHead":"96b2c9d099f8507a95b9e43916f144594720a3c9","bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"homepage":"https://github.com/c0x12c/ai-toolkit#readme","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-NZ3DAt4Rct7ONG2eJ+F78u7fDOfDG1RWJDcnbAydFhq2HmuiMWKsmqzecL/Tu7cWjlo76zp4oMBcBXkfBVm4Ug==","shasum":"d3e531788d550a8b32d0c517b860aa19117a8122","tarball":"https://registry.npmjs.org/@c0x12c/ai-toolkit/-/ai-toolkit-1.27.0.tgz","fileCount":283,"unpackedSize":1903517,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAUzh4xw2Ih4o1eF58vcAiecMbU7kdNryYkHVgrab9TUAiEApCuYyq+uTvz9HnMQQ6NbOkRDlS9ojhSU3MditNMD1Fs="}]},"_npmUser":{"name":"duc.duong","email":"duc.duong@c0x12c.com"},"directories":{},"maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"},{"name":"dai.nguyen","email":"dai.nguyen@c0x12c.com"},{"name":"chanc0x12c","email":"chan@c0x12c.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ai-toolkit_1.27.0_1781760546680_0.0239305098509357"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-31T01:40:06.348Z","modified":"2026-06-18T05:29:07.089Z","1.15.0":"2026-03-31T01:40:06.728Z","1.17.0":"2026-04-01T04:01:01.074Z","1.18.0":"2026-04-01T05:05:26.555Z","1.20.0":"2026-04-01T07:06:26.982Z","1.21.0":"2026-04-02T11:49:57.719Z","1.21.1":"2026-04-06T08:53:54.177Z","1.22.0":"2026-04-08T03:24:23.524Z","1.22.1":"2026-04-19T03:18:14.736Z","1.23.0":"2026-04-28T13:44:40.303Z","1.24.0":"2026-05-02T11:08:50.892Z","1.24.1":"2026-05-02T11:19:48.462Z","1.24.2":"2026-05-02T11:33:11.832Z","1.25.0":"2026-05-02T16:09:43.981Z","1.26.0":"2026-05-11T06:57:15.362Z","1.27.0":"2026-06-18T05:29:06.886Z"},"bugs":{"url":"https://github.com/c0x12c/ai-toolkit/issues"},"license":"MIT","homepage":"https://github.com/c0x12c/ai-toolkit#readme","keywords":["claude-code","ai-toolkit","cursor","windsurf","codex","copilot","engineering","agent-skills"],"repository":{"type":"git","url":"git+https://github.com/c0x12c/ai-toolkit.git"},"description":"Engineering discipline layer for AI coding agents — commands, rules, skills, agents, and packs for Claude Code","maintainers":[{"name":"duc.duong","email":"duc.duong@c0x12c.com"},{"name":"nguyen.truong","email":"nguyen.truong@c0x12c.com"},{"name":"khoa.d.tran","email":"khoa.dang.tran@c0x12c.com"},{"name":"tuongdang","email":"tuong.dang@c0x12c.com"},{"name":"spartan-dev","email":"dev@c0x12c.com"},{"name":"dai.nguyen","email":"dai.nguyen@c0x12c.com"},{"name":"chanc0x12c","email":"chan@c0x12c.com"}],"readme":"# Spartan AI Toolkit\n\n> Workflow-first engineering discipline for AI coding tools. Workflows solve problems end-to-end. Skills provide knowledge at each step. Agent memory carries context across sessions.\n\n---\n\n## Install\n\nThree ways to install. Pick one.\n\n### Option 1: npx (recommended)\n\n```bash\nnpx @c0x12c/ai-toolkit@latest\n```\n\nInteractive menu — pick your AI tool and packs. Works out of the box.\n\n```bash\n# Or specify packs directly\nnpx @c0x12c/ai-toolkit@latest --packs=backend-micronaut,product\n\n# Install everything\nnpx @c0x12c/ai-toolkit@latest --all\n\n# Install for Cursor instead of Claude Code\nnpx @c0x12c/ai-toolkit@latest --agent=cursor\n```\n\n**Supported agents:** `claude-code` (default), `cursor`, `windsurf`, `codex`, `copilot`\n\n### Option 2: Setup script\n\n```bash\ngit clone https://github.com/c0x12c/ai-toolkit.git\ncd ai-toolkit/toolkit\nchmod +x scripts/setup.sh\n./scripts/setup.sh --global\n```\n\n### Option 3: Claude Code plugin\n\nSearch for **\"Spartan AI Toolkit\"** in the Claude Code plugin marketplace.\n\n### Global vs Local\n\n- `--global` installs to `~/.claude/` — works across all projects (default)\n- `--local` installs to `./.claude/` — only this project\n\nAfter install, open any project, run `claude`, then type `/spartan`.\n\n---\n\n## Demo: Web-to-PRD\n\nScan a live web app, extract every feature, generate a structured PRD with epics and stories, then export to Notion.\n\n```\n/spartan:web-to-prd \"https://screensdesign.com\"\n```\n\n![Web-to-PRD scanning screensdesign.com](https://raw.githubusercontent.com/c0x12c/ai-toolkit/main/docs/images/web-to-prd-demo.png)\n\nUses Playwright MCP (browser control) + Notion MCP (export). Auto-installs prerequisites, handles login, and asks for confirmation at each step.\n\n---\n\n## How to Use\n\n### The core workflow\n\nEvery feature follows the same pipeline. Skip steps that don't apply.\n\n```\n/spartan:spec → /spartan:ux → /spartan:plan → /spartan:build → /spartan:pr-ready\n      ↑             ↑               ↑              ↑ + 3.5           ↑\n    Gate 1     Design Gate       Gate 2          Gate 3           Gate 4\n```\n\n| Step | What happens |\n|------|-------------|\n| `spec` | Interactive Q&A &rarr; saved spec &rarr; Gate 1 checks quality |\n| `design` | Design doc + dual-agent review (skip for backend-only) |\n| `plan` | Architecture + task breakdown from spec &rarr; Gate 2 |\n| `build` | TDD task by task, picks up saved spec/plan |\n| `gate-review` | Builder + reviewer agent both must accept |\n| `pr-ready` | Rebase, test, lint, create PR |\n\n**Bigger work?** Use `/spartan:epic` to break it into ordered features, then run the pipeline for each one.\n\n**Skills load automatically** based on your stack. Kotlin files &rarr; `kotlin-best-practices`. React components &rarr; `ui-ux-pro-max`. Migrations &rarr; `database-patterns`. You don't pick them.\n\n**Agent memory** (`.planning/`, `.memory/`) carries specs, plans, decisions, and patterns across sessions. The AI builds on what it already knows instead of starting from scratch.\n\n**Rules** load every session with zero tokens. They enforce coding standards silently.\n\n---\n\n## Pick Your Packs\n\nPacks group commands, rules, skills, and agents by use case. **Core is always installed.** Pick the rest based on what you're building.\n\n### \"I'm building a Kotlin + Micronaut backend\"\n\n```bash\nnpx @c0x12c/ai-toolkit@latest --packs=backend-micronaut\n```\n\nThis pulls in `backend-micronaut` + its dependencies (`database` and `shared-backend` auto-included). You get migration commands, API design rules, Kotlin coding standards, test patterns, and two expert agents.\n\n### \"I'm building a React + Next.js frontend\"\n\n```bash\nnpx @c0x12c/ai-toolkit@latest --packs=frontend-react\n```\n\nYou get Next.js scaffolding, Figma-to-code, E2E testing setup, frontend review, and the UI/UX design skill.\n\n### \"Full-stack Kotlin + Next.js\"\n\n```bash\nnpx @c0x12c/ai-toolkit@latest --packs=backend-micronaut,frontend-react\n```\n\n### \"I'm managing AWS infrastructure with Terraform\"\n\n```bash\nnpx @c0x12c/ai-toolkit@latest --packs=infrastructure\n```\n\nYou get Terraform scaffolding (ECS + EKS), module creation, security audits, drift detection, cost optimization, and two infrastructure agents. Rules enforce naming, state management, provider placement, and security patterns.\n\n### \"I'm exploring startup ideas\"\n\n```bash\nnpx @c0x12c/ai-toolkit@latest --packs=research\n```\n\nResearch pack pulls in `product` as a dependency. You get brainstorming, validation, market research, competitor teardowns, pitch materials, and investor outreach.\n\n### \"Give me everything\"\n\n```bash\nnpx @c0x12c/ai-toolkit@latest --all\n```\n\n---\n\n## All Packs\n\n| Pack | Category | Depends on | What you get |\n|------|----------|------------|--------------|\n| **core** | Core | — | Always installed. Workflows (build, fix, onboard), spec, plan, gate-review, pr-ready, daily, safety commands, phase-reviewer agent |\n| **backend-micronaut** | Backend | database, shared-backend | Kotlin service scaffold, code review, testcontainers, API/DB/Kotlin rules, 5 skills, 2 agents |\n| **backend-nodejs** | Backend | database, shared-backend | Coming soon |\n| **backend-python** | Backend | database, shared-backend | Coming soon |\n| **frontend-react** | Frontend | — | Design workflow, Next.js scaffold, Figma-to-code, E2E, frontend review, UI/UX + design-workflow skills, design-critic agent |\n| **product** | Planning | — | Think-before-build, validate, teardown, interview, lean canvas, brainstorm |\n| **infrastructure** | Ops | — | Terraform + AWS: scaffold, modules, review, plan, deploy, import, drift, cost, security. 7 rules, 5 skills, 2 agents |\n| **ops** | Ship | — | Deploy + env-setup, 2 skills (ops-investigate-alert, ops-oncall-log) |\n| **research** | Research | product | Startup + research workflows, kickoff to investor outreach, 10 skills, 2 agents |\n\nHidden packs (`database`, `shared-backend`) get pulled in as dependencies — you don't pick them directly.\n\n---\n\n## Commands\n\nAll commands start with `/spartan:` (e.g., `/spartan:spec \"feature\"`).\n\nType `/spartan` to get the smart router — it asks what you need and picks the right command.\n\n### Workflows (core + research packs)\n| Command | What it does |\n|---------|-------------|\n| `build [mode] [feature]` | Build a feature end-to-end (backend, frontend, or auto-detect) |\n| `fix [symptom]` | Find and fix a bug with structured investigation |\n| `research [topic]` | Deep research with source tracking and report |\n| `startup [idea]` | Full startup pipeline: brainstorm to investor-ready |\n| `onboard` | Understand a new codebase and set up tooling |\n\n### Core (always installed)\n| Command | What it does |\n|---------|-------------|\n| `spec \"feature\"` | Write a feature spec — saves to `.planning/specs/` |\n| `plan \"feature\"` | Write implementation plan from spec — saves to `.planning/plans/` |\n| `gate-review [phase]` | Dual-agent review (Gate 3.5) — builder + reviewer both accept |\n| `daily` | Standup summary from git history |\n| `pr-ready` | Full checklist before creating any PR |\n| `codex` | Run Codex as a second-opinion reviewer |\n| `commit-message-with-codex` | Commit, open PR, then chain into Codex PR review |\n| `ship-pr-codex` | Run Codex PR review rounds and apply clear fixes |\n| `init-project` | Auto-generate CLAUDE.md from codebase scan |\n| `context-save` | Save session state to resume later |\n| `update` | Check for toolkit updates |\n| `careful` | Warn before destructive ops |\n| `freeze <dir>` | Lock edits to one directory |\n| `unfreeze` | Remove directory lock |\n| `guard <dir>` | careful + freeze combined |\n| `epic \"name\"` | Break big work into ordered features |\n| `brownfield \"svc\"` | Map unfamiliar codebase before touching it |\n\n### Backend (backend-micronaut pack)\n| Command | What it does |\n|---------|-------------|\n| `kotlin-service \"name\"` | Scaffold new Micronaut microservice |\n| `review` | PR review with Kotlin/Micronaut conventions |\n| `testcontainer \"type\"` | Setup Testcontainers integration testing |\n| `migration \"desc\"` | Create Flyway database migration |\n\n### Frontend (frontend-react pack)\n| Command | What it does |\n|---------|-------------|\n| `design \"feature\"` | Design workflow with dual-agent review (Design Gate) |\n| `next-app \"name\"` | Scaffold new Next.js app |\n| `next-feature \"name\"` | Add feature to existing Next.js app |\n| `fe-review` | PR review with Next.js conventions |\n| `figma-to-code \"url\"` | Figma design to production React |\n| `e2e \"feature\"` | Setup Playwright E2E testing |\n\n### Product (product pack)\n| Command | What it does |\n|---------|-------------|\n| `think` | Guided thinking before coding |\n| `validate` | Score an idea — GO / TEST MORE / KILL |\n| `teardown` | Deep competitor analysis |\n| `interview` | Mom Test interview questions |\n| `lean-canvas` | Fill out a 9-block Lean Canvas |\n| `brainstorm` | Generate and rank ideas |\n| `web-to-prd \"URL\"` | Scan a live web app with Playwright, extract features, generate PRD with epics/stories, export to Notion |\n\n### Infrastructure (infrastructure pack)\n| Command | What it does |\n|---------|-------------|\n| `tf-scaffold \"service\"` | Scaffold service-level Terraform (ECS or EKS) |\n| `tf-module \"name\"` | Create/extend Terraform modules |\n| `tf-review` | PR review for Terraform changes (8-stage checklist) |\n| `tf-plan \"env\"` | Guided plan workflow with destructive change flagging |\n| `tf-deploy \"env\"` | Deployment checklist with pre/post verification |\n| `tf-import \"resource\"` | Import existing AWS resources into state |\n| `tf-drift \"env\"` | Detect and categorize infrastructure drift |\n| `tf-cost` | Cost estimation and optimization guidance |\n| `tf-security` | Security audit (IAM, network, encryption, secrets) |\n\n### Ship (ops pack)\n| Command | What it does |\n|---------|-------------|\n| `deploy \"svc\" \"target\"` | Deploy + verify |\n| `env-setup \"svc\"` | Audit env vars across environments |\n\n### Research (research pack)\n| Command | What it does |\n|---------|-------------|\n| `startup [idea]` | Full pipeline from brainstorm to outreach |\n| `kickoff [theme]` | Start new idea — brainstorm + validate |\n| `deep-dive [project]` | Market research + competitor teardowns |\n| `fundraise [project]` | Pitch materials + investor outreach |\n| `research [topic]` | Deep research with source checking |\n| `pitch [type]` | Investor-facing materials |\n| `outreach [investor]` | Draft investor emails |\n| `content [source]` | Turn ideas into platform-native content |\n| `write [topic]` | Write blog posts and articles |\n\n---\n\n## Skills\n\nSkills give Claude deeper knowledge in specific areas. They're loaded automatically when you use related commands.\n\n| Skill | Pack | What it does |\n|-------|------|-------------|\n| `api-endpoint-creator` | backend-micronaut | Generate Controller → Manager → Repository stack |\n| `database-table-creator` | database | SQL migration → Table → Entity → Repository → Tests |\n| `backend-api-design` | backend-micronaut | RPC-style API design patterns |\n| `database-patterns` | database | Schema design, migrations, Exposed ORM |\n| `kotlin-best-practices` | backend-micronaut | Null safety, Either, coroutines |\n| `testing-strategies` | backend-micronaut | Integration test patterns for Micronaut |\n| `security-checklist` | backend-micronaut | Auth, validation, OWASP prevention |\n| `ui-ux-pro-max` | frontend-react | Design intelligence — styles, palettes, font pairings, stacks |\n| `terraform-service-scaffold` | infrastructure | Scaffold service Terraform (ECR, RDS, Redis, S3, ECS/EKS) |\n| `terraform-module-creator` | infrastructure | Create reusable Terraform modules |\n| `terraform-review` | infrastructure | PR review checklist for Terraform |\n| `terraform-security-audit` | infrastructure | 6-area security audit for Terraform |\n| `terraform-best-practices` | infrastructure | Quick reference for Terraform conventions |\n| `brainstorm` | research | Idea generation and ranking |\n| `idea-validation` | research | Score ideas with structured checklist |\n| `market-research` | research | Market sizing, trends, opportunities |\n| `competitive-teardown` | research | Deep competitor analysis |\n| `deep-research` | research | Multi-source research with citations |\n| `investor-materials` | research | Pitch deck, one-pager, financial model |\n| `investor-outreach` | research | Investor targeting and outreach |\n| `article-writing` | research | Long-form content creation |\n| `content-engine` | research | Content strategy and production |\n| `startup-pipeline` | research | Full startup research pipeline |\n| `web-to-prd` | product | Scan web apps, extract features, generate PRD, export to Notion |\n| `ops-investigate-alert` | ops | Investigate monitoring alerts end-to-end |\n| `ops-oncall-log` | ops | Create on-call log from monitoring alerts |\n\n---\n\n## Agents\n\n| Agent | Pack | What it does |\n|-------|------|-------------|\n| `micronaut-backend-expert` | backend-micronaut | Micronaut framework, database design, API architecture |\n| `solution-architect-cto` | backend-micronaut | System design, scalability, tech decisions |\n| `infrastructure-expert` | infrastructure | AWS + Terraform, c0x12c modules, EKS/ECS, security |\n| `sre-architect` | infrastructure | Multi-account strategy, cost optimization, DR planning |\n| `idea-killer` | research | Stress-test ideas, find weaknesses |\n| `research-planner` | research | Plan and coordinate research workflows |\n\n---\n\n## Rules\n\nRules are enforced automatically every session. No action needed — they're active as long as the pack is installed.\n\n| Rule | Pack |\n|------|------|\n| `NAMING_CONVENTIONS` | core |\n| `TIMEZONE` | core |\n| `ARCHITECTURE` | shared-backend |\n| `SCHEMA` | database |\n| `ORM_AND_REPO` | database |\n| `TRANSACTIONS` | database |\n| `KOTLIN` | backend-micronaut |\n| `CONTROLLERS` | backend-micronaut |\n| `SERVICES_AND_BEANS` | backend-micronaut |\n| `API_DESIGN` | backend-micronaut |\n| `RETROFIT_PLACEMENT` | backend-micronaut |\n| `FRONTEND` | frontend-react |\n| `STRUCTURE` | infrastructure |\n| `MODULES` | infrastructure |\n| `STATE_AND_BACKEND` | infrastructure |\n| `NAMING` | infrastructure |\n| `SECURITY` | infrastructure |\n| `VARIABLES` | infrastructure |\n| `PROVIDERS` | infrastructure |\n\n---\n\n## Using with Other AI Tools\n\nAll content is standard markdown. The npx installer supports multiple agents:\n\n```bash\n# Cursor — installs rules to .cursor/rules/\nnpx @c0x12c/ai-toolkit@latest --agent=cursor\n\n# Windsurf — installs rules to .windsurf/rules/\nnpx @c0x12c/ai-toolkit@latest --agent=windsurf\n\n# Codex — installs to .codex/\nnpx @c0x12c/ai-toolkit@latest --agent=codex\n\n# Copilot — installs to .github/copilot/\nnpx @c0x12c/ai-toolkit@latest --agent=copilot\n```\n\nFor other tools, copy the rule files from `toolkit/rules/` into your tool's config directory.\n\n---\n\n## Project Config\n\nCustomize any Spartan command per project. Two config files in `.spartan/`:\n\n### `.spartan/build.yaml` — Build workflow config\n\nControls `/spartan:build` behavior:\n\n```yaml\nbranch-prefix: \"feature\"    # branch name: [prefix]/[slug]\nmax-review-rounds: 3        # review-fix cycles before asking user\nskip-stages: []             # skip: spec, design, plan, ship (never review)\n\nprompts:\n  spec: |\n    Always include performance requirements.\n  plan: |\n    Every task must reference a Jira ticket.\n  implement: |\n    Add structured logging to new service methods.\n  review: |\n    Check all API responses include request_id.\n  ship: |\n    PR title: [PROJ-123] Short description.\n```\n\n### `.spartan/commands.yaml` — Per-command prompt injection\n\nInject custom instructions into ANY Spartan command:\n\n```yaml\nprompts:\n  review: |\n    Flag any function longer than 50 lines.\n  pr-ready: |\n    Always add \"Reviewers: @backend-team\" for backend changes.\n  daily: |\n    Include blockers section. Tag by project area.\n  debug: |\n    Always check CloudWatch logs first.\n  migration: |\n    Migration files must start with ticket number.\n```\n\nTemplates for both files are in `toolkit/templates/`.\n\n---\n\n## AI-Powered Design (Optional)\n\nThe design workflow (`/spartan:ux`) can generate real images for prototypes using Google Gemini.\n\n### Setup\n\n1. Get a [Gemini API key](https://aistudio.google.com/apikey)\n\n2. Create `.spartan/ai.env` in your project root:\n\n```bash\necho \"GEMINI_API_KEY=your-key-here\" > .spartan/ai.env\n```\n\n3. Install Python dependencies:\n\n```bash\npip install google-genai Pillow\n```\n\n4. Use it:\n\n```bash\n/spartan:ux prototype    # generates images for your design\n```\n\n> **Note:** The installer adds `.spartan/ai.env` to `.gitignore` automatically. If you set this up manually, make sure `.spartan/ai.env` is in your `.gitignore` &mdash; never commit API keys.\n\n---\n\n## Target Stack\n\nRules and skills are tuned for this stack, but the command framework works with anything:\n\n| Layer | Technology |\n|-------|-----------|\n| Backend | Kotlin + Micronaut |\n| Frontend | React + Next.js + TypeScript |\n| Infrastructure | Terraform + AWS (EKS/ECS, RDS, ElastiCache, S3) |\n| Database | PostgreSQL |\n| CI/CD | GitHub Actions |\n\n> **Different stack?** Fork the repo, edit the rules and skills, run the installer. Commands work with any language or framework.\n","readmeFilename":"README.md"}