{"_id":"@5x-ai/5x-cli","_rev":"14-24061c76f6893c2ef246a9d0f3746b48","name":"@5x-ai/5x-cli","dist-tags":{"beta":"1.1.1-beta.3","latest":"1.3.0"},"versions":{"0.1.0":{"name":"@5x-ai/5x-cli","version":"0.1.0","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@0.1.0","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"c0d987d0c462979b9f9286bd2dbbf367ed12270e","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-0.1.0.tgz","fileCount":51,"integrity":"sha512-TR0o+vHDHSuntGk7JD3khUZu+e/kmPEAnOw4YZ45ehxahs+WHDUyV/18941tYSIXgu2zWDcY55eroqMZZZjRwA==","signatures":[{"sig":"MEUCIQCcWcRPFlA3RTApdCoSO3VVKheBMv4xW8CbswwUcndX/wIgEjMghpakSlSoa4w3XmbrLa4NN4AIh/3ZuQLaipG+PLo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":389694},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"ff26a8610fb67b6d2e7c6a7355c7a2488cf712a8","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"bun test --concurrent --dots","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"_npmVersion":"11.7.0","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","citty":"^0.1.6","dotenv":"^16.6.1","@opencode-ai/sdk":"^1.2.6"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_0.1.0_1772131681435_0.4693588801368507","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@5x-ai/5x-cli","version":"0.1.1","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@0.1.1","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"e115813f07085c1147388fa756bbe10846920cf0","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-0.1.1.tgz","fileCount":51,"integrity":"sha512-S51BnwLkpgMNPlDvv/zwBYMEZSEFtMTfpDJFRwj7uWO94rjNk3YIrAXTb1xt7V3z4sSkUnx5G2gCmwNl/jsz5Q==","signatures":[{"sig":"MEUCIHDGYDn/tus7ZyS6rMsr0OGLRHPPPmRs0wbxoSPDc2KFAiEAhXmvmEps7NDw2szKQBMyLk5b9asOuynMW4DRvPIzsKY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":391617},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"930b1f90a1de6c54a95b1720dc95f70a746aa7cf","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"bun test --concurrent --dots","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"_npmVersion":"11.7.0","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","citty":"^0.1.6","dotenv":"^16.6.1","@opencode-ai/sdk":"^1.2.6"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_0.1.1_1772138560602_0.9273090937530597","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@5x-ai/5x-cli","version":"0.2.0","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@0.2.0","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"322d3d0e95b23249aff14c249674584d6c206736","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-0.2.0.tgz","fileCount":52,"integrity":"sha512-fM8ZWLuk/dtElP0UAyRp5ymQLDNKt9+7OIxekA0tUSIuhjoFtxheEpYywgRrlYd7PFjkKeP0ThkZ5pWZRPCzSA==","signatures":[{"sig":"MEUCIQDaFQGc4gTlMN63r9vOWZbknO5XoyWeCwh2LBlGus2FXQIgLsIZ1Sh6ZlNXcyGU3nTtEN6uf656ljL1Fc+wA3WTZ8c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":414454},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"948617e8eeabcbc06da3da37790383214b2738cd","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"bun test --concurrent --dots","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"_npmVersion":"11.7.0","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","citty":"^0.1.6","dotenv":"^16.6.1","@opencode-ai/sdk":"^1.2.6"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_0.2.0_1772564914326_0.7933946052326424","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@5x-ai/5x-cli","version":"1.0.0","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@1.0.0","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"bd733d38390becc5f3878a3509574c7b8bed63fa","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-1.0.0.tgz","fileCount":107,"integrity":"sha512-zWToW08c58wwLDIHTy5Axy1RxG0GRC2bjvUlf8yKj+Upyuu08I97YIVDM7EM+9p5Yz1fEShgrRNpDpQ5bAryIA==","signatures":[{"sig":"MEQCIHatskPxx8WldP0XqBGwFHLByOjp/kEAY5caNFYLJnphAiAYN1xATZOZSJTZtd0Bs+K5OG2DMLd8DIarvN2Te8tIDg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":678200},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"9f949de6015345dab28a5fa95d7ec3bad6a4fbdd","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"(unset GIT_DIR GIT_WORK_TREE GIT_INDEX_FILE; bun test --concurrent --dots)","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"workspaces":["packages/*"],"_npmVersion":"11.7.0","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","dotenv":"^16.6.1","commander":"^13.1.0","@opencode-ai/sdk":"^1.2.6","@decimalturn/toml-patch":"^1.0.2","@commander-js/extra-typings":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.7.0","@5x-ai/provider-sample":"workspace:*","@5x-ai/provider-invalid":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_1.0.0_1773873236646_0.5791551805973236","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@5x-ai/5x-cli","version":"1.1.0","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@1.1.0","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"80f93c784c50d19b1830c12f51607029c8186a5b","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-1.1.0.tgz","fileCount":123,"integrity":"sha512-yAK3gnt6LmYd4Xb2NiyC7AJe7hni4RlSvnqLgDr5I893QzTqxvrceDYpksOVEOYMNFPGMI+rR/AuSgM3W4pC8Q==","signatures":[{"sig":"MEUCIHQjUE8o8UugOrqMk86PrC7IdDyMPHs7+ckB28LvjaPQAiEAgZ/RcMEMkyv4QituO+pTqhOmZHQrNhq539ghdneSgNU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":738921},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"d029bcc4d354f8e0b19395f2ae04a28c2e17d805","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"(unset GIT_DIR GIT_WORK_TREE GIT_INDEX_FILE; bun test --concurrent --dots)","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"workspaces":["packages/*"],"_npmVersion":"11.7.0","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","dotenv":"^16.6.1","commander":"^13.1.0","@opencode-ai/sdk":"^1.2.6","@decimalturn/toml-patch":"^1.0.2","@commander-js/extra-typings":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.7.0","@5x-ai/provider-sample":"workspace:*","@5x-ai/provider-invalid":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_1.1.0_1774480551606_0.7742390157414056","host":"s3://npm-registry-packages-npm-production"}},"1.1.1-beta.0":{"name":"@5x-ai/5x-cli","version":"1.1.1-beta.0","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@1.1.1-beta.0","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"0e88597291a57d8f909c0a399fee3cae8f926398","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-1.1.1-beta.0.tgz","fileCount":125,"integrity":"sha512-qL33aPkPcdvXWpJZEZPTas7U+Pt4u/hIeQKCGPIUptJb8kcygpMj0wEoea/afnwgRCMHPWJJEwtvwrzGWN9UUA==","signatures":[{"sig":"MEQCICjAfWwiFLeLNPJiTlbQcQXerEbSVSrO0GAH415ATl5AAiB/L/DBaTIUpRf8fgO56IJtJKTqS2TTAcxUeD/bFWQTHw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":749486},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"363bed88bb211e7cac2634948df3e7f57b676e0b","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"bun test --concurrent --dots","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"workspaces":["packages/*"],"_npmVersion":"11.7.0","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","dotenv":"^16.6.1","commander":"^13.1.0","@opencode-ai/sdk":"^1.2.6","@decimalturn/toml-patch":"^1.0.2","@commander-js/extra-typings":"^13.1.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@types/bun":"latest","typescript":"^5.7.0","@5x-ai/provider-sample":"workspace:*","@5x-ai/provider-invalid":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_1.1.1-beta.0_1774523365427_0.6677914177627624","host":"s3://npm-registry-packages-npm-production"}},"1.1.1-beta.1":{"name":"@5x-ai/5x-cli","version":"1.1.1-beta.1","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@1.1.1-beta.1","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"50d341fadb8fb7a99b5e4aac1e010127dd5bb1fe","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-1.1.1-beta.1.tgz","fileCount":125,"integrity":"sha512-oPvxbkVjNepPHkyibKbTpbp+e9HGg8Yj+4+tk96jjTdQ+VaTQj1AsPlyy9M/yT75T+8J741VSsHmTtP7KudCAg==","signatures":[{"sig":"MEYCIQCSsn0DTPOL4elqFz0Dmigk71YdM+BSBcoCouAC2YLmswIhALdmFxEt3G9cTk4B12xVAEN/PhzC39SxuXsJjP+JiGVF","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":754351},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"6aca8a6c881e1bbce659799d2f6d331c9ce45262","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"bun test --concurrent --dots","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"workspaces":["packages/*"],"_npmVersion":"11.7.0","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","dotenv":"^16.6.1","commander":"^13.1.0","@opencode-ai/sdk":"^1.2.6","@decimalturn/toml-patch":"^1.0.2","@commander-js/extra-typings":"^13.1.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@types/bun":"latest","typescript":"^5.7.0","@5x-ai/provider-sample":"workspace:*","@5x-ai/provider-invalid":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_1.1.1-beta.1_1774627597979_0.07761361037132608","host":"s3://npm-registry-packages-npm-production"}},"1.1.1-beta.2":{"name":"@5x-ai/5x-cli","version":"1.1.1-beta.2","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@1.1.1-beta.2","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"0453e8a3ecda72f5d894c0badbea26ad4c2d4845","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-1.1.1-beta.2.tgz","fileCount":126,"integrity":"sha512-lro8hnlgEm/J12Q0vt/425HXU4WkmpbJWCm9a5z7kBt7k1aVmcsEOwhPoDwy329YhxWuv8fTXtY3o8PpSohnrg==","signatures":[{"sig":"MEQCID6SppGYre0xTOquxH1hzEHx2pfz9PoVQ9D5mKeq92AvAiA29LcP8UJ2mxUB2wbGVq3UgKRj/VNR2YteXtJEH3zMlA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":757823},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"91facad4b9b4b399f1de9b7b95f87f70c64cf12c","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"bun test --concurrent --dots","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"workspaces":["packages/*"],"_npmVersion":"11.7.0","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","dotenv":"^16.6.1","commander":"^13.1.0","@opencode-ai/sdk":"^1.2.6","@decimalturn/toml-patch":"^1.0.2","@commander-js/extra-typings":"^13.1.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@types/bun":"latest","typescript":"^5.7.0","@5x-ai/provider-sample":"workspace:*","@5x-ai/provider-invalid":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_1.1.1-beta.2_1774632653895_0.7499087668062616","host":"s3://npm-registry-packages-npm-production"}},"1.1.1-beta.3":{"name":"@5x-ai/5x-cli","version":"1.1.1-beta.3","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@1.1.1-beta.3","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"d14ca59c61f55c496a23b615e3c4e5c8797a0b21","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-1.1.1-beta.3.tgz","fileCount":126,"integrity":"sha512-ca6QnnXSElWptVPeKSxqtBn40awMIHQ3uDyAKF7zuJqfHKAwNVDvbE6AzNrxHPHzdHWQ8gxKfi/cmxpPfY6Mhw==","signatures":[{"sig":"MEYCIQDgvkbnFr73K1+KFOqrDJoJO5aHqrbkQcZgGNPsYPW1cAIhANk19slB8HGJas+SKMKic+7L7jBnVaJPL2NsyycLDB2K","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":757887},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"31f023a202f688bdba70d9591da8f3455b9c03ad","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"bun test --concurrent --dots","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"workspaces":["packages/*"],"_npmVersion":"11.7.0","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","dotenv":"^16.6.1","commander":"^13.1.0","@opencode-ai/sdk":"^1.2.6","@decimalturn/toml-patch":"^1.0.2","@commander-js/extra-typings":"^13.1.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@types/bun":"latest","typescript":"^5.7.0","@5x-ai/provider-sample":"workspace:*","@5x-ai/provider-invalid":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_1.1.1-beta.3_1774633547146_0.857786595874461","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@5x-ai/5x-cli","version":"1.1.1","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@1.1.1","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"5e5080f43de85bfd51d3e3ed189f82a4406a6e49","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-1.1.1.tgz","fileCount":126,"integrity":"sha512-0P+5r2fj13St3R86/aLLoAjLtvHsAtEznOQoSbv2Ef4yQI6V9FhOICU3eAve/C2iWe2zW7cNWLvG1IfpU04hyQ==","signatures":[{"sig":"MEUCIGZ+A9gvGTWqbd3JAqyRqqjhW7u8OhaUjD26blSY7g2fAiEAncsFJ3vyAkn42+V79I6tTYTJnuFEVRtRWn51xxzu5y4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":758829},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"a2d149c04f8ea314547df8521f3ba79fa1337b53","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"bun test --concurrent --dots","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"workspaces":["packages/*"],"_npmVersion":"11.7.0","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"25.2.1","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","dotenv":"^16.6.1","commander":"^13.1.0","@opencode-ai/sdk":"^1.2.6","@decimalturn/toml-patch":"^1.0.2","@commander-js/extra-typings":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.7.0","@5x-ai/provider-sample":"workspace:*","@5x-ai/provider-invalid":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_1.1.1_1774952107839_0.9962042066038856","host":"s3://npm-registry-packages-npm-production"}},"1.2.1":{"name":"@5x-ai/5x-cli","version":"1.2.1","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@1.2.1","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"7061e3251d713c8f37e2d909a693c35fbe8ffc1d","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-1.2.1.tgz","fileCount":126,"integrity":"sha512-TUH2lOsgTxAPuKRdzyHnA87/0teVd9GHqWswgzP6xTu/YslmcyTPUvohisDd6PJ/vu+VksdaDSWK95eXiNZn7A==","signatures":[{"sig":"MEUCIFNJHpHo+syHQLkRuym+h9jHc6opbQdhYpd7jYhJANv2AiEA1Jz8M258w37OkAF/RJNr/Ahsq0pMBTLgxT3hDDV/NrM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":781469},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"06303f6f70153a4e353cf0141eee5e4d8cd4cdc2","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"bun test --concurrent --dots","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"workspaces":["packages/*"],"_npmVersion":"10.8.2","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"20.20.1","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","dotenv":"^16.6.1","commander":"^13.1.0","@opencode-ai/sdk":"^1.2.6","@decimalturn/toml-patch":"^1.0.2","@commander-js/extra-typings":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.7.0","@5x-ai/provider-sample":"workspace:*","@5x-ai/provider-invalid":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_1.2.1_1775303973424_0.6243792358884936","host":"s3://npm-registry-packages-npm-production"}},"1.2.2":{"name":"@5x-ai/5x-cli","version":"1.2.2","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@1.2.2","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"2cb51a367ee7363305e22befbe0d0850ff43cd20","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-1.2.2.tgz","fileCount":130,"integrity":"sha512-ib1WEcmnsBa1iJoY8LKod4FN6cn84k6BanVCy4+Qianvn6P5FEmndDu66bg3mDApZaoU5gGbWfhWMHXfAKWjuQ==","signatures":[{"sig":"MEUCIGdtlFERgXEMMNm3/LfULbFZJX5qavIQ0DgQkSA2zTXqAiEAo48gxQL3chRKbBCaWYQ0Y2SLdUKSdz8yzIgfoWbpfc8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":885365},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"0475196141832268772c6a5dad8782d3219a0260","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"bun test --concurrent --dots","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"workspaces":["packages/*"],"_npmVersion":"11.12.1","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"24.15.0","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","dotenv":"^16.6.1","commander":"^13.1.0","@opencode-ai/sdk":"^1.2.6","@decimalturn/toml-patch":"^1.0.2","@commander-js/extra-typings":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.7.0","@5x-ai/provider-sample":"workspace:*","@5x-ai/provider-invalid":"workspace:*","@5x-ai/provider-claude-code":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_1.2.2_1779145552195_0.9697545966355721","host":"s3://npm-registry-packages-npm-production"}},"1.2.3":{"name":"@5x-ai/5x-cli","version":"1.2.3","keywords":["5x","cli","ai","automation","opencode","planning","review"],"author":{"name":"Flying Banana Productions"},"license":"MIT","_id":"@5x-ai/5x-cli@1.2.3","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"bin":{"5x":"src/bin.ts"},"dist":{"shasum":"8767ee3bdafa69b243d4c8a76e11406434e60c56","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-1.2.3.tgz","fileCount":130,"integrity":"sha512-ZHxCwGqoJUSFpisEX7ZegkVfrRNSr57o1roMo53YQ5tC0kjWyK62Ccm7sm5GZW5w45MV8hThfCIKhzVRImJlkQ==","signatures":[{"sig":"MEUCIQCTuGnSYxYOqaukc+HGLQHmyX6s74S6UORUV+l3QLSICgIgIehFrq1NMay2LBMTtwLPfGzLrtrv0d/XfIbkjovo0JI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@5x-ai%2f5x-cli@1.2.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":898051},"type":"module","types":"./src/index.ts","engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"41a7189470dd111d729485a24b9bebb84fe6935b","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"bun test --concurrent --dots","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","approver":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"},"trustedPublisher":{"id":"github","oidcConfigId":"oidc:7823a75a-a675-4d8a-bb57-99b9722786ca"}},"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"workspaces":["packages/*"],"_npmVersion":"11.16.0","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","dotenv":"^16.6.1","commander":"^13.1.0","@opencode-ai/sdk":"^1.2.6","@decimalturn/toml-patch":"^1.0.2","@commander-js/extra-typings":"^13.1.0"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"latest","typescript":"^5.7.0","@5x-ai/provider-sample":"workspace:*","@5x-ai/provider-invalid":"workspace:*","@5x-ai/provider-claude-code":"workspace:*","@5x-ai/provider-cursor-agent":"workspace:*"},"_npmOperationalInternal":{"tmp":"tmp/5x-cli_1.2.3_1786369698249_0.4406882500808016","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"_id":"@5x-ai/5x-cli@1.3.0","bin":{"5x":"src/bin.ts"},"bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"dist":{"shasum":"0475b3dff6f1d53a9ce0bae46b57fea648f6d94f","tarball":"https://registry.npmjs.org/@5x-ai/5x-cli/-/5x-cli-1.3.0.tgz","integrity":"sha512-WQPKbXQUd3PYVU7OahZwu1S2e4vRbmRIIE6gx1yHcFSspBdJ1U7y4b8wXjn4wJo4erUJIPg545ppbt6U4DdUrg==","fileCount":130,"unpackedSize":898611,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@5x-ai%2f5x-cli@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCsvRwGngHsmEr95WyxF1O8K0i8F54DgFNRCABCZPRpEQIgMN1owyGdarXGhpK4kN845HlabDSulQCftv6iP0WTYfE="}]},"name":"@5x-ai/5x-cli","type":"module","types":"./src/index.ts","author":{"name":"Flying Banana Productions"},"engines":{"bun":">=1.1.0"},"exports":{".":"./src/index.ts"},"gitHead":"11f218fb587d083a464054a3e3b88b40829432d9","license":"MIT","scripts":{"dev":"bun run src/bin.ts","lint":"bunx --bun @biomejs/biome check src/ test/","test":"bun test --concurrent --dots","build":"bun build --compile src/bin.ts --outfile dist/5x","typecheck":"bunx --bun tsc --noEmit","prepublishOnly":"bun run typecheck && bun run test"},"version":"1.3.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7823a75a-a675-4d8a-bb57-99b9722786ca"},"approver":{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}},"homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","keywords":["5x","cli","ai","automation","opencode","planning","review"],"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"workspaces":["packages/*"],"_npmVersion":"11.16.0","description":"AI-assisted author/reviewer workflow CLI for implementation plans","directories":{},"maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"_nodeVersion":"24.18.0","dependencies":{"zod":"^3.24.0","yaml":"^2.7.0","dotenv":"^16.6.1","commander":"^13.1.0","@opencode-ai/sdk":"^1.2.6","@decimalturn/toml-patch":"^1.0.2","@commander-js/extra-typings":"^13.1.0"},"devDependencies":{"@types/bun":"latest","typescript":"^5.7.0","@5x-ai/provider-sample":"workspace:*","@5x-ai/provider-invalid":"workspace:*","@5x-ai/provider-claude-code":"workspace:*","@5x-ai/provider-cursor-agent":"workspace:*"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/5x-cli_1.3.0_1786408218783_0.5752783185810506"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-26T18:48:01.264Z","modified":"2026-08-11T00:30:19.339Z","0.1.0":"2026-02-26T18:48:01.586Z","0.1.1":"2026-02-26T20:42:40.772Z","0.2.0":"2026-03-03T19:08:34.482Z","1.0.0":"2026-03-18T22:33:56.790Z","1.1.0":"2026-03-25T23:15:51.757Z","1.1.1-beta.0":"2026-03-26T11:09:25.639Z","1.1.1-beta.1":"2026-03-27T16:06:38.318Z","1.1.1-beta.2":"2026-03-27T17:30:54.054Z","1.1.1-beta.3":"2026-03-27T17:45:47.306Z","1.1.1":"2026-03-31T10:15:08.086Z","1.2.1":"2026-04-04T11:59:33.609Z","1.2.2":"2026-05-18T23:05:52.422Z","1.2.3":"2026-08-10T13:48:18.408Z","1.3.0":"2026-08-11T00:30:18.913Z"},"bugs":{"url":"https://github.com/Flying-Banana-Productions/5x-engineer/issues"},"author":{"name":"Flying Banana Productions"},"license":"MIT","homepage":"https://github.com/Flying-Banana-Productions/5x-engineer/tree/main/5x-cli","keywords":["5x","cli","ai","automation","opencode","planning","review"],"repository":{"url":"git+https://github.com/Flying-Banana-Productions/5x-engineer.git","type":"git","directory":"5x-cli"},"description":"AI-assisted author/reviewer workflow CLI for implementation plans","maintainers":[{"name":"reichert-fbp","email":"spalmer@flyingbananaproductions.com"}],"readme":"# 5x CLI\n\nA toolbelt of CLI primitives for AI-assisted implementation workflows. Manages run lifecycle, agent invocation, quality gates, and human interaction -- designed to be driven by an orchestrating agent loaded with a skill, or composed in scripts.\n\n## How It Works\n\n5x uses a three-layer architecture:\n\n```\nLayer 3: Orchestrating Agent (OpenCode 5x-orchestrator, Claude Code, ...)\n         Loaded with a 5x skill (.md). Makes workflow decisions.\n              |\n              |  calls CLI commands as tools\n              v\nLayer 2: 5x CLI (this tool)\n         Stateless primitives returning JSON envelopes.\n         Manages persistence (SQLite), logging, sub-agent invocation.\n              |\n              |  native subagents (preferred) or 5x invoke (fallback)\n              v\nLayer 1: Sub-Agents (Workers)\n         Author and reviewer agents.\n         Preferred: harness-native subagents (5x-plan-author, 5x-code-author, 5x-reviewer).\n         Fallback: 5x invoke with pluggable provider (OpenCode provider ships by default).\n```\n\nThe CLI does not decide what to do next -- it provides building blocks. Orchestration logic lives in **skills**: markdown documents loaded into your agent session that describe the workflow (which commands to run, when to retry, when to ask the human).\n\n### Native-First Subagent Execution\n\nWhen running inside a supported harness (OpenCode or Cursor), author and reviewer work is\ndelegated to **native subagents** rather than external subprocess invocations.\nThe `5x-orchestrator` agent renders task prompts with `5x template render`,\nlaunches the appropriate native child agent, and validates structured results\nwith `5x protocol validate`. This keeps all sub-agent work visible as native\nchild sessions in the harness UI.\n\n`5x invoke` is retained as a fallback transport for unsupported harnesses and\nfor environments where the custom 5x agents have not been installed.\n\n## Requirements\n\n- [Bun](https://bun.sh) >= 1.1.0\n- Git repository (recommended; safety checks and worktree features depend on it)\n- [OpenCode](https://opencode.ai) installed and on `PATH` (for native subagent and fallback invocation)\n- Provider API keys configured for the models you use (e.g., via `.env` / `.env.local`)\n\n## Install\n\n```bash\nnpm install -g @5x-ai/5x-cli\n```\n\nVerify:\n\n```bash\n5x --help\n```\n\n## Quick Start\n\n### Option A: Native OpenCode Workflow (Recommended)\n\nThe recommended workflow uses OpenCode's native subagents so all author and\nreviewer sessions appear as first-class child sessions in the OpenCode TUI.\n\n1. Initialize in your repo:\n\n```bash\n5x init\n```\n\n2. Edit `5x.toml` -- set your models, quality gates, and paths.\n\n3. Install the native OpenCode agents and skills:\n\n```bash\n# Project scope — installs to .opencode/skills/ and .opencode/agents/:\n5x init opencode project\n\n# Or user scope — installs to ~/.config/opencode/skills/ and ~/.config/opencode/agents/:\n5x init opencode user\n```\n\n> **Note:** OpenCode uses `~/.config/opencode/` for user-scope assets, not\n> `~/.opencode/`. The `5x init opencode user` command installs to the correct\n> XDG-style path automatically.\n\n4. Start an OpenCode session using the `5x-orchestrator` agent:\n\n```bash\nopencode\n# Select or @mention the 5x-orchestrator agent, then describe your task:\n# \"Use the 5x-plan skill to generate an implementation plan from docs/product/my-feature-prd.md\"\n```\n\nThe orchestrator loads the skill, delegates author and reviewer work to native\nsubagents (`5x-plan-author`, `5x-code-author`, `5x-reviewer`), and guides you\nthrough decision points.\n\n### Option B: Universal Harness Workflow (Any Tool)\n\nUse this when your tool does **not** have a dedicated 5x harness plugin (for\nexample: Claude Code, Windsurf, Aider, or custom setups).\n\nThe universal harness installs only skills (no agent profiles) to\nagentskills.io convention paths. Delegation runs through `5x invoke`.\n\n1. Initialize in your repo:\n\n```bash\n5x init\n```\n\n2. Edit `5x.toml` -- set your models, quality gates, and paths.\n\n3. Install universal skills:\n\n```bash\n# Project scope -> .agents/skills/\n5x harness install universal --scope project\n\n# User scope -> ~/.agents/skills/\n5x harness install universal --scope user\n```\n\n4. Start your agent session and load the skill:\n\n```bash\n# Example with any AI coding tool (e.g., Claude Code or Windsurf):\n<your-tool-command>\n# Then in the session, load the 5x-plan skill and point it at your PRD:\n# \"Use the 5x-plan skill to generate an implementation plan from docs/product/my-feature-prd.md\"\n```\n\nThe skill guides the agent through the full workflow: plan generation, review\ncycles, phase execution with quality gates. In this mode, author/reviewer\ndelegation uses `5x invoke`.\n\n5. Monitor progress from another terminal:\n\n```bash\n5x run watch --run <run-id> --human-readable\n```\n\n### Option C: Native Cursor Workflow\n\nUse this when you run 5x from Cursor IDE or `cursor-agent` CLI.\n\n1. Initialize in your repo:\n\n```bash\n5x init\n```\n\n2. Install Cursor harness assets:\n\n```bash\n# Project scope (recommended): installs to .cursor/skills/, .cursor/agents/, .cursor/rules/\n# Requires `5x init` first.\n5x harness install cursor --scope project\n\n# User scope: installs to ~/.cursor/skills/ and ~/.cursor/agents/\n# (rules are not file-backed at user scope)\n5x harness install cursor --scope user\n```\n\n3. Start Cursor in the repo and trigger a workflow:\n\n```text\nUse 5x to generate an implementation plan from docs/product/my-feature-prd.md\n```\n\nCursor will use the installed `5x-orchestrator` rule (project scope), load the\nright skill (`5x-plan`, `5x-plan-review`, or `5x-phase-execution`), and\ndelegate to `5x-plan-author`, `5x-code-author`, and `5x-reviewer`.\n\n> **User-scope limitation:** Cursor user rules are settings-managed (not\n> file-backed). `5x harness install cursor --scope user` installs skills and\n> subagents only.\n\n> **Reducing approval prompts:** By default Cursor asks for confirmation on\n> terminal commands and file edits. To run 5x workflows without interruption:\n>\n> - **Terminal commands:** `Cursor Settings → Agents → Auto-run mode` →\n>   set to **\"Run everything\"** (full auto) or **\"Use allowlist\"** and add\n>   `bun`, `git`, `5x` to the list.\n> - **File edits:** `Cursor Settings → Agents` → disable\n>   **\"External file edit protection\"**.\n>\n> The installed `5x-permissions.mdc` rule (`alwaysApply: true`) also\n> pre-authorizes subagents to run `5x` commands and edit files without\n> asking in-chat, reducing the \"may I?\" pauses independent of IDE settings.\n\n### Option D: Bash Scripting\n\nCommands return JSON envelopes (`{ \"ok\": true, \"data\": {...} }`) and compose via Unix pipes. Context (run ID, template variables) flows through the pipe chain automatically.\n\n```bash\n# Pipe-composed: run_id and plan_path flow from init to invoke automatically\n5x run init --plan docs/development/001-impl-example.md | \\\n  5x invoke author author-next-phase --var phase_number=1 --record\n```\n\nFor workflows that need branching logic, capture the envelope and use `jq`:\n\n```bash\nPLAN=\"docs/development/001-impl-example.md\"\nRUN_ID=$(5x run init --plan \"$PLAN\" | jq -r '.data.run_id')\n\n# --record auto-records using the template's step_name\nAUTHOR_OUT=$(5x invoke author author-next-phase --run \"$RUN_ID\" --record \\\n  --var phase_number=1)\nRESULT=$(echo \"$AUTHOR_OUT\" | jq -r '.data.result.result')\n\n# Quality output piped to run record (step name + run from CLI flags)\n5x quality run | 5x run record \"quality:check\" --run \"$RUN_ID\"\n\n5x run complete --run \"$RUN_ID\"\n```\n\nFor native subagent workflows (render → detect → subagent → validate):\n\n```bash\nRUN_ID=$(5x run init --plan \"$PLAN\" | jq -r '.data.run_id')\n\n# Render the task prompt\nRENDERED=$(5x template render author-next-phase --run \"$RUN_ID\" \\\n  --var phase_number=1)\nPROMPT=$(echo \"$RENDERED\" | jq -r '.data.prompt')\nSTEP=$(echo \"$RENDERED\" | jq -r '.data.step_name')\n\n# Detect native agent; fallback to 5x invoke\nif [[ -f \".opencode/agents/5x-code-author.md\" ]] || \\\n   [[ -f \"$HOME/.config/opencode/agents/5x-code-author.md\" ]]; then\n  RESULT=<native subagent result JSON>\nelse\n  RESULT=$(5x invoke author author-next-phase --run \"$RUN_ID\" \\\n    --var phase_number=1 2>/dev/null)\nfi\n\n# Validate + record (works for both paths)\necho \"$RESULT\" | 5x protocol validate author \\\n  --run \"$RUN_ID\" --record --step \"$STEP\"\n```\n\nSee [`examples/author-review-loop.sh`](examples/author-review-loop.sh) for a full working script with error handling and review-fix cycles.\n\n## Upgrading from v0.2.0\n\nv1 is a ground-up redesign. The high-level orchestrator commands (`5x plan`, `5x plan-review`, `5x run <plan>`) have been removed. Orchestration now lives in agent skills, not TypeScript state machines.\n\n**What changed:**\n\n- **Commands replaced:** `5x plan`, `5x plan-review`, `5x run <plan>`, `5x status` are gone. Use the v1 primitives (`run init/state/record/complete`, `invoke author/reviewer`, `quality run`, etc.) via skills or scripts.\n- **Flags removed:** `--auto`, `--ci`, `--tui-listen` no longer exist. Non-interactive behavior is handled by `5x prompt` commands with `--default` values. Skills decide retry/escalation logic.\n- **Config:** `maxAutoIterations` is deprecated (still accepted with a warning). Use `maxStepsPerRun` instead. New fields: `author.provider`, `reviewer.provider` for pluggable agent backends.\n- **Database:** Schema migrated from v0 tables (`agent_results`, `quality_results`, `run_events`) to a unified `steps` journal. In-progress v0 runs are marked aborted on first migration. No manual migration needed.\n- **Output:** All commands return structured JSON envelopes to stdout. Streaming commands (`run watch`) are documented exceptions.\n\nFor the full architecture rationale, see [`docs/v1/100-architecture.md`](docs/v1/100-architecture.md).\n\n## Skills\n\nSkills are markdown documents that teach an agent how to drive the 5x workflow. Three are bundled:\n\n| Skill | Purpose |\n| --- | --- |\n| `5x-plan` | Generate an implementation plan from a PRD/TDD, then review/fix until approved |\n| `5x-plan-review` | Run iterative review/fix cycles on an existing plan |\n| `5x-phase-execution` | Execute phases: author, quality gates, code review, fix loops |\n\n### Choosing a Harness\n\nUse one harness per install scope:\n\n| Harness | Use when | Delegation mode |\n| --- | --- | --- |\n| `opencode` | You use OpenCode and want native subagents in the harness UI | Native subagents (`Task` tool + `5x protocol validate`) |\n| `cursor` | You use Cursor IDE / `cursor-agent` and want native subagents + project rule orchestration | Native Cursor subagents + `5x protocol validate` |\n| `universal` | Your tool has no dedicated 5x harness plugin | `5x invoke` |\n\n### Installing Skills\n\nSkills are installed via the harness system.\n\nOpenCode installs skills **and** native subagent profiles:\n\n```bash\n# Project scope: installs skills under .opencode/skills/ AND\n# native subagent profiles under .opencode/agents/\n5x harness install opencode --scope project\n\n# User scope: installs under ~/.config/opencode/skills/ and\n# ~/.config/opencode/agents/ (XDG path, NOT ~/.opencode/)\n5x harness install opencode --scope user\n```\n\nResolved model strings for agent frontmatter use **cwd-anchored** layered config (`5x.toml` / `5x.toml.local`), consistent with `5x invoke`—run the command from a monorepo package directory when that package owns the overrides.\n\nUniversal installs skills only (cross-client agentskills.io convention):\n\n```bash\n# Project scope: .agents/skills/<name>/SKILL.md\n5x harness install universal --scope project\n\n# User scope: ~/.agents/skills/<name>/SKILL.md\n5x harness install universal --scope user\n```\n\nCursor installs skills + native subagents in both scopes, and installs the\norchestrator rule in project scope:\n\n```bash\n# Project scope: .cursor/skills/, .cursor/agents/, .cursor/rules/\n# Requires `5x init` first.\n5x harness install cursor --scope project\n\n# User scope: ~/.cursor/skills/ and ~/.cursor/agents/ (no rules)\n5x harness install cursor --scope user\n```\n\n`.agents/skills/` (project) and `~/.agents/skills/` (user) are the\n[agentskills.io](https://agentskills.io) cross-client convention paths.\n5x writes files there; discovery behavior depends on each host tool's\nimplementation.\n\n> **OpenCode path note:** OpenCode discovers user-scope assets at\n> `~/.config/opencode/skills/` and `~/.config/opencode/agents/` (XDG-style),\n> **not** `~/.opencode/`. Running `5x harness install opencode --scope user`\n> writes to the correct path. If you install manually, ensure you use\n> `~/.config/opencode/`, not `~/.opencode/`.\n\n### Customizing\n\nSkills are plain markdown. Edit the installed copies directly:\n\n- OpenCode: `.opencode/skills/` or `~/.config/opencode/skills/`\n- Cursor: `.cursor/skills/` or `~/.cursor/skills/`\n- Universal: `.agents/skills/` or `~/.agents/skills/`\n\nRe-run `5x harness install <harness> --scope <scope> --force` to reset them\nto bundled defaults.\n\n## Commands\n\nAll commands return JSON: `{ \"ok\": true, \"data\": {...} }` on success, `{ \"ok\": false, \"error\": {\"code\": \"...\", \"message\": \"...\"} }` on failure. Use `--help` on any command for full flag details.\n\n### Run Lifecycle\n\n```bash\n5x run init --plan <path> [--allow-dirty] [--worktree [<path>]]\n                                                # Start/resume run; optionally ensure/attach worktree\n5x run state --run <id>                        # Get run state, steps, and summary\n5x run record [step] [--run <id>] [--result '{}'] [--phase <p>] [--iteration <n>]\n5x run complete --run <id> [--status aborted]  # Complete or abort a run\n5x run reopen --run <id>                       # Re-activate a completed/aborted run\n5x run list [--plan <path>] [--status active]  # List runs\n5x run watch --run <id> [--human-readable]     # Tail agent logs in real-time\n```\n\n`run init` is idempotent -- returns the existing active run if one exists for the plan. `run record` uses INSERT OR IGNORE semantics (first write wins; corrections are new iterations). When piping from `invoke`, step name, run ID, result, and metadata are auto-extracted: `5x invoke ... | 5x run record`.\n\n`run init --plan` takes the implementation plan output path, not the requirements doc path. The file may not exist yet, but it must live under `paths.plans`.\n\n**Windows notes:**\n- In PowerShell, prefer `--result @path/to/result.json` or `Get-Content result.json -Raw | 5x run record ... --result -` over inline JSON.\n- On older Windows PowerShell, use `;` or separate lines instead of `&&`.\n- Prefer `ConvertFrom-Json` over `jq` in PowerShell-based examples.\n- If you are using 5x skills in a Windows-native harness, load the optional `5x-windows` skill alongside the core 5x skills.\n- If `5x plan phases <canonical-path>` cannot resolve a mapped worktree copy, use `worktree_plan_path` from `5x run state`.\n\n### Native Subagent Primitives\n\n```bash\n5x template render <template> [--run <id>] [--var key=value ...] [--session <id>] [--new-session]\n5x template list                           # List all available prompt templates\n5x template describe <template>            # Show detailed template metadata\n```\n\n`template render` renders a task prompt template and returns the result in a JSON envelope. When\n`--run` is passed, resolves run/worktree context and appends a `## Context`\nblock with the effective working directory. When `--session` is passed and a\n`<template>-continued` variant exists, the shorter continued template is used\nautomatically. `--new-session` forces a fresh session (skips continued-template selection).\nThis is a CLI continuity control (template selection + `continuePhaseSessions`\nenforcement), and is independent from native subagent continuity ids\n(`task_id` in OpenCode harness, `resume` in Cursor harness).\n\n```json\n{\n  \"ok\": true,\n  \"data\": {\n    \"template\": \"reviewer-plan\",\n    \"selected_template\": \"reviewer-plan-continued\",\n    \"step_name\": \"reviewer:review\",\n    \"prompt\": \"<rendered markdown>\",\n    \"declared_variables\": [\"plan_path\", \"review_path\"],\n    \"run_id\": \"run_abc123\",\n    \"plan_path\": \"/abs/path/to/plan.md\",\n    \"worktree_root\": \"/abs/path/to/worktree\"\n  }\n}\n```\n\n`template list` returns all available prompt templates with descriptions. `template describe` shows full metadata including version, variables, defaults, step name, and whether an on-disk override is active.\n\n```bash\n5x protocol validate <author|reviewer> [--run <id>] [--record] [--step <name>]\n                                        [--phase <name>] [--iteration <n>]\n                                        [--require-commit | --no-require-commit]\n5x protocol emit <author|reviewer> [flags]\n```\n\n`protocol validate` validates structured output from a native subagent or `5x invoke` fallback.\nAccepts JSON via stdin or `--input`. Auto-detects input format: if the JSON\ncontains an `ok` field (from `5x invoke`), unwraps `.data.result` before\nvalidation; otherwise treats the input as raw structured JSON (from a native\nsubagent). A single fenced JSON block is also accepted as input, but native\nsubagents should still return raw JSON with no markdown fences. With `--record`,\nrecords the validated result as a run step in one command.\n\n`--require-commit` defaults to `true` for author validation. Use\n`--no-require-commit` to opt out.\n\n`protocol emit` lets agents construct canonical structured output from CLI flags or piped JSON. Success output is raw canonical JSON to stdout (not wrapped in the `{ok, data}` envelope) so agents can use it directly as their structured result. Accepts alternative field names (e.g., `verdict` → `readiness`) and normalizes to the canonical schema.\n\n### Agent Invocation (Fallback Transport)\n\n```bash\n5x invoke author <template> [--run <id>] [--var key=value ...] [--record]\n5x invoke reviewer <template> [--run <id>] [--var key=value ...] [--record]\n```\n\nInvokes a sub-agent with a prompt template via an external provider (fallback\nwhen native subagents are not installed). The author returns `AuthorStatus`\n(`result: complete | needs_human | failed`), the reviewer returns\n`ReviewerVerdict` (`readiness: ready | ready_with_corrections | not_ready`).\n\nKey flags:\n- `--run` -- run ID (optional when piping from an upstream command)\n- `--var key=value` -- template variables (repeatable). Supports `--var key=@path` (read from file) and `--var key=@-` (read from stdin)\n- `--record` / `--record-step` -- auto-record the result as a run step using the template's `step_name`\n- `--phase`, `--iteration` -- metadata for `--record`\n- `--session` -- resume an existing session (auto-selects an abbreviated prompt template if a `-continued` variant exists)\n- `--model` (override config), `--timeout` (seconds), `--quiet` (suppress stderr), `--stderr` (force stderr in non-TTY)\n\nTemplates are resolved from `.5x/templates/prompts/` (user overrides, if installed via `5x init --install-templates`) then bundled defaults. Use `5x template list` to see all available templates.\n\n### Quality Gates\n\n```bash\n5x quality run [--record --run <id>]    # Execute quality gates, optionally auto-record\n```\n\nRuns each command in `qualityGates` from config sequentially. Returns `{ passed: bool, results: [...] }`. With `--record`, the result is auto-recorded as a `quality:check` step. Can also pipe to `run record`: `5x quality run | 5x run record \"quality:check\" --run <id>`.\n\n### Inspection\n\n```bash\n5x plan list [--exclude-finished]       # List all plans with completion status\n5x plan phases <path>                   # Parse plan into phases with progress\n5x diff [--since <ref>] [--stat]        # Git diff (working tree or since ref)\n```\n\n### Human Interaction\n\n```bash\n5x prompt choose <message> --options a,b,c [--default a]\n5x prompt confirm <message> [--default yes]\n5x prompt input <message> [--multiline]\n```\n\nWhen stdin is not a TTY: returns `--default` if provided, otherwise exits with code 3 (`NON_INTERACTIVE`). This makes scripts safe by default.\n\n### Setup\n\n```bash\n5x init [--force] [--install-templates]              # Scaffold config, templates, DB\n5x harness install <name> [--scope user|project] [--force]  # Install harness skills + agents\n```\n\n`--install-templates` scaffolds editable prompt templates to `.5x/templates/prompts/` for customization. Without this flag, the CLI uses bundled templates directly (recommended for most users).\n\n`5x init opencode project` installs skills under `.opencode/skills/` and agent profiles under\n`.opencode/agents/` (requires `5x init` to have been run first).\n`5x init opencode user` installs under `~/.config/opencode/skills/` and `~/.config/opencode/agents/`.\n\n### Worktrees\n\n```bash\n5x worktree create --plan <path> [--branch <name>]   # Create isolated git worktree\n5x worktree attach --plan <path> --path <worktree>   # Attach existing git worktree to plan\n5x worktree detach --plan <path>                     # Remove plan->worktree mapping only\n5x worktree remove --plan <path> [--force]            # Remove worktree\n5x worktree list                                      # List active worktrees\n```\n\n`run init --worktree` resolves a plan worktree automatically: reuse existing DB mapping, attach a unique matching git worktree, or create a new default worktree when none exists. Use `--worktree <path>` (or `--worktree-path <path>`) to attach an explicit existing path. If worktree creation fails, `run init` now errors clearly and does not silently fall back to the main checkout; rerun without `--worktree` only when shared-checkout execution is intentional.\n\n`worktree detach` reports the post-detach state (`worktree_path: null`, `branch: null`) and also includes `previous_worktree_path` / `previous_branch` for confirmation.\n\n**Worktree-aware execution:** When a run is mapped to a worktree, all `--run`-scoped commands (`invoke`, `quality run`, `diff`) automatically resolve the mapped worktree as their execution context. No `cd` or `--workdir` is needed. No `.5x/` directory is required in worktree checkouts — all state stays in the root control-plane.\n\n## Configuration\n\n`5x init` creates `5x.toml`. Auto-discovered by walking up from the working directory. (`5x.config.js` / `.mjs` are also supported for backward compatibility.)\n\n```toml\n# 5x.toml\n\nmaxStepsPerRun = 50    # Hard limit on steps per run (prevents runaway loops)\n\n# Shell commands run by `5x quality run`\nqualityGates = [\n  \"bun test --concurrent --dots\",\n  \"bun run lint\",\n  \"bun run typecheck\",\n]\n\n[author]\nprovider = \"opencode\"                  # \"opencode\" (default) or a plugin name, e.g. \"cursor-agent\"\nmodel = \"anthropic/claude-sonnet-4-6\"\ntimeout = 300                          # Inactivity timeout in seconds\n# continuePhaseSessions = true         # Require --session for continued reviews (opt-in)\n\n[reviewer]\nprovider = \"opencode\"\nmodel = \"anthropic/claude-sonnet-4-6\"\ntimeout = 120\n# continuePhaseSessions = true\n\n[paths]\nplans = \"docs/development\"\nreviews = \"docs/development/reviews\"\narchive = \"docs/archive\"\n\n[paths.templates]\nplan = \".5x/templates/implementation-plan-template.md\"\nreview = \".5x/templates/review-template.md\"\n\n[db]\npath = \".5x\"    # Directory path (DB file is always 5x.db within this directory)\n\n[worktree]\npostCreate = \"bun install\"\n```\n\n**Provider plugins:** Any provider other than `opencode` is loaded as a plugin package. Short names resolve by convention — `provider = \"cursor-agent\"` loads `@5x-ai/provider-cursor-agent`; full package names starting with `@` are used as-is. Install the plugin next to the CLI (`npm install @5x-ai/provider-cursor-agent`) and put provider-specific options in a top-level table named after the provider (e.g. `[cursor-agent]`). Currently published: [`@5x-ai/provider-cursor-agent`](packages/provider-cursor-agent) (Cursor Agent CLI).\n\n**Config layering:** In monorepos, sub-projects can have their own `5x.toml` that overrides the root config. Config resolution is anchored to the plan's location — run-scoped commands use `dirname(plan_path)` to find the nearest `5x.toml`. Objects merge deeply (sub-project inherits unset fields from root), arrays replace entirely, and `db` settings always come from the root config.\n\n**`5x.toml.local` (TOML only):** Optional machine-local overlay merged after the resolved main config (root + nearest). Put it next to the main file: `<control-plane-root>/5x.toml.local` and, when layering applies, `<sub-project>/5x.toml.local`. Merge rules match layering (objects deep, arrays replace). `[db]` in the control-plane root `5x.toml.local` may override `db.path` (e.g. a personal state directory); `[db]` in a sub-project `5x.toml.local` is ignored with a warning, same as `[db]` in a sub-project `5x.toml`. With no `5x.toml` at all, `5x.toml.local` at the project root still layers on top of Zod defaults. `5x init` appends `5x.toml.local` to `.gitignore` alongside `.5x/` so it stays out of version control.\n\n## Output Contract\n\n### JSON Envelope\n\n```jsonc\n// Success (exit 0):\n{ \"ok\": true, \"data\": { ... } }\n\n// Error (exit 1-9):\n{ \"ok\": false, \"error\": { \"code\": \"RUN_NOT_FOUND\", \"message\": \"...\", \"detail\": { ... } } }\n```\n\nOutput is compact JSON when piped, pretty-printed when stdout is a TTY. Override with `--pretty` or `--no-pretty`. Streaming commands (`run watch`) write NDJSON lines or human-readable text to stdout instead of envelopes.\n\n### Exit Codes\n\n| Code | Meaning |\n| --- | --- |\n| 0 | Success |\n| 1 | General error |\n| 2 | Resource not found (template, plan, provider) |\n| 3 | Non-interactive / EOF (TTY required, no default provided) |\n| 4 | Plan locked by another process |\n| 5 | Dirty worktree |\n| 6 | Max steps exceeded |\n| 7 | Invalid structured output from agent |\n| 8 | Phase checklist incomplete / phase not found |\n| 9 | Session required (continuePhaseSessions enabled, no --session provided) |\n| 130 | Interrupted (SIGINT) |\n\n## Plan Format\n\nPlan files are markdown with phase headings and checklists:\n\n```md\n# Add Example Feature\n\n**Version:** 1.0\n**Status:** Draft\n\n## Phase 1: Data model updates\n\n**Completion gate:** New schema is migrated and validated.\n\n- [ ] Add migration\n- [ ] Add unit tests\n\n## Phase 2: API endpoints\n\n**Completion gate:** Endpoints pass integration tests.\n\n- [ ] Implement handlers\n- [ ] Add integration tests\n```\n\n`5x plan phases` uses this structure to extract phase metadata and checklist progress.\n\n## Runtime Artifacts\n\n`5x` writes local state under `.5x/` in the **control-plane root** (the main repository root):\n\n```\n.5x/\n  5x.db                          # SQLite: runs, steps, plans\n  logs/<run-id>/agent-NNN.ndjson # Per-agent NDJSON event logs (0o700)\n  locks/<hash>.lock              # Plan-level lock files\n  worktrees/                     # Isolated git worktrees\n  templates/                     # Plan and review templates (prompt templates opt-in via --install-templates)\n  skills/                        # Bundled skill source (internal)\n  debug/                         # Debug traces\n```\n\n**Control-plane model:** The root repository's `.5x/` directory is the single source of truth. All artifacts — DB, logs, locks, worktrees, templates — are anchored to this root, regardless of which checkout (root or linked worktree) a command is run from. Worktree checkouts do not need their own `.5x/` directory.\n\nThe control-plane root is resolved via `git rev-parse --git-common-dir`, so commands run from any linked worktree (including externally attached worktrees) automatically find the root state DB.\n\n**Isolated mode:** If you run `5x init` in a worktree checkout whose parent repo is *not* 5x-managed (no root `.5x/5x.db`), a local state DB is created in that checkout. This is isolated mode — state is local to that worktree. If a root DB is later created, subsequent commands from the worktree switch to managed mode and use the root DB.\n\nLogs may contain sensitive code and context. Keep `.5x/` out of version control (added to `.gitignore` by `5x init`).\n\n## Troubleshooting\n\n| Problem | Fix |\n| --- | --- |\n| `OpenCode server failed to start` | Ensure `opencode` is installed and on `PATH` |\n| `Working tree has uncommitted changes` | Commit/stash, or pass `--allow-dirty` |\n| `NON_INTERACTIVE` exit code 3 | Provide `--default` on prompt commands, or run in a TTY |\n| `PLAN_LOCKED` | Another process holds the lock. Wait for it, or check for stale locks in `.5x/locks/` |\n| `MAX_STEPS_EXCEEDED` | Increase `maxStepsPerRun` in config, or investigate why the run is looping |\n| No phases found by `5x plan phases` | Ensure plan uses `## Phase N: ...` headings with markdown checklists |\n| Agent output not visible during `invoke` | stderr streaming is TTY-gated. Use `--stderr` to force it, or run `5x run watch` in another terminal |\n\n## License\n\nMIT\n","readmeFilename":"README.md"}