{"_id":"@odla-ai/harness","_rev":"44-de0b5c6190e6be6a7970797a8e5f58fd","name":"@odla-ai/harness","dist-tags":{"latest":"0.11.19"},"versions":{"0.1.0":{"name":"@odla-ai/harness","version":"0.1.0","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.1.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"10391762dcd95fc58f75a9652524c2920d2a48d8","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.1.0.tgz","fileCount":47,"integrity":"sha512-V0LOnrn51Nj7Tl4xkDqut5h1FvKwRaku4W/WVNp+yJ0kNB5YjKv/5AA3FlZPpuMhH7vPP7MOUHRiU5rLpvO2SQ==","signatures":[{"sig":"MEYCIQC1fWV1Sez8IPTSi81xaxl0D87YOqlOLHYunVYoirSjhQIhAMVqwTEnObu7lNtq4J9w0i0T/Hpcl3KSumOfoDmTSG1h","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1335306},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"d6de0be048f2725203e6addc4db4a09b20f4f084","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/camel":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@odla-ai/ai":"*","@types/node":"^26.1.0"},"peerDependencies":{"@odla-ai/ai":">=0.4.0 <1.0.0"},"peerDependenciesMeta":{"@odla-ai/ai":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/harness_0.1.0_1785088422057_0.08950469935431205","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@odla-ai/harness","version":"0.1.1","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.1.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"8b50c6aab58ddabee4e5f5111528f28b79f3c042","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.1.1.tgz","fileCount":47,"integrity":"sha512-M1jM43bR4r7wd6kK/c9PHIm0Sm8jcTn1OO+LydkLBLUTxDtEenlF7TmOpOdEU4+PmxX1hlA8eoIRtS+YGcvFAg==","signatures":[{"sig":"MEQCIFSNkAFMTYkMquulXPjjJbSObrd28wPDdv3IdOcAbdnXAiBsSeUzovsr8WX0uOa07HFflhKw58Rkm7Y33J0rr6pjAQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1335755},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/camel":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@odla-ai/ai":"*","@types/node":"^26.1.0"},"peerDependencies":{"@odla-ai/ai":">=0.4.0 <1.0.0"},"peerDependenciesMeta":{"@odla-ai/ai":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/harness_0.1.1_1785088557129_0.16496965558467602","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@odla-ai/harness","version":"0.1.2","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.1.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"310fc5bd373bb16cca12a0955980c0d6988a0f97","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.1.2.tgz","fileCount":47,"integrity":"sha512-lG6w+yEmgES0uT3RHE9RwBHvxu5JkINTHpGuw/9z1g2ExNSsEp8eMz67EZLENR5yLrzp3HCeaNy65ILNe1xFlA==","signatures":[{"sig":"MEQCIC1NoAy3kyauhwrXwdCfYhlnpbUYCt9luWzRL6gXAnEQAiA0UCs+H6bzDI7zFU4uGvGJzKuEyShDQQEIO9qwPO46cg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1335751},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"0e9f023a86bbf79eeb4d84da19771e89deb05f66","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/camel":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@odla-ai/ai":"*","@types/node":"^26.1.0"},"peerDependencies":{"@odla-ai/ai":">=0.4.0 <1.0.0"},"peerDependenciesMeta":{"@odla-ai/ai":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/harness_0.1.2_1785357293863_0.5638858772428914","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@odla-ai/harness","version":"0.2.0","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.2.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"95940ea6239375e11c08fb0f33b1f25f34d89061","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.2.0.tgz","fileCount":47,"integrity":"sha512-ghJsV7T7fF8EOsRSsFzn/qjw8bFFGGsqCxT1sBBc/AHLYXF+8Kvue52M77JIKFBm1G88ctgwiPV01oeR3+51qA==","signatures":[{"sig":"MEYCIQCp7OUescQudQn7XdolaYY+qQ7AOfGP7HGWGwE2g2eBtAIhAIgVxFTmKYrJC9phgvOZI/gMK5gcVFbODuEOALpk4Ikj","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1839005},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"d8d31e6051c98f969b1380a3e8f75b13a25e14f3","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":"*","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.2.0_1786071824678_0.9426549822634864","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@odla-ai/harness","version":"0.3.0","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.3.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"ca44ac3bea971f2d80cdcbc5ce5c201097f3e80c","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.3.0.tgz","fileCount":47,"integrity":"sha512-5I9YFDC+LXw9CaNj/YNv1COBoMd5BTYUcaik/d1IYTUdZZfOHBnDB4EZZT2eHIy1+qGh5yIS/GRF234TKc9jQQ==","signatures":[{"sig":"MEYCIQDxyyhEYmm8M5lbkRwAqDKfCKgoZW++nEuBb0/wq5/BwAIhANvBcqhIuoS9GXj7eeJEjADYbrYYADuJ021VLEDjLh1v","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1905577},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"e15b982de5ebaf063818eae49ea069c12c999e90","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":"*","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.3.0_1786074582519_0.2924484900349744","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@odla-ai/harness","version":"0.4.0","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.4.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"6da91ac3f571b53eef6750c155b890c615864b9d","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.4.0.tgz","fileCount":47,"integrity":"sha512-OQz1f9IrhBOMfsGnUNbMfHpsOslX4POgd7LfkS4crH128D49Xe7du61W8nXmCOMZQRQarkrYYGUCZhAYGMJBOg==","signatures":[{"sig":"MEUCIBkP2MVsHvTaHGVeGfZgAP0yFkaEpwxCE7BPdZzAqFs/AiEAxU4L1TFKkLFMSTrPwRY2tufuyDqZg7gMfj+kbuzE3tk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1924584},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"f2486175ca5c7720bc5801b66e3d505c404c98dc","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":"*","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.4.0_1786115834118_0.8134268818737049","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@odla-ai/harness","version":"0.5.0","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.5.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"31a0ff14c4757b6bcbdc6d8e516c55cb3bc30bb2","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.5.0.tgz","fileCount":47,"integrity":"sha512-Gjsrn3f6HqlRmE67Z9rnDmskDsjIiv24YdsHXH9nsKkFHL5jUU8K6STLwMziiFxqHKj1qWWTUYJucvD3hc7iXQ==","signatures":[{"sig":"MEUCIGgX2hqU7yU7oZ5FzKaEKCSjZJz5TVPzA8hvV6WiV8JKAiEAqa1Kp/ZWYYw2gK2v2a5Q99PxZTZwMoMn1mUhFnPNnt4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1941700},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"85f65b137a6ee8233d4a8d8e39dd32ff1e0363d6","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":"*","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.5.0_1786500378698_0.2541240195790282","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"@odla-ai/harness","version":"0.5.1","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.5.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"6a0c6854666b8cc94f2bf03ef184d5dbb21182e7","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.5.1.tgz","fileCount":47,"integrity":"sha512-3f79O4w4qHxr3+wVsW9U+C1d+CviuOxccNB/mOmh4EmjkvklLeOKrORFLsluJfrDfhOZ+4iMICK6OOliXY/nYA==","signatures":[{"sig":"MEUCIQDEdeYpNqQfewWDy1A49W5p8x35obFllEd+boJX1TUEZwIgUHVWDhThJNe0prLKYu1edK8ehfG2jflpWNSKL8nQddo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1943608},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"2e467a0003bd62b785730d2b648033a69c59a5e2","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":"*","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.5.1_1786573894797_0.2914101270605476","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"@odla-ai/harness","version":"0.5.2","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.5.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"0cbed6593bce1fd2cae4b538cef7de7c39fb682b","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.5.2.tgz","fileCount":47,"integrity":"sha512-g7Aslfki1KoPLktRm2KEQuqh+SNGOKCwoWUeQT8CqxPYSKSnKUpNnGW2r8hVpMaWTcfhuzxJ05CkZdnU19FoAA==","signatures":[{"sig":"MEYCIQDmdNBwbog4OgOoKLFdMVZ6KW1/xhKMIwCue5PEBG5QoQIhALad0al92B3r7Z45TA5XJYVydnTGkeAL1doEoRN2hhfO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1942322},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"b9f55b02b556680f8f13d4dcf877c00b7c548281","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":"*","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.5.2_1786592259656_0.24489737301934067","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@odla-ai/harness","version":"0.6.0","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.6.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"aa120b1ecf5df1a410b881bfec1074cb794b7c32","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.6.0.tgz","fileCount":47,"integrity":"sha512-NauHdVqipiBsrjIqstWtx6OjyAUZmqbm2umqbDQaX7wnwUJm+wI0dzcxBGPG46t5AXxKdRZWCGxPQXLIGJwaKg==","signatures":[{"sig":"MEUCIQDeSDJScx6kfTDBH/tYWRM1YInngzz59VpU3EaN2kkCbwIgbG174tOA0Sjea9ONIRS+NMV4iPED/U46Rw+XK+ZQHh4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1945276},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"1a864492e2a8d4834328c2d28fee36111635e0b8","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":"*","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.6.0_1786634393939_0.08773224299098326","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@odla-ai/harness","version":"0.7.0","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.7.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"6cdae8e7879e7c2c090cae0e3d5dda0acc8089bb","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.7.0.tgz","fileCount":47,"integrity":"sha512-jWwi4zAQ7MzVpoJKt9ejBWhbAhZRakBR7RIz0yb29wNBJ0MH+XPE5gfTR09lfqy1sXf9y3J1GMsqC7+FsVSnKg==","signatures":[{"sig":"MEYCIQCCtcFGYPRp2G9y1poRzptrIYb2dcrEgxSxG1um2UBjbAIhAP2ksHwHudsJc7TJOPVxJAQwPmxr90vFwX479ITqeJFG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1951676},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"c0403d8a3e3043ed4eca0de401750ba16af0a3b2","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":"*","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.7.0_1786665212386_0.8033462089619734","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"@odla-ai/harness","version":"0.7.1","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.7.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"06af4480535d4e96035d7aa85e29ec0f0605716b","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.7.1.tgz","fileCount":47,"integrity":"sha512-Og4rCubLu4K/L5jYNs5dHlDT3Tyin0y07lzPNcldfhZ7RyoUDsTMAnhIfPRp9JV/RiyogJ9d8vrJQSQqQYjMCQ==","signatures":[{"sig":"MEUCIQDJjzolZ1qZxV0jzXq7skzZx5Qt0YLDl1+1QlSKzWDyYAIgSjkNozAbJVk/CGvvi5r05orsxcyGQzCsUUZWyENw8qI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2001200},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"48b496b2a50f85273443cedda4324ee740ad8b99","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":"*","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.7.1_1786729964033_0.5321954371919653","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@odla-ai/harness","version":"0.8.0","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.8.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"9db5e2da60bc2a74d35bb85d47ae6ee20d5a12e8","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.8.0.tgz","fileCount":47,"integrity":"sha512-fStcM/kHNvZXOKIgywGPp46plt1QJi7uAcNnwOD96NtV6WwXbMUzqLoreU6g5aURn7lmEGLGcRG8c3tfaqRo7A==","signatures":[{"sig":"MEQCIETJb/kx3xa9nWBmAfSy1bBrI29AeJC4eQ4svHm2BDp9AiAMoXQ6ninvFAEuETFSb39VVd55pyKhWOnxjnakbJJxzA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2062535},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"e223c39d495e74c773134606ea85c41c09a861f3","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":"*","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.8.0_1786738916344_0.8539457385325893","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"@odla-ai/harness","version":"0.8.1","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.8.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"23e23677e195092c67ab4af7e16ace17bd3cbf37","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.8.1.tgz","fileCount":47,"integrity":"sha512-1KA3G/jGEwvJs5M/J+PAT2S0s7fkVfUpGLUcUx375D8NSXldMO+N5O5j9Q0YXwfIUBljfLnE+CzDraiH7NinRA==","signatures":[{"sig":"MEUCIQDPxyIevwXo4DndOV+YKqBMo8lzSbHPp66bbWKPzLEtdAIgJdR04FUezQ+QmPYaZpHZfE9LjDB2pMULul8qOoeh1O4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2072170},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"aa7e28b14960396c4c91af468bd88bb6910684a4","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":"*","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.8.1_1787257524413_0.9121735940086948","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@odla-ai/harness","version":"0.9.0","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.9.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"05632a033ca5293c8864c7300d3fa2f3c1fdd421","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.9.0.tgz","fileCount":47,"integrity":"sha512-JgPWNIWwJ2hEmHZ3dNd5aXNPeVoPjZVQYgKpuppInwAr49mcW8op08yLNx2fXMJj6Y5sknNtXjoANzjnbKN4Fw==","signatures":[{"sig":"MEUCIQCjVkB7II0fJUjYWToPAUuIdbvAJJIOjiClPk4Hj4kj4wIgNz0rzqFz0ep5PVClh5tPQELH+0FHvoM8rQy1IvLDyMc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2148223},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"9591a71e4e6b93df227f9b5b9100c3ac9d0a93d9","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.9.0_1787264841023_0.25343431360829505","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"@odla-ai/harness","version":"0.9.1","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.9.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"8d0797a87f29bc5e2640ba31f1e1d7f6a4f18e79","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.9.1.tgz","fileCount":47,"integrity":"sha512-R5k3sqbxNwyxKWSlwWRqUUNKYw4Ib6ZLf0qOxJDaziRyoiVwIg2RWNo+1XeSjjAyOA+byE+ooETNxV5HL3qWew==","signatures":[{"sig":"MEUCIQCEd63Su0USleO1y/3rEoUAGTnDR4XyhezyqENJemYuIQIgJKZJGXlfdRwprtyH+smcCiukxTNcMZbvyKmu2PV8IQw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2170822},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"518879b9c9d991b5c3c782937493b0672fb9ae06","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.9.1_1787505993421_0.33816530775192666","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"@odla-ai/harness","version":"0.9.2","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.9.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"97ea91c6eef83604b926f0aff175f8f3b168e707","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.9.2.tgz","fileCount":49,"integrity":"sha512-Dq2F7fnsotmcx94qL1n96DANM/5FhSCvkXqxlB7+cPpEbhgkMJTyRrQ6x3eDdowZMxlkSK9XziPGhb8T9onGLw==","signatures":[{"sig":"MEUCIQCSfyDAORQsy8ZSLeAHe4UI2vUZ4svxeT3/OD7h9d26XwIgeYtViE3KRzvA4/jwvmFbwhuHqfnpwDiCJnkttMvQu4g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2251007},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"b656d3ee24d28aad7b0fd73cf2ce679ec306b8d5","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.9.2_1787696329438_0.4526760790489315","host":"s3://npm-registry-packages-npm-production"}},"0.9.3":{"name":"@odla-ai/harness","version":"0.9.3","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.9.3","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"9ed60eb65cce10aa89cac09c52862bf1b766b0ad","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.9.3.tgz","fileCount":49,"integrity":"sha512-DLyn5TRAO9vxi91zSHOw5jpM7FidkTH0a9gE4bIPKUlucfk5ecQB7Zju4O7GQBZtJu8KNpOMgCimGU/Az2h+CA==","signatures":[{"sig":"MEUCIDaCXVyM08vkPmF1soHz9oN3jHBjWxz4DNkEUvs1sg1gAiEAn13I07ODVIJIkZ+8vKmSmWNFnZf+Z8zfsV+hS/LQBV8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2257100},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"966edd03bf5cb66cef361080ec0c829da929707f","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.9.3_1788033381359_0.4817288794306325","host":"s3://npm-registry-packages-npm-production"}},"0.9.4":{"name":"@odla-ai/harness","version":"0.9.4","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.9.4","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"3c203dabb1dc9dd7cbf64beff09c1f03b7942a4e","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.9.4.tgz","fileCount":49,"integrity":"sha512-rYKN29KAdFxI63TZdJdr+XQAyzOrzTJuLxqVimFqRaCz38BArRETlaclxup/V6ucvhY4Q9Mst0QD/uYLFIGLoA==","signatures":[{"sig":"MEQCIAwg5GbyOErv2FNYHJ4creFAIn7JQuJtNSSxbwZRGLpvAiA1qi297WAFY+CB5+2XUcc/rji2i9l20MypMBXGyhBmHA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2263824},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"75bd191b3e570bc4f0b45edd57cf830e7abaad5d","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.9.4_1788051928995_0.3735393347917739","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@odla-ai/harness","version":"0.10.0","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.10.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"cf57476c02ce19f6bcef448342786df5056696d4","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.10.0.tgz","fileCount":49,"integrity":"sha512-TSgcWZvp0O2xp9eKIbptvG9EK3j+CNkgSp2SNcOgHVbG7DkdE6O0nH+fFDAEHKWjWvEWVojertFkvmkbxy6tsQ==","signatures":[{"sig":"MEUCIQCUvUd1wihkPEl3FVXsWwRweAIW8ozCug9Ilsqt8JFWWgIgXK8kAKD2hOvilFAPDgxq7K8ACR5Hp7wgRbR+kCBGuhE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2266640},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"fbfdae2bb006935e1b196ffc329b9313d8ade519","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:5525dbac-4662-4f48-99b4-abb7ebeebcbc"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.10.0_1788054838675_0.6385113580036841","host":"s3://npm-registry-packages-npm-production"}},"0.10.1":{"name":"@odla-ai/harness","version":"0.10.1","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.10.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"9bbb3761ad6fb21a22f1199c9cc4dfe8b4eeb6b8","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.10.1.tgz","fileCount":49,"integrity":"sha512-lIUIdCeCQtr/91QtqnoBw5m6LC5splCDXH0IGrJVq/e8pi+e6B/5VcHRG9Z3v32eBob4oPncGsoJTEAILCNARg==","signatures":[{"sig":"MEQCIE9sZtXhEwDY3xCTbG8tX7wyUvUp2TWOyY+IaVGVjPP+AiBd8B1jrvYUc+ZOpqTfUX7jtsgJUZ5+DtLwJ/yqzO1KAg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2463519},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"ac853075e7bb62762c36c9fe27822a7255eb98a8","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.10.1_1788390293997_0.6441836787212769","host":"s3://npm-registry-packages-npm-production"}},"0.10.2":{"name":"@odla-ai/harness","version":"0.10.2","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.10.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"ad0f16914c10974b74fc07e8135ea9aafb726795","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.10.2.tgz","fileCount":49,"integrity":"sha512-J2zIRUHVQEePEidx6YQHwnGaPcET1RtKU4hy95FDR2PSlPvjKfZVB7HdHfwSQI+/z0idWMPtLkH4RoaNT6gqAA==","signatures":[{"sig":"MEUCIBCwIVMn3oGv2K2cAIKnP+LcvvFR3mz72NKSTFTng7NiAiEAztBLhrl+bx3sEqpcssIMQqSAGA+jD/DFkGvIjORiWeo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2514688},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"859d55b46447fd287ae2680b4da233a12fc028c7","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.10.2_1788393642595_0.8104251477131121","host":"s3://npm-registry-packages-npm-production"}},"0.10.3":{"name":"@odla-ai/harness","version":"0.10.3","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.10.3","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"a45ea3eeba3e26e10423bf5dd2316c2fdbfd46fe","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.10.3.tgz","fileCount":49,"integrity":"sha512-ODkx1HoExomzPDhX5p3Q7rGsZwrxQh4AUI1B7nSTAEOQSDTLDly9YHEiEvT02LBApL/OXfn26A1iW81vax2AZQ==","signatures":[{"sig":"MEUCIQDrKKAZC0BaJoGBQWDti67AR5EuFpiXacFw+cJearGszwIgOxbeA+bpi1wsz3jNHwq/idZnL10llIA31q6iBvcPsSs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2520549},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"4a6bcc4d65a4ea3033a8b23aab4854cbb2af22bc","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.10.3_1788398144164_0.5296434908342527","host":"s3://npm-registry-packages-npm-production"}},"0.10.4":{"name":"@odla-ai/harness","version":"0.10.4","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.10.4","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"a63ab60f70b64e66adcc68bdfdb75295fe0bdcd9","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.10.4.tgz","fileCount":49,"integrity":"sha512-OFnUTXBq0CA6+RQvXNg+VE5sFlDgdhblqYcVsYRGZzmdLuchEoPlaTi4Qh/2RUvxIgkLapKnsi10QEArqSFTaA==","signatures":[{"sig":"MEUCIQDduhmkpBNFL7DULfJFPqx4ptbKCgaH/wVkxWuhRkzCCQIgd5Ko7XxnahkTdokjSAHFrjRo4cvExeY4N11cNq3ZR+0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2527988},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"b61855dba58504cc2820e9a120fe3df0eb0a3f26","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.10.4_1788401049076_0.4232352386516167","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@odla-ai/harness","version":"0.11.0","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.0","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"4400125d8942e63d3ed613ab467927b116de65e4","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.0.tgz","fileCount":49,"integrity":"sha512-2tX3D8Q0W8ER6t1TzBeWvr+fvQSG/4zVbb5hEYAQX67kQlrOmndil3mTDcGtBiW+V6aroen35AOYw9Ww2XMeAg==","signatures":[{"sig":"MEQCIQD2UPNgXSKMX8zKmrL3LKJNLzMUWx+8CqWS2nAZOZ2YFQIfT3x+IJTfN6uc4GPjLhDFIKTgv/suYwCK0wB1n4R3qQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2591550},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"79aa659e0c04ec1f14e27b8c93444ca74a638a4f","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.0_1788406780693_0.9654441456719833","host":"s3://npm-registry-packages-npm-production"}},"0.11.1":{"name":"@odla-ai/harness","version":"0.11.1","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.1","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"23d9a6c3e2db825dfb8ab312e2614dc54de765e1","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.1.tgz","fileCount":49,"integrity":"sha512-scuva/k9FQZHt+XoeI0x4zJccFcdxREJyuOuDzAoYyt7hJUJ+6aGKOkVwFdC5s5F91a+C52N05ja6XgAiZNJkw==","signatures":[{"sig":"MEQCIHyMYMil6vBiNJYmPksYKHA0OCiR7Xsbtf2R4ZQ77KP+AiB27ouQFwvNyYFPaRAgDwpSESdfzF8FI79FJCBG6+8U4g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2603530},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"3599127b25b569c721c8df7f1b6f9219f9bde08b","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.1_1788411470289_0.5257878241028662","host":"s3://npm-registry-packages-npm-production"}},"0.11.2":{"name":"@odla-ai/harness","version":"0.11.2","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.2","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"61790355532f573b3f7be3f3dfb974c494914b65","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.2.tgz","fileCount":49,"integrity":"sha512-HdqirAcMkclqg7erSPI04hLEs71Unvo6cqSW8Upy3j1TntPF78QiPFrCuw7RMFyiVCSXEMgPdvUuBgZg5H6h/A==","signatures":[{"sig":"MEYCIQClrxvFRXzjKLAVF3CRp1NqsMTfRZIEumdgeaBoAiMgSQIhAMyWXSc+PlzbK99vfIP+4wk5ukkEY+ZRecwhWw136T9U","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCsO5fYPssgpag0jf9SavtdDlT8dUtSUNXqNPkHHHjJCgIhANdZGo/Xg1VitSgROtWXbVXOg2Pc2Hpfz1O0Sc2QC0cn","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2618133},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"ed10123f630d4481a00dd4327a5e0634bf6ce43f","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.2_1788469290821_0.08653760992738357","host":"s3://npm-registry-packages-npm-production"}},"0.11.3":{"name":"@odla-ai/harness","version":"0.11.3","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.3","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"474aa3a7e4f9b6e54c85c0f4fd3ef31aaff52164","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.3.tgz","fileCount":49,"integrity":"sha512-WYrZD2D1k2xvQvY7Tu8TQf1nWkOZr5E9ujUq17X6XPm6+CJPJ8TTb4ffX5ua/NFqFAO0LfopY+HysSb4glFqmg==","signatures":[{"sig":"MEQCIFaYTGPMIWJiXUmZ4nsk4b3Zq7GWoC/Nh1fP2Y7Tt3asAiAtR7mVyGouNurXP7K/r1fP0boU2Jdd+g6BxyJNLf783Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAN2R82Xgj/B0V9LismPHvvdDQL/H4dke2ducTOzckHUAiBoxC2v+JRxd2L2iKNnaSHFN1zPjnNx7tjYLIM7m0fKdw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2651850},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"1858ee3cae21f1cfe662b4fbdcf9e857eed70703","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.3_1788478353117_0.9007634192235554","host":"s3://npm-registry-packages-npm-production"}},"0.11.4":{"name":"@odla-ai/harness","version":"0.11.4","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.4","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"85773980717bc0da7cceb0deee37a7e872f1b9cc","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.4.tgz","fileCount":49,"integrity":"sha512-nXP0hJrIZbrLItX3ci++MJ91hEo5j3Bqy8coZhX7YcDJEGdc9f8JZh6Bw1cd0U7WoFoTTE71W6300jORp8/3LQ==","signatures":[{"sig":"MEQCIAF43wuWfWUjun/t/ifJxSi443B6ckBSyCxAq+GeL/kCAiBZu1yzcUj+qiZdhNOZH5dUvO43JYSaxx5BiFSQP4uEJA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAXvaVWbaXE8EQza3a4FZZ7/iz/gvrDe3iBZH0k+WDr2AiBHpPjniUD8XqzEPow3q4UcDL9bY9sj54uzy2OPSV4tbg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2653029},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"e9e0e90679bf290ccdf62b38aa15043e0d37089b","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.4_1788482860714_0.5299743688722678","host":"s3://npm-registry-packages-npm-production"}},"0.11.5":{"name":"@odla-ai/harness","version":"0.11.5","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.5","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"45318b0e6cb566c62e8fa83703f18a300d10df8d","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.5.tgz","fileCount":49,"integrity":"sha512-poIJcjC19FTKpb8DI4xGfgqHFVpJcqNInzbyQMv3uAncPJ1peb7eop6MpatorL/+y8hYkfVP7NNHkvkPG++rLA==","signatures":[{"sig":"MEYCIQDcksAvEtBa7mcJCMt40bt/JWMR0L3mgIGQwDx4bG/W6QIhAJHgKuFl7H34zK5YlumEbaHdk9Q4ebhjOs3NtvTGx4l1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIDCL3FnHq1EvXrfmesPpL/kc0Bb9AEZVhT72ym3TpFaPAiEA/EWzq+ZaEEq/Fh+sZYPt/mmrirrXBBtwyci2EHoBgvo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2654868},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"744dd426f03ea0b8316c6428bf4644e120c12d1d","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.5_1788489917802_0.4649017433595535","host":"s3://npm-registry-packages-npm-production"}},"0.11.6":{"name":"@odla-ai/harness","version":"0.11.6","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.6","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"95e00e0ca06f5133d94f717dfd51cd2e65c2641e","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.6.tgz","fileCount":49,"integrity":"sha512-MQH95tG6ud4PBnEfYSkm7qLwV37SnVsG8Ll+grDaBMNXVu/7Igvdyc3pGK31THqcemAbKuOGUCbZRLxIf+D3vQ==","signatures":[{"sig":"MEYCIQDDV62Or8DNEPhFsrCH5VbcMD4ofPPm1KX8EMLlJO9PRQIhAI6cORxrx4gnu3Ddmv9B7KNWN8eUWu+SL6fDdqTOGBgH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIGDcvZBIXfNtGRhdd47rGbQ2gHyaXL9gImfLQEgrohcYAiBsicwb6uctkEso6JbikN/P54bx8v9RfKYuju1ONfvZ6w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2663034},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"4665a554433b2124a17cfdbe50216e00f788e026","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.6_1788497977128_0.21970201299941094","host":"s3://npm-registry-packages-npm-production"}},"0.11.7":{"name":"@odla-ai/harness","version":"0.11.7","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.7","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"bb173a65aba0ffb7f0227ab3421e23fe6aa9b31c","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.7.tgz","fileCount":49,"integrity":"sha512-yGXj5W4L7EzHztkm5W5Kj5INOhnoLr3tWPBB2ykSBE5vr7fTmE8lk8SlzkjfGPeSnIkFLb7s6337hfVMECPChg==","signatures":[{"sig":"MEYCIQDu8rscVt/S97HQeq8cDxI2gKecWqZ8i2E9iUocjpZZHQIhAI8t6WJeWPr96wxUXbLvojNXuV0S9YbmTDhrj/biLbf3","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAqFq5ANrEc4TK3r8/moVNK/rNnLdI5B11CsnLj21UTqAiAkY659z4r3eu+noi6Wdnw+t3spKorR6k0/bied3y4aWg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2684304},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"f5c403279ce086ecdec915d063932cda1dbfe644","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.7_1788570993812_0.15306594940738205","host":"s3://npm-registry-packages-npm-production"}},"0.11.8":{"name":"@odla-ai/harness","version":"0.11.8","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.8","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"a7da330a6a8fbcf4263e30b7f13a76398a176567","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.8.tgz","fileCount":49,"integrity":"sha512-q/o+1A0fl4YYqY1f3KM28sRQaNgsY2wl5XHPtCyBAcXgS8W3mE+32T2LHz70zqMISmdQNPSuwfA2WDyy2kRhkg==","signatures":[{"sig":"MEUCIQCPMBSUvSgqEf3aE29iBtptJe3p59sBNEAS97FlHpI8HwIgJjd1pSuIyslGh+PISHrsrylYDfS/ecZeDq5ZZCcgLNQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD0/XmBYXMlVFm28QoV6RUimDWk4zFzfXuKadf4okX5YQIhAKjaJBBw0TvzIapHz8rSLEWchgmcDZmJMTUvbHcPG6zD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2734334},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"c56cbb20e0e04d59a13cf1f040fda98ee2add2ba","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.8_1788573863188_0.6695605323130107","host":"s3://npm-registry-packages-npm-production"}},"0.11.9":{"name":"@odla-ai/harness","version":"0.11.9","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.9","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"43196cab218fe644723d71d3c05305b3c82dd231","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.9.tgz","fileCount":49,"integrity":"sha512-+ZiiQ+p9w5C0V5p8C5WFSDkHqY5KW+2Hhtm86lZBI4p8d/Xr3yJo08iy+QiapdDWcrScTFIIccEtzQMMKQmIyA==","signatures":[{"sig":"MEUCIATESsf6i/+mEQFSlpVJFMBORHwhB6CF2cJM/9+lK/WgAiEArJ4y/IU5Pkb8w3etF8HMODmHv9oAfLawCgMiLSYNY/w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIHiy5D7L7/PEWrt+pyLA7MZ0IYUODAtX15FyGc4W2X+yAiBFcvsZ/L4gT3KevJ8PmnC4BDBjh+/PQlzrWlNXVR38zw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2744777},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"89b7ec865106477830369b15b9b8c8b29e453f03","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.9_1788592303455_0.682717453724089","host":"s3://npm-registry-packages-npm-production"}},"0.11.10":{"name":"@odla-ai/harness","version":"0.11.10","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.10","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"398d2a78f464297d7b4d2964bfadf6c145f00812","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.10.tgz","fileCount":49,"integrity":"sha512-Z5QNkNIfKTX9L2PPqJKmlfMz9bfm76U3PoQJrL42F9GC5qDs1zWmmE1iNbU14xNIqvRsbXij+LH78nmNf9ZzSw==","signatures":[{"sig":"MEUCIQCIJCqxsAj0jZXQrLPBeVkE7jmD7be34G2BtIBMPzxJCwIgLZlPwJSsWWCJ0eUT+MtJJszmKlfjaFyJTO0vfakwmy8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAfrgH47AXTGOYyaARan5cXG2/tQtqWX/MCklFceY8UoAiB51d8VdqCQiJ9k4BX7+EcWeg46MoPNjdsOTJo6lqTNGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2781692},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"88e909be2aebb4e7c524c89729106f1eb01ec21b","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.10_1788594789414_0.43572566764350906","host":"s3://npm-registry-packages-npm-production"}},"0.11.11":{"name":"@odla-ai/harness","version":"0.11.11","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.11","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"b4c4183b42fcbddf676f3f3c9c23bd50784a3f58","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.11.tgz","fileCount":49,"integrity":"sha512-fx/BIlRPPqPjlQuEn4JyNgEALTHR7cIRvokUxsTYaGBAngvFF8EawQoBaT7LmNEMi4FgzP+YkyiFT3e2tNLz+Q==","signatures":[{"sig":"MEYCIQDRQVaZQbbfBcrB+prOqObexGguTKG5ontgDbRdXEvvAgIhAI6eFvtHylo5+uMyZeuW+rrQZ2aGHMU3NmmWodrmZP+S","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCnt8EjRcev2C+Gco3EBpbPcJmF2FG1YbfiM/ZpK45B0QIgJF1IEyRlJdoIkbQ+0LZ9+FweUO7QqYDrz6HCwe4Pu2Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2782428},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"dcdf9d54499d5410373a633a913d0c604a1b9846","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.11_1788596291746_0.9870041687716755","host":"s3://npm-registry-packages-npm-production"}},"0.11.12":{"name":"@odla-ai/harness","version":"0.11.12","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.12","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"49fa24981b26af4ef6fdf795b6645f74e4609a16","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.12.tgz","fileCount":49,"integrity":"sha512-zWEMqGJz0+2hBSPuWzfv+COJakzP+YiP/hO7psiaMTiBMcqBoqdetzzU5wzcYtoQX2uYCE70TVr9tJIEXAb9+Q==","signatures":[{"sig":"MEUCIQDrN3hXAqxXMCPrdWN63/uQsgfnkbSQJqNTJMxmDCbGxAIgU7Ux9fOfghr4i33/22gNfb0ug13vBEUcZM70i6aCRkY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDgWOukFB0B99UfST8dfPrVfA2BudGyhZDORulsrrJLpQIhALKr9fdjd5P1uqPzjuua/m/suCHgXNeq1DOF1OuJlcNa","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2861102},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"e8ccbf880eb4e15a0e1ea67c14f47f2f89043dd2","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.12_1788599133737_0.7079816507293362","host":"s3://npm-registry-packages-npm-production"}},"0.11.13":{"name":"@odla-ai/harness","version":"0.11.13","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.13","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"d7cd07ed0fdbbfe870634c825e8612930dfccd49","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.13.tgz","fileCount":49,"integrity":"sha512-EVMkuod2Kk3bvfMiCvCRiaW3Yijc3FT1TOHZtffmOcksoRnXwjYbOIR4vH+OhMZHhlQOFtcteDMONc44Xj6mpg==","signatures":[{"sig":"MEUCIQCKi4n3v3L+24uIjJZN1/2gAt0CH1Z3GacLshHPUTNH2wIgIBGDL0u/HcwmB7P1NXDmj4kkJh374YBV+yceZ0aJ1dI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD0+SE+aQ3OE5FHv48Dlb4t+uSX3bvLbi8vKma7VRO+CwIgMvQswTD80t/f0yThzRxi01SOGtfRkFhyQItQ2LW06rE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2867093},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"8c071c0bad2d34bf6235a81ee6732eed560bdd2f","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.13_1788601248024_0.37531263857993835","host":"s3://npm-registry-packages-npm-production"}},"0.11.14":{"name":"@odla-ai/harness","version":"0.11.14","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.14","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"f6c7e49913d142f625cb1087013f292296495fb0","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.14.tgz","fileCount":49,"integrity":"sha512-JTDHOwzS7tfkiKGhMhY/j1qyMTA/OlIEEzYPwJ0u9+U9F4TY8CY1ryvuqwlIiUlgfRBeVXJX1kxwiC9cLXIEyQ==","signatures":[{"sig":"MEUCIQCdf/xvd6lGl8lLlBtVxOa6DBGjHO1MS844CgtdOwOVzAIgQ3zGiESj8k1kdVkQgVkmPUvJbdVOn9ATEJuGhr5kY+0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDmZb9C0IF7l8ED+8A206dmQCcwqlBy+mPK5SJbyuePngIhAOZ3jwNsihdo3JUx67a4iMMrVa0JZ7nlBN8/qfxfccbo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2874767},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"9359785075b98b3e898b1ad4f0a03aee6c9d863d","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.14_1788603567541_0.7926776925924406","host":"s3://npm-registry-packages-npm-production"}},"0.11.15":{"name":"@odla-ai/harness","version":"0.11.15","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.15","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"8beaa13e6db5db7370e4f1c1bc3e3cba3758e44e","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.15.tgz","fileCount":49,"integrity":"sha512-hGtUfXXbbvtfgD23aGIzto4A0zfO/o5xIz1PQ646fb92tzjrIuhdbjAOBUb4XGbEi4OA8GelgLpCtOqCUVF/Cg==","signatures":[{"sig":"MEYCIQDXxorykdaUQAZzgaE9qRX78Cg9wfypjGzCNugeGguylQIhALvGAJRQS+3fCfn5HiI2JYiabVxKJmHyXwzPXLqS/2GR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIGsgqVV7iY9/t8T+uv/nQB5ORhGFYphRyRjzqu0MCHLHAiEA1f1TC/HQpcPmQ0a6CDPqA7w6XWvPxIpBU+qwUBuEd0s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2881949},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"0e85d357eb0632f098bfc35b9de41cc77caf3b72","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.15_1788605708442_0.7818923964357278","host":"s3://npm-registry-packages-npm-production"}},"0.11.16":{"name":"@odla-ai/harness","version":"0.11.16","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.16","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"72d8db6cf25d0d87e0a998318518f3bba92f7088","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.16.tgz","fileCount":49,"integrity":"sha512-T+9yaQ9wk+ZR2ecn0pvkD6DkD/fr2od6q9CnUqr2byeruVWLP2q+8js2DtODjPtbe36+mOPtTB17Wk/WWak6Iw==","signatures":[{"sig":"MEYCIQDTpBAzBIcD6Hg5AhWN/s4i9s38CKAsN9gzJVAi5S1hGAIhAMFyHC88UO1LFRo39yobjEHXVRN6jyRvWnuX+lOuOh9C","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCstnIgTZ8NNxXH2fXKi1+zijQKBm8Q/R3Muf05z0XD1QIgG/3OdGkriq6YzTuIIAKrVjEHPLc2TqDJe/YDetvyiM0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2885483},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"91a1393ed984dbbab8e80c496760e6ae3a41ec86","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.16_1788608746730_0.4670907451042694","host":"s3://npm-registry-packages-npm-production"}},"0.11.17":{"name":"@odla-ai/harness","version":"0.11.17","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.17","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"1571f9a5f92ffb8cd28609053af26f847bdcf76e","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.17.tgz","fileCount":49,"integrity":"sha512-OszTNzwLLQguTCokfeV57/rUz2RYrw2Xks5m28OgyYDy4CZ/F3UK3VHDTFV1sQExVgTJjdMtB1aTkqjDVuSo/w==","signatures":[{"sig":"MEYCIQD76up0aZs0w9jm/I1ybP3Ww2IIO9+6eVu5tZJk+qtZkQIhAJzLQBE3hje/+vFw0vlVg8rCYed8Tlrxr8huyZcRGVQB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAookA14YM2oK9EtY7eVlrbvU3HBwMYo3m5M8n7ePNxCAiAtq1X6tDILimTQBdCZjxDtM1TOVx+zEaF+FLRKN6o1lw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2887285},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"acde576b667189e1bc2d882c3289382e1be606a8","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.17_1788618534732_0.3308185810157085","host":"s3://npm-registry-packages-npm-production"}},"0.11.18":{"name":"@odla-ai/harness","version":"0.11.18","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"license":"MIT","_id":"@odla-ai/harness@0.11.18","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"homepage":"https://odla.ai/docs/packages/harness","bugs":{"url":"https://github.com/cory/odla-ai/issues"},"bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"dist":{"shasum":"c59293d05e9fc5675fcd3e3de365ee94a42c9eae","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.18.tgz","fileCount":49,"integrity":"sha512-iBfU2eNb8UPlWFb+V9pN7lZCBqO4MEFg7hp86UYpj4ffwQkRbDjtGsnVdzj/CTP0hPqrHKzwt3UQeGhupVJp0Q==","signatures":[{"sig":"MEYCIQDXXJxyLrouI2uQfgb72Ew0gQ3LXZv+oVaKw7+32DpFkwIhAJObpvO/UaGzTA6TyQgDhq6A51HOd3+pfJpV8WbAgdc8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCaH2WJTzMpWNiCyqDE8rHp4VRKC/0NbGsn9ZErd3qA0QIhAMSOwzUx/W1WOzq8hcCIB3zsE/x7YvoXsMR3QpNew6jk","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2891857},"main":"./dist/index.cjs","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"5a9fd974d016bc60026c2799ebdf846727b58e3d","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"tmp":"tmp/harness_0.11.18_1788626395647_0.6130794202715257","host":"s3://npm-registry-packages-npm-production"}},"0.11.19":{"_id":"@odla-ai/harness@0.11.19","bin":{"odla-harness":"dist/cli.js","odla-code-runtime":"dist/code-runtime-cli.js"},"bugs":{"url":"https://github.com/cory/odla-ai/issues"},"dist":{"shasum":"849afb6849fae2701c82fe7303bd110e0e70a422","tarball":"https://registry.npmjs.org/@odla-ai/harness/-/harness-0.11.19.tgz","fileCount":51,"integrity":"sha512-isuYsmrYgPrXPEwPeUFebPLnEW6UInaBQlC4+1P5BeYSxT2AdOkamreM7hOo5TggKDcytEg6cQWHVjCOXXimRw==","signatures":[{"sig":"MEYCIQCfUAJbaw0j0ng3XqyX2o/Zw/VsmiLOKVJdxnXoVPXqCAIhAJkgaKbI9w9ckvtXWIUao3XPZw+G7NEeKL+tMPHX/BGM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIF1u9nxiGvWZ4hdE1CcCoXFpkcsNJ1+ZtyNkgYuMZnzxAiEAx8p0xTCBA/dpsZ+nqQq09GREyAX7Vb5/+fR2/5sf5KE="}],"unpackedSize":2903786},"main":"./dist/index.cjs","name":"@odla-ai/harness","type":"module","types":"./dist/index.d.ts","module":"./dist/index.js","engines":{"node":">=20"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"},"./node":{"types":"./dist/node.d.ts","import":"./dist/node.js","require":"./dist/node.cjs"},"./testing":{"types":"./dist/testing.d.ts","import":"./dist/testing.js","require":"./dist/testing.cjs"}},"gitHead":"882e547de41a264d2d9bc3756cb6a7f6dce45fe4","license":"MIT","scripts":{"test":"vitest run","build":"tsup","clean":"rm -rf dist","test:live":"ODLA_CODE_LIVE_TEST=1 vitest run test/code-runtime-live.integration.test.ts","typecheck":"tsc --noEmit","prepublishOnly":"npm run test && npm run typecheck && npm run build","test:container":"ODLA_HARNESS_CONTAINER_TEST=1 vitest run test/container.integration.test.ts"},"version":"0.11.19","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:172d6e83-f97b-4ea2-a89d-3f7cb41be86f"}},"homepage":"https://odla.ai/docs/packages/harness","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"_npmVersion":"11.6.2","description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","directories":{},"maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"sideEffects":false,"_nodeVersion":"24.13.0","dependencies":{"@odla-ai/ai":">=0.17.0 <1.0.0","@odla-ai/camel":"*","@odla-ai/graph":"*"},"publishConfig":{"access":"public","provenance":false},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.5.1","vitest":"^4.1.9","typescript":"^6.0.3","@types/node":"^26.1.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/harness_0.11.19_1788645570574_0.0161236560916993"}}},"time":{"created":"2026-07-26T17:53:41.934Z","modified":"2026-09-05T21:59:30.981Z","0.1.0":"2026-07-26T17:53:42.225Z","0.1.1":"2026-07-26T17:55:57.301Z","0.1.2":"2026-07-29T20:34:54.147Z","0.2.0":"2026-08-07T03:03:44.845Z","0.3.0":"2026-08-07T03:49:42.694Z","0.4.0":"2026-08-07T15:17:14.273Z","0.5.0":"2026-08-12T02:06:18.954Z","0.5.1":"2026-08-12T22:31:35.001Z","0.5.2":"2026-08-13T03:37:39.872Z","0.6.0":"2026-08-13T15:19:54.105Z","0.7.0":"2026-08-13T23:53:32.579Z","0.7.1":"2026-08-14T17:52:44.223Z","0.8.0":"2026-08-14T20:21:56.570Z","0.8.1":"2026-08-20T20:25:24.603Z","0.9.0":"2026-08-20T22:27:21.218Z","0.9.1":"2026-08-23T17:26:33.624Z","0.9.2":"2026-08-25T22:18:49.606Z","0.9.3":"2026-08-29T19:56:21.516Z","0.9.4":"2026-08-30T01:05:29.167Z","0.10.0":"2026-08-30T01:53:58.851Z","0.10.1":"2026-09-02T23:04:54.172Z","0.10.2":"2026-09-03T00:00:42.792Z","0.10.3":"2026-09-03T01:15:44.323Z","0.10.4":"2026-09-03T02:04:09.305Z","0.11.0":"2026-09-03T03:39:40.871Z","0.11.1":"2026-09-03T04:57:50.449Z","0.11.2":"2026-09-03T21:01:30.950Z","0.11.3":"2026-09-03T23:32:33.245Z","0.11.4":"2026-09-04T00:47:40.843Z","0.11.5":"2026-09-04T02:45:17.940Z","0.11.6":"2026-09-04T04:59:37.239Z","0.11.7":"2026-09-05T01:16:33.923Z","0.11.8":"2026-09-05T02:04:23.287Z","0.11.9":"2026-09-05T07:11:43.551Z","0.11.10":"2026-09-05T07:53:09.529Z","0.11.11":"2026-09-05T08:18:11.898Z","0.11.12":"2026-09-05T09:05:33.874Z","0.11.13":"2026-09-05T09:40:48.157Z","0.11.14":"2026-09-05T10:19:27.673Z","0.11.15":"2026-09-05T10:55:08.626Z","0.11.16":"2026-09-05T11:45:46.876Z","0.11.17":"2026-09-05T14:28:54.867Z","0.11.18":"2026-09-05T16:39:55.772Z","0.11.19":"2026-09-05T21:59:30.726Z"},"bugs":{"url":"https://github.com/cory/odla-ai/issues"},"license":"MIT","homepage":"https://odla.ai/docs/packages/harness","keywords":["odla","odla-ai","coding-agent","container","sandbox","harness"],"repository":{"url":"git+https://github.com/cory/odla-ai.git","type":"git","directory":"packages/harness"},"description":"Safe, inspectable coding-task protocol and credentialless container runner for odla Studio.","maintainers":[{"name":"coryondrejka","email":"cory.ondrejka@gmail.com"}],"readme":"# @odla-ai/harness\n\n@odla-ai/harness is the experimental coding-task boundary shared by odla\nStudio, a trusted Mac/Linux runner, and an untrusted coding-agent container.\nIt owns the protocol and safe runner defaults; agent implementations such as Theseus\nremain replaceable adapters.\n\nHarness can stage a bounded, secret-filtered copy of a local checkout. The\nbrokered Theseus agent receives no workspace mount at all: reads and mutations cross\nthe typed tool channel into that disposable snapshot. The original checkout,\nterminal credential, provider credentials, container-engine socket, and\nnetwork are never available to Theseus. Inference requests cross the same JSONL\nchannel and are fulfilled by the control plane through @odla-ai/ai.\n\n> **Ask the runbooks first.** odla's operational procedures live in a database,\n> not in this file: `npx @odla-ai/cli runbook ask \"<question>\"` returns the current\n> steps, and unlike anything written here it cannot be out of date. Use it before\n> searching the web or working from memory. This README and the JSDoc in the\n> shipped `.d.ts` are the version-matched **API** reference; a runbook is the\n> **procedure**. Most tasks need an answer from both.\n\n## Personal Code terminal\n\nOpen **Studio → Code → Terminal**, copy the command shown for the selected app\nand environment, and run it from that app's Git checkout. For example:\n\n~~~sh\nexport ODLA_USER_EMAIL=owner@example.com\nnpx @odla-ai/cli code connect \\\n  --platform https://odla.ai \\\n  --app-id my-app \\\n  --env dev\n~~~\n\nThe terminal verifies the checkout and isolation engine, builds the Theseus adapter\nbundled with the exact CLI release into a content-addressed local image, prepares\neach digest-pinned recipe image, and sends the connection request outbound to odla. The signed-in app\nowner approves it; no bearer is copied from the browser. The process stays in\nthe foreground, opens no listener, and keeps its collected host credential in\nmemory only.\n\nAt connection time it freezes tracked and non-ignored untracked source into a\nstaged snapshot, omitting `.git`, `.odla`, `.wrangler`, `node_modules`, build\noutput, `.env` files, `.dev.vars`, credential JSON, unsafe paths, and symlinks.\nEach session binds an explicitly selected primary repository/ref plus any named\nread-only repository/ref references to exact commits and tree digests. A\nmatching local snapshot remains an optimization with explicit provenance;\notherwise Harness receives the immutable sources from the Registry. References\nare materialized under `.odla-references/<alias>` and the broker rejects every\nattempt to patch them. A checkpoint patch is computed against the selected\nprimary Git base, so local developer changes remain explicit provenance\nalongside Theseus's changes.\n\nOn Apple Silicon with macOS 26, install Apple's lightweight runtime once with\n`brew install container`; `code connect` selects it and starts its user service.\nOn Linux, auto requires rootless Podman. Podman Machine is the macOS fallback;\nDocker is an explicit compatibility adapter only. Recipe images must be\ndigest-pinned; the Theseus adapter's local tag contains the SHA-256 of its CLI bundle\nand requires no registry credential. All adapters run Theseus networkless and\nnon-root with bounded CPU/memory; Theseus has no\ncheckout or engine-socket mount.\n\n## Experimental task runner\n\nThe older generic task queue is separate from the personal Theseus terminal flow.\nIt lives under **Code → Task runners · advanced**. To exercise it, register a\nworkspace and keep its runner token outside shell history:\n\n~~~sh\nexport ODLA_HARNESS_TOKEN=odla_hrn_...\nnpx @odla-ai/harness runner \\\n  --endpoint https://odla.ai \\\n  --workspace my-repo=/absolute/path/to/repo \\\n  --image registry.example/coding-agent@sha256:<digest> \\\n  --engine auto\n~~~\n\nThe runner adds network=none, a read-only root, dropped capabilities, non-root\nuid/gid, and CPU/memory limits across adapters. Docker and Podman additionally\nreceive no-new-privileges plus PID and bounded-tmpfs limits. A legacy image's\nonly writable mount is the disposable workspace copy; a broker-only image has\nno source mount.\n\nThe runner skips .git, .odla, .wrangler, node_modules, build output, .env files,\n.dev.vars, credential JSON, and symlinks while staging. Completed attempts\nreturn a bounded binary-capable Git patch to Studio.\n\nStudio can branch the attempt ledger from an inspected event checkpoint. In\nthis first release the branch records immutable lineage and starts from a fresh\ncopy of the registered workspace; it does not replay the parent patch into the\nnew copy.\n\n## Build recipes\n\nThe Code terminal advertises a closed recipe catalog. The content-addressed,\nCLI-embedded Theseus adapter and every registry-digest-pinned recipe are prepared\nbefore approval:\n\n~~~json\n{\n  \"recipeAuthorization\": \"registered_recipe\",\n  \"recipes\": [{\n    \"id\": \"test\",\n    \"image\": \"registry.example/app-build@sha256:<digest>\",\n    \"command\": [\"npm\", \"test\"],\n    \"timeoutMs\": 600000,\n    \"maxOutputBytes\": 1048576\n  }]\n}\n~~~\n\nA repository can replace that release-owned list with its own. Code reads\n`odla.recipes.json` from the root of the trusted base (the default-branch\nsnapshot it staged, never the candidate's working tree) when a session starts:\n\n~~~json\n{\n  \"version\": 1,\n  \"recipes\": [\n    { \"id\": \"engine-tests\", \"command\": [\"node\", \"--test\", \"test/\"] },\n    { \"id\": \"gates\", \"command\": [\"node\", \"scripts/gates.mjs\"], \"timeoutMs\": 60000 }\n  ]\n}\n~~~\n\nThe repository chooses each recipe's `id`, argv `command`, and optional\n`timeoutMs` (default 120000, at most 900000, up to 16 recipes); the host\nsupplies the digest-pinned image and the resource limits, and a declaration that\nnames an `image` or any other field is refused. A malformed file fails the\nsession start with the fault named rather than falling back, and the session\nthread's first system message says which list gates it and where that list came\nfrom. Every declared recipe runs in the same fresh, networkless container as the\nrelease list, so a repository whose tests need `node_modules` still cannot run\nthem here.\n\nThe runtime validates HTTPS, never places its credential in a request body,\nnever opens a listener, and rejects malformed or cross-host binding responses.\nTheseus reads, patches, and runs only registered build recipes through the typed\nCaMeL broker. Checkpoint-stop captures a bounded combined patch; resume verifies\nit against the same selected Git base and exact local source descriptor.\n\n`--once` is diagnostic-only and refuses pending commands so a one-heartbeat\nprobe cannot acknowledge a session as running and then immediately tear it\ndown.\n\n## Agent protocol\n\nThe image reads one JSON object per line on stdin and writes protocol messages\non stdout. Version 1 supports task.start, typed event messages,\ninference.request/inference.response, tool.request/tool.response,\nattempt.cancel, and attempt.complete.\n\n### Registry-brokered collaboration\n\n`createCodeRuntimeSessionSkillLoader(control)` loads PM and Discussion tool\nmanifests for each accepted Code command and turns them into ordinary agent\nskills. Every handler proxies the exact `commandId` and provider-issued\n`toolCallId` back through the authenticated host control plane. The Registry\nexecutes the effect and returns only bounded tool output, so neither Theseus nor\nits networkless container receives an app key, tenant credential, or direct\ndatabase client. Initial work waits for the Registry's persisted `running` ACK\nbefore manifests are requested.\n\n## CaMeL tool and build boundary\n\n`createCodeToolBroker` is the trusted implementation for the three Theseus tools:\nregistered staged-file reads, confined unified patches, and app-registered\nbuild recipes. Each request is labelled and evaluated by @odla-ai/camel before\nan effect. Patch data remains Prompt-Unsafe payload; file and recipe selectors\nmust pass closed conversions; recipe execution is either explicitly\npre-authorized by app policy or bound to an exact approval digest.\n\nRecipes contain a fixed command and digest-pinned image. They run without a\nshell in a second networkless, non-root container over a newly staged copy.\nBuild output and mutations are discarded after the bounded result returns. The\ndecision binds a digest of the exact source copy, and the broker refuses to run\nif that copy changes after authorization. No repository code executes in the\nhost runner process.\n\n`verifyCodeCandidate` is the independent landing verifier. It reconstructs the\ncandidate from the registered trusted-base digest and patch, gives each fixed\nrecipe a fresh source copy, and emits a digest-authenticated closed receipt.\nRaw stdout, stderr, and changed-test paths remain separate quarantined evidence\nfor coding, review, and owner display. Only the prose-free receipt of registered\nrecipe outcomes, digests, and changed-test counts can be promoted to planning\nSafe through `createTrustedCodeVerificationReceipt`; changed tests always set a\nseparate review requirement.\n\n## Portable checkpoint and resume\n\n`createCodeWorkspaceCheckpoint` captures the staged candidate as a bounded,\nvalidated text patch plus closed resume state: plan and conversation cursors,\nbuild-policy and dependency-layer digests, completed effect receipts,\nunresolved approvals, and trust status. Patch, state, and total checkpoint have\nindependent SHA-256 digests. The Registry verifies the complete payload before\nstoring it and keeps only its digest in the command ledger.\n\n`restoreCodeWorkspaceCheckpoint` verifies every digest, requires the exact base\ncommit, and applies the patch to a fresh staged copy on the currently bound\nhost. `isCheckpointEffectCompleted` skips an exact prior effect and rejects an\neffect ID rebound to another action digest, preventing resume from replaying a\ndatabase write, publication, or deployment.\n\nUse @odla-ai/harness for protocol types and validation,\n@odla-ai/harness/node for runner/container primitives, and\n@odla-ai/harness/testing for deterministic test doubles.\n\n## Local fixture image\n\nThe included fixture proves the transport without running an autonomous coding\nagent:\n\n~~~sh\ndocker build -t odla-harness-fixture:local packages/harness/fixtures\nODLA_HARNESS_CONTAINER_TEST=1 npm test -w @odla-ai/harness\n~~~\n\nUnpinned images are accepted only when both the explicit test flag and\nODLA_HARNESS_UNSAFE_TESTING=1 are present. That escape hatch is not intended\nfor a connected Studio runner.\n","readmeFilename":"README.md"}