{"_id":"owlcoda","_rev":"90-311103c41ba0ce7f44a2cab9cd6a0cba","name":"owlcoda","dist-tags":{"latest":"0.18.0"},"versions":{"0.14.10":{"name":"owlcoda","version":"0.14.10","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.10","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"0766f664603ae2055a6b0ef0a7765d480eab1dde","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.10.tgz","fileCount":856,"integrity":"sha512-Qmur4JGyBUBLGoal3UkCcul5zEkNvID5BhReH+JPFwF/igTTtiJCeE6IRXyPUK2sXLPJnvFgEHoV7MLZAMrU7A==","signatures":[{"sig":"MEUCIC8FyuHFuZSw5Obxh+Rxsyrufv9Y2hiJMpimNAGNseZhAiEA/8calC1zM29ZvDbYpEZp3P3/cFiwraih62zEpKUDrWQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4754806},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"gitHead":"4c954bfcb3581a3daf0d9d2308114ffe2c4fc196","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.10_1778554994450_0.017653125218505927","host":"s3://npm-registry-packages-npm-production"}},"0.14.11":{"name":"owlcoda","version":"0.14.11","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.11","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"22a49295344e40c901b99390ada6eb6d146e3b7c","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.11.tgz","fileCount":856,"integrity":"sha512-CzF02loGQJJk/nlwg7cXJNdkxLmuKpnk/z1RcW/0sEPu9wj2BPFm+Al/N5ZTxtwtDnoZpPo6HmStSn97JSOp9w==","signatures":[{"sig":"MEQCIBFSdtBOPkT7z8yVdeiDAczORqwkE6r6wbUb3IoA/yDjAiBdzkp0xIULVMrfK8WlMgnGF3D3tb7gC1P4YM1mfWXJqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4756520},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"gitHead":"f82ba0750e03be72e03848a65d799bc985c86c4b","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.11_1778558097725_0.9575119934522311","host":"s3://npm-registry-packages-npm-production"}},"0.14.13":{"name":"owlcoda","version":"0.14.13","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.13","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"6aa779d2aea3011567e12ae30a764004bef1dcb0","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.13.tgz","fileCount":856,"integrity":"sha512-v06dW5xmBDVul/IrWPxkIPWiFxjXE1w1IpnHWW1QNYi7NfZzF0RM7hWtT9YDCeGpkygk0wKqKBtdFIOPwMYXTA==","signatures":[{"sig":"MEUCICmWOg4/SvE/zxEvWbPgxY9zCgQShZXcYwTwdcroqtDNAiEA4NEocq4Euz3rwRugOI0ey5PVipiEu+pJu7Qea1to/Rw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4795357},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"gitHead":"9e0aa8588187473a773ab522c6c7d15a5437b691","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.13_1778562908494_0.03431359275368595","host":"s3://npm-registry-packages-npm-production"}},"0.14.14":{"name":"owlcoda","version":"0.14.14","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.14","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"9c3cea6f92a741174de777f27a59d7ec7caf0f5f","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.14.tgz","fileCount":856,"integrity":"sha512-jbMNhJnyuA+tL2IW96R4u5P6LfI9WWaZnzUWUqy1DisirNOOHr6soGvelP/8N3duDKKsgt5sR113NBiEoGgC7g==","signatures":[{"sig":"MEUCICsqCAcG8N/SQ8ljVncfU1Ko/2FWXy3hVCCtSlj5lsanAiEAuMjaBc/oZORP/BVd7YG5yntG8fB61ckou0w0zI+AwQQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4796098},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"gitHead":"e024b528082e9d248f244b762f9de77bb88e63e9","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.14_1778564909500_0.42328822598707005","host":"s3://npm-registry-packages-npm-production"}},"0.14.15":{"name":"owlcoda","version":"0.14.15","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.15","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"d6b5ea72b1f169d6a2b50299a345b16521500884","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.15.tgz","fileCount":856,"integrity":"sha512-F1R1ZRfwJ868nf3adG2opADgY2l9TLsXDFfURYl+H6WJ5bI9lN5h1gUFUvySbHLT7TyxRhboJmEp0scsuGf3mw==","signatures":[{"sig":"MEUCIHOmbCzdvorunG3B2ADmlzFbpAGySMgvmuTLQmmKimE4AiEA3mGSclj8sB6jswGCqvUHtBHRqh7tQPajybZo6Jfy/aw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4793282},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.15.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.15/owlcoda-0.14.15.tgz","_integrity":"sha512-F1R1ZRfwJ868nf3adG2opADgY2l9TLsXDFfURYl+H6WJ5bI9lN5h1gUFUvySbHLT7TyxRhboJmEp0scsuGf3mw==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"11.14.1","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.15_1778590181157_0.7378424593014576","host":"s3://npm-registry-packages-npm-production"}},"0.14.16":{"name":"owlcoda","version":"0.14.16","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.16","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"c08ec101cdab20bf56bb58ccf813f11ce51ec2c4","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.16.tgz","fileCount":1587,"integrity":"sha512-KiI3LW4Xy2rEncoS3VlE65cs2O532GSXwmczwi3vgcCIvJSRI87zw2qJ6cp8puJ4tJZwQwg50X8Sg6OsnssOgA==","signatures":[{"sig":"MEUCIQDb7zff3Sc1FNWhsZ0iwkEstIFqLCWOO8WWZEZTQP2izwIgHc7fFP+KH9WvjiXwA6Eue8ongiClfYrhY6T5j99akSQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8411711},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.16.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.16/owlcoda-0.14.16.tgz","_integrity":"sha512-KiI3LW4Xy2rEncoS3VlE65cs2O532GSXwmczwi3vgcCIvJSRI87zw2qJ6cp8puJ4tJZwQwg50X8Sg6OsnssOgA==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.16_1778641972050_0.528931858798191","host":"s3://npm-registry-packages-npm-production"}},"0.14.17":{"name":"owlcoda","version":"0.14.17","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.17","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"d5cfc0f6de0ba530571e7c991c959be90496b0b0","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.17.tgz","fileCount":1589,"integrity":"sha512-dLppSwD7HqeYF7pJPhO7MmeEVIIWED5DOcZ6cSzpYLe8EUAXbqvfTCt2KGiCFjM8RaGNAG4IkvnR37pUJTA9qw==","signatures":[{"sig":"MEUCIQDrFdB1/gnnCYuM/ApsMwzp1dBB0LUbQ3MNWf7KZ+2YCwIgL+8kZ7I9xGxigdTYgHkykbrEmlNNlgjRFiHHSb+GmW4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8432011},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.17.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-progress-v2/owlcoda-0.14.17.tgz","_integrity":"sha512-dLppSwD7HqeYF7pJPhO7MmeEVIIWED5DOcZ6cSzpYLe8EUAXbqvfTCt2KGiCFjM8RaGNAG4IkvnR37pUJTA9qw==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.17_1778660786595_0.27832037093023176","host":"s3://npm-registry-packages-npm-production"}},"0.14.18":{"name":"owlcoda","version":"0.14.18","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.18","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"15635b30c22e4ec45eda2ae6b4267e5248913754","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.18.tgz","fileCount":1591,"integrity":"sha512-ac5msKaoI2Y6EfUoosAVhTXtRtBIJh0Ga9qkHiMwKg4ALmefbiYGae0ONzeYTabYwzv8nHhZhY5TZ6Wcfyhn/Q==","signatures":[{"sig":"MEQCIH2tD7IElPtdfdhHAhfryxi9xFeAob/FVS3fU3B8r4BZAiA1eSlGhMQSJsRiaRqV34Fvz7gfODmbvZE/UNWLFNOtUg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8452425},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.18.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.18-nN7adx/owlcoda-0.14.18.tgz","_integrity":"sha512-ac5msKaoI2Y6EfUoosAVhTXtRtBIJh0Ga9qkHiMwKg4ALmefbiYGae0ONzeYTabYwzv8nHhZhY5TZ6Wcfyhn/Q==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.18_1778742683469_0.9913686737108653","host":"s3://npm-registry-packages-npm-production"}},"0.14.19":{"name":"owlcoda","version":"0.14.19","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.19","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"e20ca996951d33ba2116c8ef212794e97bf0784b","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.19.tgz","fileCount":1597,"integrity":"sha512-CGdJC3yHeBt/FkNpzcopuVH+kuFSvb/M2U3cEEfZ8xzQ6faOq1Sw4TZkXvHJkalOTWZeoYdlVTcIXWL+9/Gvow==","signatures":[{"sig":"MEUCIQCqhvd0MmPAiyNAYYYQYNKK8Y048j9N+OBJAZdT6oHdFQIgBmmlsugPe/h/EdYB6pUGAs+/JHY+bBL1DOlS2g9bm7Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8541034},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.19.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.19-LlVIWb/owlcoda-0.14.19.tgz","_integrity":"sha512-CGdJC3yHeBt/FkNpzcopuVH+kuFSvb/M2U3cEEfZ8xzQ6faOq1Sw4TZkXvHJkalOTWZeoYdlVTcIXWL+9/Gvow==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.19_1778810988822_0.8139078078004758","host":"s3://npm-registry-packages-npm-production"}},"0.14.20":{"name":"owlcoda","version":"0.14.20","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.20","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"d35aba79dc924117d86f0c2e286126ff73b8c479","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.20.tgz","fileCount":1597,"integrity":"sha512-szmAQovgryRHNJ2p4F6FfscBuE8N2LuRg/R7+gvdhVBk+dOjaKV5EHBpMXCq9o9F0cNWkKYHwk3lj808QWY/RQ==","signatures":[{"sig":"MEQCIFBygVI3NfxDkvqw4OkhG8ciTiTYjhspZOlmYtR/AtydAiATK3mJ22yz9R7/xPbqpVRLpF7EgLKAjIh87f1z1cydEg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8544485},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.20.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.20-t1SNg1/owlcoda-0.14.20.tgz","_integrity":"sha512-szmAQovgryRHNJ2p4F6FfscBuE8N2LuRg/R7+gvdhVBk+dOjaKV5EHBpMXCq9o9F0cNWkKYHwk3lj808QWY/RQ==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.20_1778833546999_0.15548450293427796","host":"s3://npm-registry-packages-npm-production"}},"0.14.21":{"name":"owlcoda","version":"0.14.21","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.21","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"98b21e5493e2df7c155432089041c5a3efab4da6","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.21.tgz","fileCount":1597,"integrity":"sha512-pM2ovZC1QvV6k2MhfAAl8GWYbOIVkkk3BQuCzvIOYQjgq3tM2WO1y1F8G/eDP2kXxpdth7wc4f5bBj+iukt1Vg==","signatures":[{"sig":"MEUCIQDi+6xHNK283Le1DbFnqLdlAv0NORUcFiQ+NDZO2wXaVwIgYRqQ2D2SJe0pL0uG627fRcsA3oa6SQyEfgq9kon9hGQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8547345},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.21.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.21/owlcoda-0.14.21.tgz","_integrity":"sha512-pM2ovZC1QvV6k2MhfAAl8GWYbOIVkkk3BQuCzvIOYQjgq3tM2WO1y1F8G/eDP2kXxpdth7wc4f5bBj+iukt1Vg==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.21_1778840267051_0.7548816975433341","host":"s3://npm-registry-packages-npm-production"}},"0.14.22":{"name":"owlcoda","version":"0.14.22","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.22","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"63d94f0a20b560b5f34dd88f74bd573a3ba1d003","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.22.tgz","fileCount":1625,"integrity":"sha512-kyPR6LnT492DduzsXgmRv0ixzLOxnOCD28HpzRTXIPscgog/4z7fCQswvxSQBK4yFSO1FUar+7oHUbW9GO6yzA==","signatures":[{"sig":"MEYCIQDB44qZOUa7pYNSedgnQNU2M0FQmLvgCOe0FJ/gqr6ohAIhAJg7BCq0tpiko8s4i+1/rSmRy4z/tBXa9G9g5l8wzZMD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8646180},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.22.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.22/owlcoda-0.14.22.tgz","_integrity":"sha512-kyPR6LnT492DduzsXgmRv0ixzLOxnOCD28HpzRTXIPscgog/4z7fCQswvxSQBK4yFSO1FUar+7oHUbW9GO6yzA==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.22_1778856954839_0.513421691586849","host":"s3://npm-registry-packages-npm-production"}},"0.14.23":{"name":"owlcoda","version":"0.14.23","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.23","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"e2a9ad4952a64005a3dac61b19e4bfbc7f3ef494","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.23.tgz","fileCount":1625,"integrity":"sha512-YyT6wBLYv3ftGH0r7xooHrepfP3/t09gyHHFlNbzXdrG6Qc/qWESaJc33RoqYuCC/d1x8FzI4q9upqkATl529w==","signatures":[{"sig":"MEQCIEQ7yAVCYHXkKPYNM4wX94OFYQbVpBDoyV5VR9PvPPwaAiBg7fPwIaSYLo02dfk8g8jmcHmlHKAdImkKsMxBqzVITQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8654489},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.23.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.23/owlcoda-0.14.23.tgz","_integrity":"sha512-YyT6wBLYv3ftGH0r7xooHrepfP3/t09gyHHFlNbzXdrG6Qc/qWESaJc33RoqYuCC/d1x8FzI4q9upqkATl529w==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.23_1778859791727_0.8757232684680676","host":"s3://npm-registry-packages-npm-production"}},"0.14.24":{"name":"owlcoda","version":"0.14.24","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.24","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"89e8ca80f2c0caaf4ad1ccebe5bf61c02ace8cdd","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.24.tgz","fileCount":1630,"integrity":"sha512-STNWC+eNsxQRT2u/CWYW49QKGNW9XR6v19J6ntkakHr5e8gQgMYfcOVKUyoit/LCc4LIe/SheGqpwnjdTEea0A==","signatures":[{"sig":"MEUCIQCvxHO2CGo+aY8ORLpVIFnATFREjRNBltxNUn+CvT+p0AIgMf6kzo7UlGKWEs9zPD+GA1Er5QUBOUErzejImaFuZQU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8779284},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.24.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.24/owlcoda-0.14.24.tgz","_integrity":"sha512-STNWC+eNsxQRT2u/CWYW49QKGNW9XR6v19J6ntkakHr5e8gQgMYfcOVKUyoit/LCc4LIe/SheGqpwnjdTEea0A==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.24_1778985092903_0.5487518310150512","host":"s3://npm-registry-packages-npm-production"}},"0.14.25":{"name":"owlcoda","version":"0.14.25","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.25","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"519665cc0131cb9ca186f5c327f0aad66d857a95","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.25.tgz","fileCount":1630,"integrity":"sha512-YP3lpEujmNxc9ZEm9BIzMzs6rTwCQyKcvJaewlb4df2S7TAhqfmNM+9gjLWE7ZA8e1b/m//Nb3nv12gfQCkVgw==","signatures":[{"sig":"MEUCIQC9nzWlC/j4tSqusFfmTvEU7JTr5bnntSelnSFOPj6u1QIgGTluZvapeEMjRyAeyXOgGpmxj7g0uLujF1Ti2YSy17s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8781998},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.25.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.25/owlcoda-0.14.25.tgz","_integrity":"sha512-YP3lpEujmNxc9ZEm9BIzMzs6rTwCQyKcvJaewlb4df2S7TAhqfmNM+9gjLWE7ZA8e1b/m//Nb3nv12gfQCkVgw==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.25_1778992312923_0.28678962706243616","host":"s3://npm-registry-packages-npm-production"}},"0.14.26":{"name":"owlcoda","version":"0.14.26","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.26","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"099f2934ac8183e0246417fae1467e10569a90d5","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.26.tgz","fileCount":1630,"integrity":"sha512-FTdKZDD+40zXEMaKvZbiZIPi/3bosMoO/wzdDj+RzE9QrxMaJ/zR8E4pQTRQovx/F7WP/VXO9BMfdLPcALnxrg==","signatures":[{"sig":"MEYCIQDx0ppa2KzjtTo0iifYJ24wTy7tVdlmCAF3ZVYcpf9YtwIhAKwq+9eQMdIz0calCT/PvaFsW6AmvgprLTZjXDZ7197C","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8791799},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.26.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.26/owlcoda-0.14.26.tgz","_integrity":"sha512-FTdKZDD+40zXEMaKvZbiZIPi/3bosMoO/wzdDj+RzE9QrxMaJ/zR8E4pQTRQovx/F7WP/VXO9BMfdLPcALnxrg==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.26_1779003924267_0.07605956717725837","host":"s3://npm-registry-packages-npm-production"}},"0.14.27":{"name":"owlcoda","version":"0.14.27","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.27","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"5e9de6d382a9894762f4f475c873ccb49400efb5","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.27.tgz","fileCount":1630,"integrity":"sha512-30lhBf9BgrRGpI9AYpEif2Ipxu+esE03JTv35hKu+9qpX3+CnagPEh0z7faw+b29Ipb/Obr3R23lJHVxxjatwg==","signatures":[{"sig":"MEQCIDxxlDzfSS7yy6kg95DeTwZRduHgrBSRCLVWYc2x6WmWAiAvs6nOMe0HzGmfZzuGjSYkJIljJWKWRrdS9BNmeSXP2g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8795159},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.27.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.27/owlcoda-0.14.27.tgz","_integrity":"sha512-30lhBf9BgrRGpI9AYpEif2Ipxu+esE03JTv35hKu+9qpX3+CnagPEh0z7faw+b29Ipb/Obr3R23lJHVxxjatwg==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.27_1779026062677_0.33834022821640497","host":"s3://npm-registry-packages-npm-production"}},"0.14.28":{"name":"owlcoda","version":"0.14.28","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.28","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"532ead0bd9e53636704576c4038d2ea6926e139d","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.28.tgz","fileCount":1630,"integrity":"sha512-EZLoOXTSBDnFIDKAu82XvNjIAauAh2okBjvD7X9dTQZmuSAtlG3cpmogoh21cumjbtzVj6vN2Xy1MMdS5M1SjA==","signatures":[{"sig":"MEQCIHp5yfI9rxXGtFEtZrq7sa6TMT2juOn6DnoG6amcFBiKAiBoivf/sAKQVbHkT8jdLhj85hAP8EOmFuTGSZ7OPyDcpQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8800147},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.28.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.28/owlcoda-0.14.28.tgz","_integrity":"sha512-EZLoOXTSBDnFIDKAu82XvNjIAauAh2okBjvD7X9dTQZmuSAtlG3cpmogoh21cumjbtzVj6vN2Xy1MMdS5M1SjA==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.28_1779039097573_0.8864736930698165","host":"s3://npm-registry-packages-npm-production"}},"0.14.29":{"name":"owlcoda","version":"0.14.29","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.29","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"84c0d53f92058bb737186acb3fd9561b6a23575c","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.29.tgz","fileCount":1632,"integrity":"sha512-znEzFaCHOTocxOglY9hHG4F5WYpd3kZJQBbjaarrQf903crZAm2TPBOP8lZcGLeBGJYT0ZkpCUnJuEE9Ay8SOA==","signatures":[{"sig":"MEQCIB0dpqISMPRffgUEIEoLM5hQ7KHjdyKVPOmCtGgUAe9dAiA54HJj23KrpSRhICU9V3xR9bWHGF+jP/EZTqPZcG87lg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8805872},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.29.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.29/owlcoda-0.14.29.tgz","_integrity":"sha512-znEzFaCHOTocxOglY9hHG4F5WYpd3kZJQBbjaarrQf903crZAm2TPBOP8lZcGLeBGJYT0ZkpCUnJuEE9Ay8SOA==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.29_1779351743141_0.12672061033286353","host":"s3://npm-registry-packages-npm-production"}},"0.14.30":{"name":"owlcoda","version":"0.14.30","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.30","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"694a5f087c92083b528bf1ea8c4ea185740c0bbc","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.30.tgz","fileCount":1632,"integrity":"sha512-C3sUe1ku7qgIWyl7LI22bleYng742ITUhem7LW6ghX5aZWBp7xOD07QUnVrJnWoAciB+nq8Dog755pTCTUS5Iw==","signatures":[{"sig":"MEUCID7LpaTLrhZrrgdCx0UBc/yD7juchW5ffaH3KWXN3VJNAiEA6j4mMNATX46+J2vfD/zTu6uHX0ZPxhTHCR9dR+ClmEE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8806072},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.30.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.30/owlcoda-0.14.30.tgz","_integrity":"sha512-C3sUe1ku7qgIWyl7LI22bleYng742ITUhem7LW6ghX5aZWBp7xOD07QUnVrJnWoAciB+nq8Dog755pTCTUS5Iw==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.30_1779356637950_0.6840729493726652","host":"s3://npm-registry-packages-npm-production"}},"0.14.31":{"name":"owlcoda","version":"0.14.31","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.31","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"41c15f25ec827b87a942da2ef6fba7eb08430994","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.31.tgz","fileCount":1632,"integrity":"sha512-blRtCvKIJBI2w9WOpE2IXEf5HJyCjSs+vXBLMxV2v7Gg2M0UvCjPhR6tFIIll9wdnbp81a717P7LHBtDCC7opw==","signatures":[{"sig":"MEQCICgjIp2iT/AMAN4qeoZOJfStd8r62rAgz8ZFoAUs4RwlAiBHGo96+lffL6AmaQnochoNTHwp2zXb1va/qsLOkLzdqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8806971},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"gitHead":"abaa0039baaa744a75769f824d1b8b8b7aedaa04","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.31_1779473559388_0.7264006932669929","host":"s3://npm-registry-packages-npm-production"}},"0.14.32":{"name":"owlcoda","version":"0.14.32","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.32","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"a19fb3d5e2f5c776088c0892123677de59e6bc10","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.32.tgz","fileCount":1642,"integrity":"sha512-8atDVG1nVK3MYNAOciJHUoBcZlSGa6NGbTSAaTozvq3DKruh2SL/+Hi5eXCTNT5YPS3Z8hPsGa3DgH/pu6uFPQ==","signatures":[{"sig":"MEQCIA5cMEI1A53YPvVv7HZbg8iUN7BB/Nu1U5SzYxJjpn52AiABmqurUIyOXHMG9DuBswUcG+A/dfhbG7VsBQE6aKNuhg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8834913},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.32.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.32/owlcoda-0.14.32.tgz","_integrity":"sha512-8atDVG1nVK3MYNAOciJHUoBcZlSGa6NGbTSAaTozvq3DKruh2SL/+Hi5eXCTNT5YPS3Z8hPsGa3DgH/pu6uFPQ==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.32_1779724437694_0.3485719894596755","host":"s3://npm-registry-packages-npm-production"}},"0.14.33":{"name":"owlcoda","version":"0.14.33","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.33","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"ac1e23d1f574ffa9aa30d4cb6283734e96437b98","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.33.tgz","fileCount":1648,"integrity":"sha512-zWoKMM8qSqQBIUTieL/isQd+vNpDgLOaBKNIbLBTiaIqkg8O/txqEA3QxmxyViFU5rtXOAUnipLEhwWJ8HpjXQ==","signatures":[{"sig":"MEUCIQCe7fTJIMhD7ZBSg1u5ubaOC81e86dftCQErpXYzBesXwIgEkNf8hHdzdEXC1FWm115L7NP108nmeflXZh3/sg2v8o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8879094},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.33.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.33/owlcoda-0.14.33.tgz","_integrity":"sha512-zWoKMM8qSqQBIUTieL/isQd+vNpDgLOaBKNIbLBTiaIqkg8O/txqEA3QxmxyViFU5rtXOAUnipLEhwWJ8HpjXQ==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.33_1779787592432_0.5861250393107966","host":"s3://npm-registry-packages-npm-production"}},"0.14.34":{"name":"owlcoda","version":"0.14.34","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.34","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"01d9f3f0be80bff9c7ab35d200ae4546205384ae","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.34.tgz","fileCount":1648,"integrity":"sha512-n77x7EDtDB9XVHUO7Nea6KFP3KZ1khPcLgytuA4lRxBSKbRBfwn/3AEW4LUobHeazQL9XNt2E7LIg2nGVYKZDQ==","signatures":[{"sig":"MEUCIHT6FSWyhVQ0JV/7ExnXjWylkWhtsJNHO4GW6yrUcyd9AiEAw4K3MaZW2f2BgePFqLsUIDPbxgKiJWVHbZ0KEMluJ24=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8881170},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.34.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.34/owlcoda-0.14.34.tgz","_integrity":"sha512-n77x7EDtDB9XVHUO7Nea6KFP3KZ1khPcLgytuA4lRxBSKbRBfwn/3AEW4LUobHeazQL9XNt2E7LIg2nGVYKZDQ==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.34_1779789276067_0.9094945322665653","host":"s3://npm-registry-packages-npm-production"}},"0.14.35":{"name":"owlcoda","version":"0.14.35","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.35","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"d1c7038585e212a71e1ff010772af9d381a06f62","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.35.tgz","fileCount":1656,"integrity":"sha512-e5r1A5ltT4m6yl+yYC5ZXgSS1CaCIKKSEBe2WZZCkK2tlkgPk0fHgGg4Ijrtk9xLvg56bI0LEJmwpKD2UuYyzg==","signatures":[{"sig":"MEQCICfaXc9HQc2QoU6kp/feG88ZuRAAF+Mdp++tcJ7+uNdJAiB3b455FH6F9VVwLNe0EkyAYmEbQdaJAIPRHcPMKslXhg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9020215},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.35.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.35/owlcoda-0.14.35.tgz","_integrity":"sha512-e5r1A5ltT4m6yl+yYC5ZXgSS1CaCIKKSEBe2WZZCkK2tlkgPk0fHgGg4Ijrtk9xLvg56bI0LEJmwpKD2UuYyzg==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.35_1779868750864_0.03237036184442865","host":"s3://npm-registry-packages-npm-production"}},"0.14.36":{"name":"owlcoda","version":"0.14.36","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.36","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"f6ee6968c9b7c803739e6afc217b7149639c7aa7","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.36.tgz","fileCount":1656,"integrity":"sha512-2UkVVwbhZNnUKY2IYPYDzqSPT9d4SaUPWzxQXiGazyiVyIjg10xGH7fH/nT54qf1/sxvcHjgdAzIKTR2XDiMeg==","signatures":[{"sig":"MEYCIQDpiitwVn/V4S1T1xExghTSK5vgCg0TjPFyudCXAlsL5AIhAKGuYe2kGM4dlM2o3X7jGKUdyBTcgfYAU795lLqbnVMm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9023031},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.36.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.36/owlcoda-0.14.36.tgz","_integrity":"sha512-2UkVVwbhZNnUKY2IYPYDzqSPT9d4SaUPWzxQXiGazyiVyIjg10xGH7fH/nT54qf1/sxvcHjgdAzIKTR2XDiMeg==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.36_1779875056321_0.4084372821334368","host":"s3://npm-registry-packages-npm-production"}},"0.14.37":{"name":"owlcoda","version":"0.14.37","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.37","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"127b82e3965ecbe46a01cfd1962be2d130c85b99","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.37.tgz","fileCount":1656,"integrity":"sha512-d8/RK5tRTg4pUR2IEAPPaWyNCP/hjr31RoGzX9EerRluDHT1Yu19rkB7BV8fgo04IJGMfZ+AeqU/QNSBuKqLPQ==","signatures":[{"sig":"MEUCIFpkPU2+fWjsKYX+8BZIHMQ079LEy5Kj5HeqTMTpLpe3AiEAqquyboqJnX89YIcejABAJqog8Zf+wOS/JweD5AzHzNQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9024450},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.37.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.37/owlcoda-0.14.37.tgz","_integrity":"sha512-d8/RK5tRTg4pUR2IEAPPaWyNCP/hjr31RoGzX9EerRluDHT1Yu19rkB7BV8fgo04IJGMfZ+AeqU/QNSBuKqLPQ==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.37_1779935968196_0.8826751084150386","host":"s3://npm-registry-packages-npm-production"}},"0.14.38":{"name":"owlcoda","version":"0.14.38","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.38","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"77ea3f34b47170fe3669c9e6ea8bb11241bb79cd","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.38.tgz","fileCount":1656,"integrity":"sha512-IjZuKJD5yGg7AIT20NdRtOruxEpZFi8kmtvLoWpx/ADW8/zoJSSUTyOlx8+jWX5iIuqEINqB9QVpsY3KviPnJg==","signatures":[{"sig":"MEUCIAZX0BPe0CMiNBpTGfKkarp2kLpQ6bsMBERmrvjPFfN2AiEAgl8Zresaqn5iDydjSUGw+RrnDr2Su+r/wgu0vWIUMM8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9036312},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.38.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.38/owlcoda-0.14.38.tgz","_integrity":"sha512-IjZuKJD5yGg7AIT20NdRtOruxEpZFi8kmtvLoWpx/ADW8/zoJSSUTyOlx8+jWX5iIuqEINqB9QVpsY3KviPnJg==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.38_1779941192827_0.32797741593576357","host":"s3://npm-registry-packages-npm-production"}},"0.14.39":{"name":"owlcoda","version":"0.14.39","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.39","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"c5d3b01b7d73fe09e271184d6a8a890432538f49","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.39.tgz","fileCount":1656,"integrity":"sha512-9XaWY9EiaJXZvstZaGovyqTTt9dwFseGO/A3f1KTn15CMjNwiZAjbtxkyLrYSFCUFfOfxi7CXFQIN0C5oXSgww==","signatures":[{"sig":"MEYCIQD50fosHJMusrveZ7gOYNfSKjkqWwGA4AV/uYFLiqoOMwIhALUYLW20FgGeQCWlWjg0lEMNsxBgrVh505k01o3sgOvH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9055940},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.39.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.39/owlcoda-0.14.39.tgz","_integrity":"sha512-9XaWY9EiaJXZvstZaGovyqTTt9dwFseGO/A3f1KTn15CMjNwiZAjbtxkyLrYSFCUFfOfxi7CXFQIN0C5oXSgww==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.39_1779949361165_0.33904452702814436","host":"s3://npm-registry-packages-npm-production"}},"0.14.40":{"name":"owlcoda","version":"0.14.40","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.40","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"ecb397b2b689db3267f5eb2a6ce925d05c04662c","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.40.tgz","fileCount":1656,"integrity":"sha512-FXCJydANDt6xu/9woPs+jp790QRuIoyQqNVLfJOLSA6/QzuBxyVyUqKGN4pcJrtUj5NwT5N5iBWuuL7lAHyNyA==","signatures":[{"sig":"MEYCIQD1brZsF1UhkE579TinpZwgzn8FOKcZmvme2w8X1YvqOQIhAI8lhJbY2LxQJMLpd3PBpDAGD84gDREaDkirjK2ntrnt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9065201},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.40.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.40/owlcoda-0.14.40.tgz","_integrity":"sha512-FXCJydANDt6xu/9woPs+jp790QRuIoyQqNVLfJOLSA6/QzuBxyVyUqKGN4pcJrtUj5NwT5N5iBWuuL7lAHyNyA==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.40_1779953900257_0.9829269042791586","host":"s3://npm-registry-packages-npm-production"}},"0.14.41":{"name":"owlcoda","version":"0.14.41","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.41","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"fba3e936396c085c1598042633895a8ad86ea316","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.41.tgz","fileCount":1656,"integrity":"sha512-QGdw1b4z8K0oTNfqUYwl6cS0sr3M3CCQa7Pm6vo0usUWbrj0CoRC76lfWyln3Hkw5YFTnJQJAb8YqNdffUDslg==","signatures":[{"sig":"MEQCIGA0IOxOSbhsxlfE6t3fC1i4lRjZWQccgQVRykhCTi12AiBzSjmqx942CLS5Df28Ktn9PlrOO8kATaBccpOpMPU1tg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9071501},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.41.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.41/owlcoda-0.14.41.tgz","_integrity":"sha512-QGdw1b4z8K0oTNfqUYwl6cS0sr3M3CCQa7Pm6vo0usUWbrj0CoRC76lfWyln3Hkw5YFTnJQJAb8YqNdffUDslg==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.41_1779974635466_0.22178614682170394","host":"s3://npm-registry-packages-npm-production"}},"0.14.42":{"name":"owlcoda","version":"0.14.42","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.42","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"516b607c01c933b7897df16e4963e23500d21575","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.42.tgz","fileCount":1656,"integrity":"sha512-dq5tjupvhkZ+2qd0WHCyZOyjJJXbqMGhPz5BeKmXIzJ4ky9rngs0zVyD11s/6sNU4PiCP9xwV06vgSe26Rog/w==","signatures":[{"sig":"MEUCIHxhDbqCYgHqmjngKfAyRg7/+lJuFoPv1tMfmu4BAcO8AiEAokOuC5Oo+3EqsCQ8haCN/5rG0dcbzqDUf9PwOZcQt+g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9093511},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.42.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.42/owlcoda-0.14.42.tgz","_integrity":"sha512-dq5tjupvhkZ+2qd0WHCyZOyjJJXbqMGhPz5BeKmXIzJ4ky9rngs0zVyD11s/6sNU4PiCP9xwV06vgSe26Rog/w==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.42_1779981277110_0.3897687527070852","host":"s3://npm-registry-packages-npm-production"}},"0.14.43":{"name":"owlcoda","version":"0.14.43","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.43","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"44306913499de512dc90ff7637a8f8dde75ea687","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.43.tgz","fileCount":1658,"integrity":"sha512-rj1xAebpDDdkSMDsNqYHN2ag0lMygAviTaaOoDEgr/zUSo/kDeoW3qCoi9gNwKhDOt4ep97einycI7C8mX8RXw==","signatures":[{"sig":"MEUCIQDlVvAwTM99fVNZr5DGvsM5k9jfOKlWHPp4boimHreVfQIgF4MtdL1GbxGpkIxhNTGdEXVuCmLxjEl3SKvWz8M9q4k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9118334},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.43.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.43/owlcoda-0.14.43.tgz","_integrity":"sha512-rj1xAebpDDdkSMDsNqYHN2ag0lMygAviTaaOoDEgr/zUSo/kDeoW3qCoi9gNwKhDOt4ep97einycI7C8mX8RXw==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.43_1780018423060_0.7411332526269512","host":"s3://npm-registry-packages-npm-production"}},"0.14.44":{"name":"owlcoda","version":"0.14.44","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.44","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"f90bf808695baece7aeab5156019928e2b855726","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.44.tgz","fileCount":1660,"integrity":"sha512-hGMQ961E+6+Bo/hrH8lFiRp9kfYIAFvBxnRotcjKR0rF8Xmxs2YFK8m7M0B+TapzFcwMgB7nfehOEOR0R2tKFA==","signatures":[{"sig":"MEUCIQDuBMrSejtVRZvA+gwNIpt2xopWtBAkPBZf32gocoNsWwIgH6CENjIku3GDTKh2wyUFSn7hwfj1PcqwQgd/SRjEN/I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9130513},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.44.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.44/owlcoda-0.14.44.tgz","_integrity":"sha512-hGMQ961E+6+Bo/hrH8lFiRp9kfYIAFvBxnRotcjKR0rF8Xmxs2YFK8m7M0B+TapzFcwMgB7nfehOEOR0R2tKFA==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.44_1780023401761_0.8245792693531402","host":"s3://npm-registry-packages-npm-production"}},"0.14.45":{"name":"owlcoda","version":"0.14.45","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.45","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"8d98f21171b03f41ee89b674e23979d4db0dae8e","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.45.tgz","fileCount":1660,"integrity":"sha512-jkNJ6Wh7mUz9oW9wJZggmjWPX0ZXoXFMvkCufTTkpAVuzPMEw5frk/Njg9r0KRU4u8rz5qz7gFnZkHLP8aqFiw==","signatures":[{"sig":"MEYCIQCT0/rdumR51uzkBRCN71FA11kW0gtXr7CQQ8hTDQWkrQIhAO8AmK9iEpyaTzb7O1U8xxxmksJ5Af7pAaHch5zqsUTg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9132793},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.45.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.45/owlcoda-0.14.45.tgz","_integrity":"sha512-jkNJ6Wh7mUz9oW9wJZggmjWPX0ZXoXFMvkCufTTkpAVuzPMEw5frk/Njg9r0KRU4u8rz5qz7gFnZkHLP8aqFiw==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.45_1780035157216_0.24869085191302576","host":"s3://npm-registry-packages-npm-production"}},"0.14.46":{"name":"owlcoda","version":"0.14.46","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.46","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"9a21d76824b37fbc11e673ab489fd18bbe98b19c","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.46.tgz","fileCount":1666,"integrity":"sha512-1kyqCBihQU5oDfnEllx/wgCSJHTZZBE5cNRX0tq0rGBgpb1GQJEi5OcRswBtakSSAxUzhFS/mWwatXu+thZZmA==","signatures":[{"sig":"MEQCICAGAFt3K0DxLRMkW4DCdG9AHVzIlpKf+B3pGCHQAuMhAiA6JY39IaeHkP0gmUPto5F2EEDAyCSX7u6sC15SP8L9/g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9179316},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.46.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.46/owlcoda-0.14.46.tgz","_integrity":"sha512-1kyqCBihQU5oDfnEllx/wgCSJHTZZBE5cNRX0tq0rGBgpb1GQJEi5OcRswBtakSSAxUzhFS/mWwatXu+thZZmA==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.46_1780126108422_0.8388302631597457","host":"s3://npm-registry-packages-npm-production"}},"0.14.47":{"name":"owlcoda","version":"0.14.47","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.47","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"113d115627bf72ffbaf2c0844590c2af612ac333","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.47.tgz","fileCount":1676,"integrity":"sha512-PDx8fcfW6WBUsxKEq8A5h4/oY6E80tY25b3Rydw5jXl81WYAEtvUyFBZgu0oml5jicfYag/5BRBdKUYWLv/k2w==","signatures":[{"sig":"MEUCIQD3Rpu8FE+3HVTrOisePzeu6RXKQfwnEMwFGDSEa+ZoVwIgGJ5Ca8f9TK82XTq6nNx84uloHCT1Y/X7JXAcZzW5maw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9253757},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.47.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.47/owlcoda-0.14.47.tgz","_integrity":"sha512-PDx8fcfW6WBUsxKEq8A5h4/oY6E80tY25b3Rydw5jXl81WYAEtvUyFBZgu0oml5jicfYag/5BRBdKUYWLv/k2w==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.47_1780147487813_0.7749089342897773","host":"s3://npm-registry-packages-npm-production"}},"0.14.48":{"name":"owlcoda","version":"0.14.48","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.48","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"70bf576379ef095e054a98a47a4fa6ffc7ce9084","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.48.tgz","fileCount":1676,"integrity":"sha512-eWUxamsVfxjV07Mlz45065XBdb3VK9RVjsIZCgOij2Lp7c3QH/EYXGG6rzlxyp08VMvtut7tfJ6JPbpU4oanTQ==","signatures":[{"sig":"MEUCIE0ao0OhpteQq7u45wShjoY3J7sq93IFmppEDCwaIdAiAiEAmddhV9pPqG/BD76Hjyfx6SRJsUX/5i5y2nfYgMMJPMg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9257754},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.48.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.48/owlcoda-0.14.48.tgz","_integrity":"sha512-eWUxamsVfxjV07Mlz45065XBdb3VK9RVjsIZCgOij2Lp7c3QH/EYXGG6rzlxyp08VMvtut7tfJ6JPbpU4oanTQ==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.48_1780150922041_0.1267148685047863","host":"s3://npm-registry-packages-npm-production"}},"0.14.49":{"name":"owlcoda","version":"0.14.49","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.49","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"06afc015674f4cd451d965665956846363e3fb75","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.49.tgz","fileCount":1676,"integrity":"sha512-yXuW4d+8pDCCpKhtkS479opgPGodx0pS0cFktNj8EUTWCEo/N+j6sQnjWdFzwaNQh0xNFMjrRLEEGZy8OIIs0g==","signatures":[{"sig":"MEYCIQDU7DOJGSWm6DW4mRmUC27EwSmDS+pzSU8iXUYegQYUIAIhAOROoHzFEHHH1jkVs4bhuFySmsCAgH9Mqa6IhEwcl9t+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9258733},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.49.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.49/owlcoda-0.14.49.tgz","_integrity":"sha512-yXuW4d+8pDCCpKhtkS479opgPGodx0pS0cFktNj8EUTWCEo/N+j6sQnjWdFzwaNQh0xNFMjrRLEEGZy8OIIs0g==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.49_1780161480193_0.6689167634988411","host":"s3://npm-registry-packages-npm-production"}},"0.14.50":{"name":"owlcoda","version":"0.14.50","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.50","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"845d036ef24f3b956feb6c8435ca72064b59865e","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.50.tgz","fileCount":1680,"integrity":"sha512-4VlIuj9XlZOc5VCy661RdT7Wc9Mc9bIf8YcLAD86NYi3Te4PPbp3Cy4TN41HDEoDmJqwl7YS8lG/QJ0eGC1rCg==","signatures":[{"sig":"MEYCIQDelUR5HkTCctIsbWetlBNOknG1HSpe56wAB5NaOzup4gIhAN8Mi/58uZp4MG6rXOA+vyVmMmLA6TQRHycRHfrVlluH","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9298000},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.50.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.50/owlcoda-0.14.50.tgz","_integrity":"sha512-4VlIuj9XlZOc5VCy661RdT7Wc9Mc9bIf8YcLAD86NYi3Te4PPbp3Cy4TN41HDEoDmJqwl7YS8lG/QJ0eGC1rCg==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.50_1780293375786_0.770226336103069","host":"s3://npm-registry-packages-npm-production"}},"0.14.51":{"name":"owlcoda","version":"0.14.51","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.51","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"0ac576038de7de188fab4e21f80ffc1dec1ea97d","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.51.tgz","fileCount":1680,"integrity":"sha512-st4Ysjq0L59XOErrmeMWaKlYzDxcJCRwu47hjGTmnXAx4RPRuv/1OJN4VVnYoMMwkp2qfAPBAqhz9qvLvzPjpg==","signatures":[{"sig":"MEQCID1t02plE3/iBjVRYOIB6Uo34ZRJ5OVGnkMnobr2jN27AiANArcDKUIuy2Q60oxbCDbZ6v+G0t4AvEaxsdbgWqi2gg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9301770},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.51.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.51/owlcoda-0.14.51.tgz","_integrity":"sha512-st4Ysjq0L59XOErrmeMWaKlYzDxcJCRwu47hjGTmnXAx4RPRuv/1OJN4VVnYoMMwkp2qfAPBAqhz9qvLvzPjpg==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.51_1780299333891_0.36740754273268195","host":"s3://npm-registry-packages-npm-production"}},"0.14.52":{"name":"owlcoda","version":"0.14.52","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.52","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"ccc1fdd8e6aa46b734f9dd7a4eadc4bc31abf3b1","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.52.tgz","fileCount":1680,"integrity":"sha512-xzyEc3F1wezhQEy3VX9gB2J/lmjsLBOj9dhMK+DR2YB61BcCZmUUf6dp6JbB2xHRBSTK3A2kWKbBunj0R4sTsw==","signatures":[{"sig":"MEQCIFzD4Ba2Oc1iQEsD5KOuAo5tWcYe8hDKrAN/Tfeil6q3AiA6/ykwsK1mfDNqKKOXJ82SP4EDFMaPq5r7Kr6Lld+eqA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9304134},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.52.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.52/owlcoda-0.14.52.tgz","_integrity":"sha512-xzyEc3F1wezhQEy3VX9gB2J/lmjsLBOj9dhMK+DR2YB61BcCZmUUf6dp6JbB2xHRBSTK3A2kWKbBunj0R4sTsw==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.52_1780305504662_0.40638725541581255","host":"s3://npm-registry-packages-npm-production"}},"0.14.53":{"name":"owlcoda","version":"0.14.53","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.53","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"a45bf469bc64531b2b7b9652d25e6506e2c2d41f","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.53.tgz","fileCount":1684,"integrity":"sha512-lWyUdG+y2aRMCPV/gmcoobRYn4sVImV9WDRS+jJ+2K0ujkVC71R9oePz4cBcikj9XaLmHeT2WirtLcBCpKd8/g==","signatures":[{"sig":"MEUCIQDNTYUuM9xa/Gn1OkoyQNLvJ6mRh6ls+i+hvBkRr+wGlAIgBIAEqefWfVlSOQBhCHrgPH1zVhLHeelZLNj1wpIKL2E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9328519},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.53.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.53/owlcoda-0.14.53.tgz","_integrity":"sha512-lWyUdG+y2aRMCPV/gmcoobRYn4sVImV9WDRS+jJ+2K0ujkVC71R9oePz4cBcikj9XaLmHeT2WirtLcBCpKd8/g==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.53_1780383444834_0.484064227667937","host":"s3://npm-registry-packages-npm-production"}},"0.14.54":{"name":"owlcoda","version":"0.14.54","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.54","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"19ad5c9e37d7f784b2d83a70a162750f34e7fb86","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.54.tgz","fileCount":1684,"integrity":"sha512-BJd7fHAZ3D9oYfnrSv4GdaIHIpPmUKRWuXWBVyd8Zw5v60qN8Eg/PI/wdzIaFiUj1n5jnRQooqNXY6FrZwrZ8A==","signatures":[{"sig":"MEUCIQDgE3R/Q3ENNW2POO6XXU2ryBB/r0NynoA4X0SrbqEuBAIgYCdrd70I8zhQh6d6crnxJzbHNs3nUwwQ97F151EgMno=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9332644},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.54.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.54/owlcoda-0.14.54.tgz","_integrity":"sha512-BJd7fHAZ3D9oYfnrSv4GdaIHIpPmUKRWuXWBVyd8Zw5v60qN8Eg/PI/wdzIaFiUj1n5jnRQooqNXY6FrZwrZ8A==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.54_1780457788326_0.5388201754301207","host":"s3://npm-registry-packages-npm-production"}},"0.14.55":{"name":"owlcoda","version":"0.14.55","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.55","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"6284cc3e140174139767f1086da3502825edac16","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.55.tgz","fileCount":1684,"integrity":"sha512-mc8ycMpp5Aj9+cBNgByIzK2AI5byuQV8UDgYztFw8txzqZA8jnjqC6UisN8lexdqoSDczJaAEO+TnoJbYfOLGA==","signatures":[{"sig":"MEQCIA/X7d6s4NY/oRpHVl06vmkajjK/byIbPK5VfJmZe1R2AiB+fB6H/HZMVXvlksTxdvpvVIygP75WKZ10PD0vsKLU1A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9350950},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.55.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.55/owlcoda-0.14.55.tgz","_integrity":"sha512-mc8ycMpp5Aj9+cBNgByIzK2AI5byuQV8UDgYztFw8txzqZA8jnjqC6UisN8lexdqoSDczJaAEO+TnoJbYfOLGA==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.55_1780479830390_0.9891813381701773","host":"s3://npm-registry-packages-npm-production"}},"0.14.56":{"name":"owlcoda","version":"0.14.56","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.56","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"43ff0fd6e0c5fe6ff15d35f70fec241891477823","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.56.tgz","fileCount":1686,"integrity":"sha512-EAt0AZUiHyxf8HK4HOv3XIZoBrCWl2ZgRQXxjt9WVRjupXtZ/Bl9zbt+2MVKgrHPKu/iq1EgV/n1ijE22oIJaQ==","signatures":[{"sig":"MEQCIELUl5Z3EoBvC0zISvyKvfpzGEocqlnsR1CpBMB/l6eZAiBeMGn6tniWZTLwkvRHls0x0rxa8zuB27TJK8Gh6dozEA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9367011},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.56.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.56/owlcoda-0.14.56.tgz","_integrity":"sha512-EAt0AZUiHyxf8HK4HOv3XIZoBrCWl2ZgRQXxjt9WVRjupXtZ/Bl9zbt+2MVKgrHPKu/iq1EgV/n1ijE22oIJaQ==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.56_1780499642941_0.9299152151662076","host":"s3://npm-registry-packages-npm-production"}},"0.14.57":{"name":"owlcoda","version":"0.14.57","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.57","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"ce28e85e552eaf285b02b237ed8a096be29a669d","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.57.tgz","fileCount":1690,"integrity":"sha512-aJz1J/XhEPXhtIsFzl4ixKManYLnsGZtOoIrbALD9DtPBLbXw/ZKFVkcffNz9LvzlOpjrNvG2dpPfhVvTlXZ/w==","signatures":[{"sig":"MEYCIQC0jZvjouFfKQ942xRHbbRpegf9bZ3kov7VgxdXgrRBYgIhAKFgyu3H8rbDA9RvfMBZxkwMDsd/KJ2WTY+S4vpB2ziO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9392697},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.57.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.57/owlcoda-0.14.57.tgz","_integrity":"sha512-aJz1J/XhEPXhtIsFzl4ixKManYLnsGZtOoIrbALD9DtPBLbXw/ZKFVkcffNz9LvzlOpjrNvG2dpPfhVvTlXZ/w==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.57_1780557574401_0.8336482523370785","host":"s3://npm-registry-packages-npm-production"}},"0.14.58":{"name":"owlcoda","version":"0.14.58","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.58","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"e2b39f09221a3915466625583ed67a6f69b77902","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.58.tgz","fileCount":1690,"integrity":"sha512-fRJlJvhf9FaY7wasCkNun436HYL4UH3nOgo+ghODJhLHpijGgaJ1lhpTcs1Bi1DHGvDWqGaJFA+IJ8yydmmbhA==","signatures":[{"sig":"MEUCIAr8KKkxaEVolUDVPacmTZ+s5i6qsj/q4Gf9QEKc/rxvAiEAxdo8pft2X/WHlEh/DukI7q5FQKkjv9oE4/N8A9vut+A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9394895},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.58.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.58/owlcoda-0.14.58.tgz","_integrity":"sha512-fRJlJvhf9FaY7wasCkNun436HYL4UH3nOgo+ghODJhLHpijGgaJ1lhpTcs1Bi1DHGvDWqGaJFA+IJ8yydmmbhA==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.58_1780583692199_0.8127565386486377","host":"s3://npm-registry-packages-npm-production"}},"0.14.59":{"name":"owlcoda","version":"0.14.59","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.59","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"8ad3b99ad8a6842627f23f848d47a2427ea4d1f6","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.59.tgz","fileCount":1702,"integrity":"sha512-tMb1qUFHGms9v1DcJl1CDEyIqIePM5OOMoiTxeEkpAga5j5Th+JTZ9UKvOjsUik5gLqeyCBobajrrrrg2os9ew==","signatures":[{"sig":"MEYCIQCEHXp4VmUbldD6+8rNwVzK6ycX6lrox0Jtr0KOXY+nrwIhAP1+b6UyXLYmqY8UUGa8dswXr6m3jY6/b6wpvPQO+ckR","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9419644},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.59.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.59/owlcoda-0.14.59.tgz","_integrity":"sha512-tMb1qUFHGms9v1DcJl1CDEyIqIePM5OOMoiTxeEkpAga5j5Th+JTZ9UKvOjsUik5gLqeyCBobajrrrrg2os9ew==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.59_1780671959499_0.16522871363755587","host":"s3://npm-registry-packages-npm-production"}},"0.14.60":{"name":"owlcoda","version":"0.14.60","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.60","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"e89077c477cb38c2f30a130f958f5c18c7601f2c","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.60.tgz","fileCount":1724,"integrity":"sha512-+rSkVXVOI/CtLh5tdzFVFj1BB3DW2edI0iIXe2eggQMLXrChUU5HwnJ3TPzHyPsIWYkSqgJKnR2G5ly9I2/ApA==","signatures":[{"sig":"MEUCICq73yD5paNINma6eM5b6f+nEzA1ppamCL2EddxNa4MeAiEAmH9VUkowg1lq3c2VPeOMOaYggrQ/5edaA4IhjkiRjjY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9511965},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.60.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.60/owlcoda-0.14.60.tgz","_integrity":"sha512-+rSkVXVOI/CtLh5tdzFVFj1BB3DW2edI0iIXe2eggQMLXrChUU5HwnJ3TPzHyPsIWYkSqgJKnR2G5ly9I2/ApA==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.60_1780969511441_0.2072773974058113","host":"s3://npm-registry-packages-npm-production"}},"0.14.61":{"name":"owlcoda","version":"0.14.61","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.61","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"53fadfad1ba4e6718efcbbf7d8f91ab9caf42d43","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.61.tgz","fileCount":1728,"integrity":"sha512-PJxZt6SAITfCABLLTp1qHIR6TWK30ooC45IZ6pI8Yes6h7Thpg8/O/D6i8A7BVah5NKd/GMdZBohkH+fV69C/A==","signatures":[{"sig":"MEQCIFVAfi6LtTaJEyKzq7hYSkEaGoCHEZPEllQOnliG5cpaAiBuEAOyYZR8XmZenPCl30LUC9tjQrMr3eEJ43Lgc/ulCg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9527267},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.61.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.61/owlcoda-0.14.61.tgz","_integrity":"sha512-PJxZt6SAITfCABLLTp1qHIR6TWK30ooC45IZ6pI8Yes6h7Thpg8/O/D6i8A7BVah5NKd/GMdZBohkH+fV69C/A==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.61_1780992194701_0.21934906936765408","host":"s3://npm-registry-packages-npm-production"}},"0.14.62":{"name":"owlcoda","version":"0.14.62","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.62","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"d10cedc845479729647a08d0ee217b73e029b7c5","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.62.tgz","fileCount":1728,"integrity":"sha512-d5M/CR8f+LlK6fEMfn9TojWUpP+SNiHTEkj3qyyCVYArWv4Q8isCzdp8TCDzAXGi4geF650VCQttl879/Gdd7A==","signatures":[{"sig":"MEUCIQCbjsV4JMGG3ZusPRt07pZblVEXAlIi+udmQOIlXVbaywIgXjRYy54KzON5203zIQO1mqi9ez9PPNbfyX4TGNq7kNI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9539585},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.62.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.62/owlcoda-0.14.62.tgz","_integrity":"sha512-d5M/CR8f+LlK6fEMfn9TojWUpP+SNiHTEkj3qyyCVYArWv4Q8isCzdp8TCDzAXGi4geF650VCQttl879/Gdd7A==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.62_1781070757045_0.16614507063072903","host":"s3://npm-registry-packages-npm-production"}},"0.14.63":{"name":"owlcoda","version":"0.14.63","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.63","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"17733b3747c4ce9f05b60562b0def84d41a09f83","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.63.tgz","fileCount":1728,"integrity":"sha512-wG+2gXN579Yxwe2eMqZ9f/ynDEhzHUzuQpRdDyQAvn+pu+LbLgKubNdmN5bilpXe4ffxAJcjJY+5LOPUzxEtqw==","signatures":[{"sig":"MEQCIECLIrvGx6/e3KTPIXlgwVuijfb1X0lyX0ZIZFFxXYKYAiAXbbH2PP8dP6VF31qNQfaIYbQan2DkHTCJx2ujU/uRPw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9543693},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.63.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.63/owlcoda-0.14.63.tgz","_integrity":"sha512-wG+2gXN579Yxwe2eMqZ9f/ynDEhzHUzuQpRdDyQAvn+pu+LbLgKubNdmN5bilpXe4ffxAJcjJY+5LOPUzxEtqw==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.63_1781074172884_0.8354462671288971","host":"s3://npm-registry-packages-npm-production"}},"0.14.64":{"name":"owlcoda","version":"0.14.64","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"Apache-2.0","_id":"owlcoda@0.14.64","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"54d2cc581ef4b6346afa104f0889f598fb1f4d78","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.14.64.tgz","fileCount":1728,"integrity":"sha512-QyCKYhoTg5Svr+UGRBopQREpm7qp0jwrlLJwEkpib2Z1TUsTRV1nnx+05zvt6RPz202D+GqYOdcN+1V1i58gvw==","signatures":[{"sig":"MEUCIQDUMCKZ4xyn/hDYs3qdCpo1YcL9nIaK5NfNWWDape2E3gIgZJMnjJ6oTzBRfuA0bKfP/M7Rh12Oz5nDif6U+6n0/Is=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9548170},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.14.64.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-0.14.64/owlcoda-0.14.64.tgz","_integrity":"sha512-QyCKYhoTg5Svr+UGRBopQREpm7qp0jwrlLJwEkpib2Z1TUsTRV1nnx+05zvt6RPz202D+GqYOdcN+1V1i58gvw==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.14.64_1781079539791_0.6777200096060643","host":"s3://npm-registry-packages-npm-production"}},"0.15.2":{"name":"owlcoda","version":"0.15.2","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.2","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"bb64c7dab0159db3fa6dccc6fc00368afcfbe501","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.2.tgz","fileCount":1734,"integrity":"sha512-XhluaHfuQ1LaszR1VSsZQUQ/8eAq4sy+AgnTed0Sp3xbiKJbczSAfvtZDQM1q6lWbvL3NsbTNidH18q8SoX/WQ==","signatures":[{"sig":"MEYCIQDSeDKwDK1Ls952tZ/LroKT23Wwc/1Jo98xbkDUqpY8kwIhALKyGuVbVz9q901b4t5aFSK4/8OWGp+/xjcFbs4Ue1K1","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9518761},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"404999adeaa58acfce999fb56e7ded61841f928e","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.2_1781193809564_0.5667788678575774","host":"s3://npm-registry-packages-npm-production"}},"0.15.3":{"name":"owlcoda","version":"0.15.3","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.3","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"71ecfec04d37b007b96c534bfb601f25fcd7cd85","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.3.tgz","fileCount":1734,"integrity":"sha512-nmz0dvvQedYcwalTo+K2EABdUxmtUiKprIm99P/uY0rNLJ0INK3QRxnai+kgvfCoNnkSwQqidrn+e22/pfHgBA==","signatures":[{"sig":"MEYCIQDFOemA5WHHHBJYaWiEWaBtCwC2C1UuqMMU/GZzRcVIbQIhAN/cvkLiT1+ZBnOaV2ZrLZW+Ma7sc6HqKfBltdIBN9CN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9528454},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"400e83846c22eb5367c148676572286ac3992a5b","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.3_1781260517784_0.9696005081602119","host":"s3://npm-registry-packages-npm-production"}},"0.15.4":{"name":"owlcoda","version":"0.15.4","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.4","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"6f2d1f1b751b9bd6f5c48a6f3ce2f47c19034cd7","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.4.tgz","fileCount":1734,"integrity":"sha512-69MlK86UO+1mc5jWcxQJg9tz8QcX0O3Y1iRT6kFe6sbGgRvaNMIhySiguocdggU+0+a8rqn4WIxwpx8oCa2EVQ==","signatures":[{"sig":"MEYCIQCa97iCW98zq+pE7McD/Fw9zV1hqb2/Z9DhIccpeNrJ0QIhAJ1A4YjPfmypZxVjYmb4V78dyb1KqsrAy4hLH//vzdn0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9550670},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"22ba9ab5243739a496797f8dc2febe138569b077","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.4_1781358060592_0.12770821320882142","host":"s3://npm-registry-packages-npm-production"}},"0.15.5":{"name":"owlcoda","version":"0.15.5","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.5","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"5b6958d5ad3bdb67f8069fc5fa8a0aaf45f7d2d8","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.5.tgz","fileCount":1734,"integrity":"sha512-34AXaZlKoWy4IAKL2GjEWEtzXGVMYklmwn3jbO9aGBWNhcgwX+Iiv+Z2N+0MjN+RJTG9ZKEHGpkj1s+XBHyKYA==","signatures":[{"sig":"MEUCIQCzfKOWMr6d/v0HQS8Sh9HvEXEXMYjpIFCuiKRYWrxVqQIgM4pcKI+1AWSVCgrP0yPe0Sy/vai4Kb+ewig9Pn8E12I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9564334},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"2fb0162ce3e0c73cbc316eb3d485678162e308d1","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.5_1781421156068_0.3229940296141167","host":"s3://npm-registry-packages-npm-production"}},"0.15.6":{"name":"owlcoda","version":"0.15.6","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.6","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"e184a15f50258eacfc96ae4c579a07d7f4cabc13","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.6.tgz","fileCount":1734,"integrity":"sha512-73e5JxjiwAMmLRNaOdygXluKdLJRTvQpZkpAZrnZajIJaom4/4+4FHoUww6rGZu0YCtvAcIqiBtKgbZXDLD31A==","signatures":[{"sig":"MEQCIBe2MGCD7wqFb10ktoAlYYOQMx+UnzwGG944urIj8wMrAiA2spkchabsAGoLm6x00c2Va+cHhX0llQ8so2ivdueJvg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9574696},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"5d6906a200a076aa0c71056418813bc9e7c84638","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.6_1781450781573_0.4036966730440321","host":"s3://npm-registry-packages-npm-production"}},"0.15.7":{"name":"owlcoda","version":"0.15.7","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.7","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"c0e77be5456574397b578b04aacb91555afcf7c0","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.7.tgz","fileCount":1728,"integrity":"sha512-adv/ErFUuYnUQkF3VY7bYDDpNQfuyh3U1IpNPg9dyk/medcWM6Yl1F+KhKOzK3viNcdRxLmRJyz3zL6wDqLU6g==","signatures":[{"sig":"MEUCIQCY4IdFZ6N2XDltW26HtIK0Mg3hqjfRPnNC6jqFZZFoLQIgS9OH1AqVIZ+ojeRKzqtlGN0ZTtI0hIN5MSMFPIOfj/g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":9562786},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"5c4e65107ab23c48632d81bc08f1a8471670ec9c","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.7_1781482586762_0.29787067100382614","host":"s3://npm-registry-packages-npm-production"}},"0.15.8":{"name":"owlcoda","version":"0.15.8","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.8","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"9272f8c856a39fb5819d2a5413153680b51a629c","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.8.tgz","fileCount":1731,"integrity":"sha512-9uFfNzSt2rEy6L2HhiUa3nhDO5ePY22LQAc5j1xVrsJv2uThiT6zP7f6m00xi+4f3WNBHgdvnWtrwKekWMqCuQ==","signatures":[{"sig":"MEUCIQDKXnI8YWnPLkK9OLUBW11xyw1ynoZM08D7Q3e47ThmogIgPMhf8nAg8M/knC8tPV8fLDMGYwVdzLufkEr/TnGJCrQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10059952},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.15.8.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/Users/yeemio/AI/gitrep/owlcoda-release-candidate-20260618/owlcoda-0.15.8.tgz","_integrity":"sha512-9uFfNzSt2rEy6L2HhiUa3nhDO5ePY22LQAc5j1xVrsJv2uThiT6zP7f6m00xi+4f3WNBHgdvnWtrwKekWMqCuQ==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vitest":"^4.1.9","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.104.2"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.8_1781764923568_0.5531527423970017","host":"s3://npm-registry-packages-npm-production"}},"0.15.9":{"name":"owlcoda","version":"0.15.9","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.9","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"c1e65c679f4138d03c4157b5ba4cbf5edc8766c8","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.9.tgz","fileCount":1740,"integrity":"sha512-RRSGIHWlZ8O/vDG3nmy58Y3/pGFWBQOQPLa4s+MUVNeA4GrBscbsZHMhY4d7qR1OnaDYUMnbkr4K3zquKAR5hA==","signatures":[{"sig":"MEUCIBdBrMHze6A8UpZZ6Dnbqqtbj1X5z6aQdD12iPcEns68AiEAti/nu0X7zEVkAxv8w7Hqa9csd+FEf9w9vdifc9VZVbY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10257738},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.15.9.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-release-fresh-20260621/owlcoda-0.15.9.tgz","_integrity":"sha512-RRSGIHWlZ8O/vDG3nmy58Y3/pGFWBQOQPLa4s+MUVNeA4GrBscbsZHMhY4d7qR1OnaDYUMnbkr4K3zquKAR5hA==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vitest":"^4.1.9","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.104.2"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.9_1782026208643_0.4858745889465985","host":"s3://npm-registry-packages-npm-production"}},"0.15.10":{"name":"owlcoda","version":"0.15.10","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.10","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"c0d38cab7946ca6f612c05cb4a21c3edd05fcc14","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.10.tgz","fileCount":1766,"integrity":"sha512-eGfUmVgIM4BORlybAn5CM9ZA2GstldliYQhg9Q6pcrO6lF9y21zJ5O+Sx6fH7eTdGdfNBRnfbWUMdZ7miKN7dA==","signatures":[{"sig":"MEUCIHIEE9PSjn+navSaTZ5iCsXpe1dttSeKF6lrThXewUADAiEAhYe4R9DFPJH31CiHZDfeaj0+nxs0mt9zTlJN+QEZy1k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10367039},"main":"dist/server.js","type":"module","_from":"file:/private/tmp/owlcoda-pack-audit-20260622/owlcoda-0.15.10.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:prepublish-gate","release:readiness":"npx tsx scripts/release-readiness.ts","release:install-smoke":"npx tsx scripts/release-install-smoke.ts","release:package-audit":"npx tsx scripts/release-package-audit.ts","release:decision-packet":"npx tsx scripts/release-decision-packet.ts","release:prepublish-gate":"npm run build && npm run release:smoke && rm -rf .tmp/release-prepublish-gate && mkdir -p .tmp/release-prepublish-gate && npm pack --ignore-scripts --pack-destination .tmp/release-prepublish-gate --json > .tmp/release-prepublish-gate/pack.json && npm run release:package-audit -- --tarball=.tmp/release-prepublish-gate/owlcoda-$npm_package_version.tgz && npm run release:install-smoke -- --tarball=.tmp/release-prepublish-gate/owlcoda-$npm_package_version.tgz","release:surface-readiness":"npx tsx scripts/release-surface-readiness.ts"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-pack-audit-20260622/owlcoda-0.15.10.tgz","_integrity":"sha512-eGfUmVgIM4BORlybAn5CM9ZA2GstldliYQhg9Q6pcrO6lF9y21zJ5O+Sx6fH7eTdGdfNBRnfbWUMdZ7miKN7dA==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vitest":"^4.1.9","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.104.2"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.10_1782110401410_0.33548432473017775","host":"s3://npm-registry-packages-npm-production"}},"0.15.11":{"name":"owlcoda","version":"0.15.11","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.11","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"985fe93801ef5be709c60dfb0a53dece900ff727","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.11.tgz","fileCount":1754,"integrity":"sha512-NSHY11OL3T2c6QFcf7abkgBl6ifqI33PaPeMt87iudpdOFs+bDQVeEBpf8u2/5/MnBsI50cgbOUnugHtY73vnw==","signatures":[{"sig":"MEYCIQC0ye1cJnN40AwV8BrAeYsJCJxxACvH9vnLDYD/ySYkRgIhANAiRHpGvw1qqy+pyZo2ubb7scnFswffIHOGBqK+zXc7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10309371},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.15.11.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-publish-0.15.11-07Rwus/owlcoda-0.15.11.tgz","_integrity":"sha512-NSHY11OL3T2c6QFcf7abkgBl6ifqI33PaPeMt87iudpdOFs+bDQVeEBpf8u2/5/MnBsI50cgbOUnugHtY73vnw==","deprecated":"Superseded by owlcoda@0.15.12; use 0.15.12 or later.","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.11_1782206446224_0.21343652372387112","host":"s3://npm-registry-packages-npm-production"}},"0.15.12":{"name":"owlcoda","version":"0.15.12","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.12","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"659a8257682e8f5bfc86695d31d03f4503aee6e2","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.12.tgz","fileCount":1775,"integrity":"sha512-yhyQBCvCygClfhxq36S2dw6rZm6J9cVCTZQ+yI8mDmpM2w7/vAB9Rp9SbRRDzU/jWh6zosfPC4alC2iNBgigAw==","signatures":[{"sig":"MEQCIDmv+3gOfO9v7/FcrifwsWutdA8uB76eAaDXQZXbooeyAiAUN4igVhsIbaONviFST68Nk793dYJnUSu1Ja9tQ5Zwzw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10105972},"main":"dist/server.js","type":"module","_from":"file:/private/tmp/owlcoda-pack-0.15.12/owlcoda-0.15.12.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:prepublish-gate","release:readiness":"npx tsx scripts/release-readiness.ts","release:install-smoke":"npx tsx scripts/release-install-smoke.ts","release:package-audit":"npx tsx scripts/release-package-audit.ts","release:decision-packet":"npx tsx scripts/release-decision-packet.ts","release:prepublish-gate":"npm run build && npm run release:smoke && rm -rf .tmp/release-prepublish-gate && mkdir -p .tmp/release-prepublish-gate && npm pack --ignore-scripts --pack-destination .tmp/release-prepublish-gate --json > .tmp/release-prepublish-gate/pack.json && npm run release:package-audit -- --tarball=.tmp/release-prepublish-gate/owlcoda-$npm_package_version.tgz && npm run release:install-smoke -- --tarball=.tmp/release-prepublish-gate/owlcoda-$npm_package_version.tgz","release:surface-readiness":"npx tsx scripts/release-surface-readiness.ts"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-pack-0.15.12/owlcoda-0.15.12.tgz","_integrity":"sha512-yhyQBCvCygClfhxq36S2dw6rZm6J9cVCTZQ+yI8mDmpM2w7/vAB9Rp9SbRRDzU/jWh6zosfPC4alC2iNBgigAw==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vitest":"^4.1.9","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.104.2"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.12_1782207608459_0.12345591537414435","host":"s3://npm-registry-packages-npm-production"}},"0.15.13":{"name":"owlcoda","version":"0.15.13","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.13","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"0d075fa71e7ed6a71406291ccea6dd1438ef88c6","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.13.tgz","fileCount":1775,"integrity":"sha512-TbmvvRbBOm5CDb3E6BA+Y+oFYB36R4LZSa1WAasL9z6AYrkIjVFL8RuJiEysu8w0fZ2Co7bd6GgR+wDIhM2akw==","signatures":[{"sig":"MEYCIQChgqBIVWVHpWkObNleTd1bvn+a3oPL8tUayj0yevH3eQIhALWb+Pa7lrcaA37Aa2xA7sUcDSVVMB0PeO0U889pv+du","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10121932},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"bfeb128b21387ce21f6d5b950d96da8cb6777438","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:prepublish-gate","release:readiness":"npx tsx scripts/release-readiness.ts","release:install-smoke":"npx tsx scripts/release-install-smoke.ts","release:package-audit":"npx tsx scripts/release-package-audit.ts","release:decision-packet":"npx tsx scripts/release-decision-packet.ts","release:prepublish-gate":"npm run build && npm run release:smoke && rm -rf .tmp/release-prepublish-gate && mkdir -p .tmp/release-prepublish-gate && npm_config_dry_run=false npm pack --ignore-scripts --pack-destination .tmp/release-prepublish-gate --json > .tmp/release-prepublish-gate/pack.json && npm run release:package-audit -- --tarball=.tmp/release-prepublish-gate/owlcoda-$npm_package_version.tgz && npm run release:install-smoke -- --tarball=.tmp/release-prepublish-gate/owlcoda-$npm_package_version.tgz","release:surface-readiness":"npx tsx scripts/release-surface-readiness.ts"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vitest":"^4.1.9","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.104.2"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.13_1782269837828_0.46824563108981665","host":"s3://npm-registry-packages-npm-production"}},"0.15.14":{"name":"owlcoda","version":"0.15.14","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.14","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"dcdfd81b5efdb53d1aa2eee3902cfdb86ea2f3a0","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.14.tgz","fileCount":1775,"integrity":"sha512-1ut0DYonGalc72LbRKyRNtgkYPzzUjOwV5lQ8iFvcrVxIYwKRJvEylV+rLWA/KL6AQyrjsDUCBIDWaWBBoOr4g==","signatures":[{"sig":"MEYCIQC9iB5wtxoItfGlQrULoxH5gvXdNAz/dSHslNb25hn/NAIhANMIDnpOIP3hyU5GgG2037sxAWPmtykNtlrAhsyTQLBL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10125654},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"e7e42a3d962f8b841d4b0d9d01ec7bdfa15bc8ca","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:prepublish-gate","release:readiness":"npx tsx scripts/release-readiness.ts","release:install-smoke":"npx tsx scripts/release-install-smoke.ts","release:package-audit":"npx tsx scripts/release-package-audit.ts","release:decision-packet":"npx tsx scripts/release-decision-packet.ts","release:prepublish-gate":"npm run build && npm run release:smoke && rm -rf .tmp/release-prepublish-gate && mkdir -p .tmp/release-prepublish-gate && npm_config_dry_run=false npm pack --ignore-scripts --pack-destination .tmp/release-prepublish-gate --json > .tmp/release-prepublish-gate/pack.json && npm run release:package-audit -- --tarball=.tmp/release-prepublish-gate/owlcoda-$npm_package_version.tgz && npm run release:install-smoke -- --tarball=.tmp/release-prepublish-gate/owlcoda-$npm_package_version.tgz","release:surface-readiness":"npx tsx scripts/release-surface-readiness.ts"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vitest":"^4.1.9","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.104.2"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.14_1782466921280_0.4310382824082488","host":"s3://npm-registry-packages-npm-production"}},"0.15.15":{"name":"owlcoda","version":"0.15.15","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.15","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"b9d77185e91d4a57095f732b4067a1e59dcf4764","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.15.tgz","fileCount":1779,"integrity":"sha512-itCpLOE8bMxTzX2mcixHEzKEU4e02r6bQtJLeMHyOFt+vY3q35kiSGcJm6Z2Rn3y1z24L/fBESsGVVuZdLnxyg==","signatures":[{"sig":"MEUCIQCFSB8I8B42RrfHFOUrDf6mETPZ2fcs9Bqft05POJs5HgIgE/LdU1lAKelFOZ7wPuYzeGBubKt0dN5qs00AQkzaApg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10161194},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"9d0bc075a8b9895e92d15dfd58a48aaa84768a0e","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:prepublish-gate","release:readiness":"npx tsx scripts/release-readiness.ts","release:install-smoke":"npx tsx scripts/release-install-smoke.ts","release:package-audit":"npx tsx scripts/release-package-audit.ts","release:decision-packet":"npx tsx scripts/release-decision-packet.ts","release:prepublish-gate":"npm run build && npm run release:smoke && rm -rf .tmp/release-prepublish-gate && mkdir -p .tmp/release-prepublish-gate && npm_config_dry_run=false npm pack --ignore-scripts --pack-destination .tmp/release-prepublish-gate --json > .tmp/release-prepublish-gate/pack.json && npm run release:package-audit -- --tarball=.tmp/release-prepublish-gate/owlcoda-$npm_package_version.tgz && npm run release:install-smoke -- --tarball=.tmp/release-prepublish-gate/owlcoda-$npm_package_version.tgz","release:surface-readiness":"npx tsx scripts/release-surface-readiness.ts","release:structured-output-smoke":"npx tsx scripts/release-structured-output-smoke.ts"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.22.4","vitest":"^4.1.9","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.104.2"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.15_1782483485097_0.1121847031199894","host":"s3://npm-registry-packages-npm-production"}},"0.15.16":{"name":"owlcoda","version":"0.15.16","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.16","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"a73d713e981888c63c6d946dd9ddfc582bd7bae1","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.16.tgz","fileCount":1840,"integrity":"sha512-etqm37KN/dWQudepfMIw4AwsQA2Qiiylr+5hz51EFXipGwPU7rSwTrzaYm7wRs56XPjAuKlDFDxdqIRtsTGJ4A==","signatures":[{"sig":"MEUCIFcAQ3Re51hWsfV1B2gOUXvMdUiqI7qD8g5StLYTwj/TAiEA6OaT3W+dpb5db6e8AkckyePnvioX50WWLD6w6gsDyW8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10981810},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"b9dd6f51a52e92df5396498a49859bace1eddbfd","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.16_1782527258043_0.8709210109706842","host":"s3://npm-registry-packages-npm-production"}},"0.15.17":{"name":"owlcoda","version":"0.15.17","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.17","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"3a56106a20dbcaebb4a7532153eb9f3a92d8d622","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.17.tgz","fileCount":1844,"integrity":"sha512-Jb86/pLyzoerzg8nLEFte4G2pvx2uklSQF7oNEbH8VyqpFawuVWlnpWH6Q5aa3J5fh9lzJ/pHjeqKl3exotpPQ==","signatures":[{"sig":"MEYCIQCxxUuZf8BCOpONLjjQDmot+Z3SD4foMbbf5EboGq/koAIhAJZtafLwpe5Y/RzUKcLezP3ZoqBsJ5C4UIgqNy2aQMuA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11036999},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"aba246f9c2775b6681a45dfa360abed0b3d043fa","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.17_1782543264609_0.027880320497943867","host":"s3://npm-registry-packages-npm-production"}},"0.15.18":{"name":"owlcoda","version":"0.15.18","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.18","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"06d48f91119bd5e768bd3331e9aab448eb810858","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.18.tgz","fileCount":1846,"integrity":"sha512-xDO8GgEuZ1ZpUFZ+43hqQk+jKxTvDbz/qngIgKLOtTVt4rbY/wVM944+YMULKW9FNhjWG9GZ+jP+U8T8DV/6yQ==","signatures":[{"sig":"MEUCIQDiqhOUcEbLRdYs3JSCtrd5aSzDj5qzzDeNlrvd6tFp5wIgIzBeKLzPYry4xXki7vOgGbX5xuMSBOvwhuIN7d8jlT0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11060385},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"0ccd1473002b83fe6043f515282deafad5825015","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.18_1782567636548_0.5244417893900133","host":"s3://npm-registry-packages-npm-production"}},"0.15.19":{"name":"owlcoda","version":"0.15.19","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.19","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"f7ea23234f2502e3d834f1ba65e6696936027afe","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.19.tgz","fileCount":1846,"integrity":"sha512-W6EiNBw3dEhAJGWf9VpYMqQjrc7ZLcGMnkwCVl5hp5+ur0fiti26BcRgMRFoqYl7OcGpeVqaA0RP5CLzJ8kYOA==","signatures":[{"sig":"MEQCIFxbcm6kb9blr4u/VcrHh+x/yDzKcTMUdsEonL1G8ck/AiB2aAFeGSoQ4Ob1EcBv3aMfkcF5D++DvkO7PHG1dZ0MGg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10705516},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"d9431b6508f09340a95ff5883b4469f11573f68c","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.19_1782978267659_0.4360282768950996","host":"s3://npm-registry-packages-npm-production"}},"0.15.20":{"name":"owlcoda","version":"0.15.20","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.20","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"ff8996f885f2bb787aae8d78bba09e516bdf15e3","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.20.tgz","fileCount":1846,"integrity":"sha512-2A/kZitZxwMwse0FE57zsk8A01yBZPlUJcIhx47DF5nEvoVN/HNuqYa6ImV9LU8uzDI+z2fc3/w6dS2EgolQmQ==","signatures":[{"sig":"MEYCIQCVOpa+PprqRlG+/fBcsGHVcrA7Opo6xHRmkt+ac4SNVAIhALnRQx0fk6GPufE+02EDq6BNwtZNmbBGPWRTOHx8Kb/z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10759025},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"2def009a86da851e71456a5044fb356c043577af","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.20_1783134057327_0.45742564106365613","host":"s3://npm-registry-packages-npm-production"}},"0.15.21":{"name":"owlcoda","version":"0.15.21","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.21","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"5908974242a672b44546db6aa0b38f23f1e852ac","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.21.tgz","fileCount":1848,"integrity":"sha512-vWpKrJKKvvbm8P/RrCBRqYpZGGqPMKFJNvnxtC+1k1Ryl4zGZGFyGRPcdSgezvWCfnjgjtM6xMU4JIA3ARZmfg==","signatures":[{"sig":"MEUCIQCl+LxntZHK4r4+uJ+aJsiQQqZlai/iCO8CBNLLlvwWCAIgf0GFRH52YpAG63n0An8YrS3XFs9co4V3WJigU4VM14E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10780133},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"16667b1efa8116840de32bf391e6eb0993e947ea","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.21_1783142497025_0.9532395481748155","host":"s3://npm-registry-packages-npm-production"}},"0.15.22":{"name":"owlcoda","version":"0.15.22","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.22","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"27877b2ed70afc7abc7ced8f08f994aaf3e7f5ed","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.22.tgz","fileCount":1850,"integrity":"sha512-oc7PhbfWezyuKKigauG3Vk+YtdssZlrzGO264PqBG0hUfh58PrCJsncT5hy85GOGATX5qCxeIaGuszSlq6PImw==","signatures":[{"sig":"MEUCIQDABTco0qNC9B13rvDKVaxyca1KyzfEYhuCgEXA76k1dQIgAPBE3KbhoV+z9FD4nmNGLh/D/fOo4B+nMKiRRQsv1Ks=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10807055},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"1efd2f0b0b11a83b67eb97c8922dd7d983d1cacd","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.22_1783149457986_0.22607573181111262","host":"s3://npm-registry-packages-npm-production"}},"0.15.23":{"name":"owlcoda","version":"0.15.23","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.23","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"44166ba2d1a806b554518b8b89265f2e116c2d86","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.23.tgz","fileCount":1850,"integrity":"sha512-pETHQm1Jp5j3bZUZltWxTPnqWDDRqs3p1nemoLQ7wvT0irXa4mD04RBnuxfRe6Vj894HOPb0qQNoblLEBITC3A==","signatures":[{"sig":"MEQCIB9EYL5YZbxuyIz+LoOHy5FIkxhxSx0f5jaI+Z6cyiuCAiASfOinC4g/LMOCmDq9i26vCC4QN/VOlqzLQUSPTD9bkg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10818267},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"9a7abdeef55006d7effb1dff826947fc38dcb481","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.23_1783152150008_0.4776470778693884","host":"s3://npm-registry-packages-npm-production"}},"0.15.24":{"name":"owlcoda","version":"0.15.24","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.24","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"3e0e956be8dd12733dc6c252f4729463910b2798","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.24.tgz","fileCount":1850,"integrity":"sha512-vAb0zba7PEDf1hZmyyBZFb5J/r7F3AkDv9nua7W1T4t+/m6CgZR/yCjnL/slAuc+pTdl8AzMlfSsp98W9BFdTA==","signatures":[{"sig":"MEYCIQCEOkLa+Kk4MOIunhCMqfC3KlM0cr/nGGyEMYe7jIP8GgIhAPECAWo86I7TunuCVRmm77nBvpvJIF4i/Cxj83U7tTPm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10831152},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"4b07d866489a4b10006bd0b4445e2e339470b9c0","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.24_1783390385168_0.7367323788103199","host":"s3://npm-registry-packages-npm-production"}},"0.15.25":{"name":"owlcoda","version":"0.15.25","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.25","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"870f20579570000f0e48fa194bf9f8fe8b58a797","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.25.tgz","fileCount":1851,"integrity":"sha512-836DxJOE5u0y6dk0rEP3EnP+94HwrYdDbahq5R4oD40V6HA1RkcyYvt/WHzziGtj58YzCLksKM/bVQ1JrLU8aw==","signatures":[{"sig":"MEQCIHEAE4fdU3kfDSkxGRTGwjP4lQQAJ9U0rGVsLoyBPyRBAiAXNF99WaOfhGF3KAal2NAARAQkzd4TUJVLrb3QHnM2NQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10855911},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"e0a75203fb08ad7eb58e5c2d97098eb3ffd17c4d","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.25_1783405706715_0.2891260838081342","host":"s3://npm-registry-packages-npm-production"}},"0.15.26":{"name":"owlcoda","version":"0.15.26","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.26","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"611c1fff21db4bc2dbf298b8d6024b567c70de99","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.26.tgz","fileCount":1863,"integrity":"sha512-byoZnhrRad3FnwFE1VLZDsLC8Rb1T5V9+epJI5lXKDTp1RG5dpBxEM6FcIuKZXQQdAKQ//6OYrPDgnXXLeoNGg==","signatures":[{"sig":"MEUCIQCDHwGd4imnfJV+rkQLw9IKmFe7N9fS/KW71Dm5lG2atQIgc3dxKUYW2bofg/PtCdMohrBrBP1WGrJbWZNSLuUJMvg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10906297},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"04e909c81dad2067c29226feed09d2499040679c","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.26_1783663340553_0.6986752491974171","host":"s3://npm-registry-packages-npm-production"}},"0.15.27":{"name":"owlcoda","version":"0.15.27","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.27","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"2cc2d238c42780e3546aace26eee3061a1c3e5bf","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.27.tgz","fileCount":1863,"integrity":"sha512-8jOWvqZcX1bcAvUYIBuOMVxd4XbbewDGs5Gc+4qFQxt9dKMc4GXXxkWdfC9nl+1FqpkDz3och3v5NYT0pZuhgg==","signatures":[{"sig":"MEQCIDADATQyCWLH+4EVerkLvX4yPYcdgB39L2B0bDmDtcswAiBnvT3dseDnaGV00Pv0fN2cfMUHD1BeyI0c163Yv6mSRA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10926365},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.15.27.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/Users/yeemio/AI/gitrep/owlcoda-publish-01527-20260710/owlcoda-0.15.27.tgz","_integrity":"sha512-8jOWvqZcX1bcAvUYIBuOMVxd4XbbewDGs5Gc+4qFQxt9dKMc4GXXxkWdfC9nl+1FqpkDz3och3v5NYT0pZuhgg==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.27_1783678357104_0.3905473369945984","host":"s3://npm-registry-packages-npm-production"}},"0.15.28":{"name":"owlcoda","version":"0.15.28","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.28","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"b2e3aeb7563a40791025f22ef1540105628de942","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.28.tgz","fileCount":1865,"integrity":"sha512-5vy64L9ReEHFzmHvlF3ERvKu0uTPvpELvUmBOPxsoFplAkRMzzO8Pt+J2+bXJ0d8yYojbySI9sd0GgC7wJ44ng==","signatures":[{"sig":"MEUCIQD9mxYi7VypB9MK+4Qj4EEv66pQ5IJ/+1mkiqpnPfHdXQIgG4k55ZqvnKutkM4jbZRvZDXw+Jt1Ap/IlYbH1IT9Gqk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10976426},"main":"dist/server.js","type":"module","_from":"file:owlcoda-0.15.28.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/Users/yeemio/AI/gitrep/owlcoda-release-01528-publish-20260710/owlcoda-0.15.28.tgz","_integrity":"sha512-5vy64L9ReEHFzmHvlF3ERvKu0uTPvpELvUmBOPxsoFplAkRMzzO8Pt+J2+bXJ0d8yYojbySI9sd0GgC7wJ44ng==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.28_1783684097590_0.8019113868527461","host":"s3://npm-registry-packages-npm-production"}},"0.15.29":{"name":"owlcoda","version":"0.15.29","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.29","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"ae2281c9e47bce5f1df2651b78fe0c0e19d4db87","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.29.tgz","fileCount":1867,"integrity":"sha512-8VdfAPPbOB+kwycbJ+H+e0fqLRATFJ+A9u074yswhfAeAlh/d7579zAkpuW/gracrhmqhNld4scWweJZunr21A==","signatures":[{"sig":"MEUCIGNjwEW7sOB0IGnSa6tc6yVf0S32wou7vVXrpXgjEFPbAiEA3cJkBEBQp1xQfc7qRHYl6kftX1AJwZx0wrNhiyK6fvY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11004144},"main":"dist/server.js","type":"module","_from":"file:/tmp/owlcoda-01529-pack-r3/owlcoda-0.15.29.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/tmp/owlcoda-01529-pack-r3/owlcoda-0.15.29.tgz","_integrity":"sha512-8VdfAPPbOB+kwycbJ+H+e0fqLRATFJ+A9u074yswhfAeAlh/d7579zAkpuW/gracrhmqhNld4scWweJZunr21A==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.29_1783741492898_0.7553334478223488","host":"s3://npm-registry-packages-npm-production"}},"0.15.30":{"name":"owlcoda","version":"0.15.30","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.30","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"dc1dbcbd093160134e68afa97005ae97dfa6a672","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.30.tgz","fileCount":1938,"integrity":"sha512-fdwOR+mTmHSfQ6UjePI4XH8/8EcPExBYlwDXiUp1ON8C4cic4tJUp8i6kJUjai6o7cc7hrRna3J/qyx5HzCcLw==","signatures":[{"sig":"MEUCIQDl1nEozMhEBaQy9B+zyq8zhw+Xc4+ymGvmfNZsS3cGXQIgBS4CH04BwpszrvdRGhw8yW0xh13FPGFji449Q1Up+t8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11539264},"main":"dist/server.js","type":"module","_from":"file:/tmp/owlcoda-01530-pack-20260719/owlcoda-0.15.30.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke","desktop:osui:test":"node --test desktop/osui/tests/*.test.mjs","desktop:osui:build":"npm --prefix desktop/osui run build","desktop:osui:typecheck":"npm --prefix desktop/osui run typecheck","app-server:contract:check":"npx tsx scripts/generate-app-server-contract.ts --check","desktop:osui:vendor-audit":"node desktop/osui/scripts/vendor-provenance-audit.mjs","app-server:contract:generate":"npx tsx scripts/generate-app-server-contract.ts"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/tmp/owlcoda-01530-pack-20260719/owlcoda-0.15.30.tgz","_integrity":"sha512-fdwOR+mTmHSfQ6UjePI4XH8/8EcPExBYlwDXiUp1ON8C4cic4tJUp8i6kJUjai6o7cc7hrRna3J/qyx5HzCcLw==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"10.8.2","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"20.20.1","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.0.0","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.81.0"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.30_1784461576223_0.8426054582253415","host":"s3://npm-registry-packages-npm-production"}},"0.15.31":{"name":"owlcoda","version":"0.15.31","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.31","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"94ecb4c64370df2a36bb451985b793b39b9945e2","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.31.tgz","fileCount":1938,"integrity":"sha512-HI+swTFoSJUO4kzcwfKzriAvKqx+WSM/vXPMAh69WBnKgDuew2b4eRWv6uasuq93BPIu1UWOOorNVUeYC33FTA==","signatures":[{"sig":"MEUCIQD7CXkclXoGJgPXDUbtC6BJP6Glvg5GISYYHXxWH3GVggIgduUn1N+UI0jt0l+HGVq1V2+y43jyMfMAAtHeO2VLkfQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11570140},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"gitHead":"a8be08e0be3a48959e305ba393610ea15b3ffa0e","scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke","desktop:osui:test":"node --test desktop/osui/tests/*.test.mjs","desktop:osui:build":"npm --prefix desktop/osui run build","desktop:osui:typecheck":"npm --prefix desktop/osui run typecheck","app-server:contract:check":"npx tsx scripts/generate-app-server-contract.ts --check","desktop:osui:vendor-audit":"node desktop/osui/scripts/vendor-provenance-audit.mjs","app-server:contract:generate":"npx tsx scripts/generate-app-server-contract.ts"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"overrides":{"vite":"7.3.6","esbuild":"0.28.1","postcss":"8.5.23"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"12.0.1","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.2.7","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.91.1"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.31_1785208088480_0.39461973188009214","host":"s3://npm-registry-packages-npm-production"}},"0.15.32":{"name":"owlcoda","version":"0.15.32","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.15.32","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"cf0d6cf6bf8814c0ec3ba1951da1662ff5399457","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.15.32.tgz","fileCount":2064,"integrity":"sha512-nAGSofb+LPoF4lhIhj8FMTGIFBS4vPWSsVagPbaBZv8LwjLF2pb6XHVa6PD5tsOBd9Hmit/7jYN2O135ciC6TQ==","signatures":[{"sig":"MEQCIAIe/lX3ApFMdNAfq2G//bATzvox9oetbMcGeybYL3/hAiBXEfb1r/Hpy+SrRn/6y1uSLSUzMDY3I1X/IJ6D/0MASQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12733477},"main":"dist/server.js","type":"module","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke","desktop:osui:test":"node --test desktop/osui/tests/*.test.mjs","desktop:osui:build":"npm --prefix desktop/osui run build","desktop:osui:typecheck":"npm --prefix desktop/osui run typecheck","app-server:contract:check":"npx tsx scripts/generate-app-server-contract.ts --check","desktop:osui:vendor-audit":"node desktop/osui/scripts/vendor-provenance-audit.mjs","app-server:contract:generate":"npx tsx scripts/generate-app-server-contract.ts"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"overrides":{"vite":"7.3.6","esbuild":"0.28.1","postcss":"8.5.23"},"repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"12.0.1","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.2.7","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.91.1"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.15.32_1785617640523_0.6069561674246082","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"owlcoda","version":"0.16.0","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.16.0","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"04da315f218f4c95dc057cdd882fa0a8ad64a2e8","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.16.0.tgz","fileCount":2093,"integrity":"sha512-2FoMt1x3+G4hlzMRTJYl4HF1Mi570+Q29fv8zDlkdXyZxygwQ5UvPgpRFMWZ+mo/7OhgbMEN3KqtkRhUcqOP1A==","signatures":[{"sig":"MEUCIQCPvoRekwV2dSOGDvrV8YQwjbf0Etvxs2cViLeWRHyPQAIgfqWV47Q8F9dgmz6Yz4PsWiMfZSyVtyul/3sGoya+XF8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13104349},"main":"dist/server.js","type":"module","_from":"file:/private/tmp/owlcoda-0160-0180-release.p3bV8L/artifacts/owlcoda-0.16.0.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke","desktop:osui:test":"node --test desktop/osui/tests/*.test.mjs","desktop:osui:build":"npm --prefix desktop/osui run build","desktop:osui:typecheck":"npm --prefix desktop/osui run typecheck","app-server:contract:check":"npx tsx scripts/generate-app-server-contract.ts --check","desktop:osui:vendor-audit":"node desktop/osui/scripts/vendor-provenance-audit.mjs","app-server:contract:generate":"npx tsx scripts/generate-app-server-contract.ts"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/private/tmp/owlcoda-0160-0180-release.p3bV8L/artifacts/owlcoda-0.16.0.tgz","overrides":{"vite":"7.3.6","esbuild":"0.28.1","postcss":"8.5.23"},"_integrity":"sha512-2FoMt1x3+G4hlzMRTJYl4HF1Mi570+Q29fv8zDlkdXyZxygwQ5UvPgpRFMWZ+mo/7OhgbMEN3KqtkRhUcqOP1A==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"12.0.1","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","owlrunkit":"0.17.2","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.2.7","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.91.1"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.16.0_1786329321455_0.32013600561792366","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"owlcoda","version":"0.17.0","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","_id":"owlcoda@0.17.0","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"homepage":"https://github.com/yeemio/owlcoda#readme","bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"bin":{"owlcoda":"dist/cli.js"},"dist":{"shasum":"a6a833e515bd2b6ac3b887b376dffb4ca61e8412","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.17.0.tgz","fileCount":2099,"integrity":"sha512-4RO4iK3S298DDarjtYpW38NoywtinLrUTTewuj/SK1pPLL0pqbpX4REVVVVLmXY1IwhpGth+TI/dmRcEh6vJBQ==","signatures":[{"sig":"MEUCIEjD6pNPJ9CX+LABJbOmsvwO2DC1dEifiUAwxvqwcE/8AiEA9Zli+H1T+dx6umEBdgJZaTytOax8cAUuFuvF8dB/RCo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13162485},"main":"dist/server.js","type":"module","_from":"file:/tmp/owlcoda-0170-pack.dkUueI/owlcoda-0.17.0.tgz","types":"./dist/server.d.ts","engines":{"node":">=20.19.0"},"exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"scripts":{"dev":"node --import tsx src/cli.ts","test":"vitest run","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","smoke":"bash scripts/smoke-test.sh","verify":"npx tsx tests/sdk-verify.ts","blackbox":"bash scripts/smoke-longtask-blackbox.sh","prebuild":"rm -rf dist","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","test:watch":"vitest","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","test:serial":"vitest run --maxWorkers=1","release:smoke":"npx tsx scripts/release-smoke.ts","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke","desktop:osui:test":"node --test desktop/osui/tests/*.test.mjs","desktop:osui:build":"npm --prefix desktop/osui run build","desktop:osui:typecheck":"npm --prefix desktop/osui run typecheck","app-server:contract:check":"npx tsx scripts/generate-app-server-contract.ts --check","desktop:osui:vendor-audit":"node desktop/osui/scripts/vendor-provenance-audit.mjs","app-server:contract:generate":"npx tsx scripts/generate-app-server-contract.ts"},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"_resolved":"/tmp/owlcoda-0170-pack.dkUueI/owlcoda-0.17.0.tgz","overrides":{"vite":"7.3.6","esbuild":"0.28.1","postcss":"8.5.23"},"_integrity":"sha512-4RO4iK3S298DDarjtYpW38NoywtinLrUTTewuj/SK1pPLL0pqbpX4REVVVVLmXY1IwhpGth+TI/dmRcEh6vJBQ==","repository":{"url":"git+https://github.com/yeemio/owlcoda.git","type":"git"},"_npmVersion":"12.0.1","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"chalk":"^5.6.2","react":"^19.2.4","semver":"^7.7.4","bidi-js":"^1.0.3","auto-bind":"^5.0.1","cli-boxes":"^4.0.1","lodash-es":"^4.18.1","owlrunkit":"0.18.0","type-fest":"^5.6.0","wrap-ansi":"^10.0.0","slice-ansi":"^8.0.0","strip-ansi":"^7.2.0","emoji-regex":"^10.6.0","signal-exit":"^4.1.0","stack-utils":"^2.0.6","usehooks-ts":"^3.1.1","code-excerpt":"^4.0.0","string-width":"^8.2.0","indent-string":"^5.0.0","react-reconciler":"^0.33.0","supports-hyperlinks":"^4.4.0","get-east-asian-width":"^1.5.0","@alcalzone/ansi-tokenize":"^0.2.5"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","vitest":"^3.2.7","typescript":"^5.7.0","@types/node":"^22.0.0","@types/react":"^19.2.14","@types/lodash-es":"^4.17.12","@anthropic-ai/sdk":"^0.91.1"},"_npmOperationalInternal":{"tmp":"tmp/owlcoda_0.17.0_1786339334062_0.08401682500444219","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"owlcoda","version":"0.18.0","description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","license":"GPL-3.0-or-later","author":{"name":"yeemio","email":"yeemio@gmail.com"},"homepage":"https://github.com/yeemio/owlcoda#readme","repository":{"type":"git","url":"git+https://github.com/yeemio/owlcoda.git"},"bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"type":"module","main":"dist/server.js","exports":{".":"./dist/server.js","./desktop":{"types":"./dist/desktop.d.ts","import":"./dist/desktop.js","default":"./dist/desktop.js"},"./headless":"./dist/headless.js","./package.json":"./package.json"},"bin":{"owlcoda":"dist/cli.js"},"scripts":{"prebuild":"rm -rf dist","build":"tsc && npm --prefix admin ci && npm --prefix admin run build && node scripts/postbuild.mjs","dev":"node --import tsx src/cli.ts","desktop:dev":"node scripts/start-owlcoda-desktop-preview.mjs","desktop:osui:test":"node --test desktop/osui/tests/*.test.mjs","desktop:osui:typecheck":"npm --prefix desktop/osui run typecheck","desktop:osui:build":"npm --prefix desktop/osui run build","desktop:osui:vendor-audit":"node desktop/osui/scripts/vendor-provenance-audit.mjs","app-server:contract:generate":"npx tsx scripts/generate-app-server-contract.ts","app-server:contract:check":"npx tsx scripts/generate-app-server-contract.ts --check","smoke":"bash scripts/smoke-test.sh","release:smoke":"npx tsx scripts/release-smoke.ts","test":"vitest run","test:serial":"vitest run --maxWorkers=1","test:watch":"vitest","verify":"npx tsx tests/sdk-verify.ts","smoke:fast":"OWLCODA_SMOKE_FAST=1 bash scripts/smoke-test.sh","blackbox":"bash scripts/smoke-longtask-blackbox.sh","blackbox:build":"OWLCODA_QA_BUILD=1 bash scripts/smoke-longtask-blackbox.sh","prepublishOnly":"npm run release:smoke"},"devDependencies":{"@anthropic-ai/sdk":"^0.91.1","@types/lodash-es":"^4.17.12","@types/node":"^22.0.0","@types/react":"^19.2.14","tsx":"^4.0.0","typescript":"^5.7.0","vitest":"^3.2.7"},"engines":{"node":">=20.19.0"},"dependencies":{"@alcalzone/ansi-tokenize":"^0.2.5","auto-bind":"^5.0.1","bidi-js":"^1.0.3","chalk":"^5.6.2","cli-boxes":"^4.0.1","code-excerpt":"^4.0.0","emoji-regex":"^10.6.0","get-east-asian-width":"^1.5.0","indent-string":"^5.0.0","lodash-es":"^4.18.1","owlrunkit":"0.18.0","react":"^19.2.4","react-reconciler":"^0.33.0","semver":"^7.7.4","signal-exit":"^4.1.0","slice-ansi":"^8.0.0","stack-utils":"^2.0.6","string-width":"^8.2.0","strip-ansi":"^7.2.0","supports-hyperlinks":"^4.4.0","type-fest":"^5.6.0","usehooks-ts":"^3.1.1","wrap-ansi":"^10.0.0"},"overrides":{"esbuild":"0.28.1","postcss":"8.5.23","vite":"7.3.6"},"types":"./dist/server.d.ts","_id":"owlcoda@0.18.0","_integrity":"sha512-pUBAImmcDAeIc6nrOo5/RRH2NqHPWnCWizQRKTNMThddS/UApnJWiMxAX8CYtOLFoKY2FX0pp/fdzBRcw2PQ0g==","_resolved":"/private/tmp/owlcoda-018-release.AHayYr/owlcoda/owlcoda-0.18.0.tgz","_from":"file:owlcoda-0.18.0.tgz","_nodeVersion":"24.18.0","_npmVersion":"12.0.1","dist":{"integrity":"sha512-pUBAImmcDAeIc6nrOo5/RRH2NqHPWnCWizQRKTNMThddS/UApnJWiMxAX8CYtOLFoKY2FX0pp/fdzBRcw2PQ0g==","shasum":"8f53ba900e3541b843a8b871bf4aa0212fbb2ed7","tarball":"https://registry.npmjs.org/owlcoda/-/owlcoda-0.18.0.tgz","fileCount":2101,"unpackedSize":13194451,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDDxreqmlDzwx4CRpcEG6npf+1vn2dbG+oGdavtmfZLsAiEAwWxfogu3EH6nm28cXTHlCx+G+2pNzOASB6EvCvsP1Dk="}]},"_npmUser":{"name":"yeemio","email":"owlclaw@163.com"},"directories":{},"maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/owlcoda_0.18.0_1786346442865_0.05800717337179084"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-12T03:03:14.337Z","modified":"2026-08-10T07:20:43.278Z","0.14.10":"2026-05-12T03:03:14.764Z","0.14.11":"2026-05-12T03:54:57.974Z","0.14.13":"2026-05-12T05:15:08.893Z","0.14.14":"2026-05-12T05:48:29.699Z","0.14.15":"2026-05-12T12:49:41.438Z","0.14.16":"2026-05-13T03:12:52.346Z","0.14.17":"2026-05-13T08:26:26.893Z","0.14.18":"2026-05-14T07:11:23.823Z","0.14.19":"2026-05-15T02:09:49.205Z","0.14.20":"2026-05-15T08:25:47.312Z","0.14.21":"2026-05-15T10:17:47.344Z","0.14.22":"2026-05-15T14:55:55.094Z","0.14.23":"2026-05-15T15:43:12.309Z","0.14.24":"2026-05-17T02:31:33.177Z","0.14.25":"2026-05-17T04:31:53.291Z","0.14.26":"2026-05-17T07:45:24.519Z","0.14.27":"2026-05-17T13:54:22.980Z","0.14.28":"2026-05-17T17:31:37.852Z","0.14.29":"2026-05-21T08:22:23.388Z","0.14.30":"2026-05-21T09:43:58.258Z","0.14.31":"2026-05-22T18:12:39.659Z","0.14.32":"2026-05-25T15:53:57.972Z","0.14.33":"2026-05-26T09:26:32.717Z","0.14.34":"2026-05-26T09:54:36.343Z","0.14.35":"2026-05-27T07:59:11.148Z","0.14.36":"2026-05-27T09:44:16.590Z","0.14.37":"2026-05-28T02:39:28.493Z","0.14.38":"2026-05-28T04:06:33.138Z","0.14.39":"2026-05-28T06:22:41.436Z","0.14.40":"2026-05-28T07:38:20.537Z","0.14.41":"2026-05-28T13:23:55.718Z","0.14.42":"2026-05-28T15:14:37.443Z","0.14.43":"2026-05-29T01:33:43.358Z","0.14.44":"2026-05-29T02:56:42.018Z","0.14.45":"2026-05-29T06:12:37.485Z","0.14.46":"2026-05-30T07:28:28.687Z","0.14.47":"2026-05-30T13:24:48.120Z","0.14.48":"2026-05-30T14:22:02.318Z","0.14.49":"2026-05-30T17:18:00.414Z","0.14.50":"2026-06-01T05:56:16.043Z","0.14.51":"2026-06-01T07:35:34.144Z","0.14.52":"2026-06-01T09:18:24.920Z","0.14.53":"2026-06-02T06:57:25.045Z","0.14.54":"2026-06-03T03:36:28.546Z","0.14.55":"2026-06-03T09:43:50.626Z","0.14.56":"2026-06-03T15:14:03.233Z","0.14.57":"2026-06-04T07:19:34.622Z","0.14.58":"2026-06-04T14:34:52.438Z","0.14.59":"2026-06-05T15:05:59.796Z","0.14.60":"2026-06-09T01:45:11.675Z","0.14.61":"2026-06-09T08:03:14.961Z","0.14.62":"2026-06-10T05:52:37.333Z","0.14.63":"2026-06-10T06:49:33.152Z","0.14.64":"2026-06-10T08:19:00.017Z","0.15.2":"2026-06-11T16:03:29.838Z","0.15.3":"2026-06-12T10:35:18.064Z","0.15.4":"2026-06-13T13:41:00.839Z","0.15.5":"2026-06-14T07:12:36.345Z","0.15.6":"2026-06-14T15:26:21.800Z","0.15.7":"2026-06-15T00:16:27.096Z","0.15.8":"2026-06-18T06:42:03.793Z","0.15.9":"2026-06-21T07:16:48.936Z","0.15.10":"2026-06-22T06:40:01.643Z","0.15.11":"2026-06-23T09:20:46.513Z","0.15.12":"2026-06-23T09:40:08.783Z","0.15.13":"2026-06-24T02:57:18.079Z","0.15.14":"2026-06-26T09:42:01.509Z","0.15.15":"2026-06-26T14:18:05.453Z","0.15.16":"2026-06-27T02:27:38.232Z","0.15.17":"2026-06-27T06:54:24.806Z","0.15.18":"2026-06-27T13:40:36.868Z","0.15.19":"2026-07-02T07:44:27.889Z","0.15.20":"2026-07-04T03:00:57.562Z","0.15.21":"2026-07-04T05:21:37.234Z","0.15.22":"2026-07-04T07:17:38.252Z","0.15.23":"2026-07-04T08:02:30.451Z","0.15.24":"2026-07-07T02:13:05.407Z","0.15.25":"2026-07-07T06:28:26.982Z","0.15.26":"2026-07-10T06:02:20.812Z","0.15.27":"2026-07-10T10:12:37.392Z","0.15.28":"2026-07-10T11:48:17.871Z","0.15.29":"2026-07-11T03:44:53.129Z","0.15.30":"2026-07-19T11:46:16.490Z","0.15.31":"2026-07-28T03:08:08.958Z","0.15.32":"2026-08-01T20:54:00.810Z","0.16.0":"2026-08-10T02:35:21.713Z","0.17.0":"2026-08-10T05:22:14.329Z","0.18.0":"2026-08-10T07:20:43.139Z"},"bugs":{"url":"https://github.com/yeemio/owlcoda/issues"},"author":{"name":"yeemio","email":"yeemio@gmail.com"},"license":"GPL-3.0-or-later","homepage":"https://github.com/yeemio/owlcoda#readme","keywords":["ai","llm","coding","local-first","ollama","lm-studio","vllm","tui","repl","openai-compatible","workbench"],"repository":{"type":"git","url":"git+https://github.com/yeemio/owlcoda.git"},"description":"OwlCoda — independent local-first AI coding platform with a native REPL, 42+ tools, and local model routing.","maintainers":[{"name":"yeemio","email":"owlclaw@163.com"}],"readme":"# OwlCoda\n\n[English](README.md) · **中文**\n\n> **你的模型、你的工具、你的数据 —— 本地运行，不登录，不上云。**\n\nOwlCoda 是一个独立的、本地优先的 AI 编码工作台：原生终端 REPL，42+ 工具、\n69+ slash 命令、会话持久化、技能学习，以及一层生产级中间件，全部跑在你自己\n的机器上。**你用的每一个模型 —— 云端品牌也好，自己机器上的模型也好 —— 都在\n同一个地方接入、统一治理：浏览器 Admin。**\n\n**隐私默认。** 会话只落在本地 `~/.owlcoda/`。没有 OwlCoda 账号，也没有\nOwlCoda 服务器。训练数据收集默认关闭（opt-in），落盘前先做 PII 脱敏，且永远\n不上传。\n\n## 一个控制面，管所有模型\n\n`owlcoda admin` 打开一个浏览器控制台，你在这里接入任意模型，OwlCoda 负责路由\n过去。云端品牌一键接入 —— Kimi、DeepSeek、GPT、Claude、Gemini、Grok、GLM、\nMiniMax —— endpoint、默认模型、别名都按模板自动填好，贴上 key 就能用。其余的\n—— 你自己机器上的模型，或任意自定义 OpenAI-/Anthropic-compatible endpoint ——\n走自定义那条路。路由、fallback、健康、成本、审计，全在同一个控制台后面。\n\n![在 OwlCoda Admin 里添加模型 —— 云端品牌一键，或自定义 / 本地 endpoint](assets/branding/admin-models.png)\n\n## 安装\n\n```bash\nnpm install -g owlcoda@latest\nowlcoda            # 首跑时若没有可用模型，会进入配置路径\nowlcoda admin      # 浏览器 Admin：配置本地 runtime 或云端 provider\n```\n\n前置条件：Node.js `>=20.19.0`（建议 22+），加一个 LLM 后端 —— 本地 runtime\n（Ollama / LM Studio / vLLM / 任意 OpenAI-compatible endpoint）或一个云端\nprovider 的 API key。\n\n全局 npm prefix 没有写权限时，用用户级 prefix：\n\n```bash\nnpm config set prefix ~/.local && export PATH=~/.local/bin:$PATH\nnpm install -g owlcoda@latest\n```\n\n## 快速开始 —— 30 秒接 Ollama\n\n从零开始，假设你完全没有配置过模型：\n\n```bash\nbrew install ollama && ollama serve &\nollama pull qwen2.5-coder:7b\nowlcoda init --endpoint http://127.0.0.1:11434/v1\nowlcoda\n```\n\nLM Studio 用 `http://127.0.0.1:1234/v1`，vLLM 用 `http://127.0.0.1:8000/v1`。\n云端 provider 在 `owlcoda admin` 里配。\n\n### 图片与 Kimi K2.7\n\n支持视觉输入的 OpenAI-compatible 模型可以在 REPL 里直接接收本地图片。你可以\n粘贴本地图片路径、用 `@image.png` 插入，或写 Markdown 图片引用\n`![shot](./shot.png)`；OwlCoda 会把图片转成 base64 多模态 content block 发送。\n当前支持 `png`、`jpg`/`jpeg`、`webp`、`gif`。\n\nKimi K2.7 Code 走 Kimi API Platform / Moonshot 的 OpenAI-compatible 路由：\n设置 `MOONSHOT_API_KEY`，或在 `owlcoda admin` 里添加 **Kimi K2.7 Code** provider，\n然后用 `--model kimi27` 或 `--model kimi-k2.7-code`。\n\n别一上来就让它改大项目。先在一个你熟悉的仓库里从只读任务开始，再给它一个\n范围明确的小改动：\n\n```bash\ncd your-project\nowlcoda -p \"读一下这个项目，告诉我入口文件、测试命令和主要目录，不要修改文件\"\n```\n\n## 它是什么\n\nOwlCoda 站在你的模型和真实工程现场之间。模型可以动手，但每个动作都先过边界、\n留下产物、被记录下来 —— 一个长期跑的 agent，不能只凭它一句\"我做完了\"就信。\n\n- **自带模型。** 本地 runtime 和云端 provider 收进同一套模型 registry，\n  带路由、fallback、重试、熔断和按模型超时。\n- **原生 REPL。** 42+ 工具（Bash、Read/Write/Edit、Glob、Grep、Task、\n  MCP 工具、agent 派发）和 69+ slash 命令，含会话持久化、搜索、标签、分支。\n- **技能学习。** 复杂会话会被提炼成可复用技能，在相似任务里匹配回注入系统\n  提示词。用 `owlcoda skills` 管理。\n- **训练数据管线（opt-in）。** 会话可以打分、PII 脱敏、导出成本地 JSONL 供\n  微调 —— 默认关闭，只写本地。\n- **浏览器 Admin 与诊断。** `owlcoda admin` 配模型；`owlcoda doctor` /\n  `health` / `audit` / `inspect` 做运行时诊断。\n\n能力标签（`supported` / `partial` / `manual-only` / `unsupported`）声明在\n[`src/capabilities.ts`](src/capabilities.ts)，与运行时实际行为对账保持诚实。\n\n产品真相和分发边界见\n[`docs/PRODUCT-TRUTH.md`](https://github.com/yeemio/owlcoda/blob/main/docs/PRODUCT-TRUTH.md)。\n\n## 常用命令\n\n```bash\nowlcoda                          # 交互式 REPL（native）\nowlcoda -m fast                  # 按 id / 别名 / 部分匹配选模型\nowlcoda -p \"list all .ts files\"  # headless（非交互）\nowlcoda init                     # 写出 config.json（自动检测模型）\nowlcoda admin                    # 浏览器 Admin\nowlcoda doctor [--json]          # 环境诊断；JSON 包含 build/schema identity\nowlcoda models                   # 分层模型列表 + 路由探测\nowlcoda --resume last            # 恢复上次会话\nowlcoda skills                   # 列出已学习技能\nowlcoda --help                   # 完整命令列表\n```\n\n## 配置\n\n`owlcoda init` 会写出 `config.json`；完整字段见\n[`config.example.json`](config.example.json)。如果平台 `catalog.json` 可达，\n模型会自动加载，无需手写 `models` 数组。\n\n```json\n{\n  \"port\": 8019,\n  \"models\": [\n    {\n      \"id\": \"qwen2.5-coder:32b\",\n      \"backendModel\": \"qwen2.5-coder:32b\",\n      \"endpoint\": \"http://127.0.0.1:11434/v1\",\n      \"aliases\": [\"balanced\", \"default\"],\n      \"default\": true\n    }\n  ]\n}\n```\n\n常用环境变量：\n\n| 变量 | 作用 | 默认 |\n|---|---|---|\n| `OWLCODA_PORT` | 代理监听端口 | `8019` |\n| `OWLCODA_HOME` | 数据目录 | `~/.owlcoda` |\n| `OWLCODA_LOG_LEVEL` | 日志级别 | `info` |\n| `OWLCODA_RENDER_MODE` | `safe`（每行重画，默认）或 `diff` | `safe` |\n\n## 已知限制\n\n- **transcript 滚轮回看** 在终端多路复用器（tmux/screen）下还没接上鼠标\n  滚轮。app 内用 `PgUp` / `PgDn` / `Ctrl+↓` 或 `/history`。\n- **`/cost` 的美元金额只是参考** —— 本地推理基本零成本，那个美元数是拿云端\n  定价做横向对比，不是你的真实电费。\n- **LSP 工具需要你自己装 language server**（如 `typescript-language-server`、\n  `pyright`、`rust-analyzer`、`gopls`），通过 plugin 配置接入。\n- **远程 OAuth 类 MCP server 暂不支持**；stdio MCP server（走 `.mcp.json`）\n  完整可用。\n\n## HTTP API\n\n代理对外提供 Anthropic-compatible 的 `POST /v1/messages` 和 OpenAI-compatible\n的 `POST /v1/chat/completions`，外加 `GET /v1/models`、`/metrics`（Prometheus）、\n`/health` 和 `/openapi.json`。完整端点以 `GET /openapi.json` 为准。\n\n## 许可证\n\n从 `0.15.0` 边界起，OwlCoda 源码按 **`GPL-3.0-or-later`** 公开。商业、OEM、\n嵌入式分发走维护者单独授权。\n\n本仓库是 GPL 发行版的公开源码、issue、release 和信任入口。npm 包可能只携带\n编译后的 `dist/`，对应源码要求见 [SOURCE.md](SOURCE.md)。历史已发布版本沿用\n当时发布所附的许可证。\n\n## 链接\n\n- 官网：[owlcoda.com](https://owlcoda.com)\n- Issues 与 PR：[github.com/yeemio/owlcoda/issues](https://github.com/yeemio/owlcoda/issues)\n- 贡献指南：[CONTRIBUTING.md](CONTRIBUTING.md) · 安全：[SECURITY.md](SECURITY.md)\n- 示例项目：[世界杯预测器](demo/worldcup-predictor/README.md) —— 由 OwlCoda 编排的五角色模型辩论（侦查、视觉、正方、反方、裁判）\n\n## 开发\n\n```bash\nnpm run dev     # tsx 热加载\nnpm test        # 运行测试\nnpm run build   # TypeScript 编译\n```\n","readmeFilename":"README.zh.md"}