{"_id":"@benkovy/doh-host","_rev":"25-021681b68e18b5ce64b66b472d5792d4","name":"@benkovy/doh-host","dist-tags":{"latest":"0.1.25"},"versions":{"0.1.0":{"name":"@benkovy/doh-host","version":"0.1.0","license":"MIT","_id":"@benkovy/doh-host@0.1.0","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"ec1454a76bc26d06b6c1dd3d516d4b36eefcfc40","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.0.tgz","fileCount":11,"integrity":"sha512-PNWknB8KiEc3EZT3cn4RQrYdBECZvKtejnouERr+hbVzelO495vXoTzg/Z1x5Ctm1XS+uSpcPbwqpCKHJdZmfg==","signatures":[{"sig":"MEQCIG0JkWiyIQQBg5YZpjzp/iZRBeJDAl2tzGrgMIPTvOQfAiAziqqijhKq1gHXLM9fXo1KwxNRlIEXxjwBDKwVWF8nNQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82092},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.0.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/ec78a30f19c552e6c5f2ab270f9b4e9c/benkovy-doh-host-0.1.0.tgz","_integrity":"sha512-PNWknB8KiEc3EZT3cn4RQrYdBECZvKtejnouERr+hbVzelO495vXoTzg/Z1x5Ctm1XS+uSpcPbwqpCKHJdZmfg==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.0_1772407425089_0.1662546067660442","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@benkovy/doh-host","version":"0.1.1","license":"MIT","_id":"@benkovy/doh-host@0.1.1","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"a64ede4bb106c362335896d5a5bf28ec87b248e7","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.1.tgz","fileCount":11,"integrity":"sha512-Ddx/qItnpnFNmNPnmQ/OuSa9NMM/go5tVQEn9zSd1vROX89D4e/YIRJqNFbwYIqxMlZNks1j4GsSMHmOHR136A==","signatures":[{"sig":"MEUCIQD5CWJMoaqMcvREC3TJn9I3xDkYfBxYO03VL1CWaU4AtQIgAaWW68hOGtF7yjWhaynHwzeMGfqQ0+arDozBGwCqRP0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82133},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.1.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/1d3469049dab62a5827f07217ccc6094/benkovy-doh-host-0.1.1.tgz","_integrity":"sha512-Ddx/qItnpnFNmNPnmQ/OuSa9NMM/go5tVQEn9zSd1vROX89D4e/YIRJqNFbwYIqxMlZNks1j4GsSMHmOHR136A==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.1_1772985818878_0.28019588924429195","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@benkovy/doh-host","version":"0.1.2","license":"MIT","_id":"@benkovy/doh-host@0.1.2","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"1a664178a788a3fd028e37f8341229bfd175df25","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.2.tgz","fileCount":11,"integrity":"sha512-BpFZ0SEEqVWjyZvb511JPcT7pg4V9BCcAjT3VVyOE+LviJqfBoUS+qLTNzq/SVRV1IG9WeZsMy47wI8SIP0zTw==","signatures":[{"sig":"MEUCIGW4a0HGFDQvrhez9TxI33RY3jFE4GdwIi9pLg+uV5jTAiEA7TwpvSSFr9xBzr5U3kgsiZThoU2ngY4V6Dde7BRUXQw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":86642},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.2.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/165406d9f8a1b79d2468c00390c27a9d/benkovy-doh-host-0.1.2.tgz","_integrity":"sha512-BpFZ0SEEqVWjyZvb511JPcT7pg4V9BCcAjT3VVyOE+LviJqfBoUS+qLTNzq/SVRV1IG9WeZsMy47wI8SIP0zTw==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.2_1772987893521_0.7142214462836813","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@benkovy/doh-host","version":"0.1.3","license":"MIT","_id":"@benkovy/doh-host@0.1.3","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"78eacfc1f79e2b84a3e7452aa3c0c3b3c44b92c4","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.3.tgz","fileCount":11,"integrity":"sha512-9Tv2BPuga+BYCPurHuJOPC+WtA9OGFdIbRUZ5M6KKtZI33y+Qh/bQ0EUe49CVdr5dAkOGC2bmcSdAsJ0VGlpOA==","signatures":[{"sig":"MEYCIQCAFVIahogfL3iHA7AcvZukman0/bkMmBiz3LzYCtdCtQIhAIx6Wy3O2rYDAPVAadOrJLmuJF4K0pIY1KFciMwQetGe","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":100237},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.3.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/2c8965fd05b323f3380ca6809680ee23/benkovy-doh-host-0.1.3.tgz","_integrity":"sha512-9Tv2BPuga+BYCPurHuJOPC+WtA9OGFdIbRUZ5M6KKtZI33y+Qh/bQ0EUe49CVdr5dAkOGC2bmcSdAsJ0VGlpOA==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.3_1772997204756_0.7625856780486366","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@benkovy/doh-host","version":"0.1.4","license":"MIT","_id":"@benkovy/doh-host@0.1.4","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"53e47df7fc9204830d642841e23b87dafc132825","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.4.tgz","fileCount":11,"integrity":"sha512-JV844D8TGRKWZE7lAFbtS7ZoLou2aniH1hSP8IEJN/waWxyn6AOdWJjUuySQ3/X6zsJEwQQwTcTUFUiypfiTDg==","signatures":[{"sig":"MEQCIHb51RFP/PxdFT1mh9wLp8kWGHfMqLrh2CaA+bl95LzxAiAPyVx4PJj61S8st4tXCmAyo674IKlgosOOePeLlA5N9g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":107974},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.4.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/e657eed75ffd35971f458f8a63f116b1/benkovy-doh-host-0.1.4.tgz","_integrity":"sha512-JV844D8TGRKWZE7lAFbtS7ZoLou2aniH1hSP8IEJN/waWxyn6AOdWJjUuySQ3/X6zsJEwQQwTcTUFUiypfiTDg==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.4_1773144647158_0.04918071336644125","host":"s3://npm-registry-packages-npm-production"}},"0.1.5":{"name":"@benkovy/doh-host","version":"0.1.5","license":"MIT","_id":"@benkovy/doh-host@0.1.5","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"9a42fc326856682dde069cd1c896eb652e151ba6","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.5.tgz","fileCount":11,"integrity":"sha512-EcKZPvGIbMrNrxp8L4n9Z3tkAZUCNrOSgSHrb8OcD0o5/GmKaEzFaFTFnusu3sdmtJdFtRLsleJiG7Qw3SZ7dQ==","signatures":[{"sig":"MEYCIQCMh37bwteOTu4e2KIQBocLg7tbf4uxyafSOJcjpvAuoAIhAPu/rOunxYl5eA/EOZHgxe/VB+f2HYXRafdBjwKyLo62","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110796},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.5.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/165243c9a9282a9523fc8f4a13e380c9/benkovy-doh-host-0.1.5.tgz","_integrity":"sha512-EcKZPvGIbMrNrxp8L4n9Z3tkAZUCNrOSgSHrb8OcD0o5/GmKaEzFaFTFnusu3sdmtJdFtRLsleJiG7Qw3SZ7dQ==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.5_1773152465934_0.9446755556524953","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@benkovy/doh-host","version":"0.1.6","license":"MIT","_id":"@benkovy/doh-host@0.1.6","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"7696feaad71f607115486d66063690b79aa8b5a0","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.6.tgz","fileCount":11,"integrity":"sha512-8K+nGuSfuBgCseWBK024hFUxXM8AoLQ8AmRAiHV7LWRVDAGoWtp3jW7xX6YQVsvULhMPBqKB6HzUxPjUc0sISQ==","signatures":[{"sig":"MEQCIEHSEnCTCGWSIsdyQL7Z52foEgLZugBKk2CGd48gNoikAiAnIaUcSdd2re+9Ts1pWOb7wgAOEtrOMXuyBGojBAeXXg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":112664},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.6.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/e155613af1142211774421a2bd7ff686/benkovy-doh-host-0.1.6.tgz","_integrity":"sha512-8K+nGuSfuBgCseWBK024hFUxXM8AoLQ8AmRAiHV7LWRVDAGoWtp3jW7xX6YQVsvULhMPBqKB6HzUxPjUc0sISQ==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.6_1773153086687_0.5683156224116752","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@benkovy/doh-host","version":"0.1.7","license":"MIT","_id":"@benkovy/doh-host@0.1.7","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"2f101c2cb5ef61c4ed234b89cba49b7b5f0bc789","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.7.tgz","fileCount":11,"integrity":"sha512-7lgkr/j0vR1V+iQwgqRbZfV55wIE/boRhsMNZrfvJbNNxoJmj4wDHDCEs6hD2/sWxCqCh24L9x5c3R2GlCT6iw==","signatures":[{"sig":"MEUCIQDKkOmWCcyNFc4NvN0JrCy1H2m02gFcytP/WL/tBu8H+AIgXREMc2eypmjN7hcjIRNENhUifMWQ+mD9v+1ra44h9OE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":112512},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.7.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/d738d0692b379b44b0b371416b27d84a/benkovy-doh-host-0.1.7.tgz","_integrity":"sha512-7lgkr/j0vR1V+iQwgqRbZfV55wIE/boRhsMNZrfvJbNNxoJmj4wDHDCEs6hD2/sWxCqCh24L9x5c3R2GlCT6iw==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.7_1773153730457_0.40934740565390526","host":"s3://npm-registry-packages-npm-production"}},"0.1.8":{"name":"@benkovy/doh-host","version":"0.1.8","license":"MIT","_id":"@benkovy/doh-host@0.1.8","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"e4b87a4b68a2717f59123cb79e912675fc69b894","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.8.tgz","fileCount":11,"integrity":"sha512-Jqe0EA1opjmOH6uIBTwz6hOSmk+q4jd5OQco+zFcZLYRjOPQdDk7SvAs4sANu3MadgOFo9KiOQHNgqg6soYaOw==","signatures":[{"sig":"MEUCIA4mNtMcYFVJRTKaWJnEOEh/E3k3J33Fa3oXksaixgg4AiEA1/SEUZv4hmmuHe+ik/m4ZkxWc25uANb0ZsLItEtmFec=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110262},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.8.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/1ef07d6f2e70500919ecd92713ef13a6/benkovy-doh-host-0.1.8.tgz","_integrity":"sha512-Jqe0EA1opjmOH6uIBTwz6hOSmk+q4jd5OQco+zFcZLYRjOPQdDk7SvAs4sANu3MadgOFo9KiOQHNgqg6soYaOw==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.8_1773157116516_0.7642469090778905","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"@benkovy/doh-host","version":"0.1.9","license":"MIT","_id":"@benkovy/doh-host@0.1.9","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"d3a68739cfa810b882adeb283a330602ba56f739","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.9.tgz","fileCount":11,"integrity":"sha512-mUxdUPky4ViY0jHGiXhDW5VOPv8J2JoLEFZQ9zhgqJOLokN70XAWTwsqheTrTGC3i8kcTM9I257cSPRjpO3r5Q==","signatures":[{"sig":"MEUCIEsygCzBLSOCC4dDlDZKyZUR50qDGHD+yxQOW8lWf2YJAiEAmgYNOS0W69dnuatfThoir8RchlUtMDTfHLHnSuIS+dg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":110375},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.9.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/853e11b7c41d8cd1c2e0a91ef1968d84/benkovy-doh-host-0.1.9.tgz","_integrity":"sha512-mUxdUPky4ViY0jHGiXhDW5VOPv8J2JoLEFZQ9zhgqJOLokN70XAWTwsqheTrTGC3i8kcTM9I257cSPRjpO3r5Q==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.9_1773158387190_0.35995686410356287","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"@benkovy/doh-host","version":"0.1.10","license":"MIT","_id":"@benkovy/doh-host@0.1.10","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"92a07b8cc2ee1ae7954e590883cb45624abbbf85","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.10.tgz","fileCount":11,"integrity":"sha512-utJ9YckWyts2rrhbgFwwQe2aKslYyfd1LWVKXoz+4648A+pK/WDkLcvPYAU4FJLMnf+4Zdl77wMoK++Thc60lw==","signatures":[{"sig":"MEYCIQDMIzhxrDeYiN6REaSaESjpae7O/NFC8nYDXMsC6QEZUQIhAJaIR9Xn64fmNOC0oLHDijqIau1aoOpkx10zeqfU1Jv6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":103301},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.10.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/c956060678683bcdbc9742e7eadc60f0/benkovy-doh-host-0.1.10.tgz","_integrity":"sha512-utJ9YckWyts2rrhbgFwwQe2aKslYyfd1LWVKXoz+4648A+pK/WDkLcvPYAU4FJLMnf+4Zdl77wMoK++Thc60lw==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.10_1773161396999_0.22331409571630934","host":"s3://npm-registry-packages-npm-production"}},"0.1.11":{"name":"@benkovy/doh-host","version":"0.1.11","license":"MIT","_id":"@benkovy/doh-host@0.1.11","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"c37887980f849c4bbb85ac7474b3ba5e642427e8","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.11.tgz","fileCount":11,"integrity":"sha512-ZRDeUUny07+hHv3o13wgvlU/14RpUvNrw+niNspIdu3r3cFDI5g6CkW26skPtRMZUQKEFLtqUC//f+w1nZUAaw==","signatures":[{"sig":"MEUCIFlyHRtTuqbTPxm7Q+7YbCIpaAm72emsLPoC8BJaCCtuAiEA5QJdsFxGB9+0b3ymxZXVhSh2972HafbMhhB56/kM5ro=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121066},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.11.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/2194473e04f3268096a8063b241d8131/benkovy-doh-host-0.1.11.tgz","_integrity":"sha512-ZRDeUUny07+hHv3o13wgvlU/14RpUvNrw+niNspIdu3r3cFDI5g6CkW26skPtRMZUQKEFLtqUC//f+w1nZUAaw==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.11_1773163220408_0.40812264515495156","host":"s3://npm-registry-packages-npm-production"}},"0.1.12":{"name":"@benkovy/doh-host","version":"0.1.12","license":"MIT","_id":"@benkovy/doh-host@0.1.12","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"c69a5b1a88e05ecb68f14bd53df0f77df86a9168","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.12.tgz","fileCount":11,"integrity":"sha512-BbSSa39HgZdYYLLcD70Xu8EMM3a9SdKWGFLeZ4+zwfUKhx6TrWZmSOesmX01NSLAC/ZJcrf5J3HvlvBqqkkS6w==","signatures":[{"sig":"MEYCIQDSsTUaUC9QH+Pdw56YOUsIRGfiZU8DTsWFZkKCxpa5iwIhAM06MYGZbcR3DLEsFqkql7X0ktwe7ihSlIH8hjQJASat","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121066},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.12.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/eaf8ca500bab7b8ab64b7d584a60b2bc/benkovy-doh-host-0.1.12.tgz","_integrity":"sha512-BbSSa39HgZdYYLLcD70Xu8EMM3a9SdKWGFLeZ4+zwfUKhx6TrWZmSOesmX01NSLAC/ZJcrf5J3HvlvBqqkkS6w==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.12_1773164370714_0.0937754890982816","host":"s3://npm-registry-packages-npm-production"}},"0.1.13":{"name":"@benkovy/doh-host","version":"0.1.13","license":"MIT","_id":"@benkovy/doh-host@0.1.13","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"450eae9fbb4e4d5d1aa34466d0300e098d430cd6","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.13.tgz","fileCount":11,"integrity":"sha512-gJjr8qhiZDCX/n4IGhYcso7rqZK7x3udBqtJqIrD3KDAMdZOovxjLevA7B+eGnS6y0uy5SETYh0ZRnUI6A+Zsg==","signatures":[{"sig":"MEYCIQDjlN1EhQlkKn0pE1HwibW9QOtjRLO+JiNXlaHOWjIp/AIhAPVgfUrsSnbvz1bz9mhI5UCxr7gU7XtRKsf4RYnI/Rus","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":121066},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.13.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/3b393c662df1f9fe76fa767e8956a09f/benkovy-doh-host-0.1.13.tgz","_integrity":"sha512-gJjr8qhiZDCX/n4IGhYcso7rqZK7x3udBqtJqIrD3KDAMdZOovxjLevA7B+eGnS6y0uy5SETYh0ZRnUI6A+Zsg==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.13_1773165244593_0.05872296978700575","host":"s3://npm-registry-packages-npm-production"}},"0.1.14":{"name":"@benkovy/doh-host","version":"0.1.14","license":"MIT","_id":"@benkovy/doh-host@0.1.14","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"2fd35cfcc32577ec02ace000af27b43c6e1c74d1","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.14.tgz","fileCount":14,"integrity":"sha512-suDNev8LGCP7NTq/CbmvoSZJCs6m5ayVusvKGrrF+8Oxd+qEh7sNFN808j4Ev5k6OKWZqevIE1uJZAH5U8K2uw==","signatures":[{"sig":"MEUCIQDaCT3MIRJBUd1MsxHvASX/9wUEbgWqVSgUjGVWTxdmnwIgAS+8LuR5qqSquwG9e5O6gGWwLPCZoGaoB6Xhak7Fzqk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":135446},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.14.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/cf6ea13652c7540992b828a10e60f155/benkovy-doh-host-0.1.14.tgz","_integrity":"sha512-suDNev8LGCP7NTq/CbmvoSZJCs6m5ayVusvKGrrF+8Oxd+qEh7sNFN808j4Ev5k6OKWZqevIE1uJZAH5U8K2uw==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.14_1773169214238_0.6140229089110387","host":"s3://npm-registry-packages-npm-production"}},"0.1.15":{"name":"@benkovy/doh-host","version":"0.1.15","license":"MIT","_id":"@benkovy/doh-host@0.1.15","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"ad4d044973f5e5cf26ef1cc524cca068dc8a20b7","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.15.tgz","fileCount":14,"integrity":"sha512-hNmyY+Q3Rqd7TmpvgZ5vFhXJHbkx3lbFVzaIvFdyRMT2liZZ2cgOwkwolPcVSSADTNSs6mz/ldf6Tsv0Eeb6bg==","signatures":[{"sig":"MEYCIQCBt3F6g6iqSQQkvctosyK+F6LP4GsVL3yKl6fnjE2tcAIhAPa0dpJjLvfNGIki41QtnwTnVYM4UrCn+JVR5Sot1tzx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":135683},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.15.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/9c1a8fde7632ea8072cd9a88b6c72e71/benkovy-doh-host-0.1.15.tgz","_integrity":"sha512-hNmyY+Q3Rqd7TmpvgZ5vFhXJHbkx3lbFVzaIvFdyRMT2liZZ2cgOwkwolPcVSSADTNSs6mz/ldf6Tsv0Eeb6bg==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.15_1773169742953_0.3036891350920008","host":"s3://npm-registry-packages-npm-production"}},"0.1.17":{"name":"@benkovy/doh-host","version":"0.1.17","license":"MIT","_id":"@benkovy/doh-host@0.1.17","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"e652984ac5b07aa814c705d95f98fc9f63e7b90d","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.17.tgz","fileCount":14,"integrity":"sha512-ZZ5ZxdGSExE7qKWKd1Y3G3HGZ40fNbhps/f4wG87u8ehVwycLo0Fq4blU9Bdh+j0wOGnmbzq9vhwcDNxR9i/MQ==","signatures":[{"sig":"MEQCIBEhCO6TvOM4PP/wlTo918m+UWGLkMz68T9MjZ4UW6b8AiAdgf+2qcTkXz6AitQx+ieoMmlgRj5Sx6XTVIQ9DpQroQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":149277},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.17.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/64210dc29d9d3d0e75d00110fea160a3/benkovy-doh-host-0.1.17.tgz","_integrity":"sha512-ZZ5ZxdGSExE7qKWKd1Y3G3HGZ40fNbhps/f4wG87u8ehVwycLo0Fq4blU9Bdh+j0wOGnmbzq9vhwcDNxR9i/MQ==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.17_1773182024716_0.7436260726045489","host":"s3://npm-registry-packages-npm-production"}},"0.1.18":{"name":"@benkovy/doh-host","version":"0.1.18","license":"MIT","_id":"@benkovy/doh-host@0.1.18","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"587219b0cf30aed62cb188e2b5286ce1145515a7","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.18.tgz","fileCount":17,"integrity":"sha512-M8zzZ0+M5J0qVomHxeStZX5mxsKXLI4pAUVN6TfG5hfSUucbbSxH5FINul98pnBA9I8eWLO3ZW7+QPCxzbnbLA==","signatures":[{"sig":"MEYCIQDgd2jcgCDYLqmxjl/jB/uknTd1PaaeYtV92acTTnn4yAIhANt35Dks46NXPQEMpIO0ejR8+CJ3d8YloYGiD1o4OF4Y","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":171516},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.18.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/f69c4d9fb0951ea664572877bc114c15/benkovy-doh-host-0.1.18.tgz","_integrity":"sha512-M8zzZ0+M5J0qVomHxeStZX5mxsKXLI4pAUVN6TfG5hfSUucbbSxH5FINul98pnBA9I8eWLO3ZW7+QPCxzbnbLA==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","@benkovy/doh-protocol":"^0.1.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.18_1774107819228_0.37283315410059337","host":"s3://npm-registry-packages-npm-production"}},"0.1.19":{"name":"@benkovy/doh-host","version":"0.1.19","license":"MIT","_id":"@benkovy/doh-host@0.1.19","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"c4edaf7aec728d8d9bea4718714d77c061dd837e","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.19.tgz","fileCount":17,"integrity":"sha512-h9NAIw3XOQfAM5YDrtyx8wMmjC7DKlKcUC+ukQET2S3SpqN+W6Dz+b344aDkY++B3Olruhc8lIJuXZ3mujwF5A==","signatures":[{"sig":"MEUCIQCnJ6MlUvQkbLJoG5jsirTh4KIiyL5RsFcmKZkyekL//QIgbosJIIon4qDFUesW6sko/WnNcFb90IpxsvWUCHeRjmI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":172185},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.19.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/d252e014a78a95c4d86de860ec0143a5/benkovy-doh-host-0.1.19.tgz","_integrity":"sha512-h9NAIw3XOQfAM5YDrtyx8wMmjC7DKlKcUC+ukQET2S3SpqN+W6Dz+b344aDkY++B3Olruhc8lIJuXZ3mujwF5A==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","commander":"^13.1.0","@benkovy/doh-protocol":"^0.1.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.19_1774109711038_0.2863934292259427","host":"s3://npm-registry-packages-npm-production"}},"0.1.20":{"name":"@benkovy/doh-host","version":"0.1.20","license":"MIT","_id":"@benkovy/doh-host@0.1.20","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"19bb2215266a17cdaa34e908b4876d9a3b18b4b3","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.20.tgz","fileCount":20,"integrity":"sha512-29kbJfLPwHEABwJgchZPoU4sBe3rD4xYumVHsmDBwV50zUcUBPp4hHuihdhrrbVs/y75F4/Av3b+Vy6EtDlWwg==","signatures":[{"sig":"MEYCIQDRJ+UH2c0ZGUVaYpmVYi0oUDe/lAip4/Qs0l1+DSt/wAIhANOUaMoHD0/7lHWzEYd5NfyWcR5s/ai932LsJcu4bJ7t","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":178021},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.20.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/70aa41842d2bb21c93b2b4538d402827/benkovy-doh-host-0.1.20.tgz","_integrity":"sha512-29kbJfLPwHEABwJgchZPoU4sBe3rD4xYumVHsmDBwV50zUcUBPp4hHuihdhrrbVs/y75F4/Av3b+Vy6EtDlWwg==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","commander":"^13.1.0","@benkovy/doh-protocol":"^0.1.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.20_1774115008446_0.574485775805786","host":"s3://npm-registry-packages-npm-production"}},"0.1.21":{"name":"@benkovy/doh-host","version":"0.1.21","license":"MIT","_id":"@benkovy/doh-host@0.1.21","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"4a9106d1f212d8847f3d9612e0b0c969e3e18159","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.21.tgz","fileCount":98,"integrity":"sha512-CHAsSTaoEdmlLxOPnO++Xtw7P1HXcJYPELczoWl5/JrMwiDL+lQGTvoyipP5GfYvpjtpSCj+6aiu8gqLkC7tow==","signatures":[{"sig":"MEQCIEdZaM+DNJaGEaPbHVQhYHDMgmz8QUgJARQBpLUMSqJdAiA2ApiZWW4ww9ydkUnTgtZ9n4y7p2RCgDXHLfr24IEdpA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":265479},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.21.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/edeae4e732d85dc488ca29e013d39b89/benkovy-doh-host-0.1.21.tgz","_integrity":"sha512-CHAsSTaoEdmlLxOPnO++Xtw7P1HXcJYPELczoWl5/JrMwiDL+lQGTvoyipP5GfYvpjtpSCj+6aiu8gqLkC7tow==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","commander":"^13.1.0","@mariozechner/pi-ai":"^0.65.0","@benkovy/doh-protocol":"^0.1.4","@mariozechner/pi-coding-agent":"^0.65.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.21_1775417887099_0.3637209146315772","host":"s3://npm-registry-packages-npm-production"}},"0.1.22":{"name":"@benkovy/doh-host","version":"0.1.22","license":"MIT","_id":"@benkovy/doh-host@0.1.22","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"bee6e005f23cb3ae088b3081ba79ddbb7133142f","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.22.tgz","fileCount":113,"integrity":"sha512-eJOSCO12GhlhRSWHrAwFZ2g8Ofshg8LIKBZ5Li0LTwn3eZi1G84yNj8RMZCzV3TzaXSND51GNkdTLZwsdZSDoA==","signatures":[{"sig":"MEUCIH044EZmcu/4UJMtrEC7wWdJlxPEKDLIg4QEoVZMbJOnAiEAoD9r9/UzpfJ+f38WBjQBJEofTEz1vcYikmQB6fxqA24=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":353450},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.22.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/ab06d5e62329921399adf55a41f89a41/benkovy-doh-host-0.1.22.tgz","_integrity":"sha512-eJOSCO12GhlhRSWHrAwFZ2g8Ofshg8LIKBZ5Li0LTwn3eZi1G84yNj8RMZCzV3TzaXSND51GNkdTLZwsdZSDoA==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","consola":"^3.4.2","commander":"^13.1.0","@mariozechner/pi-ai":"^0.65.0","@benkovy/doh-protocol":"^0.1.4","@mariozechner/pi-coding-agent":"^0.65.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.22_1775502694152_0.7907296971971978","host":"s3://npm-registry-packages-npm-production"}},"0.1.23":{"name":"@benkovy/doh-host","version":"0.1.23","license":"MIT","_id":"@benkovy/doh-host@0.1.23","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"281b61cbbbcf9a5fd34e2514ffa8adaa013a61b5","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.23.tgz","fileCount":119,"integrity":"sha512-pAGsmvcv9B+hYTKISKiN23cByXw8ioH2k/md6cs0TCT+nxbRa65B5V5YpjkEGWm9vPZ4aGxrZaZeM6hRPp1/BQ==","signatures":[{"sig":"MEUCIFVYmlWvFXRXfbu7RX2vYKOLK2WDKbRTmUD8CFkuhnRIAiEAqR+ZiNQtgxUiBHm69saEGh5FRApMADxwiMSUjBP2380=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":353965},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.23.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/cbb1a4c6cea4bab7bf3025eaef7b426a/benkovy-doh-host-0.1.23.tgz","_integrity":"sha512-pAGsmvcv9B+hYTKISKiN23cByXw8ioH2k/md6cs0TCT+nxbRa65B5V5YpjkEGWm9vPZ4aGxrZaZeM6hRPp1/BQ==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","consola":"^3.4.2","commander":"^13.1.0","@mariozechner/pi-ai":"^0.65.0","@benkovy/doh-protocol":"^0.1.4","@mariozechner/pi-coding-agent":"^0.65.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.23_1775520831395_0.04815148798250868","host":"s3://npm-registry-packages-npm-production"}},"0.1.24":{"name":"@benkovy/doh-host","version":"0.1.24","license":"MIT","_id":"@benkovy/doh-host@0.1.24","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"bin":{"doh-host":"dist/cli.js"},"dist":{"shasum":"27eb257330811815fb62eeeb82fe0a35f6145be3","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.24.tgz","fileCount":119,"integrity":"sha512-NM9WEUsl+kicMWPHJSiF5V7lzQql5Gxfrm3kW9ZMAJ9jK3FMASmxKPXUz6BBF6XowEvoRnixfRw24cqwXE63CQ==","signatures":[{"sig":"MEQCIFQvws6bZLhUNgAdHrEsqcRKUQxQtDCpl/W4IITarWeLAiB4wz1XqrSA8p+gIgy7vbiN5u/zmFFEoJp5EH6dl4DMog==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":375257},"main":"dist/index.js","type":"module","_from":"file:benkovy-doh-host-0.1.24.tgz","types":"dist/index.d.ts","scripts":{"dev":"tsx src/cli.ts","test":"vitest run","build":"rm -rf dist && tsc -p tsconfig.json","pack:dry":"npm pack --dry-run","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/d0a98b7e105cb26280421f20903eca96/benkovy-doh-host-0.1.24.tgz","_integrity":"sha512-NM9WEUsl+kicMWPHJSiF5V7lzQql5Gxfrm3kW9ZMAJ9jK3FMASmxKPXUz6BBF6XowEvoRnixfRw24cqwXE63CQ==","_npmVersion":"11.2.0","description":"Host-side connector that bridges OpenClaw and DOH backend","directories":{},"_nodeVersion":"23.7.0","dependencies":{"ws":"^8.18.3","consola":"^3.4.2","commander":"^13.1.0","@mariozechner/pi-ai":"^0.65.0","@benkovy/doh-protocol":"^0.1.5","@mariozechner/pi-coding-agent":"^0.65.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.5","vitest":"^3.2.4","@types/ws":"^8.18.1"},"_npmOperationalInternal":{"tmp":"tmp/doh-host_0.1.24_1775525590477_0.11192581831420156","host":"s3://npm-registry-packages-npm-production"}},"0.1.25":{"name":"@benkovy/doh-host","version":"0.1.25","description":"Host-side connector that bridges OpenClaw and DOH backend","license":"MIT","type":"module","main":"dist/index.js","types":"dist/index.d.ts","bin":{"doh-host":"dist/cli.js"},"publishConfig":{"access":"public"},"dependencies":{"@benkovy/doh-protocol":"^0.1.6","@mariozechner/pi-ai":"^0.65.0","@mariozechner/pi-coding-agent":"^0.65.0","commander":"^13.1.0","consola":"^3.4.2","ws":"^8.18.3"},"devDependencies":{"@types/ws":"^8.18.1","tsx":"^4.20.5","vitest":"^3.2.4"},"scripts":{"build":"rm -rf dist && tsc -p tsconfig.json","typecheck":"tsc -p tsconfig.json --noEmit","dev":"tsx src/cli.ts","test":"vitest run","pack:dry":"npm pack --dry-run"},"_id":"@benkovy/doh-host@0.1.25","_integrity":"sha512-T30FVhoFDZ/x2lKC2O9dWDEcq7Qnp9enZ/vqxJ2jjFN6FdNhCS4OOav1/dkTCClHXD/DxH4gXX4ugsU7DrCO8g==","_resolved":"/private/var/folders/fv/sllphrqn2rx6pzy4gx4l698r0000gn/T/1d034403c2c9e4b661e0e74cf71b3aa1/benkovy-doh-host-0.1.25.tgz","_from":"file:benkovy-doh-host-0.1.25.tgz","_nodeVersion":"23.7.0","_npmVersion":"11.2.0","dist":{"integrity":"sha512-T30FVhoFDZ/x2lKC2O9dWDEcq7Qnp9enZ/vqxJ2jjFN6FdNhCS4OOav1/dkTCClHXD/DxH4gXX4ugsU7DrCO8g==","shasum":"4d83692336c842f3886a4275b51492fec63cba54","tarball":"https://registry.npmjs.org/@benkovy/doh-host/-/doh-host-0.1.25.tgz","fileCount":119,"unpackedSize":374694,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDwpBq5KLH+p8DV9jdNCT+f1qfNxwFSZO4BsrlY0OQTiQIhAJf2Jx8tL6UOh320jlL7ACyjqofNeec9DC1Q9VXA60n7"}]},"_npmUser":{"name":"benkovy","email":"benjamnkovacs@gmail.com"},"directories":{},"maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/doh-host_0.1.25_1775526182570_0.426687397538029"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-01T23:23:45.001Z","modified":"2026-04-07T01:43:02.832Z","0.1.0":"2026-03-01T23:23:45.250Z","0.1.1":"2026-03-08T16:03:39.026Z","0.1.2":"2026-03-08T16:38:13.703Z","0.1.3":"2026-03-08T19:13:24.899Z","0.1.4":"2026-03-10T12:10:47.308Z","0.1.5":"2026-03-10T14:21:06.068Z","0.1.6":"2026-03-10T14:31:26.837Z","0.1.7":"2026-03-10T14:42:10.600Z","0.1.8":"2026-03-10T15:38:36.665Z","0.1.9":"2026-03-10T15:59:47.332Z","0.1.10":"2026-03-10T16:49:57.169Z","0.1.11":"2026-03-10T17:20:20.566Z","0.1.12":"2026-03-10T17:39:30.851Z","0.1.13":"2026-03-10T17:54:04.737Z","0.1.14":"2026-03-10T19:00:14.366Z","0.1.15":"2026-03-10T19:09:03.149Z","0.1.17":"2026-03-10T22:33:44.874Z","0.1.18":"2026-03-21T15:43:39.375Z","0.1.19":"2026-03-21T16:15:11.181Z","0.1.20":"2026-03-21T17:43:28.611Z","0.1.21":"2026-04-05T19:38:07.240Z","0.1.22":"2026-04-06T19:11:34.321Z","0.1.23":"2026-04-07T00:13:51.683Z","0.1.24":"2026-04-07T01:33:10.672Z","0.1.25":"2026-04-07T01:43:02.721Z"},"license":"MIT","description":"Host-side connector that bridges OpenClaw and DOH backend","maintainers":[{"name":"benkovy","email":"benjamnkovacs@gmail.com"}],"readme":"# @benkovy/doh-host\n\nHost-side connector runtime for DOH.\n\n## Role in the system\n\nThis process runs next to an OpenClaw host and creates an outbound, persistent WebSocket connection to the DOH backend.\n\nIt is responsible for:\n\n- host authentication handshake (`host.hello` -> `backend.challenge` -> `host.proof` -> `backend.ready`)\n- receiving downlink relay commands (`relay.send`, `relay.history.request`)\n- publishing uplink events (`relay.event`)\n- publishing history responses (`relay.history.response`)\n- reconnect behavior when network drops\n\n## Why this exists separately from the plugin\n\nKeeping the connector as a standalone package/process allows:\n\n- cleaner deployment and observability\n- independent versioning and rollout\n- option to reuse connector logic in non-plugin host integrations\n\nThe OpenClaw plugin package (`@benkovy/doh`) can wrap or invoke this connector behavior.\n\n## Environment variables\n\n- `DOH_RECONNECT_INITIAL_MS` (optional)\n- `DOH_RECONNECT_MAX_MS` (optional)\n- `DOH_RECONNECT_FACTOR` (optional)\n- `DOH_RECONNECT_JITTER` (optional)\n- `DOH_RECONNECT_MAX_ATTEMPTS` (optional, `0` = unlimited)\n\nRuntime identity and adapter settings are persisted in `~/.doh-host/config.json`.\n\nAdapter-specific environment can be defined under `adapter.env` in that config.\n\nFor the `pi` adapter, config also supports:\n\n- `adapter.tools` (optional, defaults to `read`, `write`, `edit`, `bash`)\n- `adapter.skills`\n  - `dir` (default `~/.agents/skills`)\n  - `include` (optional skill directory names to include)\n  - `exclude` (optional skill directory names to exclude)\n  - `enableModelLoad` (optional, default `true`; exposes `load_skill` tool)\n  - `enableSkillMetadataPrompt` (optional, default `true`; includes available skill metadata in prompt)\n  - `maxLoadsPerTurn` (optional, default `2`; limits `load_skill` calls per turn)\n  - `maxSkillBytes` (optional, default `65536`; max bytes for loaded `SKILL.md` and reference budget)\n- `adapter.env` provider settings\n  - `PI_MODEL` as `provider/modelId` (or `PI_PROVIDER` + `PI_MODEL_ID`)\n  - provider API key env vars (for example `OPENAI_API_KEY`, `ANTHROPIC_API_KEY`)\n\nSkill commands are always enabled for the pi adapter:\n\n- `/skill:<name> [args]` loads the named skill immediately and appends optional args as user request context.\n\nWhen a loaded skill includes `references/*.md`, doh-host includes those markdown references in the injected prompt block (subject to byte budget limits).\n\nWhen using `adapter.name = \"pi\"`, doh-host synchronizes a built-in `doh` skill into `adapter.skills.dir` on every startup (overwriting `doh/SKILL.md` and its `references/*.md` files).\n\nOptional process env overrides are still used for reconnect tuning and state dir:\n\n- `DOH_STATE_DIR`\n- `DOH_RECONNECT_INITIAL_MS`\n- `DOH_RECONNECT_MAX_MS`\n- `DOH_RECONNECT_FACTOR`\n- `DOH_RECONNECT_JITTER`\n- `DOH_RECONNECT_MAX_ATTEMPTS`\n\n## Init workflow\n\nCLI help:\n\n```bash\ndoh-host --help\n```\n\n`doh-host` supports self-serve bootstrap provisioning:\n\n```bash\ndoh-host init --email you@example.com\n```\n\nOr using token directly:\n\n```bash\ndoh-host init --token <token-from-email>\n```\n\nMachine-readable mode:\n\n```bash\ndoh-host init --token <token-from-email> --json\ndoh-host status --json\n```\n\nConfigure pi model and API key:\n\n```bash\ndoh-host config set-model --model openai/gpt-4o-mini\ndoh-host config set-api-key-env --provider openai --value <OPENAI_API_KEY>\n```\n\nAfter init completes, runtime config is written to:\n\n- `~/.doh-host/config.json`\n\n`init` writes config only. Start runtime explicitly with `doh-host run`.\n\nTo run with existing env vars/config only:\n\n```bash\ndoh-host run\n```\n\nTo inspect runtime/config state:\n\n```bash\ndoh-host status\n```\n\nTo probe live backend auth handshake and selected adapter health:\n\n```bash\ndoh-host status --probe\n```\n\nTo clear local host config state and restart onboarding:\n\n```bash\ndoh-host reset --yes\n```\n\nMachine-readable reset output:\n\n```bash\ndoh-host reset --yes --json\n```\n\n## Invite commands\n\nUse invites to grant client access:\n\n```bash\ndoh-host invite create --email partner@example.com\ndoh-host invite list --limit 50\ndoh-host invite revoke --invite-id <inviteId>\n```\n\n## Pi E2E smoke test\n\nAfter bootstrap and config:\n\n```bash\ndoh-host status --probe\ndoh-host run\n```\n\nIn a second terminal:\n\n```bash\ndoh-host invite create --email <client-email>\n```\n\nThen log in from the client app with the invited email and send a test message.\n\nNo command defaults to `run` mode.\n\n## LLM/Agent setup\n\nRecommended agent-driven onboarding sequence:\n\n1. Run `doh-host init --email <user-email>`\n2. Prompt the user to paste the bootstrap token from their email\n3. Run `doh-host init --token <token>`\n4. Run `doh-host run`\n5. Verify backend health reports at least one host connection\n\nThe runtime config file is written to `~/.doh-host/config.json`.\n\n## Process adapter architecture\n\n`doh-host` runtime now uses a process adapter interface so core relay logic is decoupled from any specific host process implementation.\n\nCurrent default adapter is `pi`.\n\nReserved adapter name:\n\n- `pi`: in-process adapter implementation\n\nAll other adapter names are treated as external socket adapters and must connect to:\n\n- `adapter.socketPath` from config, or\n- default `~/.doh-host/adapter.sock` when `adapter.name !== \"pi\"` and no socket path is provided.\n\nAdapter responsibilities:\n\n- `send(...)`: process user messages and return assistant output\n- `getHistory(...)`: return session history\n- `listSessions(...)`: return session summaries\n- optional run lifecycle callbacks (`start`/`end`/`error`)\n\nCore `doh-host` responsibilities (adapter-independent):\n\n- backend auth handshake/reconnect\n- relay envelope translation and publish semantics\n- runtime lock/single-process enforcement\n- invite APIs and host-authenticated backend HTTP calls\n- local UI bundle store and bundle response handling\n\nExternal adapters communicate with `doh-host` over Unix socket JSONL request/response frames.\nIf no external adapter is connected, runtime continues and relay requests fail with adapter-unavailable events until an adapter connects.\n\nDOH history is persisted in a local SQLite store at:\n\n- `~/.doh-host/history.sqlite`\n\nThe store is written directly during `relay.send` processing (pending -> sent/failed + assistant reply), so mobile history remains stable even if OpenClaw session maintenance prunes transcript artifacts.\n\nOn success/failure, the connector publishes corresponding `relay.event` entries for observability.\n\n## Development\n\n```bash\npnpm --filter @benkovy/doh-host dev\n```\n\n## Security notes\n\n- API key secrets are host-machine secrets, never client-facing\n- handshake uses nonce/challenge HMAC and timestamp checks in current scaffold\n- always use TLS (`wss://`) in non-local environments\n\n## Runtime diagnostics\n\nConnector logs are emitted as JSON lines and distinguish:\n\n- transport events (`connector.open`, `connector.closed`, `connector.error`)\n- auth events (`auth.challenge.received`, `auth.ready`, `auth.error`)\n- reconnect behavior (`connector.reconnect_scheduled`, `connector.reconnect_exhausted`)\n\n## Release smoke checklist\n\nBefore and after publishing `@benkovy/doh-host`, run this quick checklist:\n\n1. `doh-host status --probe` reports backend and adapter probes as `ok`.\n2. Backend health (`/health`) reports `hostConnections > 0` while `doh-host run` is active.\n3. Send a message from client and confirm assistant reply arrives (`relay.send.accepted`).\n4. Restart mobile app and verify history reloads without duplicated rows.\n\n## Next implementation steps\n\n1. Add reconnect resume with server-issued session token\n2. Add message idempotency tracking and ack/nack handling\n3. Add optional health endpoint wrapper for supervisor integrations\n4. Add dedicated Gateway transport health probing for startup diagnostics\n","readmeFilename":"README.md"}