{"_id":"@hasna/skills","_rev":"137-3e8a6556b192b289344a6a460655fe3d","name":"@hasna/skills","dist-tags":{"latest":"0.10.4"},"versions":{"0.0.2":{"name":"@hasna/skills","version":"0.0.2","keywords":["skills","ai","agent","cli","typescript","bun","claude","automation"],"author":{"name":"Hasna"},"license":"MIT","_id":"@hasna/skills@0.0.2","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"4d436ccec4a0699da797f6bfe02711f966c2e8eb","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.0.2.tgz","fileCount":1571,"integrity":"sha512-9zwy4hTj89d2oKDyE1Fnvq0nHLw//6VTp0Y04ETZKFVw3g0BT9iCTWSwpYwBqd8LGySpsduxH7t5rg8yAnk0wQ==","signatures":[{"sig":"MEUCIFpHGv7c83806dCsTB5b6yNmZJ3ZCeO1hrQ1dJdn7QH9AiEAlo7RcFDbVpEJ1tn3hbZIgZAifVrpQvIaHTU7t5wTOZc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8108215},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"292c06cac27eba7589270ff16be5e0c58db0794f","scripts":{"dev":"bun run ./src/cli/index.tsx","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk --external conf && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.8.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.9.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","conf":"^13.0.1","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.0.2_1771066870392_0.013484682944952198","host":"s3://npm-registry-packages-npm-production"}},"0.0.3":{"name":"@hasna/skills","version":"0.0.3","keywords":["skills","ai","agent","cli","typescript","bun","claude","automation"],"author":{"name":"Hasna"},"license":"MIT","_id":"@hasna/skills@0.0.3","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"71dd04eabffd40795a94d1a65f151c61451f4342","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.0.3.tgz","fileCount":1198,"integrity":"sha512-0aR1/taeN0e5t9jy8WZZfnyERY+i85psIg4jSw1rWCSHhF1RKvGcsVOwdsGv5frYffuJERDJgXuKZhgPGX+l5g==","signatures":[{"sig":"MEUCIQDp3F8RNZSyt/2BTV3I7HmQuaKBCIpEsN6lFqurL3H5zQIgMfifhIP/smCPN0G8E4QRucUQkjbal2JdqQnmTx0j1Bk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6856767},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"f1d82e3935128f7470e18c35d280b6adc903ed34","scripts":{"dev":"bun run ./src/cli/index.tsx","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk --external conf && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun","typecheck":"tsc --noEmit","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.8.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.9.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","conf":"^13.0.1","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.0.3_1771067510536_0.5221722708724907","host":"s3://npm-registry-packages-npm-production"}},"0.0.4":{"name":"@hasna/skills","version":"0.0.4","keywords":["skills","ai","agent","cli","typescript","bun","claude","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.0.4","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"e07c91d0682e00b6580c8c6810df72b48ce6247f","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.0.4.tgz","fileCount":1147,"integrity":"sha512-hTHKe6YNf9uvnZegpDIi37vyvPlMBLRRKMYEePrR0PBIF1NzMre/BTeFI4LOyE6RwszeBUgzo+kLnu654mvfmQ==","signatures":[{"sig":"MEQCICR8qwTs5xcKpQ6sXtyUxDu6JQDVwEL3nO993P9TRNuiAiBjuA29kw+UjrfwNWjHc0+VguYMpZFIDI0JmGel7Rwjmg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6253459},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"5fa04874bf61b17e9a068bb6dee39d8b18f12300","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.10.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"25.2.1","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.0.4_1771101143456_0.6205635444807236","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@hasna/skills","version":"0.1.1","keywords":["skills","ai","agent","cli","typescript","bun","claude","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.1","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"f9ca0e8fbd46ef2b65755fb2dc0417bc05c63d03","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.1.tgz","fileCount":1147,"integrity":"sha512-TBw7Nt2NScZKekTja4ZJfcgr66aOmMIAU+LEasq2dJeOir8keHfNagmurkWvKf+o9knS5+u3QCXu7D3O0s2d1g==","signatures":[{"sig":"MEYCIQCNwkJIZcU4ca7jS76J/L9tJ8igpUTPc80zVbCyHdrvqAIhAI9sAqo5CjDOnqGGNZireWhcSHjlo5Xn1bzOpMUq2o38","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6253459},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"7d68593acf22f97fc794ca8d5ce1fed81bc4781c","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.10.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"25.2.1","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.1_1771101237962_0.18375776907044794","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@hasna/skills","version":"0.1.2","keywords":["skills","ai","agent","cli","typescript","bun","claude","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.2","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"d990807e4711b381ebbb52e95d4e99a0ede705ad","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.2.tgz","fileCount":1148,"integrity":"sha512-LkVEbXX4qUaZvgw9L4yQw7zo3s2CmNpSXJ7mA6z48bfMvTkmv7ARusPs4MdiyQx89EK1IuRgFbCxECWtHb5gJw==","signatures":[{"sig":"MEYCIQCP2fgU1o3UTbuz0XjLCFQnBg1+M8LYDmg8hb4mDvPzTgIhAJtk8L3WakVPY8F/wPrrC9S0fwEGiBBJyahEt2gxlnQz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6253470},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"25de1a4e52aa3cbc75d742bf22f99d50caaeecd0","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.10.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"25.2.1","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.2_1771144301889_0.4046363816427232","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@hasna/skills","version":"0.1.3","keywords":["skills","ai","agent","cli","typescript","bun","claude","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.3","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"e9314f55d98144d331d65c0e832703fde68dc27c","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.3.tgz","fileCount":1148,"integrity":"sha512-/OoJB+h0J0H+MoJ2ytyOpnirWV+suYVKNsGZMmAzYTUyGiGvGoA2vlwJ11Pu6EF35bqgNeaUqmPxY2x4vRQSKA==","signatures":[{"sig":"MEUCIBW3rioRZqEICxxzbQtLPpXN684oijL55ujT7Lh9CFu5AiEAksduLCGMT4EMlCP662ma+Qq8jooIBAeI6r2gvbyi0fs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6253453},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"9a855a31ce5b86e4b2bbc670638847a8141d5105","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.10.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"25.2.1","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.3_1771144517542_0.11447820049270296","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@hasna/skills","version":"0.1.4","keywords":["skills","ai","agent","cli","typescript","bun","claude","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.4","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"7f248d4c9988d331306c90c0c2a7cad8a9163702","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.4.tgz","fileCount":1148,"integrity":"sha512-gNCEyTaS/4f3d+mfRKizeVHiGTK5MH4w8VQ2h8p1M/q/H4U0BkKGwcO12NQiQVWoUbXSDVQVrEc0/SPCFPmC3Q==","signatures":[{"sig":"MEUCIA8U73gSRoduIa/AW6gohGV2K+n1I8+7N3xPERZI/ZLYAiEA7noIsvUrHkN8/7kFZGVS3wOUsvWlk+E/w/tgdXpFw+A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6255478},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"61d9f91d10317a3ae7fc2ffa047b814e288bae68","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.10.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"25.2.1","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.4_1771149195848_0.39718465421654003","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@hasna/skills","version":"0.1.5","keywords":["skills","ai","agent","cli","typescript","bun","claude","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.5","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"2cbc06340974d26e5005b3e6eaad6613ec37580a","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.5.tgz","fileCount":1154,"integrity":"sha512-7NoOVrSI9Xh/uGG9QydEq//yPjrMJk26wYDTNodWIIJhEGV0wXTkBV9DZ8/cQaWaq7L21i9w1l+bs/2FtVteKQ==","signatures":[{"sig":"MEUCIHYUFB9eKUebGumnQtTeg25JbTTZmjF0BNRjsKj3Qk02AiEAjvE+qVlyS4/V3Yenmz4Ywe5h0HdNBvrZZugXP9QUiTs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6284021},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"2cbc06340974d26e5005b3e6eaad6613ec37580a","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-7NoOVrSI9Xh/uGG9QydEq//yPjrMJk26wYDTNodWIIJhEGV0wXTkBV9DZ8/cQaWaq7L21i9w1l+bs/2FtVteKQ==","repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.5_1773150119046_0.18217585784066337","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@hasna/skills","version":"0.1.6","keywords":["skills","ai","agent","cli","typescript","bun","claude","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.6","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"717154bcd1787fa240ca843322763d9d37982c7f","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.6.tgz","fileCount":1154,"integrity":"sha512-0MAb9ePSPqmbm8xonlSh+QjbivBhF1rEG5bm3fX8avBF8qNpfFrpKdM/hTn5norheEb4YO9r6g97oDlI8jlXrQ==","signatures":[{"sig":"MEUCIGUa93nlXk9ibKEoq5T+i23UPKknbja9a3gnoazKCvKrAiEAnwukmL0HPdmSw/c3blgx/B5uRRPg22GLEpOUj6qSHko=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6297667},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"717154bcd1787fa240ca843322763d9d37982c7f","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-0MAb9ePSPqmbm8xonlSh+QjbivBhF1rEG5bm3fX8avBF8qNpfFrpKdM/hTn5norheEb4YO9r6g97oDlI8jlXrQ==","repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.6_1773166311216_0.9923938448675289","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@hasna/skills","version":"0.1.7","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.7","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"7a28892e63322820247256295784cae490b5671c","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.7.tgz","fileCount":1154,"integrity":"sha512-XHL0iR2hd/sliRGCGqzDGbBzac3TZYCM30ZM1yGgnh15X+5mUWcb0WxEvGBMlGFuGbD1iFqFnE3jbFsmMOfpaA==","signatures":[{"sig":"MEYCIQDClhTQpX6NiSy30DDrG4Dq6NoUjaLSeUluw2Z8GZjAWQIhAM4NyUrLtyA/Se7aYEiBEKQraPoFz8jOUxNKoi7fWUVz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6298100},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"7a28892e63322820247256295784cae490b5671c","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-XHL0iR2hd/sliRGCGqzDGbBzac3TZYCM30ZM1yGgnh15X+5mUWcb0WxEvGBMlGFuGbD1iFqFnE3jbFsmMOfpaA==","repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.7_1773204403343_0.1567039749043173","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@hasna/skills","version":"0.1.8","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.8","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"06964815bc31ef1dffd0aceff95513e12b067743","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.8.tgz","fileCount":1154,"integrity":"sha512-Ec+7CpO28dShYNuxOjPabdGldzVuhFmsCNrbLzuhBU796+d2jxLJQksN810jzz6vB6oIV0gnKk/yAV1uHuapIA==","signatures":[{"sig":"MEUCIHf9pjK/ZzO4JSGglfTy9NybkDuIFYk7PJC8AxuuMjymAiEA1hYt/Vq5vh0x2IOAVdth/HxSjrFrJOjA+lnZzxW7a2A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6328121},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"06964815bc31ef1dffd0aceff95513e12b067743","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-Ec+7CpO28dShYNuxOjPabdGldzVuhFmsCNrbLzuhBU796+d2jxLJQksN810jzz6vB6oIV0gnKk/yAV1uHuapIA==","repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.8_1773216737921_0.9959649746174715","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@hasna/skills","version":"0.1.9","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.9","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"8d1a959165624b7b177d8bdd46e4b46a81747546","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.9.tgz","fileCount":1154,"integrity":"sha512-JJhzqjaeE6F3nWgYnE5EZ0rbOr+Hu2TUlbII+jfEvehTW0ivSzNPndOO0Pp2109ETz+13ICxUcg6A52cHTiGDA==","signatures":[{"sig":"MEUCIQDA/QpBwYFGEoSdwPVJgZwpcUFEGgQznR+OD8n/jFPvlAIgSxgCNcICL6IucWeMnRrtGAA/Kp0emNi6iylYIQrN9c4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6328727},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"8d1a959165624b7b177d8bdd46e4b46a81747546","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-JJhzqjaeE6F3nWgYnE5EZ0rbOr+Hu2TUlbII+jfEvehTW0ivSzNPndOO0Pp2109ETz+13ICxUcg6A52cHTiGDA==","repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.9_1773264264600_0.5540923667771511","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@hasna/skills","version":"0.1.10","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.10","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"c48b78452cb281d236858f94eb845143289dce0c","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.10.tgz","fileCount":1154,"integrity":"sha512-GPKxynafck6KIWexPRkXK2HLPVtuqaIU+jbTKXmuJslmEzD0CfJs4sdnqN0s2reSwTSgF607+fp5hT+UGe8NFQ==","signatures":[{"sig":"MEQCIGTG5yi6HRtEjy5D7FpoxlmuV8n1gccSj0dNsDGoe3LVAiAwHYDfuEINRlxljH0YvlpM7m9ZeDmyK6yQcVvUryly8w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6333092},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"c48b78452cb281d236858f94eb845143289dce0c","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-GPKxynafck6KIWexPRkXK2HLPVtuqaIU+jbTKXmuJslmEzD0CfJs4sdnqN0s2reSwTSgF607+fp5hT+UGe8NFQ==","repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.10_1773264662104_0.4164239285350615","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@hasna/skills","version":"0.1.11","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.11","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"60eb5293948bc0ee7553f512b20276b7731070e5","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.11.tgz","fileCount":1154,"integrity":"sha512-ybnY/fBF+0vRGPVeJJw52DZ+YCFdoX7a1RgDHLfmnbhPjPeVKyN4MEl82HcTwmMB6NOB4v+cJFOJTG/oIbCkbA==","signatures":[{"sig":"MEUCIQCXBn1pnQ6P1tmKxYIY6RY8pYJKU017B8oDfnmph1XUhgIgTkSyAkV3I6w5KuPo9gD+xF5RFparX3VQh90GIv59zoU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6330992},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"60eb5293948bc0ee7553f512b20276b7731070e5","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-ybnY/fBF+0vRGPVeJJw52DZ+YCFdoX7a1RgDHLfmnbhPjPeVKyN4MEl82HcTwmMB6NOB4v+cJFOJTG/oIbCkbA==","repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.11_1773290879542_0.3445657999568248","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@hasna/skills","version":"0.1.12","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.12","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"a9486e5c37973c44ddbc017e5a6ac89bdbbe02f2","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.12.tgz","fileCount":1154,"integrity":"sha512-ZMhvYYR4xy/+6GmvZ6M7ABXyGqo5s6Ivq2jwiHvqGcp2WFTGkwJ7SaGQYQQI70gCIMqqZKvhewoqIVv+Hx8HfA==","signatures":[{"sig":"MEQCIDZConSkWMHO5Nal6yXff92C0k7T5APWz0xtYtS1lZbmAiACgLaYsKQW3I4GeFeW+OYzzs1lrb5kvXNOG4DaFzM/IA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6332782},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"a9486e5c37973c44ddbc017e5a6ac89bdbbe02f2","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-ZMhvYYR4xy/+6GmvZ6M7ABXyGqo5s6Ivq2jwiHvqGcp2WFTGkwJ7SaGQYQQI70gCIMqqZKvhewoqIVv+Hx8HfA==","repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.12_1773308491525_0.9879802416393213","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@hasna/skills","version":"0.1.13","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.13","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"6131594c407e8b90f4a39194c2d3495953c00cee","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.13.tgz","fileCount":1154,"integrity":"sha512-fqio/cDp5Hfw5W1szc81NMejW+Ti+F2Tufon4n8ZOCrVOUEOKL41B0Z2UxkI6Ot2a75hlC2KMYP3im+APc1T9w==","signatures":[{"sig":"MEQCIDpY3CHOTs5nkr8O8TJgKkmOVKZ8QabDzt9TmP03OAYCAiAS1ddcf0VXWDyB/DTVSKlUvN3g1CaxNCHRK6OSkrdozQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6332782},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"6131594c407e8b90f4a39194c2d3495953c00cee","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","server":"bun run src/server/serve.ts","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-fqio/cDp5Hfw5W1szc81NMejW+Ti+F2Tufon4n8ZOCrVOUEOKL41B0Z2UxkI6Ot2a75hlC2KMYP3im+APc1T9w==","repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.13_1773314548936_0.7463465107902816","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"@hasna/skills","version":"0.1.14","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.14","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"9a9b6ab8bb87b1aff59f525cf6bdd2476b99580f","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.14.tgz","fileCount":1344,"integrity":"sha512-HhEfPZj4locbIraO6hnJc278WQpcL7ACEzz5+r2IfQCtL4OcxLvxF6tKUwNhV7eF+h4jLefdIECLPTUXaN5a2A==","signatures":[{"sig":"MEQCIHijX7GOt69vAUDTAF5NaWNmSTx5OLOvLPMrbMUO4AKSAiB2ymxK72kTQFI8SqLTed7Bfkxr9NK2Wl3VBGjeStbo/Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6621836},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"651477ccc2ee3efdd0c795148f248bc894a80146","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.8.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.9.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.14_1774024997357_0.6668142886334214","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"@hasna/skills","version":"0.1.15","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.15","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"9a1218139c8c9edf29b77a45d19f02c4f32e8d47","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.15.tgz","fileCount":1353,"integrity":"sha512-OwFjWOFNtBQ+l6uurkcl8S/rfO5dcVd+4aW7hJJJcYCmCfQ04MNq5LDKRiyP95EcicaZExAw4zErpAatgrtM0Q==","signatures":[{"sig":"MEUCIEmD9TfqZ+qOnPON/RrdFiWdZB0As4JfKgxQVjtt+I4MAiEAiMi+UMbTK3uPkfPJC+xyJfsCrjaCK/90sPtXOaKx7JM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6740424},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"da3136fc912f2b5dcc49511a42552d95b1958a66","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.8.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.9.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.15_1774263417788_0.35419136607106716","host":"s3://npm-registry-packages-npm-production"}},"0.1.16":{"name":"@hasna/skills","version":"0.1.16","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.16","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"cb60a4527331b0f9b0774faec59a5358d4035875","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.16.tgz","fileCount":1353,"integrity":"sha512-XSzJRv4hYNy3x0e4lFXpn2fTBbuVnELKZ8rTsRJ7Ti7Pn7/P9P2BWitEmxue5FC8bVMjzuJSUnCCS5QTxpcOaw==","signatures":[{"sig":"MEQCIHo0sLtGzNd5WHg2tU4GYoJguzwEm5HD4zugUiqSPK6qAiBITqBv8gXlTUVCfnCdjj1RIYCC8hXmfJmlyzGPIWajKw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6742755},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"51e34b6a35564d5cb3beda89840649bfbb185bb1","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.8.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.9.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.16_1774276595930_0.31220942254285267","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"@hasna/skills","version":"0.1.17","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.17","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"49aca4a16a4f20b2cbceae95a349ca6bf88af61f","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.17.tgz","fileCount":1353,"integrity":"sha512-ROWNXDP6t8zJUuTCKEii8r6EDYTz+FQ0NcJxtbWIavLsqERTsXEankFO96LNV+GvT7M59hiOpgwtJ8YVBfGqmA==","signatures":[{"sig":"MEUCIQCnHBKREcMXh7SBWyfZzTViylvPRuib6yNq/tx0hx5HiwIgb6tQ5NlDr46FfQLzj9ua3Dpa8c8Id2kYVYuMFsE9+WQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7320153},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"8962e708955a1cb6fefafc5ab5a53576d10f771d","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.8.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.9.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.17_1774279039387_0.5961347254555225","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"@hasna/skills","version":"0.1.18","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.18","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"6c2f9c114c26b720f22ddef804aabe05dd86dc5e","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.18.tgz","fileCount":1353,"integrity":"sha512-cQlhqDkH79ivP5N3AFcNiuszBXpXJ1jbv3CT66T1NdY1GHhb9lTCCSnwo6S0Wxxoh/pvb5Ec8YDJpk6wKw/BsQ==","signatures":[{"sig":"MEUCIQDafcW0MuK4UQI8F9qZgJ/JIsK2WpDerbdWO1QqELl7+AIgVSUifYQY/baZ681tJYMbLg8UnJF/M4EO17DYPCYzwPg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7320384},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6c21cb79c1e2e0b2d74503c0343a3e4bc54800b4","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.8.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.9.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.18_1774280101331_0.7214021046636312","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"@hasna/skills","version":"0.1.19","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.19","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"9d754d7448f1db8e7de1eba0c8cacc85dd78b5e2","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.19.tgz","fileCount":1170,"integrity":"sha512-/3Wh7QbG4WfeEeIZ7dHusbBAHLZS3qLwP2yAzo1zeucBzvHbu7tSdSy5UpqZkT/NJkjnR+J0wsI1l92+jnYDPA==","signatures":[{"sig":"MEQCIBWCCTT3AS6B0/tUXaxTZnePvEe59Wcu7pK+85sHguvyAiAIBjoI5G0lVEIdruzq7bmqWjQINVkMBYfZgKpIeyJ/6A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7145362},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6f413675a52ad0d2c20728b1db186f3fbd035a6f","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.24","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.19_1775139049701_0.4995021798377237","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"@hasna/skills","version":"0.1.20","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.20","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"ca26b176f15034030cc55ae0fe160b977bc0710c","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.20.tgz","fileCount":1213,"integrity":"sha512-MK4ocmER/xxkItu+rb2Ua0tYG5nppPwIzxIFCVO03d4Sc3XpAvUXmCt+aM0t/390VoXAB/VF2QMvstSr38nrSg==","signatures":[{"sig":"MEUCIB28jqmM4WPlw8swmoFlJiU2NjFxKsEwt9DVYT9dWg4pAiEAiTX057XbZT1jLye11PeqfkfzTlpo9Ehn9892qagph8g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7227230},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"c03913741ffc85a7dbb7d61abf04a8322b81806f","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.24","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.20_1775661393909_0.0715007249707631","host":"s3://npm-registry-packages-npm-production"}},"0.1.21":{"name":"@hasna/skills","version":"0.1.21","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.21","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"3fdd79359b0e8e0937342f0208c6119ca79ed62e","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.21.tgz","fileCount":1213,"integrity":"sha512-tt3CzutSHPC7puvLINE4nsZcKR+x9EUh3Qsfr8Y6hyGZlNi3LlccR5154n8DLXeb02YjF+W7DyxbQukzJM28TQ==","signatures":[{"sig":"MEQCIAQauJBPIX3gPcRuafacsHpVeQHcX0lZVd9XWSzlnfxgAiAhFkTn+nzCIm+VcNXatMUYKL8dzDgyN+1+Rs7X43kjIQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7227230},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"5d7925a8df4a0eb0593ee0c22ea754a48e81cfec","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.24","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.21_1775722608533_0.8603543654243249","host":"s3://npm-registry-packages-npm-production"}},"0.1.22":{"name":"@hasna/skills","version":"0.1.22","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.22","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"87b3f5fd5d3f44b25f29703ff0ddf6cca3acad6d","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.22.tgz","fileCount":1891,"integrity":"sha512-Olb+3twjYQY3ehDGVcCjF7QXQ8+W4I5n6hvYlpQV7qwmtu8CI9Hfy2NFbfUFHQt61XuYc2oQTeio/2eqayVbsQ==","signatures":[{"sig":"MEYCIQCbeMCzIDHmnq0EkQIHIC70tJ78hz4d20FDFPbVgw8ThAIhALawzt2jRSG9k/7o3fCXtshoC3Twb2OEpmgaTFJnmwJR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":36312336},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"18646909ad420940f173034b4c0c88d3ed8eac83","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.11.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.14.1","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.24","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.22_1776428016683_0.04853699480570972","host":"s3://npm-registry-packages-npm-production"}},"0.1.23":{"name":"@hasna/skills","version":"0.1.23","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skill-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.23","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"52fd2bf5fbb4bebb7e04001bd807b68f780e9141","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.23.tgz","fileCount":1231,"integrity":"sha512-oFo6Qt3ssta8spKtzhxnxBeU+iz7Yk93bkQ6IkI+CyEPhHseQyoRuOCW9DuwjJhw5HrvJ7ZSW1AZjiLBWmI0mg==","signatures":[{"sig":"MEYCIQDM4F1cwz+yGUePbmZCqrFSewoKSHmaT10NJAV3jtWaVwIhAMEyd3WnkqXdthQQsMOKraSw6zih9l98uGy74hSrgf0K","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7279857},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"29b7e58f21cf7fb89da519db6b0b25d94ca7cb95","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.24","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.23_1777025782957_0.5926528552808956","host":"s3://npm-registry-packages-npm-production"}},"0.1.24":{"name":"@hasna/skills","version":"0.1.24","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.24","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"fc36af104ad2387fabe3049bee2788e1841bc871","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.24.tgz","fileCount":1223,"integrity":"sha512-1GUvkNQpuxpOh4iMnXX4oZNufIVDYP8s0vW9CfSeMIJxu/dGy14gZB/E4E2WMEG0mk01fDI9kcveS7SEnB5jYA==","signatures":[{"sig":"MEUCIB8aku3+MMRgdsZpWxZdKcpzlqpnGxWNA0EaKXIwtQ6eAiEA+j9VodcdUOv40RqCfX1bWv5bM2ajpB8p1o26ieSBTjY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7257102},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"719b43d736afe229f1869219ec1a6525f0922f3f","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.24","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.24_1778396021710_0.7157225725400258","host":"s3://npm-registry-packages-npm-production"}},"0.1.25":{"name":"@hasna/skills","version":"0.1.25","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.25","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"6814c98644a4b214f762cffc4b5ec4fcc894b266","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.25.tgz","fileCount":1225,"integrity":"sha512-Leur8uXD8HEpclv8kct1ZRc5LfjpPWOImA6DbEHRWBUAU7YQ+rV5vXYPvGNPclWh0OpN4PZ8GtLtFba8AQ3WBg==","signatures":[{"sig":"MEUCID7NizfjE6sim+omZYsl4IWeDzak5rxdcTSwjNTrtHrfAiEApooF6FZKPBASIpk9wL2xcAoVhAGx6+zHHJ6whJC/MI8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7260967},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"4d92fe0680cc81ecc0d387be2e00e3a81acf992b","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.24","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.25_1778398287124_0.08996724350442031","host":"s3://npm-registry-packages-npm-production"}},"0.1.26":{"name":"@hasna/skills","version":"0.1.26","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.26","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"5ab2d64040821d2e9c4648dac253e5f7448bac15","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.26.tgz","fileCount":1234,"integrity":"sha512-OgSzeQ5GoxrVOuPHMf0CmPj8RFqkM97UFDj3RP9JK1Qj/3Vb833ItvWtTKKu3/T9ccQEYcsttCKGBOgKxFmVyw==","signatures":[{"sig":"MEUCIQCVUFWeLkTi30AzXEZRXUCecb6Yf5Pv7TPBE+mSrBwlvAIgdTkpGQS9SmGoB73r5mpjltvfZw0GWsjH5xLvAmRLr0s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7822930},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"3ca0072fd88715ff620d95635c7d4803fc738fd9","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.24","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.26_1778487095647_0.11642532853769016","host":"s3://npm-registry-packages-npm-production"}},"0.1.27":{"name":"@hasna/skills","version":"0.1.27","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.27","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills#readme","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"6d4f576540a1889a273110b1aebcc0f34404dff2","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.27.tgz","fileCount":1227,"integrity":"sha512-FEduRNTEX2cqFNscAZ0h8BmP380mH6eXhI3xQ17ZLstn+nl8xwfhmdJMxTGcPLzB8KSsOXXKaUcN+dxOYXxjqw==","signatures":[{"sig":"MEQCIEDdNocCIFVUwEfb3pjlHKsVOsJLqvfqe9PgkZ2MfPsaAiBpb2yjC8L4iJGJl308ZPyNvySposbMs1xgtrngxty4qg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7812358},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"da690bce91e6ac81095187fd5362d94fcbaed7a8","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","server":"bun run src/server/serve.ts","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","server:dev":"bun --watch run src/server/serve.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","dashboard:dev":"cd dashboard && bun run dev","prepublishOnly":"bun run build","dashboard:build":"cd dashboard && bun install && bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.24","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.27_1778487179969_0.9452556987833969","host":"s3://npm-registry-packages-npm-production"}},"0.1.29":{"name":"@hasna/skills","version":"0.1.29","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.29","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"08054905aff7e4ce9646790220284c4590d5e56b","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.29.tgz","fileCount":1348,"integrity":"sha512-2q9JAUCrg+EurxDom9vDia4xMfW7zRTyZ9MUPO6h0CO67Xp8H+hMzcjbCOzP+0E+lOvvaZkFE3mZ1IlWooKXCg==","signatures":[{"sig":"MEQCIEN/Rqxv0I079ugw+43WFBYjMALeB8AsFFF2/aKhRymuAiBYXntBUlFDA6rRB9ICqdUJSHPbgMo7KKRJ6AWaCD25bw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8027562},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"327f21fca9e56b81cab1bbb982270a0ba20f8356","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build","upstream:check":"bash scripts/check_upstream_sync.sh","aws:bootstrap:s3":"bash scripts/bootstrap_s3_buckets.sh","aws:bootstrap:ecs":"bash scripts/bootstrap_ecs_foundation.sh","db:migrate:preview":"bun run scripts/apply_database_migrations.ts","aws:bootstrap:secrets":"bash scripts/bootstrap_secrets.sh","aws:production:readiness":"bash scripts/production_readiness.sh","aws:verify:preview-stripe":"bash scripts/preview_verify_stripe.sh","aws:bootstrap:preview-edge":"bash scripts/bootstrap_preview_edge.sh","aws:bootstrap:preview-stripe":"bash scripts/preview_bootstrap_stripe.sh","aws:bootstrap:production-edge":"bash scripts/bootstrap_production_edge.sh","aws:bootstrap:production-stripe":"bash scripts/production_bootstrap_stripe.sh"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.11.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.14.1","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.24","@hasna/skills":"0.1.27","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.29_1779962845527_0.59761366845994","host":"s3://npm-registry-packages-npm-production"}},"0.1.30":{"name":"@hasna/skills","version":"0.1.30","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.30","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"a2882797841d90c1cee17c2ffa87c3e20847e77a","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.30.tgz","fileCount":1531,"integrity":"sha512-G1ZpfuwakdpTE73EAl5JTgFP3f1FD1G3Al03yyhhrcQB+0PAvbaA29Ls5SvqahtddGwATdzuETEKQ3Fradv54w==","signatures":[{"sig":"MEQCIH8xzvUuGfdxQWQpKB0IYq/hCbvtgrQ0fJE0wKB0DvMnAiB0KMJMjBsIEku0cSnW5s54uWJzq8Uq8afuv2FV84xJyA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8266090},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a5bd5db97a70974e762a0db9d0ad744b3e90e80c","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build","upstream:check":"bash scripts/check_upstream_sync.sh","aws:bootstrap:s3":"bash scripts/bootstrap_s3_buckets.sh","aws:bootstrap:ecs":"bash scripts/bootstrap_ecs_foundation.sh","db:migrate:preview":"bun run scripts/apply_database_migrations.ts","aws:bootstrap:secrets":"bash scripts/bootstrap_secrets.sh","aws:production:readiness":"bash scripts/production_readiness.sh","aws:verify:preview-stripe":"bash scripts/preview_verify_stripe.sh","aws:bootstrap:preview-edge":"bash scripts/bootstrap_preview_edge.sh","aws:bootstrap:preview-stripe":"bash scripts/preview_bootstrap_stripe.sh","aws:bootstrap:production-edge":"bash scripts/bootstrap_production_edge.sh","aws:bootstrap:production-stripe":"bash scripts/production_bootstrap_stripe.sh"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/cloud":"^0.1.24","@hasna/skills":"0.1.27","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.30_1779984058447_0.3603430532498644","host":"s3://npm-registry-packages-npm-production"}},"0.1.31":{"name":"@hasna/skills","version":"0.1.31","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.31","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"9a964b2295fef52fd3217a1f0569a03017e283b6","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.31.tgz","fileCount":1353,"integrity":"sha512-ScyI7hsibzzBQZNbI+Jtu3Zdw27n7CHxmXSuFOVXlYI5YRxTdwy21L+s41lrFOjfA2xkxBeVC2ywKx9CDZXsSQ==","signatures":[{"sig":"MEQCIAsnjthvZW14zNlYImGjGTBuLsu6eXgNgdjHOZHHIjYNAiB9O57F0skgH7mIX7DJ+Q1H72MZUKrw9d6znwMy/831HA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7115458},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"f0547a69b9ac1a574765a9e178a75bbf66b396c4","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.31_1780639213910_0.7184191036590317","host":"s3://npm-registry-packages-npm-production"}},"0.1.32":{"name":"@hasna/skills","version":"0.1.32","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.32","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"e1620e4fe91f5cc3025dc77943484aaa744073ee","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.32.tgz","fileCount":1354,"integrity":"sha512-3FLac8yUyUwmRnZ8QKBhjuAqjwPPqOvpnkJ60NEZVnTDzu0sR2fuijEwH1x57IgIDMdbRzgZmfdYl7dzhUVF/Q==","signatures":[{"sig":"MEUCIGI6k5/hdmFNSC2h72lwt8u9gXs0cZqzPFgFiSKOX8liAiEA3Z+de44xNiLBNTYVPhBDrBVgJWNQaIbIzsOcgW/xwm8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7127264},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a18b0e99800d446575bb1dee4b77e1fa246fa9ae","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.32_1780662959672_0.0017345836809128379","host":"s3://npm-registry-packages-npm-production"}},"0.1.33":{"name":"@hasna/skills","version":"0.1.33","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.33","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"8a549b712ec76f0967d7846615d40a8acb2dcd2a","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.33.tgz","fileCount":1338,"integrity":"sha512-g9MOn1WK1S4GOKoi+QHb/hknOOo5wt1UeykXl7TUb7dO48RRAHBmyuM1OiD5rJK9o/KtnFgs8Vpyiw9PtRhPhQ==","signatures":[{"sig":"MEUCIQDdpmiVIKVc2tCTVx0q5entuonXfeXxu3PsFc1ZvzGeFgIgVRWWoRAs7EefLjctUD3sHdWlVyN15wRadWQHa7+t1g4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7060082},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"9a14607accb2c73b382bc4853eb1bffe2fbb4f9c","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.33_1780674508118_0.9872888475251076","host":"s3://npm-registry-packages-npm-production"}},"0.1.34":{"name":"@hasna/skills","version":"0.1.34","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.34","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"4d6522393bf0b4bc7b5b28f4fb6ffa0573c99722","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.34.tgz","fileCount":1331,"integrity":"sha512-5ID5IBexrjNaxtMBL5PafU7boJxk9FKmHMx4oYGSFpjbQ/zi0GJDxceckq3DBMfeGBgWM+5Hv352mixZVC0/ag==","signatures":[{"sig":"MEUCIQCbQH+rv1S7U7u8ScgOebCLBfwc7s93a15VNZ50M5zPfAIgGmGAnVV4pHbVagTmC17zLFsfJ1dWaRdJyhdQ9fnuCd8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7033058},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"9063f5a414037272a6418a6e5f2cc5bede971b5c","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.34_1780675003428_0.9884034775538122","host":"s3://npm-registry-packages-npm-production"}},"0.1.35":{"name":"@hasna/skills","version":"0.1.35","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.35","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"157ccd0fb203cba35d9fd433a88b2fb82031958a","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.35.tgz","fileCount":1331,"integrity":"sha512-RUl2s3vTZXDvalf8rk5tSQV4d5iNE2dVnEvahY9zvw2ZtWC64NBuXpo3M/RMhIQ4fSDLGEZk2lCHdHYWFBZcvQ==","signatures":[{"sig":"MEQCICIST/feem26BCjvzh47XvcZwEf+XmvPqLHIeBX/h4RSAiASaWoX8JOLM37HufYZoE6IpTkkCE3nsaSPbhErgB3NHg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7033125},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e7b4675390a7ffa219faf891bb7ead752d6d0a56","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.35_1780730467907_0.2403582725330411","host":"s3://npm-registry-packages-npm-production"}},"0.1.36":{"name":"@hasna/skills","version":"0.1.36","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.36","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"4566bb6452d46ac7210ce1bfccb7d1d7869656d1","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.36.tgz","fileCount":1331,"integrity":"sha512-NoB+xEY6PfooNn9hDp7aK523W2NdTlzNxac9PPCqPf5meG+H1J7rRH9GSe/liqrwBaUXfPNGqdB3s2Z4tGu8qg==","signatures":[{"sig":"MEYCIQC1mr0q1Cp5PcaMuaHKuU4fIofgI6jSuG2VScaUih+HJQIhAINVNlVGonDV/58+ENIJOYkN79VAjW7zdbPASij+gQuU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7033153},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"d0cc95b33fd3ddcc0987ed1518fd9b1886ac0298","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.36_1780730738614_0.6214940736333967","host":"s3://npm-registry-packages-npm-production"}},"0.1.37":{"name":"@hasna/skills","version":"0.1.37","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.37","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"d980d4c80fbf5433b70044475702c931711c17b0","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.37.tgz","fileCount":1331,"integrity":"sha512-zy6Wki2uQ//mpOUxLXPuzku1G+YKgiX8YHRWErzlPyPhQvz7UdAC1exC+e7/htlzW75f3XEaImT0YFN0BzUv7Q==","signatures":[{"sig":"MEUCIQDKiIcCpRwB6LD72oJBWPYnTRtGUA0s0Qibi9CcfbblugIgPzwSCQGFjSoQ1co95hvDOoQcJcVeysrZby1ANtfNUkg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7033310},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"15735ae02f16a83559b31c97107655d216ff573b","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.37_1780731108729_0.3947411905280773","host":"s3://npm-registry-packages-npm-production"}},"0.1.38":{"name":"@hasna/skills","version":"0.1.38","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.38","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"f6813859c5057fa8c45fc10ed2ddf233773a275d","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.38.tgz","fileCount":1331,"integrity":"sha512-uxOJB7+9dPlpUsVp7pYDaguIJc7CF9Va17nSh8lRrQh3wOHb847hxJBbAT/E5wQnkNLk3ovD6xoe5pd9hfE+GA==","signatures":[{"sig":"MEQCICA9p4NcyJgF/VqULXomyAUOuVn3DrfatOSFjNhObzdRAiBYvqe441UNBA6KG6NkkioMArKKJlpJsVbbOHOXyzFlpg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7032479},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"3528c72db1fa2fc5df1a7252b6c570dec932430c","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"deprecated":"Superseded by 0.1.39; fixes clean-package convert help loading.","repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.38_1780745294938_0.2917225664436949","host":"s3://npm-registry-packages-npm-production"}},"0.1.39":{"name":"@hasna/skills","version":"0.1.39","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.39","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"bb48648ad742ce112032731630d50f5e855b1da0","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.39.tgz","fileCount":1331,"integrity":"sha512-Q6HKVFlSwViU8+GCyJ648/QJeLsLFMGmOPYpVpd6SXh1FNIEMgGa/RHhP0TRS8xXGG4OWeeO+SHUyKTHI8Cx5A==","signatures":[{"sig":"MEUCIQDHFKhPu4zTPEByLklC40MNjM8UpafwXsKKV3WKbVAXdQIgLbT8tYCA/3TdCf9xT446NDInw5lQ6gGfuEdXUKGU594=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7032912},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6c21e09544461a6f9ec4d36f2e5d1ba7c59670af","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.39_1780745876671_0.6428031377667331","host":"s3://npm-registry-packages-npm-production"}},"0.1.40":{"name":"@hasna/skills","version":"0.1.40","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.40","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"f701dbb69b2fcae2a06246e08771a4f68337b386","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.40.tgz","fileCount":1333,"integrity":"sha512-b3sUAS62ZKIDuS5kgLRBB0H0OlNJAVJUw9HRjKYZKPor17s2udcTJGrdUSUHzmrpc//NTUIs0GJUXZCSzKqxQg==","signatures":[{"sig":"MEUCIGpaCKZOpZzHATbzXEsErucRqTJPYWmBzgWgisi266BhAiEAx1wKzzobera1Qa4anM07GbPtToTchao2YeHfrpXPHKE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7037248},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"07372b210b84e8e7bc5ca4ede59da75a636e7f7c","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.40_1780747575113_0.027103106826290135","host":"s3://npm-registry-packages-npm-production"}},"0.1.41":{"name":"@hasna/skills","version":"0.1.41","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.41","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"c69bc7627c47b414bd8f31a8042ba0cefd6e4a63","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.41.tgz","fileCount":1333,"integrity":"sha512-8/ES8dHtdzO0ALtsiAIX9cTPgCj3l0d8x0wrfDV8kxCPya9Zep4r66VQvfrlGjdwgZKrUsEOu/ujwBPNhF9Rsw==","signatures":[{"sig":"MEYCIQDTynAFUUgPAWEaHRnLfzVFqWDCokBZjTSFkDMDYS2hagIhAJ8yUmuoqjJEsji8gZ820mxT6q0gbLFnfBBxJ3PZIAVU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7037504},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a2f05e71d0a80b6432897bd49b35d0deb3636d48","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.41_1780750063397_0.7207852226675522","host":"s3://npm-registry-packages-npm-production"}},"0.1.42":{"name":"@hasna/skills","version":"0.1.42","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.42","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"5dc953de8d67b3f9cea0426db68c9f1bdbacb1f1","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.42.tgz","fileCount":1332,"integrity":"sha512-+onbt5fa2+KHWCEXxe23w1NrZkEp0LH2tpKdqQngp+CknFjS2dcfCJWbcdOwdxBgSXPvu9WxmvmfevwKrPVaSA==","signatures":[{"sig":"MEQCICbnDNpMY/0YcjFXLnmFTN0b93y+unHaZ+uF0ZqV9H4lAiBMxn4gJ49utKxyiPM86FjVZ0mkRVgSxfk/LV9ZV7JbFg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7064457},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.3","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.42_1781599929292_0.37120675335250963","host":"s3://npm-registry-packages-npm-production"}},"0.1.43":{"name":"@hasna/skills","version":"0.1.43","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.43","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"9c782c55594ce2e8dac71201d76cd1bc8f894561","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.43.tgz","fileCount":1332,"integrity":"sha512-4fPlK6LtcOglBU8my4tiV3XG73tLidKmGTM+bBrMje3fmm+azfQoc8OhxtcCXFlryHhrn5Jf7S1hKNof7inuyg==","signatures":[{"sig":"MEQCIChiHS/XMIPbYbwdm7KX7BktVT4uVqkEky4KTbgH85GVAiBdYlRpMHv/2jWdRGW3YIs36dwHiVSvvy9Zn8MbCZ80uQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7064903},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.43_1781608868827_0.6124771377438802","host":"s3://npm-registry-packages-npm-production"}},"0.1.44":{"name":"@hasna/skills","version":"0.1.44","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.44","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"e6428fd1db4ceaf23b1f0bf3e1d0af87edb85591","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.44.tgz","fileCount":1337,"integrity":"sha512-63O2mNYi8EvjSCRwAg/dg147+kN885/VsgfABD3XKyC4q1EqsLcLo+Q3GdPZDEQ19XGrKdUZKrOMvO6Ng/b1Zg==","signatures":[{"sig":"MEYCIQDaspufpIrHKusAhw4HUoz6wnjDm0Q/pEgup3LjYTfrTAIhAMasFTtvDoX1+0HD2QXn+ln9g7b+ngN5nYe19L/M/npf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7131691},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a6b45b6255477eead3503abd82c5bff9d6f03fc8","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun --external ink --external react --external chalk && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.44_1781724666189_0.5844084252400303","host":"s3://npm-registry-packages-npm-production"}},"0.1.45":{"name":"@hasna/skills","version":"0.1.45","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.45","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"7aa453826f0c320d2e6240342bfbba9bb7634f0b","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.45.tgz","fileCount":1342,"integrity":"sha512-GK0uIkt4oEm+L+yy1E2VAOysnBbSmCHPqmbVpxENEbgaruLNmV/x2T+y2GoN1xx9SkW3PjBBXOJieLf5Jtiy7w==","signatures":[{"sig":"MEUCIBAHMBVLw/VFJZbAMfc4ZU+vJibq3H27t6sfZJSNfy8TAiEA6yy3K9fy4muqQXHKWWfbRqu84Slij8a/KLg1X/Ffpvg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9051795},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"ee030928c434fc565c4317c7dc845376f2654ed1","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.3","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.45_1781726032783_0.8222344188868949","host":"s3://npm-registry-packages-npm-production"}},"0.1.46":{"name":"@hasna/skills","version":"0.1.46","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.46","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"88773f0e461804d2b3408115637852770e036266","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.46.tgz","fileCount":1342,"integrity":"sha512-9evfse2V4a5l6uWSC+VFYdKbkzOw4BupdwVkPqhaQ2hswvc3rhB8KlsrAI1kKCfnMc2ZW3bXcfGE0vCagFMG9w==","signatures":[{"sig":"MEYCIQCoevM4tOE3GgXf7JWZyItOMZWKshR1YvDRFJrhaFm3DAIhAITxC62Ux+H/K8OA4K5dniA2sYLWo2Ln0l1pxwZMF5t9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9055416},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"e1ff86b40cd2f7506d39abf531ed7082d53c43d4","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.3","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.46_1781726299990_0.9133134619114955","host":"s3://npm-registry-packages-npm-production"}},"0.1.47":{"name":"@hasna/skills","version":"0.1.47","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.47","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"411a2d384cdc90a71a3fcd37ae3bf9dfc2a4e099","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.47.tgz","fileCount":1340,"integrity":"sha512-8rYcMK49Z979VD3xHDmgVS2qzj7fnktq1wn9aAxvpYH6ZA+0gni59h2lmZx0APW5Oyzx9t2AMvBChIeTSD7nYQ==","signatures":[{"sig":"MEQCIEh3v4U/8P5V9GWu6vnOb3J+0mBg+tSlKlDOnj5GTsDpAiA693nWoj00PX/C28swGjV/eph6MFtZPLrplcFC0+XbkA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9085320},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"411a2d384cdc90a71a3fcd37ae3bf9dfc2a4e099","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-8rYcMK49Z979VD3xHDmgVS2qzj7fnktq1wn9aAxvpYH6ZA+0gni59h2lmZx0APW5Oyzx9t2AMvBChIeTSD7nYQ==","repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.47_1782576416636_0.948692063225687","host":"s3://npm-registry-packages-npm-production"}},"0.1.48":{"name":"@hasna/skills","version":"0.1.48","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.48","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"847f8150190b3f0f37f5311023149f56b2be8be7","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.48.tgz","fileCount":1340,"integrity":"sha512-KuyFsY8/XwzORstO/DyJ8WLBcw80oBhxn6vyo5XtZa++K9rxD3GmajsiZwIc/FwgjxoOVAP4xiL4qgeD89V+1Q==","signatures":[{"sig":"MEUCIQCoS9xCGkeltOFAWVXb/p+epNYfcaXM/otWVW93bjR8WAIgKTufocv0PayV1Z76kVj21SirTByoJRTELrZU0YGiXAk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9088054},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"847f8150190b3f0f37f5311023149f56b2be8be7","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-KuyFsY8/XwzORstO/DyJ8WLBcw80oBhxn6vyo5XtZa++K9rxD3GmajsiZwIc/FwgjxoOVAP4xiL4qgeD89V+1Q==","repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.48_1782580444220_0.866839232385471","host":"s3://npm-registry-packages-npm-production"}},"0.1.49":{"name":"@hasna/skills","version":"0.1.49","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.49","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"02790bc690450449c86185b67fe758f385ba318d","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.49.tgz","fileCount":1342,"integrity":"sha512-Mvuc3Te174bCuNWR5MId357F2pq38+S/x0T505WLb3IZcaZIByMGUZMD272vuo/e47mts5+mgCG2I1TX7F1DYQ==","signatures":[{"sig":"MEUCIQC+2U2aIPPkDQBYeVSDFIegYz9NLDTjW3BYGx4sBUy5rAIgEiCNmoIcyfa9NO60XFNdz5nuXADixHlq/JA8JNw3VSc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9087952},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"1ca9bf7903284782fd9cc513336ae4e786b478f3","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.49_1782657128107_0.7479610918580597","host":"s3://npm-registry-packages-npm-production"}},"0.1.50":{"name":"@hasna/skills","version":"0.1.50","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.50","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"3131c95901b0daacf16f1e2c2403a3e1d8090040","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.50.tgz","fileCount":1342,"integrity":"sha512-YiLe/PH30xP8qa5UuyO0Zt7eVrAdGB5HLSTGP+ekqrmA7Ws8bXmp6PJIl4Itqt2Zb6rWgyx2uMu1e04ZflLGhg==","signatures":[{"sig":"MEUCIFHNifBzEbPM9Hxw95m5z74KPqsnyqM/inM7OYXNKV9oAiEAg6D+PEnSgG7C9pY5ChGy2Ztrs9ZMBLytkSI6U2eA798=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9087936},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"3d26dbe1a0bd534a9165f90e804d39fb0405087b","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.50_1782657995719_0.8049854903571201","host":"s3://npm-registry-packages-npm-production"}},"0.1.51":{"name":"@hasna/skills","version":"0.1.51","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.51","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"253ec82daa7e2eb7b58a540fee090279e8211114","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.51.tgz","fileCount":1342,"integrity":"sha512-RaRDyXf8NIrzg4aj83+SgzFvi6cCfbublDJybNlqITvw4858n4rghuAsmiAknEZp5GPEQGAOIHfowD6WOAVsYQ==","signatures":[{"sig":"MEUCIC8DxLVJ9wxOJv9rXexQ11ZARMuw+vm8JSKcjRy4wSyiAiEA6RX+VJ9b11IvgU/ESDszotkpmFe5Y9konq6IN3yW24s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9088521},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"79f60e1690758b3425658e0300bc219aaa62ad0e","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.51_1782692937305_0.22847124441260247","host":"s3://npm-registry-packages-npm-production"}},"0.1.52":{"name":"@hasna/skills","version":"0.1.52","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.52","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"00dda1b2e6da3839d23ca01e647774e56d116b9a","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.52.tgz","fileCount":1345,"integrity":"sha512-7+3ZYy6MYIzTvzwRakEk6fHoOhu+RKDFTPWwc8MXWniy2oe4w6h5ko7v+/0lygEYC45nN2ZBu1/oHC5UKTVFaA==","signatures":[{"sig":"MEUCIEKy8DiWkveitQVZdhkesrxJgtm8HPGBcmAIeag+kj4iAiEA26dXIbtGgXgkyfse+ydHu7WYkVWHROglm/7fCOVS6oI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9095289},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.52_1782717465754_0.3307996091536818","host":"s3://npm-registry-packages-npm-production"}},"0.1.53":{"name":"@hasna/skills","version":"0.1.53","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.53","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"179bf872550e64aa14ba14b50c9ad28efcb14cba","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.53.tgz","fileCount":1345,"integrity":"sha512-nTjPbYcq1EnoURQ7NL/c1l3MThctWfBRA1Fylgwh/5EQarHx7bOqUSuBsQaxamK5YTLY3bkdoOPg1H0HQ5e9mQ==","signatures":[{"sig":"MEUCIQC9j7d49t5M2C/hEAbBsutJhYq7Rk74vWojT3Cz8E1mEQIgc3fgj57zASJdznsr69X3x6LDeWFCwyrL2kBT2PW6W8o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9095338},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.53_1782718114906_0.8651136862563018","host":"s3://npm-registry-packages-npm-production"}},"0.1.54":{"name":"@hasna/skills","version":"0.1.54","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.54","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"43afdc4af4e4ad666056b32690bee1b266c424dd","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.54.tgz","fileCount":1345,"integrity":"sha512-kSZNE7AvXPl1VZZJdvBByAD1cCdVA2d3fLKerVZmfXsI/nJCjgv5X/TlbDu4fL+3NdboQe7y59UqNXJq6ckLRA==","signatures":[{"sig":"MEYCIQD0r05qM2791NN6+cjLNKvt1rrTed2ambje3c1A0GsLrAIhAOq8cPU+F/yK3+qYqFtYNidZDvUygRbo13itZsuWSe1s","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9095324},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.54_1782718665807_0.8866343338352038","host":"s3://npm-registry-packages-npm-production"}},"0.1.55":{"name":"@hasna/skills","version":"0.1.55","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.55","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"65360bbe32f53e141f01590791cf4a042b9ff397","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.55.tgz","fileCount":1352,"integrity":"sha512-jEC3ww9tJNSBOQ1U9KD/vnO3Qg8vSAcWBspsOwM2GyNoNAmV12dZwSas4GeiE5cM6T+NZmYAn1q/hW5vWp+OMw==","signatures":[{"sig":"MEUCIQCaiKwp8jjskbMTuQE5LUCwVHEBeVqZw+wvvbf4HvEn9QIgLTCy0L4x0qMXXmw3M+Ps9ZUdORTuI3xydnACllHwYE4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9185964},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"91d778be4fab5e1911f744f7ef67e2b7053aaa20","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.55_1782817664873_0.2065078048950888","host":"s3://npm-registry-packages-npm-production"}},"0.1.56":{"name":"@hasna/skills","version":"0.1.56","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.56","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"abf02345b67e8517715d3c11f970add40a026a9b","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.56.tgz","fileCount":1352,"integrity":"sha512-6GNOdezGfFrBXGakuBbK6B6J0SNH9/uymCgJvRjYLOKxvo5lvyDAOQKZ/LEharQVMIi27EBNH52nYCYTv2qsHQ==","signatures":[{"sig":"MEQCIDsogxWR/dCreguQCTq7t0githgLKExxjJJscgTcXoObAiBQ5Csi+SP1mk/hyfihoYYTMQx7Xu9AuZ1Dbh69oE5RUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9185964},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"6cc3e5837e02bf65dba74ec21692dcc960e94ec7","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.56_1782820048958_0.9429682220622875","host":"s3://npm-registry-packages-npm-production"}},"0.1.57":{"name":"@hasna/skills","version":"0.1.57","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.57","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"6fb14c5982cd467f6709ab4154022f34d9f9f3be","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.57.tgz","fileCount":1353,"integrity":"sha512-SIiTvhk4/jAWHMXJsPRr7hNjP6lG/Erhny6oulghQJl6n7d+/z7W5j+oDrat3J9bclEbG/calpvyS5QbSSnMVw==","signatures":[{"sig":"MEQCIEEpQrIRcAAcXQM2AS1btT/kb2ylbhpQnFm6luw9pdxPAiAnsEFYC5hyR8Xx5PYgzgGgT75Q2gn6cDwXrGcfYZWyeQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9196939},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"d609c7e5ac4000f14d10bc0cda3c6a66aeff4702","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.57_1782837410997_0.2943438819854838","host":"s3://npm-registry-packages-npm-production"}},"0.1.58":{"name":"@hasna/skills","version":"0.1.58","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.58","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js"},"dist":{"shasum":"c39ce369ab2661d582786337c9769f4f939a613f","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.58.tgz","fileCount":1353,"integrity":"sha512-5IqRW4tfV0W8q9EgjatRhMGhrBe79+LainD+7UJ1ix+OVOyJEFG5CcmcMHNsL2Ue4iNspF2XSBIJP8R5qSw7TA==","signatures":[{"sig":"MEUCIAmTwgkjSMgoZ6JcKceKSbLuPCTYSmmjogLhVipD5PzKAiEAu1zqlr7jIXBxqjdmIKtr449DF8x3WHVssasze7PdLxk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9205037},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"8f82ec36ce9ae2a559408f56fa2a6ec7743d16c9","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.7","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.58_1782840140689_0.9766245185253306","host":"s3://npm-registry-packages-npm-production"}},"0.1.59":{"name":"@hasna/skills","version":"0.1.59","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.59","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"ff65d878d3e5795c77009edf101f206eb7a25eb8","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.59.tgz","fileCount":1359,"integrity":"sha512-6akDmK585vnt5f+Klb2FIhn+tdUcTxxURTZspLdh8EH3s17Cz9wlG+cD6plf1HHN38E1PiIZgHRdIMGXp8I2Bw==","signatures":[{"sig":"MEYCIQCuBYJ8Q9CObhMYOeZrdeTBJNFh1sbSvH+thdxsNqbxggIhAJklLhaFA22+yxUVRQV21CMZFCMGNnW7FMMZ0BZtRHxd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11476169},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.18.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.59_1784906152027_0.03911914148461526","host":"s3://npm-registry-packages-npm-production"}},"0.1.60":{"name":"@hasna/skills","version":"0.1.60","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.60","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"dda782c5c46473f39df13d8b04e38c2c33c2ea1a","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.60.tgz","fileCount":1359,"integrity":"sha512-2VOi4rZsvnuxEuJrK4fpLVqlB78p2cx9Cgw3mFOp3nd94HXiAQtlceUjtPQ04t1ESfCY01mnOvWRnsVC2VzqRQ==","signatures":[{"sig":"MEUCIC7y8m8Ffr2h+P1/fgEYYalim9l0l8Isuu/4FXYVClzZAiEAmsP+oDaUPrpxnwMadVlDlvyk6KcEtQCLaXze4nikw1k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11477904},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"bc9b428d1eb4742abc83444997ad851b37822100","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"11.18.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.60_1784930545630_0.5141165026332708","host":"s3://npm-registry-packages-npm-production"}},"0.1.61":{"name":"@hasna/skills","version":"0.1.61","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.61","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"5cf056d1c80fa7a26ff5974acb05ce6703a55f96","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.61.tgz","fileCount":565,"integrity":"sha512-TH8OHzyTMPQChzLBnVQxsqUWsRrQYpzBCAYenmH+ajrIZMRvw53wQ0Hcoh5/uPtEL7U+aGj0LN10KWR5UbOYGQ==","signatures":[{"sig":"MEYCIQDElKXwdoebOirN5Vj4To2cU9yfuHZ9594ZBaJRHIKw0QIhAM5bPMUvzo3TfaarWq82MgLn1L9vpKqwUAGqeaKPitVh","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9601769},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"85552597598ba72c4814d32df74dc552cd8e4718","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.8","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.61_1786282712086_0.22391470838873517","host":"s3://npm-registry-packages-npm-production"}},"0.1.62":{"name":"@hasna/skills","version":"0.1.62","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.62","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"0297bfbc5aa66da7cd2f7ac763d77ced0be0537b","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.62.tgz","fileCount":568,"integrity":"sha512-eSzDv7Xqryl0Yk6BWPULuDd0bb8euDDlwBYU12jrf0x/tgq6GkkdicaPqgwhryxEgELKQi8T0zZ9I3XGgImCmg==","signatures":[{"sig":"MEUCIQD74/uYira22ZuFLmw3T57MGG5Hlkc1MqEbVu3tSQKa2wIgcWPoemRxLjtPZTLTogF+MG6TUbQi49bsiq7gT+0KyA0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9698612},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"71eaf869e60190d930a57b652d62ba1ba47022de","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/skills.git","type":"git"},"_npmVersion":"10.9.8","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"^0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.62_1786345957106_0.9742416661501476","host":"s3://npm-registry-packages-npm-production"}},"0.1.63":{"name":"@hasna/skills","version":"0.1.63","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.63","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"f5dd762f5cef64b13b79071324a8ac31372500cc","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.63.tgz","fileCount":170,"integrity":"sha512-qlwthQeRweSjlx1GUnByRDrRq8Bvdd7we2XofRvVueuKldWkoZsIJxFbILsdfD/xfMUHyiRDF2TT4Rw0MwTvQw==","signatures":[{"sig":"MEYCIQCWIYuAN2UGi7MukLlFJYaimL9tNWQzbI868UVrq6Q56AIhAL5tHLx1VaHAj5EXoaTN8Yue/VLtg4GrqJNgefjvc01a","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9126272},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"gitHead":"405f5853d68aacea88e2d44e082eb674bfcaf35c","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"10.9.8","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.7","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"1.3.14","@types/bun":"latest","typescript":"^5","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.63_1786789374199_0.4206339620912336","host":"s3://npm-registry-packages-npm-production"}},"0.1.64":{"name":"@hasna/skills","version":"0.1.64","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.64","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"e6d96e3e0076ae2332d2f24b26be9467ff7ead54","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.64.tgz","fileCount":179,"integrity":"sha512-AHnKk50nDXIVzX0TE76kL+4GsTIBZV88+PbcVFv8/xh+Clgk+5o1UPu2TqumRahYLr4EMiVBM6amL9igby881g==","signatures":[{"sig":"MEUCIQCgVHCXM0HKuXugKXTDMxVF4qkrDYtKzVXaiXsHH2y8gQIgUkopDVuASJDhq/DRlpsQOBQ2mmRIxL3xle8cbBM1cKU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9364333},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.18.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.16","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"1.3.14","@types/bun":"latest","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.64_1787306253881_0.5187616436813149","host":"s3://npm-registry-packages-npm-production"}},"0.1.66":{"name":"@hasna/skills","version":"0.1.66","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.66","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"76bae33107340d95f0cee76903e9be9a4e6d40e8","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.66.tgz","fileCount":180,"integrity":"sha512-zsZSky9UbD608w2DW4YYe2z4Y5rXU3NnAEKfpZhxItaeOd5zlob6r2u9y1K9a9gGrj0DngMMMvwPN6Fszq98kQ==","signatures":[{"sig":"MEUCIQC9a3QYoJ2Ogm1qIbu53NfpEz+S3VpFFvI0Njciu06MOgIgGXLN1egLkYS0J9S73vkk1TrX5wYOwPSqzcJiHyeUPk4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9407473},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.18.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.16","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"1.3.14","@types/bun":"latest","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.66_1787563792752_0.2195123931304499","host":"s3://npm-registry-packages-npm-production"}},"0.1.67":{"name":"@hasna/skills","version":"0.1.67","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.67","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"d94d3543abb2c1ec453215bf862b0cec0e98c504","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.67.tgz","fileCount":180,"integrity":"sha512-XARd6DhMMWk8XbP0nMQ4c0liMmzx3SsE47sXr3I4NHgxKFHt7m1tDYHjtN1/qua10qwEepIDL4TapE2RdmytCw==","signatures":[{"sig":"MEUCIBRkFFgMpTkHEBG4W1uaXOMuM2N+IkbjuVEluzz+XrVzAiEAoFBo2x46Ul/p2tr9hxgXRZIbZkbmJpkmIO60wm87z7Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9412472},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"10.9.8","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.16","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"1.3.14","@types/bun":"latest","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.67_1787587340855_0.2557172562410843","host":"s3://npm-registry-packages-npm-production"}},"0.1.68":{"name":"@hasna/skills","version":"0.1.68","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.68","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"3b7d9191e39db55b4db651127b7bc4396d3aabc5","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.68.tgz","fileCount":180,"integrity":"sha512-1tx9IDngC3cuN2CdhUaERMdr7IuZzExwoKHtXFkpcKcNj2I7S8TI2bN5SCj0NKEx0mKBAs8WXw5q3o8wc4Y64A==","signatures":[{"sig":"MEUCIQCUUuNXpzVM1mKUyTAy+rhcL+nwxfYuSTFrjm+WSZrRjQIgHSw+QhwdXLfeBE0in+TCG+nZfbA310Nm9HepMCMieVU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9412816},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"10.9.8","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.16","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"1.3.14","@types/bun":"latest","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.68_1787590504848_0.637384167049776","host":"s3://npm-registry-packages-npm-production"}},"0.1.69":{"name":"@hasna/skills","version":"0.1.69","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.69","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"f92e9b981fd46a207cc7565542b239710edd5cf0","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.69.tgz","fileCount":182,"integrity":"sha512-UC9MD+hMovkv3u6/H/yu84aOD1SnivBB4ls8AdL6PKrMRrH41wS5yX9OlHiYc5WmRbutwgSwbQq6/A7aH344Kw==","signatures":[{"sig":"MEUCIBNN+Oonn7OZVxJQr95t83cZuRNmju3Vn8J2zKdwTJqYAiEAv6jR7/poLVjGJeTCxzNxHfxP19abaJwd+a4crv1mpb0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9852888},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"gitHead":"ca2871d21ef2f2c132d9f6dfc0b9b88e6f7ccb23","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"10.9.8","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.16","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"bun-types":"1.3.14","@types/bun":"latest","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.69_1787618466552_0.021005288657622634","host":"s3://npm-registry-packages-npm-production"}},"0.1.70":{"name":"@hasna/skills","version":"0.1.70","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.1.70","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"cbfb6c48aadcaf2f538e0dc9470eef6ac37333f0","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.70.tgz","fileCount":182,"integrity":"sha512-sP+dt+mDA9YpVqtGIA1fMxYJ8XuOvHIF/FMvildZ1t6Wcw0YGbg1xAod2uqjN0Awvviz4zPD3QTgBswhj2XJDA==","signatures":[{"sig":"MEYCIQCaicjpb4Ulsthz/+HGqD/8F8h0/BVvhbmsJxj9qmEoVwIhAKN0zx4Xj2B0jj1Dmp0dzWQ7czuspar0q9gTAxPHUi30","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9856108},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.18.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.16","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"latest","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.70_1787700682360_0.758653038512372","host":"s3://npm-registry-packages-npm-production"}},"0.1.71":{"name":"@hasna/skills","version":"0.1.71","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.71","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"4b709c0000a721cc08d96a56e7f703ceda0828c6","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.71.tgz","fileCount":186,"integrity":"sha512-+eqd1ECqxPazahKOMqMntvcCB/WuO4+I6zBEhl1nH4Qi6TH5Zp6SaQgh1Sr57uZDiI5BBO7pBTuD6KN1+z8xDg==","signatures":[{"sig":"MEUCIFkCdtI0w8LMMmvvJpbc20AmLb6T+z5pIgy8/yiLiQVNAiEAnP1NL9b15Ffqwnvcsf60XDFU+wnEyoTNsYgcC1Y7FHM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9914451},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"4b709c0000a721cc08d96a56e7f703ceda0828c6","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-+eqd1ECqxPazahKOMqMntvcCB/WuO4+I6zBEhl1nH4Qi6TH5Zp6SaQgh1Sr57uZDiI5BBO7pBTuD6KN1+z8xDg==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.16","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"latest","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.71_1787767891108_0.19966863841042337","host":"s3://npm-registry-packages-npm-production"}},"0.1.72":{"name":"@hasna/skills","version":"0.1.72","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":"Hasna","license":"Apache-2.0","_id":"@hasna/skills@0.1.72","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"c69ec32596d1349b2b38918524650f356673148f","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.1.72.tgz","fileCount":187,"integrity":"sha512-Fjf7csTa06JUgBac4JQh4rptgq/oAekOe9SviXWZ/ecK42gUIu8XmpcMdKC+5GVKDNwXNR5RdT10LxgHxbyucg==","signatures":[{"sig":"MEUCIGpwnkyycL3UCIWvvOizngOZFRyM2VW/oJloDsrIoPnfAiEA+Ubn1H8KrPwIshf0cYyjZLC7toDyAl0R8ZkL6Y6an4U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9930089},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","shasum":"c69ec32596d1349b2b38918524650f356673148f","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-Fjf7csTa06JUgBac4JQh4rptgq/oAekOe9SviXWZ/ecK42gUIu8XmpcMdKC+5GVKDNwXNR5RdT10LxgHxbyucg==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"10.8.3","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/paths":"0.1.0","@hasna/events":"0.1.16","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"latest","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.1.72_1787889325880_0.5344398080910409","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@hasna/skills","version":"0.2.0","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.2.0","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"05de79310ff0fff9a28bd56450092851a0048bc3","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.2.0.tgz","fileCount":191,"integrity":"sha512-XszHlykzao70nWhqKXPmm3QK6hftX5xeUtatWmk47pQioigAsYxRrW+TZQilAmGYuPn4jFHtrUgTMMUxxbb50A==","signatures":[{"sig":"MEQCIH7QikXIVhmxF0YJxmuNcCMH5nkh2JV2ElJX5QFQiv7CAiAo4Wuh6VRkOOZA8lys5VeWtzYpZyMUzoe9fQ49LoT2RQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10030268},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"26.8.1","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.16","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.2.0_1788528784938_0.8440664913704252","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@hasna/skills","version":"0.2.1","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.2.1","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"afcba10ef98b1204435a2a861afd4864f0e6d4a6","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.2.1.tgz","fileCount":191,"integrity":"sha512-Av+1rFU6P+tS1ZqaQZWSKu0Dm93t3QYzjIcK/zJI+qRIZfrZxKgheDiYpXgK9pdZNJfRXTQ1+vomPSpqSMRR3Q==","signatures":[{"sig":"MEUCIFXbPn+A0SBXRBhM9uh3ayxU3QeUbjnJQCKDSTlbbIAUAiEAmxuE/30z6Pw3PSPtecb5KCWBv3+h8wIF7wEAzmIAiiY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11901025},"main":"./dist/index.js","type":"module","_from":"file:/private/tmp/claude-501/-Users-hasna/f83f6b86-527a-432f-927d-67b1046f94c2/scratchpad/hasna-skills-0.2.1-standalone.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/private/tmp/claude-501/-Users-hasna/f83f6b86-527a-432f-927d-67b1046f94c2/scratchpad/hasna-skills-0.2.1-standalone.tgz","_integrity":"sha512-Av+1rFU6P+tS1ZqaQZWSKu0Dm93t3QYzjIcK/zJI+qRIZfrZxKgheDiYpXgK9pdZNJfRXTQ1+vomPSpqSMRR3Q==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"26.8.1","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.16","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.2.1_1788551942418_0.6568353022353555","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@hasna/skills","version":"0.3.0","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.3.0","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"7222b97f1ec96388cd5eb4962cca45e4b544321b","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.3.0.tgz","fileCount":192,"integrity":"sha512-ITKZ6PnLwqiqyNMLhyYTXrd0YQGhcDmwEjNipcq9gczMcQjugE8OwA+T3ZtqQDZrIcIievuSHGbBiMPBk37K/A==","signatures":[{"sig":"MEYCIQDqal4MvlaPg8Kps5pv9dsRJqhvnpTIaBsx755Cb+psJgIhAMM3JTvPy3m6NnHCcUIgyIHXONwy++KVSrw+0+o6WZ9J","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10290732},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","postinstall":"mkdir -p $HOME/.hasna/skills/custom 2>/dev/null || true","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"26.8.1","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.16","ink-text-input":"^6.0.0","@hasna/contracts":"1.0.1","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.3.0_1788630028282_0.5537397053734161","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@hasna/skills","version":"0.4.0","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.4.0","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"98dcb56b93921936f3a230ac19c520dd7a3dac81","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.4.0.tgz","fileCount":200,"integrity":"sha512-sc2yY2OnbZ5sqHhIZEapT5utwsZznGfUJK5wg9BVa+Dx9hIlM44l23XMcc7yeauFsVPJlaEL9tPr2HlpnlBtmQ==","signatures":[{"sig":"MEYCIQDIgBP9JiCbfK3KzQys13APcWGgrTTKpf4/mK9GTMKFlAIhAJN7YDlogZnjSh4hCtfxKMWfLMrcOJo6H88Yd4otdfxE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10448359},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"26.8.1","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.16","ink-text-input":"^6.0.0","@hasna/contracts":"1.0.1","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.4.0_1788655309968_0.7195967482867285","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@hasna/skills","version":"0.5.0","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.5.0","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"ffbfb517d3f8947db14daad89046a7103a461b27","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.5.0.tgz","fileCount":210,"integrity":"sha512-2EJS21iRp+UZYZ8DOIWoLcXEu1Iwi5J02UUKhs/SwAZaGlv98kC/mfEeWLkIGujUsCcPtTWq9+4/XoECXUFkYg==","signatures":[{"sig":"MEUCIQC3X6OAY7sOU2KUzmsBxvl8pmhznkZwh6Vmsp7sFRWIvQIgY8IdHeSHz8gAMeiJkIFC0MSOtgMWAeAVzsaMEZSbAOA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10659339},"main":"./dist/index.js","type":"module","_from":"file:/private/tmp/skills-050-publisher-58tup2fp/reviewed-skills-0.5.0.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/private/tmp/skills-050-publisher-58tup2fp/reviewed-skills-0.5.0.tgz","_integrity":"sha512-2EJS21iRp+UZYZ8DOIWoLcXEu1Iwi5J02UUKhs/SwAZaGlv98kC/mfEeWLkIGujUsCcPtTWq9+4/XoECXUFkYg==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.5.0_1788786828473_0.9988416844073178","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@hasna/skills","version":"0.5.1","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.5.1","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"a426b29f1fd468fc03fa46c34aafb7254a687d3f","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.5.1.tgz","fileCount":213,"integrity":"sha512-8mmLODLBFL0msC5pBDQ5epPRB6luXgJ40i7q1PZlbaKjNcFWJZ0zBhkU14JPdGJRprCek7j28O0VcVSToEemDA==","signatures":[{"sig":"MEUCIQDOlmxs+c0tOS+0C57OCw9DglKpZhfEcGsNeNSqMOJjeAIgGTMu7bVmkXMsAM67vCoXVq6AQN9w4W/b4JgZ/E3RQSE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10733888},"main":"./dist/index.js","type":"module","_from":"file:/private/tmp/skills-051-publisher-966kxydj/reviewed-skills-0.5.1.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/private/tmp/skills-051-publisher-966kxydj/reviewed-skills-0.5.1.tgz","_integrity":"sha512-8mmLODLBFL0msC5pBDQ5epPRB6luXgJ40i7q1PZlbaKjNcFWJZ0zBhkU14JPdGJRprCek7j28O0VcVSToEemDA==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.5.1_1788806039079_0.9171563009863257","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"@hasna/skills","version":"0.5.2","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.5.2","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"3116761392a355368685ed783f09619587376aa3","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.5.2.tgz","fileCount":215,"integrity":"sha512-0JMF8HabNAm+cJf4fw0diPdXAcd6ZYVSOo8OHD9KGDRBKbSEwtbWXl91AKmJgoaqKf+rGMe8W1D5uAaijJJXSg==","signatures":[{"sig":"MEYCIQDo2iWdR1MjnxZUs3ZsBSb+22KipwceC6hKDN0o2djS+QIhAIF510ivuFeG14jOcffYlU05xMmxR8bUS6EKbaNb5ee1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10764423},"main":"./dist/index.js","type":"module","_from":"file:/private/tmp/skills-052-publisher-7bopebi8/reviewed-skills-0.5.2.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/private/tmp/skills-052-publisher-7bopebi8/reviewed-skills-0.5.2.tgz","_integrity":"sha512-0JMF8HabNAm+cJf4fw0diPdXAcd6ZYVSOo8OHD9KGDRBKbSEwtbWXl91AKmJgoaqKf+rGMe8W1D5uAaijJJXSg==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.5.2_1788851239699_0.5332722534488414","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"@hasna/skills","version":"0.5.3","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.5.3","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"bed513c91895bcdc40d1870f161607444719fa7f","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.5.3.tgz","fileCount":225,"integrity":"sha512-UHmYsIXrTd4fM00c/ssf2TbKVL/k/jZAgtqRktoLwxTJdsjz++dWKr94Gy5+2l8hFZoSsDCGuqjkvrmg2iVOyQ==","signatures":[{"sig":"MEUCIGc7IgMei6f6UE+vuSIGCHRbTDsngt555Npk9cH/s0etAiEA6lpfiimw8AujwZqlg4F60KJvD8VxhdnHrLB/MHTxPN0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10999967},"main":"./dist/index.js","type":"module","_from":"file:/private/tmp/skills-053-publisher-npzourfh/reviewed-skills-0.5.3.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/private/tmp/skills-053-publisher-npzourfh/reviewed-skills-0.5.3.tgz","_integrity":"sha512-UHmYsIXrTd4fM00c/ssf2TbKVL/k/jZAgtqRktoLwxTJdsjz++dWKr94Gy5+2l8hFZoSsDCGuqjkvrmg2iVOyQ==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.5.3_1788863238982_0.4125741385628301","host":"s3://npm-registry-packages-npm-production"}},"0.5.4":{"name":"@hasna/skills","version":"0.5.4","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.5.4","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"e00ac52ca80ec85f8199214c21da1d51e6546c24","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.5.4.tgz","fileCount":226,"integrity":"sha512-LloHwPmqwPf3GchiHG9BbfNQA/Ud/+gXkrKWdM3UdYdCyu215IIbAdHDLDYOWgIgIlL87MPq2Io7aeFcWdJ5Eg==","signatures":[{"sig":"MEUCIEDkWJeq964m3G0SGrHfFLI0MA22setJaN+/wX8LhC+QAiEAnUt0dEb4/x3VTUJttDDyhdpZKWSCYhIeBGQPMYEtdCA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10993758},"main":"./dist/index.js","type":"module","_from":"file:/Users/hasna/.hasna/skills/launch-evidence/skills-release-054-20260908/publish-operation/hasna-skills-0.5.4.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/Users/hasna/.hasna/skills/launch-evidence/skills-release-054-20260908/publish-operation/hasna-skills-0.5.4.tgz","_integrity":"sha512-LloHwPmqwPf3GchiHG9BbfNQA/Ud/+gXkrKWdM3UdYdCyu215IIbAdHDLDYOWgIgIlL87MPq2Io7aeFcWdJ5Eg==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.5.4_1788895078135_0.5674011904321059","host":"s3://npm-registry-packages-npm-production"}},"0.5.5":{"name":"@hasna/skills","version":"0.5.5","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.5.5","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"f6175b22f12a182ff1223fc5373655bbfdee7570","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.5.5.tgz","fileCount":231,"integrity":"sha512-OEKUSnqinBla5mcDOHr5QHQVfTfeiXm0Mcocsmaf2FqeDdTGRJpHld6xDvZLDpLPfRkA6AzUsrM+X2blSY0oww==","signatures":[{"sig":"MEUCIBhaz+fzgFykxnyAR2Pu+/iH7KxawaV/f1pXYxo4fpMBAiEA26IaPqDjUynAYDcU2ENS7OW5mW4r/E3AeQ7Yt0GlHEU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11244789},"main":"./dist/index.js","type":"module","_from":"file:/Users/hasna/.hasna/skills/launch-evidence/skills-release-055-20260909/recomposed-quote/publish-operation/snapshot-hgpo7pwk/accepted.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/Users/hasna/.hasna/skills/launch-evidence/skills-release-055-20260909/recomposed-quote/publish-operation/snapshot-hgpo7pwk/accepted.tgz","_integrity":"sha512-OEKUSnqinBla5mcDOHr5QHQVfTfeiXm0Mcocsmaf2FqeDdTGRJpHld6xDvZLDpLPfRkA6AzUsrM+X2blSY0oww==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.5.5_1788948576774_0.549296346465669","host":"s3://npm-registry-packages-npm-production"}},"0.5.6":{"name":"@hasna/skills","version":"0.5.6","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.5.6","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"acfb9f2a1637e066c78d06a35f94f49c9e8e2e71","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.5.6.tgz","fileCount":231,"integrity":"sha512-xHCvYNFHW2C2a8Ynz5cF9XHquuVBAaY87WaeIvqwPqdE+kD8LG365/Nlm3B7cSfT3UaZv5yn/zSTYV83HBnvRA==","signatures":[{"sig":"MEUCIAVOO4vf8N21fcXEEeBB3QHUD1NE2THEfX2DAZB5AZhSAiEAstIU6Lcnf63UIQhi9CfYOh6Jd3ofYTrvxdKe/BIlmqg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11273251},"main":"./dist/index.js","type":"module","_from":"file:/Users/hasna/.hasna/skills/launch-evidence/skills-release-056-files-20260909/publish-operation/snapshot-wpjerr_1/accepted.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/Users/hasna/.hasna/skills/launch-evidence/skills-release-056-files-20260909/publish-operation/snapshot-wpjerr_1/accepted.tgz","_integrity":"sha512-xHCvYNFHW2C2a8Ynz5cF9XHquuVBAaY87WaeIvqwPqdE+kD8LG365/Nlm3B7cSfT3UaZv5yn/zSTYV83HBnvRA==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.5.6_1788957513460_0.5067247836873203","host":"s3://npm-registry-packages-npm-production"}},"0.5.7":{"name":"@hasna/skills","version":"0.5.7","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.5.7","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"72e1c1c274fa23a87b8310ac34d4dfb06281daf2","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.5.7.tgz","fileCount":231,"integrity":"sha512-J5+ukQ9K+mMM70GZSgJlVN+CE3gGyMfjJ7870NfAW9A+pWH/aETLrMTnb9M/C4bTXFeDA+3dWitB27f9+sYDoA==","signatures":[{"sig":"MEQCIBMPZnhkBoeDljMV1R5TAQwbgNsLO2TilfNjtfJHHVbxAiAC7chQM1xdP3CzXk33pWfOyyVD1bxebIryUFOlzoueNA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11274021},"main":"./dist/index.js","type":"module","_from":"file:/Users/hasna/.hasna/skills/launch-evidence/skills-release-057-20260909/publish-operation/snapshot-37a_590f/accepted.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/Users/hasna/.hasna/skills/launch-evidence/skills-release-057-20260909/publish-operation/snapshot-37a_590f/accepted.tgz","_integrity":"sha512-J5+ukQ9K+mMM70GZSgJlVN+CE3gGyMfjJ7870NfAW9A+pWH/aETLrMTnb9M/C4bTXFeDA+3dWitB27f9+sYDoA==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.5.7_1788969356334_0.9721095942180238","host":"s3://npm-registry-packages-npm-production"}},"0.5.8":{"name":"@hasna/skills","version":"0.5.8","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.5.8","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"1f94cca8ce308a71f0d315dd9ae1fecace37c677","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.5.8.tgz","fileCount":232,"integrity":"sha512-vyccOd5FYBTVTR0F5Fr7+ZzOnOozqQb4ULOsR8wxartSS5mXzD3LG99kySp+AjdW8q111J1QKk6tRm3Hgphciw==","signatures":[{"sig":"MEUCIFFnZ2fePAayyyluv2t0oshI8MuII/A55Xbh8FTa1vtSAiEAjtx+YXz0rsC7B2NEgawr2MjDKd1l1SefhPVMc1oIptA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11288965},"main":"./dist/index.js","type":"module","_from":"file:/Users/hasna/.hasna/skills/launch-evidence/skills-release-058-20260909/release-v3/publish-operation/snapshot-dz_q036a/accepted.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/Users/hasna/.hasna/skills/launch-evidence/skills-release-058-20260909/release-v3/publish-operation/snapshot-dz_q036a/accepted.tgz","_integrity":"sha512-vyccOd5FYBTVTR0F5Fr7+ZzOnOozqQb4ULOsR8wxartSS5mXzD3LG99kySp+AjdW8q111J1QKk6tRm3Hgphciw==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.5.8_1788982709571_0.3347587101741254","host":"s3://npm-registry-packages-npm-production"}},"0.5.9":{"name":"@hasna/skills","version":"0.5.9","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.5.9","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"0efb453eea5684250ee213fad0f656c7746bd104","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.5.9.tgz","fileCount":231,"integrity":"sha512-Avfg09lzwstjKJg5ZnqtyVzZoLVNaYJU0rl0Ngey94h7TRtaHgoYNXJAT51Ttc8nMah7fVp2PuV8SbaSwFIAPw==","signatures":[{"sig":"MEUCIQD2ll6Yacmw3re3wtcBxpu7RuKjFfoEKCVPIGHQYc6/8QIgQkM4lqc7jXPyQIKy0eWgmji25FdnEXdby3mh9fBmKrU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11261588},"main":"./dist/index.js","type":"module","_from":"file:/Users/hasna/.hasna/skills/launch-evidence/20260908-resume/public-059-amounts-release-20260910/publish-operation/snapshot-duzzaq2q/accepted.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/Users/hasna/.hasna/skills/launch-evidence/20260908-resume/public-059-amounts-release-20260910/publish-operation/snapshot-duzzaq2q/accepted.tgz","_integrity":"sha512-Avfg09lzwstjKJg5ZnqtyVzZoLVNaYJU0rl0Ngey94h7TRtaHgoYNXJAT51Ttc8nMah7fVp2PuV8SbaSwFIAPw==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.5.9_1789059284888_0.28142001484896406","host":"s3://npm-registry-packages-npm-production"}},"0.5.10":{"name":"@hasna/skills","version":"0.5.10","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.5.10","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"1b6893503f8e9c080d7d9fdee1b1d6aa52a857c1","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.5.10.tgz","fileCount":231,"integrity":"sha512-Z43j/qN3WuqU7ZjFJvnb8jhv99Fmm6dlKXt1AHAQGlVu3vUNmI6x7iZZBHQd478rlZbsh1ZPJZIIl54Q5NiySQ==","signatures":[{"sig":"MEUCIQDMUYGoDQT0q3TSl5AcrgzSXmWAcIDQjmefi0EKDH6FHwIgUCpKFiP2jqrCccj+ZJ+S5XstqPYF0T4SDwrtrN0sEe0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11261664},"main":"./dist/index.js","type":"module","_from":"file:/Users/hasna/.hasna/skills/launch-evidence/20260908-resume/skills-publication-0510-ci-composed-selection-20260910/publish-operation/snapshot-6up253fh/accepted.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/Users/hasna/.hasna/skills/launch-evidence/20260908-resume/skills-publication-0510-ci-composed-selection-20260910/publish-operation/snapshot-6up253fh/accepted.tgz","_integrity":"sha512-Z43j/qN3WuqU7ZjFJvnb8jhv99Fmm6dlKXt1AHAQGlVu3vUNmI6x7iZZBHQd478rlZbsh1ZPJZIIl54Q5NiySQ==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.5.10_1789070341106_0.25895935430672945","host":"s3://npm-registry-packages-npm-production"}},"0.5.11":{"name":"@hasna/skills","version":"0.5.11","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.5.11","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"5539011570adcac0402cf0d03b71775df1ac6a18","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.5.11.tgz","fileCount":231,"integrity":"sha512-TlKh1mtfRcHRXaBsptLSsFL/mF+dOsPKpZ2OX89hxLuzQDlIzz1PHuX+3lRqakNs7QeSC9lKgoLX04bSU3IJag==","signatures":[{"sig":"MEUCIEnQChiS/MkFM44gP6HYc8bweJm3FemyHkn/P3iomGT+AiEA14glIWUGIyErSixSApagUmsy6GzUkQ/G9q/Kdvvm1CQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13160792},"main":"./dist/index.js","type":"module","_from":"file:/Users/hasna/.hasna/skills/launch-evidence/20260908-resume/skills-publication-0511-20260911/publish-operation/snapshot-76gjvi1c/accepted.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/Users/hasna/.hasna/skills/launch-evidence/20260908-resume/skills-publication-0511-20260911/publish-operation/snapshot-76gjvi1c/accepted.tgz","_integrity":"sha512-TlKh1mtfRcHRXaBsptLSsFL/mF+dOsPKpZ2OX89hxLuzQDlIzz1PHuX+3lRqakNs7QeSC9lKgoLX04bSU3IJag==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.5.11_1789159569274_0.023399295375983842","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@hasna/skills","version":"0.6.0","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.6.0","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"335d1d80f73f0c3cdce20f24476badd9eca1b4f7","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.6.0.tgz","fileCount":256,"integrity":"sha512-Ss8bUnrbh++furcePAoOCUiVFysvbbP35ixfqSENm95Z+DVGQQNSTneCRmuD3LzyanpGMyIOxJUPEvMSFyPYZw==","signatures":[{"sig":"MEUCIB9zY+5scC2Dpp35bLVGaD+JooRGLuUg/jNbnoGJHGL9AiEAoEunsrFAsGYjPNvRBdV6tGeScHggSVlFwo1uFGjjtcE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11741655},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.6.0_1789277104232_0.823878635394965","host":"s3://npm-registry-packages-npm-production"}},"0.6.1":{"name":"@hasna/skills","version":"0.6.1","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.6.1","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"3c6242dca4a0e8969e77b75ebdd29d1574fd0545","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.6.1.tgz","fileCount":257,"integrity":"sha512-rHeq+Hn6aop3IDbLULr+aegX736z+VVPfLkk4HVAmUeDsJ5WIdR6HskO3L2RmvxCaps9abelMRpjlPm/MB/9Qg==","signatures":[{"sig":"MEUCIEFKQvhEzv30c1rxM0aE5OtgtPWxDkS/+d+IySBbhbEcAiEAoDElb6eqdUQy4xzfU1LzpnV97EmF+YoMufIfDDANkwk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11742190},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.6.1_1789287498839_0.04778896984298742","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"@hasna/skills","version":"0.6.2","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.6.2","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"8f1840d8c68e4591f5e672083b516b1012f9d65c","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.6.2.tgz","fileCount":257,"integrity":"sha512-ipM1cnkPG1yqX9G6fdWbd4hyBghPJVfZlQyYVzCT1cJI/Mlx1apGqdwP9BwYGv2akBXvwNRU3oW7Vk58Dhswwg==","signatures":[{"sig":"MEUCID7nf8B9j6Zt4ZebQ8nI8ja/nN+Tmn0Nn8McSzYfo9QGAiEAhA2UuiqYzjLTR33P+Du0TIyyshnI54B8FRys4GIxsLg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11746850},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.6.2_1789300814255_0.7940928548138744","host":"s3://npm-registry-packages-npm-production"}},"0.6.3":{"name":"@hasna/skills","version":"0.6.3","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.6.3","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/skills","bugs":{"url":"https://github.com/hasna/skills/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"9fdb2d1c37ef3df045e066a90eefcc8d9a3cd379","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.6.3.tgz","fileCount":257,"integrity":"sha512-Y8rJQ+WmOO5IeyUuzMuHf5zZXwaawRJSkrdMSdAJjzc7OIYCeJsm4uKddLOQdPHrigtHhHp33mf071eEDlfHWQ==","signatures":[{"sig":"MEQCIFB9rqYQAIaJqY/6JQgd+eXTFRn6LbYyhJTV27LF9MmEAiAcV5AzvyD6vbFGItVXgW5gfvkJuQCUjQg7jhsZH4y4dg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13718673},"main":"./dist/index.js","type":"module","_from":"file:/Users/hasna/.hasna/skills/launch-evidence/20260908-resume/skills-release-063-20260913/publish-operation-063-b92fc-2da2/snapshot-cbugypyi/accepted.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/Users/hasna/.hasna/skills/launch-evidence/20260908-resume/skills-release-063-20260913/publish-operation-063-b92fc-2da2/snapshot-cbugypyi/accepted.tgz","_integrity":"sha512-Y8rJQ+WmOO5IeyUuzMuHf5zZXwaawRJSkrdMSdAJjzc7OIYCeJsm4uKddLOQdPHrigtHhHp33mf071eEDlfHWQ==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.6.3_1789309063532_0.18869659781733583","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@hasna/skills","version":"0.7.1","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.7.1","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"4edf3acd829512c6b45b27768084c8c3151973b9","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.7.1.tgz","fileCount":267,"integrity":"sha512-FoFmqWv4I9m/MFkseJ7Y4xFOt20WDctGXgL3eM6rTAe0L2ielmo0KtFsv3eSq9G3KM97tTlWOClbuiy1H+kCfQ==","signatures":[{"sig":"MEQCIAvPVHLGywUst7RNdmJWYWaEa9sitdo40nh2AkYAsFQJAiADMBG6hm9mWboFT6QmStKP4VeRwsBLcRNKH+hbkolSnA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13472680},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/release/artifact-0.7.1/hasna-skills-0.7.1.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/release/artifact-0.7.1/hasna-skills-0.7.1.tgz","_integrity":"sha512-FoFmqWv4I9m/MFkseJ7Y4xFOt20WDctGXgL3eM6rTAe0L2ielmo0KtFsv3eSq9G3KM97tTlWOClbuiy1H+kCfQ==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.7.1_1789378297680_0.6466646283494457","host":"s3://npm-registry-packages-npm-production"}},"0.7.2":{"name":"@hasna/skills","version":"0.7.2","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.7.2","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"b5c3b5f13487be2672aefb7fddc7c522e7c1ed15","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.7.2.tgz","fileCount":269,"integrity":"sha512-4O4z6wC+6nH3hnRKmuF7VB63Dky2WPeU0kdjy/kQnP/pyBpvO9/FPk7wWRVKydK3nKk90yfFS3mvFXphApihSw==","signatures":[{"sig":"MEUCIDbnzaTWGzpCFR8VyNgL6XMO3IxDWS7U1ZzeFLw5G5vXAiEAtHfk47/dE2yShDujxhFUi5bh1EeU45WVQ8ruEBn8sMY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13511581},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/release-072/artifact-0.7.2/hasna-skills-0.7.2.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/release-072/artifact-0.7.2/hasna-skills-0.7.2.tgz","_integrity":"sha512-4O4z6wC+6nH3hnRKmuF7VB63Dky2WPeU0kdjy/kQnP/pyBpvO9/FPk7wWRVKydK3nKk90yfFS3mvFXphApihSw==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.7.2_1789404572722_0.029096561316662273","host":"s3://npm-registry-packages-npm-production"}},"0.7.3":{"name":"@hasna/skills","version":"0.7.3","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.7.3","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"f0bf123e259f5f3bb0b54c5ba394dc7ff91398b8","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.7.3.tgz","fileCount":271,"integrity":"sha512-azcSY4wHm0qtikZNyI8tKqg36FQ8Wn96sTo4Z6FLoJfxVRVjKAl1S9a40/W4rffMVNURTScg46RPvYTe13tiOQ==","signatures":[{"sig":"MEQCIBmcKR9GKYSqQHNbaeFReSKcwaE9KJ9VzWK9uhwwhak+AiBRBgCPVYHqJrPacWfMRUD3reuDSnfusWsk0iWy81FVgw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15455017},"main":"./dist/index.js","type":"module","_from":"file:/private/tmp/skills-publication-073-xx7b1mj6/package/skills.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/private/tmp/skills-publication-073-xx7b1mj6/package/skills.tgz","_integrity":"sha512-azcSY4wHm0qtikZNyI8tKqg36FQ8Wn96sTo4Z6FLoJfxVRVjKAl1S9a40/W4rffMVNURTScg46RPvYTe13tiOQ==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.0.2","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.7.3_1789453413212_0.06461856121899956","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@hasna/skills","version":"0.8.0","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.0","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"c3b96eef8253c7636e491a475d20dfa186e618c7","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.0.tgz","fileCount":253,"integrity":"sha512-bTbL1cgKjSbowWAM0q21Bk1BgiTyv8NrWgrlKWor/T+2pj4+PYed7rEj9MG7cajVc6bHwnDOFxRfjGYfA2fJbg==","signatures":[{"sig":"MEUCIE+31MbIGOwIJOACZQILHgWrhwBH0P8u0YDez3SQ+A+gAiEAv4+8TsgMDJlXwuoPSEzhERxczYRPImXx1FhC+CnJ7vc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20592300},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/release-080/artifact-0.8.0/hasna-skills-0.8.0.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/release-080/artifact-0.8.0/hasna-skills-0.8.0.tgz","_integrity":"sha512-bTbL1cgKjSbowWAM0q21Bk1BgiTyv8NrWgrlKWor/T+2pj4+PYed7rEj9MG7cajVc6bHwnDOFxRfjGYfA2fJbg==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/secrets":"0.4.2","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.0_1789488159923_0.36681197773954644","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@hasna/skills","version":"0.8.1","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.1","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"cc8427b1ac61ee789e610ae4ae90e0ea0739923a","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.1.tgz","fileCount":261,"integrity":"sha512-wDwGfuMwykXoH/ZwdCFK/aMtYVRjyE1tHwsX/v9FBC6SBa94e9TxgU0AqWOFfZUwKXTK97Wxp7QCtgWq1GRK7g==","signatures":[{"sig":"MEQCIG8VfsrxCqqnVbuKfSUBPZNdhGCZtF2YYb6x0n9cEq0BAiBHfOp9y99sFKvzAW0AQnrG4aEBRb7DgJzm5nYeRyCuwg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21690651},"main":"./dist/index.js","type":"module","_from":"file:/private/tmp/skills-publication-081-ha5uxjkf/package/skills.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/private/tmp/skills-publication-081-ha5uxjkf/package/skills.tgz","_integrity":"sha512-wDwGfuMwykXoH/ZwdCFK/aMtYVRjyE1tHwsX/v9FBC6SBa94e9TxgU0AqWOFfZUwKXTK97Wxp7QCtgWq1GRK7g==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/secrets":"0.4.2","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.1_1789500290267_0.37600202901738666","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"name":"@hasna/skills","version":"0.8.2","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.2","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"a55d09418ba12c7f2c246aeea68b3cced691c779","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.2.tgz","fileCount":262,"integrity":"sha512-JZqCi4i+iVzIThitqAMMjBzv7NwqME8TTzLJ/UD0J1dVnqesnQIQXBwjqVFSuEfsw6cqwfMtHD81cmBV04XdjA==","signatures":[{"sig":"MEUCIQCs73sew9VrpCsCKJhFg6DODKiIsQ2yVFdkeegnFP/s9gIgJi72AhlwPJ/4WB6yuW4AZKMgc3yirubpxyELvRyVK90=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22186519},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/release-082/artifact/hasna-skills-0.8.2.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/release-082/artifact/hasna-skills-0.8.2.tgz","_integrity":"sha512-JZqCi4i+iVzIThitqAMMjBzv7NwqME8TTzLJ/UD0J1dVnqesnQIQXBwjqVFSuEfsw6cqwfMtHD81cmBV04XdjA==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/secrets":"0.4.2","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.2_1789558128803_0.8111198408882883","host":"s3://npm-registry-packages-npm-production"}},"0.8.3":{"name":"@hasna/skills","version":"0.8.3","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.3","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"cede03730cd6db70a6b6850d568f8a3dc82ffc8d","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.3.tgz","fileCount":270,"integrity":"sha512-kgaURhJaZHrL5l07jnGbIGUqSoAQ50m98mjVrXfpT1VhXcdUSFz8Lu2W0nxvpLkc6IpGcKCKG5hcu7WNMSmKKw==","signatures":[{"sig":"MEUCIQCyVe7nzxJVUT/XqJl/NfnOoXy+lzioZpJjcHHsosW5SwIgOzwgLeu/R96tjyo2RG/Kw7zqVXNxi0ShjRr1GdQUqmM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22292487},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/release-083/artifact/hasna-skills-0.8.3.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/release-083/artifact/hasna-skills-0.8.3.tgz","_integrity":"sha512-kgaURhJaZHrL5l07jnGbIGUqSoAQ50m98mjVrXfpT1VhXcdUSFz8Lu2W0nxvpLkc6IpGcKCKG5hcu7WNMSmKKw==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/secrets":"0.4.2","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.3_1789575470877_0.07047525190675508","host":"s3://npm-registry-packages-npm-production"}},"0.8.4":{"name":"@hasna/skills","version":"0.8.4","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.4","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"ccde9fd10636ad640ba84043d66adc0e9e705084","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.4.tgz","fileCount":270,"integrity":"sha512-OGIxXfqL0kChmtmMm0bx4HOryQVGaGufLFJxy+qLLYHyjKLR8dfLHD5ZKFOnL84G3aLZpHGOcZOGh2vHMT3R1g==","signatures":[{"sig":"MEQCIF0qHgXohRWdJUelpfLNsBRW4VqgH0ildxYUXL1qUvDxAiAuoJK7DWrfPJmkIsB7aGIzPHe3reDJrq5rZbQMEeO1/Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22292759},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/release-084/artifact/hasna-skills-0.8.4.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/release-084/artifact/hasna-skills-0.8.4.tgz","_integrity":"sha512-OGIxXfqL0kChmtmMm0bx4HOryQVGaGufLFJxy+qLLYHyjKLR8dfLHD5ZKFOnL84G3aLZpHGOcZOGh2vHMT3R1g==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/secrets":"0.4.2","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.4_1789589338153_0.40431808499820554","host":"s3://npm-registry-packages-npm-production"}},"0.8.5":{"name":"@hasna/skills","version":"0.8.5","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.5","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"07ce6dd897394c60db573c0b1c162055338f15cf","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.5.tgz","fileCount":270,"integrity":"sha512-6ZhVqL7O4ewlgJg3M1STMYkJMeUWxeTZCr5E/s5mnD2ih2GLFk8r/ddeK07Z4MCsMsd5EukjCbZSl4NtQcNfYg==","signatures":[{"sig":"MEUCIQCxxTF3nkO1FHwx1n/z/T6IZphSoRvKA1k2d7oQY3xamwIgUkrOBUl8U1V4CAayUJ3NFADu4jOiQFss5FJOwRjAMGs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22293407},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/release-085/artifact/hasna-skills-0.8.5.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/release-085/artifact/hasna-skills-0.8.5.tgz","_integrity":"sha512-6ZhVqL7O4ewlgJg3M1STMYkJMeUWxeTZCr5E/s5mnD2ih2GLFk8r/ddeK07Z4MCsMsd5EukjCbZSl4NtQcNfYg==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/secrets":"0.4.2","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.5_1789600403245_0.28137912939288645","host":"s3://npm-registry-packages-npm-production"}},"0.8.6":{"name":"@hasna/skills","version":"0.8.6","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.6","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"5d11153a7a1fa0b2570a4d0cb5a6a6aaa0f39c9e","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.6.tgz","fileCount":270,"integrity":"sha512-x80xQ8wHFsEZ/kw2KPGKxts4Lefo4jBQQDQynshJxoVGp+NPXj7Z+zSyqqUR3wRzb+Hk5ZWvhc9v1mY+8qgDMg==","signatures":[{"sig":"MEUCIQDo1QpUo/4J1wMKMF+MkRbmYydJwBNRZPkryiJGxmsdDwIgaz2h3kJHXw9wlEFnxZGsppc8oAUsoVHHKx+WR+Utafo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22294480},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/hook-session-recovery-20260917/hasna-skills-0.8.6.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/hook-session-recovery-20260917/hasna-skills-0.8.6.tgz","_integrity":"sha512-x80xQ8wHFsEZ/kw2KPGKxts4Lefo4jBQQDQynshJxoVGp+NPXj7Z+zSyqqUR3wRzb+Hk5ZWvhc9v1mY+8qgDMg==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/secrets":"0.4.2","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.6_1789644664104_0.6675804046095535","host":"s3://npm-registry-packages-npm-production"}},"0.8.7":{"name":"@hasna/skills","version":"0.8.7","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.7","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"b442c40edc6ae214e01c46cd875c72f75a705ef3","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.7.tgz","fileCount":270,"integrity":"sha512-5Y5VACkrHheDJfNij5fUt4aKiEAjvCdxT25YE62p59/nWBNopC+cAFfVjsCr3Ak6Vm+2RwKeqcO0ps6mMdTetA==","signatures":[{"sig":"MEUCIQCAH2ijNW7BgCH6Sl+fhZwLP2C0y13pydnftLXqO0WB1gIgVZiGIK+1MXE5D0Qd02n+JyQGCcy79aUOEY7+PKRJLkg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22302915},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/curation-review/curation-resume/pr-operations-curation-20260916/runtime-entrypoint-fix/release-087/hasna-skills-0.8.7.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/curation-review/curation-resume/pr-operations-curation-20260916/runtime-entrypoint-fix/release-087/hasna-skills-0.8.7.tgz","_integrity":"sha512-5Y5VACkrHheDJfNij5fUt4aKiEAjvCdxT25YE62p59/nWBNopC+cAFfVjsCr3Ak6Vm+2RwKeqcO0ps6mMdTetA==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/secrets":"0.4.2","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.7_1789655246539_0.7301105903094258","host":"s3://npm-registry-packages-npm-production"}},"0.8.8":{"name":"@hasna/skills","version":"0.8.8","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.8","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"7e69886367ddd3a0bbd5864a7c9359f68ef0b0b8","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.8.tgz","fileCount":270,"integrity":"sha512-pTA8exCtM+hzHr5maIHtC61h5E8vYBjUftlQC7Pd1kqNLP79eJE6M75btm4V4W53fsBlVPXWLgcrR7XeJsK+6w==","signatures":[{"sig":"MEYCIQDNDuUrrbFuKkCjCL///XZ5Gk6jC3ewcyAe714MZt+3TAIhAJ50d4EY3Fc74eBwlcjPgzROnkxgEY61HlIUmXkRe/XR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFQzDeaOPQ/7FDPul8gr74re5kGLKTUIy3osdmK1EUS+AiAiPv7dG3FI3EfMYAcCLJso5YxPqXk+PJE4aqAgwcmnuQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22306487},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/curation-review/curation-resume/pr-operations-curation-20260916/runtime-entrypoint-fix/release-088/hasna-skills-0.8.8.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/curation-review/curation-resume/pr-operations-curation-20260916/runtime-entrypoint-fix/release-088/hasna-skills-0.8.8.tgz","_integrity":"sha512-pTA8exCtM+hzHr5maIHtC61h5E8vYBjUftlQC7Pd1kqNLP79eJE6M75btm4V4W53fsBlVPXWLgcrR7XeJsK+6w==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/secrets":"0.4.2","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.8_1789667623556_0.19630105688433575","host":"s3://npm-registry-packages-npm-production"}},"0.8.9":{"name":"@hasna/skills","version":"0.8.9","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.9","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"8d54995ed6aca5c41bfb8def1513b99942d35cdf","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.9.tgz","fileCount":273,"integrity":"sha512-qRRC1VBKsFV6IkQ4iXE1BTdZH7oOJN470AtuAjBdNwpRVTp9cRI0xv3NUfc/Es9PSk70W/vFyDkA0wYAzsHWAw==","signatures":[{"sig":"MEUCIAg8Vl8rfYEDEB49OVwV7Jr4GA3Sxbhfetk2wEWON7eCAiEAlylR1yfc205Q5741yVq2+wzyOztMcM3un5xl4W1FcNs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDDFHSS5RVb+tIZO336VXdcqYagGMwTvSF8WBQdwLz8YgIhAJhwzN8EWhZ4EqK/OtqoVEoXh4ILxJTdaY3XQsTYDMoy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22328718},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/curation-review/curation-resume/pr-operations-curation-20260916/runtime-entrypoint-fix/release-089-r2/hasna-skills-0.8.9.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/curation-review/curation-resume/pr-operations-curation-20260916/runtime-entrypoint-fix/release-089-r2/hasna-skills-0.8.9.tgz","_integrity":"sha512-qRRC1VBKsFV6IkQ4iXE1BTdZH7oOJN470AtuAjBdNwpRVTp9cRI0xv3NUfc/Es9PSk70W/vFyDkA0wYAzsHWAw==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/secrets":"0.4.2","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.9_1789675884454_0.2253693514578634","host":"s3://npm-registry-packages-npm-production"}},"0.8.10":{"name":"@hasna/skills","version":"0.8.10","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.10","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"c61d925a6285349698d498ec291d331c3927cec3","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.10.tgz","fileCount":285,"integrity":"sha512-c62sUn7jXec45OwjmcgoeYYbR/InK9YjQbeIhVTEtBsIVsWzcB38USf/Tz1K/g0Cic4hC+hxw1xxgsVPhjL2YA==","signatures":[{"sig":"MEQCIEOC4aHGFe1sg9/ymkYDUyYkfrZu0B6HTvACLAe2SUuSAiB5bPwIVIPTz5gZBYuTfa/2ZtLTNO66t/cjVLJbUs+Dcw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBhgB2NYZIv0qdc1mVeYkyIyGjXGm8RPD1AmdS7v09MKAiEAn6NPKKMrUf2qNRf6KhC+VpfAZ8OCCbibHu+biaQlpVU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22609974},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-official-release-20260918/final-candidate-2388/hasna-skills-0.8.10.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run build && bun run verify:release && bun run verify:consumer-types","prepare":"bun run build:js","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:consumer-types":"bun run scripts/consumer-types.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-official-release-20260918/final-candidate-2388/hasna-skills-0.8.10.tgz","_integrity":"sha512-c62sUn7jXec45OwjmcgoeYYbR/InK9YjQbeIhVTEtBsIVsWzcB38USf/Tz1K/g0Cic4hC+hxw1xxgsVPhjL2YA==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/secrets":"0.4.2","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.10_1789734919558_0.2740460186747702","host":"s3://npm-registry-packages-npm-production"}},"0.8.11":{"name":"@hasna/skills","version":"0.8.11","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.11","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"3bc49747dd6d99b678aea58940cb71c8ec10eeb2","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.11.tgz","fileCount":289,"integrity":"sha512-1Uskx+lwbCgrx/G3Iv2RdJmUxr23wu1wxVdPXCTl0FAMNOkkmLyyakyggQFlPOwcCsW9F/o5fwByRe6jrR31ng==","signatures":[{"sig":"MEQCIB9HDovQpRPx5kr4UbeRJEZ81ZMdBx3P7p9zVbH5ePStAiAWvp5aZ6Tpf7HSYUQYgQW/N+471wxrd5rlJVhFTj843g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIA278s0Y1EiAIf50CoHx+qYQh6GP/Y02ddA/Ek0tBn8nAiEA0ZldWrxAVWETLnObMnqlXGHHd746r3i4/JXQqxMVflA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16386456},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-release0811-continuation-20260918-23/npm-live-0.8.11/npm-auth-t49sb146/hasna-skills-0.8.11.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-release0811-continuation-20260918-23/npm-live-0.8.11/npm-auth-t49sb146/hasna-skills-0.8.11.tgz","_integrity":"sha512-1Uskx+lwbCgrx/G3Iv2RdJmUxr23wu1wxVdPXCTl0FAMNOkkmLyyakyggQFlPOwcCsW9F/o5fwByRe6jrR31ng==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.11_1789758418603_0.7358224095671635","host":"s3://npm-registry-packages-npm-production"}},"0.8.12":{"name":"@hasna/skills","version":"0.8.12","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.8.12","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"83f503a510cc71c07de7756f747d53e1111a2abd","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.8.12.tgz","fileCount":290,"integrity":"sha512-0wg1micFJ6mEgfrkD2YF9QfFxrsEXodxGXdsM5LK4Wzb0UdyjmaRUjvHdoEcodvDBW74s0foFfDtUDGa6JcHgA==","signatures":[{"sig":"MEUCIQC1ubT55kxyJU3JZMEAakQP3MnzkD9Ht0olZX/MRmW/jQIgFi2ItR2lF6zOt9DVkAShMyGG4lOOH+J5epgGicTsTK8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDakUY7jFEfrHRPDGWiXcB2WUF6GxL28BbCD6+nsNq7FwIhANHqJQ76yzrffTtsKeXdftju6aVNedKf5CFmW8yyXLkF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16426135},"main":"./dist/index.js","type":"module","_from":"file:/tmp/skills-release0812-publication-20260918/final-bound-0812/npm-live-0.8.12/npm-auth-xdxqbhrc/hasna-skills-0.8.12.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-release0812-publication-20260918/final-bound-0812/npm-live-0.8.12/npm-auth-xdxqbhrc/hasna-skills-0.8.12.tgz","_integrity":"sha512-0wg1micFJ6mEgfrkD2YF9QfFxrsEXodxGXdsM5LK4Wzb0UdyjmaRUjvHdoEcodvDBW74s0foFfDtUDGa6JcHgA==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.8.12_1789763352041_0.20946652286098","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"@hasna/skills","version":"0.9.1","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.1","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"3497736d15a03d686a6c29ad4c4286c36430e069","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.1.tgz","fileCount":293,"integrity":"sha512-KEIuu3X4uh4dwpfZXGUADK4coO3BI8OW3VEne+iOeyKhF8jwQLU6uLmcRKuj0IyyF/xqds3OKfUsJylyA0ygIA==","signatures":[{"sig":"MEQCIF5OnTDEJ3kP4q39mR4beYbQjZkfUclqzXHT3ywofeNMAiAoN7ASHiTL13sZqs0ONa8ogFVJAELjlRZmHp4RvmMsNA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAmxj+bjjNVDKF6uTg/L8uNUU0ij/BVJvFaXiPlwyZ/hAiBozWzieHgfuSqwRtEcxv5nsRoQiOCde3BSesurgqUmGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16549088},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"gitHead":"76a9b8adf3d671e1cdadebc478ad251176465529","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.1_1789820512680_0.1426376118919812","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"@hasna/skills","version":"0.9.2","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.2","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js"},"dist":{"shasum":"cdc4ed4aa019396b5796f707c64ed7c46fd004cb","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.2.tgz","fileCount":293,"integrity":"sha512-cYO5a0G/5/Rau13wPbIkd59IN0gcoLqDJSwNCLg0YtQey3n2yCJZJPQjNYhUgFI9lJci+ZDW1Hjuwwo2OKA7VA==","signatures":[{"sig":"MEUCIGuC5/pZAZAj6AFEdI2EytXZLcTPkr4bvEkJEf6s11eGAiEA7jZK8NmlZIim2IC/XiGldVHFnFZaunK9GyFInlvX9tk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAZcrk7biWbSP/94UyjCR7A2BnhcrnYnG11L/dyeiYdJAiBwsfQ+UcSQqO3/RCMVXBM+jSQf0RwJ7uRqBj1vTSggKw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16562365},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.2_1789826727047_0.8620904834096528","host":"s3://npm-registry-packages-npm-production"}},"0.9.3":{"name":"@hasna/skills","version":"0.9.3","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.3","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"113262960c17d759a0d710478bb938a725e8fdf6","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.3.tgz","fileCount":298,"integrity":"sha512-o4BpKkHhDqAyxy7ChabEDB0iupFI63v7rwT0pfYd+lgFW6n6Zt8HYclw3XcVhnHXDbb5loX+D1j/bn4HrBxGiw==","signatures":[{"sig":"MEUCIDde3cd3P0QpWjlsOogme4SfqzIDi+k7O3EU7edbi3pVAiEA3Zhj2XtdcYlhYWc/c0aOzQzfJoBdNEJFZooUofj2OLQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFVllOYpv/4VtCb3CHgkBLTWQgM1niwklMnHlALmpODHAiBu9VkQq3oe9Eeq8263Z9KkifQ5dyAiwQcO82p/Nv5WzQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16805498},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.3_1789833353225_0.41897264807587886","host":"s3://npm-registry-packages-npm-production"}},"0.9.4":{"name":"@hasna/skills","version":"0.9.4","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.4","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"a4e0d5d65fb1d51dac0fb49dcc8bc77f8d52d5ab","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.4.tgz","fileCount":298,"integrity":"sha512-y/W7HI3icdB21f5WeIYeMd4J9mRq/bN5WzpWgp1iSsXM7Is8mbGV8CxBXM8MDt7qxZibJGN/NPpbxJRj6OB01w==","signatures":[{"sig":"MEUCIQD8b5fpabNjYy/CwSTbB9Oav6OIsjJ0ZO4Q2UIznvzxMQIgCKf1DM73Jfs4Rkmf3y46WZZSs/WuhtfYvQnlRRZ0v2o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDUSUDQlIKfb2dP/PTEWWIyvUUAkGCnfytdpb7ywc/STwIgV4+ltW3ifv71ytT+T99w8P/d3xlbXkRqjOyy8BPzng4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16818458},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.4_1789845409858_0.2892389363402663","host":"s3://npm-registry-packages-npm-production"}},"0.9.5":{"name":"@hasna/skills","version":"0.9.5","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.5","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"127239e4f0250f113723dccc1e92726dc57c1b12","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.5.tgz","fileCount":298,"integrity":"sha512-HQOe+F0jHm31c2Zzv+S8fHIRA3MRLf6hi8d5qyHNz1m2teOuvAWV0JjCGnA8LVdqTRaEFxoNtthSw3pCvuet4A==","signatures":[{"sig":"MEQCIEA/pEPBgt0Oi4S55fw8SIA+kBPf632P/w5WFIZrk7xvAiBl5U77nRop6otsi3xZXjgR4C5J3YBdC/Mv0cIszKBTjg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCID5tw6VwLUKQDmSFdTjpA/mKVS0i9r8b3nTD6+vA8DTjAiAzJor8sp5cIzS3HKg9Vfq72toSDII+WJFebCqdC6hvbg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16819157},"main":"./dist/index.js","type":"module","_from":"file:/home/hasna/.hasna/scratchpad/scratch/01a07c2c-c34e-7733-9096-52a9ee06ab40/claude-autogoal/vendor-pack-095/hasna-skills-0.9.5.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/home/hasna/.hasna/scratchpad/scratch/01a07c2c-c34e-7733-9096-52a9ee06ab40/claude-autogoal/vendor-pack-095/hasna-skills-0.9.5.tgz","_integrity":"sha512-HQOe+F0jHm31c2Zzv+S8fHIRA3MRLf6hi8d5qyHNz1m2teOuvAWV0JjCGnA8LVdqTRaEFxoNtthSw3pCvuet4A==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.5_1789850023018_0.6069430165317804","host":"s3://npm-registry-packages-npm-production"}},"0.9.6":{"name":"@hasna/skills","version":"0.9.6","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.6","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"4713ef769d91b54b3d3b77f7504f0f35d4e0351e","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.6.tgz","fileCount":298,"integrity":"sha512-Jo+rdMX9Iv5UuSJ04IhK2fL3X/pb77lPae6s04g3mRrZsCNTs9QS1ZL7+ioXGmAVXMLo1dmyIdnL69Csg53mOA==","signatures":[{"sig":"MEUCIQCtQPuMrVvrR2grdhZfwRqwzzCMkItKaBkXYPTk7NELpQIgKEXPXktd4NZrE2nbGZoTzP4mEurxkbzkbcU0jO1UR/A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIF8mdFrF86kMEn/tI7TcJzQ07oeSp0X3/B8CQkHmuZKvAiEApyN/xrFrw6vQHTPabaT3uIAXVRT+bk5nOxY2+0ZtY7Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16819842},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.6_1789862138007_0.8583185477572122","host":"s3://npm-registry-packages-npm-production"}},"0.9.7":{"name":"@hasna/skills","version":"0.9.7","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.7","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"f4b3482328a20f784fbfa8dded37f7e483e2c9a1","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.7.tgz","fileCount":298,"integrity":"sha512-GjcpuPzs2z1QYbnxL8MZbD8rkpuW5k7bGHL0THAd0PJ3T1fs0eZD69ed9hq7Hry1HSyiu5a7y26DItW1/IXuPg==","signatures":[{"sig":"MEUCIGPo9uc23dewV+F9QjoaD3L7HtXCIAfEwa27yBYyY+LQAiEAuyuRl/+HZxuF35plna/Db9KgYd7YwyO9UNMMXaG0GJA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDBnSnsjEO4wDPEV9paPXVh8qHbSyNf6g9pBz6c6ZBNwQIgOmiUjzslteyTF2R/4qrJOb5UFT0wzN81VmAla+6E9FQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16821378},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.7_1789874045481_0.17462881804276864","host":"s3://npm-registry-packages-npm-production"}},"0.9.8":{"name":"@hasna/skills","version":"0.9.8","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.8","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"8349309a3de5f5c95bce31f8d6bfa46d7fbdfc7e","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.8.tgz","fileCount":298,"integrity":"sha512-cHeojprA5zkICNV9fP0N0Fv3fU86kwFcSTO9IUPwq5DXw4s104qAw+Wtk1t5BiO4C1YyqHJ8clQQHCfkDXIepw==","signatures":[{"sig":"MEQCIHeftHRHotI0kD2T/N/DIHNBjxTVR8EEJTIjU4dmveAwAiA1aYT7sD+ies6XsKKXQxofU7fqKOhVJwuoXIm5Kfpn4w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD0kln5FcFjf3uhe+qWMjyDxWX1RNkLQ/eD+DAsIlq2kAIhAOFv7fAFu60jw9yaj1C7S+d46e132RXUcISWFUtED4mO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16828110},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.8_1789885179113_0.731858299432864","host":"s3://npm-registry-packages-npm-production"}},"0.9.9":{"name":"@hasna/skills","version":"0.9.9","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.9","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"9dc6a6323ccb5eb7d4487d019db23c3a3a08a04d","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.9.tgz","fileCount":298,"integrity":"sha512-QmUO7qS4GiaiB7XfbBBMJKa3xZcs8ijaa5beu+dhyefVYIX9p9OxskrDl1EV14AgKkAc64TFxmBTZV+KMNlVug==","signatures":[{"sig":"MEUCIGne6D55YHoKCNSq2E8eRJGz7p3z6jiU3XPwb2CXtsqoAiEArT6IvrLsHLTjL1Nh1Tw0oZbbQqf2WhlQ1urf5+b9ZTk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAjkys7iMDa6e2QLG/Fe1yVT5aGdGeYuIH92d5mFLh/GAiEA27lKD+u8Ans0r6Jq/04WP43jN5Z55aKGvc+3xQL/rFA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16829651},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.9_1789902673811_0.9088703656743906","host":"s3://npm-registry-packages-npm-production"}},"0.9.10":{"name":"@hasna/skills","version":"0.9.10","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.10","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"46859a5c804dabd07f0458e3fe662d47763df09d","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.10.tgz","fileCount":299,"integrity":"sha512-Fo43GzAWOk2g0gottjYfaBlJW+m0Bek48HuT9BLI7+SAAQR4u9lcDzO8DZRwzi4JctePn9iMmLrpXweCYQvgbw==","signatures":[{"sig":"MEUCIQCQ4sNSlknBiQ2X+k5lJ3LA1GC1QJJ3rE+hmnZABQJSRgIgb0dPEqre+guPUtHmMGjoJ1h7aPARzDJ91fNtbw31GWs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCgNqftXzxZjdwpZRNrp36jecPbaLDaWQvsNfzOKU5P+wIgP+ifQRv/QCBwB3d3XLtghK3SqOm1lj7dAIGn1yn4jSo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16839011},"main":"./dist/index.js","type":"module","_from":"file:/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/native-journal-release-0910/hasna-skills-0.9.10.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/native-journal-release-0910/hasna-skills-0.9.10.tgz","_integrity":"sha512-Fo43GzAWOk2g0gottjYfaBlJW+m0Bek48HuT9BLI7+SAAQR4u9lcDzO8DZRwzi4JctePn9iMmLrpXweCYQvgbw==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.10_1789914263922_0.30806079193247715","host":"s3://npm-registry-packages-npm-production"}},"0.9.11":{"name":"@hasna/skills","version":"0.9.11","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.11","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"a4ff7118c5e16889333ef02f69590d94b59da2b9","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.11.tgz","fileCount":300,"integrity":"sha512-rfaGuhlQGu9HPx38qh/leI1ZHZd2KdDQploHx2tNoaYh20W7j80czlBdUcwtAenLdhO3xDDVLfPuGoTcA738Dg==","signatures":[{"sig":"MEQCIAzrjCrfbdR/V1ZwPxiflWREQ1lyLA2RvzacpkH68SN3AiAs38I1vhfV0BIPgXv4bEOniq8msvOgmZKMHzW2f7fBUQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQC3fc3aXqgHH2XeVTnV0e7fNFhg3osnZTFwnQHjKpgzRAIgE+IoOjZbGYydqIxmf4XcJq/iEzlGeNCarWBpC9bBKDs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16856163},"main":"./dist/index.js","type":"module","_from":"file:/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/native-journal-release-0911/hasna-skills-0.9.11.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/native-journal-release-0911/hasna-skills-0.9.11.tgz","_integrity":"sha512-rfaGuhlQGu9HPx38qh/leI1ZHZd2KdDQploHx2tNoaYh20W7j80czlBdUcwtAenLdhO3xDDVLfPuGoTcA738Dg==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.11_1789926525958_0.4564380359960609","host":"s3://npm-registry-packages-npm-production"}},"0.9.12":{"name":"@hasna/skills","version":"0.9.12","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.12","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"afd77c90d774a55b1c06c005ad7c0fef08d2f702","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.12.tgz","fileCount":303,"integrity":"sha512-zGK0XM/dXNwQWDrGe82Lqzv31kTXZsCu6w3yj32zdzVt+4qArZvdVAc+2b7u58g5nTjgr1LhxO6yUhsnMh/ddQ==","signatures":[{"sig":"MEYCIQD8tLMBE/dcOVw/0k9n5E5eJrtJgg0IoMA7LLeb/Zpz+wIhAMBAwahzmeCczmWqYmX/iGBY+ipeHe9sqrLWPrlyffwa","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCi2p8ja36Ycsv4kAKxYosUnJvUFuPts8qYW1+3OwgqkwIhAKtP49YnJ7Gt/eY5iPrz+Manb0piW/51TCYedv6HBOKY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17032277},"main":"./dist/index.js","type":"module","_from":"file:/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/native-release-0912/hasna-skills-0.9.12.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/native-release-0912/hasna-skills-0.9.12.tgz","_integrity":"sha512-zGK0XM/dXNwQWDrGe82Lqzv31kTXZsCu6w3yj32zdzVt+4qArZvdVAc+2b7u58g5nTjgr1LhxO6yUhsnMh/ddQ==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.12_1789977118297_0.969790394033442","host":"s3://npm-registry-packages-npm-production"}},"0.9.13":{"name":"@hasna/skills","version":"0.9.13","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.13","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"edfc8374f540077c7cc836181b5bf6db29ef6585","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.13.tgz","fileCount":303,"integrity":"sha512-apoLh8tUL9yTRljkgqxLJaBt0JJU/CcaRHKZySTXCGBJa2FdElcEmfLDz00/1CQvCD9hVn1tjs8sACTACKDmbg==","signatures":[{"sig":"MEUCIQDI3ueLzPdAGYcwcrI+pmGDizcBt6zYYulWoClJkzFGdwIgGVU+dob4hjLSUSnajKcpqB1HqhoqtfXNSmNB0xvYZMc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDFme7Vnj4EIu1wXFYBolXfUuqh1MNCBw7MEzt5Xx4wmQIhANHR0fJkzIlRyfgwnpD8qsOQ5vBFSas2l/vW6ZOmDoMV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17068500},"main":"./dist/index.js","type":"module","_from":"file:/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/fleet-claude-urgent-20260921/candidate-0913/hasna-skills-0.9.13.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/fleet-claude-urgent-20260921/candidate-0913/hasna-skills-0.9.13.tgz","_integrity":"sha512-apoLh8tUL9yTRljkgqxLJaBt0JJU/CcaRHKZySTXCGBJa2FdElcEmfLDz00/1CQvCD9hVn1tjs8sACTACKDmbg==","deprecated":"Do not activate claude-settings-v2 in this release: saved bypass consent is not bound. A corrective release is pending.","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.13_1790018116073_0.4049316955382185","host":"s3://npm-registry-packages-npm-production"}},"0.9.14":{"name":"@hasna/skills","version":"0.9.14","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.14","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"51674a97a6df4e0cf9897c3f1ed7c3895963970c","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.14.tgz","fileCount":303,"integrity":"sha512-O0Hp+BBzj+YXJ5ZrMtd5bjGsMJTNJHTvnW/4gNN9RegA86UVIYO2NOS+34lkBHwzVjd9mI/h5HsNf5xdnia7Ag==","signatures":[{"sig":"MEUCIQCZcW1x50RfS+Vpmwb7KKYbvbZhB3gXd43sRA0qOzjg8QIgTDwAwJjvszUvj+1FWd9rQ2PyY79qr3nGsW2ZgNjd3qk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIB/A5+taE2K+flXIxFtcQELDLhuKIyGbXkimd/js6jS9AiBngKiHH1UVyA47rergQZ4RLkvBfMFt1gyhikLMrrxZCA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17079263},"main":"./dist/index.js","type":"module","_from":"file:/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/fleet-claude-urgent-20260921/candidate-0914/hasna-skills-0.9.14.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/fleet-claude-urgent-20260921/candidate-0914/hasna-skills-0.9.14.tgz","_integrity":"sha512-O0Hp+BBzj+YXJ5ZrMtd5bjGsMJTNJHTvnW/4gNN9RegA86UVIYO2NOS+34lkBHwzVjd9mI/h5HsNf5xdnia7Ag==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.14_1790024403629_0.16262095825992717","host":"s3://npm-registry-packages-npm-production"}},"0.9.15":{"name":"@hasna/skills","version":"0.9.15","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.15","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"10cd039aa7dc0ef6a7704cf65afff2754d18b06c","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.15.tgz","fileCount":303,"integrity":"sha512-alYCKpiEqMwVHIkGO4NSNzfyHK9SvuBF/ERcHzuvoPpNzkWDlHsTMZBPh79oyZqdW/tNt0gx7V4Iw9mHlu2u1Q==","signatures":[{"sig":"MEUCIQDEvMztYEOck9EBe0/5lCVQUsLAQsL9VcgHa2yNcCv7ZQIgfTtRn5pB7A0TSW+QF9Y+A8bCvndtocTvxCBxALKadVs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDYEhyqXSl6cVdRoN3F1fwPgN1hIWcJTh+o4MtzCGRdZgIhALOEqYyNC15HWlMpzIKugc/OObTOLQqqzO0QjWtOS2jb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17084329},"main":"./dist/index.js","type":"module","_from":"file:/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/native-release-0915/artifacts-v2/hasna-skills-0.9.15.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/native-release-0915/artifacts-v2/hasna-skills-0.9.15.tgz","_integrity":"sha512-alYCKpiEqMwVHIkGO4NSNzfyHK9SvuBF/ERcHzuvoPpNzkWDlHsTMZBPh79oyZqdW/tNt0gx7V4Iw9mHlu2u1Q==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.15_1790049826633_0.8684129677732735","host":"s3://npm-registry-packages-npm-production"}},"0.9.16":{"name":"@hasna/skills","version":"0.9.16","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.16","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"4a969ebee856e04a713f7fc2cd77d585f917ffad","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.16.tgz","fileCount":303,"integrity":"sha512-4s7Ljg3vKbIbCD2ri/HfZe72C1B2ol8PQHTqwi8GDFTNRrtJe377kLQ9CnnFD95jbIjDeBUjNFyGHa9w3LIuiQ==","signatures":[{"sig":"MEUCIQDWGj2MtyuJLf615XSb0UukTuhBPZCcH2ijysHobUr9bgIgLz8V098TiRGehLEEGM9ghBZA6o+3uFGFp2FgUd4VpaM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDum29FRLBih9EGxxEYDJrY3fLOkin2KdPlUaRJxhesqwIgJtGXPDrwvUTu/wJY4n3xjqOTI1bzF+bX3lUIJ1GdTpk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17092674},"main":"./dist/index.js","type":"module","_from":"file:/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/skills-reinstall-review-reuse-20260922/artifacts-v5/hasna-skills-0.9.16.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/skills-reinstall-review-reuse-20260922/artifacts-v5/hasna-skills-0.9.16.tgz","_integrity":"sha512-4s7Ljg3vKbIbCD2ri/HfZe72C1B2ol8PQHTqwi8GDFTNRrtJe377kLQ9CnnFD95jbIjDeBUjNFyGHa9w3LIuiQ==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.16_1790055692434_0.41626765611110805","host":"s3://npm-registry-packages-npm-production"}},"0.9.17":{"name":"@hasna/skills","version":"0.9.17","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.17","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"86ce40511d7d21f8cf6dad1890f16710fdd6ae6a","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.17.tgz","fileCount":303,"integrity":"sha512-OfJ5oe+9sOjbW50AKTphhsuZ/ksLTiFN26OItDZEuWxZjp9PSpe48KPYU6+tOXmQPVqh9ECV3fjkQvVlUCUxmw==","signatures":[{"sig":"MEUCIQDPnla0Lzya3FHEqjbAwPE/3MtHyPu30zURLmqUYGddWgIgfAbaRXdDl71v0eFuqu27nfKmREShCNLhRuxXlh8x5IQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD23IeKZTGNOgsx/iJ9EowrL4mscNreKAKC0XVZhdDzMQIgGyeo53SC5X5CqGtppiy4e4RQz7T01ohWg7eyMph3HbA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17101578},"main":"./dist/index.js","type":"module","_from":"file:/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/claude-fleet-repair-20260923/hasna-skills-0.9.17.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/claude-fleet-repair-20260923/hasna-skills-0.9.17.tgz","_integrity":"sha512-OfJ5oe+9sOjbW50AKTphhsuZ/ksLTiFN26OItDZEuWxZjp9PSpe48KPYU6+tOXmQPVqh9ECV3fjkQvVlUCUxmw==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.17_1790158691035_0.1388863379201868","host":"s3://npm-registry-packages-npm-production"}},"0.9.18":{"name":"@hasna/skills","version":"0.9.18","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.18","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"8456eab59b4416f8242457e4be00aa749f69f0c5","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.18.tgz","fileCount":303,"integrity":"sha512-meZJwkpBNT0Ep8YfIH2svMbQVukbPwEK38sekEC0te5AIlKoCzZvbIwuQNq8t2GXERz4K0wrK1Ll06y0m/5jeQ==","signatures":[{"sig":"MEQCIEP1PFpJz2Ev1d2PUgR7piGm/pIyDcd0dmvcmWk6na7qAiB/JviQ2s0UPUPE39eeWGouBKFLperhkpAuaxkJc7egjg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIB9CBVracNrXfOiaJ+3zxlU2DaO1CF45Hrdgsg7o8DDxAiEAldsLlAJXl7ciwuKzH/O2Esgzl2FXP21Eb6jp8+YXkY0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17105606},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.18_1790169987044_0.050469652455093605","host":"s3://npm-registry-packages-npm-production"}},"0.9.19":{"name":"@hasna/skills","version":"0.9.19","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.19","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"c0725067d3b5e01e9fd8851f4571afad8f9169aa","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.19.tgz","fileCount":304,"integrity":"sha512-QUvVGi79HeCRI67y6fXx2+qJsjZRjlrBjkHKgVd8UKq9mAUV1O/3ifA6ZBnoOy9MJirYdk9z0IQc4aSFi9ObOg==","signatures":[{"sig":"MEYCIQDHTCXHSbhKs7iW8WNcWGpA1n3IMhTU1InwVMbE9y7bRgIhAM5iUkJbdlURU1EwsWoRcL3TF9srRtnne0gSFWSh7SII","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDTkz8BGEI0SLhq6Tc3fkVNPmjfAO19i82+YL5L1XXmXwIgJspmjGZF3KUvbOsXfUL+zKFhgl/HgDemK9g3aRJ/JFI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17108066},"main":"./dist/index.js","type":"module","_from":"file:/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/claude-fleet-repair-20260923/skills0919-isolated-producer/artifacts/hasna-skills-0.9.19.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/home/hasna/.hasna/scratchpad/scratch/skills-curation-luna12-20260919/claude-fleet-repair-20260923/skills0919-isolated-producer/artifacts/hasna-skills-0.9.19.tgz","_integrity":"sha512-QUvVGi79HeCRI67y6fXx2+qJsjZRjlrBjkHKgVd8UKq9mAUV1O/3ifA6ZBnoOy9MJirYdk9z0IQc4aSFi9ObOg==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.19_1790177763590_0.4669347494406817","host":"s3://npm-registry-packages-npm-production"}},"0.9.20":{"name":"@hasna/skills","version":"0.9.20","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.9.20","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"c7d0c467dbed10caafe6e13be002cd6e790b63cf","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.9.20.tgz","fileCount":304,"integrity":"sha512-BhE63qZomDkzeqPhpjh1fxpvY3UQ3hMb9ZAajN/Wzd077z9f53dIM2CvMephJ1HeSO20zEp2juhcqLZFlkIipQ==","signatures":[{"sig":"MEYCIQDU+2sTt23NLFjueqMlzTnAvme/zcSZKigtk4+FACD/6AIhAOdQuVhpMy1LDF2ABrFZI5Em3RUzlLcB1EPbMMc7SA7/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC8+y770A1JDDoAbyhNfhD6jBK9QZRZ4Gyy7wLP/W3bBwIhANGJhgso1dwhex5WPxwuh8SjjBRRMBAUNvo6IQk7Fu7v","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17108563},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.9.20_1790194933091_0.2364910142397132","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@hasna/skills","version":"0.10.0","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.10.0","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"626a7b6f79cff51d055235d33115717476d21d6f","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.10.0.tgz","fileCount":308,"integrity":"sha512-z4Zl80vT9yki3fF8l4vWqouIxBrXPUy1OVN0eooo2yz3aCJPaLosbcH2UcXr64yOFQoEq6cjrZsS4x07p2Kr1Q==","signatures":[{"sig":"MEUCIQC9RSJ1NSaiC9N5eMQ6cq3zj6IiZXVG7jrMDzda+BSGIgIgHFdIDUUVW1KbFqjOToqt0S3ckW6BYXHbNVGTSgaUHIc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICf/Ag6pGY4BdHXg7kDK2AjWDUH8h2tUmANReKSaZd2tAiBZDDdq1wxXC5O0AYI7ps3ssrkr8YP6PfBfuhzYFtnqbg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17193353},"main":"./dist/index.js","type":"module","_from":"file:/Users/hasna/.hasna/scratchpad/scratch/dabc4a7f-5977-4aaa-8233-b28396a4436b/e3720f56/artifact/hasna-skills-0.10.0.tgz","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/Users/hasna/.hasna/scratchpad/scratch/dabc4a7f-5977-4aaa-8233-b28396a4436b/e3720f56/artifact/hasna-skills-0.10.0.tgz","_integrity":"sha512-z4Zl80vT9yki3fF8l4vWqouIxBrXPUy1OVN0eooo2yz3aCJPaLosbcH2UcXr64yOFQoEq6cjrZsS4x07p2Kr1Q==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.10.0_1790209571358_0.6309655108938537","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"@hasna/skills","version":"0.10.1","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.10.1","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"01f892e2b15e853053fc1af097bd47e780b0a5da","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.10.1.tgz","fileCount":309,"integrity":"sha512-F4Q+BHK5FfGF3Rmvvzzy5Z8CEsstMuP25vsnWKRZlQO5oIufvhRdpyE0sIyTdsjA/nEenw/JnaL23ZwK79KCpQ==","signatures":[{"sig":"MEQCIDtNvVbgx9aD/YBOQYJC6TQ6oymz1GBzH4endjudbbRnAiArrkcjUd5MY5QUFCIgGqMwCZ4K96g0JCKh69GfSEmUdg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCp9segXm756uppzv8JDuXmZsUEaLsXANIp0S6wtRwvlwIhAInpIagVHpUiZ+XgWwBE9ots7D+dze7Et6advT/uUtJS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17195875},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.10.1_1790246323104_0.575399341352189","host":"s3://npm-registry-packages-npm-production"}},"0.10.2":{"name":"@hasna/skills","version":"0.10.2","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.10.2","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"e30576346e8b755ecc90cf6731967f6ca7e62ba4","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.10.2.tgz","fileCount":309,"integrity":"sha512-qDu+oELw36KYCe5Yk93ufHwEfxbuMB7DMyrNwIudEkLHdJqExpzMLQ/UepmvoBeRgHQ2kKpMiyyT0XdEQs61ww==","signatures":[{"sig":"MEUCICBbw1Qc2tHz26yq769AO8ZvyuT7YpDup0oxg2hV+n3DAiEAvnKePb0pvOBhVQ6FU7XhKnEXOtGmxYZ3ui5ih5RzTiY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFPWCX8XVv9+BQDFuuCn3etyM4soV9plGVeYBYDXMgXLAiBvbpJg66q83Xl4A+7n3dOx1VzWs+2U2INNHD9T7C/6UQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17236006},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.10.2_1790280438556_0.8385215310921366","host":"s3://npm-registry-packages-npm-production"}},"0.10.3":{"name":"@hasna/skills","version":"0.10.3","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"author":{"name":"Hasna"},"license":"Apache-2.0","_id":"@hasna/skills@0.10.3","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"dist":{"shasum":"103c472328daa8592275eaae01d12653d08fd4c7","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.10.3.tgz","fileCount":309,"integrity":"sha512-qJVkfs6G3ibnMf6z/eXl9veo8tPZmuWF4kIfhzxlneijNA4GNo4nfCul6MIJLrdG/jyByIKbZZrWKfsb+BZ4iQ==","signatures":[{"sig":"MEUCIF1H0nI+N8OoM4JPFZ9jeHsjz8EMxJ1CERdjaHzHwycCAiEA7JXLMxvDVvIQFo+aMjH0fDFNbncvW65rjslpv3DY6FQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCVKSfHFjUITY1HalzVeByOiH7/9RPyS8qWlnht66tbGwIgYb8y5sBzpj5DASHa7k2agwKmJ50I7P+Jo6KikkSQZyM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":17243481},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"tmp":"tmp/skills_0.10.3_1790330590569_0.9220177044582196","host":"s3://npm-registry-packages-npm-production"}},"0.10.4":{"_id":"@hasna/skills@0.10.4","bin":{"skills":"bin/index.js","skills-mcp":"bin/mcp.js","skills-serve":"bin/server.js","skills-server":"bin/server.js","skills-worker":"bin/worker.js","skills-migrate":"bin/migrate.js","skills-maintenance":"bin/maintenance.js"},"bugs":{"url":"https://github.com/hasna/apps/issues"},"dist":{"shasum":"0ae0d61d2424d6cbb0743b69e9d18174e3f5a6fa","tarball":"https://registry.npmjs.org/@hasna/skills/-/skills-0.10.4.tgz","fileCount":309,"integrity":"sha512-LWVu5KsAQ2jLyi4X3Mi6lFuoIFmYQ5Vxsi8OLNLSwK+zBK0p6VFsLYYQD6l+pzyW5lkyuRa6u1dUpVDS9fjM3w==","signatures":[{"sig":"MEQCIDAmtuJwNb/HK5ViicMhQz3Tzi3BAnLA3rQpubhE2i+KAiBxSFohnnZe08YpSUUDqXVp+1dUOkJ1VuuVsKts3f9Cug==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDws4IgqHPbWZlmZ0c5f6HOLvrB5GFKnnC+NdfiDsrz3AiB9SGOUynZ/Etun/2RbAHSIUBPR46kv+ycrhIreX/b1Ww=="}],"unpackedSize":17243964},"main":"./dist/index.js","name":"@hasna/skills","type":"module","types":"./dist/index.d.ts","author":{"name":"Hasna"},"engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./sdk":{"types":"./dist/sdk/index.d.ts","import":"./dist/sdk/index.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./admin-contract":{"types":"./dist/admin-contract.d.ts","import":"./dist/admin-contract.js"}},"license":"Apache-2.0","scripts":{"dev":"bun run ./src/cli/index.tsx","test":"bun test --timeout 30000","build":"bun run clean && bun build ./src/cli/index.tsx --outdir ./bin --target bun && bun build ./src/mcp/index.ts --outfile ./bin/mcp.js --target bun && bun build ./src/server/index.ts --outfile ./bin/server.js --target bun && bun build ./src/server/worker.ts --outfile ./bin/worker.js --target bun && bun build ./src/server/migrate.ts --outfile ./bin/migrate.js --target bun && bun build ./src/server/maintenance.ts --outfile ./bin/maintenance.js --target bun && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","clean":"rm -rf bin/ dist/","dev:mcp":"bun --watch run ./src/mcp/index.ts","migrate":"bun run ./src/server/migrate.ts","prepack":"bun run verify:generated && bun run verify:release && bun run verify:consumer-types","build:js":"rm -rf dist && bun build ./src/index.ts ./src/storage.ts ./src/sdk/index.ts ./src/admin-contract.ts --outdir ./dist --target bun && tsc --emitDeclarationOnly --declaration --outDir dist","dev:watch":"bun --watch run ./src/cli/index.tsx","typecheck":"tsc --noEmit","dev:server":"bun --watch run ./src/server/index.ts","dev:worker":"bun --watch run ./src/server/worker.ts","docker:check":"bash scripts/docker-build-check.sh","prepublishOnly":"bun run verify:producer && bun run typecheck && bun run test","verify:release":"bun run scripts/release-guard.ts","verify:producer":"bun run scripts/release-dependencies.ts","verify:generated":"HASNA_SKILLS_RELEASE_ARTIFACT_TEST=1 bun test src/lib/release-artifacts.test.ts","verify:consumer-types":"bun run scripts/consumer-types.ts","verify:consumer-credentials":"bun run scripts/consumer-credentials.ts"},"version":"0.10.4","_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"homepage":"https://github.com/hasna/apps/tree/main/apps/skills","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"_npmVersion":"11.19.0","description":"Skills library for AI coding agents","directories":{},"maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"_nodeVersion":"24.20.0","dependencies":{"ink":"^5.0.1","zod":"^4.3.6","chalk":"^5.3.0","react":"^18.2.0","commander":"^12.1.0","ink-spinner":"^5.0.0","@hasna/events":"0.1.18","@hasna/secrets":"0.4.2","ink-text-input":"^6.0.0","ink-select-input":"^6.0.0","@aws-sdk/client-s3":"^3.1079.0","@aws-sdk/client-ecs":"^3.1079.0","@modelcontextprotocol/sdk":"^1.26.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"yaml":"^2.9.0","bun-types":"1.3.14","@types/bun":"1.3.14","typescript":"^5","@types/node":"25.2.3","@types/react":"^18.2.0","@hasna/contracts":"1.1.0","react-devtools-core":"^7.0.1"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/skills_0.10.4_1790369544464_0.3621801409469039"}}},"time":{"created":"2026-02-14T11:01:10.256Z","modified":"2026-09-25T20:52:24.862Z","0.0.2":"2026-02-14T11:01:10.610Z","0.0.3":"2026-02-14T11:11:50.837Z","0.0.4":"2026-02-14T20:32:23.670Z","0.1.1":"2026-02-14T20:33:58.189Z","0.1.2":"2026-02-15T08:31:42.107Z","0.1.3":"2026-02-15T08:35:17.810Z","0.1.4":"2026-02-15T09:53:16.072Z","0.1.5":"2026-03-10T13:41:59.265Z","0.1.6":"2026-03-10T18:11:51.488Z","0.1.7":"2026-03-11T04:46:43.547Z","0.1.8":"2026-03-11T08:12:18.146Z","0.1.9":"2026-03-11T21:24:24.873Z","0.1.10":"2026-03-11T21:31:02.534Z","0.1.11":"2026-03-12T04:47:59.766Z","0.1.12":"2026-03-12T09:41:31.737Z","0.1.13":"2026-03-12T11:22:29.164Z","0.1.14":"2026-03-20T16:43:17.583Z","0.1.15":"2026-03-23T10:56:58.036Z","0.1.16":"2026-03-23T14:36:36.598Z","0.1.17":"2026-03-23T15:17:19.827Z","0.1.18":"2026-03-23T15:35:01.636Z","0.1.19":"2026-04-02T14:10:49.930Z","0.1.20":"2026-04-08T15:16:34.196Z","0.1.21":"2026-04-09T08:16:48.825Z","0.1.22":"2026-04-17T12:13:37.153Z","0.1.23":"2026-04-24T10:16:23.199Z","0.1.24":"2026-05-10T06:53:41.895Z","0.1.25":"2026-05-10T07:31:27.374Z","0.1.26":"2026-05-11T08:11:35.828Z","0.1.27":"2026-05-11T08:13:00.189Z","0.1.29":"2026-05-28T10:07:25.796Z","0.1.30":"2026-05-28T16:00:58.649Z","0.1.31":"2026-06-05T06:00:14.135Z","0.1.32":"2026-06-05T12:35:59.878Z","0.1.33":"2026-06-05T15:48:28.382Z","0.1.34":"2026-06-05T15:56:43.598Z","0.1.35":"2026-06-06T07:21:08.107Z","0.1.36":"2026-06-06T07:25:38.841Z","0.1.37":"2026-06-06T07:31:48.906Z","0.1.38":"2026-06-06T11:28:15.140Z","0.1.39":"2026-06-06T11:37:56.845Z","0.1.40":"2026-06-06T12:06:15.297Z","0.1.41":"2026-06-06T12:47:43.575Z","0.1.42":"2026-06-16T08:52:09.538Z","0.1.43":"2026-06-16T11:21:08.996Z","0.1.44":"2026-06-17T19:31:06.433Z","0.1.45":"2026-06-17T19:53:52.974Z","0.1.46":"2026-06-17T19:58:20.245Z","0.1.47":"2026-06-27T16:06:56.875Z","0.1.48":"2026-06-27T17:14:04.428Z","0.1.49":"2026-06-28T14:32:08.310Z","0.1.50":"2026-06-28T14:46:35.893Z","0.1.51":"2026-06-29T00:28:57.574Z","0.1.52":"2026-06-29T07:17:45.922Z","0.1.53":"2026-06-29T07:28:35.095Z","0.1.54":"2026-06-29T07:37:45.982Z","0.1.55":"2026-06-30T11:07:45.022Z","0.1.56":"2026-06-30T11:47:29.117Z","0.1.57":"2026-06-30T16:36:51.183Z","0.1.58":"2026-06-30T17:22:20.894Z","0.1.59":"2026-07-24T15:15:52.235Z","0.1.60":"2026-07-24T22:02:25.814Z","0.1.61":"2026-08-09T13:38:32.266Z","0.1.62":"2026-08-10T07:12:37.288Z","0.1.63":"2026-08-15T10:22:54.362Z","0.1.64":"2026-08-21T09:57:34.101Z","0.1.66":"2026-08-24T09:29:52.956Z","0.1.67":"2026-08-24T16:02:21.058Z","0.1.68":"2026-08-24T16:55:05.138Z","0.1.69":"2026-08-25T00:41:06.794Z","0.1.70":"2026-08-25T23:31:22.588Z","0.1.71":"2026-08-26T18:11:31.315Z","0.1.72":"2026-08-28T03:55:26.093Z","0.2.0":"2026-09-04T13:33:05.097Z","0.2.1":"2026-09-04T19:59:02.602Z","0.3.0":"2026-09-05T17:40:28.479Z","0.4.0":"2026-09-06T00:41:50.179Z","0.5.0":"2026-09-07T13:13:48.651Z","0.5.1":"2026-09-07T18:33:59.280Z","0.5.2":"2026-09-08T07:07:19.885Z","0.5.3":"2026-09-08T10:27:19.221Z","0.5.4":"2026-09-08T19:17:58.357Z","0.5.5":"2026-09-09T10:09:36.959Z","0.5.6":"2026-09-09T12:38:33.630Z","0.5.7":"2026-09-09T15:55:56.505Z","0.5.8":"2026-09-09T19:38:29.804Z","0.5.9":"2026-09-10T16:54:45.086Z","0.5.10":"2026-09-10T19:59:01.330Z","0.5.11":"2026-09-11T20:46:09.498Z","0.6.0":"2026-09-13T05:25:04.448Z","0.6.1":"2026-09-13T08:18:19.048Z","0.6.2":"2026-09-13T12:00:14.522Z","0.6.3":"2026-09-13T14:17:43.766Z","0.7.1":"2026-09-14T09:31:37.869Z","0.7.2":"2026-09-14T16:49:32.946Z","0.7.3":"2026-09-15T06:23:33.412Z","0.8.0":"2026-09-15T16:02:40.143Z","0.8.1":"2026-09-15T19:24:50.522Z","0.8.2":"2026-09-16T11:28:49.019Z","0.8.3":"2026-09-16T16:17:51.118Z","0.8.4":"2026-09-16T20:08:58.374Z","0.8.5":"2026-09-16T23:13:23.524Z","0.8.6":"2026-09-17T11:31:04.330Z","0.8.7":"2026-09-17T14:27:26.799Z","0.8.8":"2026-09-17T17:53:43.735Z","0.8.9":"2026-09-17T20:11:24.601Z","0.8.10":"2026-09-18T12:35:19.698Z","0.8.11":"2026-09-18T19:06:58.823Z","0.8.12":"2026-09-18T20:29:12.232Z","0.9.1":"2026-09-19T12:21:52.869Z","0.9.2":"2026-09-19T14:05:27.255Z","0.9.3":"2026-09-19T15:55:53.374Z","0.9.4":"2026-09-19T19:16:50.038Z","0.9.5":"2026-09-19T20:33:43.179Z","0.9.6":"2026-09-19T23:55:38.152Z","0.9.7":"2026-09-20T03:14:05.724Z","0.9.8":"2026-09-20T06:19:39.266Z","0.9.9":"2026-09-20T11:11:14.012Z","0.9.10":"2026-09-20T14:24:24.121Z","0.9.11":"2026-09-20T17:48:46.101Z","0.9.12":"2026-09-21T07:51:58.500Z","0.9.13":"2026-09-21T19:15:16.244Z","0.9.14":"2026-09-21T21:00:03.973Z","0.9.15":"2026-09-22T04:03:46.783Z","0.9.16":"2026-09-22T05:41:32.587Z","0.9.17":"2026-09-23T10:18:11.262Z","0.9.18":"2026-09-23T13:26:27.205Z","0.9.19":"2026-09-23T15:36:03.788Z","0.9.20":"2026-09-23T20:22:13.225Z","0.10.0":"2026-09-24T00:26:11.665Z","0.10.1":"2026-09-24T10:38:43.291Z","0.10.2":"2026-09-24T20:07:18.820Z","0.10.3":"2026-09-25T10:03:10.720Z","0.10.4":"2026-09-25T20:52:24.637Z"},"bugs":{"url":"https://github.com/hasna/apps/issues"},"author":{"name":"Hasna"},"license":"Apache-2.0","homepage":"https://github.com/hasna/apps/tree/main/apps/skills","keywords":["skills","ai","agent","cli","typescript","bun","claude","codex","gemini","mcp","model-context-protocol","open-source","skills-library","automation"],"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/skills"},"description":"Skills library for AI coding agents","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"readme":"# @hasna/skills\n\nSkills library for AI coding agents — discover, pin, and run reusable capabilities through the Skills CLI and MCP server. Registers with Claude, Codewith, Codex, OpenCode and Cursor, and works with any MCP host.\n\n[![npm](https://img.shields.io/npm/v/@hasna/skills)](https://www.npmjs.com/package/@hasna/skills)\n[![License](https://img.shields.io/badge/license-Apache--2.0-blue)](LICENSE)\n\n## Install The CLI\n\n```bash\nbun install -g @hasna/skills\n```\n\nRequires [Bun](https://bun.sh/) 1.3+.\n\n## Private skill catalogs\n\nThe public package provides the CLI, API, SDK, hooks, and runtime. A skill's\ninstructions and executable bundle belong to the organization that publishes\nthem. API reads require authentication and use that organization's catalog,\nincluding tag filters, versions, and downloads. An empty account starts empty;\nneither a repository checkout nor files on the server machine supply defaults.\nServer startup and upgrades never import a bundled catalog.\n\nEach operator can use their own compatible server and storage. S3 is optional:\nthe server supports durable SQLite or PostgreSQL and database-backed bundles\nwhen no S3 bucket is configured. Publishing through an authenticated account\ndoes not publish to GitHub or npm. Keep private source documents and executable\npayloads outside public software repositories.\n\n## Quick Start\n\n```bash\nbun install -g @hasna/skills\nskills login\n```\n\n`skills login` opens your browser to sign in to https://skills.md and stores an\nAPI key for this machine in `~/.hasna/skills/config/credentials` (owner-only),\ntogether with the server it belongs to. On a terminal it then offers to register\nSkills with your coding agents (`skills setup agents`). Check who you are with\n`skills whoami`.\n\n`skills logout` signs out the active profile. It deletes the key that\n`skills login` stored, then revokes it on the server that issued it when login\nminted it (a key you added with `--api-key` is only deleted, unless you pass\n`--revoke`). It exits 0 only when you are signed out. It exits non-zero, naming\nthe reason, when revocation did not complete or is not supported (it then says\nwhere to revoke the key by hand), when another credential is still active (an\nenvironment variable, the Keychain or another selected profile, which it never\nchanges), when the profile holds a credential `skills login` did not store\n(left in place), or when the local deletion failed.\n\n- No browser on this machine: `skills login --device` prints a code to approve\n  on another device, then `skills login --poll` finishes the same sign-in.\n- An API key you already have: `printenv MY_SKILLS_KEY | skills login --api-key`\n  reads it from stdin, verifies it and stores it. Nothing is echoed.\n- An email code instead of the browser: `skills login --email you@example.com`.\n- Running `skills` in a terminal opens the interactive browser. It also works\n  signed out and has the same account commands: `/login`, `/logout`, `/whoami`.\n\n### Your own server\n\nThe software is open source and every command works against your own compatible\nSkills server. Sign in to it with\n`skills login --url https://skills.example.com`; the URL is stored with the key,\nso later commands use that server without flags. `HASNA_SKILLS_API_URL` selects\na server for one shell. `skills setup --api-url <origin>` records a server\nwithout signing in.\n\n### Fleet stations\n\nStations provisioned with a fleet key keep using the internal gateway\n`https://api.hasna.com/skills`; versioned requests use `/skills/v1`. A key with\nno recorded URL (the Keychain item, `HASNA_SKILLS_API_KEY` alone, or an older\ncredentials file) always stays on that gateway and is never sent anywhere else.\nThe gateway has no interactive login service, so on such a station\n`skills login` says so, sends nothing, and names the credential to unset first.\nObtain a workspace API key through your administrator's provisioning process\nand configure it using the [credential resolution](#credentials) below. Check\nthe selected identity and available capabilities before syncing:\n\n```bash\nskills whoami --json\nskills capabilities --json\n```\n\nA workspace administrator creates a shared profile selecting published skills by\nexact version and SHA-256 digest. Consumers sync that profile into a verified\nSkills cache, then load instructions through the CLI. Replace `default` with\nyour assigned profile; these examples assume it selects `pdf-generate@0.5.2`:\n\n```bash\nskills list --json\nskills profiles show default --json\nskills sync --selection-profile default --json\nskills install pdf-generate@0.5.2 --selection-profile default --json\nskills load pdf-generate@0.5.2 --selection-profile default\nskills context 'Use $pdf-generate to create a PDF' --selection-profile default --json\n\n# Preview retirement, then archive ordinary copies and vendor discovery files.\nskills migrate native --include-unmanaged --include-vendor --json\nskills migrate native --include-unmanaged --include-vendor --apply --json\n\n# Preview the available adapters, then install one bridge plus hooks per agent.\nskills hook agents --json\nskills hook install --agent all --selection-profile default --json\nskills hook install --agent all --selection-profile default --apply --json\n```\n\nNative migration includes the current directory, every ancestor, and the global\nagent directories. Use `--project /path/to/project` to include another project\nand its ancestors. This matches the prompt hook's project discovery, including\nskills inherited from a parent workspace. Preview the JSON inventory before\napplying it; archived copies retain recovery receipts. A drift refusal reports\nthe affected paths without printing their skill documents.\n\nClaude hook installation sets `syncClaudeAiSkills: false` in user settings to\nstop [account skill synchronization](https://code.claude.com/docs/en/skills#skills-synced-from-claudeai)\nfrom recreating native copies. The prompt hook checks that setting. Vendor\nmigration also inventories `~/.claude/plugins/synced/` and archives its skill\ndocuments while preserving other plugin files. Whole-plugin synchronization\nremains unchanged because synced plugins can also provide hooks, MCP servers,\nand language servers. A later plugin download that restores a skill document\nwill trigger another drift refusal and require review.\n\nNative hook invocations must use their installed adapter's selection profile.\nAn old client command or environment override naming another profile refuses\nbefore synchronization or context loading. Review the hook installation and\nrestart the native client to load its current commands. Explicit `skills load`,\n`skills context`, and `skills sync` commands can still select other profiles.\n\nReinstalling hooks without `--command` or `--selection-profile` preserves each\nagent's existing executable and profile independently, including when using\n`--agent all`. New agents use `skills` and `default`. Either explicit flag\noverrides that choice for the requested agents. The policy's shared default\nprofile changes only when `--selection-profile` is supplied; older managed\nagents without a per-agent profile retain that shared default.\n\nThe hook install `--include-vendor` option is retained for compatibility with\nolder scripts. Hook planning always inventories and disables discovered vendor\nsystem skills; use `migrate native --include-vendor` when retiring their\ndiscovery files.\n\nRestart the agent after applying the hooks. In Codex, review and grant normal\ntrust to the installed hook definitions before starting a new session. Then\nrequest a selected skill in a prompt, for example `Use $pdf-generate to create\na PDF`. The hooks supply instructions; executing the skill remains a separate\nexplicit action.\n\nFor Codex 0.153.0, 0.154.0, and 0.155.0, the normal installed Skills CLI can\nplan native trust for its three exact managed hook definitions:\n\n```bash\nskills hook trust --agent codex --json\nskills hook trust --agent codex --apply --plan-digest <reviewed-plan-digest> --json\n```\n\nReview the commands, current hashes, and existing trust/enable state in the\nplan. Apply refuses if the plan, package, declarations, or configuration changed.\nThe plan preserves the native `CODEX_HOME` choice. When unset, Codex uses\nthe lexical `~/.codex` path; an explicit `CODEX_HOME` resolves canonically.\nOnly the home root and an explicitly admitted canonical root-alias target\nare accepted. Those views have separate hook identities even when they reach\nthe same files; enrolling one preserves the other's trust entries. Keep the\nsame `CODEX_HOME` choice for enrollment and the consuming agent.\nIt enrolls the current exact definitions, including reviewed modified hooks,\nand preserves unrelated trust, settings, and comments. A private journal keeps\nthe pre-write configuration; a failed write or verification requires journal\nreconciliation before retry. Unsupported versions or configuration layouts\nrefuse without a configuration write. Enrollment uses a short-lived native\napp-server and makes hooks eligible for new Codex processes. Existing sessions\nretain their own configuration; use their native hook controls to refresh them.\n\nWhen an explicit discovery review includes the full Codex configuration file,\nthe exact native trust writes change that file's byte hash. Enrollment verifies\nthose writes and completes its journal with `bindingRefreshRequired: true`.\nThis reports native trust eligibility only: ordinary managed context remains\nblocked, and the discovery policy is unchanged. Review the current full file\nagain and plan `skills hook install --agent codex --discovery-inputs <review>\n--command <same-absolute-command> --json`. Verify that the plan changes only the\ndiscovery policy, then repeat with `--apply`. Keep the same command and native\nhome. The ordinary bridge must then pass, and a fresh `skills hook trust\n--agent codex --json` must report zero planned changes and\n`bindingRefreshRequired: false`. Verify context in a new native session after\nthese checks; an enrollment receipt does not prove context was consumed.\n\nIf an interrupted journal's policy later changed only in reviewed Claude\ndiscovery roots/sources, `skills hook trust reconcile --agent codex --journal\n<path> --review-claude-discovery <evidence-reference> --json` can preview that\nspecific recovery. Supply all five package provenance flags shown by\n`skills hook trust reconcile --help` for the current running Skills release.\nThe old absolute hook command remains bound to its original package bytes;\nrecovery reads that package as evidence without executing it. Review the full\npolicy hashes, exact discovery additions/removals, journal, current package,\nconfiguration and complete native inventory in the private preview. Repeat\nthe same command with `--recovery-plan-digest <reviewed-digest>` to record the\nreceipt. Any unreviewed change refuses. This mode preserves the policy and\nnative configuration and cannot be combined with `--supersede-binding`.\n\nIf another reviewed producer appended a user hook after the interrupted write,\nadd `--review-native-hook-additions <private-review.json>`. This is a separate\nexplicit review; a producer receipt alone never authorizes recovery. The review\nmust be an absolute, owner-only regular file with these exact fields:\n\n- `version: 1`, `kind: \"native-hook-additions\"`, a nonempty `reason`, and a\n  `producerEvidence` reference to the independently reviewed producer operation.\n- `journalIntentSha256`, `policySha256`, `configCurrentSha256`, and\n  `hooksCurrentSha256` pin the complete current inputs and immutable intent.\n- `producerBefore` contains `configPath`, `configSha256`, `hooksPath`, and\n  `hooksSha256`. These owner-only backup files must reproduce exactly the\n  completed original trust write and the original hook declarations.\n- `additions` contains one or more `{ event, nativeHook }` records. `event` is\n  `UserPromptSubmit`, `SessionStart`, or `SubagentStart`. `nativeHook` contains\n  exactly the native inventory fields `key`, `eventName`, `handlerType`,\n  `command`, `matcher`, `timeoutSec`, `async`, `statusMessage`,\n  `additionalContextLimit`, `sourcePath`, `source`, `pluginId`, `isManaged`,\n  `currentHash`, `enabled`, and `trustStatus`.\n\nOnly appended single-command groups from the same user hook file are supported:\nno matcher, asynchronous handler, custom status/context limit, plugin source,\nduplicate command, replacement or reordering. The added hooks must already be\nenabled and trusted in the actual native inventory. Every original hook and\nunrelated configuration byte remains verified. Combine this flag with\n`--review-claude-discovery` only when that independent policy transition is also\npresent. The package provenance flags, private preview, exact\n`--recovery-plan-digest`, and subsequent explicit binding refresh are still\nrequired. Reconciliation writes only its journal receipt.\n\nWhen updating the Codex binding afterward, Skills replaces its single hook\ngroup in place so neighboring hooks retain their native indexes and trust\nidentities. Ambiguous duplicate or mixed Skills groups refuse installation.\n\nEach supported agent gets one small `skills-cli` native skill containing CLI\ninstructions, without a copied catalogue. Claude's native Skill tool admits\nthat bridge after other copies are retired. Prompt guards verify the owned\nbridge bytes, required native configuration, and discovered home/project skill\npaths before loading context. A missing or changed bridge, newly discovered\ncopy, stale plugin registration, or incomplete scan reports repair guidance and\nrefuses loading. Most adapters also block the prompt; Hermes has the native\nnon-blocking prompt-hook limitation described below. These are checks on configured native discovery, not\nan operating-system restriction on arbitrary file reads.\n\nAgent policies support up to 1 MiB of serialized UTF-8 JSON, with bounded agent\nand discovery collections (2,048 sources and 512 roots per agent). Installation\nvalidates the complete resulting policy before writing configuration or backups;\nthe same limits apply when reading and guarding native context. A rejected plan\nleaves the previous policy intact.\n\nHermes 0.20.5 uses `pre_llm_call` to add selected context and `pre_tool_call`\nwith `fail_closed: true` and a small owned supervisor to guard tool calls. The\nsupervisor maps Skills child failures, timeouts and missing/invalid directives\nto the native explicit block response and exit code 2. Installation edits `config.yaml`\nwhile preserving unrelated values/comments and creates the native\n`.no-bundled-skills` opt-out marker to prevent bundled payloads from reappearing.\nThe supervisor stays in the Skills data directory and its bytes/command are\nchecked before native loading. Installation leaves the native shell-hook\nallowlist unchanged: approve the two exact\nmanaged event/command pairs through Hermes normal hook trust and restart.\nThe adapter refuses unreviewed installed plugin sources and custom Hermes\nhomes/profiles, user-specific tilde expansion, and `TERMINAL_CWD` overrides.\nNonempty `HERMES_BUNDLED_PLUGINS` and `HERMES_BUNDLED_SKILLS` overrides are\nalso refused during discovery and hook checks; unset them to use the reviewed\ndefault source paths. Custom bundle locations need a dedicated discovery adapter.\nRetire native payloads before use. Legacy `skills-cli.md` files can shadow the\nbridge and must also be preserved and retired before proceeding. Only `skill_view(name:\n\"skills-cli\")` is allowed natively; author payloads with Skills CLI commands.\nHermes itself fails open on `pre_llm_call` errors. A returned refusal is visible\ncontext, and the trusted pre-tool guard blocks drift and native skill fallback;\nthis is not a claim that Hermes can prevent every model call after a failed\nprompt hook or guarantee refusal if the native host/supervisor itself dies. Arbitrary project/plugin paths still require a discovery audit.\n\nReviewed discovery can also bind `directories: [{ path, sha256 }]` alongside\nits full source-file hashes. The public SDK's `captureDiscoveryDirectories(paths)`\ncaptures recursive, sorted path/type membership without reading plugin payloads.\nInclude every directory the reviewed loader scans, including plugin version\nselection parents and Python entrypoint discovery directories. Membership hashes\ndetect added, removed or changed file types; keep source hashes for reviewed bytes.\nMissing directories bind as `sha256: null`. Symlinks and special nodes refuse.\nThe bounds are 64 roots, 20,000 total entries, 8 MiB of path/type metadata and\n64 levels of recursion. Capture and checks require stable directory identities;\nquiesce source writers for installation because these checks are not atomic with\na later native import.\n\nFor full binary or source-byte coverage, use the public SDK's\n`captureDiscoveryByteSources(paths)` and retain its explicit `hashMode: \"bytes\"`\non each source witness. It hashes the exact file bytes, including invalid UTF-8,\nwith limits of 64 MiB per file and 256 MiB across one capture or verification.\nMissing files bind as `sha256: null`; symlinks, special files and changing file\nidentities refuse. Raw witnesses cannot use configuration field projections.\nExisting witnesses without `hashMode` retain their original UTF-8 decoding\ncontract and 16 MiB file limit; they are not silently converted into byte hashes.\nDirectory membership and file bytes are separate witnesses. Neither substitutes\nfor reviewing the actual executable, import paths or loader behavior.\n\nFor reviewed Claude user settings, `captureClaudeSettings(canonicalSettingsPath)`\nemits an opt-in `claude-settings-v1` witness. It permits a fixed set of typed\nterminal display preferences and recognized built-in model selections to change\nwhile binding hooks, permissions, native skill protections, plugins,\nmarketplaces, environment and every unknown field. Provider mappings, custom\nmodel values and instruction settings remain bound. Replace the settings source\nin an explicitly reviewed discovery input, then use the normal `skills hook install\n--discovery-inputs <file>` plan/apply flow; existing raw witnesses are never\nautomatically converted or refreshed. See [settings witness scope and migration](docs/plugin-admission.md#claude-settings-preferences).\n\nFor an explicitly reviewed launcher or interpreter reached through symlinks,\nuse `captureDiscoveryPathSources(paths)` and retain `hashMode: \"path-bytes\"`.\nIts digest binds the canonical input, directory identities, each link's identity\nand target, and the resolved regular file's identity and exact bytes. Relative\nlink targets resolve component by component, including `..` after an alias.\nMissing targets also receive a digest that binds the path leading to their\nabsence. Retargeting to identical bytes, replacing a link or an ancestor, or\nchanging a file's metadata requires a fresh review. Unrelated sibling writes\ndo not change directory identity witnesses.\n\nPath witnesses share the 64 MiB file and 256 MiB aggregate byte limits. Each\npath allows at most 40 links, 256 traversal steps and 64 KiB of metadata; one\ncapture or verification permits 8 MiB of path metadata. Special nodes, cycles,\noversized inputs and changes during capture refuse. Native hook checks repeat\nthe witness verification; this does not make a later native execution atomic\nwith external writers. Keep source writers quiescent during activation.\nUse `bytes` mode for configuration that hook installation will replace: path\nwitnesses cannot predict the future identity of a planned write. Existing raw\nbyte and directory witnesses still refuse links. Older clients reject the new\nmode; upgrade the CLI before installing a policy that uses it.\n\nHermes requires directory witnesses, including when upgrading an older policy.\nFor an automatic bridge with no runtime installed, rerun normal `skills hook install`\nto review and apply the new bindings. Existing native trust is preserved.\nReviewed Hermes installations need fresh source and directory coverage in their\n`--discovery-inputs` file. Other agents may add directory witnesses to their\nreviewed bindings without changing existing source-only reviews.\n\nHook installation preserves unrelated configuration, hooks, and plugin assets.\nFor Codex it sets `skills.bundled.enabled = false` in user configuration, preserving\nthe `skills-cli` bridge and disabling discovered native skill paths. This prevents\nsupported Codex clients from installing or loading their bundled `.system` skills.\nThe setting and its discovery witness are enrolled in the same configuration\ntransaction; existing installations must rerun `skills hook install`. Missing or\nre-enabled bundled protection fails `skills hook check` before context loads.\nOrdinary `[skills.bundled]` and legacy `[[skills.config]]` tables are supported;\ninline or dotted target definitions that require rewriting refuse before changes.\nConvert those definitions to ordinary tables while preserving their values, then\nrerun installation. The control has been verified with Codex 0.153.0, 0.153.4 and\n0.154.0; this is not a claim that every older build supports it. Use a client that\nsupports `skills.bundled.enabled`; Skills does not infer support from version text\nor silently substitute path-only protection. Existing exact system-skill trees can\nremain only with their hash-bound disabled paths; migration preserves these package\nfiles. A client that restores or changes packaged skills requires a fresh inventory\nand disable plan. Native exports are\nrefused while managed CLI loading is active. Migration preserves ordinary skill\ndirectories in private archives; `--include-unmanaged` includes user-authored\ncopies, and `--include-vendor` retires vendor `SKILL.md` discovery files while\npreserving shared scripts and assets. Archive receipts and configuration backups\nlive under the Skills data directory.\n\nAfter vendor documents are archived, inventory still scans their retained asset\ndirectories for newly introduced skills. Vendor container traversal allows 32\ndirectory levels; the ordinary native-root limit remains unchanged. Each inventory\nis bounded to 20,000 discovery entries and 4 MiB of UTF-8 path metadata before\ndirectory entries are retained or sorted. Unsupported special files and unsafe\ndirectory links are refused.\n\nNative archives persist a version 2 recovery journal before moving payloads;\n`migrate native --json --apply` returns its `receiptPath`. The journal records\nevery source, archive path, expected hash, and move status, then marks successful\ncompletion. Interrupted operations can be inspected against that durable intent.\nOn failure, recovery restores verified archives only when the original path is\nstill absent. It preserves occupied paths or unverified archives, records that\nthey require recovery, and continues compensating other unchanged entries.\nKeep native agents and other skill writers stopped throughout migration and\nrecovery: portable directory rename cannot atomically reserve an absent target.\nVendor file restoration uses an exclusive hard link to preserve concurrent files.\nDo not retry an interrupted operation until its journal and both paths have been\nreconciled; a failed final journal write may leave the earlier durable intent.\n\nFor a reviewed migration that must retire one exact native copy, pass\n`--target-manifest <file>`. The JSON manifest uses schema\n`hasna.skills-native-migration-targets.v1` and binds each target to an agent,\nan existing absolute `projectRoot`, a normalized project-relative `path`, and\nthe complete directory `treeSha256`. Exact-target mode refuses broad selector\nflags, protected or vendor entries, missing or ambiguous paths, symlinks,\ndigest drift, and writes a manifest digest into the recovery journal. Every\ninventory entry outside the manifest remains untouched.\n\n`skills hook agents --json` reports the supported adapters and coverage limits.\nClaude and Codex have lifecycle context hooks; Gemini uses `BeforeAgent`, and\nOpenCode uses its awaited message plugin. Cursor receives selected context at\nsession start and gates later prompt submission; its prompt hook does not\ninject context on the supported installed path. Other inventoried clients do\nnot automatically gain a working prompt adapter.\n\nGemini's `BeforeAgent` prompt can include the Skills policy emitted at session\nstart. The hook excludes that exact leading policy from skill selection, so it\ndoes not displace the user's requested skill. Other hook context and user text\nremain part of the selection input.\n\nKnown local plugin registrations are resolved automatically. Plugins with\ninstruction-injecting hooks, unresolved runtime registrations, unsupported\nlegacy command formats, and higher-precedence project discovery settings need\nseparate review; a cache-only scan does not establish complete coverage. The\nadvanced `--discovery-inputs <file>` option on hook installation and migration\naccepts reviewed active roots and full source-file SHA-256 witnesses. Its\nversion-1 document has an `agents` array; each entry names `agent`, absolute\n`roots`, `sources` (`path` and `sha256`, or `null` for an absent file), and\n`pluginHooks: \"reviewed-no-skill-injection\"`. Include the agent configuration\nand every input establishing the active roots and plugin-hook behavior. A\nchanged witness requires a new review. This option does not add support for an\nunknown native file format or make unreviewed plugin behavior safe. Managed\nsystem configuration, process-specific overrides, and alternate agent home\ndirectories are outside automatic coverage and require their own integration\nreview before declaring a station migrated.\n\nWhen `hook install` omits `--discovery-inputs`, it reuses an existing reviewed\nbinding only after rechecking its sources, directory membership, configuration\ncoverage, managed bridge and native trust. Unchanged reviews need no new input\nfile; drift still requires a fresh explicit review. Explicit discovery inputs\ntake precedence, including when their `agents` array omits a previously reviewed\nagent. The default `--agent all` still includes every supported adapter.\n\nFor reviewed Claude plugins, `skills integration plugin plan`, `admit` and\n`resolve` provide a command-source admission boundary before native discovery.\nOriginal packages and migrated skill/command prompts remain in private versioned\nSkills storage. Native projections retain ordinary components, and a typed\nreceipt permits only verified registry/cache transitions. See\n[plugin admission](docs/plugin-admission.md) for the package, review and runtime\ncontracts; these commands do not change live agent registrations or settings.\n\nIf your home `.claude` or `.codex` directory intentionally links to another\ndirectory within your home, add `--allow-root-aliases` to hook installation and\nnative migration. The plan records and rechecks the exact link and target;\nlinks inside skill contents or configuration files remain refused.\n\nCooperating installers can use the root package's\n`planClaudeStopHookUpdate({ expectedSettingsSha256, replacement })`, then\n`applyAgentIntegration(plan)`, to write an explicitly authorized Claude settings\nreplacement changing only `hooks.Stop`, together with every existing discovery\nwitness for that file. Every other field and hook must retain the same value;\nthis includes discovery configuration and display/model preferences.\nThe caller must authorize its own exact change; this API does not grant approval\nto change another owner's hooks. It checks the current native bridge, inventory,\npolicy, executable witnesses and root aliases, preserves each witness mode, and\nverifies the consumer guard after applying. A concurrent edit or pre-existing\ndrift refuses renewal. Failed post-write checks compensate only unchanged writes,\nretaining private backups. A `null` plan means no Skills policy exists; malformed\nor untrusted policy throws instead. This local integration operation requires no\nhosted credential, does not reload an existing agent, and cannot adopt a stale\npolicy after another installer has already changed settings.\nSettings and policy are separate files: this is a guarded sequence with\ncompensation, not a cross-file atomic commit. A concurrent hook can fail closed\nduring installation. A successful update does not reload an existing session.\n\nAt session start, the hook authenticates and refreshes the profile. Prompt hooks\nselect complete skill instructions from that verified cache using explicit\n`$skill` references, profile keywords, paths and always-required selections.\nA session retains its loaded selections; compaction restores loaded instructions,\nand subagents inherit the parent's selection. Instructions that exceed the\ncontext budget produce an explicit `skills load` command. A hook never executes\na skill. Cached use is explicit and expires after 24 hours. When a session\nreceipt expires, the hook authenticates the current profile. If every loaded\nselection still has identical metadata and bundle digest, it archives the old\nreceipt and advances that session to the current profile under an exact receipt\nprecondition. Unloaded selections may be added or removed. If a loaded selection\nchanged or disappeared, the hook blocks and requires the explicit reconciliation\nbelow. A missing cache may be recovered through authenticated context.\nAuthentication, integrity and native discovery failures still block; they do\nnot silently switch to a local catalog.\n\nAn intentional change to a loaded selection or profile identity for an already\nrunning session uses a separate reviewed operation. `sync` and hook\nreinstallation do not migrate session pins:\n\n```bash\nskills sessions show <session-id> --json\nskills sessions reconcile <session-id> \\\n  --from-profile <old-profile> --from-revision <old-revision> \\\n  --receipt-sha256 <receipt-sha256> \\\n  --selection-profile <target-profile> --profile-revision <target-revision> --json\n# Within five minutes, repeat with --apply --plan-digest <digest> \\\n#   --plan-issued-at <issuedAt> --plan-expires-at <expiresAt>.\n```\n\nReconciliation authenticates against the current target profile and refuses a\nchanged target revision, authority, workspace, old receipt or plan. It archives\nthe original bytes and prepared replacement under\n`selection-cache/session-reconciliations`, then replaces only the named session\nreceipt atomically. Loaded instructions are retained only when their exact\nauthority, workspace, version and bundle digest still match. Existing child\nsessions and project locks keep their own pins; new children inherit the newly\nreviewed parent selection. Each new child receipt privately records the exact\nparent receipt hash and monotonic generation it inherited. Parent and child locks\nare acquired in deterministic path order, and the parent is re-read immediately\nbefore the child commit; any changed or ABA generation refuses the child write.\nNo agent process is stopped or restarted.\n\nSession write locks created by current releases include the host, boot and\nprocess start identity (plus the Linux PID namespace). After 30 seconds, a\nlater writer can archive one only when that identity proves the writer is gone\non this same host. The exact lock bytes and a metadata record remain under\n`selection-cache/session-lock-recoveries`; the session receipt is not changed\nby recovery. A live, recent, malformed or different-host lock still blocks the\nwrite. A recovery guard serializes competing recoverers.\n\nOlder PID-only locks require a local review because they do not identify their\nhost. On the host that created the lock, inspect the receipt and lock, verify\nthe recorded PID belongs to no live writer, then apply the exact reviewed lock:\n\n```bash\nskills sessions recover-lock <session-id> --json\nskills sessions recover-lock <session-id> --apply \\\n  --review-digest <review-digest> --confirm-local-host --json\n```\n\nThe second command rechecks the lock, receipt, age and PID before archiving.\nKeep the archive path returned by the command. If the review changes or the\nwriter cannot be proven gone, leave the lock in place; do not remove the\nsession receipt or stop a running agent. A surviving recovery guard also\nrequires separate review before another recovery attempt.\n\nUse the same updated Skills installation for every process writing this cache.\nSession writers coordinate with reconciliation and refuse a stale write that\nwould restore an earlier pin. Reviewed reconciliation approvals bind their\n`issuedAt` and `expiresAt` into the digest and expire after five minutes; after\nthat replay boundary, prepare and review a new plan. A competing writer or surviving lock fails closed;\ndo not delete a lock without reviewing its owning operation. If application\nreports an incomplete outcome, inspect `sessions show` and the preserved\noperation receipt before retrying. The archive contains both original and\nprepared bytes even if the final receipt write fails.\n\n## Profiles, station sync and rollback\n\n```bash\n# A writer creates a profile from a JSON selection document.\nskills profiles set default --file selections.json --json\nskills profiles show default --save profile-before.json --json\n\n# Update only the revision you reviewed. Restoring a saved document rolls back\n# the selection while producing a new profile revision.\nskills profiles set default --file profile-next.json --if-match REVISION --json\nskills profiles set default --file profile-before.json --if-match NEW_REVISION --json\n\n# Use the same profile on another station; record exact project selections.\nskills sync --selection-profile default --station station-example --json\nskills sync --selection-profile default --project --json\nskills sync --selection-profile default --check --json\nskills station-state station-example --json\n```\n\nWith `--selection-profile`, `sync --check` checks the selected profile and cache\nwithout writing, and exits nonzero on drift. `sync --station` records a receipt\nfor the named station; it is not a native-folder snapshot in this mode.\n`skills install --selection-profile default` without skill names also syncs the\nwhole selection.\n\nAfter hook installation has enabled CLI loading, pull operations obey the same\nprofile. `--all` refreshes its selected versions rather than the full catalog,\nand a named pull must belong to that profile:\n\n```bash\nskills pull --all --selection-profile default --json\nskills pull pdf-generate@0.5.2 --selection-profile default --json\n```\n\nUse `sync --selection-profile default --station station-example` when you also\nneed a station receipt. Native-folder migration options belong to the older\nsync mode and cannot be mixed with profile sync.\n\nSelection documents contain a `selections` array. Each entry has `slug`,\n`version`, `bundleDigest` (`sha256:` followed by 64 lowercase hex characters),\nand optional `triggers` containing `keywords`, `paths`, or `always`. An optional\n`aliases` array gives a selection up to 32 reviewed kebab-case alternate names.\nAliases cannot duplicate another alias or any canonical name in the profile.\nThey resolve directly to that selection's exact version and digest in `load`,\nmanaged `run`/`pull`, and explicit prompt references such as `$old-name`.\nReceipts and bundle requests retain the canonical name. Aliases are scoped to\nthe authority, workspace and profile revision; project/session locks preserve\ntheir pinned aliases. They do not create global registry entries or native\nredirect skills. Saving aliases requires an API advertising `selectionAliases`.\nProfiles support up to 4,096 exact selections. API responses and local profile,\nproject and session documents share an 8 MiB UTF-8 JSON limit. Resolved profiles\nreserve space within that limit for all session-loaded keys; the API refuses an\noversized candidate before replacing the existing profile. Saved snapshots and\nowned cache receipts use compact JSON; existing formatted receipts remain readable.\nThe authenticated capabilities response advertises `profileLimits`, including\n`maxSelections`, `maxDocumentBytes`, `maxResolvedProfileBytes` and the effective\n`requestBodyLimitBytes`. Larger writes require these advertised limits. Operators\ncan set `HASNA_SKILLS_REQUEST_BODY_LIMIT_BYTES=8388608` to admit larger requests;\nthe default remains 1,000,000 bytes and a lower configured limit still applies.\nThese limits apply to configured memory, SQLite and PostgreSQL stores;\nprofile sync does not require S3 or native skill copies.\nProfile\nwrites use compare-and-swap revisions. Station receipts belong to the workspace,\nuser and stable station ID, so rotating a key does not create a new station.\nConsumers need `skills:read` and `stations:write`; profile publishers need\n`skills:write`. Key scopes apply even to workspace owners.\n\n`skills auth whoami --json` reports the current credential's effective\n`permissions.publish` and `permissions.profilesWrite`, alongside its account\nrole and advertised scopes. Human output labels each permission `allowed`,\n`denied`, or `unknown`; JSON uses `null` for unknown access. An owner role alone\ndoes not grant either permission. `skills capabilities --json` and the SDK's\n`getCapabilities()` also retain the server's typed permission and scope fields.\n\nBefore sending a bundle, `push` and `RemoteSkillsClient.publishSkill()` read\nfresh capabilities and stop on an explicit publication denial. `profiles set`\nsimilarly stops before a profile write. The refusal reports\n`SKILLS_PERMISSION_DENIED` with the affected permission and guidance to obtain\nan authorized credential; it never changes credentials or their scopes.\nServers that omit permissions (or predate the capabilities route) retain their\nexisting server-authorized write behavior, with access displayed as unknown.\nAuthentication failures and malformed permission responses do not bypass the\npreflight. `push --dry-run` remains a local packing check and does not check\nhosted publication access.\n\n`--selection-profile` chooses the shared skill selection. The top-level\n`--profile` option chooses an isolated credential file; these are separate\nsettings. `HASNA_SKILLS_SELECTION_PROFILE` overrides the installed selection\nprofile. A project lock and an existing session keep exact versions until they\nare explicitly changed or a new session starts.\n\n## Executable skills\n\nSelected local executables declaring `runtime.env` use shared execution grants\nby default. An owner or admin reviews a policy containing exact skill versions\nand bundle digests, actor IDs, station IDs, canonical workspace directories, a\nSecrets authority and vault reference names. Actual secret values stay in Secrets.\nPolicy documents are private workspace data stored by the Skills service, with\nimmutable revision history in SQLite or PostgreSQL; S3 is optional.\n\nFor example, keep this policy input in private configuration outside the repository\nand skill bundles, replacing the example identifiers and digest with reviewed values:\n\n```json\n{\n  \"grants\": [{\n    \"id\": \"provider-access\",\n    \"target\": \"local\",\n    \"selection\": {\n      \"slug\": \"your-skill\",\n      \"version\": \"1.0.0\",\n      \"bundleDigest\": \"sha256:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\"\n    },\n    \"actors\": [\"user-example\"],\n    \"consumers\": [{\"stationId\": \"workstation\", \"workspaceDirectory\": \"/workspace/project\"}],\n    \"secretsAuthority\": \"https://vault.example.com/v1\",\n    \"bindings\": {\"PROVIDER_TOKEN\": \"my/provider/key\"}\n  }]\n}\n```\n\n```bash\nskills grants set default --file ./policy.json --json\nskills grants show default --json --save ./policy-snapshot.json\nskills run --target local --selection-profile default \\\n  --input '{\"requested\":\"work\"}' --json your-skill@1.0.0\n# Updates and revocation require the current policy revision, not the profile revision:\nskills grants set default --file ./reviewed-policy.json --if-match <policy-revision>\nskills grants show default --revision <prior-policy-revision> --json\n```\n\nFor executable arguments, use `--` after the skill and Skills options:\n\n```bash\nskills run --target local --selection-profile default --json \\\n  your-skill@1.0.0 -- prepare --input child-input.json --json\n```\n\nEverything after that separator belongs to the executable, including flags such\nas `--input`, `--json` and any further `--`. Cloud execution accepts structured\nSkills `--input` only and rejects executable arguments. Existing calls without a\nseparator retain their option parsing behavior.\n\nUpdating a policy appends a revision and atomically changes its current pointer.\nAn empty `grants` array revokes shared execution access. Historical policies remain\nreadable and can be submitted as a new reviewed revision for rollback; they cannot\nauthorize an execution directly. Unrelated selection-profile edits do not require\nrewriting the policy. A changed executable version or digest needs a new grant.\n\nEach run resolves current authorization through the Skills API before reading\nSecrets. Missing, expired, ambiguous or revoked grants, changed selections and API\nfailures stop execution without using a cached grant. Optional `expiresAt` is an\nISO timestamp; `includeDescendants: true` permits canonical directories beneath a\nconsumer's workspace root. Station and path conditions describe client context;\nthey are not cryptographic machine attestation. Revocation applies to subsequent\nauthorization requests, not already running processes.\n\nGrant writers need an owner/admin role and `execution-grants:write` (or\n`execution-grants:*`/`*`); `skills:*` alone cannot grant access. Policy and history\nreads need `execution-grants:read`. Execution resolution accepts `skills:read` or\n`execution-grants:resolve`. Each client still needs independent Secrets access\nto the reviewed references. Managed MCP `run_skill` and SDK `executeSelectedLocal`\nuse the same fresh authorization path. `--cached` cannot consume shared grants.\n\nExplicit local binding files remain available for callers that manage their own\nauthorization. These caller-supplied grants are independent of shared-policy\nrevocation. Prepare a template using the configured Skills and Secrets clients:\n\n```bash\nskills run --target local --selection-profile default \\\n  --secret-bindings-template --json your-skill@1.0.0 > bindings.json\n# Fill each empty entry in bindings with its reviewed vault key, never its value.\nskills run --target local --selection-profile default \\\n  --secret-bindings ./bindings.json --input '{\"requested\":\"work\"}' \\\n  --json your-skill@1.0.0\n```\n\nThe template contains no credential values and does not execute the skill or\nread the declared secrets. Keep the reviewed file in your private configuration,\noutside the skill bundle and agent discovery directories. It uses\n`hasna.skills-secret-bindings.v1` and binds the exact Skills authority, workspace,\nprofile ID and revision, canonical skill name, version and bundle digest, plus\nthe current station ID (`HASNA_STATION`, otherwise the hostname), canonical\nworking directory and independently configured Secrets `/v1` authority. Its\n`bindings` object maps each declared environment name to one vault key. Changing\nany bound field requires reviewing a fresh template. These are explicit local\nexecution grants; selection sync does not distribute or implicitly approve them.\n\nThe CLI validates the complete binding before fetching values through\n`@hasna/secrets`. It resolves current values for each run, checks returned keys\nand expiry, and injects only the declared variables into the child process.\nMissing, extra, stale or mismatched bindings refuse execution; a failing vault\nread never falls back to an ambient value or a local vault. Wrapping `skills run`\nin `secrets exec` alone does not bind a declared variable. Runtime controls such\nas `PATH`, `NODE_OPTIONS` and `SKILLS_INPUT_JSON` cannot be credential names.\nBindings require an explicit local target and a fresh API selection; they cannot\nbe used with cached, cloud or legacy remote execution. No S3 deployment is required.\n\nRun receipts retain references and scope, never resolved values or captured\noutput. Returned child output redacts literal, JSON-escaped, base64 and URL-encoded\nforms of injected values. This limits accidental disclosure; local execution\nhas the calling user's filesystem and network access and is not a sandbox for\nhostile code. Review the exact executable and grant only the credentials its\neffects require. Cloud admission and cloud credential delivery remain separate.\nSDK callers use `resolveSelectedRun`, `prepareSelectedSecretBindings` and\n`executeSelectedLocal(selected, { secretBindings })` through `@hasna/skills/sdk`.\nThe same SDK exports `readExecutionGrantPolicy`, `saveExecutionGrantPolicy` and\n`resolveExecutionGrant`. The HTTP contract is GET/PUT\n`/v1/execution-grants/:profile`, GET\n`/v1/execution-grants/:profile/versions/:revision`, and POST\n`/v1/execution-grants/:profile/resolve`. Writes use `If-None-Match: *` to create or\nthe quoted policy revision in `If-Match` to update. The API advertises\n`executionGrants: true` and grant permissions in `/v1/capabilities` when supported.\nUpgrade the API and apply its database migrations before enabling shared grants.\n\n```bash\nskills capabilities --json\nskills run --target cloud --selection-profile default \\\n  --input '{\"title\":\"Example\",\"content\":\"Hello\"}' \\\n  --idempotency-key YOUR_UNIQUE_JOB_KEY --wait --json pdf-generate@0.5.2\nskills executions show RUN_ID --json\nskills executions logs RUN_ID --json\nskills executions artifacts RUN_ID --json\nskills executions download RUN_ID document.pdf --output ./document.pdf\n```\n\nUse a new idempotency key for each new job and retain it with the exact input.\nIf a response is lost or polling times out, reconcile the existing execution\nbefore submitting again. The selected profile must include this exact version,\nand the consumer needs `runs:write` as well as `skills:read`.\n\nCloud execution is enabled only when the deployment configures a reviewed image\nand exact bundle allowlist; arbitrary\nuploaded code is not admitted. The PDF lane accepts reviewed `pdf-generate` versions.\nThe optional `regex-test.v1` pure contract accepts only a tenant-specific, reviewed\nself-contained Bun bundle, with no secrets, dependencies or network. Uploading or\nselecting a bundle never admits it to cloud execution. Check an exact version with\n`skills executions eligibility <skill> --skill-version <version> --json`; this\nreads metadata without creating a run. Runs capture version, bundle digest, input digest,\nruntime image digest, limits and policy. The cloud worker runs in a separate\nFargate task; the skill process has no API/provider credentials, no network, a\nread-only root and bounded temporary storage, execution time and output.\n`GET /skills/v1/capabilities` reports whether this deployment has cloud execution\nconfigured and lists supported `cloudExecutionContracts`. Each exact bundle needs\nits own review and admission; the flag does not promise arbitrary executable\nsupport. Authorization and runtime availability are checked separately.\n\nOn a managed station, local execution also resolves the selected immutable\nbundle. Self-contained local executables run with explicit environment references\nand bounded time/output; declarations requiring isolation or dependency\npreparation are refused with cloud guidance. Local execution has the station\nuser's filesystem privileges. Instruction skills use `skills load`.\n\nBrowser/device-code login remains available for compatible custom deployments.\nThe fleet gateway uses provisioned API keys. `HASNA_SKILLS_API_KEY` is a Skills\nAPI credential, not a provider key. Provider keys such as `OPENAI_API_KEY`\nare supplied only to local skills that explicitly declare them.\n\n## Credentials\n\nThe credential and the service address are resolved by the shared client in\n[`@hasna/contracts`](https://www.npmjs.com/package/@hasna/contracts), the same\nladder every Hasna CLI uses. Nothing here is resolved twice, and this package\nkeeps no credential store of its own.\n\n**The credential, in precedence order, resolved fresh on every call:**\n\n| # | Tier | Where |\n|---|------|-------|\n| 1 | Explicit argument | `--api-key`, `--profile` |\n| 2 | Deliberate env pointer | `HASNA_SKILLS_API_KEY_OVERRIDE`, `HASNA_PROFILE`, `HASNA_SKILLS_API_KEY_REF` (a secrets-vault item key, never a value) |\n| 3 | macOS Keychain | generic-password item `hasna.credentials.skills.api-key`, account `$HASNA_STATION`, else `hostname -s`, else `$USER` |\n| 4 | Disk | `~/.hasna/skills/config/credentials` (mode 0400/0600; `HASNA_HOME` and `HASNA_CONFIG_HOME` relocate it; XDG is never consulted) |\n| 5 | Environment | `HASNA_SKILLS_API_KEY` — a legitimate tier, and deliberately *below* disk |\n\nTier 5 sits below disk on purpose. A wrapper that injects `HASNA_SKILLS_API_KEY`\ninto one child process re-reads its store every time and cannot go stale; a shell\n`export` can, and after a key rotation the file on disk is the correct one.\n\n`skills login` (also `skills auth login`) writes tier 4. A tier an operator set on purpose (1 and 2)\nnever falls through to another identity: if it cannot be honoured, the command\nfails rather than acting as a different principal.\n\n`HASNA_SKILLS_API_KEY_REF` names a *vault item*, not a key, so it resolves in two\nsteps: the item is fetched through the `@hasna/secrets` SDK on each call, which\nmeans a rotated item is picked up without a restart — and which means the SDK has\nto be installed in the process. Every way that fetch can fail (SDK absent, vault\nunreachable, item missing or empty) is terminal and exits non-zero; a pointer\nnever falls through to another tier, and never to the local corpus.\n\nFor a durable reference without a raw Skills key, the same\n`HASNA_SKILLS_API_KEY_REF` field can be stored in the owner-only canonical or\nselected-profile credentials file, alongside its `HASNA_SKILLS_API_URL` and\n`HASNA_SKILLS_BOUND_API_URL`. Do not keep a literal API key in that file too.\nThe file retains its existing priority, and the reference remains bound to its\nrecorded Skills instance. Secrets needs its own working bootstrap provider;\nthis setup does not unlock a Keychain or copy a Secrets bootstrap credential.\nIf the file changes during a vault lookup, the request is refused.\n\nAn explicit `skills login` replaces a stored reference with the newly\nauthenticated key. `skills logout` does not remove a stored reference: it\ndid not come from `skills login`, so logout leaves it in place, names the file\nand exits non-zero. Remove the reference from the file to sign that profile\nout; the vault item and Secrets' credential are never touched. Changing the\nservice URL preserves the reference's previous instance binding.\n\n**The service address, in the same shape:**\n\n`HASNA_SKILLS_API_URL` → the Keychain item `hasna.credentials.skills.api-url` →\n`~/.hasna/skills/config/credentials` → the fleet gateway\n`https://api.hasna.com/skills`. The gateway default applies only once a\ncredential has resolved, so a data command from an install with no credential\nnames no host at all. Signing in is the one exception: with no URL and no\ncredential anywhere, `skills login` signs in to https://skills.md and records\nthat URL beside the new key. A credential that already resolves keeps its own\nserver, for data and for signing in. A URL that `skills login` wrote is removed\nagain by `skills logout` together with the key; a URL you configured with\n`skills setup --api-url <origin>` stays. That command writes the credentials\nfile; the address is per-user, never per-project.\n\n**Which credential may go to which server.** A stored credential goes only to\nthe server it was stored for: the credentials-file or profile key to its\nrecorded server (the internal gateway when it recorded none), the Keychain key\nto the Keychain `api-url` beside it (else the gateway). A credential that\nrecords no server of its own (`HASNA_SKILLS_API_KEY`,\n`HASNA_SKILLS_API_KEY_OVERRIDE`, an environment `HASNA_SKILLS_API_KEY_REF`, or\nan explicit argument) goes only to the internal gateway or to a URL from the\nenvironment (`HASNA_SKILLS_API_URL`), never to a URL from the credentials file\nor the Keychain. Any other combination is refused before anything is sent. Set\n`HASNA_SKILLS_API_URL` alongside such a credential for your own server.\n\nThe internal gateway resource contract is `/skills/v1/...`; commercial and custom\ninstances retain their `/api/v1/...` routes. A full gateway `/skills/v1` base is\naccepted and normalizes to the same credential-bound instance. Select a\ncustomer-owned instance explicitly with `HASNA_SKILLS_API_URL=https://skills.example` and\nits own profile/credential; configuring one instance does not select the other.\nThe OSS server accepts `/v1/...` aliases through the same handlers as its\n`/api/v1/...` routes, plus `/v1/auth/whoami` for existing API-key identity and\n`/v1/health` for liveness. Profile and runtime availability can be checked on the authenticated capabilities endpoint. Login and\ndevice authorization still use `/api/auth/...` on standalone instances; the\ninternal gateway has no interactive login service, so these operations stop\nbefore transmitting account input or credentials. This is an explicit readiness gap, not support for\nlogging into the internal service through the commercial account.\n\nThe unprefixed `SKILLS_API_KEY` and `SKILLS_API_URL` spellings are still accepted\nas silent aliases one rung below the canonical names, for one release. Use the\n`HASNA_`-prefixed names. `SKILL_API_KEY` (singular) is no longer read at all.\n\n**Fail closed, and the local run is a deliberate choice:**\n\n- a credential resolves → **hosted**, against the configured URL or the gateway.\n  A credential that resolves but cannot produce a usable key — a deliberate\n  selection that cannot be honoured, a vault pointer whose item is missing, any\n  tier that yields a blank value — is a **loud failure** too, never a demotion;\n- no credential but a URL is configured → **loud failure**, exit non-zero. There\n  is no local fallback: answering from the bundled corpus while authentication is\n  unconfigured is a false green;\n- neither a credential nor a URL, and no opt-in → **loud failure**, exit\n  non-zero. Running on this machine is no longer the silence that follows a\n  missing credential: an unconfigured install fails closed, opening no local\n  database and emitting no local-fallback event, and the error names the way\n  out and where the credential should live. This holds on every data surface:\n  `list`, `search`, `categories`, `tags`, `info`, `show`, `docs`, `requires`\n  and the bare `skills` listing all exit 1; `skills-mcp` exits 1 at startup\n  before answering `initialize` or binding a port, and each MCP data tool\n  answers `AUTH_REQUIRED` on its own;\n- the explicit local opt-in → **local**, using only owned drafts and the verified\n  local cache. An empty installation has no skills. Opt in with:\n  `HASNA_SKILLS_LOCAL=1` (alias `SKILLS_LOCAL=1`). It prints one line saying\n  \"local mode\" on stderr. A configured environment always outranks the opt-in:\n  with an authority or credential in the environment, `HASNA_SKILLS_LOCAL` is\n  ignored and the run goes (or fails) hosted.\n\nThe retired locations are not read: `auth.json` (in either the app directory or\nthe legacy `~/.skills/`), the old fleet-env and per-machine cloud env folders\nunder `~/.hasna`, and the XDG config directory. `~/.hasna` is a closed namespace\nof app folders, and `XDG_CONFIG_HOME` is not consulted at all.\n\n### Routing environment variables\n\n| Variable | Meaning |\n|---|---|\n| `HASNA_SKILLS_API_KEY` | The API key (tier 5 of the ladder). The silent alias `SKILLS_API_KEY` is accepted for one release. |\n| `HASNA_SKILLS_API_URL` | The Skills API origin (HTTPS, or loopback HTTP). The silent alias `SKILLS_API_URL` is accepted for one release. |\n| `HASNA_SKILLS_LOCAL` | Explicit unhosted opt-in: run on this machine against owned drafts and the verified cache when no authority is configured. Any non-blank value (`1`). Alias `SKILLS_LOCAL`. Ignored whenever an authority or credential variable IS set. |\n| `HASNA_SKILLS_API_KEY_OVERRIDE` | Deliberate tier-2 key that outranks every store. |\n| `HASNA_SKILLS_API_KEY_REF` | Deliberate tier-2 vault-item pointer (resolved through `@hasna/secrets`). |\n| `HASNA_PROFILE` | Selects an isolated `credentials-<profile>` file (tier 1). |\n| `HASNA_STATION` | The Keychain account for tier 3; falls back to `hostname -s`, then `$USER`. |\n\n## CLI Commands\n\n| Command | Alias | Description |\n|---------|-------|-------------|\n| `skills` | | Interactive TUI to browse, search, and pin skills |\n| `skills pin <name>` | | Pin one or more skills in `.skills/project.json`; no source is copied |\n| `skills pin --category \"Development Tools\"` | | Pin all skills in a category |\n| `skills unpin <name>` | | Remove a project pin |\n| `skills pins list` | | List pinned skills |\n| `skills setup --api-url <url>` | | Point the CLI at a Skills API origin for remote runs |\n| `skills setup` | | Show whether an API origin is configured; with none, running on this machine requires `HASNA_SKILLS_LOCAL=1` |\n| `skills setup agents` | | Register the Skills MCP server with all supported agents |\n| `skills list` | `ls` | List available skills (filter with `-c`, `--pinned`, `-t`, `--brief`) |\n| `skills search <query>` | `s` | Search by name, description, or tags |\n| `skills info <name>` | | Show metadata, env vars, and system dependencies |\n| `skills show <name>` | | Show account or owned portable skill details |\n| `skills docs <name>` | `--file skill\\|readme\\|claude` | Show preferred documentation; an explicit file must exist and unknown aliases fail |\n| `skills requires <name>` | | Show env vars, system deps, and npm dependencies |\n| `skills profiles show <id>` / `skills profiles set <id> --file <json>` | | Read an exact shared selection or update it with writer authorization |\n| `skills install [name@version] --selection-profile <id>` | | Cache selected immutable bundles; without names, sync the profile |\n| `skills load <name> --selection-profile <id>` | | Load complete instructions from the verified selection |\n| `skills context <prompt> --selection-profile <id>` | | Resolve instructions matching the prompt and profile triggers |\n| `skills hook install --agent all --selection-profile <id>` | | Plan one CLI bridge plus supported native hooks; `--apply` installs it, then restart and trust the hooks |\n| `skills sessions show <id> --json` | | Inspect one session's exact profile revision and receipt hash without loading payloads |\n| `skills sessions reconcile <id> --from-profile <id> --from-revision <rev> --receipt-sha256 <sha> --selection-profile <id> --profile-revision <rev>` | | Plan an explicit migration of one live session; `--apply --plan-digest <digest> --plan-issued-at <time> --plan-expires-at <time>` (within five minutes) preserves its old receipt and applies the reviewed replacement |\n| `skills hook agents --json` | | Report maintained adapters and explicit coverage limits |\n| `skills migrate native` | | Inventory native copies; `--apply` archives managed copies, with explicit `--include-unmanaged`, `--include-vendor`, or reviewed `--target-manifest` selection |\n| `skills pull --all --selection-profile <id>` | | With CLI loading active, refresh the selected profile into the verified cache |\n| `skills sync --selection-profile <id> [--check] [--station <id>]` | | Sync or check the selected profile/cache; optionally record station state |\n| `skills station-state <id>` | | Read a station's sync receipt in the authenticated workspace |\n| `skills run <name> [args]` | | Execute a skill directly |\n| `skills run --target cloud --selection-profile <id> <name@version>` | | Submit an explicitly selected cloud execution |\n| `skills executions show <id>` / `logs <id>` / `artifacts <id>` | | Inspect a cloud execution and its output |\n| `skills executions download <id> <artifact> --output <path>` | | Download and verify one cloud execution artifact |\n| `skills runs status <run-id>` | | Poll a remote skill run |\n| `skills exports download <run-id>` | | Download completed remote artifacts |\n| `skills update` | | Refresh project pin metadata |\n| `skills diff <name>` | | Compare pin metadata against the active registry |\n| `skills init` | | Generate `.env.example` and update `.gitignore` for pinned skills |\n| `skills categories` | | List all categories with skill counts |\n| `skills tags` | | List all unique tags with occurrence counts |\n| `skills doctor` | | Check env vars, system deps, and pinned skill health |\n| `skills env-check [name]` | `check-env` | Show required environment variables; `--set KEY=VALUE` updates the project's `.env` |\n| `skills test [name]` | | Test skill readiness (env, system, npm deps) |\n| `skills outdated` | | Compare pinned vs registry versions |\n| `skills login` | | Sign in in the browser (https://skills.md unless a server is configured); `--device`, `--email`, `--api-key` (stdin) and `--url <origin>` select other flows and servers |\n| `skills logout` | | Sign out the active profile: delete the key `skills login` stored and revoke it on its server when login minted it; `--revoke` also revokes a key you added, `--no-revoke` revokes nothing (and exits non-zero if a minted key is left live) |\n| `skills whoami` | | Show the signed-in account and where its credential came from |\n| `skills auth login` / `auth logout` / `auth whoami` | | The same commands under `auth`; `auth login --membership-id` enrolls a workspace profile |\n| `skills billing status` | | Show server account plan and balance |\n| `skills billing checkout` | | Create a checkout session when billing is enabled |\n| `skills billing portal` | | Create a customer portal session when billing is enabled |\n| `skills credits buy <pack-id>` | | Create a credit-pack checkout session when billing is enabled |\n| `skills setup-info` | | Version, pinned skills, agent configs, paths |\n| `skills export` | | Export pinned skills as JSON |\n| `skills import <file>` | | Pin skills from a JSON export |\n| `skills config set <key> <value>` | | Set default agent, scope, output format, or API origin |\n| `skills config unset <key>` | | Remove a configuration value (`skills config unset apiUrl` clears the stored service address and returns to running on this machine) |\n| `skills new <name>` | `scaffold` | Scaffold a portable skill under `~/.hasna/skills/installed/<name>` |\n| `skills port <path>` | `add` | Import an existing skill folder into the portable standard |\n| `skills create <name>` | | Scaffold a new custom skill directory |\n| `skills prepare <name> --version <semver>` | | Validate an edited draft and update only its manifest version/hash; `--dry-run` previews, `--kind` resolves legacy manifests without an explicit kind |\n| `skills sync --to claude` | | Disabled by design; use `skills mcp --register <agent|all>` |\n| `skills sync --from claude` | | Disabled by design; agent skill folders are not used |\n| `skills sync [names...] --check --for <agent> --source <path>` | `render` | Legacy native-folder mode only, without CLI loading or a selection profile: check the selected corpus and agent homes without writing. Unknown selections or drift exit nonzero. |\n| `skills sync --station <id>` | | Without CLI loading or a selection profile, legacy snapshot mode writes a v3 sync-manifest under `resources/<station>/skills` only with `--populate`; use explicit `--selection-profile` for API station receipts |\n| `skills hydrate --station <id>` | | Restore the canonical corpus cache from a reviewed per-station snapshot (dry-run by default; `--apply` writes) |\n| `skills validate <name>` | | Check a skill's directory structure |\n| `skills schedule add <skill> <cron>` | | Set up recurring skill execution |\n| `skills schedule list` | | List all schedules (enabled/disabled/last run) |\n| `skills storage status` | | Show local state paths and optional repo-native storage readiness |\n| `skills storage sync-plan` | | Plan `.skills` Postgres/S3 snapshot sync without network access |\n| `skills mcp` | | Start MCP server on stdio |\n| `skills mcp --register claude` | | Register the Skills MCP server in an agent config (also `codex`, `gemini`, `opencode`, `all`) |\n| `skills self-update` | | Update this package to the latest version |\n| `skills completion <shell>` | | Generate shell completions (bash, zsh, fish) |\n\n`self-update` asks the same Bun executable for its global bin directory after a\nsuccessful installation. It reports success only when the `skills` command on\nyour PATH resolves to that installed command and exits successfully with one\nsemantic version. If discovery or verification fails, it exits nonzero and\nexplains that installation may already have completed. It does not automatically\nreinstall or change your PATH.\n\n### Local environment assignments\n\n`skills env-check --set 'KEY=value'` writes one literal value to the current\nproject's `.env`. Keys must match `[A-Za-z_][A-Za-z0-9_]*`. Empty values and `=`\nwithin a value are supported; output confirms the key and path without printing\nthe value. Quote the shell argument when it contains shell metacharacters.\n\nThe writer preserves unrelated lines, comments, line endings and existing file\npermissions. New files use mode `0600`. Symlinks and special files are rejected.\nValues containing control characters, newlines, all three quote delimiters, an\nodd trailing backslash, a backslash immediately before a final dollar, or a\nbackslash together with both a single quote and a backtick are rejected because\nliteral Bun dotenv serialization is not supported\nfor those cases. Multiline or ambiguous existing assignments","readmeFilename":"README.md"}