{"_id":"hermes-to-claude","_rev":"32-65c12675e174c8968c8718b781af4f9f","name":"hermes-to-claude","dist-tags":{"latest":"0.2.17"},"versions":{"0.1.0":{"name":"hermes-to-claude","version":"0.1.0","license":"MIT","_id":"hermes-to-claude@0.1.0","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-claude-bridge#readme","bugs":{"url":"https://github.com/xuhancn/hermes-claude-bridge/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"d5c3d73099f6352484082012c10ed3955d219d10","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.1.0.tgz","fileCount":11,"integrity":"sha512-hccijrBR9XATkqeV9aWVYjF9L7eB5EMDA3ZrauhQK1AUScbWM90uodeG9HhnaBfGugv2duGnzaTwAqimf+niIg==","signatures":[{"sig":"MEQCIDQt4R6ud3xKj2eQn8xy9DJjL3f+P1/nw2tvJYQzlThTAiB0P/y3hm8Xhy0KeOAqnyp/Ri68Nu2emrqbwPnyv4kzdg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89556},"type":"module","gitHead":"c21a99ad1048ce896b3a8906f95828543f49b5a2","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-claude-bridge.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.1.0_1784402071761_0.9417902350241296","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"hermes-to-claude","version":"0.1.1","license":"MIT","_id":"hermes-to-claude@0.1.1","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-claude-bridge#readme","bugs":{"url":"https://github.com/xuhancn/hermes-claude-bridge/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"d617a341023b4c8f20a3d5f2fe7ec2ada4722b3a","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.1.1.tgz","fileCount":11,"integrity":"sha512-MUJXC0tuBZMDvyGgMr3bKzuL1Xumf7EAUbjhNPvTjAGEtIT0xyeWY1zhn66W85RaXfuf2qZjnUIH5ZoNZvcocA==","signatures":[{"sig":"MEUCIQDVauc7axy/X0edcAGNIfFp27LXnXYJvcGx89kN6pFW7gIgZOgx2fIU/q8DF5OvN8VGaFCXxLtpHBohzUnUhQ+JAmI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89093},"type":"module","gitHead":"7f2a8d25f31a656d94fb1fd6c632b858de84ab34","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-claude-bridge.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.1.1_1784403222902_0.14812812284800825","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"hermes-to-claude","version":"0.1.2","license":"MIT","_id":"hermes-to-claude@0.1.2","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"eaea27eef7ad2bb5b0679685c93ead27cd7d6192","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.1.2.tgz","fileCount":11,"integrity":"sha512-O7Stt2olBEn52ch2uqyJOoF0/rih++7rdf6umF69ctnIg3LLL8Ru8hWPU3j216TdF2Ky7T2/7LQXau60WD7fbw==","signatures":[{"sig":"MEQCICsFqJaS9QklVhCwcKaQOMLgIyNri0+GsA35/gsNLg/fAiBW0F3V5NEOwGgSD4XhA0AYi4wLWD8DIUx0MemT7Oux6Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89174},"type":"module","gitHead":"572153f68b9bef5d541de0fae7e57158c4122f74","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.1.2_1784403899627_0.7373077804143158","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"hermes-to-claude","version":"0.1.3","license":"MIT","_id":"hermes-to-claude@0.1.3","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"eb6f7a7a982821ea6ddaf33482ed904cd7fe7b90","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.1.3.tgz","fileCount":11,"integrity":"sha512-fo7h+qGWfwt4X8xjhr3WsFQGvi4g0IJX/Wj5riMgmBg9V6D5OARgofMfqEU4BIL64iclYt/5QVJZeduJB6Dv3A==","signatures":[{"sig":"MEYCIQDX67d+3DzlGPV/SPzL4ULAJlzolA1xmGj8wM9jyIV0HwIhAOo6kjQkuuCoEsyX2e3hMz1EJtDWJnbEKTPOg40U6DHG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89174},"type":"module","gitHead":"ae319c0086ed054e0fb15141ba81d2cfc449d9f5","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.1.3_1784403924253_0.6129241471287272","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"hermes-to-claude","version":"0.1.4","license":"MIT","_id":"hermes-to-claude@0.1.4","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"a1f80c0b7bda66f342e599c5e396b5da8978297d","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.1.4.tgz","fileCount":11,"integrity":"sha512-zNBOurzsSqyCuflnuuLBUemOywOOOYezwEUfTfaET0Jg8Jp3PnmHAgwVLnlE0Hxy5VQbmK7yYu+D9Lclp84sGg==","signatures":[{"sig":"MEUCIA9kOrwEKe0zg+XL2wlmPiT0mbDcI1F7p6HKAolFMZOgAiEAu/wtyFF1Xi2GlnJ/JaToZfGZOz3AuqHO5MC8licjxyw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89174},"type":"module","gitHead":"976fb47dd93f099f0d0b71663ad583fc451cf788","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.1.4_1784404770385_0.6034177909888416","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"hermes-to-claude","version":"0.1.5","license":"MIT","_id":"hermes-to-claude@0.1.5","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"b94e93dfc3c243d35cba40c4e1630da1de147b79","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.1.5.tgz","fileCount":11,"integrity":"sha512-waAf2KEf4YNwdvP1b4BseshnVqSgnCV5/U83y+5kY4Z3hBBmiNRA4OtEfMWPoc979wbduxzkRGXqZwvWJO8mxQ==","signatures":[{"sig":"MEUCIQCb+ATxxvswqSXXCyc6ieJBdzvipKOg+Rxl7DtJkR5A7QIgJcfDGRAg62knxeukXzCYFM5cQjEJaQJ93cZM2yQNPbE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89174},"type":"module","gitHead":"3655156525e796ef9b4e13812966f94bfe0aec95","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.1.5_1784405051955_0.6678116039812954","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"hermes-to-claude","version":"0.1.6","license":"MIT","_id":"hermes-to-claude@0.1.6","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"240ef87e33019d289d7152281bbe10c67fac0ec1","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.1.6.tgz","fileCount":11,"integrity":"sha512-ci0A5jt4EalkiwJOCG7TK2CrKIBBCxJBuIv6qeIQFT3cG/yOCjql9kLwkqnxVFUUfA0fuTOgbSTQM/8OBCBRlA==","signatures":[{"sig":"MEUCIBm22HoKR81o1G2fmo6rAxlonCtC/7/dAZWOotcYXiQNAiEA/zoUvYAjuwmyImN8vovASisg7lyje2han8sCwYZqVwQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89174},"type":"module","gitHead":"01f65da7f24cc1ba2c74ae38ca27af8a00d1b733","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.1.6_1784405296736_0.8746577437801804","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"hermes-to-claude","version":"0.1.7","license":"MIT","_id":"hermes-to-claude@0.1.7","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"a9abea604236c647f7291be0cde5314455fa7203","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.1.7.tgz","fileCount":11,"integrity":"sha512-SVRjlSrtPyGjRjNOUiSAI1UJWAATxIxDA+gXHSPxLSTxGJ/wZVhWsWG1g2MtVdWv9qSugtzE02Ay19XdHz6OEw==","signatures":[{"sig":"MEUCIQCBrQT2HLuMWn5WCZKMo7h+EMNHnxhBlqmf/7YBc620agIgeqWMwIeeVVbB+WUuiHwDKKIwYnbQmTisGp3fUwO2GtI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89156},"type":"module","gitHead":"d5f1f0614b3f4912188c936e75cbef33599917cc","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.1.7_1784405624331_0.06324928279767761","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"hermes-to-claude","version":"0.1.8","license":"MIT","_id":"hermes-to-claude@0.1.8","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"80d60f60030b7f03fd4ce7a2c724ef9b5cfb3238","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.1.8.tgz","fileCount":11,"integrity":"sha512-MSPDWNanHw5WPF/CmQUGCi1ZfnwMzk1w6KNy9wbhooOyVA/0Ed+csrbOYzj7q+ogZjSZuFfGjA39S4EAM96nXQ==","signatures":[{"sig":"MEYCIQCPIGw4Wuq3QBzhNOMtXURitLAQrzSqnlIrDcopaebznQIhAMK7Ak6e38dotw0pTdMWyh+El+vJSIXy8RaAXQdaW/qT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89156},"type":"module","gitHead":"6a37d2b6cf4b794ab73d2056f66b046bda5504e9","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.1.8_1784405875258_0.8400054330368854","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"hermes-to-claude","version":"0.1.9","license":"MIT","_id":"hermes-to-claude@0.1.9","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"a88fc1ea1a787e799698f4487ec43746a8f96187","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.1.9.tgz","fileCount":11,"integrity":"sha512-4oqrB1AAwW1mrrUvnWz1bzq+GR9Azxv0C7qAO2YNBCgCQVZ7PxkkL8Zqg9rEONs3HCQXCHmfulcstT2ZvVfNUQ==","signatures":[{"sig":"MEUCICWtwCuNz5GcXudvxbdS8pPWRgf8Si/dtU8c6gFRqilrAiEA24ck1naesHVIeXdjssGqgQuGRgPyABXIXOUDAueMpTs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89156},"type":"module","gitHead":"fbdd535d3ea4f6618cd6755f700e9a6e1e6ad714","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.1.9_1784406368488_0.9731228113593091","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"hermes-to-claude","version":"0.1.10","license":"MIT","_id":"hermes-to-claude@0.1.10","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"a6752604b7d4da42f5b6b63ccc23840fec6f0adf","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.1.10.tgz","fileCount":11,"integrity":"sha512-1jjnXujxQxVwqsu54qBKf7k25pSSLda2L3kz3ZAJ4iqTLjNC0pVC2+H1Fb2awuIBSq389hp3YUyZrYgowL6QKg==","signatures":[{"sig":"MEQCIBayh8wfFqspzVgYdX+31m0Ia/wiEeQ5aq8XTLsx5RzSAiBQM9xs3198O52TYBbjhu4ukMvxN66griVE1L4eInspLg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89157},"type":"module","gitHead":"cebaec77528b3a5c3e56bfa73806406bbf33b9a4","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.1.10_1784406845346_0.3132911061589734","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"hermes-to-claude","version":"0.1.12","license":"MIT","_id":"hermes-to-claude@0.1.12","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"2167336822d6dab4e7443bfaed3c52ecd3ed7cd5","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.1.12.tgz","fileCount":11,"integrity":"sha512-JHp4BnwXRvwEaPScxx904vopDn2NNzismQ8VQKuUFkDgqWhedlS5E7fC7Jrc34UnPE1Nx/HaHaVxO7rUsdnw9w==","signatures":[{"sig":"MEQCIGmrxjQsuPl34LIXoA87+0FVX2NTeI/INvYmYXUrYumQAiAOeVBRg4ZAWKuRI5Lcdbn7SNunoNfQG91uL5eBUnJgXQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89182},"type":"module","gitHead":"6857bd61b62347700db621a74a55bc2949507fd6","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.1.12_1784431515880_0.09306189487317429","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"hermes-to-claude","version":"0.2.0","license":"MIT","_id":"hermes-to-claude@0.2.0","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"8b010c783810c16537b283953234496442793664","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.0.tgz","fileCount":11,"integrity":"sha512-0jlIoCkNiLvRlOW+KZVghES6en14daxWloKUH3vCySeB7cEQvULsdmdL858NyCARxFHNOh45r0CV2VL7HDlV5Q==","signatures":[{"sig":"MEUCIQCfGcwTEp+M/ElAWq0QD3umc0mVTi8XP7DO38HaJuT4XAIgRepXFuxdLF0xIVPmNgq7I6DURckv/BLDwzQzx/T+a9g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":89423},"type":"module","gitHead":"24bb25be97e14f0af6350f80c19140452a8aab17","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.0_1784434044967_0.3786992624467922","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"hermes-to-claude","version":"0.2.1","license":"MIT","_id":"hermes-to-claude@0.2.1","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"a3eb6046e26bad165fe53ce6fa3b97f6c01434dd","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.1.tgz","fileCount":11,"integrity":"sha512-0A3Icp3RGhqpabaYZ0pKy1sky4Szf5aze6tq6Ecr0Lk45qqnsxVfiOZSvjgDlLthfmHcya3KsHYlX7UEmEmMZg==","signatures":[{"sig":"MEYCIQCblqs4qpPfLryxAGpgCOTvvlsEEHLHTnVPjkTAjg8cLAIhAITJNGpv9QlUvCT7kuY7VeWpQbPCX9hdAIe3TDiBRMGE","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90375},"type":"module","gitHead":"68e55c072b69066b95930f7b9e7812374135cc7d","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.1_1784438166769_0.5098445748080782","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"hermes-to-claude","version":"0.2.2","license":"MIT","_id":"hermes-to-claude@0.2.2","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"d318506041abc7948136f452a36f32e5e7e75640","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.2.tgz","fileCount":11,"integrity":"sha512-kyF/+/b3Uw8pK9oGRKERzs0tVnXPGRHbxlsY8OwcI30dO2bV2GfENszZcRSDoAQgosVi8QNP/kxDJy5X+kkQpQ==","signatures":[{"sig":"MEYCIQCX5+PClDJiYo3kJKorKriu73hDgAW0Clz05bfp9aRR5wIhAMYwxXCaGa+gN/PXecFtqPHfQGzTuhv6sOtyZ96nikm0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90375},"type":"module","gitHead":"764d4de89ff9859463dd0a678d22181108f379f4","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.2_1784439099387_0.07699203452902204","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"hermes-to-claude","version":"0.2.3","license":"MIT","_id":"hermes-to-claude@0.2.3","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"d3fc3097c50aaae8ab1b5de53f71a5321274d497","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.3.tgz","fileCount":11,"integrity":"sha512-6ezLCNrK/+xFmqAvkS9GDGFCxYynS43Z0uDsVq+L922rKWuqFicUWIrl5pSHpDW0ZlvfNWe7wkOSBGerW+xk5w==","signatures":[{"sig":"MEQCIDsicth631Tjtm7owGYtKFawBCXSdG++u6k0F+eAIBfjAiA0/43T+anZtbQs7wJXhqpbs4ehK+FK3G1Agh+C5r+SLA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90391},"type":"module","gitHead":"8a53113b06298d8021a04601cba3914e0b185b29","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.3_1784439954371_0.44005944881690473","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"hermes-to-claude","version":"0.2.4","license":"MIT","_id":"hermes-to-claude@0.2.4","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"01f2fc59d0406854ab67935e3efc7439a0ea0c62","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.4.tgz","fileCount":11,"integrity":"sha512-1f4iLnwx2AHccyvqh2D0W/h3snHEuBZZRK1H3kjzFgXy53GwOHUcKUgKai2a3935wgNGw2naW+7NaZeqdlsKUA==","signatures":[{"sig":"MEUCIDF1o3CJY25nnWmZsyXVZuMybmq/x2MC2k9eVGg4+e68AiEAyx95iKjggPkE4nrhCFxmaCKrSVKPCRqDd3mFalC9TYs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90379},"type":"module","gitHead":"f2a3ae60cf7daf2bfd2c168c60c97657a906b56b","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.4_1784440060307_0.7500133845596038","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"hermes-to-claude","version":"0.2.5","license":"MIT","_id":"hermes-to-claude@0.2.5","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"4a75b214f898d7575ca300cf8ff1ac4f2217e642","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.5.tgz","fileCount":11,"integrity":"sha512-p25OeYwDiBzqPosyECGoOAovVQKdIjjnUoFcbBRbYxF89qCi+N+XKNR0zPw/36CZFImOa7mKr3swbghBIli/8g==","signatures":[{"sig":"MEQCICVmDcbovlkU7Rip5YiTDgNM1d3hcAWBbRJTr2sXpKcAAiBOxwDJv6nREAe0xAM9uKNIpNOpBU3fJ5IbbePlOteeQQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90419},"type":"module","gitHead":"c8793decd710175c5c60024f82e8ce155a526e56","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.5_1784448899403_0.9594780343245175","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"hermes-to-claude","version":"0.2.6","keywords":["hermes","claude","claude-code","h2c","agent","orchestrator","bridge","multi-agent","ai-agent","hermes-agent"],"license":"MIT","_id":"hermes-to-claude@0.2.6","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"202b33ba5908fe01ab54322b4c8bcffd42d90eb8","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.6.tgz","fileCount":11,"integrity":"sha512-4+J+AWd8OWTzWjd1LszvPHMSXUFutsO1ahCmhQdqt8UlJBrNFdqSi093UsQNp8Vvrwi5ylLq8swZbxPVvbzkvg==","signatures":[{"sig":"MEYCIQDzglwV960ABrwAXuGijausCCtsmy4jgtKnTRWTm0teJgIhAK2py2Di2yyfRS2Yydw/2muqwA0uiJ/EXfYgc2Vn34eX","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90611},"type":"module","gitHead":"ae1a00c3ccc56c945396f9ee38538204d8c0afb9","scripts":{"test":"node src/hbridge/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.6_1784450873790_0.15794906088461946","host":"s3://npm-registry-packages-npm-production"}},"0.2.8":{"name":"hermes-to-claude","version":"0.2.8","keywords":["hermes","claude","claude-code","h2c","agent","orchestrator","bridge","multi-agent","ai-agent","hermes-agent"],"license":"MIT","_id":"hermes-to-claude@0.2.8","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"7655a21adc3cb34151750960f260b156be2fef81","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.8.tgz","fileCount":11,"integrity":"sha512-LF1BZ9byhZvy7RLvFoCUXNeUIBC19eWoR6y07KG9+1oqNxXrY12BnJws3W4WEU2bM9nfZd6yjh9wCDMDHTF6pA==","signatures":[{"sig":"MEUCID194NQ3u9urqx77+iAGZdRJ/7BcMGXiQOywlDLzS3pfAiEA+Jx72oHeMC73fqxoJRhYhG4BDCi7uuInrL3yXqXhfNc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90777},"type":"module","gitHead":"372c714946b85be97c32183e2cc4226dff27ddaa","scripts":{"test":"node src/hermes_to_claude/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.8_1785316406632_0.8151144409211857","host":"s3://npm-registry-packages-npm-production"}},"0.2.9":{"name":"hermes-to-claude","version":"0.2.9","keywords":["hermes","claude","claude-code","h2c","agent","orchestrator","bridge","multi-agent","ai-agent","hermes-agent"],"license":"MIT","_id":"hermes-to-claude@0.2.9","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/hbridge.mjs"},"dist":{"shasum":"2b86ade0977de86c12f58d519efbad18f60a6117","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.9.tgz","fileCount":11,"integrity":"sha512-Pd+YsNoP4IwOhyNPRGmmqqUOnKCDHc1jgY39+6QhxRRa5rRc/wbgOd7ITfGLyhLpYUlJkxHQkMVRqfuuYxoH5g==","signatures":[{"sig":"MEYCIQDsR21upFCRIA6lqoVG+3FIFx7eJXxOzY0sxxrkEQmCKgIhAJV6qqSCc20De+b7Vkez0aQAsL3Eayv7Uc31p10B6I7a","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":90984},"type":"module","gitHead":"e4f2452164934abde135e5330844f9c658fb7b28","scripts":{"test":"node src/hermes_to_claude/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.9_1786597866790_0.8981402309079525","host":"s3://npm-registry-packages-npm-production"}},"0.2.10":{"name":"hermes-to-claude","version":"0.2.10","keywords":["hermes","claude","claude-code","h2c","agent","orchestrator","bridge","multi-agent","ai-agent","hermes-agent"],"license":"MIT","_id":"hermes-to-claude@0.2.10","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/h2c.mjs"},"dist":{"shasum":"b96d921542a10c2f6facc31e8cf41495caea50d9","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.10.tgz","fileCount":11,"integrity":"sha512-KNHfISxa+1KQu4ZaQgm9WhxmZ6s3L6sKKneNHZU+NY/vHjqlK9Xn+fgImDcvW0bNenMu9JWSjlbVRS/OOWATcg==","signatures":[{"sig":"MEUCIE1jrnhk2Q4YJ0pZ6USHkCRqsQoNI6qdOJNQuhAV/tTcAiEAxysqoHmLrshVcWPxU6W7W3y0NxsaRbSpaEGk2XyWFIY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":91006},"type":"module","gitHead":"79dcdf304b241720d3d227f1aa6af4654f2de8cb","scripts":{"test":"node src/hermes_to_claude/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","prepare":"npm run build","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.10_1786600887668_0.11893761452985552","host":"s3://npm-registry-packages-npm-production"}},"0.2.11":{"name":"hermes-to-claude","version":"0.2.11","keywords":["hermes","claude","claude-code","h2c","agent","orchestrator","bridge","multi-agent","ai-agent","hermes-agent"],"license":"MIT","_id":"hermes-to-claude@0.2.11","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/h2c.mjs"},"dist":{"shasum":"4ff72e8ce47832ff65f291bb8b42315edbade670","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.11.tgz","fileCount":11,"integrity":"sha512-fLqBfPcu6gdtle6cvxND3WkOo5xE6ieGmrtwYS1fSWBh91z/9plqNGX8Nh/VEDNOsdNLZnMWydD3kKsgEbSBEg==","signatures":[{"sig":"MEYCIQD7Ksoz60UpQCXVYL4NvmRyDzFItmjchmMAIrSgUJb1UAIhAPvh2darg+29CxDp6Bqt1Svjh58yuFNjJvW9SoY0oa6W","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93142},"type":"module","gitHead":"2084f17a5aeb3d87ac937442bf0f4019210137f8","scripts":{"test":"node src/hermes_to_claude/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","prepare":"npm run build","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.11_1786608875142_0.9998807162996641","host":"s3://npm-registry-packages-npm-production"}},"0.2.12":{"name":"hermes-to-claude","version":"0.2.12","keywords":["hermes","claude","claude-code","h2c","agent","orchestrator","bridge","multi-agent","ai-agent","hermes-agent"],"license":"MIT","_id":"hermes-to-claude@0.2.12","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/h2c.mjs"},"dist":{"shasum":"da515a0eaeee1a7ce461b82c2be64a2339cccdee","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.12.tgz","fileCount":11,"integrity":"sha512-7zwQ+r60AhKoBGlZjTS20taaeTJctFczECjS1xR1Zp5HoPxQzjhrcKihbvlG4tL2BdmshanEzqTzNE2HA7WHlQ==","signatures":[{"sig":"MEYCIQC0f8m+Yy281um3Y2J/VBTK848neSJwrteFrwheFzMEvgIhAJyHvBBjBi80uWY8YmTjdRPS9SNJg5yGvxAW6FUzwNax","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93501},"type":"module","gitHead":"4e48ecfa487979bd1b942d9f33d3367ee93195ca","scripts":{"test":"node src/hermes_to_claude/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","prepare":"npm run build","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"deprecated":"deprecated","repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.12_1786624554029_0.15993421120895923","host":"s3://npm-registry-packages-npm-production"}},"0.2.13":{"name":"hermes-to-claude","version":"0.2.13","keywords":["hermes","claude","claude-code","h2c","agent","orchestrator","bridge","multi-agent","ai-agent","hermes-agent"],"license":"MIT","_id":"hermes-to-claude@0.2.13","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/h2c.mjs"},"dist":{"shasum":"a4ae48f897401e49d552c8a801422c8c9b36719c","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.13.tgz","fileCount":11,"integrity":"sha512-akftSlVrVi55eZiq9OMTDPiuOhtkLQH1PTD+Tlpw6CbONKRidwpIs23kMPqVJC0wo4+xF9Awn88Iyyz75wwDMQ==","signatures":[{"sig":"MEYCIQCGE4b5FWUeS6Fg+PN/R6PKON0faXqvkCb9AUSKUyxyXAIhAL4F8D0WKpnQ49ldogr1orboHJuWkgO8HMxTnqNu+XDQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93536},"type":"module","gitHead":"31ab2c05e54c56fbec69223ad6258739ffe117bb","scripts":{"test":"node src/hermes_to_claude/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","prepare":"npm run build","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.13_1786660896735_0.42412398812283025","host":"s3://npm-registry-packages-npm-production"},"deprecated":"deprecated"},"0.2.14":{"name":"hermes-to-claude","version":"0.2.14","keywords":["hermes","claude","claude-code","h2c","agent","orchestrator","bridge","multi-agent","ai-agent","hermes-agent"],"license":"MIT","_id":"hermes-to-claude@0.2.14","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/h2c.mjs"},"dist":{"shasum":"2f46a5a7fd7e9486faf59d2a55120f2f2f3f1186","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.14.tgz","fileCount":11,"integrity":"sha512-b0CBkX6+XNqnu61k++3w1Unz3GC8lMPpiFagkY92oljRlSNP2/3uu/URaKUtOz8or8SrFdJnvg8ZgKiR1Fnatw==","signatures":[{"sig":"MEQCIF6ZhBOVQVB6Ji+TuulIDI4nLfKP/kt7AWSq+UDm00qgAiAwyGeVjo3/cd4T/6h3eHz/uN6Le97Vk2AXSdkdj1VDKQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93629},"type":"module","gitHead":"b88de90927964462f955c2ae24485eb19456fd43","scripts":{"test":"node src/hermes_to_claude/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","prepare":"npm run build","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.14_1786694357632_0.19124269715447206","host":"s3://npm-registry-packages-npm-production"},"deprecated":"deprecated"},"0.2.15":{"name":"hermes-to-claude","version":"0.2.15","keywords":["hermes","claude","claude-code","h2c","agent","orchestrator","bridge","multi-agent","ai-agent","hermes-agent"],"license":"MIT","_id":"hermes-to-claude@0.2.15","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/h2c.mjs"},"dist":{"shasum":"f79a9303e04e33b27a17807401af788d30f9d2a3","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.15.tgz","fileCount":11,"integrity":"sha512-lwf9u2Z7+Dx8Dh+vTMtZNR0iKrKyQc86fpEoxTIWMBjIr7RWyNcBtqsHkQWjtWqH6WpRwKINQttdzAfZmjBXaw==","signatures":[{"sig":"MEUCICVOe0b4BYIATzLxwzluOXQ7SyWt2cLycuV5z2Q2x1RHAiEA0c0fKtcHjUnJ+5Cixa1yMPUlCjqESfBJdWwI9D7qHCg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":98065},"type":"module","gitHead":"22807a42fcac340016951116c651008fd28e825c","scripts":{"test":"node src/hermes_to_claude/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs","build":"node build.mjs","prepare":"npm run build","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.15_1787100076630_0.7621345780795712","host":"s3://npm-registry-packages-npm-production"},"deprecated":"deprecated"},"0.2.16":{"name":"hermes-to-claude","version":"0.2.16","keywords":["hermes","claude","claude-code","h2c","agent","orchestrator","bridge","multi-agent","ai-agent","hermes-agent"],"license":"MIT","_id":"hermes-to-claude@0.2.16","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/h2c.mjs"},"dist":{"shasum":"3c01662371bf15712d45a80e0a3de5785a24f67b","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.16.tgz","fileCount":11,"integrity":"sha512-wP/zqgBfBbFzMuY8/1X2PtFCUnLbJAEnODDJ01ZUAv6mGDheBapF4+H3jUfJyXLiScwJBR0KfQommgSGLk8BLQ==","signatures":[{"sig":"MEYCIQDBB68BZSoYQpjnUuULiJYJI9Mf2Df+fAwkcGNqEr9y2AIhAJs2X09HNGV6Lr2UkL/zbYFgrulnb6wJ7wByGrY4zrPR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":118410},"type":"module","gitHead":"e101e41781a1201ef73e634fc0175a0b3f7830d0","scripts":{"test":"node src/hermes_to_claude/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs && node tests/test_claude_launcher.mjs","build":"node build.mjs","prepare":"npm run build","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.16_1787272981320_0.8101775358415917","host":"s3://npm-registry-packages-npm-production"},"deprecated":"deprecated"},"0.2.17":{"name":"hermes-to-claude","version":"0.2.17","keywords":["hermes","claude","claude-code","h2c","agent","orchestrator","bridge","multi-agent","ai-agent","hermes-agent"],"license":"MIT","_id":"hermes-to-claude@0.2.17","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"homepage":"https://github.com/xuhancn/hermes-to-claude#readme","bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"bin":{"h2c":"dist/h2c.mjs"},"dist":{"shasum":"db692e0f7515b68ec113ee5c86e06513e7391101","tarball":"https://registry.npmjs.org/hermes-to-claude/-/hermes-to-claude-0.2.17.tgz","fileCount":11,"integrity":"sha512-x5mwtTayzu1CVpvP5Fa0lCoz0D+yTThJPXOU2jqJyapat4/EeK1LE0OriwiPzNuv03ErojB4HGr6rYQsVTuzuQ==","signatures":[{"sig":"MEQCIF91qijBMgwCltn6VJwTGhRHUMtuv+DHOH8uZ/P9p1g0AiAUBSPFPaz3iM5ebqc27MRcJSzd8ytEuujncT6EmDik9g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":119653},"type":"module","gitHead":"f273594002993cf5ed08007e36a5f7906a628220","scripts":{"test":"node src/hermes_to_claude/transport/__tests__/run-all.mjs && node tests/test_bridge.mjs && node tests/test_e2e.mjs && node tests/test_claude_launcher.mjs","build":"node build.mjs","prepare":"npm run build","postinstall":"node scripts/setup-mcp.cjs","prepublishOnly":"npm run build"},"_npmUser":{"name":"xuhancn","email":"xu.han@outlook.com"},"repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"_npmVersion":"11.13.0","description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","directories":{},"_nodeVersion":"26.2.0","_hasShrinkwrap":false,"devDependencies":{"esbuild":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/hermes-to-claude_0.2.17_1787464365480_0.752449377308056","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2026-07-18T19:14:31.703Z","modified":"2026-09-05T13:10:43.344Z","0.1.0":"2026-07-18T19:14:31.894Z","0.1.1":"2026-07-18T19:33:43.047Z","0.1.2":"2026-07-18T19:44:59.773Z","0.1.3":"2026-07-18T19:45:24.386Z","0.1.4":"2026-07-18T19:59:30.530Z","0.1.5":"2026-07-18T20:04:12.080Z","0.1.6":"2026-07-18T20:08:16.865Z","0.1.7":"2026-07-18T20:13:44.466Z","0.1.8":"2026-07-18T20:17:55.399Z","0.1.9":"2026-07-18T20:26:08.632Z","0.1.10":"2026-07-18T20:34:05.478Z","0.1.12":"2026-07-19T03:25:16.013Z","0.2.0":"2026-07-19T04:07:25.121Z","0.2.1":"2026-07-19T05:16:06.913Z","0.2.2":"2026-07-19T05:31:39.516Z","0.2.3":"2026-07-19T05:45:54.530Z","0.2.4":"2026-07-19T05:47:40.444Z","0.2.5":"2026-07-19T08:14:59.550Z","0.2.6":"2026-07-19T08:47:53.934Z","0.2.8":"2026-07-29T09:13:26.783Z","0.2.9":"2026-08-13T05:11:06.940Z","0.2.10":"2026-08-13T06:01:27.818Z","0.2.11":"2026-08-13T08:14:35.286Z","0.2.12":"2026-08-13T12:35:54.173Z","0.2.13":"2026-08-13T22:41:36.885Z","0.2.14":"2026-08-14T07:59:17.753Z","0.2.15":"2026-08-19T00:41:16.780Z","0.2.16":"2026-08-21T00:43:01.525Z","0.2.17":"2026-08-23T05:52:45.622Z"},"bugs":{"url":"https://github.com/xuhancn/hermes-to-claude/issues"},"license":"MIT","homepage":"https://github.com/xuhancn/hermes-to-claude#readme","keywords":["hermes","claude","claude-code","h2c","agent","orchestrator","bridge","multi-agent","ai-agent","hermes-agent"],"repository":{"url":"git+https://github.com/xuhancn/hermes-to-claude.git","type":"git"},"description":"Local HTTP bridge connecting Hermes Agent to Claude Code — no Pro/Max subscription required","maintainers":[{"name":"xuhancn","email":"xu.han@outlook.com"}],"readme":"# Hermes-to-Claude (h2c)\r\n\r\n**English** | [中文](README_CN.md)\r\n\r\n**Hermes-Agent** controls multiple **Claude Code** instances via HTTP — one agent, many Claude workers. **No Pro/Max subscription required**.\r\n\r\n```\r\n📱 User ----HTTP----> 🤖 Hermes-Agent ----h2c----> 🏭 Claude Code (deploy role)\r\n                            ├----h2c----> 🔧 Claude Code (coding role)\r\n                            ├----h2c----> 🧪 Claude Code (testing role)\r\n                            └----h2c----> 🔬 Claude Code (building role)\r\n```\r\n\r\n---\r\n\r\n## 1. h2c Advantages\r\n\r\n- **No Pro/Max required** — works with any Claude Code via stdio; no Anthropic subscription needed.\r\n- **One agent, many Claudes** — one Hermes-Agent routes tasks to multiple Claude Code instances, each in its own project directory with its own CLAUDE.md and skills.\r\n- **Default-off, secure** — zero ports open until you explicitly `enable`. Auth key protects all endpoints.\r\n- **Cross-platform** — Windows / Linux / macOS. Single codebase.\r\n- **Local-only** — no cloud, no external API. Fully offline.\r\n\r\n---\r\n\r\n## 2. For Human Users\r\n\r\n### Prepare\r\n\r\nh2c requires **Node.js ≥ 20**. Install it for your platform:\r\n\r\n| Platform | Command |\r\n|----------|---------|\r\n| Linux (Ubuntu/Debian) | `sudo apt install nodejs npm` |\r\n| macOS | `brew install node` |\r\n| Windows | `winget install OpenJS.NodeJS` or download from https://nodejs.org |\r\n\r\n### Installation\r\n\r\n**For End User**, One command to install globally:\r\n\r\n```bash\r\nnpm install -g hermes-to-claude\r\n```\r\n\r\nThis makes the `h2c` command available everywhere on your system.\r\n\r\n\r\n**For Developer**, For contributors who want to hack on h2c itself:\r\n\r\n```bash\r\ngit clone https://github.com/xuhancn/hermes-to-claude.git\r\ncd hermes-to-claude\r\nnpm install && npm run build\r\n```\r\n\r\n### Start in Claude Code\r\n\r\nAfter installation, enable h2c from inside Claude Code:\r\n\r\n```\r\n/h2c enable\r\n```\r\n\r\nThis starts the HTTP server. The port is derived from the working directory (see Authentication and Port below). Check status at any time:\r\n\r\n```\r\n/h2c status\r\n```\r\n\r\nStop the bridge at any time:\r\n\r\n```\r\n/h2c disable\r\n```\r\n\r\n`disable` reads the daemon's PID (recorded under `~/.h2c/pid.<port>` when it was enabled) and kills the background process, releasing the port. No orphan left behind.\r\n\r\n### Orphan Auto-Exit\r\n\r\nh2c runs as a background process launched from inside Claude Code. When Claude Code exits, h2c would otherwise be left as an orphan holding the port. To prevent this, h2c watches its own stdin — when the launching Claude Code exits, the pipe closes and h2c shuts itself down, releasing the port.\r\n\r\n- **Grace period**: 360 seconds (6 minutes) — within this window h2c stays alive so Hermes-Agent can connect; once it elapses, orphan cleanup fires.\r\n- **Disable**: set `H2C_NO_AUTO_EXIT=1` to keep h2c running indefinitely (e.g. from a terminal).\r\n\r\n### Home Mode — For Headless Machines\r\n\r\nWhen Hermes-Agent runs on a server with no display, no manual command is needed. Export the **environment variable** before starting h2c:\r\n\r\n```bash\r\n# Linux / macOS\r\nH2C_HOME=1\r\n\r\n# Windows (Command Prompt)\r\nset H2C_HOME=1\r\n\r\n# Windows (PowerShell)\r\n$env:H2C_HOME = \"1\"\r\n```\r\n\r\nWith Home mode active, the server listens on `127.0.0.1` only. Authentication is **disabled** — safe because only local processes can reach it. Hermes-Agent connects without managing keys.\r\n\r\n### Claude Code Binary Resilience\r\n\r\nh2c spawns Claude Code per task via `npx @anthropic-ai/claude-code`. If Anthropic ships an **incomplete release** (the native binary in the npm tarball is a tiny placeholder stub — e.g. the 2.1.237 win32 package 404), the process would crash instantly with `exit code 1`. h2c now detects this **before** spawning and self-heals:\r\n\r\n1. **Detect** — `bin/claude[.exe]` smaller than 4KB (the package's own stub size) = placeholder. Result cached ~30s.\r\n2. **Self-heal** — re-runs the package's `install.cjs` with backoff retries (2s/4s).\r\n3. **Fallback** — if the latest release is genuinely broken, installs the newest *previous* release that ships a complete binary and locks it (auto re-checks latest every 6h). **No version pinning** — h2c always follows the latest healthy release.\r\n\r\nOptional environment variables:\r\n\r\n| Variable | Meaning |\r\n|----------|---------|\r\n| `H2C_CLAUDE_VERSION` | Pin a specific Claude Code version (`npx @anthropic-ai/claude-code@<version>`). When set, h2c never falls back to another version — a broken pin surfaces a clear error. |\r\n| `H2C_CLAUDE_NO_SELF_HEAL` | Set to `1` to disable the detection/self-heal/fallback pipeline entirely. Use in regions where Claude Code cannot be (re)installed (e.g. a blocked npm registry) — otherwise the pipeline loops \"reinstall → fail → reinstall\" on every spawn. With this set, spawn goes straight to `npx` and a broken binary fails fast instead of looping. |\r\n| `H2C_CACHE_DIR` | Override the fallback install dir (default `~/.cache/hermes-to-claude/claude-code`). |\r\n\r\n### Authentication and Port\r\n\r\nThe port is **deterministic**: `MD5(cwd)` → first 2 bytes → `9200 + (value % 600)`. Each project directory gets its own port. This is intentional:\r\n\r\n- Each Claude Code instance runs in its own working directory\r\n- Claude reads its own CLAUDE.md, skills, and project files from that directory\r\n- Port = project — you always know which Claude you're talking to\r\n\r\nThe auth key (`h2c_` + 8 random base52 characters) is written to `~/.h2c_key` once and reused across all directories on the same machine. All HTTP endpoints (except `/health`) require HTTP Basic Auth with username `bridge` and the key as password.\r\n\r\n---\r\n\r\n## 3. For Hermes-Agent\r\n\r\nHermes-Agent discovers and controls h2c via HTTP. Here is the complete API.\r\n\r\n### Security\r\n\r\nLike Claude Code CLI, h2c requires authentication for all mutating endpoints. But Hermes-Agent can simplify — either handle the auth flow itself, or bypass it entirely with `skip_permissions` for trusted workloads. Hermes-Agent must handle the same authentication and permission flow that human users would, or explicitly choose to bypass it.\r\n\r\n### Create a Task\r\n\r\nSpawn a Claude Code session:\r\n\r\n```bash\r\ncurl -X POST http://<host>:<port>/v1/task/create \\\r\n  -H \"Authorization: Basic <base64(bridge:key)>\" \\\r\n  -H \"Content-Type: application/json\" \\\r\n  -d '{\"prompt\": \"fix the off-by-one bug in main.c\"}'\r\n# → {\"task_id\":\"task_xxx\",\"status\":\"created\"}\r\n```\r\n\r\nTo skip permission prompts for development workloads:\r\n\r\n```bash\r\ncurl -X POST http://<host>:<port>/v1/task/create \\\r\n  -H \"Authorization: Basic <base64(bridge:key)>\" \\\r\n  -H \"Content-Type: application/json\" \\\r\n  -d '{\"prompt\": \"...\", \"skip_permissions\": true}'\r\n```\r\n\r\n| Optional field | Type | Description |\r\n|---------------|------|-------------|\r\n| `permission_mode` | `\"approve\"` (default) or `\"bypass\"` | Tool approval behavior |\r\n| `skip_permissions` | `boolean` | Skip all permission prompts |\r\n| `cwd` | string | Working directory for the Claude session |\r\n| `sessionId` | string | Reuse an existing Claude session |\r\n\r\n### Connect Hermes-Agent\r\n\r\nGive Hermes-Agent the port and key. Add to `~/.hermes/config.yaml`:\r\n\r\n```yaml\r\n# Single h2c instance\r\nh2c:\r\n  project: my-app\r\n  cwd: /path/to/project\r\n  host: <ip>\r\n  port: <port>\r\n  key: h2c_XXXXXXXX\r\n\r\n# Multiple machines (10 h2c instances):\r\nh2c_farm:\r\n  coding:\r\n    host: 192.168.27.88\r\n    port: 9761\r\n    key: h2c_XXXXXXXX\r\n    cwd: /home/xu/coding\r\n  testing:\r\n    host: 192.168.27.243\r\n    port: 9709\r\n    key: h2c_YYYYYYYY\r\n    cwd: /home/xu/testing\r\n  building:\r\n    host: 192.168.27.225\r\n    port: 9352\r\n    key: h2c_ZZZZZZZZ\r\n    cwd: /home/xu/building\r\n```\r\n\r\nHermes-Agent reads the config and dispatches tasks to the right machine based on project. See the API reference below.\r\n\r\n### Health Check\r\n\r\nVerify the server is reachable — no authentication required:\r\n\r\n```bash\r\ncurl http://<host>:<port>/health\r\n# → {\"status\":\"ok\"}\r\n```\r\n\r\nCheck health after creating a task to confirm the bridge is running and ready.\r\n\r\n### Get Task Output\r\n\r\nPoll until `status` is `\"done\"` or `\"failed\"`. Long-running tasks (code generation, test suites) may take minutes.\r\n\r\n```bash\r\ncurl \"http://<host>:<port>/v1/task/output?task_id=task_xxx\" \\\r\n  -H \"Authorization: Basic <base64(bridge:key)>\"\r\n# → {\"retrieval_status\":\"success\",\"task\":{\"status\":\"done\",\"result\":\"Fixed.\",\"exitCode\":0}}\r\n```\r\n\r\n### Cancel a Task\r\n\r\n```bash\r\ncurl -X POST http://<host>:<port>/v1/task/cancel \\\r\n  -H \"Authorization: Basic <base64(bridge:key)>\" \\\r\n  -H \"Content-Type: application/json\" \\\r\n  -d '{\"task_id\":\"task_xxx\"}'\r\n```\r\n\r\n### Permission Pipeline\r\n\r\nh2c includes a full permission pipeline — just like CI tools. Hermes-Agent can decide per-task how to handle tool approvals:\r\n\r\n| Mode | Behavior |\r\n|------|----------|\r\n| `approve` (default) | Claude sends `control_request` → Hermes decides allow/deny |\r\n| `bypass` | Claude sends request but doesn't block; Hermes can log for audit |\r\n| `skip_permissions` | `--dangerously-skip-permissions` — no requests, maximum speed |\r\n\r\nFor quick development tasks, use `skip_permissions`. For production workloads that need an audit trail, keep the default `approve` mode. Hermes-Agent can also respond with `updatedInput` to modify tool parameters before Claude executes them.\r\n\r\n### Architecture\r\n\r\n```\r\nHermes ──HTTP──▶ h2c :<port> ──spawn──▶ Session (Claude Code)\r\n  │                   │                              │\r\n  │  Control Layer    │  server.mjs (HTTP routing)    │  reads CLAUDE.md\r\n  │  (create/cancel/  │  bridge.mjs (session pool)    │  loads skills\r\n  │   output/poll)    │  session.mjs (per-task proc)  │  edits files\r\n  │                   │                              │\r\n  │  Transport Layer  │  StdioTransport               │\r\n  │  (SSE streaming)  │  (NDJSON stdin/stdout pipe)   │  Claude stdout\r\n  │                   │                              │\r\n  └─ poll or SSE ◀────┴─ task output (status/result) ─┘\r\n```\r\n\r\nHermes-Agent dispatches tasks through two layers:\r\n\r\n- **Control Layer**: HTTP endpoints for task lifecycle — create, cancel, poll for results, health. This is what Sections 3.1–3.5 describe.\r\n- **Transport Layer**: Streaming, real-time progress, and persistent transcript via SSE and NDJSON. This is described below.\r\n\r\nClaude Code loads project-specific CLAUDE.md and skills from the working directory as a per-task child process. Each session is isolated.\r\n\r\n### Transport Layer\r\n\r\nBeyond polling `getTaskOutput`, Hermes-Agent can receive **real-time streaming** via Server-Sent Events (SSE) and read the raw Claude Code NDJSON transcript:\r\n\r\n#### SSE Streaming\r\n\r\nSubscribe to a task's output stream to receive events as they happen — no polling needed:\r\n\r\n```bash\r\ncurl -N \"http://<host>:<port>/v1/task/output/stream?task_id=task_xxx\" \\\r\n  -H \"Authorization: Basic <base64(bridge:key)>\"\r\n# event: chunk\r\n# data: {\"task_id\":\"task_xxx\",\"chunk\":\"Fixing the off-by-one...\\n\"}\r\n#\r\n# event: done\r\n# data: {\"task_id\":\"task_xxx\",\"status\":\"done\",\"exitCode\":0}\r\n```\r\n\r\nEvent types pushed over SSE:\r\n\r\n| Event | Description |\r\n|-------|-------------|\r\n| `chunk` | Incremental text output from Claude Code |\r\n| `status` | Task status change (running → done / failed) |\r\n| `tool_progress` | Tool execution progress (tool name + elapsed time) |\r\n| `permission_request` | Claude requests tool approval (in `approve` mode) |\r\n\r\n#### NDJSON Transcript\r\n\r\nThe raw Claude Code stdout is saved to `~/.h2c_transcript.jsonl`. Each line is a complete NDJSON message from Claude Code — `assistant` messages, `stream_event` deltas, `tool_use` blocks, and `result` messages with usage data:\r\n\r\n```jsonl\r\n{\"type\":\"stream_event\",\"event\":{\"type\":\"content_block_delta\",\"delta\":{\"type\":\"text_delta\",\"text\":\"Fixing\"}}}\r\n{\"type\":\"stream_event\",\"event\":{\"type\":\"content_block_delta\",\"delta\":{\"type\":\"text_delta\",\"text\":\" the\"}}}\r\n{\"type\":\"assistant\",\"message\":{\"content\":[{\"type\":\"text\",\"text\":\"Fixed the off-by-one error.\"}]}}\r\n{\"type\":\"result\",\"subtype\":\"success\",\"result\":\"...\",\"usage\":{\"input_tokens\":120,\"output_tokens\":45}}\r\n```\r\n\r\nHermes-Agent can tail this file for full Claude Code session history, or consume the SSE stream for live updates. The transport layer ensures no output is lost — even if the HTTP connection drops, the transcript file preserves every message.\r\n\r\n\r\n### Document References\r\n\r\n| Document | Contents |\r\n|----------|----------|\r\n| [DESIGN.md](DESIGN.md) | Architecture, protocol, session lifecycle, permission pipeline, API reference, changelog |\r\n| [docs/local-mode.md](docs/local-mode.md) | H2C_HOME auto-start mode |\r\n| [docs/spawn-mechanism.md](docs/spawn-mechanism.md) | Claude Code spawn protocol, NDJSON format |\r\n| [docs/mcp-spec.md](docs/mcp-spec.md) | MCP tool definitions (Claude Code integration) |\r\n\r\n---\r\n\r\n## License\r\n\r\nMIT\r\n\r\nCreated by **Xu Han** — [github.com/xuhancn](https://github.com/xuhancn)\r\n","readmeFilename":"README.md"}