{"_id":"@abot-ai/runtime","_rev":"5-c70978583b241704d9c1b102dab141d9","name":"@abot-ai/runtime","dist-tags":{"latest":"1.3.1"},"versions":{"1.0.0":{"name":"@abot-ai/runtime","version":"1.0.0","keywords":["llm","runtime","agents","tools","plugins","typescript"],"license":"MIT","_id":"@abot-ai/runtime@1.0.0","maintainers":[{"name":"dorshitrit","email":"dor.shitrit@me.com"}],"homepage":"https://github.com/Dorshitrit/abot-runtime#readme","bugs":{"url":"https://github.com/Dorshitrit/abot-runtime/issues"},"bin":{"abot":"dist/src/cli/bin.js"},"dist":{"shasum":"54b54714d7f63c8efc408bc4a2cc4f2517e89e5a","tarball":"https://registry.npmjs.org/@abot-ai/runtime/-/runtime-1.0.0.tgz","fileCount":1141,"integrity":"sha512-6NQEltl8TVHe5UAGBvd2c9yMyljsmP/ZCNNX9no5TAs+laCwxDQropCSZd8XXKQHARlp8R1IaMX9r0KJlUjAyw==","signatures":[{"sig":"MEUCIQCtBp0uD75ADa0IWyuvDkNeks79vcVMTk+lUYxz4yFvXAIgf4WchGMzxsE9AIM1XHLPY8XOR0v2IF/chpH3NFlilPY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4014522},"main":"./dist/src/runtime/index.js","type":"module","_from":"file:/tmp/abot-release-tarball-e782f67f-ec6uLO/abot-ai-runtime-1.0.0.tgz","types":"./dist/src/runtime/index.d.ts","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/src/runtime/index.d.ts","import":"./dist/src/runtime/index.js"},"./runtime":{"types":"./dist/src/runtime/index.d.ts","import":"./dist/src/runtime/index.js"},"./plugin-sdk":{"types":"./dist/src/plugin-sdk/index.d.ts","import":"./dist/src/plugin-sdk/index.js"},"./package.json":"./package.json","./model-gateway":{"types":"./dist/src/model-gateway/index.d.ts","import":"./dist/src/model-gateway/index.js"},"./runtime/ports":{"types":"./dist/src/runtime/ports.d.ts","import":"./dist/src/runtime/ports.js"},"./runtime/config":{"types":"./dist/src/runtime/config.d.ts","import":"./dist/src/runtime/config.js"},"./runtime/adapters":{"types":"./dist/src/runtime/adapters/index.d.ts","import":"./dist/src/runtime/adapters/index.js"},"./runtime/composition":{"types":"./dist/src/runtime/composition.d.ts","import":"./dist/src/runtime/composition.js"},"./runtime/default-adapters":{"types":"./dist/src/runtime/default-adapters.d.ts","import":"./dist/src/runtime/default-adapters.js"},"./runtime.config.schema.json":"./runtime.config.schema.json"},"private":false,"scripts":{"dev":"tsx index.ts","init":"tsx scripts/init-runtime.ts","test":"vitest","build":"npm run check:model-step-registry && npm run build-config-schema && npm run typecheck:plugins && npm run build:plugins && npm run clean-dist && tsc -p tsconfig.build.json && npm run copy-build-assets","web-ui":"tsx src/web-ui/server.ts","validate":"npm run check:plugin-build && npm test -- --run && npm run build && npm run check:plugins && npm run smoke:runtime-package && npm run check:runtime-package && npm run smoke:packed-runtime-package && npm run check:publication","add-model":"tsx scripts/add-runtime-model.ts","clean-dist":"tsx scripts/clean-dist.ts","build:plugins":"tsx scripts/build-public-plugins.ts --write","check:plugins":"tsx scripts/check-plugins.ts","model-gateway":"tsx src/model-gateway/server.ts","clean:dev-state":"tsx scripts/clean-dev-state.ts","check:publication":"tsx scripts/check-publication-readiness.ts","copy-build-assets":"tsx scripts/copy-build-assets.ts","typecheck:plugins":"tsc -p tsconfig.plugins.json","check:plugin-build":"npm run typecheck:plugins && tsx scripts/build-public-plugins.ts --check","build-config-schema":"tsx scripts/write-runtime-config-schema.ts","check:runtime-package":"tsx scripts/check-runtime-package-contents.ts","smoke:runtime-package":"tsx scripts/smoke-runtime-package-import.ts","check:model-step-registry":"tsx scripts/write-model-step-registry.ts --check","generate:model-step-registry":"tsx scripts/write-model-step-registry.ts","smoke:packed-runtime-package":"tsx scripts/smoke-packed-runtime-package.ts","web-ui:install-user-services":"tsx scripts/install-runtime-web-ui-user-services.ts"},"_npmUser":{"name":"dorshitrit","email":"dor.shitrit@me.com"},"_resolved":"/tmp/abot-release-tarball-e782f67f-ec6uLO/abot-ai-runtime-1.0.0.tgz","overrides":{"postcss":"^8.5.26"},"_integrity":"sha512-6NQEltl8TVHe5UAGBvd2c9yMyljsmP/ZCNNX9no5TAs+laCwxDQropCSZd8XXKQHARlp8R1IaMX9r0KJlUjAyw==","llmRuntime":{"configSchema":"./runtime.config.schema.json"},"repository":{"url":"git+https://github.com/Dorshitrit/abot-runtime.git","type":"git"},"_npmVersion":"10.8.2","description":"Open runtime for local AI agents.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.21.0","jszip":"^3.10.1","dotenv":"^17.4.1","postcss":"^8.5.26","@types/ws":"^8.18.1","pdf-parse":"2.4.5","@babel/parser":"^7.29.8","@vscode/ripgrep":"1.18.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.1.11","esbuild":"^0.27.7","prettier":"^3.8.1","typescript":"^6.0.2","@types/node":"^25.5.2"},"_npmOperationalInternal":{"tmp":"tmp/runtime_1.0.0_1787721377680_0.7716892270464106","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@abot-ai/runtime","version":"1.1.0","keywords":["llm","runtime","agents","tools","plugins","typescript"],"license":"MIT","_id":"@abot-ai/runtime@1.1.0","maintainers":[{"name":"dorshitrit","email":"dor.shitrit@me.com"}],"homepage":"https://github.com/Dorshitrit/abot-runtime#readme","bugs":{"url":"https://github.com/Dorshitrit/abot-runtime/issues"},"bin":{"abot":"dist/src/cli/bin.js"},"dist":{"shasum":"ca9255d548f3345e458b00d2650d6a89f6eec3f7","tarball":"https://registry.npmjs.org/@abot-ai/runtime/-/runtime-1.1.0.tgz","fileCount":1472,"integrity":"sha512-XiYxwRQc77lzQym5I05GuX4vhsrAIIgdLzdkey9DI3DVenoGfENQEantMbOsTq1Y/XPYLDbbZbJQV8U2SjSqzQ==","signatures":[{"sig":"MEYCIQDTXdHjTT0mA2q6oTfBB4kPp4fu92KAdBWIgxkBmo1vIQIhAJ52MEy2zyeR9oeqE9uqQROsAoFP9p1dEGrzOiznVinu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4687071},"main":"./dist/src/runtime/index.js","type":"module","_from":"file:/tmp/abot-1.1.0-xK8aow/artifacts/abot-ai-runtime-1.1.0.tgz","types":"./dist/src/runtime/index.d.ts","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/src/runtime/index.d.ts","import":"./dist/src/runtime/index.js"},"./runtime":{"types":"./dist/src/runtime/index.d.ts","import":"./dist/src/runtime/index.js"},"./plugin-sdk":{"types":"./dist/src/plugin-sdk/index.d.ts","import":"./dist/src/plugin-sdk/index.js"},"./package.json":"./package.json","./model-gateway":{"types":"./dist/src/model-gateway/index.d.ts","import":"./dist/src/model-gateway/index.js"},"./runtime/ports":{"types":"./dist/src/runtime/ports.d.ts","import":"./dist/src/runtime/ports.js"},"./runtime/config":{"types":"./dist/src/runtime/config.d.ts","import":"./dist/src/runtime/config.js"},"./runtime/adapters":{"types":"./dist/src/runtime/adapters/index.d.ts","import":"./dist/src/runtime/adapters/index.js"},"./runtime/composition":{"types":"./dist/src/runtime/composition.d.ts","import":"./dist/src/runtime/composition.js"},"./runtime/default-adapters":{"types":"./dist/src/runtime/default-adapters.d.ts","import":"./dist/src/runtime/default-adapters.js"},"./runtime.config.schema.json":"./runtime.config.schema.json"},"private":false,"scripts":{"dev":"tsx index.ts","init":"tsx scripts/init-runtime.ts","test":"vitest","build":"npm run check:model-step-registry && npm run build-config-schema && npm run typecheck:plugins && npm run build:plugins && npm run clean-dist && tsc -p tsconfig.build.json && npm run copy-build-assets","memory":"tsx scripts/configure-long-term-memory.ts","web-ui":"tsx src/web-ui/server.ts","validate":"npm run check:plugin-build && npm run typecheck:all && npm test -- --run && npm run build && npm run check:plugins && npm run smoke:runtime-package && npm run check:runtime-package && npm run smoke:packed-runtime-package && npm run check:publication && npm run check:public-snapshot","add-model":"tsx scripts/add-runtime-model.ts","clean-dist":"tsx scripts/clean-dist.ts","build:plugins":"tsx scripts/build-public-plugins.ts --write","check:plugins":"tsx scripts/check-plugins.ts","model-gateway":"tsx src/model-gateway/server.ts","typecheck:all":"tsc -p tsconfig.json --noEmit","clean:dev-state":"tsx scripts/clean-dev-state.ts","check:publication":"tsx scripts/check-publication-readiness.ts","copy-build-assets":"tsx scripts/copy-build-assets.ts","typecheck:plugins":"tsc -p tsconfig.plugins.json","check:plugin-build":"npm run typecheck:plugins && tsx scripts/build-public-plugins.ts --check","build-config-schema":"tsx scripts/write-runtime-config-schema.ts","check:public-snapshot":"tsx scripts/public-snapshot/check-public-snapshot.ts","check:runtime-package":"tsx scripts/check-runtime-package-contents.ts","smoke:runtime-package":"tsx scripts/smoke-runtime-package-import.ts","check:model-step-registry":"tsx scripts/write-model-step-registry.ts --check","generate:model-step-registry":"tsx scripts/write-model-step-registry.ts","smoke:packed-runtime-package":"tsx scripts/smoke-packed-runtime-package.ts","web-ui:install-user-services":"tsx scripts/install-runtime-web-ui-user-services.ts"},"_npmUser":{"name":"dorshitrit","email":"dor.shitrit@me.com"},"_resolved":"/tmp/abot-1.1.0-xK8aow/artifacts/abot-ai-runtime-1.1.0.tgz","overrides":{"postcss":"^8.5.26"},"_integrity":"sha512-XiYxwRQc77lzQym5I05GuX4vhsrAIIgdLzdkey9DI3DVenoGfENQEantMbOsTq1Y/XPYLDbbZbJQV8U2SjSqzQ==","llmRuntime":{"configSchema":"./runtime.config.schema.json"},"repository":{"url":"git+https://github.com/Dorshitrit/abot-runtime.git","type":"git"},"_npmVersion":"10.8.2","description":"Open runtime for local AI agents.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.21.0","jszip":"^3.10.1","dotenv":"^17.4.1","postcss":"^8.5.26","@types/ws":"^8.18.1","pdf-parse":"2.4.5","@babel/parser":"^7.29.8","@vscode/ripgrep":"1.18.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.21.0","vitest":"^4.1.11","esbuild":"^0.27.7","prettier":"^3.8.1","typescript":"^6.0.2","@types/node":"^25.5.2"},"_npmOperationalInternal":{"tmp":"tmp/runtime_1.1.0_1788105295551_0.13516488305849106","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@abot-ai/runtime","version":"1.2.0","keywords":["llm","runtime","agents","tools","plugins","typescript"],"license":"MIT","_id":"@abot-ai/runtime@1.2.0","maintainers":[{"name":"dorshitrit","email":"dor.shitrit@me.com"}],"homepage":"https://github.com/Dorshitrit/abot-runtime#readme","bugs":{"url":"https://github.com/Dorshitrit/abot-runtime/issues"},"bin":{"abot":"dist/src/cli/bin.js"},"dist":{"shasum":"36594bd5ff5c0316dc0119f4e4bf4d5e84cb326e","tarball":"https://registry.npmjs.org/@abot-ai/runtime/-/runtime-1.2.0.tgz","fileCount":1578,"integrity":"sha512-intSZ8YEPwzzslxl3VDtBjOiXC/v2pV9VmLX5oCeESS56FpQseQzFi8zR5SzCx0bmvHf0RRHQGCrxK5+anKrWA==","signatures":[{"sig":"MEQCIAipuA/Paf0aXmwDoOA18K4iUxB+IhH6/n5OAvFnm58aAiBzx0IXtBwJUuK6UmsAhg2NJollfngUyNqc5XG9Lb45PA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIG+ga/xtJrjZ4ZF9sI4USQB1Mpf/0b4f8YU+s9SAwyQTAiAfv94MuqUGwe0HxiOHBSZAYeIpHHI312BGx6cbR73qvg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5106701},"main":"./dist/src/runtime/index.js","type":"module","_from":"file:/tmp/abot-1.2.0-rc-Yd7kci/abot-ai-runtime-1.2.0.tgz","types":"./dist/src/runtime/index.d.ts","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/src/runtime/index.d.ts","import":"./dist/src/runtime/index.js"},"./runtime":{"types":"./dist/src/runtime/index.d.ts","import":"./dist/src/runtime/index.js"},"./plugin-sdk":{"types":"./dist/src/plugin-sdk/index.d.ts","import":"./dist/src/plugin-sdk/index.js"},"./package.json":"./package.json","./model-gateway":{"types":"./dist/src/model-gateway/index.d.ts","import":"./dist/src/model-gateway/index.js"},"./runtime/ports":{"types":"./dist/src/runtime/ports.d.ts","import":"./dist/src/runtime/ports.js"},"./runtime/config":{"types":"./dist/src/runtime/config.d.ts","import":"./dist/src/runtime/config.js"},"./runtime/adapters":{"types":"./dist/src/runtime/adapters/index.d.ts","import":"./dist/src/runtime/adapters/index.js"},"./runtime/composition":{"types":"./dist/src/runtime/composition.d.ts","import":"./dist/src/runtime/composition.js"},"./runtime/default-adapters":{"types":"./dist/src/runtime/default-adapters.d.ts","import":"./dist/src/runtime/default-adapters.js"},"./runtime.config.schema.json":"./runtime.config.schema.json"},"private":false,"scripts":{"dev":"tsx index.ts","init":"tsx scripts/init-runtime.ts","test":"vitest","build":"npm run check:model-step-registry && npm run build-config-schema && npm run typecheck:plugins && npm run build:plugins && npm run clean-dist && tsc -p tsconfig.build.json && npm run copy-build-assets","memory":"tsx scripts/configure-long-term-memory.ts","web-ui":"tsx src/web-ui/server.ts","validate":"npm run check:plugin-build && npm run typecheck:all && npm test -- --run && npm run build && npm run check:plugins && npm run smoke:runtime-package && npm run check:runtime-package && npm run smoke:packed-runtime-package && npm run check:publication && npm run check:public-snapshot","add-model":"tsx scripts/add-runtime-model.ts","clean-dist":"tsx scripts/clean-dist.ts","build:plugins":"tsx scripts/build-public-plugins.ts --write","check:plugins":"tsx scripts/check-plugins.ts","model-gateway":"tsx src/model-gateway/server.ts","typecheck:all":"tsc -p tsconfig.json --noEmit","clean:dev-state":"tsx scripts/clean-dev-state.ts","check:publication":"tsx scripts/check-publication-readiness.ts","copy-build-assets":"tsx scripts/copy-build-assets.ts","typecheck:plugins":"tsc -p tsconfig.plugins.json","check:plugin-build":"npm run typecheck:plugins && tsx scripts/build-public-plugins.ts --check","build-config-schema":"tsx scripts/write-runtime-config-schema.ts","check:public-snapshot":"tsx scripts/public-snapshot/check-public-snapshot.ts","check:runtime-package":"tsx scripts/check-runtime-package-contents.ts","smoke:runtime-package":"tsx scripts/smoke-runtime-package-import.ts","check:model-step-registry":"tsx scripts/write-model-step-registry.ts --check","generate:model-step-registry":"tsx scripts/write-model-step-registry.ts","smoke:packed-runtime-package":"tsx scripts/smoke-packed-runtime-package.ts","web-ui:install-user-services":"tsx scripts/install-runtime-web-ui-user-services.ts"},"_npmUser":{"name":"dorshitrit","email":"dor.shitrit@me.com"},"_resolved":"/tmp/abot-1.2.0-rc-Yd7kci/abot-ai-runtime-1.2.0.tgz","overrides":{"postcss":"^8.5.26"},"_integrity":"sha512-intSZ8YEPwzzslxl3VDtBjOiXC/v2pV9VmLX5oCeESS56FpQseQzFi8zR5SzCx0bmvHf0RRHQGCrxK5+anKrWA==","llmRuntime":{"configSchema":"./runtime.config.schema.json"},"repository":{"url":"git+https://github.com/Dorshitrit/abot-runtime.git","type":"git"},"_npmVersion":"10.8.2","description":"Open runtime for local AI agents.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.21.0","jszip":"^3.10.1","dotenv":"^17.4.1","postcss":"^8.5.26","@types/ws":"^8.18.1","pdf-parse":"2.4.5","htmlparser2":"10.0.0","@babel/parser":"^7.29.8","@vscode/ripgrep":"1.18.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.13","vitest":"^4.1.11","esbuild":"^0.28.2","prettier":"^3.8.1","typescript":"^6.0.2","@types/node":"^25.5.2"},"_npmOperationalInternal":{"tmp":"tmp/runtime_1.2.0_1788541513826_0.20531101381642003","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@abot-ai/runtime","version":"1.3.0","keywords":["llm","runtime","agents","tools","plugins","typescript"],"license":"MIT","_id":"@abot-ai/runtime@1.3.0","maintainers":[{"name":"dorshitrit","email":"dor.shitrit@me.com"}],"homepage":"https://github.com/Dorshitrit/abot-runtime#readme","bugs":{"url":"https://github.com/Dorshitrit/abot-runtime/issues"},"bin":{"abot":"dist/src/cli/bin.js"},"dist":{"shasum":"c9447f38d8445db2728bb4ad14024e7bf180dc60","tarball":"https://registry.npmjs.org/@abot-ai/runtime/-/runtime-1.3.0.tgz","fileCount":1908,"integrity":"sha512-n6XoBlfbTZI/ddKaB5uOZT6/rcXtYkkCeqIhLq4x+H3smrCf5rYaWcs2URKDZzMWAJzxnQYvRtV90x1vaDWYig==","signatures":[{"sig":"MEYCIQDAotXWagKDNP+t7ER1IGyiibBz/yFskzYkNLDnWS5t7AIhALiyhnzpxX5dooWPc76Kfb6wHNw9QqwXFA9ESvSr/ySp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIF4YUVXGaMn6FocFisvFberr49974i+QnygiFjcRY3iQAiEAn4lK6TuSChVXz8WGjmaTBo2fgklSa8D9d5fVQOKIfs0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5901566},"main":"./dist/src/runtime/index.js","type":"module","_from":"file:/home/dorsh/llm-runtime/.codex/artifacts/release-1.3.0-publish-20260907T043227Z/pack/abot-ai-runtime-1.3.0.tgz","types":"./dist/src/runtime/index.d.ts","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/src/runtime/index.d.ts","import":"./dist/src/runtime/index.js"},"./runtime":{"types":"./dist/src/runtime/index.d.ts","import":"./dist/src/runtime/index.js"},"./plugin-sdk":{"types":"./dist/src/plugin-sdk/index.d.ts","import":"./dist/src/plugin-sdk/index.js"},"./package.json":"./package.json","./model-gateway":{"types":"./dist/src/model-gateway/index.d.ts","import":"./dist/src/model-gateway/index.js"},"./runtime/ports":{"types":"./dist/src/runtime/ports.d.ts","import":"./dist/src/runtime/ports.js"},"./runtime/config":{"types":"./dist/src/runtime/config.d.ts","import":"./dist/src/runtime/config.js"},"./runtime/adapters":{"types":"./dist/src/runtime/adapters/index.d.ts","import":"./dist/src/runtime/adapters/index.js"},"./runtime/composition":{"types":"./dist/src/runtime/composition.d.ts","import":"./dist/src/runtime/composition.js"},"./runtime/default-adapters":{"types":"./dist/src/runtime/default-adapters.d.ts","import":"./dist/src/runtime/default-adapters.js"},"./runtime.config.schema.json":"./runtime.config.schema.json"},"private":false,"scripts":{"dev":"tsx index.ts","init":"tsx scripts/init-runtime.ts","test":"vitest","build":"npm run check:model-step-registry && npm run build-config-schema && npm run typecheck:plugins && npm run build:plugins && npm run clean-dist && tsc -p tsconfig.build.json && npm run copy-build-assets","memory":"tsx scripts/configure-long-term-memory.ts","web-ui":"tsx src/web-ui/server.ts","validate":"npm run check:plugin-build && npm run typecheck:all && npm test -- --run && npm run build && npm run check:plugins && npm run smoke:runtime-package && npm run check:runtime-package && npm run smoke:packed-runtime-package && npm run check:publication && npm run check:public-snapshot","add-model":"tsx scripts/add-runtime-model.ts","clean-dist":"tsx scripts/clean-dist.ts","build:plugins":"tsx scripts/build-public-plugins.ts --write","check:plugins":"tsx scripts/check-plugins.ts","model-gateway":"tsx src/model-gateway/server.ts","typecheck:all":"tsc -p tsconfig.json --noEmit","clean:dev-state":"tsx scripts/clean-dev-state.ts","check:publication":"tsx scripts/check-publication-readiness.ts","copy-build-assets":"tsx scripts/copy-build-assets.ts","typecheck:plugins":"tsc -p tsconfig.plugins.json","check:plugin-build":"npm run typecheck:plugins && tsx scripts/build-public-plugins.ts --check","build-config-schema":"tsx scripts/write-runtime-config-schema.ts","check:public-snapshot":"tsx scripts/public-snapshot/check-public-snapshot.ts","check:runtime-package":"tsx scripts/check-runtime-package-contents.ts","smoke:runtime-package":"tsx scripts/smoke-runtime-package-import.ts","check:model-step-registry":"tsx scripts/write-model-step-registry.ts --check","generate:model-step-registry":"tsx scripts/write-model-step-registry.ts","smoke:packed-runtime-package":"tsx scripts/smoke-packed-runtime-package.ts","web-ui:install-user-services":"tsx scripts/install-runtime-web-ui-user-services.ts"},"_npmUser":{"name":"dorshitrit","email":"dor.shitrit@me.com"},"_resolved":"/home/dorsh/llm-runtime/.codex/artifacts/release-1.3.0-publish-20260907T043227Z/pack/abot-ai-runtime-1.3.0.tgz","overrides":{"postcss":"^8.5.26"},"_integrity":"sha512-n6XoBlfbTZI/ddKaB5uOZT6/rcXtYkkCeqIhLq4x+H3smrCf5rYaWcs2URKDZzMWAJzxnQYvRtV90x1vaDWYig==","llmRuntime":{"configSchema":"./runtime.config.schema.json"},"repository":{"url":"git+https://github.com/Dorshitrit/abot-runtime.git","type":"git"},"_npmVersion":"10.8.2","description":"Open runtime for local AI agents.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.21.0","jszip":"^3.10.1","dotenv":"^17.4.1","postcss":"^8.5.26","@types/ws":"^8.18.1","pdf-parse":"2.4.5","htmlparser2":"10.0.0","@babel/parser":"^7.29.8","@vscode/ripgrep":"1.18.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.13","vitest":"^4.1.11","esbuild":"^0.28.2","prettier":"^3.8.1","typescript":"^6.0.2","@types/node":"^25.5.2"},"_npmOperationalInternal":{"tmp":"tmp/runtime_1.3.0_1788756616904_0.9340933876051971","host":"s3://npm-registry-packages-npm-production"}},"1.3.1":{"_id":"@abot-ai/runtime@1.3.1","bin":{"abot":"dist/src/cli/bin.js"},"bugs":{"url":"https://github.com/Dorshitrit/abot-runtime/issues"},"dist":{"shasum":"ee6695c497bbf909cd9903ec1142fb314289f8f2","tarball":"https://registry.npmjs.org/@abot-ai/runtime/-/runtime-1.3.1.tgz","fileCount":1928,"integrity":"sha512-hXqqwFXiOMzXeSeg0VwDRUZymurHhZij5JBBXuGlPTM9zYr+FgpFAMp8zCAln0leKWSMnDnBqLbUQAHxiF5LLw==","signatures":[{"sig":"MEYCIQDPn/J70YDZucfv1/uoLU9fsU5ezpegxyuS5//ptgnoegIhAO2v/9+GZIhRHUPNPGvbMPVlKQhelKaFt0SlrhrUGw05","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBO8SKBt5gStVvNYbkhREIJQYaCxEo26OsTstfW4d/KsAiBrXGgX8ORxdtnYTx6sQJifu9KJudvbPZwLDc7FQOLp0g=="}],"unpackedSize":5960980},"main":"./dist/src/runtime/index.js","name":"@abot-ai/runtime","type":"module","_from":"file:/home/dorsh/.codex/artifacts/release-1.3.1-20260907/tarballs/abot-ai-runtime-1.3.1.tgz","types":"./dist/src/runtime/index.d.ts","engines":{"node":"^20.19.0 || >=22.12.0"},"exports":{".":{"types":"./dist/src/runtime/index.d.ts","import":"./dist/src/runtime/index.js"},"./runtime":{"types":"./dist/src/runtime/index.d.ts","import":"./dist/src/runtime/index.js"},"./plugin-sdk":{"types":"./dist/src/plugin-sdk/index.d.ts","import":"./dist/src/plugin-sdk/index.js"},"./package.json":"./package.json","./model-gateway":{"types":"./dist/src/model-gateway/index.d.ts","import":"./dist/src/model-gateway/index.js"},"./runtime/ports":{"types":"./dist/src/runtime/ports.d.ts","import":"./dist/src/runtime/ports.js"},"./runtime/config":{"types":"./dist/src/runtime/config.d.ts","import":"./dist/src/runtime/config.js"},"./runtime/adapters":{"types":"./dist/src/runtime/adapters/index.d.ts","import":"./dist/src/runtime/adapters/index.js"},"./runtime/composition":{"types":"./dist/src/runtime/composition.d.ts","import":"./dist/src/runtime/composition.js"},"./runtime/default-adapters":{"types":"./dist/src/runtime/default-adapters.d.ts","import":"./dist/src/runtime/default-adapters.js"},"./runtime.config.schema.json":"./runtime.config.schema.json"},"license":"MIT","private":false,"scripts":{"dev":"tsx index.ts","init":"tsx scripts/init-runtime.ts","test":"vitest","build":"npm run check:model-step-registry && npm run build-config-schema && npm run typecheck:plugins && npm run build:plugins && npm run clean-dist && tsc -p tsconfig.build.json && npm run copy-build-assets","memory":"tsx scripts/configure-long-term-memory.ts","web-ui":"tsx src/web-ui/server.ts","validate":"npm run check:plugin-build && npm run typecheck:all && npm test -- --run && npm run build && npm run check:plugins && npm run smoke:runtime-package && npm run check:runtime-package && npm run smoke:packed-runtime-package && npm run check:publication && npm run check:public-snapshot","add-model":"tsx scripts/add-runtime-model.ts","clean-dist":"tsx scripts/clean-dist.ts","build:plugins":"tsx scripts/build-public-plugins.ts --write","check:plugins":"tsx scripts/check-plugins.ts","model-gateway":"tsx src/model-gateway/server.ts","typecheck:all":"tsc -p tsconfig.json --noEmit","clean:dev-state":"tsx scripts/clean-dev-state.ts","check:publication":"tsx scripts/check-publication-readiness.ts","copy-build-assets":"tsx scripts/copy-build-assets.ts","typecheck:plugins":"tsc -p tsconfig.plugins.json","check:plugin-build":"npm run typecheck:plugins && tsx scripts/build-public-plugins.ts --check","build-config-schema":"tsx scripts/write-runtime-config-schema.ts","check:public-snapshot":"tsx scripts/public-snapshot/check-public-snapshot.ts","check:runtime-package":"tsx scripts/check-runtime-package-contents.ts","smoke:runtime-package":"tsx scripts/smoke-runtime-package-import.ts","check:model-step-registry":"tsx scripts/write-model-step-registry.ts --check","generate:model-step-registry":"tsx scripts/write-model-step-registry.ts","smoke:packed-runtime-package":"tsx scripts/smoke-packed-runtime-package.ts","web-ui:install-user-services":"tsx scripts/install-runtime-web-ui-user-services.ts"},"version":"1.3.1","_npmUser":{"name":"dorshitrit","email":"dor.shitrit@me.com"},"homepage":"https://github.com/Dorshitrit/abot-runtime#readme","keywords":["llm","runtime","agents","tools","plugins","typescript"],"_resolved":"/home/dorsh/.codex/artifacts/release-1.3.1-20260907/tarballs/abot-ai-runtime-1.3.1.tgz","overrides":{"postcss":"^8.5.26"},"_integrity":"sha512-hXqqwFXiOMzXeSeg0VwDRUZymurHhZij5JBBXuGlPTM9zYr+FgpFAMp8zCAln0leKWSMnDnBqLbUQAHxiF5LLw==","llmRuntime":{"configSchema":"./runtime.config.schema.json"},"repository":{"url":"git+https://github.com/Dorshitrit/abot-runtime.git","type":"git"},"_npmVersion":"10.8.2","description":"Open runtime for local AI agents.","directories":{},"maintainers":[{"name":"dorshitrit","email":"dor.shitrit@me.com"}],"_nodeVersion":"20.20.2","dependencies":{"ws":"^8.21.0","jszip":"^3.10.1","dotenv":"^17.4.1","postcss":"^8.5.26","@types/ws":"^8.18.1","pdf-parse":"2.4.5","htmlparser2":"10.0.0","@babel/parser":"^7.29.8","@vscode/ripgrep":"1.18.0"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.23.13","vitest":"^4.1.11","esbuild":"^0.28.2","prettier":"^3.8.1","typescript":"^6.0.2","@types/node":"^25.5.2"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/runtime_1.3.1_1788795306091_0.5300278113834531"}}},"time":{"created":"2026-08-26T05:16:17.422Z","modified":"2026-09-07T15:35:06.444Z","1.0.0":"2026-08-26T05:16:17.957Z","1.1.0":"2026-08-30T15:54:55.770Z","1.2.0":"2026-09-04T17:05:13.979Z","1.3.0":"2026-09-07T04:50:17.082Z","1.3.1":"2026-09-07T15:35:06.220Z"},"bugs":{"url":"https://github.com/Dorshitrit/abot-runtime/issues"},"license":"MIT","homepage":"https://github.com/Dorshitrit/abot-runtime#readme","keywords":["llm","runtime","agents","tools","plugins","typescript"],"repository":{"url":"git+https://github.com/Dorshitrit/abot-runtime.git","type":"git"},"description":"Open runtime for local AI agents.","maintainers":[{"name":"dorshitrit","email":"dor.shitrit@me.com"}],"readme":"# ABot Runtime\n\nOpen TypeScript runtime for building inspectable AI agents with local or hosted\nlanguage models.\n\nABot Runtime provides the execution layer around a model: sessions, tools,\nplugins, model routing, persisted events, and a local graphical interface. It\ndoes not choose a model for you or hide model-provider behavior behind\nhardcoded defaults.\n\n## Features\n\n- Configurable local and hosted model providers\n- Persistent conversations, request events, and replay\n- Optional passive long-term memory across sessions\n- Local scheduled requests bound to their conversations\n- Planning, execution, and review workflows\n- Manifest-based tools and plugins with explicit runtime boundaries\n- Workspace, file, skill, and memory capabilities\n- Streaming model and tool activity\n- A local Web UI for everyday use and inspection\n- An optional bridge transport for integration with external applications\n\n## Web UI\n\nThe source checkout includes the project's primary GUI. It uses the direct\nlocal runtime backend by default, so an external bridge is not required.\n\nThe Web UI supports:\n\n- creating, reopening, and deleting conversations\n- choosing the active environment, model, and reasoning mode\n- uploading files and images\n- streaming messages, current activity, tool progress, and failures\n- steering an active request or queuing the next message\n- editing runtime configuration\n- configuring passive long-term memory with a consumer-selected embedding model\n- managing schedules, their saved models, and run history in the Schedules workspace\n- inspecting runtime status, logs, and health\n\nThe UI is a client of the runtime; persisted sessions, events, and request state\nremain owned by the runtime.\n\nSchedules can also be managed through the model's built-in `schedules` capability.\nEvery Job belongs to a conversation and runs there with its saved model and FULL\ntool permissions. The chat shows a compact run card; expand it to read the exact\nhistorical prompt. ABot must be running at the scheduled time. Missed offline\noccurrences and failed runs are not retried. Cancelling a Job or deleting its\nconversation prevents pending starts; an already-started run continues.\n\nTimers, one-time requests, intervals, and daily/weekly/monthly schedules are\nsupported. Calendar schedules require an exact time and IANA time zone. Jobs and\nrun history are stored locally under the environment's runtime directory.\nScheduling uses the Runtime directly and requires no plugin or external bridge.\n\n## Requirements\n\n- Node.js `^20.19.0` or `>=22.12.0` (Node.js 21 is not supported)\n- npm\n- A configured model provider and model\n\nOllama and OpenAI adapters are included. The Ollama server and model files are\nnot: install Ollama from the [official download page](https://ollama.com/download)\nand pull a model you choose. OpenAI profiles require `OPENAI_API_KEY`. ABot\nRuntime has no built-in default model.\n\n## Install And Run\n\nCreate a consumer project and install the package:\n\n```bash\nmkdir my-abot\ncd my-abot\nnpm init -y\nnpm install @abot-ai/runtime\n```\n\nInitialize one explicit provider and model, then start the model gateway and\nWeb UI with one command:\n\n```bash\nnpx abot init --provider ollama --model <model-id>\nnpx abot start\n```\n\nOpen [http://127.0.0.1:5177](http://127.0.0.1:5177). The generated files and\nruntime state belong to the consumer project; installing the package does not\nwrite into the package directory.\n\nFor OpenAI, set `OPENAI_API_KEY` in the generated `.env` and initialize with:\n\n```bash\nnpx abot init --provider openai --model <model-id>\n```\n\nOpenAI profiles created by `abot init` or `abot add-model` use the recommended\n`execution-agent-v1` execution policy. Existing profiles are preserved unless\nthe user explicitly requests replacement.\n\nPassive long-term memory is disabled by default. After configuring a provider,\nchoose and probe an embedding model from the Config workspace or CLI:\n\n```bash\nnpx abot memory enable --provider <provider-id> --model <embedding-model-id>\n```\n\nSee [Passive Long-Term Memory](docs/long-term-memory.md) for its privacy,\nstorage, retrieval, and management contracts.\n\n## Quick Start From Source\n\nFrom a checkout of this repository:\n\nIf you are using Ollama, install it and make sure its service is running first.\nOn the machine that runs Ollama, choose a concrete id from the\n[Ollama model library](https://ollama.com/library), then pull and verify that\nexact model:\n\n```bash\nollama pull <model-id>\ncurl http://127.0.0.1:11434/api/tags\n```\n\nThen initialize the runtime with the same model id:\n\n```bash\nnpm install\nnpm run init -- --provider ollama --model <model-id>\n```\n\nThe command above uses `http://127.0.0.1:11434`. When Ollama is reachable from\nthe runtime at another address, provide that origin explicitly:\n\n```bash\nnpm run init -- --provider ollama --model <model-id> --base-url http://<ollama-host>:11434\n```\n\nThe init command creates machine-local configuration, including `.env` and\n`local/runtime.config.json`. It also sets `LLM_RUNTIME_CONFIG_FILE` in `.env`\nso the local commands use that config. Both the provider and model are explicit.\n\nThe initializer configures the adapter; it does not install or start Ollama or\ndownload a model. The configured URL must be reachable from the runtime\nprocess. For example, Docker Desktop can usually reach Ollama on its Windows or\nmacOS host at `http://host.docker.internal:11434`; other WSL, container, and\nremote layouts may require a different address.\n\nStart the model gateway:\n\n```bash\nnpm run model-gateway\n```\n\nThen start the Web UI in another terminal:\n\n```bash\nnpm run web-ui\n```\n\nOpen [http://127.0.0.1:5177](http://127.0.0.1:5177).\n\nFor an OpenAI profile, initialize with:\n\n```bash\nnpm run init -- --provider openai --model <model-id>\n```\n\nThe generated OpenAI model profile opts into `execution-agent-v1`.\n\nTo add another model to an initialized runtime without replacing existing\nproviders or profiles, give the new profile a unique id:\n\n```bash\nnpm run add-model -- --profile <profile-id> --provider openai --model <model-id>\n```\n\nAdd `--default` to select the new profile as the request-runner default. This\nchanges only the default selection; it does not remove existing models.\n\nSee [Installation](docs/installation.md) and\n[Running Locally](docs/running-locally.md) for complete setup options.\n\n## Use as a Library\n\nInstall the same package in a TypeScript host:\n\n```bash\nnpm install @abot-ai/runtime\n```\n\nCompose the runtime from its public API:\n\n```ts\nimport {\n  createDefaultRuntimeDependencies,\n  loadRuntimeConfig,\n} from \"@abot-ai/runtime/runtime\";\n\nconst config = loadRuntimeConfig({ rootDir: process.cwd() });\nconst dependencies = createDefaultRuntimeDependencies(config);\n```\n\nThe host owns startup, shutdown, transport, and process lifecycle. See\n[examples/runtime-library-host.ts](examples/runtime-library-host.ts) for a\ncomplete host and [Runtime Library](docs/runtime-library.md) for the supported\nAPI surface.\n\n## Configuration and Providers\n\nThe default config path is `runtime.config.json`. A host can instead pass\n`configPath` or set `LLM_RUNTIME_CONFIG_FILE`; the source initializer uses this\nmechanism to select `local/runtime.config.json`.\n\nProvider profiles, model profiles, request-runner policy, environments, paths,\nand optional bridge settings are configuration-driven. Secrets belong in\nenvironment variables or a host secret store, never in committed config.\n\nSee [Configuration](docs/configuration.md) and the packaged\n[`runtime.config.schema.json`](runtime.config.schema.json). Model behavior can\nalso be tuned per semantic step without adding provider-specific logic to the\nruntime; see [Calibrating A Model By\nStep](docs/configuration.md#calibrating-a-model-by-step).\n\n## Plugins and Web Access\n\nThe distribution includes a curated public plugin catalog for development and\nagent workflows: filesystem operations, command execution, document reading,\nlocal search, explicit memory operations, project inspection, JSON inspection,\nsystem probing, and Web access. Hosts can add plugins under their own runtime\nroot; duplicate plugin IDs fail closed. The explicit memory plugin is separate\nfrom core-owned passive long-term memory.\n\nThe Web plugin exposes two distinct capabilities:\n\n- `web_fetch` retrieves a specific public HTTP(S) page without a search API key.\n- `web_search` uses Brave Search when `BRAVE_SEARCH_API_KEY` is configured.\n  Without a key, it uses Light search: bounded discovery and ranking within a\n  catalog of public Hebrew and English sources, without an external search\n  engine. Light has limited coverage; an empty result does not mean the\n  information is absent from the web. A configured Brave key that fails does\n  not trigger an automatic switch to Light.\n\nSome plugins have platform-specific requirements. See [Plugins](docs/plugins.md)\nfor their contracts, limits, and configuration.\n\n## Architecture at a Glance\n\n- The runtime owns request execution, sessions, events, context, and capability\n  orchestration.\n- The model gateway normalizes provider adapters, model profiles, and streaming\n  responses behind one runtime-facing contract.\n- Plugins own tool implementations and declare their capabilities, operations,\n  parameters, skills, and required secrets.\n- The Web UI and bridge are clients of the same runtime contracts.\n\nFor a deeper view, see [Architecture](docs/architecture.md).\n\n## Documentation\n\n- [Installation](docs/installation.md)\n- [Running Locally](docs/running-locally.md)\n- [Configuration](docs/configuration.md)\n- [Runtime Library](docs/runtime-library.md)\n- [Passive Long-Term Memory](docs/long-term-memory.md)\n- [Plugins](docs/plugins.md)\n- [Troubleshooting](docs/troubleshooting.md)\n\n## Project Status\n\nABot Runtime is an early-stage project. Only documented package exports are\npart of its supported API; internal source paths may change between releases.\n\n## Contributing, Security, and License\n\nSee [CONTRIBUTING.md](CONTRIBUTING.md) for development guidelines and\n[SECURITY.md](SECURITY.md) for reporting vulnerabilities. ABot Runtime is\navailable under the [MIT License](LICENSE).\n\n## Acknowledgements\n\n**Product direction and architecture by humans. Code, tests, and documentation\nby OpenAI Codex.**\n","readmeFilename":"README.md"}