{"_id":"opencode-forge","_rev":"76-61653528b51183531e185d6b15190f8d","name":"opencode-forge","dist-tags":{"beta":"0.5.0-beta.1","latest":"1.2.1"},"versions":{"0.1.6":{"name":"opencode-forge","version":"0.1.6","keywords":["opencode","graph","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.1.6","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"oc-forge":"dist/cli/index.js"},"dist":{"shasum":"6cc508c4a679a65796530ebe29253765c1469ea9","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.1.6.tgz","fileCount":309,"integrity":"sha512-F1FrQf5LHHTSpjxTPzIySt0aBim15MRfbQx/15IgFN3Xnm5khoZFw6j2mor97gAGX9wfVo/7Qn0JnRbZjEqM5g==","signatures":[{"sig":"MEUCIQC1b0+JvtH8ndLiPhmLd0Y/A9TMEXIjmho2wOksWMyYQgIgPR/hzUeH9UsSSnARpm5D//bAUammqjtpIL/U3zncO6s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1376828},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"68bf9ba425b723c863bada60fb4907e24be2ff7d","scripts":{"cli":"bun src/cli/index.ts","docs":"pnpm docs:api","lint":"eslint .","test":"bun test","build":"bun scripts/build.ts","docs:api":"typedoc","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, code graph indexing, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"web-tree-sitter":"0.25.10","@opencode-ai/sdk":"^1.4.2","tree-sitter-wasms":"0.1.13","@opencode-ai/plugin":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","typedoc":"^0.28.19","prettier":"^3.8.1","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.97","@opentui/solid":"0.1.97","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","eslint-config-prettier":"^10.1.8","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.92","@opentui/solid":">=0.1.92"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.1.6_1776098119419_0.3542191815138993","host":"s3://npm-registry-packages-npm-production"}},"0.1.9":{"name":"opencode-forge","version":"0.1.9","keywords":["opencode","graph","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.1.9","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"oc-forge":"dist/cli/index.js"},"dist":{"shasum":"4557931b37c3b29edae5cf2d9bdf834a33e3225e","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.1.9.tgz","fileCount":317,"integrity":"sha512-sccNLFA0EkYTfP3rtOHud2bBSZ7JYTAIy0xpeA1/AC78Ou/85iDvhsPBOqPhUo+kS5ZiBQpbFIZaRQ2HU9ls6g==","signatures":[{"sig":"MEUCIGluJNaLsiQVBN+LCH3xIvq/rBtwY5qUVp/agzdJi6yQAiEAt1lERVCp8dHeowl5cv1r6dsmesyaQgbhlzKA1a2zk2c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1541554},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"cb5ae8012e368e17be0f22e53c71bbb5ed08606b","scripts":{"cli":"bun src/cli/index.ts","docs":"pnpm docs:api","lint":"eslint .","test":"bun test --max-concurrency=1","build":"bun scripts/build.ts","docs:api":"typedoc","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, code graph indexing, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"web-tree-sitter":"0.25.10","@opencode-ai/sdk":"^1.4.2","tree-sitter-wasms":"0.1.13","@opencode-ai/plugin":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","typedoc":"^0.28.19","prettier":"^3.8.1","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.97","@opentui/solid":"0.1.97","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","eslint-config-prettier":"^10.1.8","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.92","@opentui/solid":">=0.1.92"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.1.9_1776288793279_0.3126500899434659","host":"s3://npm-registry-packages-npm-production"}},"0.1.10":{"name":"opencode-forge","version":"0.1.10","keywords":["opencode","graph","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.1.10","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"oc-forge":"dist/cli/index.js"},"dist":{"shasum":"5d6b4dcc57c851b5dd3505b388f47613ac1c8c8f","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.1.10.tgz","fileCount":325,"integrity":"sha512-f9xW9+BiBg/Vr/W3vDAY5PoFMIEIGHma4dEOqEE/FygIs3w9BsPJ3uzBp7jqk8Aos0WRURyYNgak1k2FN4mlRA==","signatures":[{"sig":"MEQCIBZWwtyRgwSe02fhaYUf8vUJLrdHKATJ+td58ZiA01SuAiAGZzIw6sphnTYErP9z9CMRb7/ff73FwNt9pCNA/H1jUQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1610060},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"bcc82870491d1bb6d553a73a8d2bf42be6501cac","scripts":{"cli":"bun src/cli/index.ts","docs":"pnpm docs:api","lint":"eslint .","test":"bun test --max-concurrency=1","build":"bun scripts/build.ts","docs:api":"typedoc","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, code graph indexing, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"web-tree-sitter":"0.25.10","@opencode-ai/sdk":"^1.4.2","tree-sitter-wasms":"0.1.13","@opencode-ai/plugin":"^1.4.2"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","typedoc":"^0.28.19","prettier":"^3.8.1","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.97","@opentui/solid":"0.1.97","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","eslint-config-prettier":"^10.1.8","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.92","@opentui/solid":">=0.1.92"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.1.10_1776378677911_0.1290095373894551","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"opencode-forge","version":"0.2.0","keywords":["opencode","graph","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.2.0","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"oc-forge":"dist/cli/index.js"},"dist":{"shasum":"6a0147240c60ba1ed67d9b030fe866f658830950","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.2.0.tgz","fileCount":367,"integrity":"sha512-ykFQcx6xWt5zXXrFpkqIdf7TnCg8OWKixAMWpVawPi8lezgm3K8wZZUyMClmmjwOVakSr3PapsTVtnySoX55sg==","signatures":[{"sig":"MEYCIQDkN+oZGwOfb55yUOvhyTjNdIC6jx/Ul05EVRP8hu4kaAIhAMW83js5Vm8Y9I8Sh6WEZDbH4Q3a+3xiZEaIWFbirAyt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1979373},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"5b23f7cb1cfe0329214a9868d27cc4f578ae165a","scripts":{"cli":"bun src/cli/index.ts","docs":"pnpm docs:api","lint":"eslint .","test":"bun test --max-concurrency=1","build":"bun scripts/build.ts","docs:api":"typedoc","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, code graph indexing, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"web-tree-sitter":"0.25.10","@opencode-ai/sdk":"^1.4.6","tree-sitter-wasms":"0.1.13","@opencode-ai/plugin":"^1.4.6"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","typedoc":"^0.28.19","prettier":"^3.8.1","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.99","@opentui/solid":"0.1.99","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","eslint-config-prettier":"^10.1.8","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.99","@opentui/solid":">=0.1.99"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.2.0_1776523398509_0.8470259903059671","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"opencode-forge","version":"0.2.1","keywords":["opencode","graph","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.2.1","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"oc-forge":"dist/cli/index.js"},"dist":{"shasum":"6aebddd8494b2867b2677732225b94eae23fc287","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.2.1.tgz","fileCount":370,"integrity":"sha512-tisM1J/AhqFAAcZhmMMXiV5x/lr/uV1lzDq2IKqQ/KyUItAHhkVGgihKLdTATNIyShmY4dGrHqJmE9xaYEtwYw==","signatures":[{"sig":"MEUCIH9WoaePj3QUKVO21hOtooej52mt8CBORUBDZv4luws9AiEAg8zmAWY6yX6x6GgEs+5KmOHzPJe10xqY10Szw7PFcYE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1985785},"main":"./dist/index.js","type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"58881bd51c7ab20015f637e8d254204d0c93b420","scripts":{"cli":"bun src/cli/index.ts","docs":"pnpm docs:api","lint":"eslint .","test":"bun test --max-concurrency=1","build":"bun scripts/build.ts","docs:api":"typedoc","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, code graph indexing, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"web-tree-sitter":"0.25.10","@opencode-ai/sdk":"^1.4.6","tree-sitter-wasms":"0.1.13","@opencode-ai/plugin":"^1.4.6"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","typedoc":"^0.28.19","prettier":"^3.8.1","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.99","@opentui/solid":"0.1.99","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","eslint-config-prettier":"^10.1.8","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.99","@opentui/solid":">=0.1.99"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.2.1_1776535049721_0.054505460584546084","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"opencode-forge","version":"0.2.2","keywords":["opencode","graph","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.2.2","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"oc-forge":"dist/cli/index.js"},"dist":{"shasum":"bc4bdc9b4423ff406fa0bfe802b97be8d8211371","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.2.2.tgz","fileCount":395,"integrity":"sha512-Tiuu0orHHgDRhLXIjH6OSkrl6zyHtgCJKyEv/3GEPQ3y34kM+1kGXnst/5hl2iDETBPmD/PSNJXYwc6JDBs6qA==","signatures":[{"sig":"MEUCIFL9sMqk8G2iPqTaCqEUubWM9WVHfZ2OQNpR/kpbsd5vAiEArjasyiZcqQB1qw9rwq3iJOJZtcz0AgbyYQ0tSciabfs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1908215},"main":"./dist/index.js","type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"8b183c3147cf9c59555711b1a67943a681078d16","scripts":{"cli":"bun src/cli/index.ts","docs":"pnpm docs:api","lint":"eslint .","test":"bun test --max-concurrency=1","build":"bun scripts/build.ts","docs:api":"typedoc","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, code graph indexing, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"web-tree-sitter":"0.25.10","@opencode-ai/sdk":"^1.4.6","tree-sitter-wasms":"0.1.13","@opencode-ai/plugin":"^1.4.6"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","typedoc":"^0.28.19","prettier":"^3.8.1","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.99","@opentui/solid":"0.1.99","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","eslint-config-prettier":"^10.1.8","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.99","@opentui/solid":">=0.1.99"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.2.2_1776617043043_0.7212593185398786","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"opencode-forge","version":"0.2.3","keywords":["opencode","graph","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.2.3","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"oc-forge":"dist/cli/index.js"},"dist":{"shasum":"9ec78b08175ce945cc969ecacfba96f64a75a42c","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.2.3.tgz","fileCount":403,"integrity":"sha512-/mzmFayskUXOVDfLVJojpvmvp/3GrswCfou6VhuiNMpvPOqWBjFt1IWoD7OMrSNWrnB39/GwwKPcAyL6XxczjA==","signatures":[{"sig":"MEUCIGy+oPUfbitKu381tEvH2YyDHQuBUPAZWBaYFCFt2x/EAiEA9E8hbCStYVUaJcMsF6yVCQc8vhylFj9pHTg2aMHnPeE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1883163},"main":"./dist/index.js","type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"e09ed9d24f76a35c71042d36fc07fff44b03aabf","scripts":{"cli":"bun src/cli/index.ts","docs":"pnpm docs:api","lint":"eslint .","test":"bun test --max-concurrency=1","build":"bun scripts/build.ts","docs:api":"typedoc","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, code graph indexing, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"web-tree-sitter":"0.25.10","@opencode-ai/sdk":"^1.4.6","tree-sitter-wasms":"0.1.13","@opencode-ai/plugin":"^1.4.6"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","typedoc":"^0.28.19","prettier":"^3.8.1","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.99","@opentui/solid":"0.1.99","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","eslint-config-prettier":"^10.1.8","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.99","@opentui/solid":">=0.1.99"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.2.3_1776716189882_0.054076612356139586","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"opencode-forge","version":"0.2.4","keywords":["opencode","graph","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.2.4","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"oc-forge":"dist/cli/index.js"},"dist":{"shasum":"570deada90e86178308916d891dc4261b16863de","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.2.4.tgz","fileCount":403,"integrity":"sha512-NYuJ21cPxj9JiVTpJ/lZIAT/XmMYJL9wfalNKWc0w3+Xr20i0nJDiXBqXzxZ+xUb5g8vv0l6gHn59OqlBkmhDg==","signatures":[{"sig":"MEQCIG3HYvvXi85l7Hj9GEiZvQiX4fuB+3cs/vqGmKAJLWOJAiA+FEigQr9hpeTMG1AWEIn2fMU+pvN56w7WgKsbNV2jPQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1927345},"main":"./dist/index.js","type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"fefa39053c8190e4b02257178182fd1157550a3d","scripts":{"cli":"bun src/cli/index.ts","docs":"pnpm docs:api","lint":"eslint .","test":"bun test --max-concurrency=1","build":"bun scripts/build.ts","docs:api":"typedoc","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, code graph indexing, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"web-tree-sitter":"0.25.10","@opencode-ai/sdk":"^1.4.6","tree-sitter-wasms":"0.1.13","@opencode-ai/plugin":"^1.4.6"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","typedoc":"^0.28.19","prettier":"^3.8.1","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.99","@opentui/solid":"0.1.99","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","eslint-config-prettier":"^10.1.8","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.99","@opentui/solid":">=0.1.99"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.2.4_1776803268437_0.7781831306820941","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"opencode-forge","version":"0.2.5","keywords":["opencode","graph","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.2.5","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"oc-forge":"dist/cli/index.js"},"dist":{"shasum":"55055d0d11142a76697e89afde88dbd6b8e3c34c","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.2.5.tgz","fileCount":471,"integrity":"sha512-azl3ygjhdAjOGYAj2AAKkJZuc1D6mctor2mSofIZTtSTfeNzPPo8cIDUczPkWLlQnnQB0j+GVkX4v6oGi/ahsw==","signatures":[{"sig":"MEUCIQCWMzov/gxnoHVDoAsu0taEsPRKotZ3F06WnsaxrpFA3gIgAlrlANk6wZxaZ7EgN3ofFDYRqYDdA0YXcn6Bk6fq9zU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1969262},"main":"./dist/index.js","type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"f10fdaed2907181b0434c1c52f65f4ee94c4d38a","scripts":{"cli":"bun src/cli/index.ts","docs":"pnpm docs:api","lint":"eslint .","test":"bun test --max-concurrency=1","build":"bun scripts/build.ts","docs:api":"typedoc","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, code graph indexing, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"web-tree-sitter":"0.25.10","@opencode-ai/sdk":"^1.4.6","tree-sitter-wasms":"0.1.13","@opencode-ai/plugin":"^1.4.6"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","typedoc":"^0.28.19","prettier":"^3.8.1","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.99","@opentui/solid":"0.1.99","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","eslint-config-prettier":"^10.1.8","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.99","@opentui/solid":">=0.1.99"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.2.5_1776876268720_0.6080376487130343","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"opencode-forge","version":"0.3.0","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.3.0","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"oc-forge":"dist/cli/index.js"},"dist":{"shasum":"a102e9e7ef357c6c98c879f3fe9008c5d083668c","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.3.0.tgz","fileCount":577,"integrity":"sha512-FRUzBrEn8qTmwaXh+Zdew+/WsIwGva/4XMrQUkUp9qzuPWyG+mMlNtj6gn2SdJLQAuJG0YNIUZNQNtAsAkqQAg==","signatures":[{"sig":"MEUCIQCXzfuOG4BTeZZBFxGW5IbA8VhjujVt/r9oRfuBsS3ubgIgX2vtRRX5PJF/kQted23MsmghSvPFSBT/W+R6e9K0JrU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2315973},"main":"./dist/index.js","type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"4628653bab53570b09ee58653f3bb0fd91dd4ab4","scripts":{"cli":"bun src/cli/index.ts","docs":"pnpm docs:api","lint":"eslint .","test":"bun test --max-concurrency=1","build":"bun scripts/build.ts","docs:api":"typedoc","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"zod":"^3.25.76","jsonc-parser":"^3.3.1","@ast-grep/cli":"^0.42.1","@opencode-ai/sdk":"^1.14.30","@opencode-ai/plugin":"^1.14.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","prettier":"^3.8.1","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","eslint-config-prettier":"^10.1.8","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.3.0_1778001260308_0.03500819327257365","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"opencode-forge","version":"0.3.1","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.3.1","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"oc-forge":"dist/cli/index.js"},"dist":{"shasum":"59363493ea0c7915b5378be9268f0570148c5eed","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.3.1.tgz","fileCount":577,"integrity":"sha512-sCwotEfG4NLChtV7EsooWKJse5nRMspiVE6KMhipr5WL2z3kytu6dZCaD5et48m/qhHF4FFN1/cb1GRXpKUe9g==","signatures":[{"sig":"MEUCIQCfQoRcdvhzP74RW24Qb6moipDLhUJHgw8amMLq/oPMSQIgVPOuVqB3+6fT8J4uNWqFRXTocI3jE4TVHU9jsQbIXwo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2350566},"main":"./dist/index.js","type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"4628653bab53570b09ee58653f3bb0fd91dd4ab4","scripts":{"cli":"bun src/cli/index.ts","docs":"pnpm docs:api","lint":"eslint .","test":"bun test --max-concurrency=1","build":"bun scripts/build.ts","docs:api":"typedoc","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"zod":"^3.25.76","jsonc-parser":"^3.3.1","@ast-grep/cli":"^0.42.1","@opencode-ai/sdk":"^1.14.30","@opencode-ai/plugin":"^1.14.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","prettier":"^3.8.1","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","eslint-config-prettier":"^10.1.8","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.3.1_1778010836832_0.5193071056948222","host":"s3://npm-registry-packages-npm-production"}},"0.3.2":{"name":"opencode-forge","version":"0.3.2","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.3.2","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"oc-forge":"dist/cli/index.js"},"dist":{"shasum":"d5901a93219aa72f0a0bb61df79fd9d7fca752db","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.3.2.tgz","fileCount":579,"integrity":"sha512-7BqxIPBg0FWL911K4xSKYmdfKtKbLIpdYH+dhY87+Tt5IUpu0YoG7yI2e1EMx1oeEq/QP9/rZyj5iiSwWjvT/g==","signatures":[{"sig":"MEQCIG/WUaAhGk1mXBodNWSDVKy+UIp1oG5i6cROwAMb4oTTAiAhwyh+tFZgScBGzCuA2cIAqVkpnu+SSVOK+DbiTkggSg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2391175},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.3.2.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"cli":"bun src/cli/index.ts","docs":"pnpm docs:api","lint":"eslint .","test":"bun test --max-concurrency=1","build":"bun scripts/build.ts","docs:api":"typedoc","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/private/var/folders/9s/bp2r_6nx4cnb9x7z0_gb9zmm0000gn/T/ee4b111081008a7031a0542660324c34/opencode-forge-0.3.2.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-7BqxIPBg0FWL911K4xSKYmdfKtKbLIpdYH+dhY87+Tt5IUpu0YoG7yI2e1EMx1oeEq/QP9/rZyj5iiSwWjvT/g==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"zod":"^3.25.76","jsonc-parser":"^3.3.1","@ast-grep/cli":"^0.42.1","@opencode-ai/sdk":"^1.14.30","@opencode-ai/plugin":"^1.14.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","prettier":"^3.8.1","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","eslint-config-prettier":"^10.1.8","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.3.2_1778041172903_0.07547039830756552","host":"s3://npm-registry-packages-npm-production"}},"0.3.6-beta.0":{"name":"opencode-forge","version":"0.3.6-beta.0","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.3.6-beta.0","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"476bc8301fef66699533d6acf0fdde82541e1f38","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.3.6-beta.0.tgz","fileCount":711,"integrity":"sha512-QfH4B8+I7w08WWDCYxIwC1KPMDijiSiK+hE4llMVytx+cpzhyWQc820iwwphs2dxQ8DdMwElWk6BqrUggeC8lA==","signatures":[{"sig":"MEUCIDxr10HbLgDBBbBDRENMHOIQwlAHQ6XVqFmHNUCkvVNoAiEAxe5L1Y1HjoKRYrQ23j821z14t1QRqYFdvt+BJkeG/JE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2884132},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["better-sqlite3","esbuild","msgpackr-extract"]},"type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"673e45f76fcc91647b37813cea9e6e480c5c3f23","scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"25.9.0","dependencies":{"zod":"^3.25.76","jsonc-parser":"^3.3.1","@opencode-ai/sdk":"^1.14.47","@opencode-ai/plugin":"^1.14.47"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","@opentui/keymap":"^0.2.6","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.3.6-beta.0_1778618708288_0.67632279179072","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"opencode-forge","version":"0.4.0","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.0","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"60774944b0157c785fb8e71ffeb8d5d4a15b88d5","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.0.tgz","fileCount":728,"integrity":"sha512-ltCh2javeGrjJGlYF7+5+RgSVnVl/oW20iViG6fk3dvEx6bztqKBVlyWAnVyMsBdMiLFixIRP3N6s5gryQSdnQ==","signatures":[{"sig":"MEYCIQDWsvZJZ4iaPE+u4fw+E2YJWtvlepJlFmFM8ZiOzzBtXAIhAM+G6/pQ4zs/8uIqAF9L91xPTrwMuem5VFVk08G1/gou","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2908287},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["better-sqlite3","esbuild","msgpackr-extract"]},"type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"fd9f28178cfab98235501e7d58ec1e1fb1e3313c","scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"^3.25.76","jsonc-parser":"^3.3.1","@opencode-ai/sdk":"^1.14.47","@opencode-ai/plugin":"^1.14.47"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","@opentui/keymap":"^0.2.6","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.0_1778712520220_0.6205835490746687","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"opencode-forge","version":"0.4.1","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.1","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"ca4e43d58dc4914c7f348b78b35734c4b710e9de","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.1.tgz","fileCount":732,"integrity":"sha512-DYy9eJLg56q66445uzylWaS63UKhGT0wO7ZRbl8eHuxgfih8yOYP7XZ6EySECNvP6xhSDepwux9ivR27bk/c6g==","signatures":[{"sig":"MEUCIQCc4F1bCDxxbPBCuVxBmO8rMALPNgE7q2xB0WbJ7Oqs8AIgYRL2YTexostqlBrBI0cW2bOjJgZ6G9WRn1fjFdmGkaY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2929650},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["better-sqlite3","esbuild","msgpackr-extract"]},"type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"c7de8d79f1438133320dc1724d6ac922d399d7b2","scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"^3.25.76","jsonc-parser":"^3.3.1","@opencode-ai/sdk":"^1.14.47","@opencode-ai/plugin":"^1.14.47"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","@opentui/keymap":"^0.2.6","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.1_1778795653683_0.9435056702762739","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"opencode-forge","version":"0.4.2","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.2","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"d0e5971d725d7ddc8bc8eb4c8746c11c28ec9d97","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.2.tgz","fileCount":743,"integrity":"sha512-o/aHiU1vinKixMeFQfe8nVqKqUUWCEke98LVS1EJZUNogEaM2BSCS85NeSw4LcFrs60iMm/HBZ4w2p3hMsUNIw==","signatures":[{"sig":"MEUCIQDMWDSbxSVKztqLV3V0g+G5Qi++koTAuq/gglD+IvL8AwIgT5rS8TGRVL5fFyQ0q5q0TOZzUtpaO+0Iui84Ec5cpQ4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2870854},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["better-sqlite3","esbuild","msgpackr-extract"]},"type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"5e8536a77cbf593f0bc9e1fb99ff0ac35d241343","scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"^3.25.76","jsonc-parser":"^3.3.1","@opencode-ai/sdk":"^1.14.47","@opencode-ai/plugin":"^1.14.47"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","@opentui/keymap":"^0.2.6","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.2_1778969762808_0.12060047767663962","host":"s3://npm-registry-packages-npm-production"}},"0.4.3":{"name":"opencode-forge","version":"0.4.3","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.3","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"c36c1d29f6876884a8ada7cb6b9a1902a0601650","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.3.tgz","fileCount":755,"integrity":"sha512-C4q1r3exS3eVyryigBNseNbQNayG4l5HyDcgcydBroHoxVOvERtw+uuUP7YvynrBuGrW7eRnkHQ/plj7ZJfn+A==","signatures":[{"sig":"MEQCIC+v5qtHrAjOdjUblPFTh2c/L7fjAk68GXabxEh69JxNAiBgmLkbN5zMWqyRGq0D6e0VZgb+mUqrfj7Tr5ro3l/lBg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2936175},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["better-sqlite3","esbuild","msgpackr-extract"]},"type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"7afc8535e66b0c13f6525c5168dad4a3a2514f73","scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.12.1","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"26.0.0","dependencies":{"zod":"^3.25.76","jsonc-parser":"^3.3.1","@opencode-ai/sdk":"^1.14.47","@opencode-ai/plugin":"^1.14.47"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","@opentui/keymap":"^0.2.6","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.3_1779073174173_0.5731926482717093","host":"s3://npm-registry-packages-npm-production"}},"0.4.4":{"name":"opencode-forge","version":"0.4.4","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.4","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"de7c586c7d3e866f4971ecab0609c2fbd67c2767","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.4.tgz","fileCount":438,"integrity":"sha512-NHiS+gR6RLOmJeiS605oQDQDXIwNs7mxPc+a41gbVsnWQVEIm6MYPpCusmlObEG6wTvlcmwdCR+EGYev1Now1w==","signatures":[{"sig":"MEUCIQCME9d8SsV7ecT0YYkOoIp6Q7TfCFFBWYIIEp6g5acTTQIgMObopI++HdcIKVfzShd6KtmkNP3FgFFByweVtqspL6M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1609840},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.4.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/5a0858255443ff8e8d9463d5219b7e25/opencode-forge-0.4.4.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-NHiS+gR6RLOmJeiS605oQDQDXIwNs7mxPc+a41gbVsnWQVEIm6MYPpCusmlObEG6wTvlcmwdCR+EGYev1Now1w==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.7","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","jsonc-parser":"^3.3.1","@opencode-ai/sdk":"^1.14.47","@opencode-ai/plugin":"^1.14.47"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","@opentui/keymap":"^0.2.6","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.4_1779228973391_0.34532259662004927","host":"s3://npm-registry-packages-npm-production"}},"0.4.5":{"name":"opencode-forge","version":"0.4.5","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.5","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"66125807e6caf4b8691be603864c4559559df355","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.5.tgz","fileCount":446,"integrity":"sha512-J8ydF3rXPQ7ZzvPtUNpcJZDzds9w5NMJFp7PM5jYUzMNNLYHvvq8rCXGsqEIdJ6bFYCF9FCoxOyzEIH3XGKo5Q==","signatures":[{"sig":"MEQCIDcXOFwOFR5mj35tAtcYUu3nVFvz/xzvTbT2q2eULlK1AiBqOh8eQq4v/Kbya0p1ZlblrLKzgAVMwzhuH43aQ0wNoQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1608761},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.5.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/63a03c18058e78c8cc7d1b4c46bfdd28/opencode-forge-0.4.5.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-J8ydF3rXPQ7ZzvPtUNpcJZDzds9w5NMJFp7PM5jYUzMNNLYHvvq8rCXGsqEIdJ6bFYCF9FCoxOyzEIH3XGKo5Q==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.7","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.2","dependencies":{"zod":"^3.25.76","jsonc-parser":"^3.3.1","@opencode-ai/sdk":"^1.14.47","@opencode-ai/plugin":"^1.14.47"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","@opentui/keymap":"^0.2.6","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.5_1779249519736_0.4292660237803587","host":"s3://npm-registry-packages-npm-production"}},"0.4.6":{"name":"opencode-forge","version":"0.4.6","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.6","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"3401bc8739186815e0a165dc8d4641b957908c3c","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.6.tgz","fileCount":443,"integrity":"sha512-KRhzr/emH9aqe/dU6gCVJT5XwHhNlv6kcLm8Cei3XPnVo0GiA7xireiK9vJKpFNNYQvePJVRf47XmqS+T3osKQ==","signatures":[{"sig":"MEYCIQCKST0/cF/f5fj2rhTolBIPogf5Psp9GkFY2axOZueaHQIhAO4SomwZwndCpgu4p5ur1/SBNw9/Qa8Hm0Y0GLlcU6IG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1616863},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.6.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/f68a08146f15e5ae4cdc652b496fdfe2/opencode-forge-0.4.6.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-KRhzr/emH9aqe/dU6gCVJT5XwHhNlv6kcLm8Cei3XPnVo0GiA7xireiK9vJKpFNNYQvePJVRf47XmqS+T3osKQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","@opencode-ai/sdk":"^1.14.47","@opencode-ai/plugin":"^1.14.47"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.6_1779398424942_0.920246353636095","host":"s3://npm-registry-packages-npm-production"}},"0.4.7":{"name":"opencode-forge","version":"0.4.7","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.7","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"f3e2b8b778a55b93546471c4a95df5417c32c195","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.7.tgz","fileCount":456,"integrity":"sha512-WZwh9hMKHOA6aNj8XQxgotgRK7d23dSCVNmMF6ifw+aV3cbYk3Jl2+p7V8Q87Bn/ESkqTdLVDNjAEwdvyhsZLw==","signatures":[{"sig":"MEQCIGc26hj1HE6W/uijtvpa2dkTHJHRkogSTxVD2s+cv/hNAiBU5lLyXSLjnjx8cL2nwCSd1Jq5X9yOgiQrLnZ5hCV2nA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1631657},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.7.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/9d4577641fa1c44e991bdda063347368/opencode-forge-0.4.7.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-WZwh9hMKHOA6aNj8XQxgotgRK7d23dSCVNmMF6ifw+aV3cbYk3Jl2+p7V8Q87Bn/ESkqTdLVDNjAEwdvyhsZLw==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.7_1779450930751_0.5840271244539377","host":"s3://npm-registry-packages-npm-production"}},"0.4.8":{"name":"opencode-forge","version":"0.4.8","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.8","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"938c5356cce134cc706d413e9de83557a5ed4982","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.8.tgz","fileCount":456,"integrity":"sha512-wcW1v25jOR3CJKgGClz/Im3qTOM+ZSmfPSeXQ9Jzdt8n/mgyXA/jxjmQvxASb6/aJXZ5x90djeW88Xk+IOosNg==","signatures":[{"sig":"MEYCIQDw1zCrmq4KylYi4VBXJOcXQunrDzip+oaIDMe5cXGs2gIhANG9eqYBnY9dozZUvhh4VvqFXEDOZB7EL1qe70vlXo1W","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1628367},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.8.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/c24c167549cb5dc5efdbdfe77f5791a6/opencode-forge-0.4.8.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-wcW1v25jOR3CJKgGClz/Im3qTOM+ZSmfPSeXQ9Jzdt8n/mgyXA/jxjmQvxASb6/aJXZ5x90djeW88Xk+IOosNg==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.8_1779456220415_0.47025203589260967","host":"s3://npm-registry-packages-npm-production"}},"0.4.9":{"name":"opencode-forge","version":"0.4.9","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.9","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"8fd82d9d1853f47e05823bb9a02b2b58ca7014b1","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.9.tgz","fileCount":456,"integrity":"sha512-nAdVroWdXhS8OdV2RA6T/ClbvgNo3W4TWZmMSBhNQCG2fLEL1OkTfS9rGTtgF1SwI82opavgtfQhASBujP4g9w==","signatures":[{"sig":"MEUCIEqvkZgCElA1+tpWitN2HKqtTRHxp1yZZ7gXQYiAH8JXAiEA8skmRl94KIdbLaao5lquv2e7fFRLig48gLhFs/1iyJc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1629424},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.9.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/2f9009756131faf1d863a1ea2983b42d/opencode-forge-0.4.9.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-nAdVroWdXhS8OdV2RA6T/ClbvgNo3W4TWZmMSBhNQCG2fLEL1OkTfS9rGTtgF1SwI82opavgtfQhASBujP4g9w==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.9_1779497015808_0.7368942266677618","host":"s3://npm-registry-packages-npm-production"}},"0.4.10":{"name":"opencode-forge","version":"0.4.10","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.10","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"d236a1aa7653677899d5df3e01e1978e2152ca77","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.10.tgz","fileCount":460,"integrity":"sha512-gamzWm4gaSy7eOZ3jeYnSFgb5JgvhOLyX5NnACEPmq89DgmjN45tRhEbdWOHOwuRbMmDF13Y22o3b4YuxoMUWw==","signatures":[{"sig":"MEQCIHqI98LWBsRDGfxq+SgPH6a1OBY2oIIeB4IWqOV7dZlpAiATuecGxZAIQ2xi3Ubk8wX55OaivvHVV0+dsXnQubsuZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1637751},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.10.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/aadfafbab49e7df37fd34903bc993b83/opencode-forge-0.4.10.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-gamzWm4gaSy7eOZ3jeYnSFgb5JgvhOLyX5NnACEPmq89DgmjN45tRhEbdWOHOwuRbMmDF13Y22o3b4YuxoMUWw==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.10_1779544276677_0.4764259441474723","host":"s3://npm-registry-packages-npm-production"}},"0.4.11":{"name":"opencode-forge","version":"0.4.11","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.11","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"0237d5648426913a70fc63c36beeecc568467b20","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.11.tgz","fileCount":448,"integrity":"sha512-23UOpziwfB/xdpcrBRGTtojcOyMuyBPr4Pa6EvX9+lZ/jMvRlwFYPeKddNk3mnskHEsqw3X68UD0UX9ekEK0kg==","signatures":[{"sig":"MEQCIDn/EnRhXDbz8A+eXF0RiP/3PybRgXqJfKnt0wmtTOohAiBDoK5eJ8LBYIFedG+Cd5eES9OEyosoO31mdBDTJlX1IA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1572594},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.11.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/ae09e48677050b4212ae09310ffe63be/opencode-forge-0.4.11.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-23UOpziwfB/xdpcrBRGTtojcOyMuyBPr4Pa6EvX9+lZ/jMvRlwFYPeKddNk3mnskHEsqw3X68UD0UX9ekEK0kg==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.11_1779659210472_0.36572502831270093","host":"s3://npm-registry-packages-npm-production"}},"0.4.12":{"name":"opencode-forge","version":"0.4.12","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.12","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"6da79a582c5078ce9a0c3171bac4e67d91676162","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.12.tgz","fileCount":452,"integrity":"sha512-h0oIQvdRy3u//wqxJdpz7GyEYS9tIkyE9p8FGdWrQrimBZ/bI3DxdTNgfbaU/S01l/CpPIYnOgJxV3iNiF02lQ==","signatures":[{"sig":"MEYCIQCTRtg12l2HxNxjncCwKPp/ncKM+r3OXoobtkMcdeCHugIhAIGaLIXhF+yv/BUoOYu5FOy651M+ApDo7/y80xzlg2Sr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1574283},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.12.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/f566af99a8fe6fd25e86886a0b766e2a/opencode-forge-0.4.12.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-h0oIQvdRy3u//wqxJdpz7GyEYS9tIkyE9p8FGdWrQrimBZ/bI3DxdTNgfbaU/S01l/CpPIYnOgJxV3iNiF02lQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.12_1779726301277_0.7312158110320937","host":"s3://npm-registry-packages-npm-production"}},"0.4.13":{"name":"opencode-forge","version":"0.4.13","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.13","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"d970eb5da7a4a48234004489493d5e6f5dee7109","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.13.tgz","fileCount":473,"integrity":"sha512-54U6syNeNA35ciM8NZSmku3ZJkhjlwtAMpUaskOMG3KtolrJOlBAXREzDqQuMjuEUUn9l4F7Og8LourwYbN25Q==","signatures":[{"sig":"MEUCIQCK0ozAxaKyG5NI8IAK2auVlWHV2pyEvqx2tQAoAjj4rgIgVdCF+jd2yqUnojgcUo2D7sJgIB8nWrhpfCM0b152Ki4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1660527},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.13.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/ea2992367bcf4fd6f9220e6633e69fba/opencode-forge-0.4.13.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-54U6syNeNA35ciM8NZSmku3ZJkhjlwtAMpUaskOMG3KtolrJOlBAXREzDqQuMjuEUUn9l4F7Og8LourwYbN25Q==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.13_1780522679040_0.0880892700746263","host":"s3://npm-registry-packages-npm-production"}},"0.4.14":{"name":"opencode-forge","version":"0.4.14","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.14","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"6cd74295a9e55a065022d4d9c218f3cf7731667e","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.14.tgz","fileCount":473,"integrity":"sha512-PWRiCBXwWCaaiNklyzyc88OS/2Pk1Tth8vM0dU46XbI+gFg+35nqYLllA+KTtiCzVcY7poOpJFlPhqqy0kMsqQ==","signatures":[{"sig":"MEUCID9JSKfiS3LNxg41/5k7caTgUWkyi5ir+tkA5ZZRapjtAiEA/+nb/yn5dXvOOLDpt48qYRBwXgAVKj9UKx5jB9431No=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1661159},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.14.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/e764f61c67aac18387e26b69cc986e14/opencode-forge-0.4.14.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-PWRiCBXwWCaaiNklyzyc88OS/2Pk1Tth8vM0dU46XbI+gFg+35nqYLllA+KTtiCzVcY7poOpJFlPhqqy0kMsqQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.14_1780578830990_0.16955698181817125","host":"s3://npm-registry-packages-npm-production"}},"0.4.15":{"name":"opencode-forge","version":"0.4.15","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.15","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"a9023c482e18ed95a7ef7405658b577c4df1c550","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.15.tgz","fileCount":481,"integrity":"sha512-2HM+vxH0ngXDLGElp60zuwu7lPOGXkIeNXPCPtDWjdbKFxE6FoNTDvUc4lkummE7iIPpoVLlJxXou9QIb02FAA==","signatures":[{"sig":"MEYCIQCsjwtKUWW7eBTHCQIpKqrCY5CjJ7PJ20ckhhlTsL5vpAIhAOQkLXNE/+86dZMOU9AMJamaqUrr+FLiKxgBvjAVW1/u","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1684932},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.15.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/52c0221a4042278161e27936965d105b/opencode-forge-0.4.15.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-2HM+vxH0ngXDLGElp60zuwu7lPOGXkIeNXPCPtDWjdbKFxE6FoNTDvUc4lkummE7iIPpoVLlJxXou9QIb02FAA==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.15_1780630127613_0.515632855297417","host":"s3://npm-registry-packages-npm-production"}},"0.4.16":{"name":"opencode-forge","version":"0.4.16","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.16","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"73d9a5dd037ade186162604f385616e6a8f6de4f","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.16.tgz","fileCount":485,"integrity":"sha512-Rfi4Q0COPoWNOyvRTeKhCs7Ce1jbyhuAzY71Xz99bCk/wYTKGZvdR7xh/f6OoykEKT6KcaRCFclwQEIZnBgwDQ==","signatures":[{"sig":"MEQCIEfE5qV3pOJ01Zz+iz90Qmifv58ncMXu+1D3TZP3dCysAiBgW/jDGblWEYC/d8kpDTl1e07/kDmir4zSUEZ35hP1vw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1766177},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.16.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/17a58ca790fc17cfaf4ea8aae4f743b1/opencode-forge-0.4.16.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-Rfi4Q0COPoWNOyvRTeKhCs7Ce1jbyhuAzY71Xz99bCk/wYTKGZvdR7xh/f6OoykEKT6KcaRCFclwQEIZnBgwDQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.16_1780764382064_0.9213765000705363","host":"s3://npm-registry-packages-npm-production"}},"0.4.17":{"name":"opencode-forge","version":"0.4.17","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.17","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"7c53a238d1f5dfb62edf2261b44d9c8ef2083952","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.17.tgz","fileCount":485,"integrity":"sha512-ZJvSgIu/S06AKIv4Z//xYeWBiu8P/I70Mo+NdlFHTGxEK3s3TfxgArgG2JjQm9tQxtlpq29D71qKSFFCpnUIIw==","signatures":[{"sig":"MEUCIQCaK0LxygjNhagDldqinCuQjcvLqlG3uCzQfc2VaV4wtwIgOK7lapbTfOLNXunYS4547YEVsig2AGrOIUTK92GI0x4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.17","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1768013},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.17.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/99d5fd2872973b0d65a63d050ff8c99b/opencode-forge-0.4.17.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-ZJvSgIu/S06AKIv4Z//xYeWBiu8P/I70Mo+NdlFHTGxEK3s3TfxgArgG2JjQm9tQxtlpq29D71qKSFFCpnUIIw==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.17_1780926951176_0.6752072968128333","host":"s3://npm-registry-packages-npm-production"}},"0.4.18":{"name":"opencode-forge","version":"0.4.18","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.18","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"4226f6c443a4a6f4b07e90e8f87115ae6c123428","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.18.tgz","fileCount":485,"integrity":"sha512-YdKszD6qJcWEfGeKFLNN/DufGOx58EFcCqmL1QH+KDuZsoPm6RYjyvBh8U8BgxvObP9nZrz8FLNB2Vlj7EcGOg==","signatures":[{"sig":"MEUCID7QpET2/MiZ7QIJY6vK2m1GszwEhlpNuJuLvthe53zaAiEAomvXn9SbvEtQA6DmxoX65k75PA7Ivt5W/iQRQRCT2gQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.18","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1768697},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.18.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/4d7299ed07e25376844ab018954c8c45/opencode-forge-0.4.18.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-YdKszD6qJcWEfGeKFLNN/DufGOx58EFcCqmL1QH+KDuZsoPm6RYjyvBh8U8BgxvObP9nZrz8FLNB2Vlj7EcGOg==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.18_1780928214707_0.6363393399277668","host":"s3://npm-registry-packages-npm-production"}},"0.4.19":{"name":"opencode-forge","version":"0.4.19","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.19","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"fad8032ce931869cd3065ba6e7733c4bb39aabfb","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.19.tgz","fileCount":485,"integrity":"sha512-PnAhHjpmWOUtsB+z1JpAaRIBdHiRwFXDYeDtw/NfwrwL3xOkgv2oB72dONj+Q4gB9EWqZQhJWOh7S9pXb9BHmw==","signatures":[{"sig":"MEUCIQDEt/V+UDtEAWT6N+Yssu/gdUf7yJOBE4NL8z02uBxhhwIgDgLmfflME/zqrL4eFOB86C3KYeMY/n3l465QM9TBd5o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.19","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1773345},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.19.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/1ed456f5f018c2d6739d156ff6539390/opencode-forge-0.4.19.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-PnAhHjpmWOUtsB+z1JpAaRIBdHiRwFXDYeDtw/NfwrwL3xOkgv2oB72dONj+Q4gB9EWqZQhJWOh7S9pXb9BHmw==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.19_1781141953399_0.4354193790923677","host":"s3://npm-registry-packages-npm-production"}},"0.4.20":{"name":"opencode-forge","version":"0.4.20","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.20","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"2093eed8cba27aa8e6880a2ff3f038f48ac46584","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.20.tgz","fileCount":489,"integrity":"sha512-Lz/MwMg2xEk0G+IoWypgp985VOoFfsl2GQRS7DhgUFLBF67fy+/WR4IqAS357NL+swH4L3PXTR6+T+5sgfmMrg==","signatures":[{"sig":"MEUCIHPZcUuuZTcHFB6IiyGCcqrhDrUuzOdPYEdTZbmC/OZpAiEA9Yj4uD2MU+rXUMO415vmN+Bzul+zmECEBndhqxmy1Rk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.20","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1785795},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.20.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/2f53a832a075911cdb538e158ce90a53/opencode-forge-0.4.20.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-Lz/MwMg2xEk0G+IoWypgp985VOoFfsl2GQRS7DhgUFLBF67fy+/WR4IqAS357NL+swH4L3PXTR6+T+5sgfmMrg==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.20_1781224229632_0.49604971921634844","host":"s3://npm-registry-packages-npm-production"}},"0.4.21":{"name":"opencode-forge","version":"0.4.21","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.4.21","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"b3e10e2cd923052b6e79572a8f5a08556c500d0e","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.4.21.tgz","fileCount":485,"integrity":"sha512-lAX22JW1/hoyEc8ekTdJ0S7U93tZSWmj8ChycY5LZglnCkL25iwTd+8tN5y9HzKhXTzYhVhsHF46KqWGCki2sw==","signatures":[{"sig":"MEQCIERGAGMVd6gcagjPBhG7/5tbHvGXL+r/umR3G1Y+P9tuAiAdjsPEV1m1TwWCR6KJjWVqYB3TbePY7qmzM02ubP4P6A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.4.21","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":1782190},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.4.21.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","test:bun":"bun test --max-concurrency=1","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/38c0e7c7336f84bad14f92e4790aae46/opencode-forge-0.4.21.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-lAX22JW1/hoyEc8ekTdJ0S7U93tZSWmj8ChycY5LZglnCkL25iwTd+8tN5y9HzKhXTzYhVhsHF46KqWGCki2sw==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.22.3","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.4.21_1781291381029_0.7334640981467071","host":"s3://npm-registry-packages-npm-production"}},"0.5.0-beta.1":{"name":"opencode-forge","version":"0.5.0-beta.1","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.5.0-beta.1","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"3faf526081285f50eb3d1a914eccdfbef8aebe99","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.5.0-beta.1.tgz","fileCount":547,"integrity":"sha512-VnUgW++T5/o9zWs6pS/72tZjaH2NgK0R8Xa53Ax3GFgs49P9h1IXBaQ5A8u78KfygtqlpujDzvkWsgglyN0iGA==","signatures":[{"sig":"MEUCIH6bhMfSb8Qn5D6WPrliOXqfMhFSI7TROcYE1zerWLIqAiEA0lgK4PwT3hZ+83y+rHR371PlBFw/WP7sN64EJQRnQyw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1949523},"main":"./dist/index.js","pnpm":{"onlyBuiltDependencies":["better-sqlite3","esbuild","msgpackr-extract"]},"type":"module","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"083e9a486ea2b017d2d687360f89077a67a90986","scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit","prepublishOnly":"pnpm build"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"oc-plugin":["server","tui"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"11.16.0","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"26.3.0","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.5.0-beta.1_1781886615431_0.07983737572188776","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"opencode-forge","version":"0.5.0","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.5.0","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"2b75cf091aad4fe4ae31678370cf151e53395384","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.5.0.tgz","fileCount":646,"integrity":"sha512-YSMoBGWyTMa4zdM05zVPD6j6KdIdifEuniL+EhP6uWB9ZboTZhvTdrH8ln1hbdah9jZvJj5HdmtWiGmPc0dHXg==","signatures":[{"sig":"MEYCIQCdtflckTMxdAQs/Z1u/Dd/Ko+fbBxdkIY9W9P2mI3n5gIhAIOf5HyEp9JIUz/vJFgkf3ktjovpMbrvUGuOmbqh0aW2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3566737},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.5.0.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/149e62d35a1cb125d5b3bf96e44ee327/opencode-forge-0.5.0.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-YSMoBGWyTMa4zdM05zVPD6j6KdIdifEuniL+EhP6uWB9ZboTZhvTdrH8ln1hbdah9jZvJj5HdmtWiGmPc0dHXg==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.0","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.5.0_1782673731426_0.2946623896349385","host":"s3://npm-registry-packages-npm-production"}},"0.5.1":{"name":"opencode-forge","version":"0.5.1","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.5.1","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"84ca66decd298363f7224ed5f814f242e4dd0ee5","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.5.1.tgz","fileCount":650,"integrity":"sha512-mC6+nnzcP2VOntHH/AnOjxxRret18tIPfafu8So3ibSfmfsIdz7pl4lNpDdRc7cpLdh+xPIdcCWu+uc6vFP5UA==","signatures":[{"sig":"MEQCIGi0oMXp36FjlHfe2OURCQ53Wods98n1LCvDa902SZD5AiBNr9aGkxy+FgSpnApJU58HrxMnFX0OxvAC90kk8Bd8Ew==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.5.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3579302},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.5.1.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/9ada39e6dc0527f11f04d281ab51892e/opencode-forge-0.5.1.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-mC6+nnzcP2VOntHH/AnOjxxRret18tIPfafu8So3ibSfmfsIdz7pl4lNpDdRc7cpLdh+xPIdcCWu+uc6vFP5UA==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.5.1_1782831921003_0.6953999822473238","host":"s3://npm-registry-packages-npm-production"}},"0.5.2":{"name":"opencode-forge","version":"0.5.2","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.5.2","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"6d59106519c55db3d378ed1766be97b10bf3ea8b","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.5.2.tgz","fileCount":664,"integrity":"sha512-GLk0q2igaDQWef01iFVEQfpQYcEU79ANbZio8bnounSXdY7qKvFXen5Ld+I/8CpzZmrI0MRQmh0WYBHm5Jo2BA==","signatures":[{"sig":"MEYCIQCQyJbMGVpS++dOYdxTh9OLK5WbEMFZn4WlRSA505NBUwIhAMfG+MrLK0b1cQYZbdkteKdq9pNxwD70g/oLqdczMqzO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.5.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3675731},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.5.2.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/72413c846efba8c5113903f823f96e08/opencode-forge-0.5.2.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-GLk0q2igaDQWef01iFVEQfpQYcEU79ANbZio8bnounSXdY7qKvFXen5Ld+I/8CpzZmrI0MRQmh0WYBHm5Jo2BA==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.5.2_1783176844547_0.8265823700600758","host":"s3://npm-registry-packages-npm-production"}},"0.5.3":{"name":"opencode-forge","version":"0.5.3","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.5.3","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"f633eb726e9954ae5a68302d0d9518f4f739bca4","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.5.3.tgz","fileCount":664,"integrity":"sha512-VIwaQ2nxa/jC6WGOjsyn/4kU9gvjg08+oRMH7CyM5kL5FtGo0kXQE9wPqSX9cPYMjVDPGcN8daaWsc1DcsBNCg==","signatures":[{"sig":"MEYCIQDvn857/LeL8dlV0oLi2/kN+/7xq9cfq5s+Jdmhl14dkwIhAO7R2CrSQuUAG6bnnXwt5fXzCxjuah2Lw0ZWsxuHhztt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.5.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3685013},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.5.3.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/7e226ca14f60b1318710ad5f3f7f9128/opencode-forge-0.5.3.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-VIwaQ2nxa/jC6WGOjsyn/4kU9gvjg08+oRMH7CyM5kL5FtGo0kXQE9wPqSX9cPYMjVDPGcN8daaWsc1DcsBNCg==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.5.3_1783179466524_0.969643382045853","host":"s3://npm-registry-packages-npm-production"}},"0.5.4":{"name":"opencode-forge","version":"0.5.4","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.5.4","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"91b83adf1f0fe875a74bc772dac7b818af5cf0c8","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.5.4.tgz","fileCount":655,"integrity":"sha512-63pDakxihG7MHzUE0MleftLOy/4dQ4jpTct/bDFHURw8mPERvjQR5ecoXAz4NBxdMI+G6fPsXRyCDcbmwLoqog==","signatures":[{"sig":"MEQCIGa+O63NqeessX+l5OCW3AaLHC7mrnkWhTC+b+wU3xraAiBfVR6WpVwLc5QW5XNBp6zZJsEp6Qdbt1jIvT5qF1h7+g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.5.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3672784},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.5.4.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/5347ef4551a447c05d9d78cc90c625b8/opencode-forge-0.5.4.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-63pDakxihG7MHzUE0MleftLOy/4dQ4jpTct/bDFHURw8mPERvjQR5ecoXAz4NBxdMI+G6fPsXRyCDcbmwLoqog==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.5.4_1783457467187_0.3889292265904445","host":"s3://npm-registry-packages-npm-production"}},"0.5.5":{"name":"opencode-forge","version":"0.5.5","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.5.5","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"bfaa5630091e13b533975c420bba6286e931dc92","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.5.5.tgz","fileCount":656,"integrity":"sha512-5+1uJ33oqSop2Z7JNkB0xm5BpIhqUJr3EKoKqM/TCcMLIx2VVL9QlMtri1lI9iajZdPxJWFGteyryZpZlUzuNg==","signatures":[{"sig":"MEQCIH0dzRGUXrPHaH2ymyVKgi6cYlzv8YA7ZgjDJr/Pfw1fAiBRLJPgOsJnAE/0ekvy7R0FDrA3duggC8TKZ6NQQXds4w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.5.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3685061},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.5.5.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/a5c347cddacec7795be4e7acf5643887/opencode-forge-0.5.5.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-5+1uJ33oqSop2Z7JNkB0xm5BpIhqUJr3EKoKqM/TCcMLIx2VVL9QlMtri1lI9iajZdPxJWFGteyryZpZlUzuNg==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.5.5_1783520981876_0.6679749463267939","host":"s3://npm-registry-packages-npm-production"}},"0.5.6":{"name":"opencode-forge","version":"0.5.6","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.5.6","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"a8ae1aa36074b0b8f2e44af701b5bedec62af0c4","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.5.6.tgz","fileCount":657,"integrity":"sha512-pGAsUO7Fq+H33oFLLydZvcousGCk0+PlDIpnTYg4HLHuAVdxPwtlDmnb6NxmOdUwvMTEZzRudFnYgFvkFKpB0w==","signatures":[{"sig":"MEYCIQCMrJGz1JrqYHT5h9VTTAqwiTX/2MrBVFsGa2WDroWBzgIhAJ7+dltxDFH4KE2HmkBf6yge9AAZphDxWt+vECBvQAfA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.5.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3746861},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.5.6.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/e2aa32936bbdb134b1379b874dc023a2/opencode-forge-0.5.6.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-pGAsUO7Fq+H33oFLLydZvcousGCk0+PlDIpnTYg4HLHuAVdxPwtlDmnb6NxmOdUwvMTEZzRudFnYgFvkFKpB0w==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.5.6_1783739289982_0.2819769210432521","host":"s3://npm-registry-packages-npm-production"}},"0.5.7":{"name":"opencode-forge","version":"0.5.7","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.5.7","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"75fefccd844a8443da0fa4d02eaf6419fec4f22c","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.5.7.tgz","fileCount":657,"integrity":"sha512-WWuAASfFSRW5FSqxxdlmHDc/3B9ZM/cVd7FWKmGFhfZSgryr/EsUvoHmURM32KHw3bd4GF5tMqEvz4uwXBq5Rg==","signatures":[{"sig":"MEQCIF1kXkA//UM4i5KDf6DoOgasS3leAOlpKR5PjZK6vyJUAiAlXx/24HYaLd4cjnhXZfa8SJ5id8nS8fQWm7FTSqgyMg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.5.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3768496},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.5.7.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/120ca1217993a20fd067a181f03563d6/opencode-forge-0.5.7.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-WWuAASfFSRW5FSqxxdlmHDc/3B9ZM/cVd7FWKmGFhfZSgryr/EsUvoHmURM32KHw3bd4GF5tMqEvz4uwXBq5Rg==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.5.7_1783791161850_0.901699077386743","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"opencode-forge","version":"0.6.0","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.6.0","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"2ff213f724f2bd2d6930aeedd30b104971176016","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.6.0.tgz","fileCount":657,"integrity":"sha512-M/xG+7XXNnhFjUMvPUHrDQaAHc31K7ZkNBIVNUvvF7rBzspWDdpZisvh4aK1yAYChMUeadbSKDnkw9bMRsrVdw==","signatures":[{"sig":"MEUCIQCBNSKOxG2vSPzc4e2MQI44YhTK5iOlu1lH5pSgOH5znwIgArDZrbBf92CQPC63JIySYOHayqnEVUg7kdw7GeRpgQg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3774574},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.6.0.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/de977a49b162e4ba7310eb8b920304ed/opencode-forge-0.6.0.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-M/xG+7XXNnhFjUMvPUHrDQaAHc31K7ZkNBIVNUvvF7rBzspWDdpZisvh4aK1yAYChMUeadbSKDnkw9bMRsrVdw==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.6.0_1783822580222_0.3503414056074583","host":"s3://npm-registry-packages-npm-production"}},"0.6.2":{"name":"opencode-forge","version":"0.6.2","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.6.2","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"a279bc9237e5af664451bcdd5b140904556e7d20","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.6.2.tgz","fileCount":661,"integrity":"sha512-gYZQhZe0zwYUDX+Mvhq6HtnkbaPS89oiBF6PTSllucdGsefzvOY1X8JEAk+PMd2QnFfhROG43He7f3o2vnczXQ==","signatures":[{"sig":"MEYCIQC2GWguuSAA2L7p4ePVyCgNHNaQpzDYIr4gL1rLnruNMwIhANv+WXvKaAUxlN/yBmUyLRv+jHoxyQmWS6Jk0e+E03zy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3816023},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.6.2.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/98d96eade29a413600763d92dc1e2c85/opencode-forge-0.6.2.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-gYZQhZe0zwYUDX+Mvhq6HtnkbaPS89oiBF6PTSllucdGsefzvOY1X8JEAk+PMd2QnFfhROG43He7f3o2vnczXQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.6.2_1784175820183_0.3006756229722267","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"opencode-forge","version":"0.7.0","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.7.0","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"5db61ed81479d9bd6ef919f03cf7be26fb1521e0","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.7.0.tgz","fileCount":676,"integrity":"sha512-G1BaJ+WXzElgT/qKob5NRoHL+YyD86xz9YQvhLJZIbW4vPyofpU+Q1A3ejaOlJSn9hCABB1ACWSU3ccRpPch4g==","signatures":[{"sig":"MEQCIDAIHztzPGuVfTpcBbLm3v/DnLosgPYi8aqFiSbJhHflAiBTbdbfZrgNDMlGvV6Z2l4hrWBsG6VH15rIDbKG9Wjcwg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3966585},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.7.0.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/7ac6eb22bd33da3397d663f97c1d917c/opencode-forge-0.7.0.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-G1BaJ+WXzElgT/qKob5NRoHL+YyD86xz9YQvhLJZIbW4vPyofpU+Q1A3ejaOlJSn9hCABB1ACWSU3ccRpPch4g==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.7.0_1784606253842_0.4988613925933951","host":"s3://npm-registry-packages-npm-production"}},"0.7.1":{"name":"opencode-forge","version":"0.7.1","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.7.1","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"5883f49b2ef48b72a6bae93e084efd8d30bc6658","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.7.1.tgz","fileCount":676,"integrity":"sha512-77odVDBhlLUJDykDxsln0DGJ8OqWiltVeDR5lAIdraWoNVf/Bt+YluUwQhncSCSWS1HkRDkiWgyd7ttudMfvbQ==","signatures":[{"sig":"MEQCIADHsYq/995KcZ3ERBIxIsycrr0NgjeIGwCAcv6nTfzVAiBiAHKCtJ9qdWdkZTkoXA/YUTD9a69A9SoXkr5V0uPzyw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.7.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":3972031},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.7.1.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/1445feb888964d1a7e58277cb24c24cb/opencode-forge-0.7.1.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-77odVDBhlLUJDykDxsln0DGJ8OqWiltVeDR5lAIdraWoNVf/Bt+YluUwQhncSCSWS1HkRDkiWgyd7ttudMfvbQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.7.1_1784853804040_0.8650987831518251","host":"s3://npm-registry-packages-npm-production"}},"0.7.5":{"name":"opencode-forge","version":"0.7.5","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.7.5","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"4fb5330aa7c7ccd4439b820223c79f4da93a2c25","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.7.5.tgz","fileCount":688,"integrity":"sha512-wi5aST4mIcSgouk4+ZvN8DvMiN4yhkmZlnnW/xtO4FgnwUJcvu5TtYpSlfc6OQhfPxICnKG1OFY35/QyMRQqIQ==","signatures":[{"sig":"MEUCIQDISnbYSeF9lhMcqoblPzKRDvmrgVXEyjXLBN4iNYM+4wIgNn58Rdw8+uNwccID+BYgifWWmSClpLmWnZ07uHWLXlg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.7.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4167655},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.7.5.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/92ea2afa884e30e82ce751e305f34911/opencode-forge-0.7.5.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-wi5aST4mIcSgouk4+ZvN8DvMiN4yhkmZlnnW/xtO4FgnwUJcvu5TtYpSlfc6OQhfPxICnKG1OFY35/QyMRQqIQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.7.5_1785115256632_0.17562213794956127","host":"s3://npm-registry-packages-npm-production"}},"0.7.6":{"name":"opencode-forge","version":"0.7.6","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.7.6","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"8381aaa9599122fd4e4198d85802627d2dfd9264","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.7.6.tgz","fileCount":701,"integrity":"sha512-dzFiXZVSfbs3cJcFHZ9CSWFd60zF09Dl3PYn3HSZUzwLZRKF5xTLVy9dhis0KDLv/7I90PFON4OhSJsSvdNKuw==","signatures":[{"sig":"MEYCIQCN7+xb2ioN2d9pU4/L6pvL07lgdQvT2/hD3CkQrxVJxQIhALGr8Kqp7Ki1poVGNn2yQg9he3SIRBN7sRkN25cqmB2m","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.7.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4206303},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.7.6.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/1c0606e1f8a586ada31886aa6692d693/opencode-forge-0.7.6.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-dzFiXZVSfbs3cJcFHZ9CSWFd60zF09Dl3PYn3HSZUzwLZRKF5xTLVy9dhis0KDLv/7I90PFON4OhSJsSvdNKuw==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.7.6_1785256873680_0.6799555468827534","host":"s3://npm-registry-packages-npm-production"}},"0.7.7":{"name":"opencode-forge","version":"0.7.7","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.7.7","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"7baf9d29da056720c1ac970733e33ccc39a4bf46","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.7.7.tgz","fileCount":701,"integrity":"sha512-CYJNfmwmXUXtL5gOHYkod1GYqKC3VEem6vxay4dnCkK+K1E6mgPPNBK2wbp0bmFMti6fb7P9Te2zTaWL3Cfmcw==","signatures":[{"sig":"MEYCIQD+4qqRu2OAvUlihRrxSXdwoQ/3BgIRxpkN2LV4Wn9iegIhALkobvM4AUu/xnXiPwTSkKEQOYFB7Efy/3fdaTRBlnlo","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.7.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4209042},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.7.7.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/0e3c99ad4f69810201172f6c7fbd5a2b/opencode-forge-0.7.7.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-CYJNfmwmXUXtL5gOHYkod1GYqKC3VEem6vxay4dnCkK+K1E6mgPPNBK2wbp0bmFMti6fb7P9Te2zTaWL3Cfmcw==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.7.7_1785461842346_0.6327418713548001","host":"s3://npm-registry-packages-npm-production"}},"0.7.8":{"name":"opencode-forge","version":"0.7.8","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.7.8","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"1c9d83e24bd3edaf9da75a40a4349d976065c511","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.7.8.tgz","fileCount":712,"integrity":"sha512-WKTtzifPDG0lmP7M4jH3NYpNfgtZoh3PyH9EH9yo9B6w0AQSO3MpHM2pddnSgMlyW5tUc4ZxWQkwAOcwpi4qCQ==","signatures":[{"sig":"MEUCIDzhxAUGHKTRGFb3d+7ZribZA8kRMVeSuzfhssM/N3DQAiEAjBw86jvXmlKlwL8jAktt197ZV/irXl8xIS2u1iyqGP4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.7.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4270137},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.7.8.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/75ee214ef3dabc7ddac94e79f2872c81/opencode-forge-0.7.8.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-WKTtzifPDG0lmP7M4jH3NYpNfgtZoh3PyH9EH9yo9B6w0AQSO3MpHM2pddnSgMlyW5tUc4ZxWQkwAOcwpi4qCQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.7.8_1785633492061_0.650913659836118","host":"s3://npm-registry-packages-npm-production"}},"0.7.9":{"name":"opencode-forge","version":"0.7.9","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.7.9","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"769a6cf1bd4a927fb79a3655d5c941cbb0ec1e93","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.7.9.tgz","fileCount":712,"integrity":"sha512-C+zIkrof2+MKb5vQEFKqm47LzKEhBoUeyYcGgFrXg3QV8uvIinEmraLn0RNU+3MnlrrhxCi4rVCswfJzeTLn+A==","signatures":[{"sig":"MEUCIEIf6rg25MgoCN/ut3Ks7jpilB/CBwhNVGqpYaNoKnprAiEA/bQ7gslnI9AsrgQgOHLvASJIujbFoTAzcVNp/rgBW2c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.7.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4271835},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.7.9.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/66838d640bd2b49c7dd633806946db2b/opencode-forge-0.7.9.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-C+zIkrof2+MKb5vQEFKqm47LzKEhBoUeyYcGgFrXg3QV8uvIinEmraLn0RNU+3MnlrrhxCi4rVCswfJzeTLn+A==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.7.9_1785634991577_0.198399284358026","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"opencode-forge","version":"0.8.0","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.8.0","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"2558eccc749d597fb64ed15aeacd901c83fb83d7","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.8.0.tgz","fileCount":744,"integrity":"sha512-7SY0pEmhYE+hV7wyoMktpuhgu5JT/CxF67pso2SWFbqTa6rldKhQ7L13T3ghBh7t86E+fcNt61GoMrvSj4md5Q==","signatures":[{"sig":"MEYCIQCFVs0ja6a4uGM16+DrutqsBm4sRYb4kRigBSRcakcKewIhAMIDN7Uob+rS4tU4b1GCwQBKRFYVL5KcL3VWGmbNWnZg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.8.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4506976},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.8.0.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/8c1c8f70f82660bdf2d2c46a1a3f3936/opencode-forge-0.8.0.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-7SY0pEmhYE+hV7wyoMktpuhgu5JT/CxF67pso2SWFbqTa6rldKhQ7L13T3ghBh7t86E+fcNt61GoMrvSj4md5Q==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.8.0_1785772310097_0.44190720489388147","host":"s3://npm-registry-packages-npm-production"}},"0.8.1":{"name":"opencode-forge","version":"0.8.1","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.8.1","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"1241887f58fe90fbe546d9546cc38e32241812e4","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.8.1.tgz","fileCount":744,"integrity":"sha512-M4y3Jj3sTBpS4N64ZebxzhsL67DdX7DCB23FbaKE3S+VnwEKaMyaK7IawLVlXNMrTud7qFP252od+bxfap53uA==","signatures":[{"sig":"MEYCIQDr0k15nY7Q0WkznV774A3w4qSbeTlD7TUXF11GLQFR0QIhAK6wigaRBucBwJ4tz4nP+Jt2huD5tc20TapqngMdaMfy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.8.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4508335},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.8.1.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/e3fb577356f4e755c47ba3f73ceb02dd/opencode-forge-0.8.1.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-M4y3Jj3sTBpS4N64ZebxzhsL67DdX7DCB23FbaKE3S+VnwEKaMyaK7IawLVlXNMrTud7qFP252od+bxfap53uA==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.8.1_1785939984890_0.5788260920575645","host":"s3://npm-registry-packages-npm-production"}},"0.8.2":{"name":"opencode-forge","version":"0.8.2","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.8.2","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"001d847906e3f1900a172ac5940f667d58e9fc0b","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.8.2.tgz","fileCount":744,"integrity":"sha512-8pOjJJeZfUexRCwdUYwZRK9O8MJcQDz9Q2jRGHovYRreAsM5vXMbNdOcsPvari2jxu3lcEP6aJAwBELbZMMMjA==","signatures":[{"sig":"MEUCIQD26nl35bE5n1SIRWDgGGJ7fYfMvnBunmfgfVnkexOycgIgSGv/SbtRNoX9UnB+Fgkz6d5jr6SXmiYYxxnmlqp0G+Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.8.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4536643},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.8.2.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/601c757948a8b7f56334493f28e3bf7c/opencode-forge-0.8.2.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-8pOjJJeZfUexRCwdUYwZRK9O8MJcQDz9Q2jRGHovYRreAsM5vXMbNdOcsPvari2jxu3lcEP6aJAwBELbZMMMjA==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.2","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.8.2_1786069767966_0.14310614032393243","host":"s3://npm-registry-packages-npm-production"}},"0.8.3":{"name":"opencode-forge","version":"0.8.3","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.8.3","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"a0eaa7ad887873033cb04f35466c106feba5693b","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.8.3.tgz","fileCount":744,"integrity":"sha512-ynUGq6csOjnBHUk/uh0yeYaxeh/xtYk3JnKzs+hGLYUlg9NUFP/y+5v/hnzkqptKcM+pBtm2EVdGXDynwaOi7Q==","signatures":[{"sig":"MEYCIQDC8tBmGBdEzdGEYWbO1xgjZFnNOPELpNXWkaHVv60vSwIhAMx7dSPhc3GPcvqzWJNbahZrDQYeW/s6XPufBjKhXn/n","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.8.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4542472},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.8.3.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/dbc120ca6dbb62d622c412592eb95833/opencode-forge-0.8.3.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-ynUGq6csOjnBHUk/uh0yeYaxeh/xtYk3JnKzs+hGLYUlg9NUFP/y+5v/hnzkqptKcM+pBtm2EVdGXDynwaOi7Q==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.8.3_1786116200716_0.4035616733443721","host":"s3://npm-registry-packages-npm-production"}},"0.8.4":{"name":"opencode-forge","version":"0.8.4","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.8.4","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"be12bd205f4bcc96af6e9a5cef39c7f7f2ca5fe8","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.8.4.tgz","fileCount":749,"integrity":"sha512-LPfbzCmRgF7GtvR/b+BN81wWDm22fM3EeR+QcCtVAtSCHM4rTdNFqju81EGvtLyKYscSuROYHhmpVv5Duv+8VQ==","signatures":[{"sig":"MEUCIBLT61sqog2IepuEii+kABG1O7tG1p2O+WPs5reJWrSWAiEA9ZcFhM6W2xoQwJBZZNmzAkcUCT9uAgpQn0Dh9d1I9Ik=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.8.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4549573},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.8.4.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/110b525f5d59a57f6821495a09f93e2e/opencode-forge-0.8.4.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-LPfbzCmRgF7GtvR/b+BN81wWDm22fM3EeR+QcCtVAtSCHM4rTdNFqju81EGvtLyKYscSuROYHhmpVv5Duv+8VQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.8.4_1786124962094_0.15159372116185965","host":"s3://npm-registry-packages-npm-production"}},"0.8.5":{"name":"opencode-forge","version":"0.8.5","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.8.5","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"36ccdda7e7da12157a912bc4787754058c85563f","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.8.5.tgz","fileCount":749,"integrity":"sha512-tlFxPWiDyOxBue5urpAi/BduO/QTGY+ajWkHyASRFGNdo1hsyhlnIUFKG/VVmnzB8u+fdFTP9RG6Uk6/ei4yXQ==","signatures":[{"sig":"MEYCIQCeAYtUTc8KyOaJ95cPoBbdn/K4QxgoV1c1+gY+6LYJ9gIhAPQLFAuXEJw9aJpNajHsd7JpQld3bT91T2UcUUIQxHgD","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.8.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4550463},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.8.5.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/93801a8fd5be0184b37612cf108932f5/opencode-forge-0.8.5.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-tlFxPWiDyOxBue5urpAi/BduO/QTGY+ajWkHyASRFGNdo1hsyhlnIUFKG/VVmnzB8u+fdFTP9RG6Uk6/ei4yXQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.8.5_1786144208035_0.0909946221410296","host":"s3://npm-registry-packages-npm-production"}},"0.8.6":{"name":"opencode-forge","version":"0.8.6","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.8.6","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"085995f3ce3ff9ddd85d479208c9f45937c0b833","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.8.6.tgz","fileCount":749,"integrity":"sha512-4ch4ZG0XmxZ9D8GZ0lniWr2OfV6W0KdwqWDPKqV6emdL5kB4Bw9NFZ+pupc95tLPVA27d2cS3I0oBlzUzsv10g==","signatures":[{"sig":"MEYCIQDqoM8XT5YGA7K8EUEpqJQLxO3Vk4YYsFbEERlYnvYtKQIhAMZPy0LfzO99uDEZPUACrJ1ELMF8WA0baBklZy5fXMBs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.8.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4561057},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.8.6.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/d790e54d88defa57d752e0cd0f3dfd34/opencode-forge-0.8.6.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-4ch4ZG0XmxZ9D8GZ0lniWr2OfV6W0KdwqWDPKqV6emdL5kB4Bw9NFZ+pupc95tLPVA27d2cS3I0oBlzUzsv10g==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.8.6_1786288695287_0.6864692423764001","host":"s3://npm-registry-packages-npm-production"}},"0.8.7":{"name":"opencode-forge","version":"0.8.7","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.8.7","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"1c9e4ce2d75026dd5564bcbe1008f801e732248d","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.8.7.tgz","fileCount":744,"integrity":"sha512-/l1ihQXLdlSg0qavFzqHxmdV6qmR31ssYdeFB6AvtmaHTRAZsVQ3JBzp3GxvmCZU9JrG6BJ2b7C+ASj+CmfMuw==","signatures":[{"sig":"MEQCIE2+41weiUn1LrWxQgLkxBBAdNk2nDGUpA8+OXtuEVpbAiBgiFtZux1IXMMnP/HD7aua9dRYmA/0usHPfIIKkEp2gg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.8.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4559023},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.8.7.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/9940d3a0ad731223eeb7c8a0e6829abb/opencode-forge-0.8.7.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-/l1ihQXLdlSg0qavFzqHxmdV6qmR31ssYdeFB6AvtmaHTRAZsVQ3JBzp3GxvmCZU9JrG6BJ2b7C+ASj+CmfMuw==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.8.7_1786325155063_0.08013817809801771","host":"s3://npm-registry-packages-npm-production"}},"0.8.8":{"name":"opencode-forge","version":"0.8.8","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.8.8","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"79a79013ed83184fd320648d3652ab9ea28f2860","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.8.8.tgz","fileCount":744,"integrity":"sha512-4ugc9ooVVAQgQd5Lou36aczjjQzvaMkj+s+azNDc+7XtTuGFgGuHeufERkHFFgXRoki257ZZTOFVvzkf4tOLjQ==","signatures":[{"sig":"MEYCIQDhBhvQPJfx464PHaqZzXnqjUQcbqPKBq405imJZ+ws0QIhAIrYp9yO/BVi31cxTpyCHf47581pvYvQBWZcwtlFUxWq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.8.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4566020},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.8.8.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/ceadf5e17d4ad190fd0725f7c8ca97ed/opencode-forge-0.8.8.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-4ugc9ooVVAQgQd5Lou36aczjjQzvaMkj+s+azNDc+7XtTuGFgGuHeufERkHFFgXRoki257ZZTOFVvzkf4tOLjQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.1","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.8.8_1786389631254_0.09068700632532156","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"opencode-forge","version":"0.9.0","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.9.0","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"cc08d851792efa66d0a1a0da0a3969291622c513","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.9.0.tgz","fileCount":760,"integrity":"sha512-IgAiZLdVsSfS9AsEojjtb7hEMJMltzp/aPATXY3VmNx6SY5gJ/alry/oRRIic9w4iXzNj8y0cMs77RLuc/3N3Q==","signatures":[{"sig":"MEUCIDDfg5z441FsEKEwKqM9lnJSSQuv5KXkS0DjAxfTT52LAiEA0k0ATcMLk7Rbfm3kEdK5pIHQc14AaKXl8w8pPpxUsJU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.9.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":5945251},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.9.0.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/86da8e28ebfc8831bf7da09c36294f8c/opencode-forge-0.9.0.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-IgAiZLdVsSfS9AsEojjtb7hEMJMltzp/aPATXY3VmNx6SY5gJ/alry/oRRIic9w4iXzNj8y0cMs77RLuc/3N3Q==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.2","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.9.0_1786819492867_0.6585163181041795","host":"s3://npm-registry-packages-npm-production"}},"0.9.1":{"name":"opencode-forge","version":"0.9.1","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.9.1","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"2fa4d82f783e97d73576e78c7b12c2647ad09a7e","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.9.1.tgz","fileCount":764,"integrity":"sha512-lBYXaQxHrahArbAK6X5TRUCA40OPEd7+f0/ymL7/SlD/moZIe0RL7pMHSAXsp0lAX8+7UL62Y1P83HRduMIXtA==","signatures":[{"sig":"MEUCIGCBnwyHh2CTxulkhWngqd2T9vGkn/3BSkwYUeAvSFquAiEAgrooH1ymYHwWGAYLfDhxht27g7aTldJ+g4nT2U29QYM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.9.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6111360},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.9.1.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/b515699153d9dc45f7c9a5a8f494c182/opencode-forge-0.9.1.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-lBYXaQxHrahArbAK6X5TRUCA40OPEd7+f0/ymL7/SlD/moZIe0RL7pMHSAXsp0lAX8+7UL62Y1P83HRduMIXtA==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.2","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.9.1_1787235821940_0.4083215848851631","host":"s3://npm-registry-packages-npm-production"}},"0.9.2":{"name":"opencode-forge","version":"0.9.2","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.9.2","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"1e9911a9f2e73942b4552b3d1a27ce092f8b7678","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.9.2.tgz","fileCount":768,"integrity":"sha512-7x/6vt1BsSop3rxLMkNn4LHJ5HuEQtRHwcmsMayXaKUU/U1/vn7flfSF/F/CW82d6Kce2gVU4ifQHyz2eNGh4g==","signatures":[{"sig":"MEQCIFgi3Xp24k0aP9k1ZX3GOqDr7Wd69fXLMEdqlsnw7LQVAiBd9QlH7Py051kT6Afh7AG3RJbeogTda5RChbrhPrTfcw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.9.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6108977},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.9.2.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/31f08deac0ac00ed41f7db03c8a60cb3/opencode-forge-0.9.2.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-7x/6vt1BsSop3rxLMkNn4LHJ5HuEQtRHwcmsMayXaKUU/U1/vn7flfSF/F/CW82d6Kce2gVU4ifQHyz2eNGh4g==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.2","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.9.2_1787848650513_0.4605786017142399","host":"s3://npm-registry-packages-npm-production"}},"0.9.3":{"name":"opencode-forge","version":"0.9.3","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.9.3","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"23034b3289fe7795b2aa9acd2f90c62e466bbaea","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.9.3.tgz","fileCount":772,"integrity":"sha512-AnVIIEveAMgiCREWEuwOBmRGXjck4Dt9miGuhEYCVMPjgtTYiUZUhuO3iZkj5M6puVStvzIVoh9X3R0LhL9s2w==","signatures":[{"sig":"MEUCIHS5Pc3HxgEFIs9wFuPS61ztqRrYXhO18TTPKvNeZjwNAiEA0AUvnUBued9YHx8VN97zQQ0dUdzGFhP+C+TVj/0JSWw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.9.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6137801},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.9.3.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/e58ca5de99dc75df6b712a8abde3bab1/opencode-forge-0.9.3.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-AnVIIEveAMgiCREWEuwOBmRGXjck4Dt9miGuhEYCVMPjgtTYiUZUhuO3iZkj5M6puVStvzIVoh9X3R0LhL9s2w==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.2","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.9.3_1788278409038_0.3990060656363741","host":"s3://npm-registry-packages-npm-production"}},"0.9.4":{"name":"opencode-forge","version":"0.9.4","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@0.9.4","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"a5fc5893269ef0de61404fbe64b9e6377038d52e","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-0.9.4.tgz","fileCount":780,"integrity":"sha512-WqldQO3kj/fFi/edcb4+UEDRQ1k7kuKCBcKlrN4ZEOG/UV/lJdOzz7YkJUGjq77VjpQZtuKLL9mQG3zfj5xQiQ==","signatures":[{"sig":"MEQCICpzT9ujxJy7LMwJV/+AaZhhS39AEHOngHTMGqzrAIMGAiBsDWU8p6V3s6CFPKE24bgJRwaUwgObiuhKAFyMfD49UA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@0.9.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6196399},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-0.9.4.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/21f1feb7ed4ca66a198b36730305a03d/opencode-forge-0.9.4.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-WqldQO3kj/fFi/edcb4+UEDRQ1k7kuKCBcKlrN4ZEOG/UV/lJdOzz7YkJUGjq77VjpQZtuKLL9mQG3zfj5xQiQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.2","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_0.9.4_1788534356597_0.22535961925048564","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"opencode-forge","version":"1.0.0","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@1.0.0","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"a46e9e88f80062f2111f90a17064926a91fcd6d0","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-1.0.0.tgz","fileCount":789,"integrity":"sha512-pPS2V6eGpSgjHG70khyF7EZ99QkgCwtyax00ENwsVZvKYsW6v187yDxOVCOBxOR2DdaFiNbOfPq+NneI6/X/4g==","signatures":[{"sig":"MEYCIQC/lpTuOWw49HfCU+Pj5NeWxAjjlFlZ2zGeyQRbm8KmeAIhAMXo037ZcGYObeObWAt3CR1cU3mgV4FnmnPzLHfXFtxm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6348054},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-1.0.0.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/3f34339357c82e326b09f0de8370af3c/opencode-forge-1.0.0.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-pPS2V6eGpSgjHG70khyF7EZ99QkgCwtyax00ENwsVZvKYsW6v187yDxOVCOBxOR2DdaFiNbOfPq+NneI6/X/4g==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.2","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_1.0.0_1789057193875_0.24167703253967376","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"opencode-forge","version":"1.0.2","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@1.0.2","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"ae44819e2a40feedce6890716148268a46dc4aae","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-1.0.2.tgz","fileCount":802,"integrity":"sha512-Dla/GZyN8IwgyNt+CFusUpuGhCR0bQ6JHAQq2g12OJQUDKT3qFNkb1jGtAe9zHIof6QhhmB4+s2bXSGcN5almQ==","signatures":[{"sig":"MEYCIQC9AnoQEc8ADztzo6yUg9iOiBLSecNXfJ3tnZ2IMHmlCgIhAP9ra8+2qHh09pZq8WNDyfs1MTPHSs1rtGBFEdgJrEcf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQD0o3U3S6pS8Qs8lsWDXpgcN0o4DgcSb/h+fYVN/js7hwIhAOpClIUFvohkRcF1PElxpMn5/orvGMoytp0RirLueWQB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@1.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6405468},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-1.0.2.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/5d4ff6b30df22be7ff7a3344b2559c4a/opencode-forge-1.0.2.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-Dla/GZyN8IwgyNt+CFusUpuGhCR0bQ6JHAQq2g12OJQUDKT3qFNkb1jGtAe9zHIof6QhhmB4+s2bXSGcN5almQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.2","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_1.0.2_1789841126341_0.6061097359130119","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"opencode-forge","version":"1.0.3","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@1.0.3","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"6e4d8e2182dc0f1d483d467377b063ac76986ea2","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-1.0.3.tgz","fileCount":802,"integrity":"sha512-hxp9bbI3rUBnzR+1Fwwe9i3Xuj/9SDqzQXDIwrXUc96r/Ki6aYpgvx4EzEfG+K4PjZfGeaXTY0OGZtvIIuQqag==","signatures":[{"sig":"MEUCIQDTFtzaPjCdSKzafa2wyMmlDBNHOdEFBNc833+ZX8AoPgIgMcFyj0BWKbhy2ujd6PZbCB4G6m6nhqgXRnN2iujrna4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCCEslbKGltvgrfqmLQBnngdrHGbBJasNrDeZdaCJOASgIgNuqdbkmOzzLGRbeYPVeaKQ/tCfN8EBzZbJl72B8DTXI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@1.0.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6405420},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-1.0.3.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=1.15.5"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/3ef9bc308d80c928ea4c38243d118cfb/opencode-forge-1.0.3.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-hxp9bbI3rUBnzR+1Fwwe9i3Xuj/9SDqzQXDIwrXUc96r/Ki6aYpgvx4EzEfG+K4PjZfGeaXTY0OGZtvIIuQqag==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.2","dependencies":{"jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode-ai/sdk":"1.15.5","@opencode-ai/plugin":"1.15.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_1.0.3_1789849086420_0.8186981335367127","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"opencode-forge","version":"1.1.0","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@1.1.0","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"7098ba4ed7ccf98218d6137385489d52acd06a4f","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-1.1.0.tgz","fileCount":858,"integrity":"sha512-f60/UX7ZFq8+CWYBO5a63BfSTyueQ75eV9Bq+d3Dkdg6QicB6f3PjluReg7ZJEbOffO+16qZusZt7mUAxSrerQ==","signatures":[{"sig":"MEYCIQDBFd/zDUPA4bR7fd5M1TVdeXvAJtkMWv5QvD2pcqn2ygIhAJvXr1M/R0Mf7OyNy7pdP9hcHrYgOkShrBDRxQXwFz95","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIBQdyx7Qi9MgTTYCTac+2AroksZDE4MOvTo4wZqB05qqAiBI5s4ps0SK2Xsh4eCZjCdJPfplGX3heswEr2yqfLNQnQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6192915},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-1.1.0.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=2.0.14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/4b2537be2beed11a1a25e5eb9d88bf61/opencode-forge-1.1.0.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-f60/UX7ZFq8+CWYBO5a63BfSTyueQ75eV9Bq+d3Dkdg6QicB6f3PjluReg7ZJEbOffO+16qZusZt7mUAxSrerQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"4.1.8","jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode/plugin":"2.0.14"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","@opencode/client":"2.0.14","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_1.1.0_1790261847911_0.07686870495518727","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"opencode-forge","version":"1.1.1","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@1.1.1","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"156d3f348f9700a5ed902d4d928ca9caa742df5e","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-1.1.1.tgz","fileCount":858,"integrity":"sha512-4A1AImCDYJ45XwihrWKV2t3InfjJrrnvfcT5QghtRI5P72A/mFkCW3rnsOX5mL4zXa7Y0gFwSmIWM9V641XNuQ==","signatures":[{"sig":"MEUCIQDvtAoEqJPhMp7MtVqd6cgZ91TgvW1woTlDGRia4IqLzwIgZ0cpFs2Tths6cI5n6iKcCzE+3uF6qmXB/Tv93BWhGMc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFvn536Y38RD5qryIk4V5JeCsd2xniqfOk/dwLajrpliAiEApLGUN09R5eFouKmwmip3Ws062Oo9HYf5SMTQfQJSJtc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6197083},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-1.1.1.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=2.0.14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/ad1127245332724cc470d4fe6fda5f05/opencode-forge-1.1.1.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-4A1AImCDYJ45XwihrWKV2t3InfjJrrnvfcT5QghtRI5P72A/mFkCW3rnsOX5mL4zXa7Y0gFwSmIWM9V641XNuQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"4.1.8","jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode/plugin":"2.0.14"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","@opencode/client":"2.0.14","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_1.1.1_1790304060455_0.5070417755228005","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"opencode-forge","version":"1.2.0","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"author":{"name":"Chris Scott"},"license":"MIT","_id":"opencode-forge@1.2.0","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"homepage":"https://github.com/chriswritescode-dev/opencode-forge","bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"bin":{"opencode-forge":"dist/install/cli.js"},"dist":{"shasum":"0b8cd097d01d251cf8d1afdd36338f64464fbc26","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-1.2.0.tgz","fileCount":902,"integrity":"sha512-6ELxkrgk2Pw5j2cfR3d13NDkbLiEmqVu0/8ZG3kEVHwHViXWWycQmC6/FfLiLoSNxNWW6hvr+PdlVCa9pGCqfQ==","signatures":[{"sig":"MEUCIHGRgfCoOL4hbKjhu+BM7tncNQSGoqqGWSQexz2ta2/lAiEA8LbkRVN9xmsDiExgJAGQwNy/WL8KeXbJmUNk3GZYsZg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIBIgS6JgVA1JQ6JvThgM0/RHVBB1un67edIS2HGWH+QBAiEAuskYrwLAowqei6eGtPMpyTTUg/NZ4SL+I9lGqzyD0Oc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6514919},"main":"./dist/index.js","type":"module","_from":"file:opencode-forge-1.2.0.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","engines":{"opencode":">=2.0.14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"_resolved":"/tmp/d4bd43e5c51d9f0d6a1a75d7ac8b27e5/opencode-forge-1.2.0.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-6ELxkrgk2Pw5j2cfR3d13NDkbLiEmqVu0/8ZG3kEVHwHViXWWycQmC6/FfLiLoSNxNWW6hvr+PdlVCa9pGCqfQ==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"_nodeVersion":"22.23.2","dependencies":{"zod":"4.1.8","jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode/plugin":"2.0.14"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","@opencode/client":"2.0.14","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/opencode-forge_1.2.0_1790551164442_0.926334357566611","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"_id":"opencode-forge@1.2.1","bin":{"opencode-forge":"dist/install/cli.js"},"bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"dist":{"shasum":"7084cb98a8b07d4008b87d0f9d45c440ec9a5f12","tarball":"https://registry.npmjs.org/opencode-forge/-/opencode-forge-1.2.1.tgz","fileCount":902,"integrity":"sha512-9RzBVwBPFS5x/hJ++fHncUhQ4haCSHQ5e+EhOz/B8HanLeait5FfYMEMeGUCRBUInmB2bTNXevoOdc7sSkMV5Q==","signatures":[{"sig":"MEQCIGJn5emD071CuYUSSMUM0EntIpdtpNNNk3PSunbA91SvAiBSMgqDACCOUToc66SC3sr26sYgVftpVhHPTRjvdVGyTg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCY/W6Jb7lgKhC77j5sl5auQXduwNebN+r/SXZSF/fZTwIgRcnAwdEU3g6FO6dov/JSDbokOEyIkZwO4G7dUhP456o="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/opencode-forge@1.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6514888},"main":"./dist/index.js","name":"opencode-forge","type":"module","_from":"file:opencode-forge-1.2.1.tgz","image":"https://raw.githubusercontent.com/chriswritescode-dev/opencode-forge/main/opengraph-image.png","types":"./dist/index.d.ts","author":{"name":"Chris Scott"},"engines":{"opencode":">=2.0.14"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./tui":{"types":"./dist/tui.d.ts","import":"./dist/tui.js"},"./server":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"license":"MIT","scripts":{"docs":"pnpm docs:api","lint":"eslint .","test":"vitest run","build":"bun scripts/build.ts","setup":"bun src/install/cli.ts","docs:api":"typedoc","dashboard":"bun scripts/dashboard.ts","typecheck":"tsc --noEmit"},"version":"1.2.1","_npmUser":{"name":"chriswritescode","email":"chris@chriswritescode.dev"},"homepage":"https://github.com/chriswritescode-dev/opencode-forge","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"_resolved":"/tmp/c011d0613fa6156b1f056d81aadf078f/opencode-forge-1.2.1.tgz","oc-plugin":["server","tui"],"_integrity":"sha512-9RzBVwBPFS5x/hJ++fHncUhQ4haCSHQ5e+EhOz/B8HanLeait5FfYMEMeGUCRBUInmB2bTNXevoOdc7sSkMV5Q==","repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"_npmVersion":"10.9.8","description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","directories":{},"maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"_nodeVersion":"22.23.2","dependencies":{"zod":"4.1.8","jsonc-parser":"^3.3.1","web-tree-sitter":"0.25.10","@opencode/plugin":"2.0.14"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.2.0","vitest":"^2.1.8","typedoc":"^0.28.19","solid-js":"^1.9.12","bun-types":"latest","happy-dom":"^20.10.3","@eslint/js":"^10.0.1","typescript":"^5.7.3","@types/node":"^25.6.0","@opentui/core":"0.1.105","@opentui/solid":"0.1.105","better-sqlite3":"^12.9.0","@opencode/client":"2.0.14","typescript-eslint":"^8.58.0","eslint-plugin-solid":"^0.14.5","@esbuild/linux-arm64":"^0.21.5","typedoc-plugin-markdown":"^4.11.0","@typescript-eslint/parser":"^8.58.0","@rollup/rollup-linux-arm64-gnu":"^4.60.3","@typescript-eslint/eslint-plugin":"^8.58.0"},"peerDependencies":{"@opentui/core":">=0.1.105","@opentui/solid":">=0.1.105"},"peerDependenciesMeta":{"@opentui/core":{"optional":true},"@opentui/solid":{"optional":true}},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/opencode-forge_1.2.1_1790606226166_0.13217623868964057"}}},"time":{"created":"2026-04-13T16:35:19.418Z","modified":"2026-09-28T14:37:06.760Z","0.1.5":"2026-04-11T18:05:19.220Z","0.1.6":"2026-04-13T16:35:19.621Z","0.1.9":"2026-04-15T21:33:13.636Z","0.1.10":"2026-04-16T22:31:18.080Z","0.2.0":"2026-04-18T14:43:18.754Z","0.2.1":"2026-04-18T17:57:29.912Z","0.2.2":"2026-04-19T16:44:03.192Z","0.2.3":"2026-04-20T20:16:30.070Z","0.2.4":"2026-04-21T20:27:49.217Z","0.2.5":"2026-04-22T16:44:28.913Z","0.3.0":"2026-05-05T17:14:20.594Z","0.3.1":"2026-05-05T19:53:57.054Z","0.3.2":"2026-05-06T04:19:33.061Z","0.3.6-beta.0":"2026-05-12T20:45:08.471Z","0.4.0":"2026-05-13T22:48:40.378Z","0.4.1":"2026-05-14T21:54:13.898Z","0.4.2":"2026-05-16T22:16:02.990Z","0.4.3":"2026-05-18T02:59:34.324Z","0.4.4":"2026-05-19T22:16:13.619Z","0.4.5":"2026-05-20T03:58:39.890Z","0.4.6":"2026-05-21T21:20:25.158Z","0.4.7":"2026-05-22T11:55:30.965Z","0.4.8":"2026-05-22T13:23:40.607Z","0.4.9":"2026-05-23T00:43:36.008Z","0.4.10":"2026-05-23T13:51:16.816Z","0.4.11":"2026-05-24T21:46:50.628Z","0.4.12":"2026-05-25T16:25:01.438Z","0.4.13":"2026-06-03T21:37:59.193Z","0.4.14":"2026-06-04T13:13:51.164Z","0.4.15":"2026-06-05T03:28:47.799Z","0.4.16":"2026-06-06T16:46:22.255Z","0.4.17":"2026-06-08T13:55:51.363Z","0.4.18":"2026-06-08T14:16:54.865Z","0.4.19":"2026-06-11T01:39:13.540Z","0.4.20":"2026-06-12T00:30:29.827Z","0.4.21":"2026-06-12T19:09:41.192Z","0.5.0-beta.1":"2026-06-19T16:30:15.577Z","0.5.0":"2026-06-28T19:08:51.622Z","0.5.1":"2026-06-30T15:05:21.191Z","0.5.2":"2026-07-04T14:54:04.711Z","0.5.3":"2026-07-04T15:37:46.734Z","0.5.4":"2026-07-07T20:51:07.408Z","0.5.5":"2026-07-08T14:29:42.159Z","0.5.6":"2026-07-11T03:08:10.151Z","0.5.7":"2026-07-11T17:32:42.012Z","0.6.0":"2026-07-12T02:16:20.429Z","0.6.2":"2026-07-16T04:23:40.344Z","0.7.0":"2026-07-21T03:57:34.039Z","0.7.1":"2026-07-24T00:43:24.232Z","0.7.5":"2026-07-27T01:20:56.781Z","0.7.6":"2026-07-28T16:41:13.895Z","0.7.7":"2026-07-31T01:37:22.568Z","0.7.8":"2026-08-02T01:18:12.255Z","0.7.9":"2026-08-02T01:43:11.763Z","0.8.0":"2026-08-03T15:51:50.283Z","0.8.1":"2026-08-05T14:26:25.112Z","0.8.2":"2026-08-07T02:29:28.153Z","0.8.3":"2026-08-07T15:23:20.898Z","0.8.4":"2026-08-07T17:49:22.358Z","0.8.5":"2026-08-07T23:10:08.222Z","0.8.6":"2026-08-09T15:18:15.524Z","0.8.7":"2026-08-10T01:25:55.263Z","0.8.8":"2026-08-10T19:20:31.451Z","0.9.0":"2026-08-15T18:44:53.097Z","0.9.1":"2026-08-20T14:23:42.141Z","0.9.2":"2026-08-27T16:37:30.698Z","0.9.3":"2026-09-01T16:00:09.255Z","0.9.4":"2026-09-04T15:05:56.839Z","1.0.0":"2026-09-10T16:19:54.163Z","1.0.2":"2026-09-19T18:05:26.502Z","1.0.3":"2026-09-19T20:18:06.554Z","1.1.0":"2026-09-24T14:57:28.086Z","1.1.1":"2026-09-25T02:41:00.600Z","1.2.0":"2026-09-27T23:19:24.580Z","1.2.1":"2026-09-28T14:37:06.334Z"},"bugs":{"url":"https://github.com/chriswritescode-dev/opencode-forge/issues"},"author":{"name":"Chris Scott"},"license":"MIT","homepage":"https://github.com/chriswritescode-dev/opencode-forge","keywords":["opencode","iterative-loops","ai-agent","plugin","forge"],"repository":{"url":"git+https://github.com/chriswritescode-dev/opencode-forge.git","type":"git"},"description":"OpenCode Forge - autonomous dev loops, plan storage, and sandboxing for OpenCode","maintainers":[{"name":"chriswritescode","email":"chris@chriswritescode.dev"}],"readme":"<p align=\"center\">\n  <img src=\"docs/logo.webp\" alt=\"OpenCode Forge logo\" />\n</p>\n\n<h1 align=\"center\">OpenCode Forge</h1>\n\n<p align=\"center\">\n  <strong>Loops, plans, sandboxing, and code review for <a href=\"https://opencode.ai\">OpenCode</a> AI agents</strong>\n</p>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/opencode-forge\"><img src=\"https://img.shields.io/npm/v/opencode-forge\" alt=\"npm\" /></a>\n  <a href=\"https://www.npmjs.com/package/opencode-forge\"><img src=\"https://img.shields.io/npm/dm/opencode-forge\" alt=\"npm downloads\" /></a>\n  <a href=\"https://github.com/chriswritescode-dev/opencode-forge/blob/main/LICENSE\"><img src=\"https://img.shields.io/github/license/chriswritescode-dev/opencode-forge\" alt=\"License\" /></a>\n</p>\n\n## Quick Start\n\n```bash\npnpm add opencode-forge\n```\n\nForge requires OpenCode 2.x (`engines.opencode` is `>=2.0.14`).\n\n### Install\n\nAdd to your `opencode.json` to enable Forge's server-side hooks, tools, and agents:\n\n```json\n{\n  \"plugins\": [\"opencode-forge@latest\"]\n}\n```\n\nOpenCode 2 loads the plugin's TUI surface from the same entry, so no separate terminal config is needed. A config-directory install writes a `cli.json` entry instead — see [Plugin-directory install](#plugin-directory-install).\n\n### Plugin-directory install\n\nInstead of editing the plugin arrays by hand, the installer can wire the plugin into opencode's config directory:\n\n```bash\nbunx opencode-forge --link        # point the server shim and cli.json at the current build\nbunx opencode-forge --vendor      # self-contained copy (portable)\n```\n\nFrom a source checkout, use `pnpm run setup --link` or `pnpm run setup --vendor`. Both modes write a server shim `<configDir>/plugin/opencode-forge.js` (OpenCode loads the server plugin from `*.js` files there) and register the TUI in `cli.json`'s `plugins` array. In a non-interactive shell the flags still require `-y`, `-f`, or `-k`.\n\n| | `--link` | `--vendor` |\n| --- | --- | --- |\n| Picks up a rebuild | Yes — the shim and `cli.json` point at the live `dist` directory | No — re-run after upgrade |\n| Portable to another machine | No — absolute path to this checkout | Yes |\n| Payload in config dir | Shim file and `cli.json` entry | Full copy (~6.5 MB) |\n| Needs re-run after upgrade | No | Yes |\n\nLoop worktrees use OpenCode 2's native worktree and location model: no environment variable and no version floor. See [Workspace Integration](docs/workspaces.md).\n\n## What Forge Adds\n\nForge ships two plugin entrypoints plus standalone management surfaces:\n\n- **Server plugin** — enabled through the `plugins` array in `opencode.json`. Provides the core hooks, tools, agents, plan storage, loop orchestration, review persistence, and sandbox support.\n- **TUI plugin** — the loop sidebar, the unified execution dialog (launch, restart, and per-loop launch settings), and the per-session host-sandbox and auto-approve toggles. It loads from the server plugin entry, or from the `cli.json` `plugins` array, and reads and changes Forge state over the server's RPC surface, so it also works attached to a remote OpenCode server.\n- **Installer CLI** — installs/upgrades bundled prompts and skills, and registers the plugin in opencode's config directory (`--link`/`--vendor`/`--unlink`).\n- **Dashboard** — an observability interface launchable from the TUI command palette (`Open web dashboard`) or via `pnpm dashboard` (source checkouts only).\n\nFor a quick tour of the loop itself, see [Loop Flow](#loop-flow) below.\n\n## Limitations\n\nThe server side — loops, plans, review findings, tools, agents, commands, permissions, sandboxing, and event handling — all run on OpenCode 2.x. These are the current constraints:\n\n- **Subtask commands** — `review` and `review-plan` run inline in the invoking session instead of spawning a subtask. Every Forge command runs its turn as the command's agent, then Forge switches the session back to the agent it had before.\n- **Session transcripts** — OpenCode 2 exposes a session's history only from its latest compaction onward. Loop usage totals stay exact because Forge reconciles them against the session's cumulative cost and tokens, attributing the pre-compaction share to the session's model.\n- **TUI/server version** — the TUI reads and changes Forge state over the server's RPC surface, so it must run the same Forge version as the server plugin. On a mismatch it warns, and a restart requested by a TUI older than the RPC is not handled; restart the OpenCode server after upgrading.\n\n## Features\n\n- **Plans** — architect authors validated plans directly into SQL storage with `plan-write`/`plan-edit`\n- **Execution** — approved-plan launch paths plus direct `/execute-goal` loops in dedicated worktree sessions; grouped execution launches features from a PRD as parallel loops\n- **Loops** — iterative coding/auditing with an isolated git worktree and optional msb sandbox\n- **Review Findings** — persistent, loop-scoped review findings across loop sessions\n- **TUI** — loop sidebar, a unified execution dialog with model, variant, and per-loop launch settings, and per-session host-sandbox and auto-approve toggles\n- **Dashboard** — a repo shell for loops, groups, findings, and plans, with loop state\n\n## Documentation\n\n- [Agents and Slash Commands](docs/agents-and-commands.md) — the bundled `code`, `architect`, and `auditor` agents, hidden loop agents, and every slash command.\n- [Planning and Execution Workflow](docs/workflow.md) — how the architect authors plans, the three execution modes, variants, and grouped execution.\n- [Tools Reference](docs/tools.md) — full arguments, section-scoping behavior, restart options, and sandbox shell details.\n- [Loop System](docs/loop-system.md) — phases, section lifecycle, review findings, session rotation, stall detection, model configuration, and termination.\n- [TUI Plugin](docs/tui.md) — sidebar, palette commands, the execution dialog, per-loop launch settings, per-session auto-approve, model selection, and setup.\n- [Dashboard](docs/dashboard.md) — views, hash deep links, and the HTTP API.\n- [Workspace Integration](docs/workspaces.md) — OpenCode workspace registration, requirements, and failure behavior.\n- [Sandbox](docs/sandbox.md) — host requirements, image building and loading, network access, secrets, bind mounts, and resource defaults.\n- [Configuration Reference](docs/configuration.md) — every option in `forge-config.jsonc`, plus the installer and bundled-asset sync.\n- [Architecture](docs/architecture.md) — plugin architecture, module layout, hooks, storage, and data flow.\n- [Modules](docs/modules.md) — the source tree and each module's public surface.\n- [Common Issues](docs/troubleshooting.md) — worktree launch failures and workspace prerequisites.\n\n## Screenshots\n\nThe unified execution dialog — plan, execution model and variant, and auditor model and variant selection:\n\n![Execution dialog](docs/images/execution-dialog.webp)\n\nThe rest of the dialog — loop name, the per-loop settings summary, and the launch modes:\n\n![Execution options](docs/images/execution-options.webp)\n\nThe per-loop settings submenu — max iterations and sandbox resource overrides:\n\n![Loop settings](docs/images/loop-settings.webp)\n\n## Loop Flow\n\nThe diagram below shows the overall flow of the Forge loop system — from loop trigger and provisioning through coding/auditing, section advancement, the final audit, and the optional post-action phase. See [Loop System](docs/loop-system.md) for the full lifecycle. Source: [`diagrams/loop-flow.mmd`](diagrams/loop-flow.mmd).\n\n![Loop Flow](diagrams/loop-flow.webp)\n\n## Development\n\n```bash\npnpm build      # Compile TypeScript to dist/\npnpm test       # Run tests\npnpm typecheck  # Type check without emitting\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}