{"_id":"@adamancyzhang/claude-orchestrator","_rev":"16-107f5c678e67cbe7d16c988e48481526","name":"@adamancyzhang/claude-orchestrator","dist-tags":{"latest":"0.4.1"},"versions":{"0.1.0":{"name":"@adamancyzhang/claude-orchestrator","version":"0.1.0","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.1.0","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"083cd504bb1879eb4000ddb5ae57f498586b718a","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.1.0.tgz","fileCount":4,"integrity":"sha512-UT2ymzYM4eqY14dv8hpy7mn0yH0IkDqM1U1CvNd98YxiI/U7e+iMd3ZRjtVJs2CVoxrLUmAIReyksbX0F4vQWw==","signatures":[{"sig":"MEQCIHSZvSx49ASKoJrq+y75ObuQdN2TXDArZckiGXmTLSseAiBYUG4l+tSO+PKVg25TaiowTuV+CAN/596aVo1EeMrCiw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5784},"gitHead":"fa64cee414b2fe17f20557e4682f9093152fdb34","scripts":{"postinstall":"node scripts/install.js"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.1.0_1778399647224_0.6718608348169794","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@adamancyzhang/claude-orchestrator","version":"0.2.0","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.2.0","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"c01ea66ee74ad979c35327d735689946217c00d7","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.2.0.tgz","fileCount":43,"integrity":"sha512-7fcFJpjWYqNo2pBf3U18wfNvPvVVTka7z/12OuCH2uBTXqlCeXv5UzcCCGEZzJdv9URW9FxmHu2VnyxFlx6GaA==","signatures":[{"sig":"MEYCIQDI7YVmqnCEz1NU55v0BN298bdDv6TOqlYw+0lWCBxPuQIhAMVKnvnzY1sZ6DYrQ1tEOd/ruLQRZD4/ao5AAdNTEW7G","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":177760},"type":"module","gitHead":"2f05828551a71293407ce647bcb892e68445bd24","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js --server","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","express":"^4.21.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.0.0","typescript":"^5.6.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.2.0_1778463536840_0.6029841726351841","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@adamancyzhang/claude-orchestrator","version":"0.2.1","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.2.1","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"90a1f1ad24ab37532272517fc34800e494900999","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.2.1.tgz","fileCount":43,"integrity":"sha512-RuSQjKB0EecqqDKmwkVsQxOEPnae7/Dr/R6Cg2jbH6widC7KLO9+a+eXGYMlBp0kHDjd+ohBTgp+pf1e3ifGjg==","signatures":[{"sig":"MEUCIQDZhowGynv4Kcch5qnNRmKXnCneuRQEm/iFQpfANJHSiAIgdlY8p82PkjhSGnIl9rOCxZRtAn8DrsxA5IXEbX7k9mk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":178840},"type":"module","gitHead":"089f1e3416796ad64f8d453fc27be0f7c903b8c6","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js server","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","express":"^4.21.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.0.0","typescript":"^5.6.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.2.1_1778473950273_0.14194678898788493","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@adamancyzhang/claude-orchestrator","version":"0.2.2","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.2.2","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"fd9184e11d98fa7cf718ffd2daab3bfceeba4026","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.2.2.tgz","fileCount":43,"integrity":"sha512-I+I66oD7IkgKJKQZKkj+U1iU/oNfdgnm46Flx+Lyn6PWNJqGmaYgq7mW7pqsxQBtlRM2ACL8oYY/RiFfzHfSqA==","signatures":[{"sig":"MEUCIQCPCzPtRvtrHlAS3DPTj4Evis8jqla/Fv9MbbqdN/Yl0gIgUps6dYAQLla8I8JJA2vI10i18BImqVrlHn/bTLJw9xs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":187299},"type":"module","gitHead":"e330c7e77d34e202e5882e359bb3956dc1a3e199","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js server","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","express":"^4.21.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.0.0","typescript":"^5.6.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.2.2_1778480488642_0.8990470249044091","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@adamancyzhang/claude-orchestrator","version":"0.2.3","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.2.3","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"fea1e8f1b277124d6b44c25e7b44addf3ace0126","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.2.3.tgz","fileCount":43,"integrity":"sha512-lRGt8oT3ABnhrp+7Lbo2M96YSCWzO4e1bqXFJEThP++bf4vC5B/D4cAPRJpKz/c+0m3nthMBT0RgkMYcPsNhKg==","signatures":[{"sig":"MEUCIG0tX4NWs8vFoA3nKqjKCvFqRpmeJ/Cj1JcalxiKNEMCAiEA0ePthVvUJPKIIIf2wnbaJDigzn4onS7cOs8dWWfYA5Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":195164},"type":"module","gitHead":"86e6be976ae3af643bc56d4c68b39a766a2a45ee","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js server","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","express":"^4.21.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.0.0","typescript":"^5.6.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.2.3_1778483071631_0.647914660885013","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@adamancyzhang/claude-orchestrator","version":"0.2.4","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.2.4","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"7a676e5ec8dde83b1f9bbfabed53af89ca47abc9","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.2.4.tgz","fileCount":43,"integrity":"sha512-3LGdrwAyXJRcyeHV4mKCz/K/8xqyRA/XnMFMZiOk1uTwC3SF42fF51egIP9LZGMuwSszpHlAmpoe+ZZ4zQyDUw==","signatures":[{"sig":"MEQCIFsgFgsjnLlDahw3MuTT+jhtgQDGr+QisosJZ+5ZJO73AiAfXO4ZPMGTA2wthpPK907VVgdBXiljohm1DAPN9IGZww==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":199875},"type":"module","gitHead":"521c46eccdbff6f9c4eda4997b0aca66a3d7ba5b","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js server","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","express":"^4.21.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typescript":"^5.6.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.2.4_1778484426965_0.40235092203792244","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@adamancyzhang/claude-orchestrator","version":"0.2.5","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.2.5","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"8fdc6748f2b15dc8cca7384f384ac7d7c423fe28","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.2.5.tgz","fileCount":43,"integrity":"sha512-rmnJa2hP1hu3chwUjn26iMTVguAOK+pXjEYtC9ZcNdT3X6Q+6RPnVLqTFrtg0odc/AQQpXJCDjPV0dc+GAsLsg==","signatures":[{"sig":"MEUCIQCb7/rHySKwlRTzNJXEHEN2y0RTyNfF8CZM7bLYvLV86wIgEkr68jBuhrc5QoA/m892fLjjRjKtFQ+tLYrx+PuLkCw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":200007},"type":"module","gitHead":"289d038b239bbdb11a9ef4e7c0e012abe78c5d5f","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js server","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","express":"^4.21.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typescript":"^5.6.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.2.5_1778485263444_0.5849147794290235","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@adamancyzhang/claude-orchestrator","version":"0.2.6","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.2.6","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"b6df428924e9a45713808fa2c6a4992975683fdb","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.2.6.tgz","fileCount":43,"integrity":"sha512-UGv4cXvep/kNVE1DJIy9uJviXbJZvVDPY2lvlLBkld4dVvBcEmq8KJDLlob7Rx8Uf6fdPIoI6xUw45fSFg6k4w==","signatures":[{"sig":"MEYCIQDEXbfIuGHYomoxdqGOsEffUnAB/81TNdahTYmxD8BjaAIhAJLsOhbTuBA7weWGQ6Mt3P8M2PqrT+6wCvSH+IrK1tP1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":202518},"type":"module","gitHead":"814d942e9e10126a3178e0020bce54dfd05cbf61","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js server","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","express":"^4.21.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typescript":"^5.6.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.2.6_1778486426110_0.7151554485430982","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"@adamancyzhang/claude-orchestrator","version":"0.2.7","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.2.7","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"0689233241c82efaed3af9e504f874840a0cbb07","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.2.7.tgz","fileCount":43,"integrity":"sha512-bi8oAQpvHYCalchDfM0zRV0QdkFfRJ8mtsrg3VbHcYHwlz+tADDtEuSTBGb/UpmpsNKmdHm8gQSyZ/ff4cZ5Jg==","signatures":[{"sig":"MEYCIQDhq3ly5demZmr9TK/GclEw3VMh7NC36b2Z4YB60sNy5gIhAL0KC/TD/m/nZTv0d4amPXs8VV25hUJThkvnbrtQCf6q","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":204036},"type":"module","gitHead":"aba59a657c61405dc0221439d8953acaf4cd8adb","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js server","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","express":"^4.21.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typescript":"^5.6.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.2.7_1778487778453_0.9381958724216035","host":"s3://npm-registry-packages-npm-production"}},"0.2.8":{"name":"@adamancyzhang/claude-orchestrator","version":"0.2.8","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.2.8","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"a8b9de6eb54ba7a50a5ccc49549ca1740756de6a","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.2.8.tgz","fileCount":46,"integrity":"sha512-ae/bYzM+N5G6YXLnN/4XeiCcnMq8RgN7/xKAuSyZKqGB+v+Xmu2wIzOJhNpmIo/N20/8tbfZZZB04kU2gaeqmQ==","signatures":[{"sig":"MEUCIQDm43Q5EvGbGVh05rXsQCVCXJj6sjqFWPUVjThenDXcYAIgePEph/tX+CYXZsGTDvBLHfS5CkwwykK0K1KYNDV8vA4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":217386},"type":"module","gitHead":"266aad2f231faa24c09d472b5463c9adbd02d4ec","scripts":{"test":"vitest run","build":"tsc","start":"node dist/index.js server","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","express":"^4.21.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3","@modelcontextprotocol/sdk":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typescript":"^5.6.0","@types/node":"^22.0.0","@types/express":"^4.17.21"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.2.8_1778495405594_0.7571836423483751","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@adamancyzhang/claude-orchestrator","version":"0.3.0","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.3.0","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"f1c43d3a51328f15950591c77ad00af43d758edd","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.3.0.tgz","fileCount":72,"integrity":"sha512-tlUVsFxiwRN9CizHSIwsgKBeNQBkozzC0UwHLBy+OvDgqhzWbmzldvTsIdK8yR8zODZHEdUD5lrCyW5rjEtFZA==","signatures":[{"sig":"MEUCIQDxVOQKZ0SIF8s+SLWa6VFgdHjeL7JXBl383/Rqu0HW+AIgAueKMi27AgAJzH8Y0gEEF8DoH5yu6mtCJEnd4v0FpDg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":241032},"type":"module","gitHead":"ca963f6848600d426084a32cd3c0e754ac2de224","scripts":{"test":"vitest run","build":"tsc && rm -rf dist/templates && cp -r src/templates dist/templates","start":"node dist/index.js leader","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typescript":"^5.6.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.3.0_1778507594999_0.4155395592333615","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@adamancyzhang/claude-orchestrator","version":"0.3.1","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.3.1","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"3290f0fd5aaf5cffd86bf8a8cf0b5faa66a68bdb","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.3.1.tgz","fileCount":89,"integrity":"sha512-zCGnwWfGlDJVPaTm+QfmrfH9xAd7BOkjCORyya8HLTJLpWUo6SmpqvFi//4L5wdBM9u6WdaX96VG1RUsMRmbHw==","signatures":[{"sig":"MEUCIFnmwyRJM8Y4rce6eI3W/WdrdHwp2V+H3Tr8sQnvx4SqAiEAsfgoqMixoXGXwI9mFJcvP7D2pOw/MKB5ENoahIX4Ieo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":336197},"type":"module","gitHead":"e98ad8f209cec491712c404ff367da48e579234a","scripts":{"test":"vitest run","build":"rm -rf dist && tsc && cp -r src/templates dist/templates && cp -r skills dist/skills","start":"node dist/index.js leader","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typescript":"^5.6.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.3.1_1778574265381_0.04338699679758107","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"@adamancyzhang/claude-orchestrator","version":"0.3.2","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.3.2","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"6913699301fb64e35dbd8c5fa2d321c34913f9d3","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.3.2.tgz","fileCount":101,"integrity":"sha512-+ql/k18+bcGS0HLzJKH6vmppMnKqtFnKatyGMVUFfe+amRc6WiA0T7Gh092Or+En5iPAl+uWYxDEeBYvfMLRtg==","signatures":[{"sig":"MEQCIEq9WuP+i9UMYLjpTwSMZoenqhqBIqB3ebr2BVVVKfO2AiBAS+wyu3vB6c4INAeo3815mr5NI6kI+PRB6lcKtdyzFQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":375909},"type":"module","gitHead":"cda3e9c5749c757021e8f7435e8481252701a1ab","scripts":{"test":"vitest run","build":"rm -rf dist && tsc && cp -r src/templates dist/templates && cp -r skills dist/skills","start":"node dist/index.js leader","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typescript":"^5.6.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.3.2_1778588544312_0.06833271380032846","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@adamancyzhang/claude-orchestrator","version":"0.3.3","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.3.3","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"d40516365a7172b1f3736d657de26105d7dd7c45","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.3.3.tgz","fileCount":101,"integrity":"sha512-GoJnVwM4Cd3GghgQNGcaI08tX+I+Uh1qB3/ZsWohMVOpx60wounr8QLWOIv3jGoGD7Wwe+NXc4QdaINxZDHplA==","signatures":[{"sig":"MEUCIFOemycFYWhz6TsC2SJzQgH01bvwoWm2y8lhUCSxNW9mAiEAhPKAL/ZQvW4IRw2VINDDoeHK2oXty8v+wevycU/ery8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":375270},"type":"module","gitHead":"f4090c3d3e17485e2d78f4ca41fbcd9c7ad2f4dc","scripts":{"test":"vitest run","build":"rm -rf dist && tsc && cp -r src/templates dist/templates && cp -r skills dist/skills","start":"node dist/index.js leader","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typescript":"^5.6.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.3.3_1778594497734_0.16814513141625897","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@adamancyzhang/claude-orchestrator","version":"0.4.0","license":"MIT","_id":"@adamancyzhang/claude-orchestrator@0.4.0","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"bin":{"claude-orchestrator":"bin/claude-orchestrator"},"dist":{"shasum":"5b7c3a295b9d527dc2b6ae151df8a99e68aff72c","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.4.0.tgz","fileCount":125,"integrity":"sha512-sm5jlbkrZ6bpjJ07nOyrV2iLIjo3DxAcS7RVCogNLBCDS923YG3XZyqnhU2drOUx2SnbBwFyKwXajR0dKyklkA==","signatures":[{"sig":"MEYCIQDeVVOQp8KxbLgRoTnbgfjYOcXRgzju7VClmlK8DKB5yAIhAMDz5C+azEKrfMs13KyxWWYrnPp1gcInNexd4a82mAvH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":454140},"type":"module","gitHead":"bc5b0540d312b4d25940ca2c3d99f8adc09c3ca1","scripts":{"test":"vitest run","build":"rm -rf dist && tsc && cp -r templates dist/templates && cp -r skills dist/skills","start":"node dist/index.js leader","test:watch":"vitest","prepublishOnly":"npm run build"},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"repository":{"url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git","type":"git"},"_npmVersion":"10.9.4","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","directories":{},"_nodeVersion":"22.21.1","dependencies":{"zod":"^3.23.0","commander":"^12.0.0","node-zookeeper-client":"^1.1.3"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^4.1.5","typescript":"^5.6.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/claude-orchestrator_0.4.0_1778650824528_0.6773692290680449","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@adamancyzhang/claude-orchestrator","version":"0.4.1","description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","repository":{"type":"git","url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git"},"license":"MIT","type":"module","bin":{"claude-orchestrator":"bin/claude-orchestrator"},"scripts":{"build":"rm -rf dist && tsc && cp -r templates dist/templates && cp -r skills dist/skills","start":"node dist/index.js leader","prepublishOnly":"npm run build","test":"vitest run","test:watch":"vitest"},"dependencies":{"commander":"^12.0.0","node-zookeeper-client":"^1.1.3","zod":"^3.23.0"},"devDependencies":{"@types/node":"^22.0.0","typescript":"^5.6.0","vitest":"^4.1.5"},"_id":"@adamancyzhang/claude-orchestrator@0.4.1","gitHead":"97d8d3d7b11a67bb999fb21ade09589a475cb7d4","bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","_nodeVersion":"22.21.1","_npmVersion":"10.9.4","dist":{"integrity":"sha512-XO5UFceKXZltm1lF3t4od48fipIne1txNkpaH22erIZTNKMKMdKLpZpV3IoqqIjQYd04xrJVa1djJ2/86voNgw==","shasum":"e3e9fedd54bcb9b746df650edfad8d29c7267b94","tarball":"https://registry.npmjs.org/@adamancyzhang/claude-orchestrator/-/claude-orchestrator-0.4.1.tgz","fileCount":176,"unpackedSize":597065,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCmy53ISgan9hYIvkYVGZF+z/zNVG5GvZcjScBTCf3rhAIhAMQHQ99eSIAopaUwwqreMgdV8zj+swlP+/xeUevwQ184"}]},"_npmUser":{"name":"adamancyzhang","email":"adamancyzhang@163.com"},"directories":{},"maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/claude-orchestrator_0.4.1_1778675565476_0.4071862025822377"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-10T07:54:07.147Z","modified":"2026-05-13T12:32:45.757Z","0.1.0":"2026-05-10T07:54:07.354Z","0.2.0":"2026-05-11T01:38:57.026Z","0.2.1":"2026-05-11T04:32:30.435Z","0.2.2":"2026-05-11T06:21:28.842Z","0.2.3":"2026-05-11T07:04:31.764Z","0.2.4":"2026-05-11T07:27:07.120Z","0.2.5":"2026-05-11T07:41:03.594Z","0.2.6":"2026-05-11T08:00:26.245Z","0.2.7":"2026-05-11T08:22:58.595Z","0.2.8":"2026-05-11T10:30:05.758Z","0.3.0":"2026-05-11T13:53:15.146Z","0.3.1":"2026-05-12T08:24:25.550Z","0.3.2":"2026-05-12T12:22:24.456Z","0.3.3":"2026-05-12T14:01:37.883Z","0.4.0":"2026-05-13T05:40:24.679Z","0.4.1":"2026-05-13T12:32:45.657Z"},"bugs":{"url":"https://github.com/adamancyzhang/claude-orchestrator-server/issues"},"license":"MIT","homepage":"https://github.com/adamancyzhang/claude-orchestrator-server#readme","repository":{"type":"git","url":"git+https://github.com/adamancyzhang/claude-orchestrator-server.git"},"description":"Multi-agent orchestration CLI backed by ZooKeeper — register, assign tasks, communicate, share context","maintainers":[{"name":"adamancyzhang","email":"adamancyzhang@163.com"}],"readme":"# Claude Orchestrator\n\n<p align=\"center\">\n  <strong>Turn Claude Code instances into a multi-agent swarm — coordinated through ZooKeeper.</strong>\n  <br/>\n  <em><a href=\"README_zh.md\">中文文档</a></em>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/@adamancyzhang/claude-orchestrator\"><img src=\"https://img.shields.io/npm/v/@adamancyzhang/claude-orchestrator?color=blue\" alt=\"npm\"></a>\n  <a href=\"https://github.com/adamancyzhang/claude-orchestrator-server\"><img src=\"https://img.shields.io/github/license/adamancyzhang/claude-orchestrator-server\" alt=\"license\"></a>\n  <img src=\"https://img.shields.io/badge/node-18%2B-green\" alt=\"node\">\n  <img src=\"https://img.shields.io/badge/typescript-5.6%2B-blue\" alt=\"typescript\">\n  <img src=\"https://img.shields.io/badge/ZooKeeper-3.8%2B-orange\" alt=\"zookeeper\">\n</p>\n\n---\n\n## What is this?\n\n**Claude Orchestrator** runs multiple Claude Code instances as an AI team. Each Worker gets an isolated git worktree with humanized names (Tom, Jerry, Lucy...), auto-processes assigned tasks via `claude -p`, self-evaluates output, and sends structured decisions back to the Leader. The Leader runs a read-only TUI and mechanically routes tasks through the Plan → Build → Verify → Review → Accept responsibility chain.\n\nUnder the hood, ZooKeeper handles coordination: ephemeral nodes for heartbeat, sequential nodes for FIFO task ordering, and watches for real-time notification. Zero external database — all state lives in ZooKeeper.\n\n```\n┌──────────────────────────────────────────────────────┐\n│                     ZooKeeper                         │\n│     /leader  /instances  /tasks  /messages            │\n└────────┬────────────────┬────────────────┬────────────┘\n         │                │                │\n    ┌────┴────┐      ┌────┴────┐      ┌────┴────┐\n    │ Leader  │      │ Worker  │      │ Worker  │\n    │  (TUI)  │      │(worktree)│     │(worktree)│\n    │  Tom    │      │  Jerry   │      │  Lucy   │\n    │planner  │      │ builder  │      │verifier │\n    └─────────┘      └─────────┘      └─────────┘\n```\n\n---\n\n## Quick Start\n\n### 1. Install the CLI\n\n```bash\nnpm install -g @adamancyzhang/claude-orchestrator\n```\n\n### 2. Start ZooKeeper\n\n```bash\ndocker-compose up -d\n```\n\n### 3. Launch Everything\n\n```bash\nclaude-orchestrator run --worker 5\n```\n\nOne command. It:\n- Creates isolated git worktrees for each Worker (`.claude-orchestrator/worktree/{name}/`)\n- Assigns humanized names (Tom, Jerry, Lucy, Thomas, Jack...) and roles (planner, builder, verifier, reviewer, accepter)\n- Copies agent templates and skills into each worktree\n- Starts the Leader TUI\n- Forks Worker child processes (each in its own worktree)\n\n### 4. Use It\n\nType a requirement in the TUI input line and press Enter. The Leader forwards it to a Planner Worker, which decomposes it into a responsibility chain. Each Worker processes its link, self-evaluates, and the Leader routes the next link.\n\n```bash\n# CLI commands (from any terminal)\nclaude-orchestrator push-task --title \"Implement login endpoint\" --priority 0\nclaude-orchestrator send-message --to-name Jerry --content \"Starting on the auth module?\"\nclaude-orchestrator poll-task --status pending\n```\n\n---\n\n## Architecture\n\n### Leader-Worker Model (v0.4)\n\n| Component | What it does | ZK magic |\n|-----------|-------------|----------|\n| **Leader** | Read-only TUI, mechanical message/task routing, merge validation, orphan recovery. Self-processes decompose via claude-cli when template available; otherwise forwards to Planner. | `/leader` EPHEMERAL — exactly one Leader |\n| **Worker** | Isolated git worktree, ZK watch loop, auto-processes messages via `claude -p`, self-evaluates output, auto-commits changes | EPHEMERAL nodes → auto-cleanup on disconnect |\n| **Task Queue** | Push → Claim → Complete (or Block/Fail/Retry). Role-link priority sorting. | Sequential nodes for FIFO, ephemeral claims for atomic locks |\n| **Message Router** | Point-to-point messaging via ZK watches | Persistent-sequential nodes, push notification |\n\n### Worktree Isolation\n\nEach Worker runs in its own `git worktree` under `.claude-orchestrator/worktree/{name}/`. This gives every Worker:\n- **Independent working directory** — no file conflicts\n- **Dedicated git branch** — `claude-orchestrator/{name}-workspace`\n- **Personal CLAUDE.md** — role-specific rules at `.claude-orchestrator/docs/{name}/CLAUDE.md`\n- **Daily directory memory** — `.claude-orchestrator/docs/{name}/YYYY-MM-DD/CLAUDE.md` preserves session context across restarts\n\n### CLI-Native — Zero MCP Server\n\nLeader and Workers each connect directly to ZooKeeper. The Leader is primarily a router: self-processes decompose when template available (otherwise forwards to Planner), creates tasks from ChainDef JSON, mechanically executes EvalDecision JSON. All other AI intelligence runs on Workers via `claude -p`. No HTTP, no SSE, no MCP protocol.\n\n### Responsibility Chain\n\n```\nPlan → Build → Verify → Review → Accept\n```\n\nEach link is a dedicated role. One Worker produces, the next Worker verifies — forming a **closed-loop responsibility chain**. Every output is written to `.claude-orchestrator/docs/{name}/YYYY-MM-DD/` and the next link reads from there. Built-in self-evaluation after every link ensures quality at each step.\n\n---\n\n## CLI Commands\n\n| Command | Description |\n|---------|-------------|\n| `run --worker <n>` | Start full orchestration: Leader TUI + N Workers with worktree isolation |\n| `unregister` | Explicitly unregister an instance |\n| `push-task` | Create a task (optionally assign to someone) |\n| `claim-task` | Grab the next task — atomic, no two instances can claim the same one |\n| `complete-task` | Mark a task done with results |\n| `poll-task` | List tasks, optionally filtered by status |\n| `task-block` | Mark a claimed task as blocked (with reason) |\n| `task-fail` | Mark a claimed task as failed (with reason) |\n| `task-retry` | Re-queue a failed task (retry_count + 1, max 3) |\n| `send-message` | Send a message to a specific instance |\n| `poll-message` | Check your inbox |\n| `delete-message` | Delete a message from your inbox |\n| `config` | Show current configuration |\n\n---\n\n## Directory Memory (CLAUDE.md)\n\nClaude Orchestrator uses a three-layer **CLAUDE.md** system as directory memory:\n\n| Layer | Location | Content |\n|-------|----------|---------|\n| **Team** | Worktree root `CLAUDE.md` | Team roles, directory structure, responsibility chain, git rules |\n| **Personal** | `.claude-orchestrator/docs/{name}/CLAUDE.md` | Role-specific process, output standards, communication rules, prohibited behaviors |\n| **Daily** | `.claude-orchestrator/docs/{name}/YYYY-MM-DD/CLAUDE.md` | Session context, task progress, decisions, blockers |\n\nLayers 1 and 2 are seeded from templates during worktree creation. Layer 3 is created and maintained by Workers themselves during task execution — guided by prompt templates that instruct Claude to manage its own daily memory.\n\n---\n\n## Template Structure\n\n```\ntemplates/\n├── agents/                          ← Worker prompt templates\n│   ├── worker-decompose.md          #   Requirement → chain decomposition\n│   ├── worker-plan.md               #   Planner: blueprint design\n│   ├── worker-build.md              #   Builder: traceable implementation\n│   ├── worker-verify.md             #   Verifier: cross-check Plan vs Build\n│   ├── worker-review.md             #   Reviewer: chain-level quality gate\n│   ├── worker-accept.md             #   Accepter: final Go/No-Go decision\n│   └── worker-evaluate.md           #   Self-evaluation after each link\n└── claude-memory/                   ← Directory memory templates\n    ├── team-claude.md               #   Workspace-level CLAUDE.md\n    ├── personal-claude-planner.md   #   Planner role rules\n    ├── personal-claude-builder.md   #   Builder role rules\n    ├── personal-claude-verifier.md  #   Verifier role rules\n    ├── personal-claude-reviewer.md  #   Reviewer role rules\n    └── personal-claude-accepter.md  #   Accepter role rules\n```\n\nWorker templates are lean — they provide task context and key instructions, then guide Workers to read the corresponding skill file (`.claude/skills/{skill}/SKILL.md`) for detailed process. This keeps prompts focused and prevents LLM attention dispersion.\n\n---\n\n## Skills\n\n| Skill | Role | Description |\n|-------|------|-------------|\n| `task-planning` | Planner | Analyze requirements, define blueprints, break down tasks |\n| `task-execution` | Builder | Claim tasks, implement against blueprints, commit with traceability |\n| `task-verification` | Verifier | Independently verify Builder output against Plan criteria |\n| `task-review` | Reviewer | Review full chain (Plan→Build→Verify) for design consistency |\n| `task-acceptance` | Accepter | Validate final deliverable against business criteria, sign Go/No-Go |\n| `task-traceability` | Foundation | Trace → Execute → Map → Evidence → Record — all roles |\n\n---\n\n## ZooKeeper Node Tree\n\n```\n/claude-orchestrator\n├── leader                     [EPHEMERAL] Leader metadata\n├── instances/{id}             [EPHEMERAL] Instance metadata\n├── tasks/\n│   ├── pending/task-NNNNN     [PERSISTENT_SEQUENTIAL]\n│   ├── claimed/{insId}-task-NNNNN [EPHEMERAL] ← atomic lock\n│   └── completed/task-NNNNN   [PERSISTENT]\n└── messages/{instanceId}/msg-NNNNN [PERSISTENT_SEQUENTIAL]\n```\n\n---\n\n## Why ZooKeeper?\n\n| Concern | ZooKeeper answer |\n|---------|-----------------|\n| Instance lifecycle | Ephemeral nodes → auto-cleanup on crash |\n| Task ordering | Sequential nodes → guaranteed FIFO |\n| Claim atomicity | `create(path, ephemeral=true)` is atomic — only one winner |\n| Leader election | `/leader` EPHEMERAL → exactly one Leader |\n| Change notification | Built-in watches → push, not poll |\n| Dependencies | One dependency (ZK). No database, no HTTP server. |\n\n---\n\n## Roles\n\n| Role | Value | Typical behavior |\n|------|-------|-----------------|\n| Leader | `leader` | Runs TUI, mechanical routing, merge validation, orphan recovery |\n| Planner | `planner` | Decomposes requirements, defines blueprints |\n| Builder | `builder` | Implements per blueprint, produces traceability evidence |\n| Verifier | `verifier` | Cross-checks Builder output against Plan |\n| Reviewer | `reviewer` | Quality gate for design consistency across full chain |\n| Accepter | `accepter` | Final Go/No-Go validation against business criteria |\n\n---\n\n## Installation & Development\n\n### Prerequisites\n\n- Node.js 18+\n- Docker (for ZooKeeper)\n- Claude Code CLI (for Worker message processing)\n\n### From Source\n\n```bash\ngit clone https://github.com/adamancyzhang/claude-orchestrator-server.git\ncd claude-orchestrator-server\n\nnpm install\ndocker-compose up -d\nnpm run build\n\n# Start with 3 Workers\nnode dist/index.js run --worker 3\n```\n\n### Run Tests\n\n```bash\nnpm test                    # Run all tests\nnpm run test:watch          # Watch mode\nnpx vitest run tests/unit/worker-prompt-rendering.test.ts  # Prompt rendering verification\n```\n\n---\n\n## Project Structure\n\n```\n├── src/\n│   ├── index.ts                   # CLI entry point (commander)\n│   ├── config.ts                  # Configuration layering (global + project)\n│   ├── orchestrator/\n│   │   └── run.ts                 # Unified run orchestrator (5-phase startup)\n│   ├── leader/                    # Leader node\n│   │   ├── index.ts               #   Startup / shutdown orchestration\n│   │   ├── tui.ts                 #   ANSI TUI with Worker Messages panel\n│   │   ├── event-bus.ts           #   Typed EventEmitter (17 events)\n│   │   ├── state.ts               #   Centralized LeaderState\n│   │   ├── monitor.ts             #   WorkerMonitor — join/leave detection\n│   │   ├── orchestrator.ts        #   TaskOrchestrator — lifecycle tracking\n│   │   ├── recovery.ts            #   TaskRecovery — orphan recovery (max 3 retries)\n│   │   ├── watcher.ts             #   LeaderWatcher — message processing\n│   │   ├── chain-router.ts        #   ChainRouter — mechanical routing (self or forward decompose)\n│   │   ├── merge-validator.ts     #   Cross-verify + merge worker branches\n│   │   └── stream-tailer.ts       #   StreamTailer — live worker log display\n│   ├── worker/                    # Worker node\n│   │   ├── worktree-initializer.ts#   Name generation, worktree creation, role assignment\n│   │   ├── child.ts               #   Child process entry point\n│   │   ├── child-runner.ts        #   Child process core (chdir → ZK → Watcher)\n│   │   ├── watcher.ts             #   WorkerWatcher — ZK watch loop + orchestration\n│   │   ├── evaluator.ts           #   SelfEvaluator — built-in self-evaluation (max 3 retries)\n│   │   └── commit-checker.ts      #   Auto-commit after task completion\n│   ├── executor/                  # Template execution engine\n│   │   ├── template.ts            #   TemplateEngine — loading + identity card + rendering\n│   │   └── runner.ts              #   ClaudeRunner — CLI execution wrapper\n│   ├── zk/\n│   │   ├── client.ts              # ZooKeeper connection management\n│   │   ├── paths.ts               # ZK path constants\n│   │   └── watcher.ts             # ZK watch callback wrapper\n│   ├── modules/\n│   │   ├── registry.ts            # Instance registry\n│   │   ├── task-queue.ts          # Task queue (push/claim/complete/block/fail/retry)\n│   │   └── message-router.ts      # Message routing + template rendering\n│   ├── hooks/\n│   │   └── engine.ts              # HookEngine — pre/post lifecycle hooks\n│   ├── models/\n│   │   └── schemas.ts             # Zod schemas (Instance, Task, Message, ChainDef, EvalDecision)\n│   └── utils/\n│       ├── exec.ts                # Shell execution (execWithTee, execWithStreaming, execAndCapture)\n│       ├── logger.ts              # Tagged logger (+ --debug mode)\n│       ├── output.ts              # JSON output helper\n│       └── console-capture.ts     # Console redirect to file (for TUI)\n├── templates/                     # Prompt and memory templates (v0.4)\n│   ├── agents/                    #   7 Worker prompt templates\n│   └── claude-memory/             #   6 CLAUDE.md directory memory templates\n├── skills/                        # Claude Code skills (8 total)\n│   ├── task-traceability/         #   Foundation layer\n│   ├── task-planning/             #   Planner skill\n│   ├── task-execution/            #   Builder skill\n│   ├── task-verification/         #   Verifier skill\n│   ├── task-review/               #   Reviewer skill\n│   ├── task-acceptance/           #   Accepter skill\n│   ├── claude-orchestrator/       #   CLI reference\n│   └── claude-code-developer/     #   Claude Code developer reference\n├── docs/\n│   ├── v0.4/\n│   │   ├── design.md              #   v0.4 full design document\n│   │   ├── CLAUDE.md              #   v0.4 changelog summary\n│   │   └── worker-init/\n│   │       └── design.md          #   Worker initialization + directory memory design\n│   └── v0.3/                      #   Archived v0.3 docs\n├── tests/\n│   ├── unit/                      #   11 test files\n│   │   └── worker-prompt-rendering.test.ts  # Prompt variable substitution verification\n│   └── integration/               #   7 integration test files\n├── examples-workspace/            # Reference implementation of multi-agent patterns\n├── docker-compose.yml             # ZooKeeper\n├── package.json\n└── tsconfig.json\n```\n\n---\n\n## Configuration Reference\n\n| Config | Where | Default |\n|--------|-------|---------|\n| ZK hosts | `-z, --zookeeper` flag or `ZK_HOSTS` env | `127.0.0.1:2181` |\n| Instance ID | Auto-generated per Worker | saved to `.claude-orchestrator/config.json` |\n| Claude command | `config.json` → `commands.claude-cli` | `claude --dangerously-skip-permissions --permission-mode dontAsk` |\n| Cache directory | `config.json` → `cache_dir` | `~/.claude-orchestrator/sessions` |\n\n---\n\n## License\n\nMIT — use it, fork it, ship it.\n\n---\n\n<p align=\"center\">\n  <sub>Built with TypeScript and ZooKeeper. Orchestrate responsibly.</sub>\n</p>\n","readmeFilename":"README.md"}