{"_id":"@hasna/projects","_rev":"125-88fdb3137804589505d53937a5aa8fbc","name":"@hasna/projects","dist-tags":{"latest":"1.2.4"},"versions":{"0.1.16":{"name":"@hasna/projects","version":"0.1.16","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.16","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"project":"dist/cli/index.js","project-mcp":"dist/mcp/index.js"},"dist":{"shasum":"3dd708f795c55cea18eef2a63daedfd89d484391","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.16.tgz","fileCount":99,"integrity":"sha512-7xtOrJNUTpN1mePP6T+MnGVd8E1toKQJDbV5ghH2Z46fvyQ943OnIMcAsAB4M3Wzd2pjbTn2CwK8613PsE6TvA==","signatures":[{"sig":"MEUCIQCG8nfl3A2BXgPQBfJjQjtzprva+MjxtohJ9nzrEDXF2wIgQZLimaqqg74UMetmleTlkkl8BDFutR3d09G1TztHTiY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4686201},"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":"f9bcf514aa38e42ff63cb891978d8f17a2ee9598","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.16_1776597003039_0.94454656731083","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"@hasna/projects","version":"0.1.17","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.17","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"project":"dist/cli/index.js","project-mcp":"dist/mcp/index.js"},"dist":{"shasum":"15f62367f126ecc3539c19ff23bcedffd1987439","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.17.tgz","fileCount":99,"integrity":"sha512-60AuA93kBBKzs/1zkkMjff8Gw7nxOXUhQ/p43mSk7sDiI0Hdo3C5BvgJIA6ZzToQYRZnIPVZk2tSsTDzOCy6XQ==","signatures":[{"sig":"MEUCIEREcxV1V92vskD+g3nLh+s5ZlCeurX606uxfx8GrnKvAiEA5ahakdRhkldAdHt5Ss6YEGH0JL/mwOcFytIPgLqiak0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4686822},"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":"e55a7e136b600c1f843dd1be758d4ace1c86a7f0","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.17_1776597196056_0.6024778123235899","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"@hasna/projects","version":"0.1.18","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.18","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"project":"dist/cli/index.js","project-mcp":"dist/mcp/index.js"},"dist":{"shasum":"a4981575492c1d79dc4c343b07649dd3969458ea","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.18.tgz","fileCount":107,"integrity":"sha512-N7ig91xuoE1QUvtDmiHGU6+TsBkCwPhaZB/j1VDiWYvHon9i6dbf48SKEULl1XSm4JlZEMIm7Ar+h93R+SXKtQ==","signatures":[{"sig":"MEUCIQCOL6/FqPhqGD8qzP3HmHsa2T/VFEtNBo8Cy/wTvNW8MgIgD6hVFUqPSnn1O/z86bwxRyUBoH++D1qa9qN/LJ3z2k0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4714910},"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":"e55a7e136b600c1f843dd1be758d4ace1c86a7f0","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.18_1776598392529_0.01073556707977752","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"@hasna/projects","version":"0.1.19","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.19","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"project":"dist/cli/index.js","project-mcp":"dist/mcp/index.js"},"dist":{"shasum":"2aa32d91eea68d74165eb4b65ef9de9d9788cc8f","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.19.tgz","fileCount":107,"integrity":"sha512-lO2a8NpMKECk3w52X/9gvqtBj5vStLDRAZq+r5uk5qveajFroOcL0yMpxMsOD0rjhAx7zdjTXyzD7+xaGyDzEA==","signatures":[{"sig":"MEUCIQCF2OiZmlm0ttaauIpVeQ+K0MsXG1fJb6gWsZ37ODPN4gIgcodKUEwKaVgAeoCirkXcaXnO7ZtJbwJ+b/CTlF5sLXg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4714910},"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":"1ab33dcdec2db811eae1acbe17506d058a4448e5","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.19_1776598713983_0.2142358736623271","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"@hasna/projects","version":"0.1.20","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.20","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"c98d4a23e04204951b0fc2a5221fd18635caf2c8","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.20.tgz","fileCount":107,"integrity":"sha512-ePpBLe5NdEaSAipbPluIm6Q7tn/qql2SlzomffhccrNLq37LnDQo27PGOJ/ug05vYR1Z26eFNPk5czpvkuOCVg==","signatures":[{"sig":"MEQCIASxd+O89E+yppKZpcBeXJaBee0r7GH/z+A9KCi1kiAoAiAdkEQ94LLtuBmaqB4Hn7IGVV7QcgBHpiXovCXWbmiyAA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4714915},"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":"75308acf8e0881bc7f3ee4d729fa31231c91f44e","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.20_1776598967650_0.28672074735311814","host":"s3://npm-registry-packages-npm-production"}},"0.1.21":{"name":"@hasna/projects","version":"0.1.21","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.21","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"f3881d272ae112a83b168fce52c6ee05f18ff648","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.21.tgz","fileCount":107,"integrity":"sha512-qq0RsBDdyARLINzKcH4YM9+u8kPOpzjXZH7K0As6DOeVqbmAba5QvluYjjjZDy105K3jMx4ndRrIncs6+zCoMg==","signatures":[{"sig":"MEQCIDXLOSuoDHnWPrnbxi1y1SQ4L7hXyC9YoMXQWVpRPrtFAiBT/DRKXqvMs0IE0x3DM6mpUmaAvyo+50eMQchY91rKhw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4715975},"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":"da787bc2b8a508d14e78904a10d98e44becd5e48","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.21_1776609419958_0.35281242167113924","host":"s3://npm-registry-packages-npm-production"}},"0.1.23":{"name":"@hasna/projects","version":"0.1.23","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.23","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"10ffa3f6c158f12432cf547b219f75bd6077aed2","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.23.tgz","fileCount":109,"integrity":"sha512-oUtQUb3CaZy+GGCd9RqGZfYcBaJqI/p22vfxyOlEjzCFwrPUOCJhq8p7gI2VilLK/B7Wh5xPROSUFbd2O83NOQ==","signatures":[{"sig":"MEUCIQCuU6zntxB7D75oAzzIiU0c8f9kHVwlr8gFTfIMB0unOQIgNAW5V/WXSh+S7xIjePm3s6FsWn0pTbBpceuxScxWZ9M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4716660},"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":"6713e852e0fece7213f78c464c5470de326da628","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.23_1776612297736_0.7000695940237207","host":"s3://npm-registry-packages-npm-production"}},"0.1.24":{"name":"@hasna/projects","version":"0.1.24","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.24","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"b706ceb6ecf91854cecbeb8297c2044c67a9dc1c","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.24.tgz","fileCount":121,"integrity":"sha512-fJ8w+hn0GT6KhQ9YIS+mBto1qxJILfU7xlW3LwF0irfyfargnkXkHUouFtUmYnaI+0ZlnarC0bh59pqgxHT3rg==","signatures":[{"sig":"MEUCIHAH6UHh7Q4o4KqrF+AE3npMrFsEY+C8osfdEf/mF3v5AiEAsEMABEB2yoV5SMCASGCM1iM1jcm5sUjCZdUwmDfBPhw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4730229},"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":"37b7612da798b1e74d75f516943e90cff47a48f6","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.24_1776620166187_0.15451604688435716","host":"s3://npm-registry-packages-npm-production"}},"0.1.25":{"name":"@hasna/projects","version":"0.1.25","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.25","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"291db74e0d1949be2c2669865f71baf8ebefef76","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.25.tgz","fileCount":121,"integrity":"sha512-dVIMKmk+ZCVnELgDfgSA1J/Brgr7R5SjuZkqjXqwfKBU+jWnMtxGs8XZ43oP76bQIz0Ay5Vooi1Heul8G3tr3A==","signatures":[{"sig":"MEUCID/sAFT4UR2uNHI3NubCqaBbVKSKdMQuM9jy9uF1uvQfAiEAvT2NcYJJW5ZoI+gFJVBs9Vjo0FeLJlffEm/lrjQ8gkQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4735948},"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":"731c1cbbf51b103ac3042364f642f38ccca29bd8","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.25_1776622267011_0.7349643874460143","host":"s3://npm-registry-packages-npm-production"}},"0.1.26":{"name":"@hasna/projects","version":"0.1.26","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.26","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"e853b5aecf2a5c616a0792672d194a695af4babd","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.26.tgz","fileCount":121,"integrity":"sha512-SCBaCGpGv+6i5DOTo7L7S7UY0ZfShMmg6dEYpiVK/Rf1o/jtpOCv0l7wKTHODU261OyV0Di6dn/mQ6On0YnT9w==","signatures":[{"sig":"MEQCIDPs7naFLg3H34jToXQpLdcE+rNC4NXRu06oiB+JVUunAiAVccnhw51US62Pv/OxKAAkCm+iLvgOy3621qKGTlxOFA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4739246},"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":"731c1cbbf51b103ac3042364f642f38ccca29bd8","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.26_1776623991001_0.20178856413321622","host":"s3://npm-registry-packages-npm-production"}},"0.1.27":{"name":"@hasna/projects","version":"0.1.27","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.27","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"7427be7e8abeb7f2932d3951c27b369f05e07933","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.27.tgz","fileCount":121,"integrity":"sha512-u9psXl0DGofEyLWOiz7Faci2JsfqcNfg8wUue8q7yxBVnH46EeDExEZNZQSCxltzqjwb0Po8WPrhCzbuX1O7Lg==","signatures":[{"sig":"MEUCIAESbuIbxFucvahiJ+GauBQovQWSPLlhCmHH7Ybo25N+AiEAvLxMKx6VeOU631ux5J7uuLs0r8CxSb87xBF23H98xI4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4739246},"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":"731c1cbbf51b103ac3042364f642f38ccca29bd8","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.27_1776624076079_0.9788092536756092","host":"s3://npm-registry-packages-npm-production"}},"0.1.28":{"name":"@hasna/projects","version":"0.1.28","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":"Andrei Hasna <andrei@hasna.com>","license":"Apache-2.0","_id":"@hasna/projects@0.1.28","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"6142ed1a5857bc1bb3d3c157178afd1ac4b5aa8c","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.28.tgz","fileCount":121,"integrity":"sha512-QWFTD+LHxyuxDuFfj2Zeu0fLSv0bPkiq2Kz5Lah8iX5u3vCuKNOKrGf9pwiRO4HmlmH2z9JWJlN2DL2V3wzxow==","signatures":[{"sig":"MEUCIGsxMHzf7alOkMiKm3VEXZyFVSyvaYwVgmTmz/8xF7nPAiEAlCrJO2CS9UCO2PuGzQ2m26gt2gs+l1X+W8Ly8CBbK5k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4742599},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","shasum":"6142ed1a5857bc1bb3d3c157178afd1ac4b5aa8c","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-QWFTD+LHxyuxDuFfj2Zeu0fLSv0bPkiq2Kz5Lah8iX5u3vCuKNOKrGf9pwiRO4HmlmH2z9JWJlN2DL2V3wzxow==","repository":{"url":"https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.8.3","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.3.0","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.28_1776664783830_0.3090806588792039","host":"s3://npm-registry-packages-npm-production"}},"0.1.29":{"name":"@hasna/projects","version":"0.1.29","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.29","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"f74d02a87fadbd632c9d85167360483ece887ee9","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.29.tgz","fileCount":122,"integrity":"sha512-2Tt8d549vX25dUwypHLEKGXmVWNdVR6G8muj3ICmBIO2WSj4ZQo7yi1uqOpfv4fpvqukuvZHU05lQ1eQQciceA==","signatures":[{"sig":"MEYCIQDsrC5VYy9jSLzaPzoArNeUpHaXPkx1MVAwOx4qlSkbbgIhAM53zDjLUlskZo1RAC6/tvSrEkAX/HCxy1xQJ1NIWVe2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4746023},"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":"d960c0d3267754f240bb032b07059cddc5d00938","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.29_1776767238481_0.7831913670926303","host":"s3://npm-registry-packages-npm-production"}},"0.1.30":{"name":"@hasna/projects","version":"0.1.30","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.30","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"ef923e76c23d99d64bcfa947f2a1a85c108ea4ec","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.30.tgz","fileCount":122,"integrity":"sha512-iVNlwCA+6d/+EHRWk+8q1TxQb59LCw5lO4gQMhigcUq4Wac/N8UGv9UMFYS68eBHZcT7yVkuz864pcr1E6Gl+w==","signatures":[{"sig":"MEUCIQCoRuSNSwG+wxcK0EjxhNLqdt1plIRCT92uLA3Zh4DiogIgSL1WRQT2ZSj/g3f0G2G+SRYEWZSsv+Q2yVCt9ZSEag0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4745855},"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":"f1a620371ce513c10799ef5100083eafbd3d00cd","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.30_1776767531848_0.6201566873741249","host":"s3://npm-registry-packages-npm-production"}},"0.1.31":{"name":"@hasna/projects","version":"0.1.31","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.31","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"f387889bf73318e65c70d1ffc17e2649133db2b8","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.31.tgz","fileCount":122,"integrity":"sha512-2Uo50HUFP5+aAJodPoKZAbX2S+f6x7i15iyTtYj3d2NmdtCHCkKnzuLGd1sURwFa7EoC3vpNKrYENjxwKBI/QA==","signatures":[{"sig":"MEUCIBZHeaTJ5YpFDUdFF4oUTfED3xgax+gGt8CWMuQfY2Z4AiEA3B1NL+vqpkAXmGm28UB4+AsgfuKb6FUnfLHGSuEv3us=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4746517},"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":"47e202d7550aa556ebcb13abdc04c9abe23642c5","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.31_1776775062550_0.48654117131864805","host":"s3://npm-registry-packages-npm-production"}},"0.1.32":{"name":"@hasna/projects","version":"0.1.32","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":"Andrei Hasna <andrei@hasna.com>","license":"Apache-2.0","_id":"@hasna/projects@0.1.32","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"2e56309ef4a56cb507eb2b3d6ead076febdba27f","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.32.tgz","fileCount":122,"integrity":"sha512-/r7EFYjgFbg+jC0z/BaCmFwMe/JFtlxo8NWwv7SmpdvvX78HUU9LfMz/yP7/rK/7u+IoVlIxVzRzLsf5xm74NQ==","signatures":[{"sig":"MEYCIQCZ1SJrYxC5uHGbbsuVPfExnFcjpswVEaqqgeOTQyFs3gIhAJIXa6rtXJaCplC/k4C9dPzRk4/IGtrSKmcLKvrFfyQz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4746507},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","shasum":"2e56309ef4a56cb507eb2b3d6ead076febdba27f","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-/r7EFYjgFbg+jC0z/BaCmFwMe/JFtlxo8NWwv7SmpdvvX78HUU9LfMz/yP7/rK/7u+IoVlIxVzRzLsf5xm74NQ==","repository":{"url":"https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.8.3","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.3.0","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.32_1776776495239_0.0348115217666769","host":"s3://npm-registry-packages-npm-production"}},"0.1.33":{"name":"@hasna/projects","version":"0.1.33","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":"Andrei Hasna <andrei@hasna.com>","license":"Apache-2.0","_id":"@hasna/projects@0.1.33","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"42e4bf5fb102a4ca4fc78673e15186adb4f9b67f","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.33.tgz","fileCount":132,"integrity":"sha512-Kjnps6DRREDh2mJYDmTA/JH71tmp+fYFpfNEq7M7mS77eTRbddkkQ5xDYaeSuAQxiams4Bt5KRQSg48zsMtCiA==","signatures":[{"sig":"MEUCIBon4YzQdMidyBlticAxG08EK8PlNqV5M0yKdZcnLqp4AiEAq29ZiDb+tqWWiLXPLP0kqTYY/wzlTr3BM/NnFrHEitQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4762087},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","shasum":"42e4bf5fb102a4ca4fc78673e15186adb4f9b67f","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-Kjnps6DRREDh2mJYDmTA/JH71tmp+fYFpfNEq7M7mS77eTRbddkkQ5xDYaeSuAQxiams4Bt5KRQSg48zsMtCiA==","repository":{"url":"https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.8.3","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.3.0","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.33_1777017647836_0.6741374974292005","host":"s3://npm-registry-packages-npm-production"}},"0.1.34":{"name":"@hasna/projects","version":"0.1.34","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":"Andrei Hasna <andrei@hasna.com>","license":"Apache-2.0","_id":"@hasna/projects@0.1.34","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"0a21fe2135972c43010a9914c992596eab198d5a","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.34.tgz","fileCount":132,"integrity":"sha512-Hv8U9vkMaA89CihotLfc02L9+g81LxsBQfHV5m717xD3F5sl7dyDkR8FgkKfStF6sQEaeKrIYRiigO+DZFYkTw==","signatures":[{"sig":"MEUCICzIifURlW4xes9REBjJqCho06Qs7khZzX+pEOaPMM08AiEA+N2cNrS6Zyfi7N0bCwvHlFn3Y9fjf8w2pc6ZqkrkbL0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4762204},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","shasum":"0a21fe2135972c43010a9914c992596eab198d5a","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-Hv8U9vkMaA89CihotLfc02L9+g81LxsBQfHV5m717xD3F5sl7dyDkR8FgkKfStF6sQEaeKrIYRiigO+DZFYkTw==","repository":{"url":"https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.8.3","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.3.0","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.34_1777018067197_0.6506529041318565","host":"s3://npm-registry-packages-npm-production"}},"0.1.35":{"name":"@hasna/projects","version":"0.1.35","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":"Andrei Hasna <andrei@hasna.com>","license":"Apache-2.0","_id":"@hasna/projects@0.1.35","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"40fae4b07e6436c3af3e8049b3d7727bb625fa67","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.35.tgz","fileCount":132,"integrity":"sha512-qg3IVsdZzs0oOzLIS4CLWynAyrzP1PMDwprGqBP7/P//fJN477MMrCqz4G1xu64lpCyY6Wu4YF8t+hQho2klFw==","signatures":[{"sig":"MEUCIQCqiIBEM/fHLq+J2Z8m0lQ+LJFdNpy7QYkho5l1ZvapfAIgWuGdsmIbVP7rQyEcZcZJOSEjZPeHByaXsmgJga/1D8U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4762326},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","shasum":"40fae4b07e6436c3af3e8049b3d7727bb625fa67","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-qg3IVsdZzs0oOzLIS4CLWynAyrzP1PMDwprGqBP7/P//fJN477MMrCqz4G1xu64lpCyY6Wu4YF8t+hQho2klFw==","repository":{"url":"https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.8.3","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.3.0","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.35_1777018271040_0.6388104311503935","host":"s3://npm-registry-packages-npm-production"}},"0.1.36":{"name":"@hasna/projects","version":"0.1.36","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.36","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"dc8de9ad1baf75d84a310f8110b535e22c82224f","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.36.tgz","fileCount":134,"integrity":"sha512-eeiuX0HSPkDF392OGo4Aw9nWgn8ptH6ezuO/d2iQcXCProxWQiXAGU9gHYoCUJ93WFE1I88h8ZJ9g43JRJswEg==","signatures":[{"sig":"MEYCIQDLP1MhoO3nt/14I1ss9n08PtyI0WsX/wvxMegY71WvMwIhAPFMTwEI195QiL98XLSqGuVuFsJrfiv3JPH3ERPuzr1J","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4765335},"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":"483218a2c1238b4935bc48da11150e4c454ab424","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.36_1777021156704_0.665853454697553","host":"s3://npm-registry-packages-npm-production"}},"0.1.37":{"name":"@hasna/projects","version":"0.1.37","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.37","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"c0b40fa5614c93b786066a9b03a34fa6dfc9c4e0","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.37.tgz","fileCount":134,"integrity":"sha512-CFV/N+1R5z1Jcq96P3Nm8GCnYrs7uBZAG9S1psQWfOqP8Thjkjy6gru4nhs7ccWnNCy7NmOOkwL5i8Gm6un8eQ==","signatures":[{"sig":"MEYCIQDDrI29YMP4lxivx5qygFQKWOw23ESOrd8F0EaQBhrqDwIhAM6crIPEzkYiWFt6vr2OjTsMvVOrPXGvMIAB/5mFQUU6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4765455},"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":"23b4787acccc050b5eeb40402b4c3ee2ce576187","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.37_1777021850392_0.6921514780807878","host":"s3://npm-registry-packages-npm-production"}},"0.1.38":{"name":"@hasna/projects","version":"0.1.38","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.38","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"0a4707569a50c93a275c7973a9b9aadfa134dcd3","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.38.tgz","fileCount":134,"integrity":"sha512-Sjiy9loeA6cUbbrY2D4sJ/FwABFw2CswGUR9yQ7d8Q7MTKUqDesHw5EleFCPL1smZqmmbaiPzUCVff/FTcviyw==","signatures":[{"sig":"MEUCIQC6F2zdUCfP6Cyc16UoZU0DYLI/ma1+Lp46krB8VY7kpQIgapW9gKnRfLZTXguhOzTeoIFkuHNXequz7oaMN61NrUc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4774643},"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":"834a163d5a793cbd99b388228a8c5bdc93112944","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.38_1777023085113_0.27214834310852654","host":"s3://npm-registry-packages-npm-production"}},"0.1.39":{"name":"@hasna/projects","version":"0.1.39","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.39","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"fbb9bf7f798188c93ee3058e5c28ed8ae358863f","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.39.tgz","fileCount":146,"integrity":"sha512-5AHbzj2N4bhqdVl6b27nz6LjL4BoOu0VvWctikMH6kQ0u1Tzqf+adz4z/Uxiy+YqDq5GB3/o4mDv8U00CMe31w==","signatures":[{"sig":"MEYCIQDCS+EQAZ966zBtIXUm5FHUQBBwrXHl/FULrKTRdcRvtwIhAMPvbZIPs0hTrrKyP+31QnFJI34KkHCyPVh/IQrunuQt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4851352},"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":"fb1015dfeae5137ef1f2046aef6e314d263fb822","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.39_1777024400773_0.08624599386671661","host":"s3://npm-registry-packages-npm-production"}},"0.1.40":{"name":"@hasna/projects","version":"0.1.40","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.40","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"a071ae124ebd4ac368f45e3082d9b4775a5123e4","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.40.tgz","fileCount":146,"integrity":"sha512-O4UFN9bnF+Co9XuqLXo6rks8dBWH1L5cF01jArzouODfyFu8z/PEg9P+cOY2j1rm2EuWkNIDJ5yz3cbvbGMNyA==","signatures":[{"sig":"MEUCIQD4kNMTxst3IWx2dQBuKzekQYP1Pkl+59+yegjx63vOAAIgBpX/qeT0ZQF2onDn2hVOo8LlotMs2ViumZXaO/W3tbk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4855638},"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":"ac9702131c5862300e46db0a8888bb844548d663","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.40_1777025591936_0.4585400548351197","host":"s3://npm-registry-packages-npm-production"}},"0.1.41":{"name":"@hasna/projects","version":"0.1.41","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.41","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"edb8003109acbe38449bfa8cca7cc9b4aa0502aa","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.41.tgz","fileCount":146,"integrity":"sha512-IhngcFrf1Fn5dZX0BDywwpLUwfYw1FnWDNJd9BHlbvhPw/k0pdjQ+yyL5a0NL8d7Mn3UqmaGSEMOLIxluluyjg==","signatures":[{"sig":"MEQCIDcYlLUEoaOSnC8OBzRUT4SMb1nnw18M7CsWw8REc8JDAiBczmwhJ0+UeWrd1X4h4XQRw4VIlkM9Ln+ZfAu/KpM/yg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4856743},"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":"2428b5b6629b7543526e3a89b59af4e2c7a0f52e","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.41_1777026077878_0.46360049989471985","host":"s3://npm-registry-packages-npm-production"}},"0.1.42":{"name":"@hasna/projects","version":"0.1.42","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.42","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"f3e2e38aa95f0a5bbcb651e61450e5a1d87bcb4f","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.42.tgz","fileCount":146,"integrity":"sha512-HaLpcfG++WtpDj+pnMxWWTFBTrx4bxQyv7rWlIDvgKi2ETRiXrswl2SIITStNBexBmvzBLYBJN+JgF07YKQuXw==","signatures":[{"sig":"MEUCIQCBboiDEmon+DZH9MwvrLDthvfpURopv+RjHoDLzk1maAIgX+aOMCv+NEpJY521GkaMUUNM5ToaMbqVIEvkv7Obhok=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4858230},"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":"d2e99cbc8df61bf9b793985d6803d0908f658283","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.42_1777026909407_0.4797681690770408","host":"s3://npm-registry-packages-npm-production"}},"0.1.43":{"name":"@hasna/projects","version":"0.1.43","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.43","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"8c9ebe1313bbb04f9f2c89421c285744c8f8362c","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.43.tgz","fileCount":146,"integrity":"sha512-EAvANOG1RnI3SFJWLabP/fwUO6p3xokoLXhj/WE9Yf20+KBFKbOKih4bYnJW5QFQdZReMp6fD8k+vwtozTBMjw==","signatures":[{"sig":"MEUCIHckYMX65kRarGC7H1ntgmxs1wxfr73bhCFv9yV3dbWsAiEA0/YyCU0GbEvwWJmHGc+sN1lKFWzysOMwmSAAJfTghKA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4859022},"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":"8816394f85e64c58dd2513348893bea8fb4ddc61","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.8.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.9.0","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.43_1778140754414_0.055495017694853654","host":"s3://npm-registry-packages-npm-production"}},"0.1.44":{"name":"@hasna/projects","version":"0.1.44","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":"Andrei Hasna <andrei@hasna.com>","license":"Apache-2.0","_id":"@hasna/projects@0.1.44","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"a5a5a198282683f9a6fb89d98751c65c0259104e","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.44.tgz","fileCount":146,"integrity":"sha512-nQ7lOrf3CxXboQEOk9IRwxYTgBCxdH4vLMDnE8nUaNhzVpl27Lj7ZMdP9icXI4DP3PkhmlhZP3asu94MhdN7ZQ==","signatures":[{"sig":"MEYCIQDBLVa1HYAizIeBXjdDeAcsU1YgJAaJUiJNNu/SGf01HgIhANpRTMqmZpjRfXdkfDIEIYv+SYcD2UM1c3zg5OFjKGfB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4869087},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","shasum":"a5a5a198282683f9a6fb89d98751c65c0259104e","engines":{"bun":">=1.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-nQ7lOrf3CxXboQEOk9IRwxYTgBCxdH4vLMDnE8nUaNhzVpl27Lj7ZMdP9icXI4DP3PkhmlhZP3asu94MhdN7ZQ==","repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.8.3","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.3.0","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.44_1779709516309_0.859888775977848","host":"s3://npm-registry-packages-npm-production"}},"0.1.45":{"name":"@hasna/projects","version":"0.1.45","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.45","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"32c8e816dc867bb40daa399292859d8331c824a0","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.45.tgz","fileCount":146,"integrity":"sha512-jPGaOOqu6yCEzDpXWPWf1xkhUtmQ83hL1Axx+16W8qyys9Edz9OT7W2faRnwec2EgP7XZtZxmhJkIYJ8Jc4XMw==","signatures":[{"sig":"MEUCIDLKiXxHp1UyFbLRYRBtmlEvU4tLoHMSSgrzYnOS35TXAiEA74Wv1av5KrROVPXndrLGpo4QdfDz66/OWcUTGSqYOlo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4868471},"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":"59dd32dbcc3b8bee0b2283ae7243b6f6a7424e6c","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.45_1779802341307_0.5245041047552259","host":"s3://npm-registry-packages-npm-production"}},"0.1.46":{"name":"@hasna/projects","version":"0.1.46","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.46","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"fea153ea2ce8feb3fa1d0df9dcd2d61cb7c2f312","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.46.tgz","fileCount":148,"integrity":"sha512-DXRVAx9SRCquHQpn3cB0zREajbP42aZXzgbylyht2xfyHZDdpXNYQ0mACUW9mJjwzlyDaOlOE3UMeONoU/HPUg==","signatures":[{"sig":"MEYCIQDnq+G5EILgF7V/nNzN3ChOrWY0ZzjCfcttrSEfnw5FWAIhALg5eqwlO82ZIEBUiR+nNtSM1ncRm1ZK86ubVEY9rby9","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4876442},"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":"502a83e976dc0bf326d613466e015aed773ebf5c","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.46_1779877177177_0.8852815357882093","host":"s3://npm-registry-packages-npm-production"}},"0.1.47":{"name":"@hasna/projects","version":"0.1.47","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.47","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"01b7ce38995d934c5da2b3f09ff15e42a73ceedb","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.47.tgz","fileCount":152,"integrity":"sha512-m62dJbPoHS6FyMiPDjYvYj0QJzY14rd8ZNj4yjqKq/nFRiAcFrG+k5uxc1NXg2DdzOPnVtUCGfLvCOvTvL9kTA==","signatures":[{"sig":"MEQCIGQPZGCeRhJswrQLEN1sX1YHMEL9cVcAEinywMMI3hvcAiB4IgZ8eNbbQXgnCN3BhTEfTgJd6TV1mqRLxfrGyVjdIA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4881229},"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":"2eb294f7cdadd614ad58113dcfac8c63ab9365ef","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.14.1","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.47_1779962886818_0.06652219478381971","host":"s3://npm-registry-packages-npm-production"}},"0.1.48":{"name":"@hasna/projects","version":"0.1.48","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.48","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"49da7e20abe364875e0a449e48b70bbab9bc49ad","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.48.tgz","fileCount":152,"integrity":"sha512-uNkPxJcxsJRpjapTt0OumhMIE22HncCSFSPM7wjAGtHD0gqJv4ka5t2j6JEEKVwrrUFrRFcyzHHVIbVM8h7xlw==","signatures":[{"sig":"MEQCIH01YOCFzmPPP3CE7W3jWfiiIw+/83kV3hGZ3x2AchiEAiAmBZ4MEbept3SV4jZoh3Z8hAMLNa5Wnb0dY4soqow62w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4881358},"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":"cd0faebbf63a9b6f6df0524ab0765bb4248acca9","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.48_1779982362885_0.5846558193561975","host":"s3://npm-registry-packages-npm-production"}},"0.1.49":{"name":"@hasna/projects","version":"0.1.49","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.49","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"72e0d1936456932c8f00d9d74e23d47ca1067432","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.49.tgz","fileCount":152,"integrity":"sha512-wHM0osDDSjXmLvaOBqsfkimxEu5csVlR0v2EyVM/W1JG9VM7xP8C5qaSn/TcOv+i9oCLjnVNiqjONKuf93+4FQ==","signatures":[{"sig":"MEUCIQCeOCD6iGBq26iK2TuIzR24tlewAhySYUuSR7B8Sk100QIgSj+z3bqoP6Ec/dRIszUGI/5jybx1AGCwR+lvHpHYSlM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4882455},"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":"b3579607936fd5db4186ffdcbed4aac555cf18bd","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.11.0","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"24.3.0","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.49_1780490691403_0.5210537017611909","host":"s3://npm-registry-packages-npm-production"}},"0.1.50":{"name":"@hasna/projects","version":"0.1.50","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.50","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"a71f5b57feead6efbc9c8827b427dba3083369e4","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.50.tgz","fileCount":150,"integrity":"sha512-Hva1I476SXbcgQ4BOKZQDfZIoaPsk8ExnXkB2Diio2R2wSIBV+5Q4L43Wn7DwOZnA6OxFYR82vZZDLHZMaouHQ==","signatures":[{"sig":"MEQCIQDyEFctvQqJmc7upPVfqa6TYc8BW8a8FkrQYe4o4s6a5AIfDx6itrTZIzRVnGZC34203xZ2JVFkPK7TsHKbj0F8Fw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4906755},"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":"89567329f97777386f970474dbd591f106f032bb","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.50_1780608688848_0.656771860680605","host":"s3://npm-registry-packages-npm-production"}},"0.1.51":{"name":"@hasna/projects","version":"0.1.51","keywords":["projects","mcp","ai","coding-agent","claude","cli","sync","s3"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.51","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"d9c1c7202aec1f0aa8f020d23043a5d85606ff39","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.51.tgz","fileCount":150,"integrity":"sha512-jnJHccI2isdiKam6trxBXPUxz5U4SG1iXWxpeFacR0+xXir9rf9ysTS09HuRfsjEzpIGfcKY4RRqCB7GC0b2zQ==","signatures":[{"sig":"MEYCIQDzsMaHsBqLW5r2Y9Ps80HEZ4UZmscBMjMPhZ3R2JXpfAIhAKFIqbBL6FyR0IikoOG9crTz381AaOaTGghvDKFp4K4/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4911710},"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":"89567329f97777386f970474dbd591f106f032bb","scripts":{"test":"bun test","build":"bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Project management CLI + MCP server for AI agents — register, sync, and open projects across machines","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.24.2","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/cloud":"^0.1.28","@aws-sdk/client-s3":"^3.1018.0","@modelcontextprotocol/sdk":"^1.12.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.51_1780610512685_0.28016178531904856","host":"s3://npm-registry-packages-npm-production"}},"0.1.52":{"name":"@hasna/projects","version":"0.1.52","keywords":["workspaces","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.52","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"36dd119a5e34273debd4a6f470cff98eed73928e","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.52.tgz","fileCount":66,"integrity":"sha512-PE1beVeMu70hsqQfSj2Hx/efbvopiAIdSVMcbXp9NIQKv0L7t8dLQg/sJkrfouER7IaURGvEaMkjuuwx6PZLag==","signatures":[{"sig":"MEUCIQCUPo9a2Uayt2JkvJZg55FUhqo4DsfWds+Miraes64fFAIgE2EsvqQN9cijLHTb62pEIxXa5TlMNcb2Rb+CukReT7Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3981503},"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":"12338992f02e5e4cbcdd94fc65ed6b69b94d07e9","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/workspaces 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Generic workspace orchestration CLI, MCP server, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","zod":"^3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.52_1780840389268_0.7570584099669333","host":"s3://npm-registry-packages-npm-production"}},"0.1.53":{"name":"@hasna/projects","version":"0.1.53","keywords":["workspaces","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.53","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"3780af98269ee3a4cacea1278d41a5d273f26118","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.53.tgz","fileCount":68,"integrity":"sha512-lGwfY2zGrwsbqnRJFonDg2S/vxrX57ehovlASUIRa0pwlOkjbeT22GYiNbH9YCnXP9NuT4XsMfkbwBrlSC44UA==","signatures":[{"sig":"MEYCIQDCaZdvN29HgWaPHWXnn1ZzHLOSNpYM5olSMQuaXRHjAwIhAKoCKPYnxgycwB6VM2Dz70kJYPH/OfzMDHgCCbnWp+Jb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3998536},"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":"5e14b3f842214ad99b144aee81d46cdce44c2bef","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/workspaces 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Generic workspace orchestration CLI, MCP server, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","zod":"^3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.53_1780843410809_0.8844230947121567","host":"s3://npm-registry-packages-npm-production"}},"0.1.54":{"name":"@hasna/projects","version":"0.1.54","keywords":["workspaces","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.54","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"f21f7fd0515bed19db2bdcad517bfca72d1d7074","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.54.tgz","fileCount":68,"integrity":"sha512-6kE/r1ZRW0CKXzb8BexAwVqSTO5BhwLX+y2wBrAm3qsjEiyq1hBK7GcBAVI5E/A9vgT4wa65MC5Tx67u7FIi9w==","signatures":[{"sig":"MEUCIQD/husAVCrJq1MMfePWP3bzEwmW0RN05nK3ayfs++YBbQIgcsg7yC83A9pZvG4XKPZsqIKxhU7wFAXzCxnacppruNc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4000699},"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":"b19005ea6e82f29d62ac80d4567a91f07dc1af43","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/workspaces 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Generic workspace orchestration CLI, MCP server, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","zod":"^3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.54_1780843550927_0.3850398728930029","host":"s3://npm-registry-packages-npm-production"}},"0.1.55":{"name":"@hasna/projects","version":"0.1.55","keywords":["workspaces","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.55","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"e20800edf2c5cea8db43f31ed8eff9bc796993e0","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.55.tgz","fileCount":68,"integrity":"sha512-/KPuS1fEAbG1LuEMHhKUjagCyrAxOZdkSxI7FrGi2hI2n6LUxIMynMhuhqzHm3+TWYI8Khsvh+yBPSiIOYr14w==","signatures":[{"sig":"MEYCIQClbpiUAw3lVv9GiNnYj3WBzF5wJK5C9tfsSmMaxY5qMwIhANKRZYD8M6kOEPWAU9eo2l+xN1UVtUePyC2na4fJpqDI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4069136},"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":"52f0e1bd05816eac2b73f442b24aab745318170c","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/workspaces 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"Generic workspace orchestration CLI, MCP server, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","zod":"^3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.55_1780850579872_0.3494154466560333","host":"s3://npm-registry-packages-npm-production"}},"0.1.56":{"name":"@hasna/projects","version":"0.1.56","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.56","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"f3507409439bcb1628352cf190e4a0280f1cfe1a","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.56.tgz","fileCount":107,"integrity":"sha512-JRjGnXNPxz17+jrIKSv9WBGiBHDi0c1cqTspex44ERzyXq5YNTk5HaMQfjLIBBuIWecQDN5rwj+Hco21JvnM0A==","signatures":[{"sig":"MEUCIQDBzovY156oKJvmt6WTXO1sZY4TuLdhROqzzAP+OV8I9wIgJTMhvZuKha/OefIWNii9RnZpKa4MFQzmf5i09TcHmMk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5091683},"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":"20bdf72aa309aa2bb27264ac4d5fb853a512af6e","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"^3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.56_1781599111233_0.4689978414274918","host":"s3://npm-registry-packages-npm-production"}},"0.1.57":{"name":"@hasna/projects","version":"0.1.57","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.57","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"472be7c04d0e70e52655ae29fe324d59d5ce32a5","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.57.tgz","fileCount":107,"integrity":"sha512-VnkrwGoBGMgE7OpqAP5S5390lwfcey6S8nOlT6nw5sKEbY6/nqpU1mrEXKOsTL4LIya7Mzx/IyFxI7Orv8NQyQ==","signatures":[{"sig":"MEUCIEQcByaCkhitcneRViCZ0xS85COrKS4iN70os9W83OKaAiEA9szDChSi8ktiu1w3FdxKkghYnESRlsc3zhYqnATsfVE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5092179},"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":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"^3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.7","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.57_1781608847189_0.05042285163054938","host":"s3://npm-registry-packages-npm-production"}},"0.1.58":{"name":"@hasna/projects","version":"0.1.58","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.58","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"40cb202b961cbfe1f5ab67a261aa03621c0fd5e9","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.58.tgz","fileCount":107,"integrity":"sha512-ZFpSxMxFUmutbbwDaZ1d89TmToTSSh8cJlpSXHbBaAb/byIl05PZVMA8KnZO0vm3/V+zsG0uGeUykxDJRWV0YQ==","signatures":[{"sig":"MEUCIGPc1tkcCUUQWVwZQCoJpx1gfcUxtuTYN+FY8hoaXQZNAiEAjuYtgUWcz7teeLANrOTAK34uTnHUBRKM3jXv2kId5c0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5095277},"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":"20bdf72aa309aa2bb27264ac4d5fb853a512af6e","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"^3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.58_1781866639338_0.2914577904487303","host":"s3://npm-registry-packages-npm-production"}},"0.1.59":{"name":"@hasna/projects","version":"0.1.59","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.59","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"1e2daef8c9c1e27163441d092d8c30197de92960","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.59.tgz","fileCount":113,"integrity":"sha512-eMg22KRFFHjMYEfbhEPjDL1vY0M66BDqUsI1cQqcNp0Qeh7ew4A6b7bYu229EahcLALzu0nHLBTBbMt3OyfD1A==","signatures":[{"sig":"MEQCIDoeUllfm3YkJdQOa/84vvcCEFuTmeAgshnLYgC/DdpnAiBmpxxxGK9LC0Hc32OvpCDN2HlzErwDRWgTNYg8AKeQqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5182393},"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":"f5567ad66d282168caccffaa54b175194da2a80f","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"^3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.59_1781994151885_0.6495716301884826","host":"s3://npm-registry-packages-npm-production"}},"0.1.60":{"name":"@hasna/projects","version":"0.1.60","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.60","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"c6da2d8d01730bf086a3a75a20540025f5d562cf","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.60.tgz","fileCount":113,"integrity":"sha512-EucgSIQpSWe5RIFbkDxe93zkYfE2jVUEBMZHQbsgSXrdEXf6h67orANqq6mOEJasTpj9EPNTjNebJrcadzEHcA==","signatures":[{"sig":"MEYCIQC+2yVg/P5eNthyYmvOrpre5hRTfudlI2VrQ1VueozRZwIhAPwLoPngjnIrAU6Aif+Ipyxk7lKmS9bojr6u8oF0uMLp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5186301},"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":"89a5fc70b3e275c5d86f4bd454920573651a1b89","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"^3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.60_1781995072802_0.6332182210301702","host":"s3://npm-registry-packages-npm-production"}},"0.1.62":{"name":"@hasna/projects","version":"0.1.62","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.62","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"718f9ca073d83f0578801ad3861803788a3d4e1d","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.62.tgz","fileCount":119,"integrity":"sha512-SevOT20UPjS+pA+jYa1zAfBl6gGJR5nkaKdxvEgQLhExZxObPvEksNRaL3jQiudYZRgk/u4liMY1Rjou+8Xshg==","signatures":[{"sig":"MEUCIQCO5NywW0e6IDpfdDN1yYRxON2ZGN+4FI6CE6tF1Hn8gQIgbz/r3RJfyxaXTOTkMOkiCqjjSswl1yWRxLdlg6lSxsY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7064962},"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":"7d58dc5498e4791b0979cf94c42487b17e332009","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.62_1782309196897_0.025711297448258286","host":"s3://npm-registry-packages-npm-production"}},"0.1.63":{"name":"@hasna/projects","version":"0.1.63","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.63","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"6c1f8de4d192a4252661744951bb6dcefe252f01","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.63.tgz","fileCount":119,"integrity":"sha512-4XGHUA56gMFoaYSfTa8Qu/+PMHcO/onZUlfrA+pxE/REW2GeRu869l7Dv63pFczFY8nXmkCVN4f3fofHtY5ReQ==","signatures":[{"sig":"MEYCIQDQ9a3n4QR2e8BD2iq5ZGcYk1nTblcrGmY8TosyNMwG2AIhAOphWJXqhTAwThfhIAXX12aONV2sZkDZQ0lLKHzJMFOi","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7068504},"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":"43618007acf64849b4164170ac62419475f4ec32","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.63_1782309779602_0.784184796833145","host":"s3://npm-registry-packages-npm-production"}},"0.1.64":{"name":"@hasna/projects","version":"0.1.64","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":"Andrei Hasna <andrei@hasna.com>","license":"Apache-2.0","_id":"@hasna/projects@0.1.64","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"5e86bc22144b3fb48a1a17800865d62e0ce1c6b1","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.64.tgz","fileCount":125,"integrity":"sha512-jTQ7Hzm3R+OwWa61NDJv4DudKNBIWh1Ek6FeqRl25wJcMiDO7A0NClwR7Jq044yMnIcnPnuu/GbZhNY2opCiJQ==","signatures":[{"sig":"MEYCIQCi8L49yhnqm9QB3XDDrwzZ+A9m97I8IYJW/YDT334UogIhANlmYt36/vs8AlNYA3YuJb3uthGyZDau1vOHuLXyVmtR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7074541},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","shasum":"5e86bc22144b3fb48a1a17800865d62e0ce1c6b1","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":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-jTQ7Hzm3R+OwWa61NDJv4DudKNBIWh1Ek6FeqRl25wJcMiDO7A0NClwR7Jq044yMnIcnPnuu/GbZhNY2opCiJQ==","repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.8.3","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.64_1782320244832_0.5539014258124151","host":"s3://npm-registry-packages-npm-production"}},"0.1.65":{"name":"@hasna/projects","version":"0.1.65","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.65","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"a6aa5dceee4d93fe50e2525e8f84923f79967db0","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.65.tgz","fileCount":131,"integrity":"sha512-+aHaAITacMbu22XPwRGiL3H5U6TyrIbvoh3b/e4hQ07n5/I14ujD5QtThiEgLcxAbYphEyASyaLRSSLBxRiLiQ==","signatures":[{"sig":"MEQCIDRtyr01KJfmwTxYkHcT85fCq9//sJd6sZJqtAI1RohoAiApV7LmFZ/f/W8St+8CiuKRSI11i4LrOrxCwDIVdU9cEg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7220067},"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":"67201ca3b00799c801a898a69c341c138fd53f6f","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.65_1782472779609_0.8725753132366127","host":"s3://npm-registry-packages-npm-production"}},"0.1.66":{"name":"@hasna/projects","version":"0.1.66","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.66","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"72ac202a23749b3e72ef7820f369706f2089afff","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.66.tgz","fileCount":135,"integrity":"sha512-Rc+trEV+gSM6rW5yaSSf/F0chVfgWxfpiDJhgC4fK3DdEpgievmKUqOH8K0bN/rtruQId2VeTVPd78dqhDIa/Q==","signatures":[{"sig":"MEUCIBHuKoAkVW/SYB2kdgs2q7mYWue1thdG5noa0RXxV37DAiEA0UiyTCaUoGhmwE+lviK0DQ/smGiwM+3tIqV6zyZQ1BY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7264823},"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":"5d57c7fcbdb3d30375bb553599098c29c944c052","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run build"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.66_1782482645305_0.3865299622682692","host":"s3://npm-registry-packages-npm-production"}},"0.1.67":{"name":"@hasna/projects","version":"0.1.67","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.67","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"80e55b6f25e9a786eac587edf356babd28cd9dab","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.67.tgz","fileCount":146,"integrity":"sha512-ACAi0dKpg0Np7pHNKVKAD9eAsKbHEv0TJkxvhvVgqbXPnDbMoKyBYP6tQ7gRHHOt/S+7xbFG2oxddWTfmQgMYQ==","signatures":[{"sig":"MEUCIQC/IyMUyfSuN413uoGKloricKXPJjYLdYtfk4bj5Q43GgIgdFZvorb+YnGU1nuW2LIgu9msdkPpqWYs9VI3iBd1jOw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7432886},"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"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"50bfe7196a703f41745a3e6ed2ef8c65d1547bd3","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/project-store.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.67_1782690614210_0.14235892026917463","host":"s3://npm-registry-packages-npm-production"}},"0.1.68":{"name":"@hasna/projects","version":"0.1.68","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.68","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"7432346b89c6459de2fb2f3287b95098f39a099a","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.68.tgz","fileCount":159,"integrity":"sha512-uWRxO72helOpCn0qAPreE7qXHHnOr21nkg14sXnlFtw5lckFbI1YvBmhACBW9rVMgUqDpVTHBGKL+pLPXVpfyg==","signatures":[{"sig":"MEUCIQCxIVU8PfaXuV8/GO06WNUm+tZgFPtAxANyEYeOJDA6lQIgH5HR9aMc0mRztbbuAZYPy6UQM5g0YKRprJsbUS84E1E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9170173},"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"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"dc4a90d77e0e995a7d0546961e150e23f822f17e","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@hasna/contracts":"^0.2.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.68_1782715979967_0.9567253246738856","host":"s3://npm-registry-packages-npm-production"}},"0.1.69":{"name":"@hasna/projects","version":"0.1.69","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.69","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"d46f61cb516a8189f63a9d61b23ef306f54a9b28","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.69.tgz","fileCount":159,"integrity":"sha512-UWBIbGNhO+TW8XRDWARfcX/9f+RhzHb1N0ObUvocVuiFrQiLnIDyZNQX16Tzz18zfHaNwQUhR10hXOagCwuqrQ==","signatures":[{"sig":"MEUCIQCtCydRaXVQrngrtYwPkWcFc4mMGMRvAfYVjoYFvly3bQIgCnbwyjZhnLgPNIKqyldUaVPZd5lk9f37tGiDSJURWwo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9180362},"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"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"a6a4d54c98e5e611cde5646c24fce23c648b2862","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@hasna/contracts":"^0.2.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.69_1782716665835_0.8998261508356649","host":"s3://npm-registry-packages-npm-production"}},"0.1.70":{"name":"@hasna/projects","version":"0.1.70","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.70","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"2b78e08073574546dfa9c626fab6e7978c268fbb","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.70.tgz","fileCount":159,"integrity":"sha512-bZXeu8UdRKi+RhphcTZ2G6y10z0ZUtEQHCXuAZqFpKGv1tcSVUK6zDDjkFzCo9670rUUUCYLC+Q2UUoIn8xLUg==","signatures":[{"sig":"MEUCIDjcgqOhAhjPAIe9PbNA1/UHXWhfZmDOUEUHkVd37lhIAiEAujfg9wg/mIh/UXlyd5P3uqDe+RrQPgz/h+7RlH4+YWo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9181775},"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"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"f49edad136c0eba7a9969041e5de2caba2da2a26","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@hasna/contracts":"^0.2.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.70_1782719191490_0.4277059747026395","host":"s3://npm-registry-packages-npm-production"}},"0.1.71":{"name":"@hasna/projects","version":"0.1.71","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.71","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"b24fc2ca1c77870e35f4fdfc00c3fca2537e2dd9","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.71.tgz","fileCount":159,"integrity":"sha512-PsNfWYSC7MAIrnCDHCuh6G6bhmVZFnm2Fr+fc6hewWWI/L3vQCy5/z+RviVwT/I0UvcgMyCYam0QqVrkmYqdUw==","signatures":[{"sig":"MEYCIQCPMP39d8CHQCA7t3GKptvTZ49uD3e2dFsbquBnk3gMxwIhAO4JDFwxyVpLlz2f/xIra6+WDdaqZ56hkcDZfIu727Ll","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9181988},"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"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"484ba679e434174f325dc5579ad962e8ecd05fa7","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@hasna/contracts":"^0.2.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.71_1782719915693_0.36946879244553466","host":"s3://npm-registry-packages-npm-production"}},"0.1.72":{"name":"@hasna/projects","version":"0.1.72","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.72","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"32d25aaae1c9080e979047252242f4a3824a5664","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.72.tgz","fileCount":159,"integrity":"sha512-odsWffqN6ATiZ8O11ZnPJDaKNFzy17pei3fJpw/IrLE1KOSKYgu5lRvibWgclXOTbehkqotNk3yYPlQ+43/mVQ==","signatures":[{"sig":"MEYCIQCfX2j/3jES92hvbqoFRNh0hqLX9BZxUCbozxCaUIcz2gIhAPTTeV4pSXO3ee1ijEYS8GuvG/qtG9eQNDJwNBvfyxAr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9182236},"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"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"46015b4a1ce7b239903fe3df5a852e9ac755bc56","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@hasna/contracts":"^0.2.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.72_1782720294741_0.27053777898560294","host":"s3://npm-registry-packages-npm-production"}},"0.1.73":{"name":"@hasna/projects","version":"0.1.73","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.73","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"77349e48ae9f0ece703cb38f1739c0bc1dd8ca71","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.73.tgz","fileCount":159,"integrity":"sha512-KM+iC0ZB8NJR5S1gAPERCL+LaF55nD7vjeBwDA2HHtlbqGMMsLN7Yy2FmL6nphBDBR7txlVtOIiWJ4VD997VCw==","signatures":[{"sig":"MEUCIQDYG42pXXshARkCvfri0jJWPE7xHFoc1ak40GSRe1/I4AIgUFKSKPb9Ogl8Og0NP3cVQOWjgskGOgaU16pB9CKM5nk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9227135},"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"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"08db9f14e3d5d6e4c9f590ab9c95456856a82a5c","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@hasna/contracts":"^0.2.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.73_1782722539511_0.6616031982444381","host":"s3://npm-registry-packages-npm-production"}},"0.1.74":{"name":"@hasna/projects","version":"0.1.74","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.74","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"12fdf65cbde1fae810d8fd2b0e516f3746c4342d","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.74.tgz","fileCount":159,"integrity":"sha512-qe7Om+yxDaRzY1jV1YuQPzj5XDB9kfHpZAP+IWXXohDbHl/WhjrhTCbp1/j3BOe5LvOd9lYkylgveuJZFs+8Fw==","signatures":[{"sig":"MEQCIENqpQcJe0uJmQ/a39lHw4uEiow1qWTat1u5Y4zqkSreAiAfVmd12mfrYVw18o6o0nyl1NG+1EY/110c03hfqfKMPA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9270009},"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"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"3b3f88b4618598f47aaa0614d3ebd02d96eb1bea","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@hasna/contracts":"^0.2.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.74_1782723652130_0.6680985790208778","host":"s3://npm-registry-packages-npm-production"}},"0.1.75":{"name":"@hasna/projects","version":"0.1.75","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.75","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"f51d54b872add4f843580b4cdd4bbdf4f039a2fd","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.75.tgz","fileCount":159,"integrity":"sha512-JVFITnpr7dhI5iT6P15dJ8ca5lFKW5MGKWvTUfTLTSdHYcIV/4u+T8KNz3ag8R3bCQ16P4v1GBmBmbpxSJUa6Q==","signatures":[{"sig":"MEQCIAYNplUfMyHAhQtAfllIkYcq7Sv0nnIN+UEu3zsgMdnPAiAqj2Kcf7myqXIWt5RnplWJw732ppf8ZeMyMSfr6txq0w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9270039},"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"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@hasna/contracts":"^0.2.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.75_1782725287954_0.141809450990529","host":"s3://npm-registry-packages-npm-production"}},"0.1.76":{"name":"@hasna/projects","version":"0.1.76","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.76","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"ee68eefff2a4514a7deac195bef692b63f641612","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.76.tgz","fileCount":159,"integrity":"sha512-5izMlzNQEzO3no61IajnU99X4lTwmR/3nt04Ny+VdXEO+b2PRqqkV1YbdO+03CkxqVYHrzFncm2RrvTO/U817g==","signatures":[{"sig":"MEUCIFstSpTmBjnuF4+ZsONCG3u3tcFdldpKjncLh+0pUDj+AiEAxpZWuyZCObajOoIhg0r0AeV/3Ha7VD1gRhYksapIx18=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9369383},"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"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"328420b4956f45728be21a2643633c6ae7284cb1","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@hasna/contracts":"^0.2.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.76_1782738627821_0.19959214074825682","host":"s3://npm-registry-packages-npm-production"}},"0.1.77":{"name":"@hasna/projects","version":"0.1.77","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.77","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"f1c3d112b1c8616d4e581ec3f8614aeb4833aaf0","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.77.tgz","fileCount":161,"integrity":"sha512-aDXVj+Iy6hYfjxa/qq+Gq7g0n/X2gX1qY7q598PjY7mHAR4I6YyXzvAE00m8aC05GfRqfuKeA6h3A8RkCHPLyQ==","signatures":[{"sig":"MEUCIQDemuzYGaOuRzsm00NRuWAErx/Nfc8jCuBa0n9W6h5OawIgUXZ/MV5ASvEZap1SMdyYjxyZLT2spX3uJeSbzaok8p0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8228893},"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"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"7819fef78acab32c4bd2c4da3b234c62e7ed073d","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/schemas && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@hasna/contracts":"^0.2.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.77_1782749738718_0.6146651718442933","host":"s3://npm-registry-packages-npm-production"}},"0.1.78":{"name":"@hasna/projects","version":"0.1.78","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":"Andrei Hasna <andrei@hasna.com>","license":"Apache-2.0","_id":"@hasna/projects@0.1.78","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js"},"dist":{"shasum":"15e5d668a8765bec1e9740944fee0aa740447e72","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.78.tgz","fileCount":167,"integrity":"sha512-7k6Raypx9xuYWSTIQwcppWak/HJsfqt9uuDcQYGYwUwo846mee7POWGXt9WwGRCw5haMOqymOkwqludJL4bqeQ==","signatures":[{"sig":"MEUCIByAWcrD+YDHM4vS41ue8c5bDL79vOURrvwHWdMd5oXyAiEA+5OEXrAXVRpZA+kOmlWAO8b5xvvQ4xSOVO1Mds6PfCo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8258127},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","shasum":"15e5d668a8765bec1e9740944fee0aa740447e72","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"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/schemas && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-7k6Raypx9xuYWSTIQwcppWak/HJsfqt9uuDcQYGYwUwo846mee7POWGXt9WwGRCw5haMOqymOkwqludJL4bqeQ==","repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.8.3","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"^0.1.3","@hasna/contracts":"^0.2.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.78_1783176371819_0.2088000979019906","host":"s3://npm-registry-packages-npm-production"}},"0.1.79":{"name":"@hasna/projects","version":"0.1.79","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":"Andrei Hasna <andrei@hasna.com>","license":"Apache-2.0","_id":"@hasna/projects@0.1.79","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"347893977c81fd89d16065d43e5f8ee2e53bedb7","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.79.tgz","fileCount":206,"integrity":"sha512-anV23L4AZVsCHtUzfH1kgTRhZX9t4C+DLRM+mdJO5qwyRBG1xgOgLG25TBE9+RaE29+2+dKcuy/yKTm2LHFJzA==","signatures":[{"sig":"MEQCIAWXjYwz1bIGi2TKbO9vhI0TV8EatYeDwWlUkaOZngj3AiAhMVL1JQBtEWQQEet5MaFG5L4naSYPuDbuBmyRErsAfQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8429774},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","shasum":"347893977c81fd89d16065d43e5f8ee2e53bedb7","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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_integrity":"sha512-anV23L4AZVsCHtUzfH1kgTRhZX9t4C+DLRM+mdJO5qwyRBG1xgOgLG25TBE9+RaE29+2+dKcuy/yKTm2LHFJzA==","repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.8.3","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.3.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.1","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.79_1783346344938_0.5315387910927463","host":"s3://npm-registry-packages-npm-production"}},"0.1.83":{"name":"@hasna/projects","version":"0.1.83","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.83","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"c5cc08dfae097a2332412e8e8700d099ac7b23d2","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.83.tgz","fileCount":224,"integrity":"sha512-i+GFOsElIFrv3/Ide1SuhYU17lN92SknD23q5xTulEy5358fmkNfwGut9rub6wjgi7Tb4f0jorLtI/GZwScsyg==","signatures":[{"sig":"MEUCIQCTh2UTllzxBWE3ufqJ/0zl16oPlaLEfD1cbV4puYcllwIgTUv8uNi1YCWTBunqcMqC5ARHWLWMiaDUb9zMBAH7uuw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8631077},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"486cf441f3fac747136c2fbfebb845783ce32ef7","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.1","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.83_1783429868769_0.7243319150503105","host":"s3://npm-registry-packages-npm-production"}},"0.1.84":{"name":"@hasna/projects","version":"0.1.84","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.84","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"7f68df69a651ecd628290f883734ad948db93148","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.84.tgz","fileCount":224,"integrity":"sha512-U498Ee4OO82vHVMutw3pHgE1htx39XMmcJqDcuxZLrGpJXUWR1QqbxRN7VC5S3rRQthDuvrI9+sacZQSPnvRJg==","signatures":[{"sig":"MEUCIF3JgeOVSdZF/50m0fhk+1LEeRgvAQcP55SKD8KgFkRsAiEA7iwfIcxOUZjLLyaNO4ojAccGJJDFA1t+OHTSVxLaWz0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8635736},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./storage":{"types":"./dist/storage.d.ts","import":"./dist/storage.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"c9e5af41964ebef33b6ac99925fcb035f0d54214","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts src/storage.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.7","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.1","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.84_1783430734514_0.7377679247353297","host":"s3://npm-registry-packages-npm-production"}},"0.1.85":{"name":"@hasna/projects","version":"0.1.85","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.85","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"e150d9977525bc17730172cabe20347490810119","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.85.tgz","fileCount":203,"integrity":"sha512-DCa7tz62L4+QuQS4UXKts0cY+CIvGuVibdeEhbgtl5fodJ+qQE0MHouz5P6m4UQvTAw1qke5G4SDMJLHZKAUjQ==","signatures":[{"sig":"MEYCIQDBgTZw9qanCn0cD9Z5vzs21h+ziOD9ESIkscMYKHgJOgIhAPrg4UXnAzuGVFLVon4f2hAazDirVGoIGhelD+RsNOYj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8530543},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"d88637a4f8e560e6c9de8a6aa85652090e230fe5","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3","@hasna/mcp-harness":"file:../open-mcp"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.85_1783519992358_0.5614789588606408","host":"s3://npm-registry-packages-npm-production"}},"0.1.86":{"name":"@hasna/projects","version":"0.1.86","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.86","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"89bf5c01e19d8c643706718d0cb1c883c8c9c28c","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.86.tgz","fileCount":203,"integrity":"sha512-dW19PhN2Ph/nmHavixljdZ+F74cPV8Z+IHy+twmy67K/7sZPthNwxtxPSbEFsyGirWkONw1GF04RmLJwM7vtGg==","signatures":[{"sig":"MEUCIQCf90VI/RKqXcvQuCKjtVnye2F2jtabklDzk83sKSldNQIgXehl3GknAjW2R1UHPysftirge5htIWNGhX2mNdVHUFQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8675586},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"76017dedf7e78966f4195e23974ccc9418a48e8f","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3","@hasna/mcp-harness":"file:../open-mcp"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.86_1783523113188_0.08563467677573944","host":"s3://npm-registry-packages-npm-production"}},"0.1.87":{"name":"@hasna/projects","version":"0.1.87","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.87","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"1089c15cf443f7f2a484aa286d8691f6523eb3d9","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.87.tgz","fileCount":203,"integrity":"sha512-V/5hMrSpLzjrF/7S0RC4Ah+zk0vesE9nYufx0EdUquOqHBz09ji+UhOn8MGPMivFGVlowSzqN+Y92Ky4EMNEwA==","signatures":[{"sig":"MEUCIHRx+rS9OBdbbkFyOYJoGuyOjaovHpEmW6WmCQFNLN6LAiEAypwXJcsmthknmr68iB1s8Kmxiw2PqLZsF+/2/WjheZI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8603846},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"5b9e32a06559843703c1131fe6990a2b46b63ba7","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3","@hasna/mcp-harness":"file:../open-mcp"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.87_1783525898081_0.9154989777864722","host":"s3://npm-registry-packages-npm-production"}},"0.1.88":{"name":"@hasna/projects","version":"0.1.88","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.88","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"f01376f2d815a9ea86eb8a5c0059461395d395fb","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.88.tgz","fileCount":203,"integrity":"sha512-coTRwlUuE5IeY6nKOsN0L1XC84E+v/7UcghMkWZFzW5nhUrVAHZ1PV/2UWBfkko13BUk2XjvW+gE6gIcG6z8JA==","signatures":[{"sig":"MEUCIQDLIaj12e92mJ4LE85txFR4uYoOBmre9IvwabuTMdn36gIgZosgerfyUwjdEuu9ON7Dpg16wk8bZfLsq0X1OCuk5x4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8603846},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"faa3675a934a81b0fdcdcc3f5e6c5c7760c92baf","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3","@hasna/mcp-harness":"file:../open-mcp"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.88_1783527436359_0.30823296317671933","host":"s3://npm-registry-packages-npm-production"}},"0.1.89":{"name":"@hasna/projects","version":"0.1.89","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.89","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"18fd64b546ff0475e96175757c0fd456c522699b","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.89.tgz","fileCount":203,"integrity":"sha512-zkNBjQR/jm1qjunV+C3yDmhdAj70V68ogxY64PT6tRKmF0cvr572d5PTHieBt33KRhyELfFw4vq4dJ9br/Db8A==","signatures":[{"sig":"MEUCIFGnvRLlyecjE4hnhCv30O2rv4VeZX0F0BcHkQID7uTKAiEAm2vcNx+CXcsVZlrx4tVzDi4TIYsKGIQH37JC+C+Er58=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8729661},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"4a90e0ba87f922994932a31529c7208786d11e93","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3","@hasna/mcp-harness":"file:../open-mcp"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.89_1783552776668_0.46922432785045687","host":"s3://npm-registry-packages-npm-production"}},"0.1.92":{"name":"@hasna/projects","version":"0.1.92","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.92","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"de425e597251c85e258b77eb32224e8fa9b62ac6","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.92.tgz","fileCount":215,"integrity":"sha512-ejC/IOpzYYq/NCMsSB2Z4SSTHCyynCJW9WZrCKTjq5e5LS4YXF7NMA63eVHgcNoSeBvLGjQglvDAF/yqc8fSBQ==","signatures":[{"sig":"MEUCIHsHarUGIo+bNkHkxMV0hvL1fcMoj2sV6g2CfM0uiF6ZAiEAymXXuYSYoydgPq6Li8N/0aCHgZZT1XehKGHw+4DGSbA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8730581},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"1679cf0ae48d1a2d2a6e39a85ac2741a2405b66d","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.92_1784907204863_0.061595859045756596","host":"s3://npm-registry-packages-npm-production"}},"0.1.93":{"name":"@hasna/projects","version":"0.1.93","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.93","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"1ea2f4f43b8343763e19215cfb8e507321391d84","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.93.tgz","fileCount":215,"integrity":"sha512-ZwI8FUnThwU004dbpkPZEo8PJ3qHMEvns9+af6sNmu1aB3fApJ5zifTrg1QgNCqY1CrWLUSN0Vo7gitBwPhFXQ==","signatures":[{"sig":"MEQCIB6xGDsrnMv1+Fkq4B5jwJNf8lyp629TIUQw1Gv372OkAiAU/IlqejdOwBptGQIYyiLjokZ/pbmndbZhbTiDfms/Kg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8733753},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"c5b8d298b05b5ec6c2ae01fc72f5f8ac595a472d","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.93_1784925289300_0.3839897710122533","host":"s3://npm-registry-packages-npm-production"}},"0.1.94":{"name":"@hasna/projects","version":"0.1.94","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.94","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"63666786a8ec9ce98f927570c725ede58aaac067","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.94.tgz","fileCount":217,"integrity":"sha512-o691uT040agfdySdaRbyS2VHdl5EtJIMgLqJQ2wIA2Cv+7wjP3D7nSeRhGyx78HpwkW7g7gEMVNhoIvvomTJOg==","signatures":[{"sig":"MEQCIEgsV52SAtU47zTI7mdzUDtGhU0rL5Hpad5q4B5r3oCpAiB4UEqXZYCmIw34fh0AsR4KOhBN92iKUN39ik3encCp3A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8749651},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"1fdc83eb647a86b46fc7e95cb816466a4146d250","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.94_1784925630663_0.6679134799001976","host":"s3://npm-registry-packages-npm-production"}},"0.1.95":{"name":"@hasna/projects","version":"0.1.95","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.95","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"327082a8e4fc9bdb80126aed0e6979d4316b60f5","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.95.tgz","fileCount":217,"integrity":"sha512-mj7A5dwT8L1fhv44cG3gi8ps2FJn/u9BfM+DGMSsiFYayAQfkrh6aiaMDBWDwPcFaVUXtmPGgrCR5KW5zYtGAg==","signatures":[{"sig":"MEUCIGvryRGFGZIpAfLfZerIxe4RdwfTMzLaf2pIqP/4nMnnAiEA8HIPtRa6CQPEYfGC05VUj38CjMPMAnuvm37d/uZosIM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8759265},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.95_1784926474741_0.5519572916174129","host":"s3://npm-registry-packages-npm-production"}},"0.1.96":{"name":"@hasna/projects","version":"0.1.96","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.96","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"c6eb47e2b9b63c382d6f53395388b69e1d609af4","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.96.tgz","fileCount":217,"integrity":"sha512-WHjx5E4c7jhOSwCTuRrDeQ1q/VW3WejnffWhBQLOuAv6iPB2eLOCP77WUDRt37VGRedoM5TadTRQlwOdWbBGdQ==","signatures":[{"sig":"MEYCIQD7cnj5huyALKgMHGkf6rMJmKjl9PcGmKl4HmZ53K181wIhALoFHgfDhwFJBcoqR86kpgxCxdu2Kqw5iM1yHYTD1WuU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8764632},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./dashboard":{"types":"./dist/project-dashboard.d.ts","import":"./dist/project-dashboard.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts src/project-dashboard.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.96_1785414533594_0.6723173367625122","host":"s3://npm-registry-packages-npm-production"}},"0.1.97":{"name":"@hasna/projects","version":"0.1.97","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.97","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"4f3788f19447edadba61814581105f38973e9faf","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.97.tgz","fileCount":203,"integrity":"sha512-mfxmRzKBqneOO5A4c6Vb7l+Vmn/SPB5Jd0DAaL8fhtoG/KIp/FCLnXv6Bl9WqgMOusORLWNgBCSuUlCS0Tfokg==","signatures":[{"sig":"MEYCIQDYTED9G0kAjxdF1s7DA193O81ZKyBzoKswe4BH+t7GsAIhAO6bOGXVT95XdEpM81zPRkTcbC3xDviftEWb1X3b0VrH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7238656},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.97_1785649436132_0.9849354138326711","host":"s3://npm-registry-packages-npm-production"}},"0.1.98":{"name":"@hasna/projects","version":"0.1.98","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.98","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"5ac639624df8c45e62b6c1bbeec24b696148e559","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.98.tgz","fileCount":207,"integrity":"sha512-yOm/Wnrr4Y3q7XfMMb0OL7x7rC+ennQTOTZvk7cV3Sq0LJrGRyr8AYKmxFjVx3k+RAc58cddJCdB3oPtDQ9USw==","signatures":[{"sig":"MEUCIQDOBGbVaPOZ/kg3yiRMRnXeHYBd7cJIWkvtcd6YzOBuHwIgfnPS0b3hM8Mnh/aFyvB2HHJPF7SwEGTkOtXjdvy4OJ0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.98","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7257089},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"e2df79197df52f3ba007461aefcc79c6801e0634","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.98_1785956559728_0.4340963404909537","host":"s3://npm-registry-packages-npm-production"}},"0.1.99":{"name":"@hasna/projects","version":"0.1.99","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.99","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"28a9be01295effcc6fc124c477abe4c4f28df971","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.99.tgz","fileCount":221,"integrity":"sha512-tanScZHapV7vT8vdM6cT2LEwMcjbL5Th/eC4LAXfRkWKP3ojoBUp/ZjiSulfmC7d/bVWGFxp9AcPPdXO7pI01Q==","signatures":[{"sig":"MEYCIQC4nTuWkBZ3v12KDIlIBG5/LzPVaJbElapHtYIpAkETfgIhAO0uAt5kyGi5oTnCWyAn3l9oHq2bmPxqzGkc17yYLBVv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7465243},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.8","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.99_1786105408450_0.006647535549343386","host":"s3://npm-registry-packages-npm-production"}},"0.1.100":{"name":"@hasna/projects","version":"0.1.100","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.100","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"8054e6cbc30d040ebf439e60062b6edd49e2d8b1","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.100.tgz","fileCount":221,"integrity":"sha512-CdXtPtX7d6Cw14DgO6LM4xhTve5cnzWJNUT8ku4s0qpS49FWr08jrnF7/ZHC3mNeQSrxfEjKghf3koVDmzhXyA==","signatures":[{"sig":"MEUCIDkMGJVTHwVfVynOpwDR6B+MUxGAttipBR3eDaGvmho0AiEAuFvkv1pNk4rBYKsgZo2zSwKvGF9hOcRpi0O6s9RdWhA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7467638},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.8","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.100_1786108171576_0.02865632609120672","host":"s3://npm-registry-packages-npm-production"}},"0.1.101":{"name":"@hasna/projects","version":"0.1.101","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.101","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"97c22bc3812810cdde34294efabb91ae96155298","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.101.tgz","fileCount":221,"integrity":"sha512-wsIHrwZgekeRA+jx/hPkrD6Mh8rLo0mM4EwkiUab5+713M1fosaJwUainXAL+QBs9A6Ht10aiabJiHS4wIMd0A==","signatures":[{"sig":"MEQCIFUF3kz+8YWryCRCSv7Xz6tCoBazKxTiDTSOFS9ThI+kAiBQi5Z652svOOIk4ERYPkQ6NE9ZaWyuI0rePp1vDeH3rw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7474528},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.8","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.101_1786113934144_0.730399342897132","host":"s3://npm-registry-packages-npm-production"}},"0.1.102":{"name":"@hasna/projects","version":"0.1.102","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.102","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"9cea0135c90a7c10e3c90f4d18f21b43f9b6e2dc","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.102.tgz","fileCount":221,"integrity":"sha512-+NXIuvIVW0D8++iSL31pOm3ll5WOb12a/ksSDFxjVsrbLjOfkG1mBTmJXvjEb+9uzeVV4d1zEWjgbDyF/hcJFQ==","signatures":[{"sig":"MEQCIE4Cka89uX8JYJ0Zw841nxRTDMMXGEHOLLA8F4VzBVUQAiB0lPXkcuF8qhleatWxl6vlx6OtsPMO5jgNyDc2egAGNg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7474524},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.8","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.102_1786116513776_0.7962848024471585","host":"s3://npm-registry-packages-npm-production"}},"0.1.103":{"name":"@hasna/projects","version":"0.1.103","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.103","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"d24264f779e0e6bf26f827af6f0c607f853d45bf","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.103.tgz","fileCount":225,"integrity":"sha512-qQN2FSCDAMjiob7LACQlPpMCBXwq6MNJHW+3+5pbhYvjBlFU7IV/UAyJnlh+DGPDkhi+sxx+1Y4cOQQTp9M9wQ==","signatures":[{"sig":"MEQCIGCPQJNnrPfu6eiyLdMuQYokx6gyr7GZ+PjEo2T31lZdAiA6BWLsavReI229sdZEmWsRfDWb9HOMXpG96x3zOQxUrQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7525246},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.8","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.103_1786145872700_0.023376476624701326","host":"s3://npm-registry-packages-npm-production"}},"0.1.104":{"name":"@hasna/projects","version":"0.1.104","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.104","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"a248d4fb59022a1d2cc23de0e197f8334c36424a","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.104.tgz","fileCount":230,"integrity":"sha512-WyDM6xaJAkJikyS9/8aMCksg/r3a9cTngQ8P+v5Z31DWbP+ASaM6zkO1MAXvyW9UmpXLQn90UToTohqmkel1ZQ==","signatures":[{"sig":"MEQCIHTo/Jej7Z8ArDDtkEWojqHp0wF8lJMWNm7Z1/t4H3rvAiAgzFYF4Yg8uNabjeb08D/JAA8jPk6HayT8UrMTdYbq9A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.104","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7721109},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"c82e0a57dbe7e1cd8b25661b7b74d9c944d7ea5f","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.104_1786149235386_0.16818878182196384","host":"s3://npm-registry-packages-npm-production"}},"0.1.105":{"name":"@hasna/projects","version":"0.1.105","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.105","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"3b980879f2a2d791b95e6dfd2907316c3ef23800","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.105.tgz","fileCount":236,"integrity":"sha512-bYcD4WKzVWILhUSdQa9C6ZFEBtsfTjgY3B2tCruG9Ad7XACSbh2hTL9ADiD/kWwkyLh/HT6u2vjiAzgeZsRpnQ==","signatures":[{"sig":"MEYCIQCtm3IgaY8jffFqI+pfZtiDOn4bk6p2i7uLKKeBtdfzsgIhAMNqQV2KuOaobodbY6nR44kBAd2E0OcpNvvvCRCl0eE2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.105","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7910437},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"3aee397543dcf4b64a180a0833aabb477d66326c","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.105_1786182666834_0.41718896361014224","host":"s3://npm-registry-packages-npm-production"}},"0.1.106":{"name":"@hasna/projects","version":"0.1.106","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.106","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"7bc48323965e77075d6197a098e5ad82e88977da","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.106.tgz","fileCount":236,"integrity":"sha512-CgA3cmWONMmBXY96x1eSTZHA8bCN4jkseMgv+Zvb91mIhrJ0B7+tVKL9XhGjD9XqWW3V+yvqqnmWL3BKUlGTrQ==","signatures":[{"sig":"MEUCIQCyXGZqUaJThMenMtib7elF9M089w3ek6DZXD1fit33sAIgC5vMcnGk18Job7zUSlzqNZMm4g3cIsXpo7pr1wQU1xQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.106","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7912250},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"bfdcb31b694d216c8626ccd42883eec60213d94f","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.106_1786189639625_0.9077999401942647","host":"s3://npm-registry-packages-npm-production"}},"0.1.107":{"name":"@hasna/projects","version":"0.1.107","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.107","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"26ea42418e38929051e66f173e919e0e039f501b","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.107.tgz","fileCount":240,"integrity":"sha512-P+0pxqP/8W8SgqZGEi+9lz1DFEg3FTOIQLY5QBmChI1ajNeL4zwvcJfZsI0ORzZyfxo0LdlOkIEDB/1KEywvdQ==","signatures":[{"sig":"MEQCIBXkXkZ+kJPojhNu3215aRmtePUk75Y2GTT/C33h4HrQAiB18EQhlXNhQ0BWqzkipaP1+157ojKDOU03Vj2oiDj/Qw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.107","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7926365},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"796eace908bd639039d126c2d27cd7b2af056ea6","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.107_1786195353073_0.2560624589282592","host":"s3://npm-registry-packages-npm-production"}},"0.1.108":{"name":"@hasna/projects","version":"0.1.108","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.108","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"5a598ca9dc4e37197fc46280d5be8cb05218646b","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.108.tgz","fileCount":241,"integrity":"sha512-z0ehtANl6sJFaeTxauT7mTeoQRO0+5TnNlENxkpHLlYIpAF/qx3ItcbMMfmFvJJkRfHaKEF79OBxRiN/fnNE4w==","signatures":[{"sig":"MEUCIQCbi4WlKIy9/sgWFFW5zlX7r/pFQiQoOrUf/ESnrxPb/gIgS0l57Hig3PQiQ9Cydvj8AFkPC2F3HxcZYws+7KkrMFU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.108","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7936147},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"7e4de5ed57e0bd7fa81093055f3190f73ae43455","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.108_1786197689410_0.6369550440670222","host":"s3://npm-registry-packages-npm-production"}},"0.1.109":{"name":"@hasna/projects","version":"0.1.109","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.109","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"4ed05f6b9cde536cbd9fdbd5048b0c8584e0eb86","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.109.tgz","fileCount":246,"integrity":"sha512-mRIVLkWhnR2+ufqKX+9pMdFEuUj6gz+mD0XpGBmQQUVBs98fQ8+m35Ft35VtFkUEjcZh9Ob8ZDJgIrA4E+8OjA==","signatures":[{"sig":"MEUCIDrU9g3fstAa0PNBaT9OJOdPIewFDalRbilIAVZsrTl7AiEArxBa/poxLX+x/WW6WwYPdf8z8Zs3kkiL7zbWEdLDoIE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.109","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7971359},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"e63e911bbf28841178b87b97e9284ad0aa334603","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.109_1786203206361_0.09016230974774908","host":"s3://npm-registry-packages-npm-production"}},"0.1.110":{"name":"@hasna/projects","version":"0.1.110","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.110","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"6276c32248e157ea21f5911d3f51cef3fb3683e2","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.110.tgz","fileCount":247,"integrity":"sha512-WbExWXlHjs6HwLhoreN7xQ8CRMfuFUpsunEkd/cZAt/bh8PiIfAVbkKcQMEu2kZ3JJprs+ur1TM3FfDW6wGBQA==","signatures":[{"sig":"MEUCIQD9c2yVeWfHgL94OCFQaRbejCNa0n/q1cKClIzXn1aw7wIgLFo5GpqcaoVC+ElwoEBNdIgr+XrHMUi7pBTc67yWzuc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.110","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":7991649},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"bbc1bdc43cc70f7604c7bcddef0b4cd5512754d4","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.110_1786209070170_0.21779942327123947","host":"s3://npm-registry-packages-npm-production"}},"0.1.111":{"name":"@hasna/projects","version":"0.1.111","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.111","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"519dc733239021d2bc27fd847d9d71d196ad18fa","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.111.tgz","fileCount":253,"integrity":"sha512-OA8m8QW1vRltp/b6GOp6+vGhLT3iJWbcq77OiIYxuZgK3B4jqbpdna7U6YUdCvJ68pz9TjVaVSxQzXXeFI+uyA==","signatures":[{"sig":"MEYCIQD6npSodqJDt9DTJDDw1QWcklvMrac7DFo1jaYawPzY6wIhALbdaX+AFhZrYAjMk5ZbkzZWHTF3vxOev2qSm6NtkqzG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.111","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8089096},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"7ddc2ee2c5e97cb9706c6ef521e09537e77121dd","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.111_1786211801089_0.756185138349295","host":"s3://npm-registry-packages-npm-production"}},"0.1.112":{"name":"@hasna/projects","version":"0.1.112","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.112","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"5ad96d3009a98bbd28082a00e4cc8240f5cd06f2","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.112.tgz","fileCount":253,"integrity":"sha512-GWtX06TzuJ70YbG04KjYTqW+rW5Clnko8mnX0uL6qRm41O/SMi/m70aVpJ5MxIGLDobuuD3BWTtceFI3aKebfw==","signatures":[{"sig":"MEQCICZrxbj4oBXLXCbdXpVP9UuPS8MSH/9SPoez4GLkvlJeAiBR227NYMU605BuG35whgxUP56Ip+qywQ0pImxIVZwVcg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.112","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8091388},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"1de64de98e7f7a14d95e3260aef183d3eb3a8fde","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.112_1786215530047_0.4272607285005381","host":"s3://npm-registry-packages-npm-production"}},"0.1.113":{"name":"@hasna/projects","version":"0.1.113","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.113","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"31886b61befb866e1170d4902a3f50f56ede2e73","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.113.tgz","fileCount":253,"integrity":"sha512-lM+87H5ch0OqDM4aM5hCR+jjZGTM4VLWzwpKc4kleNFZNbfpkfCxhslScZ8bFLakS5qVMdIkSuOYaO1V2IXb6Q==","signatures":[{"sig":"MEUCIBvwHsAjSl7j3WXpSSMqvKBShgx/I54C3X9iylAP0tp9AiEA473nfE9o/OEy+5PzB5H8VLNkDFMzarJgYxJ8Nz7bDE0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8108345},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.8","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.113_1786229694768_0.011943299022655562","host":"s3://npm-registry-packages-npm-production"}},"0.1.114":{"name":"@hasna/projects","version":"0.1.114","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.114","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"85597ca864e1f39a8475c32a730df6861391e078","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.114.tgz","fileCount":253,"integrity":"sha512-lmbfjxuCv4oNvUPhsKS4JhiqJ4zcykkBxzcVdvS7d7Hn6YcyVV1oeTfsZeIfPzJR4mUqKJXUFd9Lr/pf79t9FA==","signatures":[{"sig":"MEUCIQDTbqZwSgBqyMrIcRolhjcz2LCbaIKr7pKT7EiuyxemkgIgLe3el8A6VchcTFPZpDENFAc92Jt98AjfgIrRJFLTbnI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.114","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8108726},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"3744a1a290e54b5347affa3eab5b928cced1c68c","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/events":"0.1.3","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.114_1786236797427_0.8211699680702316","host":"s3://npm-registry-packages-npm-production"}},"0.1.115":{"name":"@hasna/projects","version":"0.1.115","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.115","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"54809ffbd84032ff16bbf1c4b26f95d491ac3969","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.115.tgz","fileCount":259,"integrity":"sha512-0eOq+8EcuqOutm/pWiFfcRXnw+/1qOURT2fBULoj465+RMbZjgoJxuV3B+QAZttueWx3AY9y+DGl9ehavOU09g==","signatures":[{"sig":"MEYCIQDRAEE1VCLESZ5mBOwdGBfiuLbniwh0qbzzxFN3FtuHfwIhAL10UnRZ24reitdVLxEt4mi1OjPoXRa1pIWYr+MlL5Ju","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.115","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8121368},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"21b96c3fe6abb47ec438c7a9d63ef6f51d0d1911","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.79","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.36","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.115_1786287808502_0.14047579714747638","host":"s3://npm-registry-packages-npm-production"}},"0.1.117":{"name":"@hasna/projects","version":"0.1.117","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.117","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"a0d56cf6e23b0c52e068f44ef1e4415f211be91a","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.117.tgz","fileCount":259,"integrity":"sha512-6vmYGvQNeo+qZp4RN6fFBYFjXkd1RnUOimdUMSzppdbPsVCb5jI+BKMmSK07GT8i/Qxz59ztF/Q0LpOZtSKW7A==","signatures":[{"sig":"MEUCICKUxhqIMpDtMmzj7MpsRhIB2pOXJT62r/r4VqZNh6cSAiEAnCvUUmLWjuFOKGL8uZSvUYljB4oHq4RsajXMsM/1Xkg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8175472},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.79","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.36","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.117_1786292504549_0.6196353319135086","host":"s3://npm-registry-packages-npm-production"}},"0.1.118":{"name":"@hasna/projects","version":"0.1.118","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.118","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"6cef476812c3c8c2615dde1a3fb0226d52a7912c","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.118.tgz","fileCount":259,"integrity":"sha512-ytCbTsd+8xdcQ29hMChzfU2SLVP7m2A7U9DGY0/chMsbT23R3zxRTovP2JV7hgM7jSojuzWbJ5oxdHcR/bRqBA==","signatures":[{"sig":"MEUCIGqsdPHy6s3g/ag3tMkS9lxEx8KlIDaJ0V/sBqKWRaf+AiEArolZBh6yd+CRae3YCLLqQivL0R9H0Ez8mq6XnkoH288=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8185917},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.79","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.36","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.118_1786293969405_0.33608568506430436","host":"s3://npm-registry-packages-npm-production"}},"0.1.119":{"name":"@hasna/projects","version":"0.1.119","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.119","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"62864b70c725ff205f6d221f1cb8a5e5c8612397","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.119.tgz","fileCount":259,"integrity":"sha512-CQFNXFAqAln4aJkBwfVxjL3VMitTHPvxnYnc4+2Mb3OkAvbdu3ULckNpaExPXDpnEZEVCc2UZsP/24fq/bAE+g==","signatures":[{"sig":"MEUCIB4jEkDv0bIMuZZ4qx+RuFrHImbaOFYi7NRNmP1ZJy1UAiEA+lhoPxCJD/GYgTK8frwOv2AWpOrmRXs7ru9O92qmH2g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8186302},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.79","@hasna/contracts":"0.4.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.36","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.119_1786295029572_0.7471596992271226","host":"s3://npm-registry-packages-npm-production"}},"0.1.121":{"name":"@hasna/projects","version":"0.1.121","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.121","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"a977426d803451cea0320e2da90fddf0935aabb0","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.121.tgz","fileCount":268,"integrity":"sha512-jYI2MrJtXvoIau9tKFGXWL68hc6rStWD+/0U8aNlbZlcrSsWlP2CE+Pgji9xhWjfeOO5+f4721unfY5wx31yOw==","signatures":[{"sig":"MEUCIAqlfPh7+oKHobLlsG3EfLqFzpHRSfvPLy3kfEVB8V8WAiEAx10TMVCiSObjoaw8B/DD/3hSvgqsEoqXU4g+Jz1I3ZU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.121","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8495414},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"080147b77589842fdd6950d5ac2b49c65a813290","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.79","@hasna/contracts":"0.10.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.36","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.121_1786306519985_0.21388151078930928","host":"s3://npm-registry-packages-npm-production"}},"0.1.122":{"name":"@hasna/projects","version":"0.1.122","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.122","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"41dd597cbd157260793121737fc129fb8c5fa84d","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.122.tgz","fileCount":268,"integrity":"sha512-8GbaTVQgR8zUKDkDRSwZl6K/NqMrn+UQyIIMuVCHcySvJzCGcui0v40arEJM9d+ssV8YF/BgSJ5x2aVfY7mTWQ==","signatures":[{"sig":"MEYCIQDgBiMjgR6j6O0U2bJ1U8v+Ix0e3A2jJwHuDh8AdOBKDgIhAIhhKIURjsH68bSabeq9jvz0rjMV6Sk1YiUsqFqipqDu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.122","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8526372},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"0e4d7a1a90a6d2e5f82b12f91c671ba086c67ab7","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.79","@hasna/contracts":"0.10.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.36","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.122_1786312048543_0.5749166196907769","host":"s3://npm-registry-packages-npm-production"}},"0.1.123":{"name":"@hasna/projects","version":"0.1.123","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.123","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"2ed9b059027d3c9268aa62ad0e326a184f1df695","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.123.tgz","fileCount":268,"integrity":"sha512-IIOsPccPQRPq3HXvysKlKvhWztNKfMwXhnmwlSRhuk5cEhlU9rjWjvPCvRpg7/mHxy3vjiRCy2uRwqiuatPDog==","signatures":[{"sig":"MEQCIBDTtrnL3wpW0hCRAKkvUPGWwW1LqwGum4r3nMzQFAgcAiAAlxh1s5NhH27TOqhrNHHes0PBcUZN5FcF08MnAyedDA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.123","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8536611},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"f8f87d2f142ccbd4a837818c408f2deba1f9f7bf","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.79","@hasna/contracts":"0.10.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.41","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.123_1786344669126_0.3502687041428283","host":"s3://npm-registry-packages-npm-production"}},"0.1.124":{"name":"@hasna/projects","version":"0.1.124","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.124","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"90d51b4cb205f407fc0ac818a62a3f96a65af0eb","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.124.tgz","fileCount":274,"integrity":"sha512-gFzQWjYrkgxuOJMks2KGv2SOCN23MRY71MvN89OqYLee4XV8goiWmWxfRX9Zoa5R3kVvxHC0ccLiyOt+cg1iQQ==","signatures":[{"sig":"MEUCIGD58vYpBXgSCr2PiqO3Pj0aXA/dcZSRCS5y3ROPk6CGAiEA22D9/cKv1SiwtFVHxa7NMLzyNr/gP9jtbWLaCrXTzjw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8673231},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.8","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.79","@hasna/contracts":"0.10.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.41","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.124_1786356583259_0.4685162080253287","host":"s3://npm-registry-packages-npm-production"}},"0.1.125":{"name":"@hasna/projects","version":"0.1.125","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.125","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"7c88003dee72c8e98b69d1f0df9c39d1cc7c3260","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.125.tgz","fileCount":274,"integrity":"sha512-+JewOzk9B1jtPnplABLwq4VHA/B5PCgFrY8wlGPg65TaWG+nh0MpC+9PcV12p0kJ/mH5S3YvkmfgBmJf/ArA6g==","signatures":[{"sig":"MEUCIQDx0APxHfIrY+/jr/Sj75PIMGf7NA088utAZ0X3AoHDTQIgCQlK2i5nhRdYgmlo5eoq5n7TsK3iEbHCQZ8lZisha0M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8673487},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"7170ca1d1a4473007bc37a8cd22be76ef12d6a05","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.8","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.79","@hasna/contracts":"0.10.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.41","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.125_1786357747436_0.7792586875433276","host":"s3://npm-registry-packages-npm-production"}},"0.1.127":{"name":"@hasna/projects","version":"0.1.127","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.127","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"88846ae9e3e46433f601ed9ded36bb5cbcbdaed4","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.127.tgz","fileCount":276,"integrity":"sha512-cPpTeGrCzsrSFAaH9vjIZVJYKqe88oqKXPl+DvRxa2wOtq79hwvGUqIX4x4NbkaeoGbiwZTq3/kMoPBAQhgMlQ==","signatures":[{"sig":"MEUCIQCaORa4bZ0AZWZONXOAWOk5obYoD3YfeqT1lrADy+8jCgIgH56NfX1XIBemH7HeBNvezjFIUQKHQ253JJRbft79MCo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.127","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8678709},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"6391b1f71cf866f8899c95f5b36d5d7594032e04","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.79","@hasna/contracts":"0.10.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.41","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.127_1786463732801_0.08506420684752891","host":"s3://npm-registry-packages-npm-production"}},"0.1.128":{"name":"@hasna/projects","version":"0.1.128","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.128","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"da2816772e0602952aa011019104ea89c00e0773","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.128.tgz","fileCount":276,"integrity":"sha512-laoUPBkNemN5dcydDdxZfPkokamezPzcXa6nDssP6M4YSOmwXuG11LYe0+2Pqort8cao8sB4FRZXYGTjPiY8CQ==","signatures":[{"sig":"MEUCICmWFhJb3qy1XKSXI45RIgiVSzYFNWLvgvI74lL57m3JAiEAldn4gh6rGjOzw6hlsZLIl5aT/DnZ30SLKlR23xsR0VU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.128","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8737194},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"d49a008b530fba665fa73f2f9eb3f60fc939ea16","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.81","@hasna/contracts":"0.10.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.41","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.128_1786470893468_0.2557284496414092","host":"s3://npm-registry-packages-npm-production"}},"0.1.129":{"name":"@hasna/projects","version":"0.1.129","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.129","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"7809e59dcdd57819dc1480f8657626ef4af37ed2","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.129.tgz","fileCount":278,"integrity":"sha512-4lxnem5hUr1hG3Om7pK65gI6UDu1v7Nyu++iQ3tr6yW7CbY81DhSeTrf8FIs9gtBb0vYLMlU5OZ5Db81ad1D/w==","signatures":[{"sig":"MEUCIQDo6OC1gHOqcyyHVZYxQ8Acqtx5lXkLSniyI/F0QBZ5/AIgS4MxVNqiCoymJWN0hX2U8RtR/JmOwF5ym7/XH7M2XBM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.129","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8741008},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"3fa3c3273b9e8fc33ca05d704e670aaa4e3811f6","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.81","@hasna/contracts":"0.10.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.41","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.129_1786539943962_0.5296990928696017","host":"s3://npm-registry-packages-npm-production"}},"0.1.130":{"name":"@hasna/projects","version":"0.1.130","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.130","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"512a54b9b02bfbd40a574163fed43e352780870e","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.130.tgz","fileCount":282,"integrity":"sha512-0QpBMDNnt41Yg6VCPpqZtWa2U9O64MSiw0BUl3WpMZ5nt5iU0FK4BMxBOEEDxSGS9Mnty8c1EJaOhe3eaWebrw==","signatures":[{"sig":"MEUCIQDJoKkeXH17/kCbHmOQA9hlz2PV8Cl0AbUiXLgQGqsphAIgOpXrIilB/65O7c9gp08pWYFZwChmsXB4PYx4fE4kmZM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@hasna%2fprojects@0.1.130","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":8921848},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"337877b5e073709aa9b8310be1ce95ab60f7bd1c","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:a03dd92c-ebc0-4500-8d8d-1eee4b77d872"}},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.16.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.81","@hasna/contracts":"0.10.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.41","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.130_1786683612772_0.08483646865806604","host":"s3://npm-registry-packages-npm-production"}},"0.1.132":{"name":"@hasna/projects","version":"0.1.132","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.132","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"77d0d6a0af2247d25deedf3e689cb43d43c4534d","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.132.tgz","fileCount":284,"integrity":"sha512-klvXNV6D+6S//RVukXbLctwsGnS21j2cwOSyQsbyz8ZMJTw2S9yFrdNQJPmg/i0rB9isXbHcWxohTRH5J+kJbw==","signatures":[{"sig":"MEQCIFgID9JXv/5nKEpq82n/5jO2LKKB35vyGCz08J1NBQxoAiAmT5KneYawCU6xRoa7Eup+eiNZ3BZtWIrGPOArDyRAXw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7469773},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.81","@hasna/contracts":"0.10.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.41","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.132_1787043523236_0.5648643386123915","host":"s3://npm-registry-packages-npm-production"}},"0.1.133":{"name":"@hasna/projects","version":"0.1.133","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.133","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"bb308dfd73f48d8fc9c30023e89be88f8ebcae6a","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.133.tgz","fileCount":285,"integrity":"sha512-Y7ksJuKiOxg5Dn/9iCCUFijXyyeslnyvMLtmzf4n/u5NzJVO+lNk8kkDE1vlcFa+HtGdoY81CxCbVKbdrTHxWg==","signatures":[{"sig":"MEYCIQDFNwunTqHWYKkGDpCl2wA0CuFTjJVYyZulAJ/kKCk6kgIhAJbQ7krvBfAOWFjSxleX4DQIPeWaBK3+HxwGhoNhx3If","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7535373},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.81","@hasna/contracts":"0.10.2","@json-render/core":"0.19.0","@hasna/conversations":"0.5.41","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.133_1787138568056_0.20704565052319435","host":"s3://npm-registry-packages-npm-production"}},"0.1.134":{"name":"@hasna/projects","version":"0.1.134","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.134","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"d8bdc0ed1b71d748f6a2b023171343291396542e","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.134.tgz","fileCount":285,"integrity":"sha512-WJt3KGdSGdtPJq+vo2fEXQmX8svHath2gDlim5TDVrjBXtM/wz03IXrXVowbM28CdExrRemrGPxKfieTzW39Hg==","signatures":[{"sig":"MEYCIQCjKYG9vnyTpfnxpeCA9NYxJvTijC/nmSehW95tk1tdrAIhAMhFpuzhXD0+vFdtiMGNenFvRI0lZkxTj2Rgp7H+WEOm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7536722},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.19","@hasna/events":"0.1.3","@hasna/mementos":"0.14.81","@hasna/contracts":"0.10.2","@json-render/core":"0.19.0","@hasna/conversations":"0.7.1","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.3.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.134_1787296107806_0.08766967190215191","host":"s3://npm-registry-packages-npm-production"}},"0.1.137":{"name":"@hasna/projects","version":"0.1.137","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.137","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"2e9de1f9fa6754ccf268db23ddfe2f699feec066","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.137.tgz","fileCount":285,"integrity":"sha512-XOXa1gA/E536FoekK6Zn3d/pDzdQUueV7E/kAaGBkKFu76GrjI6ijln+5PQb7uxJk2NK7IBsje+KhdCG7s5/iQ==","signatures":[{"sig":"MEQCIEjZJAVQDbe05+h1Y95urFXqJf952C7/NpKGKqr75h04AiALINEOgsIK5eRB8DYPyv3uw0vCxeF6POBoHQ8ClHjb4Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7537001},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"9374980594cd76e54518d2fd18afb62ab4361053","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.35","@hasna/events":"0.1.3","@hasna/mementos":"0.14.81","@hasna/contracts":"0.13.3","@json-render/core":"0.19.0","@hasna/conversations":"0.7.3","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.5.9"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.137_1787346841776_0.8976331110680458","host":"s3://npm-registry-packages-npm-production"}},"0.1.141":{"name":"@hasna/projects","version":"0.1.141","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.141","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"8a74fcf8aca0aea30e7a9c8ae749b45a649f806d","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.141.tgz","fileCount":285,"integrity":"sha512-9WNDfgVX3sacLnOO/mNXd2y7ibcJdooLqSgPJC2xOJzJ4KykMeftfGihgcgvVKLu5Jp0zJlYMr4VcEbWQKzXHA==","signatures":[{"sig":"MEUCIFWNix/EpJ7AVOEBxwIeSOdwvBqe2d1ImqjeX+psBhRCAiEAgaEJzE2sKXQA4l7+dJ4DMTW7S/9SnN+jC9pAK/boMeU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7543623},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.43","@hasna/events":"0.1.3","@hasna/mementos":"0.14.86","@hasna/contracts":"0.13.4","@json-render/core":"0.19.0","@hasna/conversations":"0.7.5","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.5.11"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.141_1787432216038_0.2063299720245988","host":"s3://npm-registry-packages-npm-production"}},"0.1.145":{"name":"@hasna/projects","version":"0.1.145","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@0.1.145","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"1b58ac8f3a587e93d58318891f92c40e2b7e7e2e","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-0.1.145.tgz","fileCount":285,"integrity":"sha512-cIag6uVPpjRKlCDdkeXbUVWYCUgxITaGmpIsp7vP+pxYG0kLku5mq0EJWGsRhvANPxbTTohDPcxe1U38WhW/dw==","signatures":[{"sig":"MEUCIA7a5xBtDe1udmGwozP9q2J8qbFRJNA1qk7rSxk1NBEtAiEArha3MH+qbRAdTex32AqcyQFTqJUS1hrfU2Feomv9zqk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7544465},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.41","@hasna/events":"0.1.3","@hasna/mementos":"0.14.85","@hasna/contracts":"0.13.4","@json-render/core":"0.19.0","@hasna/conversations":"0.7.4","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.5.11"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_0.1.145_1787458624697_0.8198283638236625","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@hasna/projects","version":"1.0.0","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@1.0.0","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"64c2250a9c6fa1bf7eaea507c9ff8efdd16e38bb","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-1.0.0.tgz","fileCount":285,"integrity":"sha512-WL9ZIxwjcNJZxh83LQ8H+NM2l6mTYUG/p+Vot4nrvwc/qsfa9yZVDvrVrSTj2fOMqxLeJvjFUdkED53IKjXDKg==","signatures":[{"sig":"MEUCIQDTAOuksqZYw/hqjXopz3jP42BA8W3X/dXNPnWi7yd70gIgO871Ka43ci2/ukCufN9aVXMtGPIjLkPQQq6qGvrFK2o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7544548},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.41","@hasna/events":"0.1.3","@hasna/mementos":"0.14.85","@hasna/contracts":"0.13.4","@json-render/core":"0.19.0","@hasna/conversations":"0.7.4","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.6.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_1.0.0_1787503012185_0.9754317930626852","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@hasna/projects","version":"1.0.1","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@1.0.1","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"efe0a2e96067ead1a35eeca3947f259f80a03d59","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-1.0.1.tgz","fileCount":285,"integrity":"sha512-hNNuKj2r2xGwt8K69HQ/fS0JWs0RLQdGKXJ6Rd4lqP/IhddUMFyIV1aHTRfX/J57np0xYt93YShkk3oE/AkNhA==","signatures":[{"sig":"MEUCIQCIxULcCljAOHMfRLaTKJxX4e6v3dCPFUSH0RK4A1tzcwIgOaVTohk6MglenJ5mULaQOVcqiZe0cX7m5xWnmpft8V8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7548588},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"10.9.8","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.41","@hasna/events":"0.1.3","@hasna/mementos":"0.14.85","@hasna/contracts":"0.13.4","@json-render/core":"0.19.0","@hasna/conversations":"0.7.4","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.6.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_1.0.1_1787572956305_0.9186679440360421","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@hasna/projects","version":"1.0.2","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@1.0.2","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"32423bba1eb57704353894f238c626fcc830d2d9","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-1.0.2.tgz","fileCount":291,"integrity":"sha512-RKYMhT+etxOhlpIfBAGeLmdHbpjDdngn95pxE1vieb439AqIEKLULE/E0M/3PfAq0ZT/C1aHPivobYysEkESxw==","signatures":[{"sig":"MEQCIBUHbru57APF5A1b36ncgYPOm93JD6YpcHQt1C/0FoNAAiAHKtTFIJX8FSEVr0Z/tTbsgugQubpuAlM6+48c3sy2pA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7560001},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.41","@hasna/events":"0.1.3","@hasna/mementos":"0.14.85","@hasna/contracts":"0.14.0","@json-render/core":"0.19.0","@hasna/conversations":"0.7.7","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.6.0"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_1.0.2_1787617810687_0.6411773275244239","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@hasna/projects","version":"1.0.3","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@1.0.3","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"e11cf30a5eb2d95fdf81b9a7e44407c1d07285b3","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-1.0.3.tgz","fileCount":287,"integrity":"sha512-/jp7H1X3m5F/0/pTPltJUhJ91FXB9lGfGJZHgttPH0WDZT8rRS7X7s7BVe2vyjzEIgyTALNqKM0HlnQBEhBGPA==","signatures":[{"sig":"MEUCIGud/XoLXudPHW/jM3evdHxfddPH5tVJhL6S72J8MeK/AiEA4963w/2AaVQsY8cRjgx+OM+g4iHlqBxzq7Iv2qWauO4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7529100},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.49","@hasna/events":"0.1.3","@hasna/mementos":"0.14.85","@hasna/contracts":"0.14.0","@json-render/core":"0.19.0","@hasna/conversations":"0.7.8","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.6.4"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_1.0.3_1787686376876_0.6010123268662884","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@hasna/projects","version":"1.0.4","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@1.0.4","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"b1f7143e10f5e313be8ea67406b213eb50e144a3","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-1.0.4.tgz","fileCount":289,"integrity":"sha512-fA9RnbHCjvT5Sb8+AIxENdy6gBLv19Q2kdYSPaKWwD1kWXaq7L63FDijJ3Bbl4UIbU3MjrS9G1hBA7o8dxsPWw==","signatures":[{"sig":"MEQCIE7u5isXi8OOvqRqitTnPJScoHUNT5FEYBchHGBBrvI+AiAKNIRgJ/vlt1l4gWZRcE948bJOi75Wj1GtX5kPRjrNvQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7548014},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"gitHead":"0575dfa7d60109bb10fb9fd4dc24e8928ff18724","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.18.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"22.22.3","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/paths":"0.2.2","@hasna/todos":"0.15.49","@hasna/events":"0.1.3","@hasna/mementos":"0.14.85","@hasna/contracts":"0.14.1","@json-render/core":"0.19.0","@hasna/conversations":"0.7.8","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"^1.2.4","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.6.4"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_1.0.4_1787882270689_0.8100373499210569","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@hasna/projects","version":"1.1.0","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@1.1.0","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"71960fbb8b77c207555eb9e0d879b3d8eec99af7","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-1.1.0.tgz","fileCount":301,"integrity":"sha512-igE63Ryo8TCqpB2lGmEKet4WCNiiCtsOY1QsrxYhFvwlMrmnlXLf4tbUpLfvNRd+rMvW9eIxbKLlXvqVjaSCCg==","signatures":[{"sig":"MEUCIF0BjwzA7EHBuTe0GpXl57OAJKqKgFVS3fFNBhGrTW9AAiEAt26GyisHBYlai4iWAOx+uoP6+RGz4HZurjIJ432gMzM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7677363},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.19.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"26.8.1","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.49","@hasna/events":"0.1.3","@hasna/mementos":"0.14.85","@hasna/contracts":"1.0.1","@json-render/core":"0.19.0","@hasna/conversations":"0.7.8","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"1.3.14","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.6.4"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_1.1.0_1788626956614_0.7596952215875858","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@hasna/projects","version":"1.1.2","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@1.1.2","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"86cb4eb73d929857758ca08e7d4e4a509c1bea82","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-1.1.2.tgz","fileCount":305,"integrity":"sha512-rwSDsN7PqgwMagYD8rFkEkuCXFwVHhLACjjB7gAcPue+JZingox4LQkjrzNBLXP5b4SKgkjRcr14addL/UReWg==","signatures":[{"sig":"MEUCIQD8DB/R2z8xd+VC5wn4w93/adkEdtjCdZcCzEAa5X+8cQIgcu/6aQh8OfLgCeUojC/ABA+lLsgg4NHJVBdTKUX/7uU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7697530},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/projects.git","type":"git"},"_npmVersion":"11.19.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.49","@hasna/events":"0.1.3","@hasna/mementos":"0.14.85","@hasna/contracts":"1.0.2","@json-render/core":"0.19.0","@hasna/conversations":"0.7.8","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"1.3.14","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.6.4"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_1.1.2_1788797143026_0.6265367549768182","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@hasna/projects","version":"1.2.0","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@1.2.0","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"e7db8f0a543e470824ed6ef2b36796499b9671b3","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-1.2.0.tgz","fileCount":185,"integrity":"sha512-bfshz0MQefOUL3YJLcVezn8PLUDzwGJbv58OR5QvH3GXJ7LlC37ofzRle4eKBnjSQIkNP7eCegoSAchtPxJcQg==","signatures":[{"sig":"MEUCIHw2RZJRcrxzgd029bzRBvoWTSjp+zZAU+dBwvWehA96AiEA6ZPqGrKdfOKyCYfr0QiS9vtwm3f7Ku5sX0om9Sxp7uU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDQhdxMu4VI28jwGUxtbMlx8AUQOIUwdTOhdg8VJB8udgIhALtJRF7nJFJ0dArFpoqhIROSQcfEHOfwDTw7kHYATHjz","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9898782},"main":"dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/projects-release-120-20260915/artifact-1.2.0/hasna-projects-1.2.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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/projects-release-120-20260915/artifact-1.2.0/hasna-projects-1.2.0.tgz","overrides":{"undici":"7.29.0"},"_integrity":"sha512-bfshz0MQefOUL3YJLcVezn8PLUDzwGJbv58OR5QvH3GXJ7LlC37ofzRle4eKBnjSQIkNP7eCegoSAchtPxJcQg==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/projects"},"_npmVersion":"11.19.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.49","@hasna/events":"0.1.3","@hasna/mementos":"0.14.85","@hasna/contracts":"1.0.2","@json-render/core":"0.19.0","@hasna/conversations":"0.7.8","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"1.3.14","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.6.4"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_1.2.0_1789519627370_0.7690759014758524","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@hasna/projects","version":"1.2.1","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@1.2.1","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/projects","bugs":{"url":"https://github.com/hasna/projects/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"c2ba6ffca6b98b9bf0e4c61eebf3d0ae8b215c4b","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-1.2.1.tgz","fileCount":185,"integrity":"sha512-FXIw/PmqK3qy+TTBtucRZiwxrIkq+sGF7enPa/L2AnCKwtkZoZh7fJy+hNU0MeN/SiuXFUwJ8hE91AUMt/8ENg==","signatures":[{"sig":"MEQCIBAerh052kcVDVzWj8IgXsjgOA9616Kk7pYH0HanCd/sAiAiwCGZ7XkScF9HL7LjbtnBFBezM1clFuRIJmOt4y5Fcw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAunyle7V2EBJ2LxVgbqo/odXELfmNmBItcovHfwt934AiB4mv0UMDwwe0g58R0TaspviUIaFnkFJDOwWw9JbOVUnw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9899123},"main":"dist/index.js","type":"module","_from":"file:/tmp/skills-estate-20260913-fWRwIon7/projects-release-121-20260916/artifact-1.2.1-v2/hasna-projects-1.2.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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run build && bun run scan:artifact","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"_resolved":"/tmp/skills-estate-20260913-fWRwIon7/projects-release-121-20260916/artifact-1.2.1-v2/hasna-projects-1.2.1.tgz","overrides":{"undici":"7.29.0"},"_integrity":"sha512-FXIw/PmqK3qy+TTBtucRZiwxrIkq+sGF7enPa/L2AnCKwtkZoZh7fJy+hNU0MeN/SiuXFUwJ8hE91AUMt/8ENg==","repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/projects"},"_npmVersion":"11.19.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.49","@hasna/events":"0.1.3","@hasna/secrets":"0.4.2","@hasna/mementos":"0.14.85","@hasna/contracts":"1.1.0","@json-render/core":"0.19.0","@hasna/conversations":"0.7.8","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"1.3.14","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.6.4"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_1.2.1_1789533681207_0.9655204713825716","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@hasna/projects","version":"1.2.2","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@1.2.2","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/projects#readme","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"e461efdf4e0a2450e06319949661106d42c682ae","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-1.2.2.tgz","fileCount":187,"integrity":"sha512-NAxFbUYQpgOKcj/zNwuo5JsZHlt8C3XvUZxPRgRD+XiElYM2sUX5/O+7DoNCW4o1zXewCi0HoLHJKKKBtg98+w==","signatures":[{"sig":"MEUCIBBN//Z3Pl5E6fV4S/M2FsHYeAefWRlywNseRqvpNcerAiEA7jbqOlxQJ8ul/GdifGOot70yGOYEKyTmem2ZS0z5MEU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBOqMoAawQcH9SwSIzbr9vQoe72ylL3cH+X2GTQ/Uw6lAiB3PZVme3ErozF1GQ5IJlnlRr+WyYPA8C+abvLJNKJ4fg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7821655},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run sdk:check && bun run build && bun run scan:artifact","sdk:check":"bun run scripts/check-generated-sdk.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/projects"},"_npmVersion":"11.19.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.49","@hasna/events":"0.1.3","@hasna/secrets":"0.4.2","@hasna/mementos":"0.14.85","@hasna/contracts":"1.1.0","@json-render/core":"0.19.0","@hasna/conversations":"0.7.8","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"1.3.14","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.6.4"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_1.2.2_1789844534534_0.5974557453281972","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"@hasna/projects","version":"1.2.3","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","_id":"@hasna/projects@1.2.3","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"homepage":"https://github.com/hasna/apps/tree/main/apps/projects#readme","bugs":{"url":"https://github.com/hasna/apps/issues"},"bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"dist":{"shasum":"6378bb04e27d59e2547f3698035aa441752b47bc","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-1.2.3.tgz","fileCount":187,"integrity":"sha512-5YCuITusjEY/iAe1fGFqQjy97EFYbqoqZC67ceS4ESwax5h9elJHSJujIi2cCK5YyGVWrjSFOo/LNu3xEhoubQ==","signatures":[{"sig":"MEYCIQD38/WZs27WuzOlDN/Q96Oov08O2IECgoxVtQu2Ag6+/wIhAIrTXoKWMOhRS6HcGKrY7y33TxVUrl5dfFetvDdQ8bbX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFauJFrpu/YAwwWyUgeqZ9C89PSyf3A6/K0vcFgkdItmAiApvNZuLRrB0AXCf17SbVTldMsZCRbbdBbmHJDJ8jGkjQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7832275},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run sdk:check && bun run build && bun run scan:artifact","sdk:check":"bun run scripts/check-generated-sdk.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/projects"},"_npmVersion":"11.19.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"_nodeVersion":"26.7.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.49","@hasna/events":"0.1.3","@hasna/secrets":"0.4.2","@hasna/mementos":"0.14.85","@hasna/contracts":"1.1.0","@json-render/core":"0.19.0","@hasna/conversations":"0.7.8","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"1.3.14","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.6.4"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/projects_1.2.3_1789990088212_0.964344302893628","host":"s3://npm-registry-packages-npm-production"}},"1.2.4":{"_id":"@hasna/projects@1.2.4","bin":{"projects":"dist/cli/index.js","projects-mcp":"dist/mcp/index.js","projects-serve":"dist/serve/index.js"},"bugs":{"url":"https://github.com/hasna/apps/issues"},"dist":{"shasum":"facad0102db8146a6d1a5dc8b0a0600517e5b476","tarball":"https://registry.npmjs.org/@hasna/projects/-/projects-1.2.4.tgz","fileCount":188,"integrity":"sha512-va1xaLsJmqsPA9QmvEhXH7OnIO5gRsvUGZ5657bSNijXXLvNzmk3DLgL4O+sOwxOrpWSTBKJUrtfIOAA4iAPow==","signatures":[{"sig":"MEQCIHCNcIXu0car6wBWPnIug/thTKh6TiJQUzAMvw6AI6otAiAFrpWEslW1Ll2xtKKSQMEz+UrWkp0P+yg3r0mJjNL4Cg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQC7Tc0CmQ7pZnU6KU6+dxx4z2WYHd2abXMnK2yz2a3T+wIgNqYVhrrTgQbUp3L4tS0FnX7DYs2lcc2AzWH3aEbf3ZU="}],"unpackedSize":7838212},"main":"dist/index.js","name":"@hasna/projects","type":"module","types":"dist/index.d.ts","author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"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"},"./serve":{"types":"./dist/serve/app.d.ts","import":"./dist/serve/app.js"},"./project-store":{"types":"./dist/project-store.d.ts","import":"./dist/project-store.js"}},"license":"Apache-2.0","scripts":{"test":"bun test","build":"rm -rf dist && bun build src/cli/index.ts --outdir dist/cli --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/mcp/index.ts --outdir dist/mcp --target bun --external @modelcontextprotocol/sdk --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/serve/index.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/serve/app.ts --outdir dist/serve --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/sdk && bun build src/sdk/index.ts --outdir dist/sdk --target bun --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && bun build src/index.ts src/project-store.ts --outdir dist --target bun --external pg --external @hasna/contracts --external @hasna/contracts/auth --external @hasna/contracts/client --external @hasna/contracts/client/storage --external @hasna/contracts/schemas && tsc --emitDeclarationOnly --outDir dist","dev:cli":"bun run src/cli/index.ts","dev:mcp":"bun run src/mcp/index.ts","prepack":"bun run sdk:check && bun run build && bun run scan:artifact","sdk:check":"bun run scripts/check-generated-sdk.ts","typecheck":"tsc --noEmit","postinstall":"mkdir -p $HOME/.hasna/projects 2>/dev/null || true","sdk:generate":"bun run scripts/generate-sdk.ts","scan:artifact":"bun scripts/artifact-scan.ts","prepublishOnly":"bun run typecheck && bun test && bun run contracts:conformance && contracts no-cloud-scan .","contracts:conformance":"contracts conformance fixtures"},"version":"1.2.4","_npmUser":{"name":"andreihasna2","email":"andrei@hasna.com"},"homepage":"https://github.com/hasna/apps/tree/main/apps/projects#readme","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"overrides":{"undici":"7.29.0"},"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/projects"},"_npmVersion":"11.19.0","description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","directories":{},"maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"_nodeVersion":"26.7.0","dependencies":{"ai":"^6.0.197","pg":"^8.13.3","zod":"3.25.76","chalk":"^5.4.1","nanoid":"^5.0.9","commander":"^13.1.0","@hasna/todos":"0.15.49","@hasna/events":"0.1.3","@hasna/secrets":"0.4.2","@hasna/mementos":"0.14.85","@hasna/contracts":"1.1.0","@json-render/core":"0.19.0","@hasna/conversations":"0.7.8","@modelcontextprotocol/sdk":"^1.12.1","@openrouter/ai-sdk-provider":"^2.9.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"ajv":"8.20.0","@types/pg":"^8.11.11","@types/bun":"1.3.14","typescript":"^5.7.3"},"peerDependencies":{"@hasna/loops":">=0.6.4"},"peerDependenciesMeta":{"@hasna/loops":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/projects_1.2.4_1790025010243_0.8787352320625128"}}},"time":{"created":"2026-04-19T11:10:02.946Z","modified":"2026-09-21T21:10:10.637Z","0.1.16":"2026-04-19T11:10:03.223Z","0.1.17":"2026-04-19T11:13:16.287Z","0.1.18":"2026-04-19T11:33:12.704Z","0.1.19":"2026-04-19T11:38:34.211Z","0.1.20":"2026-04-19T11:42:47.813Z","0.1.21":"2026-04-19T14:37:00.207Z","0.1.23":"2026-04-19T15:24:57.896Z","0.1.24":"2026-04-19T17:36:06.364Z","0.1.25":"2026-04-19T18:11:07.224Z","0.1.26":"2026-04-19T18:39:51.235Z","0.1.27":"2026-04-19T18:41:16.344Z","0.1.28":"2026-04-20T05:59:43.990Z","0.1.29":"2026-04-21T10:27:18.660Z","0.1.30":"2026-04-21T10:32:12.004Z","0.1.31":"2026-04-21T12:37:42.720Z","0.1.32":"2026-04-21T13:01:35.431Z","0.1.33":"2026-04-24T08:00:48.064Z","0.1.34":"2026-04-24T08:07:47.399Z","0.1.35":"2026-04-24T08:11:11.259Z","0.1.36":"2026-04-24T08:59:16.879Z","0.1.37":"2026-04-24T09:10:50.563Z","0.1.38":"2026-04-24T09:31:25.278Z","0.1.39":"2026-04-24T09:53:20.942Z","0.1.40":"2026-04-24T10:13:12.130Z","0.1.41":"2026-04-24T10:21:18.115Z","0.1.42":"2026-04-24T10:35:09.667Z","0.1.43":"2026-05-07T07:59:14.596Z","0.1.44":"2026-05-25T11:45:16.479Z","0.1.45":"2026-05-26T13:32:21.469Z","0.1.46":"2026-05-27T10:19:37.314Z","0.1.47":"2026-05-28T10:08:07.057Z","0.1.48":"2026-05-28T15:32:43.152Z","0.1.49":"2026-06-03T12:44:51.603Z","0.1.50":"2026-06-04T21:31:29.061Z","0.1.51":"2026-06-04T22:01:52.843Z","0.1.52":"2026-06-07T13:53:09.476Z","0.1.53":"2026-06-07T14:43:31.015Z","0.1.54":"2026-06-07T14:45:51.122Z","0.1.55":"2026-06-07T16:43:00.082Z","0.1.56":"2026-06-16T08:38:31.413Z","0.1.57":"2026-06-16T11:20:47.406Z","0.1.58":"2026-06-19T10:57:19.513Z","0.1.59":"2026-06-20T22:22:32.046Z","0.1.60":"2026-06-20T22:37:52.984Z","0.1.62":"2026-06-24T13:53:17.042Z","0.1.63":"2026-06-24T14:02:59.788Z","0.1.64":"2026-06-24T16:57:25.027Z","0.1.65":"2026-06-26T11:19:39.755Z","0.1.66":"2026-06-26T14:04:05.456Z","0.1.67":"2026-06-28T23:50:14.381Z","0.1.68":"2026-06-29T06:53:00.132Z","0.1.69":"2026-06-29T07:04:26.039Z","0.1.70":"2026-06-29T07:46:31.717Z","0.1.71":"2026-06-29T07:58:35.874Z","0.1.72":"2026-06-29T08:04:54.969Z","0.1.73":"2026-06-29T08:42:19.703Z","0.1.74":"2026-06-29T09:00:52.306Z","0.1.75":"2026-06-29T09:28:08.142Z","0.1.76":"2026-06-29T13:10:28.064Z","0.1.77":"2026-06-29T16:15:38.900Z","0.1.78":"2026-07-04T14:46:12.083Z","0.1.79":"2026-07-06T13:59:05.092Z","0.1.83":"2026-07-07T13:11:08.967Z","0.1.84":"2026-07-07T13:25:34.784Z","0.1.85":"2026-07-08T14:13:12.600Z","0.1.86":"2026-07-08T15:05:13.408Z","0.1.87":"2026-07-08T15:51:38.246Z","0.1.88":"2026-07-08T16:17:16.609Z","0.1.89":"2026-07-08T23:19:36.882Z","0.1.92":"2026-07-24T15:33:25.051Z","0.1.93":"2026-07-24T20:34:49.487Z","0.1.94":"2026-07-24T20:40:30.901Z","0.1.95":"2026-07-24T20:54:34.923Z","0.1.96":"2026-07-30T12:28:53.815Z","0.1.97":"2026-08-02T05:43:56.296Z","0.1.98":"2026-08-05T19:02:39.906Z","0.1.99":"2026-08-07T12:23:28.660Z","0.1.100":"2026-08-07T13:09:31.761Z","0.1.101":"2026-08-07T14:45:34.316Z","0.1.102":"2026-08-07T15:28:34.010Z","0.1.103":"2026-08-07T23:37:52.916Z","0.1.104":"2026-08-08T00:33:55.564Z","0.1.105":"2026-08-08T09:51:07.006Z","0.1.106":"2026-08-08T11:47:19.871Z","0.1.107":"2026-08-08T13:22:33.273Z","0.1.108":"2026-08-08T14:01:29.611Z","0.1.109":"2026-08-08T15:33:26.557Z","0.1.110":"2026-08-08T17:11:10.382Z","0.1.111":"2026-08-08T17:56:41.264Z","0.1.112":"2026-08-08T18:58:50.237Z","0.1.113":"2026-08-08T22:54:54.934Z","0.1.114":"2026-08-09T00:53:17.606Z","0.1.115":"2026-08-09T15:03:28.662Z","0.1.117":"2026-08-09T16:21:44.721Z","0.1.118":"2026-08-09T16:46:09.595Z","0.1.119":"2026-08-09T17:03:49.733Z","0.1.121":"2026-08-09T20:15:20.188Z","0.1.122":"2026-08-09T21:47:28.747Z","0.1.123":"2026-08-10T06:51:09.363Z","0.1.124":"2026-08-10T10:09:43.471Z","0.1.125":"2026-08-10T10:29:07.599Z","0.1.127":"2026-08-11T15:55:32.970Z","0.1.128":"2026-08-11T17:54:53.818Z","0.1.129":"2026-08-12T13:05:44.162Z","0.1.130":"2026-08-14T05:00:12.965Z","0.1.132":"2026-08-18T08:58:43.441Z","0.1.133":"2026-08-19T11:22:48.243Z","0.1.134":"2026-08-21T07:08:28.036Z","0.1.137":"2026-08-21T21:14:01.943Z","0.1.141":"2026-08-22T20:56:56.231Z","0.1.145":"2026-08-23T04:17:04.920Z","1.0.0":"2026-08-23T16:36:52.366Z","1.0.1":"2026-08-24T12:02:36.487Z","1.0.2":"2026-08-25T00:30:10.900Z","1.0.3":"2026-08-25T19:32:57.066Z","1.0.4":"2026-08-28T01:57:50.865Z","1.1.0":"2026-09-05T16:49:16.804Z","1.1.2":"2026-09-07T16:05:43.222Z","1.2.0":"2026-09-16T00:47:07.473Z","1.2.1":"2026-09-16T04:41:21.388Z","1.2.2":"2026-09-19T19:02:14.651Z","1.2.3":"2026-09-21T11:28:08.334Z","1.2.4":"2026-09-21T21:10:10.416Z"},"bugs":{"url":"https://github.com/hasna/apps/issues"},"author":{"name":"Andrei Hasna","email":"andrei@hasna.com"},"license":"Apache-2.0","homepage":"https://github.com/hasna/apps/tree/main/apps/projects#readme","keywords":["projects","project-management","mcp","ai","coding-agent","agentic","openrouter","ai-sdk","cli","tmux"],"repository":{"url":"git+https://github.com/hasna/apps.git","type":"git","directory":"apps/projects"},"description":"High-level project management CLI, MCP server, SDK, and AI SDK agent loop for coding agents","maintainers":[{"name":"andreihasna2","email":"andrei@hasna.com"}],"readme":"# @hasna/projects\n\nHigh-level project management CLI, MCP server, and SDK for AI coding agents. A project can be any repository, app, docs folder, scaffold, experiment, or remote-intended project in any folder. Projects tracks roots, recipes, agents, tmux profiles, immutable project events, and prompt-driven AI agent runs.\n\n## Project Resources\n\n- [Changelog](CHANGELOG.md)\n- [Security policy](SECURITY.md)\n- [Contributing guide](CONTRIBUTING.md)\n- [Code of conduct](CODE_OF_CONDUCT.md)\n\n## Install\n\n```bash\nbun install -g @hasna/projects\n```\n\n## CLI\n\nThe app and binary are named `projects`, and the public command surface is project-first.\n\n```bash\n# Prompt mode through AI SDK + OpenRouter\nprojects --dry-run --json \"Plan a new open source project named Log Tools in /tmp/log-tools with tmux\"\nprojects --yes \"Create a docs project in /home/me/docs/new-docs and write a marker\"\nprojects --model openai/gpt-4o-mini --max-steps 8 \"Import this folder as a project\"\n\n# Roots\nprojects roots add --name \"Open Source\" --path /home/me/opensource --kind open-source --path-template \"{slug}\"\nprojects roots list --json\nprojects roots match --path /home/me/opensource/my-app --json\nprojects roots update open-source --github-org hasna --visibility public\n\n# Recipes\nprojects recipes add --name \"TypeScript Library\" --kind open-source --tags typescript,library\nprojects recipes list\nprojects recipes built-ins\nprojects recipes seed-defaults --json\n\n# Agents\nprojects agents add --name \"Codex\" --kind ai --provider openrouter --model openai/gpt-4o-mini\nprojects agents list\n\n# Tmux profiles\nprojects tmux-profiles add --name \"Dev\" --slug dev --session-template \"{slug}-dev\" \\\n  --windows-json '[{\"name\":\"editor\"},{\"name\":\"server\",\"command\":\"bun run dev\"}]'\nprojects tmux-profiles apply dev my-project --dry-run --json\n\n# Projects\nprojects create --name \"My App\" --path /path/to/my-app --stage active --priority high \\\n  --owner hasna --launch-profile dev --start-agent claude --start-command \"claude --resume\" \\\n  --start-session-policy error-if-running \\\n  --start-windows-json '[{\"name\":\"server\",\"command\":\"bun run dev\"}]' \\\n  --todos-project-id todo_123 --brief-id brief_123 --mkdir --git-init --marker --json\nprojects create --name \"Planned App\" --path /tmp/planned --mkdir --dry-run --json\nprojects create --name \"Store Work\" --kind project --mkdir --marker --json  # defaults to $HASNA_PROJECTS_HOME/workspaces/<id>\nprojects start                              # from inside a registered repo\nprojects start notes                  # by slug/id/name/path\nprojects start --json                      # operational structured output\nprojects start --render-spec               # validated JSON Render spec\nprojects start my-app --agent codewith\nprojects start /path/to/existing --agent claude\nprojects start my-app --windows-json '[{\"name\":\"editor\",\"command\":\"code .\"},{\"name\":\"server\",\"command\":\"bun run dev\"}]'\nprojects start /path/to/new-folder --tags family,security --metadata-json '{\"domain\":\"home-security\"}' --dry-run --json\nprojects start my-app --profile dev --agent claude --new\nprojects start my-app --error-if-running --agent none\nprojects start --rename-report --agent codewith\nprojects sessions my-app --unrenamed --json\nprojects start --bulk my-app docs-site service-api --agent opencode --dry-run --json\nprojects start --bulk-file ./project-targets.json --agent claude --dry-run --json\nprojects start --label kind:work-project --dry-run --json\nprojects status my-app --profile dev --json\nprojects store inspect my-app --json\nprojects canvases list my-app --ensure-default --render-spec\nprojects canvases create my-app --name \"Research Board\" --nodes-json '[{\"id\":\"note\",\"position\":{\"x\":0,\"y\":0},\"data\":{\"title\":\"Note\"}}]'\nprojects canvases upsert my-app --slug planning-board --nodes-json '[{\"id\":\"summary\",\"type\":\"projectPanel\",\"position\":{\"x\":0,\"y\":0},\"data\":{\"title\":\"Summary\"}}]'\nprojects canvases compose my-app --spec-json '{\"slug\":\"directory\",\"blocks\":[{\"id\":\"summary\",\"title\":\"Summary\"},{\"id\":\"table\",\"title\":\"Table\",\"columns\":[\"name\",\"role\"],\"rows\":[{\"name\":\"Ada\",\"role\":\"Lead\"}]}],\"links\":[{\"source\":\"summary\",\"target\":\"table\"}]}'\nprojects dashboard snapshot my-app --write --json\nprojects dashboard render my-app --json\nprojects dashboard validate my-app --json\nPROJECTS_DASHBOARD_TOKEN=\"<token>\" projects dashboard serve my-app --host 0.0.0.0 --port 3344\nprojects reports serve --port 3345\nPROJECTS_REPORTS_TOKEN=\"<token>\" projects reports serve --host 0.0.0.0 --port 3345\nprojects loops link my-app daily-check --name \"Daily Check\" --role maintenance\nprojects loops list my-app --json\nprojects import /path/to/existing --json\nprojects import-github hasna/example --root open-source --clone --dry-run --json\nprojects scan-roots --root open-source --repo-prefix project- --clone --json\nprojects sync-roots --root open-source --repo-prefix project- --tags open-source,project --json\nprojects import /path/to/root --bulk --dry-run --json\nprojects list --query app --tags web,ts\nprojects list --label org:hasnaxyz --json\nprojects list --limit 50 --verbose\nprojects list --query app --tags web,ts --json\nprojects list --query app --json --detail compact\nprojects list --query app --json --detail compact --fields slug,status,path\nprojects show my-app --json\nprojects show my-app --verbose\nprojects events list my-app --limit 10 --verbose\nprojects get my-app --json\nprojects update my-app --description \"New description\" --tags web,ts --priority critical --launch-profile dev\nprojects tag my-app security cameras\nprojects untag my-app cameras\nprojects labels add my-app org:hasnaxyz kind:work-project client:foo\nprojects labels list my-app\nprojects labels remove my-app client:foo\nprojects oss matrix --root /home/me/opensource --prefix open- --json\nprojects oss matrix --root /home/me/opensource --limit 50 --no-prs --no-tasks\nprojects store inspect my-app --json\nprojects store ensure my-app --json\nprojects store ensure wks_exact_stable_id --dry-run --json  # required target form on the hosted backend\nprojects store migrate my-app --json          # dry-run plan\nprojects store migrate my-app --apply --json  # explicit move/update\nprojects link my-app --github-url https://github.com/hasna/my-app --todos-project-id todo_123 --todos-task-list-id list_123\nprojects unlink my-app --todos --brief\nprojects locations add my-app /path/to/another-folder --label docs\nprojects locations list my-app\nprojects archive my-app\nprojects unarchive my-app\nprojects delete my-app\n\n# Budgets\nprojects budgets set --project my-app --max-usd 5 --max-total-tokens 100000 --json\nprojects budgets remaining --project my-app --json\nprojects --budget-project my-app --run-budget-tokens 2000 --json \"Plan the next release\"\n\n# Project checks\nprojects doctor my-app --fix --dry-run --json\n\n# Agent evals\nprojects agent-eval --json\nprojects agent-eval --mock --json\nprojects agent-eval --case create-explicit-path,tmux-apply-existing --fail-on-error\n\n# Agent assist — help coding agents orient, decide, and continue\nprojects context my-app --for-agent        # one-shot priming bundle\nprojects next my-app --for-agent           # suggested next actions\nprojects why my-app --for-agent            # resolution trace + fix tips\nprojects handoff my-app --for-agent        # cross-agent/machine handoff bundle\nprojects runs list my-app --for-agent      # prompt-agent run ledger\nprojects runs show <run-id> my-app         # full run detail + tool-call trace\n# All six also emit JSON with -j/--json and are available as MCP tools:\n#   projects_context, projects_next, projects_why, projects_handoff,\n#   projects_runs_list, projects_runs_show\n\n# Conversations channel linkage — every project has one channel\nprojects channel my-app                    # print the project's channel name\nprojects channel my-app --json             # full resolution (class, linked, source)\nprojects channel my-app --ensure           # create the channel if it does not exist\n# The channel name lives on the project record as\n# integrations.conversations_channel; when unset it IS the project slug,\n# normalized. This CLI adds no prefix of its own and strips none — it does not\n# own the fleet naming convention and will not carry a copy of it. (That is a\n# statement about authority, not conformance: plenty of registry slugs do not\n# match the convention. Repairing those is a project-rename decision, not a\n# derivation one.) A project whose channel is not named after its slug says so\n# by setting integrations.conversations_channel, which always wins.\n#\n# Ensure creates the channel but never writes the link back: pinning a derived\n# name would outrank derivation forever and survive a revert. The link is set at\n# project creation, or deliberately by an operator.\n#\n# A pinned channel must be a channel: `create`/`link --conversations-channel`,\n# `update --integrations-json`, the MCP projects_create / projects_update /\n# projects_link tools, the prompt-agent's own projects_update / projects_create\n# / projects_link tools (projects_agent_prompt), the project step of the\n# prefix migration, and a typed conversations channel resource link (whose\n# labels.channel_name is projected onto integrations.conversations_channel —\n# a stale label after a rename is refused, in both the local and the hosted\n# store) refuse a name the conversations app has no channel for (BUG-0063). A\n# name that only resolves as\n# an agent DM silently sent project posts to the DM lane, or failed closed with\n# HTTP 400. The check runs only when the write actually sets or changes the\n# channel, only where the conversations CLI is reachable, and never on an\n# unreadable channel listing (skip with HASNA_PROJECTS_CHANNEL_VERIFY=0).\n# `projects doctor` reports an already-pinned bad channel as\n# WORKSPACE_CHANNEL_MISSING. The hosted store applies the same rule at its own\n# writes — POST /v1/workspaces, PATCH/PUT /v1/workspaces/{id}, POST\n# /v1/workspaces/{id}/guarded-metadata and the resource-link projection — so a\n# direct HTTP/SDK caller that never passes a client-level check is refused too\n# (BUG-0076); the rule is db-free and its probe is the same one-shot CLI call,\n# so a server box without the conversations CLI still cannot invent a refusal.\n# Still not covered by design: a channel DERIVED at create rather than pinned\n# by a caller (the local path ensures it through `projects channel --ensure`\n# after the write; the hosted path has no ensure).\n#\n# The channel class comes from the project record too:\n# integrations.conversations_channel_class if set, else the project kind, else\n# unset — in which case no --class is sent and conversations picks the default.\n# Most projects (kind `generic`) fall in that last bucket.\n# `projects create` and `projects start` ensure the channel automatically\n# (disable with PROJECTS_CHANNEL_ENSURE=0); MCP tool: projects_channel\n# A newly created coding-agent session also posts an online notice to this\n# channel so subscribed agents see it in chat. This is enabled by default;\n# disable it with PROJECTS_AGENT_ONLINE_NOTIFICATIONS=0. Reusing an existing\n# session does not post another online notice.\n\n# Shell completion, including workon\neval \"$(projects completion)\"\neval \"$(projects completion --shell zsh)\"\n```\n\n## Goal-continue Cursor hook (ralph-style)\n\nA `stop` hook lives in `.cursor/hooks.json` + `.cursor/hooks/goal-continue.sh`.\nWhen an agent stops, it checks for an active goal and, if incomplete, blocks the\nstop with a continuation prompt that includes `projects next` suggestions —\nmodeled on the codewith `/goal` slash command but driven as a Cursor hook.\n\nGoal sources (first wins): `./.hasna/goal.md`, `$HASNA_GOAL_FILE`,\n`~/.hasna/goal.md`. Mark a goal complete by adding a `<!-- done -->` line.\n\nEnv knobs: `HASNA_GOAL_SKIP=1` (disable), `HASNA_GOAL_CONTINUE=0` (status only,\nno continuation), `HASNA_GOAL_MAX_SUGGESTIONS=N`. The hook never fails closed.\n\nProjects stores high-level management fields directly on the project record:\n`stage`, `priority`, `owner`, `launch_profile`, `start_agent`,\n`start_command`, `start_session_policy`, `start_windows`, todos links, and\nbrief links. `projects start` and `projects status` use those launch defaults\nunless the command passes an explicit override. By default, `projects start`\ndetects the current repo/project, creates or reuses the project tmux session,\nand ensures base windows named `01` and `02`. Window `01` is the managed\ncoding-agent/work window when a start command is launched; `02` is the\nsecondary workspace. Existing unrelated tmux windows are left alone. Pass\n`--windows-json` or the MCP/API `windows` field to request the exact tmux\nwindow names for a single start/status operation.\n\nMachine-readable outputs for `projects list`, `projects show`/`projects get`,\n`projects status`, `projects start`, `projects sessions`, `projects roots list`,\nand `projects recipes list` can emit validated JSON Render specs with\n`--render-spec`. Existing `--json` payloads preserve their operational fields and\nrender specs are available from `--render-spec` and matching `projects_render_*`\nMCP tools. Claude starts are annotated with `--name` when safe.\nCodewith, Cursor, and OpenCode rename support is reported as manual or\nunsupported unless a stable programmatic rename path is available; Hasna Projects\ndoes not force text into unknown panes. Use `projects start --rename-report` or\n`projects sessions <project> --unrenamed` to inspect rename status. Detailed\nexecution still belongs in `todos`; long-form specs and decisions still belong\nin `brief`.\n\n## Workspace Store\n\nProjects has one canonical physical workspace store under `HASNA_PROJECTS_HOME`,\ndefaulting to `~/.hasna/projects` (resolved by the in-package resolver\nto the XDG data home `~/.local/share/hasna/projects` once the store has been\nmigrated there or `HASNA_DATA_HOME` is set):\n\n- canonical workspace path: `$HASNA_PROJECTS_HOME/workspaces/<workspace_id>/`\n- runtime data path: `$HASNA_PROJECTS_HOME/data/<workspace_id>/`\n- common runtime children: `project.db`, `logs/`, `artifacts/`, and `context/`\n\nRootless new projects default to the canonical workspace path. Explicit\n`--path`, registered roots, imports, and GitHub checkout roots keep their\nrequested paths for compatibility until a user runs an explicit store migration.\nSlugs, names, and org labels are mutable metadata and never define the canonical\nfolder name.\n\n`projects store inspect` reports the canonical workspace/data paths and whether\nthe current primary path is canonical. `projects store ensure` creates missing\nworkspace/data directories, initializes the machine-local `project.db` (local\nmode only), and only sets the canonical path as primary when the project had no\nprimary path. On the hosted backend, ensure requires the complete stable\n`wks_...` id, reads the full project through the producer-bounded guarded\nendpoint, takes its mutation lock through `/v1/locks`, and uses the guarded\nconditional update/receipt path for a missing primary path. It provisions the\nFOLDER layout only: the per-project `project.db` is on-box SQLite, which a\nhosted run never opens or creates (owner ruling 2026-09-07, hasna/apps#1720),\nso the result carries `app_store: null`; `store inspect` likewise reports\n`app_store: null` plus `app_store_unavailable` naming the opt-in. Slugs and\npartial ids are refused before transport; the station-local store is never\ncreated from an unbounded or mismatched registry response. `projects store\nmigrate` remains local-only and is dry-run by default; it\nrequires `--apply` or `--yes` to move an existing primary folder into\n`workspaces/<id>`, writes a migration plan under `data/<id>`, preserves git\nhistory by moving the directory, records the old path as a non-primary location,\nupdates `workspaces.primary_path` through the normal location API, rewrites the\nmarker, and verifies the canonical primary path exists.\n\nLabels are project metadata/query filters stored in the existing normalized tag\nlist. Use labels such as `org:hasnaxyz`, `kind:work-project`, and `client:foo`;\nthey do not create canonical folders and are safe to add, remove, or rename.\n\nPer-project app data lives in the canonical runtime data path at\n`$HASNA_PROJECTS_HOME/data/<workspace_id>/project.db`. That project database\nstores project-specific canvases, custom JSON data models/records, and OpenLoops\nlinks. `projects canvases * --render-spec` emits a JSON Render contract for a\nTypeScript React surface using Tailwind, shadcn components, and React Flow as an\ninfinite canvas; a project may have multiple canvases. Use\n`projects canvases upsert <project> --slug <slug>` when an agent or script needs\nidempotent create-or-update behavior for raw React Flow `nodes`/`edges`.\nUse `projects canvases compose <project>` for higher-level generic block specs:\nblocks become `ProjectCanvasCard` nodes, links become React Flow edges, and\ntable-like blocks can carry `columns`/`rows` without creating a one-off\ndomain-specific command.\n\nGeneric block specs are intentionally domain-neutral. The same shape can model a\nreporting hierarchy, a project map, a directory table, a roadmap, or a handoff\nboard:\n\n```json\n{\n  \"slug\": \"directory\",\n  \"name\": \"Directory\",\n  \"layout\": { \"direction\": \"grid\", \"columns\": 2 },\n  \"blocks\": [\n    {\n      \"id\": \"summary\",\n      \"title\": \"Summary\",\n      \"kind\": \"summary\",\n      \"metrics\": [{ \"label\": \"People\", \"value\": 2, \"tone\": \"info\" }]\n    },\n    {\n      \"id\": \"table\",\n      \"title\": \"Directory Table\",\n      \"kind\": \"table\",\n      \"columns\": [\"name\", \"role\"],\n      \"rows\": [{ \"name\": \"Ada\", \"role\": \"Lead\" }]\n    }\n  ],\n  \"links\": [{ \"source\": \"summary\", \"target\": \"table\", \"label\": \"details\" }]\n}\n```\n\nHosted-backend support uses the same connection rule as Credentials and\nConnection below: any resolved credential routes all registry reads and writes\nto the hosted API. This does not move per-project canvases, data records, loop\nlinks, or asset files out of `$HASNA_PROJECTS_HOME/data/<workspace_id>/`. See\nthe Credentials and Connection section and\n`docs/hosted-backend-readiness-contract.md` for the connection contract.\n\n`projects dashboard *` is the Projects-owned viewer surface for agent-managed\nproject folders. The only project-layout convention is the canonical\nper-workspace store (`~/.hasna/projects/workspaces/<workspace_id>/`, see\n`src/lib/project-store-paths.ts`). The retired in-project singular layout is\nmigrated once into that store by `projects doctor --fix` and is never read\nagain. `projects dashboard *` collects provider panels from `todos`, `files`,\n`mailery`, `conversations`, `knowledge`, `mementos`, and `reports`, adds a\nread-only actions panel, validates the result as `hasna.project_snapshot.v1`,\nand renders it as a React Flow Canvas.\nSnapshot, render, and validate are read-only unless `--write` is passed.\n`projects dashboard serve <project>` serves `/dashboard` plus JSON APIs with an\nHTTP-only same-origin cookie; binding to a non-loopback host requires\n`--token`, `PROJECTS_DASHBOARD_TOKEN`, or an explicit `--trust-network` choice.\nDo not put dashboard access tokens in URLs, render specs, reports, or task\nevidence. Dashboard JSON never carries raw private document bodies or arbitrary\nshell commands.\n\n`projects reports serve` serves registered project report files from each\nproject `reports/` directory. It binds to `127.0.0.1` by default. Binding\nreports to a non-loopback host requires `--token`, `PROJECTS_REPORTS_TOKEN`, or\nan explicit `--trust-network` choice; token mode uses an HTTP-only same-origin\ncookie or `Authorization: Bearer` header and does not accept tokens in URLs.\n\nOpenLoops integration uses the `@hasna/loops` SDK as an optional peer. Runtime\ncommands that need live loop state load `@hasna/loops/sdk` dynamically, so Open\nProjects can still manage projects when OpenLoops is not installed.\n\n## OSS Routing Matrix\n\n`projects oss matrix` emits a compact routing matrix for direct child\nrepositories under an OSS workspace root. It is designed for orchestration\nprompts and dispatch loops that need a capped, machine-readable snapshot without\nwalking an entire monorepo tree.\n\n```bash\nprojects oss matrix \\\n  --root /home/hasna/Workspace/hasna/opensource \\\n  --prefix open- \\\n  --json\n```\n\nEach row includes the repo name/path, package name/version/bin metadata from\n`package.json`, git branch/dirty/ahead/behind/remote state, tmux session/window\nhints, latest task refs from `todos`, and latest pull request refs from `gh`\nwhen those tools are available. The default limit is 25 repos, with an enforced\nmaximum of 200. Use `--limit`, `--no-prs`, `--no-tasks`, `--no-tmux`, and\n`--timeout-ms` to keep routing scans fast in large workspaces or offline\ncontexts.\n\n## Credentials and Connection\n\nProjects resolves its credential and its service URL through ONE resolver — the\n`@hasna/contracts` client seam that every hosted Hasna CLI uses. The CLI, the\nMCP server and the `./sdk` export all answer \"which key, from where, against\nwhich service\" identically, and the answer is recomputed on every call, so a\nrotated key is picked up without restarting a shell.\n\n### The five credential tiers, in precedence order\n\n| # | Tier | Where it comes from |\n| --- | --- | --- |\n| 1 | argument | an explicit key or profile passed to `createProjectsClientFromEnv()` / `resolveProjectStore()` |\n| 2 | deliberate env pointer | `HASNA_PROJECTS_API_KEY_OVERRIDE`, `HASNA_PROFILE`, `HASNA_PROJECTS_API_KEY_REF` (a secrets-vault ITEM KEY, never a value) |\n| 3 | macOS Keychain | generic-password item `hasna.credentials.projects.api-key`, account `HASNA_STATION`, else `hostname -s`, else `USER` |\n| 4 | disk | `~/.hasna/projects/config/credentials`, mode 0400 or 0600, read at call time |\n| 5 | process env | `HASNA_PROJECTS_API_KEY` |\n\nTier 5 is legitimate, not deprecated, and prints no notice. It sits BELOW disk\non purpose: a station wrapper that injects the key into one child process is\ncorrect, while a shell `export` goes stale at the next rotation — so when both\nexist, the file on disk wins and the rotation heals immediately.\n\nTiers 1 and 2 are DELIBERATE: if the identity they name cannot be honoured the\ncommand fails rather than authenticating as somebody else.\n\n`HASNA_HOME` replaces the `~/.hasna` root and `HASNA_CONFIG_HOME` replaces the\nconfig root (giving `<HASNA_CONFIG_HOME>/projects/credentials`). XDG variables\nare never read. The retired locations `~/.hasna/fleet-env/`, `~/.hasna/cloud/`,\n`~/.config/hasna/` and any `*-cloud.env` are not inputs.\n\n### The service URL\n\nThe authority follows the same ladder and is optional:\n\n1. `HASNA_PROJECTS_API_URL`\n2. the Keychain `api-url` item (`hasna.credentials.projects.api-url`)\n3. the credentials file\n4. the default fleet gateway `https://api.hasna.com/projects`\n\nThe client appends `/v1`. URLs never need configuring: a key from any tier is\nenough to reach the fleet. When two sources disagree the command refuses rather\nthan sending a credential written for one authority to another.\n\nThe unprefixed `PROJECTS_API_URL` / `PROJECTS_API_KEY` names are still accepted\nas a silent alias for one release; the canonical `HASNA_PROJECTS_*` names always\nwork and win when both are set.\n\n### Environment variables\n\n| Variable | Purpose |\n| --- | --- |\n| `HASNA_PROJECTS_API_KEY` | Tier-5 credential (process env); below disk on purpose |\n| `HASNA_PROJECTS_API_URL` | Authority override; default is the fleet gateway |\n| `HASNA_PROJECTS_API_KEY_OVERRIDE` | Tier-2 deliberate override; never resolved around |\n| `HASNA_PROJECTS_API_KEY_REF` | Tier-2.5 secrets-vault pointer (an item KEY, never a value) |\n| `HASNA_PROFILE` | Tier-2 profile selector on the disk credential tiers |\n| `HASNA_STATION` | Keychain account; else `hostname -s`, else `USER` |\n| `HASNA_HOME` | Replaces the `~/.hasna` root (disk tier and local store) |\n| `HASNA_CONFIG_HOME` | Replaces the config root (`<root>/projects/credentials`) |\n| `HASNA_PROJECTS_LOCAL` / `PROJECTS_LOCAL` | **Explicit opt-in** to the on-box SQLite registry; must be set with no env-declared authority or credential, prints \"local\" on stderr |\n| `HASNA_PROJECTS_DB_PATH` | Local registry path (default `~/.hasna/projects/projects.db`) |\n| `HASNA_PROJECTS_HOME` | Primary workspace store and per-project runtime data root |\n\n`XDG_CONFIG_HOME` is never read, and the retired locations\n`~/.hasna/fleet-env/`, `~/.hasna/cloud/`, `~/.config/hasna/` and any\n`*-cloud.env` are not inputs.\n\n```bash\n# Nothing else is needed — the gateway is the default authority.\nexport HASNA_PROJECTS_API_KEY=\"<API key with projects:read and projects:write>\"\n\n# Or keep it out of the environment entirely:\nsecurity add-generic-password -U -a \"$(hostname -s)\" \\\n  -s hasna.credentials.projects.api-key -w '<key>'\n\n# Or on disk, owner-only:\ninstall -m 600 /dev/null ~/.hasna/projects/config/credentials\nprintf 'HASNA_PROJECTS_API_KEY=%s\\n' '<key>' > ~/.hasna/projects/config/credentials\n```\n\n### Hosted, local, or failed closed — routed on URL and key only\n\nThere is no `*_STORAGE_MODE` switch, no flag, no blank API URL, and no implicit\nlocal fallback.\n\n- **A credential resolves** → hosted. Every registry command goes to\n  `<authority>/v1` with the key as a bearer token. The client carries only the\n  API key — never a database DSN — and the value is never logged, returned, or\n  embedded in output.\n- **An authority is declared but no credential resolves** → the command FAILS\n  LOUD: non-zero exit, an error naming every place the resolver looked, no local\n  SQLite store opened and no local-fallback event.\n- **Nothing configures the fleet and there is no opt-in** → the command FAILS\n  the same way. A silent station must not quietly serve a local dataset that\n  looks like the hosted one (owner ruling 2026-09-04, hasna/apps#1720).\n- **Local mode — only by explicit opt-in.** Set `HASNA_PROJECTS_LOCAL=1`\n  (alias `PROJECTS_LOCAL`) with no authority and no credential declared in the\n  environment: the on-box SQLite registry (`HASNA_PROJECTS_DB_PATH`, else\n  `~/.hasna/projects/projects.db`) serves the run, and exactly one line on\n  stderr says it is local. The opt-in is answered before the resolver runs, so\n  it never touches the Keychain or a credentials file; any env-declared\n  authority or credential outranks it, and a half-configured opt-in run (URL\n  set, no key) still fails loud.\n- **Under a hosted credential, no on-box SQLite is opened — ever.** The moment\n  the ambient environment resolves a hosted authority, the process refuses\n  every open of `projects.db` and of a per-project `project.db`. Commands whose\n  data lives only in those files — `budgets *`, `tmux-profiles *`, `loops *`,\n  project data models/records, the app-store half of `store inspect`,\n  `sessions` (no target), `cleanup-evals`, `agent-eval`, the `register-full`\n  manifest ledger — fail with `REMOTE_COMMAND_UNSUPPORTED` naming\n  `HASNA_PROJECTS_LOCAL=1` instead of reading or creating\n  `~/.hasna/projects/*.db` (there is no hosted `/v1` route for them yet).\n  `store ensure` provisions the folder layout only, and a hosted\n  `create --dry-run` previews against an in-memory scratch registry.\n  `update --canonical-machine` is checked against the machines registry first\n  and names the registered slugs; a server refusal now carries the server's\n  reason (`… -> 400: Machine not found: <slug>`) instead of a bare status.\n\nThe hosted connection moves the global project registry only. Machine-local side\neffects (tmux sessions, git operations, directory creation, rendering) and\nper-project data stay on-box either way: canvases, data records, loop links, and\nasset files live in `$HASNA_PROJECTS_HOME/data/<workspace_id>/`.\n\nThe server side of the hosted connection is `projects-serve`. It runs against PostgreSQL and\nrequires `HASNA_PROJECTS_DATABASE_URL` (or `PROJECTS_DATABASE_URL` /\n`DATABASE_URL`), failing fast without it. API keys are verified per request and\nscoped: `projects:read` for reads, `projects:write` for writes. See the HTTP\nAPI section below for endpoints and key issuance.\n\n`projects create --dry-run` is a true no-write creation plan. It returns planned DB writes, filesystem actions, tmux actions, verification steps, locks, and rollback records without writing rows or files. Creation cleanup remains available through MCP as `projects_cleanup_create`, removing only safe creation artifacts such as the project row, marker file, `.git`, and empty created directory.\n\n## MCP Server\n\nAdd to an MCP client config:\n\n```json\n{\n  \"mcpServers\": {\n    \"projects\": {\n      \"command\": \"projects-mcp\"\n    }\n  }\n}\n```\n\n## Streamable HTTP (MCP)\n\nMCP uses stdio by default. A long-lived Streamable HTTP transport is also available on `127.0.0.1`:\n\n```bash\nprojects-mcp --http              # default port 8871\nMCP_HTTP=1 MCP_HTTP_PORT=8871 projects-mcp\n```\n\nEndpoints: `GET /health` → `{\"status\":\"ok\",\"name\":\"projects\"}`, MCP at `POST/GET /mcp`.\n\n### Project Tools\n\n| Tool | Purpose |\n| --- | --- |\n| `projects_roots_list` / `projects_roots_add` / `projects_roots_show` / `projects_roots_update` / `projects_roots_delete` / `projects_roots_match` | Register, inspect, score, update, and delete root folders/path templates |\n| `projects_recipes_list` / `projects_recipes_add` | Manage recipe defaults for project creation |\n| `projects_agents_list` / `projects_agents_add` | Register human, CLI, service, and AI agents |\n| `projects_tmux_profiles_list` / `projects_tmux_profiles_add` / `projects_tmux_profiles_apply` | Manage reusable tmux sessions/windows |\n| `projects_list` / `projects_show` | Legacy-compatible full project listing and project detail |\n| `projects_search` | Compact bounded project discovery with fields, query scopes, and continuation metadata |\n| `projects_render_list` / `projects_render_show` / `projects_render_start` / `projects_render_status` / `projects_render_sessions` / `projects_render_roots` / `projects_render_recipes` | Emit validated JSON Render specs for project surfaces |\n| `projects_store_inspect` | Inspect canonical project storage and the per-project app store under `$HASNA_PROJECTS_HOME/data/<workspace_id>/project.db` |\n| `projects_canvases_list` / `projects_canvases_create` / `projects_canvases_upsert` / `projects_canvases_compose` / `projects_render_canvas` | Manage, compose, update, and render per-project React Flow canvas records |\n| `projects_loops_link` / `projects_loops_list` | Link project stores to OpenLoops loops and summarize them through `@hasna/loops` |\n| `projects_locations_list` / `projects_locations_add` | Inspect and register additional folder locations for a project |\n| `projects_create` | Plan or create a project anywhere on disk |\n| `projects_start` | Open or reuse a tmux session, ensure default `01`/`02` windows, and launch Codewith, Claude, OpenCode, Cursor, or no tool, with optional exact tmux windows |\n| `projects_tmux_status` | Inspect expected and current tmux session/window status for a project |\n| `projects_cleanup_create` | Clean up DB/files created by a project creation run using rollback records |\n| `projects_import` / `projects_scan_local_roots` | Import existing folders as projects |\n| `projects_import_github` / `projects_scan_roots` / `projects_sync_roots` | Import GitHub repos as local or remote-only projects, including configured GitHub root scans/syncs |\n| `projects_github_publish` / `projects_github_unpublish` | Publish/unlink GitHub project metadata |\n| `projects_link` | Merge external service IDs into project integrations |\n| `projects_unlink` | Clear external service IDs from project integrations |\n| `projects_update` | Update project metadata with audit events |\n| `projects_tag` / `projects_untag` | Add or remove project tags without replacing the full tag list |\n| `projects_archive` / `projects_unarchive` / `projects_delete` | Change project lifecycle status |\n| `projects_doctor` | Validate markers, paths, locations, references, and failed runs |\n| `projects_events_list` / `projects_event_record` | Inspect or record project audit events |\n| `projects_lock` / `projects_unlock` / `projects_locks` | Coordinate project mutations |\n| `projects_agent_eval` | Run prompt-agent eval cases and return success/confidence |\n| `projects_agent_prompt` | Run the AI SDK/OpenRouter project agent loop |\n| `projects_context` / `projects_next` / `projects_why` / `projects_handoff` | Agent-assist bundles: orientation, next-action suggestions, resolution trace, cross-agent handoff |\n| `projects_runs_list` / `projects_runs_show` | Read the prompt-agent run ledger (list + full detail with tool-call trace) |\n\nWorkspace-named MCP aliases are removed from the public contract.\n\n## Prompt Mode\n\nPrompt mode uses AI SDK with OpenRouter. Configure the key with `OPENROUTER_API_KEY`, `PROJECTS_OPENROUTER_API_KEY`, or the local secrets vault. The default model is `openai/gpt-4o-mini`.\n\nMutations require `--yes`. Without approval, mutating tools return structured plans/previews. `--dry-run` forces no-write behavior even if `--yes` is present.\n\nPrompt mode currently owns a machine-local agent-run ledger and therefore\nrequires explicit `HASNA_PROJECTS_LOCAL=1`. Under a hosted Projects authority it\nfails closed before opening SQLite; use the regular CLI or MCP start surfaces\nfor hosted project starts.\n\nThe prompt agent can inspect roots, recipes, agents, tmux profiles, and projects; create/update/tag/untag/archive/delete/import projects; import/publish GitHub repos; link/unlink external integrations; start projects with saved launch defaults; and plan/apply tmux profiles. Machine-local prompt-agent runs remain local-only; shared project mutations use the selected Projects store.\n\n`projects agent-eval` seeds temporary project fixtures into an isolated SQLite database under the eval base path and runs a repeatable prompt suite over root registration/matching, recipe and agent planning, project listing/show/events, create/deduplication, import/scan, update, archive/unarchive, delete/hard-delete, cleanup, verification, tmux planning, GitHub publish/unpublish/import, and integration linking. Live mode uses OpenRouter; `--mock` runs deterministic create-path coverage and skips live-only cases. The JSON summary reports `success_rate`, `confidence`, and `db_path`.\n\nNormal `projects list` output hides prompt-agent eval fixtures. Use `projects list --include-evals` to inspect old fixtures and `projects cleanup-evals --dry-run --json` followed by `projects cleanup-evals --apply` to remove them.\n\n## Compact output defaults\n\nHuman terminal output is compact by default to avoid filling agent context with\nlarge records. List/history commands cap rows, truncate long text and paths, and\nprint a hint for the next detail command. Use `--limit <n>` to raise the row cap,\n`--verbose` for extra table columns, full paths, and diagnostic checks,\n`show`/`events list` for detail workflows, and `--json` for stable\nmachine-readable records.\n\nLegacy `projects list --json` remains a complete, full-record array for script\ncompatibility. New agent and machine callers should opt into the bounded\nenvelope with `--detail compact`; it defaults to 25 rows, minified JSON, and\nthe fields `id,slug,name,status,kind,path`. `path` is the public compact name\nfor the stored `primary_path`. Use `--fields`, `--limit`/`--offset`, and the\nreturned `next_offset`/`next_arguments` to page; use `--all` explicitly for a\ncomplete compact population, `--detail full` for a bounded full-record page,\n`--max-bytes` to lower or raise the 32 KiB page ceiling, and `--pretty` only\nfor interactive formatting. Explicit `--all` uses a 256 KiB ceiling when none\nis supplied and refuses rather than claiming completeness if the population\nstill cannot fit. Byte-clipped pages report `truncated`,\n`omitted_from_page`, and a continuation that resumes at the first omitted row.\nHosted compact reads require the server's `projects.list.v2` filter attestation;\nan older deployment that could ignore query/tag/eval filters is refused rather\nthan returning a mislabeled page. Deploy the matching `projects-serve` before\nrolling out a client that uses these additive compact surfaces.\nThe same fail-closed attestation applies whenever `--query-scope` is explicit,\nincluding human, JSON-array, and render-spec list output; no CLI path may send\nthe new scope and silently accept a legacy producer's unscoped answer.\n\nSearches made through the compact contract default to `--query-scope\ndiscovery` (name, slug, description, and tags), so a common parent folder\ndoes not make nearly every project match. Select `identity`, `structured`, or\nthe path-inclusive `all` scope explicitly when needed. Omitting\n`--query-scope` outside the additive compact contract preserves legacy search\nmembership.\n\nCompact terminal defaults cover the noisy project registry commands plus smaller\nregistry lists such as `projects roots list`, `projects recipes list`,\n`projects agents list`, `projects tmux-profiles list`, `projects locks`,\n`projects locations list`, `projects budgets list`, and `projects doctor`.\nExamples:\n\n```bash\nprojects list --limit 25\nprojects list --query projects --json --detail compact\nprojects list --query projects --query-scope all --json --detail compact --limit 25\nprojects list --json --detail compact --fields slug,status,path --all\nprojects roots list --limit 10 --verbose\nprojects doctor --limit 20 --verbose\nprojects events list my-app --limit 10 --verbose\n```\n\nMCP tools keep their existing full-record defaults for client compatibility.\nWhere supported, pass `compact: true` to receive compact summaries; compact MCP\ncalls accept `limit`, and `verbose: true` returns full records. Prompt-agent\ntools use compact project/event summaries by default; agent tools expose\n`verbose: true` for explicit detail retrieval.\n\nFor non-empty MCP discovery queries, prefer `projects_search`. It is compact\nand bounded by default, uses discovery-scoped matching, returns truthful total\nand continuation fields, accepts a small field projection, and emits minified\nJSON. Keep `projects_list` for legacy or unfiltered enumeration; its existing\ncontract is intentionally unchanged.\n\n## Data Model\n\nCore internal tables:\n\n- `roots`: named base folders, tags, path templates, default kind/recipe/tmux profile, GitHub defaults\n- `recipes`: reusable creation metadata, variables, default tags, and scaffold steps\n- `agents`: human, CLI, service, and AI actors with provider/model/permissions metadata\n- `workspaces`: storage records backing projects with kind, status, root, recipe, path, tags, integrations, and metadata\n- `workspace_locations`: machine-local paths for a project\n- `workspace_events`: immutable project audit events for mutations and runtime actions\n- `agent_runs`: prompt-loop run ledger with tool calls and results\n- `tmux_profiles` / `tmux_profile_windows`: reusable tmux session/window templates\n- `workspace_locks`: short-lived mutation locks\n- `workspace_migration_map`: one-time legacy project-to-workspace mapping\n\nGlobal registry DB path: `~/.hasna/projects/projects.db` (derived from the\nprojects home, so it follows the in-package resolver once the XDG data home\nis adopted)\n\nPer-project app data path: `~/.hasna/projects/data/<workspace_id>/project.db`\n\nHosted-backend readiness contract: `docs/hosted-backend-readiness-contract.md`\n\nPer-project app tables:\n\n- `project_canvases`: React Flow-compatible dashboard/canvas records\n- `project_data_models`: custom JSON data model definitions and render hints\n- `project_data_records`: custom per-model JSON records\n- `project_loop_links`: links to `@hasna/loops` loop ids/names\n\nGlobal registry override: `HASNA_PROJECTS_DB_PATH`\n\nPer-project app store root override: `HASNA_PROJECTS_HOME`\n\nProjects home: `~/.hasna/projects`\n\nOverride: `HASNA_PROJECTS_HOME`\n\n## SDK\n\nThe public SDK exports project-named functions and types. Storage-layer modules still use workspace names internally, but the package boundary is project-first.\n\n```ts\nimport {\n  createProject,\n  updateProject,\n  planProjectCreation,\n  executeProjectCreation,\n  runProjectAgentPrompt,\n  startProject,\n  ensureProjectStore,\n  ensureDefaultProjectCanvas,\n  listProjectCanvases,\n  linkProjectLoop,\n} from \"@hasna/projects\";\n```\n\nPer-project store helpers are also available from `@hasna/projects/project-store`.\n\n## HTTP API (`projects-serve`) & hosted SDK\n\n`projects-serve` is the HTTP surface for `@hasna/projects`. It talks directly\nto PostgreSQL with no local cache or sync in the service.\n\n```sh\n# apply migrations, then serve\nHASNA_PROJECTS_DATABASE_URL=<postgres-connection-string> projects-serve migrate\nHASNA_PROJECTS_DATABASE_URL=<postgres-connection-string> HASNA_PROJECTS_API_SIGNING_KEY=<signing-secret> projects-serve   # :8080\n```\n\nEndpoints:\n\n- `GET /health`, `GET /ready`, `GET /version` → `{status, version}` (unauthenticated)\n- `GET /openapi.json` → the OpenAPI 3.1 document\n- `/v1/*` (API key required, header `x-api-key` or `Authorization: Bearer`):\n  - `GET|POST /v1/projects`, `GET|PATCH|DELETE /v1/projects/{id}`,\n    `POST /v1/projects/{id}/archive|unarchive`, `GET /v1/projects/{id}/events`\n  - `GET|POST /v1/roots`, `GET|PATCH|DELETE /v1/roots/{id}`\n  - `GET|POST /v1/agents`, `GET /v1/agents/{id}`\n  - `GET /v1/machines` (read-only canonical-machine registry)\n  - `GET|POST /v1/recipes`, `GET /v1/recipes/{id}`\n\nReads require the `projects:read` scope; writes require `projects:write`. Issue a\nkey with `contracts issue-key --app projects --scopes projects:*`.\n\nThe typed client is generated from the serve OpenAPI (`bun run sdk:generate`):\n\n```ts\nimport { ProjectsClient, createProjectsClientFromEnv } from \"@hasna/projects/sdk\";\n\n// Credential and authority come from the five-tier @hasna/contracts resolver\n// (never a DSN). With no credential in any tier this THROWS — the SDK has no\n// local fallback.\nconst projects = createProjectsClientFromEnv();\nconst created = await projects.createProject({ name: \"My Project\", tags: [\"demo\"] });\nconst list = await projects.listProjects({ tag: \"demo\" });\nconst discovery = await projects.listProjects({ query: \"billing\", query_scope: \"discovery\", tags: [\"web\", \"ts\"], exclude_evals: true, limit: 25 });\nconst machines = await projects.listMachines();\n```\n\nFor `projects start --actor <id-or-slug>` and the equivalent MCP start tools,\nhosted mode resolves the explicit actor through `GET /v1/agents/{id-or-slug}`\nand sends the returned immutable agent ID on the start event and project update.\nAn omitted actor remains unattributed rather than inventing a local identity.\nHosted actor resolution never opens the on-box Projects database. The\nconfigured authority remains the app base\n`https://api.hasna.com/projects`; clients append `/v1` exactly once.\n\n## Architecture\n\n```text\nsrc/\n├── cli/\n│   ├── index.ts                 # project CLI and prompt entrypoint\n│   └── commands/\n│       ├── workspaces.ts         # project, roots, recipes, agents, tmux profiles\n│       └── completion.ts         # project shell completion\n├── db/\n│   ├── database.ts               # SQLite init/path resolution\n│   ├── project-store.ts          # per-project project.db helpers\n│   ├── schema.ts                 # migrations\n│   └── workspaces.ts             # workspace/root/recipe/agent/tmux services\n├── lib/\n│   ├── workspace-agent.ts        # AI SDK/OpenRouter prompt loop\n│   ├── workspace-github.ts       # GitHub import/publish and integration linking\n│   ├── workspace-plan.ts         # deterministic creation plans/executor\n│   ├── workspace-runtime.ts      # directory/git/marker/tmux runtime actions\n│   ├── workspace-import.ts       # arbitrary folder and registered-root import scanner\n│   ├── workspace-migration.ts    # legacy migration dry-run, backup, and reports\n│   └── workspace-doctor.ts       # marker/path/reference validation\n├── mcp/\n│   └── index.ts                  # project-first MCP server\n├── project-store.ts              # per-project store SDK subpath exports\n├── types/\n│   └── workspace.ts              # internal storage/project domain types\n└── index.ts                      # SDK exports\n```\n\n## License\n\nApache-2.0\n","readmeFilename":"README.md"}