byterover-cli 2.6.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (316) hide show
  1. package/.env.production +1 -0
  2. package/README.md +240 -14
  3. package/dist/agent/core/domain/knowledge/conflict-detector.d.ts +38 -0
  4. package/dist/agent/core/domain/knowledge/conflict-detector.js +71 -0
  5. package/dist/agent/core/domain/knowledge/conflict-resolver.d.ts +17 -0
  6. package/dist/agent/core/domain/knowledge/conflict-resolver.js +118 -0
  7. package/dist/agent/core/domain/knowledge/utils.d.ts +4 -0
  8. package/dist/agent/core/domain/knowledge/utils.js +6 -0
  9. package/dist/agent/core/interfaces/i-curate-service.d.ts +6 -0
  10. package/dist/agent/infra/tools/implementations/curate-tool.d.ts +67 -34
  11. package/dist/agent/infra/tools/implementations/curate-tool.js +294 -47
  12. package/dist/agent/resources/prompts/system-prompt.yml +15 -8
  13. package/dist/agent/resources/tools/code_exec.txt +3 -0
  14. package/dist/agent/resources/tools/curate.txt +12 -3
  15. package/dist/oclif/commands/connectors/install.d.ts +2 -1
  16. package/dist/oclif/commands/connectors/install.js +38 -3
  17. package/dist/oclif/commands/curate/index.d.ts +18 -0
  18. package/dist/oclif/commands/curate/index.js +78 -1
  19. package/dist/oclif/commands/init.d.ts +12 -0
  20. package/dist/oclif/commands/init.js +75 -0
  21. package/dist/oclif/commands/locations.js +1 -1
  22. package/dist/oclif/commands/providers/connect.d.ts +31 -1
  23. package/dist/oclif/commands/providers/connect.js +307 -27
  24. package/dist/oclif/commands/pull.d.ts +1 -0
  25. package/dist/oclif/commands/pull.js +7 -0
  26. package/dist/oclif/commands/push.d.ts +1 -0
  27. package/dist/oclif/commands/push.js +8 -0
  28. package/dist/oclif/commands/review/approve.d.ts +17 -0
  29. package/dist/oclif/commands/review/approve.js +37 -0
  30. package/dist/oclif/commands/review/base-review-decision.d.ts +18 -0
  31. package/dist/oclif/commands/review/base-review-decision.js +71 -0
  32. package/dist/oclif/commands/review/pending.d.ts +13 -0
  33. package/dist/oclif/commands/review/pending.js +94 -0
  34. package/dist/oclif/commands/review/reject.d.ts +17 -0
  35. package/dist/oclif/commands/review/reject.js +38 -0
  36. package/dist/oclif/commands/space/list.d.ts +2 -2
  37. package/dist/oclif/commands/space/list.js +13 -35
  38. package/dist/oclif/commands/space/switch.d.ts +2 -7
  39. package/dist/oclif/commands/space/switch.js +13 -56
  40. package/dist/oclif/commands/status.d.ts +1 -0
  41. package/dist/oclif/commands/status.js +11 -1
  42. package/dist/oclif/commands/vc/add.d.ts +7 -0
  43. package/dist/oclif/commands/vc/add.js +29 -0
  44. package/dist/oclif/commands/vc/branch.d.ts +15 -0
  45. package/dist/oclif/commands/vc/branch.js +70 -0
  46. package/dist/oclif/commands/vc/checkout.d.ts +14 -0
  47. package/dist/oclif/commands/vc/checkout.js +47 -0
  48. package/dist/oclif/commands/vc/clone.d.ts +9 -0
  49. package/dist/oclif/commands/vc/clone.js +61 -0
  50. package/dist/oclif/commands/vc/commit.d.ts +10 -0
  51. package/dist/oclif/commands/vc/commit.js +32 -0
  52. package/dist/oclif/commands/vc/config.d.ts +10 -0
  53. package/dist/oclif/commands/vc/config.js +30 -0
  54. package/dist/oclif/commands/vc/fetch.d.ts +10 -0
  55. package/dist/oclif/commands/vc/fetch.js +42 -0
  56. package/dist/oclif/commands/vc/index.d.ts +6 -0
  57. package/dist/oclif/commands/vc/index.js +8 -0
  58. package/dist/oclif/commands/vc/init.d.ts +6 -0
  59. package/dist/oclif/commands/vc/init.js +25 -0
  60. package/dist/oclif/commands/vc/log.d.ts +13 -0
  61. package/dist/oclif/commands/vc/log.js +48 -0
  62. package/dist/oclif/commands/vc/merge.d.ts +19 -0
  63. package/dist/oclif/commands/vc/merge.js +130 -0
  64. package/dist/oclif/commands/vc/pull.d.ts +13 -0
  65. package/dist/oclif/commands/vc/pull.js +60 -0
  66. package/dist/oclif/commands/vc/push.d.ts +13 -0
  67. package/dist/oclif/commands/vc/push.js +60 -0
  68. package/dist/oclif/commands/vc/remote/add.d.ts +10 -0
  69. package/dist/oclif/commands/vc/remote/add.js +30 -0
  70. package/dist/oclif/commands/vc/remote/index.d.ts +6 -0
  71. package/dist/oclif/commands/vc/remote/index.js +16 -0
  72. package/dist/oclif/commands/vc/remote/set-url.d.ts +10 -0
  73. package/dist/oclif/commands/vc/remote/set-url.js +30 -0
  74. package/dist/oclif/commands/vc/reset.d.ts +13 -0
  75. package/dist/oclif/commands/vc/reset.js +62 -0
  76. package/dist/oclif/commands/vc/status.d.ts +8 -0
  77. package/dist/oclif/commands/vc/status.js +106 -0
  78. package/dist/oclif/hooks/init/validate-brv-config.d.ts +26 -0
  79. package/dist/oclif/hooks/init/validate-brv-config.js +62 -0
  80. package/dist/oclif/lib/daemon-client.d.ts +2 -0
  81. package/dist/oclif/lib/daemon-client.js +36 -10
  82. package/dist/oclif/lib/prompt-utils.d.ts +43 -0
  83. package/dist/oclif/lib/prompt-utils.js +84 -0
  84. package/dist/oclif/lib/spinner.d.ts +8 -0
  85. package/dist/oclif/lib/spinner.js +23 -0
  86. package/dist/oclif/lib/task-client.d.ts +5 -0
  87. package/dist/oclif/lib/task-client.js +15 -2
  88. package/dist/server/config/environment.d.ts +2 -0
  89. package/dist/server/config/environment.js +2 -0
  90. package/dist/server/constants.d.ts +3 -0
  91. package/dist/server/constants.js +9 -0
  92. package/dist/server/core/domain/entities/auth-token.d.ts +2 -0
  93. package/dist/server/core/domain/entities/auth-token.js +7 -1
  94. package/dist/server/core/domain/entities/curate-log-entry.d.ts +11 -0
  95. package/dist/server/core/domain/entities/space.d.ts +4 -0
  96. package/dist/server/core/domain/entities/space.js +8 -0
  97. package/dist/server/core/domain/entities/team.d.ts +2 -0
  98. package/dist/server/core/domain/entities/team.js +4 -0
  99. package/dist/server/core/domain/errors/git-error.d.ts +6 -0
  100. package/dist/server/core/domain/errors/git-error.js +12 -0
  101. package/dist/server/core/domain/errors/task-error.d.ts +4 -0
  102. package/dist/server/core/domain/errors/task-error.js +8 -0
  103. package/dist/server/core/domain/errors/vc-error.d.ts +5 -0
  104. package/dist/server/core/domain/errors/vc-error.js +8 -0
  105. package/dist/server/core/domain/knowledge/markdown-writer.d.ts +4 -1
  106. package/dist/server/core/domain/knowledge/markdown-writer.js +37 -7
  107. package/dist/server/core/domain/transport/schemas.d.ts +6 -6
  108. package/dist/server/core/interfaces/context-tree/i-context-tree-service.d.ts +11 -0
  109. package/dist/server/core/interfaces/process/i-task-lifecycle-hook.d.ts +6 -0
  110. package/dist/server/core/interfaces/services/i-git-service.d.ts +234 -0
  111. package/dist/server/core/interfaces/services/i-git-service.js +1 -0
  112. package/dist/server/core/interfaces/storage/i-curate-log-store.d.ts +5 -0
  113. package/dist/server/core/interfaces/storage/i-review-backup-store.d.ts +19 -0
  114. package/dist/server/core/interfaces/storage/i-review-backup-store.js +1 -0
  115. package/dist/server/core/interfaces/vc/i-vc-git-config-store.d.ts +8 -0
  116. package/dist/server/core/interfaces/vc/i-vc-git-config-store.js +1 -0
  117. package/dist/server/infra/config/auto-init.d.ts +0 -2
  118. package/dist/server/infra/config/auto-init.js +0 -1
  119. package/dist/server/infra/context-tree/file-context-tree-service.d.ts +2 -0
  120. package/dist/server/infra/context-tree/file-context-tree-service.js +13 -0
  121. package/dist/server/infra/daemon/brv-server.js +23 -3
  122. package/dist/server/infra/git/cogit-url.d.ts +17 -0
  123. package/dist/server/infra/git/cogit-url.js +39 -0
  124. package/dist/server/infra/git/git-http-wrapper.d.ts +20 -0
  125. package/dist/server/infra/git/git-http-wrapper.js +334 -0
  126. package/dist/server/infra/git/isomorphic-git-service.d.ts +78 -0
  127. package/dist/server/infra/git/isomorphic-git-service.js +983 -0
  128. package/dist/server/infra/http/review-api-handler.d.ts +13 -0
  129. package/dist/server/infra/http/review-api-handler.js +286 -0
  130. package/dist/server/infra/http/review-ui.d.ts +7 -0
  131. package/dist/server/infra/http/review-ui.js +606 -0
  132. package/dist/server/infra/mcp/tools/brv-curate-tool.d.ts +2 -2
  133. package/dist/server/infra/process/curate-log-handler.d.ts +18 -2
  134. package/dist/server/infra/process/curate-log-handler.js +50 -13
  135. package/dist/server/infra/process/feature-handlers.js +41 -1
  136. package/dist/server/infra/process/task-router.js +16 -0
  137. package/dist/server/infra/space/http-space-service.js +2 -0
  138. package/dist/server/infra/storage/file-curate-log-store.d.ts +10 -0
  139. package/dist/server/infra/storage/file-curate-log-store.js +35 -0
  140. package/dist/server/infra/storage/file-review-backup-store.d.ts +29 -0
  141. package/dist/server/infra/storage/file-review-backup-store.js +121 -0
  142. package/dist/server/infra/transport/handlers/auth-handler.js +9 -5
  143. package/dist/server/infra/transport/handlers/handler-types.d.ts +9 -0
  144. package/dist/server/infra/transport/handlers/handler-types.js +11 -0
  145. package/dist/server/infra/transport/handlers/index.d.ts +4 -0
  146. package/dist/server/infra/transport/handlers/index.js +2 -0
  147. package/dist/server/infra/transport/handlers/init-handler.d.ts +1 -0
  148. package/dist/server/infra/transport/handlers/init-handler.js +13 -1
  149. package/dist/server/infra/transport/handlers/pull-handler.d.ts +3 -0
  150. package/dist/server/infra/transport/handlers/pull-handler.js +5 -1
  151. package/dist/server/infra/transport/handlers/push-handler.d.ts +20 -0
  152. package/dist/server/infra/transport/handlers/push-handler.js +116 -14
  153. package/dist/server/infra/transport/handlers/reset-handler.d.ts +11 -0
  154. package/dist/server/infra/transport/handlers/reset-handler.js +37 -1
  155. package/dist/server/infra/transport/handlers/review-handler.d.ts +35 -0
  156. package/dist/server/infra/transport/handlers/review-handler.js +162 -0
  157. package/dist/server/infra/transport/handlers/space-handler.d.ts +3 -0
  158. package/dist/server/infra/transport/handlers/space-handler.js +4 -1
  159. package/dist/server/infra/transport/handlers/status-handler.d.ts +5 -0
  160. package/dist/server/infra/transport/handlers/status-handler.js +51 -16
  161. package/dist/server/infra/transport/handlers/vc-handler.d.ts +100 -0
  162. package/dist/server/infra/transport/handlers/vc-handler.js +1050 -0
  163. package/dist/server/infra/transport/socket-io-transport-server.d.ts +7 -0
  164. package/dist/server/infra/transport/socket-io-transport-server.js +12 -1
  165. package/dist/server/infra/transport/transport-connector.d.ts +1 -1
  166. package/dist/server/infra/transport/transport-connector.js +2 -1
  167. package/dist/server/infra/vc/file-vc-git-config-store.d.ts +11 -0
  168. package/dist/server/infra/vc/file-vc-git-config-store.js +43 -0
  169. package/dist/server/templates/skill/SKILL.md +167 -33
  170. package/dist/server/utils/curate-result-parser.d.ts +64 -0
  171. package/dist/server/utils/curate-result-parser.js +8 -0
  172. package/dist/server/utils/gitignore.d.ts +9 -0
  173. package/dist/server/utils/gitignore.js +47 -0
  174. package/dist/shared/transport/events/index.d.ts +6 -0
  175. package/dist/shared/transport/events/index.js +3 -0
  176. package/dist/shared/transport/events/init-events.d.ts +8 -0
  177. package/dist/shared/transport/events/init-events.js +1 -0
  178. package/dist/shared/transport/events/push-events.d.ts +6 -0
  179. package/dist/shared/transport/events/review-events.d.ts +41 -0
  180. package/dist/shared/transport/events/review-events.js +5 -0
  181. package/dist/shared/transport/events/vc-events.d.ts +257 -0
  182. package/dist/shared/transport/events/vc-events.js +67 -0
  183. package/dist/shared/transport/types/dto.d.ts +6 -1
  184. package/dist/tui/app/pages/init-project-page.d.ts +9 -0
  185. package/dist/tui/app/pages/init-project-page.js +54 -0
  186. package/dist/tui/app/pages/protected-routes.js +14 -6
  187. package/dist/tui/components/index.d.ts +0 -2
  188. package/dist/tui/components/index.js +0 -1
  189. package/dist/tui/features/activity/hooks/use-activity-logs.js +7 -1
  190. package/dist/tui/features/commands/definitions/index.js +3 -0
  191. package/dist/tui/features/commands/definitions/space-list.js +9 -18
  192. package/dist/tui/features/commands/definitions/space-switch.js +10 -6
  193. package/dist/tui/features/commands/definitions/vc-add.d.ts +2 -0
  194. package/dist/tui/features/commands/definitions/vc-add.js +15 -0
  195. package/dist/tui/features/commands/definitions/vc-branch.d.ts +2 -0
  196. package/dist/tui/features/commands/definitions/vc-branch.js +33 -0
  197. package/dist/tui/features/commands/definitions/vc-checkout.d.ts +2 -0
  198. package/dist/tui/features/commands/definitions/vc-checkout.js +32 -0
  199. package/dist/tui/features/commands/definitions/vc-clone.d.ts +2 -0
  200. package/dist/tui/features/commands/definitions/vc-clone.js +18 -0
  201. package/dist/tui/features/commands/definitions/vc-commit.d.ts +2 -0
  202. package/dist/tui/features/commands/definitions/vc-commit.js +32 -0
  203. package/dist/tui/features/commands/definitions/vc-config.d.ts +2 -0
  204. package/dist/tui/features/commands/definitions/vc-config.js +40 -0
  205. package/dist/tui/features/commands/definitions/vc-fetch.d.ts +2 -0
  206. package/dist/tui/features/commands/definitions/vc-fetch.js +37 -0
  207. package/dist/tui/features/commands/definitions/vc-init.d.ts +2 -0
  208. package/dist/tui/features/commands/definitions/vc-init.js +11 -0
  209. package/dist/tui/features/commands/definitions/vc-log.d.ts +2 -0
  210. package/dist/tui/features/commands/definitions/vc-log.js +25 -0
  211. package/dist/tui/features/commands/definitions/vc-merge.d.ts +2 -0
  212. package/dist/tui/features/commands/definitions/vc-merge.js +48 -0
  213. package/dist/tui/features/commands/definitions/vc-pull.d.ts +2 -0
  214. package/dist/tui/features/commands/definitions/vc-pull.js +42 -0
  215. package/dist/tui/features/commands/definitions/vc-push.d.ts +2 -0
  216. package/dist/tui/features/commands/definitions/vc-push.js +38 -0
  217. package/dist/tui/features/commands/definitions/vc-remote.d.ts +2 -0
  218. package/dist/tui/features/commands/definitions/vc-remote.js +57 -0
  219. package/dist/tui/features/commands/definitions/vc-reset.d.ts +2 -0
  220. package/dist/tui/features/commands/definitions/vc-reset.js +35 -0
  221. package/dist/tui/features/commands/definitions/vc-status.d.ts +2 -0
  222. package/dist/tui/features/commands/definitions/vc-status.js +11 -0
  223. package/dist/tui/features/commands/definitions/vc.d.ts +2 -0
  224. package/dist/tui/features/commands/definitions/vc.js +36 -0
  225. package/dist/tui/features/commands/hooks/use-slash-command-processor.js +5 -5
  226. package/dist/tui/features/log/api/execute-log.d.ts +8 -0
  227. package/dist/tui/features/log/api/execute-log.js +13 -0
  228. package/dist/tui/features/log/components/log-flow.d.ts +14 -0
  229. package/dist/tui/features/log/components/log-flow.js +29 -0
  230. package/dist/tui/features/log/utils/format-log.d.ts +3 -0
  231. package/dist/tui/features/log/utils/format-log.js +42 -0
  232. package/dist/tui/features/onboarding/hooks/use-app-view-mode.d.ts +9 -5
  233. package/dist/tui/features/onboarding/hooks/use-app-view-mode.js +12 -5
  234. package/dist/tui/features/push/components/push-flow.js +9 -2
  235. package/dist/tui/features/reset/components/reset-flow.js +2 -1
  236. package/dist/tui/features/status/components/status-view.js +2 -1
  237. package/dist/tui/features/status/utils/format-status.js +9 -0
  238. package/dist/tui/features/tasks/hooks/use-task-subscriptions.js +11 -0
  239. package/dist/tui/features/tasks/stores/tasks-store.d.ts +10 -0
  240. package/dist/tui/features/tasks/stores/tasks-store.js +16 -0
  241. package/dist/tui/features/vc/add/api/execute-vc-add.d.ts +8 -0
  242. package/dist/tui/features/vc/add/api/execute-vc-add.js +13 -0
  243. package/dist/tui/features/vc/add/components/vc-add-flow.d.ts +7 -0
  244. package/dist/tui/features/vc/add/components/vc-add-flow.js +35 -0
  245. package/dist/tui/features/vc/branch/api/execute-vc-branch.d.ts +8 -0
  246. package/dist/tui/features/vc/branch/api/execute-vc-branch.js +13 -0
  247. package/dist/tui/features/vc/branch/components/vc-branch-flow.d.ts +8 -0
  248. package/dist/tui/features/vc/branch/components/vc-branch-flow.js +53 -0
  249. package/dist/tui/features/vc/branch/utils/format-branch.d.ts +4 -0
  250. package/dist/tui/features/vc/branch/utils/format-branch.js +12 -0
  251. package/dist/tui/features/vc/checkout/api/execute-vc-checkout.d.ts +8 -0
  252. package/dist/tui/features/vc/checkout/api/execute-vc-checkout.js +13 -0
  253. package/dist/tui/features/vc/checkout/components/vc-checkout-flow.d.ts +8 -0
  254. package/dist/tui/features/vc/checkout/components/vc-checkout-flow.js +33 -0
  255. package/dist/tui/features/vc/clone/api/execute-vc-clone.d.ts +8 -0
  256. package/dist/tui/features/vc/clone/api/execute-vc-clone.js +13 -0
  257. package/dist/tui/features/vc/clone/components/vc-clone-flow.d.ts +7 -0
  258. package/dist/tui/features/vc/clone/components/vc-clone-flow.js +79 -0
  259. package/dist/tui/features/vc/commit/api/execute-vc-commit.d.ts +8 -0
  260. package/dist/tui/features/vc/commit/api/execute-vc-commit.js +13 -0
  261. package/dist/tui/features/vc/commit/components/vc-commit-flow.d.ts +7 -0
  262. package/dist/tui/features/vc/commit/components/vc-commit-flow.js +29 -0
  263. package/dist/tui/features/vc/config/api/execute-vc-config.d.ts +8 -0
  264. package/dist/tui/features/vc/config/api/execute-vc-config.js +13 -0
  265. package/dist/tui/features/vc/config/components/vc-config-flow.d.ts +9 -0
  266. package/dist/tui/features/vc/config/components/vc-config-flow.js +30 -0
  267. package/dist/tui/features/vc/fetch/api/execute-vc-fetch.d.ts +8 -0
  268. package/dist/tui/features/vc/fetch/api/execute-vc-fetch.js +13 -0
  269. package/dist/tui/features/vc/fetch/components/vc-fetch-flow.d.ts +8 -0
  270. package/dist/tui/features/vc/fetch/components/vc-fetch-flow.js +75 -0
  271. package/dist/tui/features/vc/init/api/execute-vc-init.d.ts +8 -0
  272. package/dist/tui/features/vc/init/api/execute-vc-init.js +13 -0
  273. package/dist/tui/features/vc/init/components/vc-init-flow.d.ts +10 -0
  274. package/dist/tui/features/vc/init/components/vc-init-flow.js +37 -0
  275. package/dist/tui/features/vc/merge/api/execute-vc-merge.d.ts +8 -0
  276. package/dist/tui/features/vc/merge/api/execute-vc-merge.js +13 -0
  277. package/dist/tui/features/vc/merge/components/vc-merge-flow.d.ts +11 -0
  278. package/dist/tui/features/vc/merge/components/vc-merge-flow.js +72 -0
  279. package/dist/tui/features/vc/pull/api/execute-vc-pull.d.ts +8 -0
  280. package/dist/tui/features/vc/pull/api/execute-vc-pull.js +13 -0
  281. package/dist/tui/features/vc/pull/components/vc-pull-flow.d.ts +9 -0
  282. package/dist/tui/features/vc/pull/components/vc-pull-flow.js +83 -0
  283. package/dist/tui/features/vc/push/api/execute-vc-push.d.ts +8 -0
  284. package/dist/tui/features/vc/push/api/execute-vc-push.js +13 -0
  285. package/dist/tui/features/vc/push/components/vc-push-flow.d.ts +8 -0
  286. package/dist/tui/features/vc/push/components/vc-push-flow.js +83 -0
  287. package/dist/tui/features/vc/remote/api/execute-vc-remote.d.ts +8 -0
  288. package/dist/tui/features/vc/remote/api/execute-vc-remote.js +13 -0
  289. package/dist/tui/features/vc/remote/components/vc-remote-flow.d.ts +9 -0
  290. package/dist/tui/features/vc/remote/components/vc-remote-flow.js +42 -0
  291. package/dist/tui/features/vc/reset/api/execute-vc-reset.d.ts +8 -0
  292. package/dist/tui/features/vc/reset/api/execute-vc-reset.js +13 -0
  293. package/dist/tui/features/vc/reset/components/vc-reset-flow.d.ts +10 -0
  294. package/dist/tui/features/vc/reset/components/vc-reset-flow.js +63 -0
  295. package/dist/tui/features/vc/status/api/execute-vc-status.d.ts +8 -0
  296. package/dist/tui/features/vc/status/api/execute-vc-status.js +13 -0
  297. package/dist/tui/features/vc/status/components/vc-status-flow.d.ts +10 -0
  298. package/dist/tui/features/vc/status/components/vc-status-flow.js +133 -0
  299. package/dist/tui/lib/environment.d.ts +8 -0
  300. package/dist/tui/lib/environment.js +8 -0
  301. package/dist/tui/utils/error-messages.d.ts +5 -1
  302. package/dist/tui/utils/error-messages.js +32 -3
  303. package/oclif.manifest.json +1124 -204
  304. package/package.json +9 -3
  305. package/dist/oclif/hooks/prerun/validate-brv-config-version.d.ts +0 -33
  306. package/dist/oclif/hooks/prerun/validate-brv-config-version.js +0 -86
  307. package/dist/tui/components/init.d.ts +0 -33
  308. package/dist/tui/components/init.js +0 -234
  309. package/dist/tui/features/space/api/get-spaces.d.ts +0 -16
  310. package/dist/tui/features/space/api/get-spaces.js +0 -17
  311. package/dist/tui/features/space/api/switch-space.d.ts +0 -11
  312. package/dist/tui/features/space/api/switch-space.js +0 -24
  313. package/dist/tui/features/space/components/space-list-view.d.ts +0 -12
  314. package/dist/tui/features/space/components/space-list-view.js +0 -56
  315. package/dist/tui/features/space/components/space-switch-flow.d.ts +0 -13
  316. package/dist/tui/features/space/components/space-switch-flow.js +0 -97
@@ -75,6 +75,40 @@
75
75
  "hook-prompt-submit.js"
76
76
  ]
77
77
  },
78
+ "init": {
79
+ "aliases": [],
80
+ "args": {},
81
+ "description": "Initialize a ByteRover project in the current directory",
82
+ "examples": [
83
+ "<%= config.bin %> <%= command.id %>",
84
+ "<%= config.bin %> <%= command.id %> --force"
85
+ ],
86
+ "flags": {
87
+ "force": {
88
+ "char": "f",
89
+ "description": "Force re-initialization even if already initialized",
90
+ "name": "force",
91
+ "allowNo": false,
92
+ "type": "boolean"
93
+ }
94
+ },
95
+ "hasDynamicHelp": false,
96
+ "hidden": true,
97
+ "hiddenAliases": [],
98
+ "id": "init",
99
+ "pluginAlias": "byterover-cli",
100
+ "pluginName": "byterover-cli",
101
+ "pluginType": "core",
102
+ "strict": true,
103
+ "enableJsonFlag": false,
104
+ "isESM": true,
105
+ "relativePath": [
106
+ "dist",
107
+ "oclif",
108
+ "commands",
109
+ "init.js"
110
+ ]
111
+ },
78
112
  "locations": {
79
113
  "aliases": [],
80
114
  "args": {},
@@ -513,9 +547,9 @@
513
547
  "aliases": [],
514
548
  "args": {
515
549
  "agent": {
516
- "description": "Agent name to install connector for (e.g., \"Claude Code\", \"Cursor\")",
550
+ "description": "Agent name to install connector for (e.g., \"Claude Code\", \"Cursor\"). Omit for interactive selection.",
517
551
  "name": "agent",
518
- "required": true
552
+ "required": false
519
553
  }
520
554
  },
521
555
  "description": "Install or switch a connector for an agent\n\n Connector Types:\n Rules Agent reads instructions from rule file\n Hook Instructions injected on each prompt\n MCP Agent connects via MCP protocol\n Agent Skill Agent reads skill files from project directory\n\n Available agents Default Supported Types\n ──────────────────── ─────────────── ─────────────────────────\n Amp Agent Skill Rules, MCP, Agent Skill\n Antigravity Agent Skill Rules, MCP, Agent Skill\n Auggie CLI Agent Skill Rules, MCP, Agent Skill\n Augment Code MCP Rules, MCP\n Claude Code Agent Skill Rules, Hook, MCP, Agent Skill\n Cline MCP Rules, MCP\n Codex Agent Skill Rules, MCP, Agent Skill\n Cursor Agent Skill Rules, MCP, Agent Skill\n Gemini CLI Agent Skill Rules, MCP, Agent Skill\n Github Copilot Agent Skill Rules, MCP, Agent Skill\n Junie Agent Skill Rules, MCP, Agent Skill\n Kilo Code Agent Skill Rules, MCP, Agent Skill\n Kiro Agent Skill Rules, MCP, Agent Skill\n OpenClaw Agent Skill Agent Skill\n OpenCode Agent Skill Rules, MCP, Agent Skill\n Qoder Agent Skill Rules, MCP, Agent Skill\n Qwen Code MCP Rules, MCP\n Roo Code Agent Skill Rules, MCP, Agent Skill\n Trae.ai Agent Skill Rules, MCP, Agent Skill\n Warp Agent Skill Rules, MCP, Agent Skill\n Windsurf Agent Skill Rules, MCP, Agent Skill\n Zed MCP Rules, MCP",
@@ -943,50 +977,15 @@
943
977
  "list.js"
944
978
  ]
945
979
  },
946
- "providers:connect": {
980
+ "model": {
947
981
  "aliases": [],
948
- "args": {
949
- "provider": {
950
- "description": "Provider ID to connect (e.g., anthropic, openai, openrouter)",
951
- "name": "provider",
952
- "required": true
953
- }
954
- },
955
- "description": "Connect or switch to an LLM provider",
982
+ "args": {},
983
+ "description": "Show the active model",
956
984
  "examples": [
957
- "<%= config.bin %> providers connect anthropic --api-key sk-xxx",
958
- "<%= config.bin %> providers connect openai --api-key sk-xxx --model gpt-4.1",
959
- "<%= config.bin %> providers connect openai --oauth",
960
- "<%= config.bin %> providers connect byterover",
961
- "<%= config.bin %> providers connect openai-compatible --base-url http://localhost:11434/v1",
962
- "<%= config.bin %> providers connect openai-compatible --base-url http://localhost:11434/v1 --api-key sk-xxx --model llama3"
985
+ "<%= config.bin %> model",
986
+ "<%= config.bin %> model --format json"
963
987
  ],
964
988
  "flags": {
965
- "api-key": {
966
- "char": "k",
967
- "description": "API key for the provider",
968
- "name": "api-key",
969
- "hasDynamicHelp": false,
970
- "multiple": false,
971
- "type": "option"
972
- },
973
- "base-url": {
974
- "char": "b",
975
- "description": "Base URL for OpenAI-compatible providers (e.g., http://localhost:11434/v1)",
976
- "name": "base-url",
977
- "hasDynamicHelp": false,
978
- "multiple": false,
979
- "type": "option"
980
- },
981
- "code": {
982
- "char": "c",
983
- "description": "Authorization code for code-paste OAuth providers (e.g., Anthropic). Not applicable to browser-callback providers like OpenAI — use --oauth without --code instead.",
984
- "hidden": true,
985
- "name": "code",
986
- "hasDynamicHelp": false,
987
- "multiple": false,
988
- "type": "option"
989
- },
990
989
  "format": {
991
990
  "description": "Output format (text or json)",
992
991
  "name": "format",
@@ -998,25 +997,11 @@
998
997
  "json"
999
998
  ],
1000
999
  "type": "option"
1001
- },
1002
- "model": {
1003
- "char": "m",
1004
- "description": "Model to set as active after connecting",
1005
- "name": "model",
1006
- "hasDynamicHelp": false,
1007
- "multiple": false,
1008
- "type": "option"
1009
- },
1010
- "oauth": {
1011
- "description": "Connect via OAuth (browser-based)",
1012
- "name": "oauth",
1013
- "allowNo": false,
1014
- "type": "boolean"
1015
1000
  }
1016
1001
  },
1017
1002
  "hasDynamicHelp": false,
1018
1003
  "hiddenAliases": [],
1019
- "id": "providers:connect",
1004
+ "id": "model",
1020
1005
  "pluginAlias": "byterover-cli",
1021
1006
  "pluginName": "byterover-cli",
1022
1007
  "pluginType": "core",
@@ -1027,23 +1012,17 @@
1027
1012
  "dist",
1028
1013
  "oclif",
1029
1014
  "commands",
1030
- "providers",
1031
- "connect.js"
1015
+ "model",
1016
+ "index.js"
1032
1017
  ]
1033
1018
  },
1034
- "providers:disconnect": {
1019
+ "model:list": {
1035
1020
  "aliases": [],
1036
- "args": {
1037
- "provider": {
1038
- "description": "Provider ID to disconnect",
1039
- "name": "provider",
1040
- "required": true
1041
- }
1042
- },
1043
- "description": "Disconnect an LLM provider",
1021
+ "args": {},
1022
+ "description": "List available models from all connected providers",
1044
1023
  "examples": [
1045
- "<%= config.bin %> providers disconnect anthropic",
1046
- "<%= config.bin %> providers disconnect openai --format json"
1024
+ "<%= config.bin %> model list",
1025
+ "<%= config.bin %> model list --format json"
1047
1026
  ],
1048
1027
  "flags": {
1049
1028
  "format": {
@@ -1057,11 +1036,19 @@
1057
1036
  "json"
1058
1037
  ],
1059
1038
  "type": "option"
1039
+ },
1040
+ "provider": {
1041
+ "char": "p",
1042
+ "description": "Only list models for a specific provider",
1043
+ "name": "provider",
1044
+ "hasDynamicHelp": false,
1045
+ "multiple": false,
1046
+ "type": "option"
1060
1047
  }
1061
1048
  },
1062
1049
  "hasDynamicHelp": false,
1063
1050
  "hiddenAliases": [],
1064
- "id": "providers:disconnect",
1051
+ "id": "model:list",
1065
1052
  "pluginAlias": "byterover-cli",
1066
1053
  "pluginName": "byterover-cli",
1067
1054
  "pluginType": "core",
@@ -1072,17 +1059,24 @@
1072
1059
  "dist",
1073
1060
  "oclif",
1074
1061
  "commands",
1075
- "providers",
1076
- "disconnect.js"
1062
+ "model",
1063
+ "list.js"
1077
1064
  ]
1078
1065
  },
1079
- "providers": {
1066
+ "model:switch": {
1080
1067
  "aliases": [],
1081
- "args": {},
1082
- "description": "Show active provider and model",
1068
+ "args": {
1069
+ "model": {
1070
+ "description": "Model ID to switch to (e.g., claude-sonnet-4-5, gpt-4.1)",
1071
+ "name": "model",
1072
+ "required": true
1073
+ }
1074
+ },
1075
+ "description": "Switch the active model",
1083
1076
  "examples": [
1084
- "<%= config.bin %> providers",
1085
- "<%= config.bin %> providers --format json"
1077
+ "<%= config.bin %> model switch claude-sonnet-4-5",
1078
+ "<%= config.bin %> model switch gpt-4.1 --provider openai",
1079
+ "<%= config.bin %> model switch claude-sonnet-4-5 --format json"
1086
1080
  ],
1087
1081
  "flags": {
1088
1082
  "format": {
@@ -1096,11 +1090,19 @@
1096
1090
  "json"
1097
1091
  ],
1098
1092
  "type": "option"
1093
+ },
1094
+ "provider": {
1095
+ "char": "p",
1096
+ "description": "Provider ID (defaults to active provider)",
1097
+ "name": "provider",
1098
+ "hasDynamicHelp": false,
1099
+ "multiple": false,
1100
+ "type": "option"
1099
1101
  }
1100
1102
  },
1101
1103
  "hasDynamicHelp": false,
1102
1104
  "hiddenAliases": [],
1103
- "id": "providers",
1105
+ "id": "model:switch",
1104
1106
  "pluginAlias": "byterover-cli",
1105
1107
  "pluginName": "byterover-cli",
1106
1108
  "pluginType": "core",
@@ -1111,19 +1113,39 @@
1111
1113
  "dist",
1112
1114
  "oclif",
1113
1115
  "commands",
1114
- "providers",
1115
- "index.js"
1116
+ "model",
1117
+ "switch.js"
1116
1118
  ]
1117
1119
  },
1118
- "providers:list": {
1120
+ "review:approve": {
1119
1121
  "aliases": [],
1120
- "args": {},
1121
- "description": "List all available providers and their connection status",
1122
+ "args": {
1123
+ "taskId": {
1124
+ "description": "Task ID shown in the curate output (e.g. \"brv review approve abc-123\")",
1125
+ "name": "taskId",
1126
+ "required": true
1127
+ }
1128
+ },
1129
+ "description": "Approve pending review operations for a curate task",
1122
1130
  "examples": [
1123
- "<%= config.bin %> providers list",
1124
- "<%= config.bin %> providers list --format json"
1131
+ "# Approve all pending changes from a curate task",
1132
+ "<%= config.bin %> review approve abc-123",
1133
+ "",
1134
+ "# Approve specific files",
1135
+ "<%= config.bin %> review approve abc-123 --file architecture/security/audit.md",
1136
+ "<%= config.bin %> review approve abc-123 --file auth/jwt.md --file auth/oauth.md",
1137
+ "",
1138
+ "# Approve and get structured output (useful for coding agents)",
1139
+ "<%= config.bin %> review approve abc-123 --format json"
1125
1140
  ],
1126
1141
  "flags": {
1142
+ "file": {
1143
+ "description": "Approve only the specified file path(s) (relative to context tree)",
1144
+ "name": "file",
1145
+ "hasDynamicHelp": false,
1146
+ "multiple": true,
1147
+ "type": "option"
1148
+ },
1127
1149
  "format": {
1128
1150
  "description": "Output format (text or json)",
1129
1151
  "name": "format",
@@ -1139,7 +1161,7 @@
1139
1161
  },
1140
1162
  "hasDynamicHelp": false,
1141
1163
  "hiddenAliases": [],
1142
- "id": "providers:list",
1164
+ "id": "review:approve",
1143
1165
  "pluginAlias": "byterover-cli",
1144
1166
  "pluginName": "byterover-cli",
1145
1167
  "pluginType": "core",
@@ -1150,25 +1172,25 @@
1150
1172
  "dist",
1151
1173
  "oclif",
1152
1174
  "commands",
1153
- "providers",
1154
- "list.js"
1175
+ "review",
1176
+ "approve.js"
1155
1177
  ]
1156
1178
  },
1157
- "providers:switch": {
1179
+ "review:base-review-decision": {
1158
1180
  "aliases": [],
1159
1181
  "args": {
1160
- "provider": {
1161
- "description": "Provider ID to switch to (e.g., anthropic, openai)",
1162
- "name": "provider",
1182
+ "taskId": {
1183
+ "name": "taskId",
1163
1184
  "required": true
1164
1185
  }
1165
1186
  },
1166
- "description": "Switch the active provider",
1167
- "examples": [
1168
- "<%= config.bin %> providers switch anthropic",
1169
- "<%= config.bin %> providers switch openai --format json"
1170
- ],
1171
1187
  "flags": {
1188
+ "file": {
1189
+ "name": "file",
1190
+ "hasDynamicHelp": false,
1191
+ "multiple": true,
1192
+ "type": "option"
1193
+ },
1172
1194
  "format": {
1173
1195
  "description": "Output format (text or json)",
1174
1196
  "name": "format",
@@ -1184,7 +1206,7 @@
1184
1206
  },
1185
1207
  "hasDynamicHelp": false,
1186
1208
  "hiddenAliases": [],
1187
- "id": "providers:switch",
1209
+ "id": "review:base-review-decision",
1188
1210
  "pluginAlias": "byterover-cli",
1189
1211
  "pluginName": "byterover-cli",
1190
1212
  "pluginType": "core",
@@ -1195,17 +1217,20 @@
1195
1217
  "dist",
1196
1218
  "oclif",
1197
1219
  "commands",
1198
- "providers",
1199
- "switch.js"
1220
+ "review",
1221
+ "base-review-decision.js"
1200
1222
  ]
1201
1223
  },
1202
- "model": {
1224
+ "review:pending": {
1203
1225
  "aliases": [],
1204
1226
  "args": {},
1205
- "description": "Show the active model",
1227
+ "description": "List all pending review operations for the current project",
1206
1228
  "examples": [
1207
- "<%= config.bin %> model",
1208
- "<%= config.bin %> model --format json"
1229
+ "# Show all pending reviews",
1230
+ "<%= config.bin %> review pending",
1231
+ "",
1232
+ "# Get structured output for agent-driven workflows",
1233
+ "<%= config.bin %> review pending --format json"
1209
1234
  ],
1210
1235
  "flags": {
1211
1236
  "format": {
@@ -1223,7 +1248,7 @@
1223
1248
  },
1224
1249
  "hasDynamicHelp": false,
1225
1250
  "hiddenAliases": [],
1226
- "id": "model",
1251
+ "id": "review:pending",
1227
1252
  "pluginAlias": "byterover-cli",
1228
1253
  "pluginName": "byterover-cli",
1229
1254
  "pluginType": "core",
@@ -1234,19 +1259,39 @@
1234
1259
  "dist",
1235
1260
  "oclif",
1236
1261
  "commands",
1237
- "model",
1238
- "index.js"
1262
+ "review",
1263
+ "pending.js"
1239
1264
  ]
1240
1265
  },
1241
- "model:list": {
1266
+ "review:reject": {
1242
1267
  "aliases": [],
1243
- "args": {},
1244
- "description": "List available models from all connected providers",
1268
+ "args": {
1269
+ "taskId": {
1270
+ "description": "Task ID shown in the curate output (e.g. \"brv review reject abc-123\")",
1271
+ "name": "taskId",
1272
+ "required": true
1273
+ }
1274
+ },
1275
+ "description": "Reject pending review operations for a curate task (restores files from backup)",
1245
1276
  "examples": [
1246
- "<%= config.bin %> model list",
1247
- "<%= config.bin %> model list --format json"
1277
+ "# Reject all pending changes from a curate task",
1278
+ "<%= config.bin %> review reject abc-123",
1279
+ "",
1280
+ "# Reject specific files",
1281
+ "<%= config.bin %> review reject abc-123 --file architecture/security/audit.md",
1282
+ "<%= config.bin %> review reject abc-123 --file auth/jwt.md --file auth/oauth.md",
1283
+ "",
1284
+ "# Reject and get structured output (useful for coding agents)",
1285
+ "<%= config.bin %> review reject abc-123 --format json"
1248
1286
  ],
1249
1287
  "flags": {
1288
+ "file": {
1289
+ "description": "Reject only the specified file path(s) (relative to context tree)",
1290
+ "name": "file",
1291
+ "hasDynamicHelp": false,
1292
+ "multiple": true,
1293
+ "type": "option"
1294
+ },
1250
1295
  "format": {
1251
1296
  "description": "Output format (text or json)",
1252
1297
  "name": "format",
@@ -1258,19 +1303,11 @@
1258
1303
  "json"
1259
1304
  ],
1260
1305
  "type": "option"
1261
- },
1262
- "provider": {
1263
- "char": "p",
1264
- "description": "Only list models for a specific provider",
1265
- "name": "provider",
1266
- "hasDynamicHelp": false,
1267
- "multiple": false,
1268
- "type": "option"
1269
1306
  }
1270
1307
  },
1271
1308
  "hasDynamicHelp": false,
1272
1309
  "hiddenAliases": [],
1273
- "id": "model:list",
1310
+ "id": "review:reject",
1274
1311
  "pluginAlias": "byterover-cli",
1275
1312
  "pluginName": "byterover-cli",
1276
1313
  "pluginType": "core",
@@ -1281,50 +1318,700 @@
1281
1318
  "dist",
1282
1319
  "oclif",
1283
1320
  "commands",
1284
- "model",
1285
- "list.js"
1321
+ "review",
1322
+ "reject.js"
1286
1323
  ]
1287
1324
  },
1288
- "model:switch": {
1325
+ "providers:connect": {
1289
1326
  "aliases": [],
1290
1327
  "args": {
1291
- "model": {
1292
- "description": "Model ID to switch to (e.g., claude-sonnet-4-5, gpt-4.1)",
1293
- "name": "model",
1294
- "required": true
1328
+ "provider": {
1329
+ "description": "Provider ID to connect (e.g., anthropic, openai, openrouter). Omit for interactive selection.",
1330
+ "name": "provider",
1331
+ "required": false
1295
1332
  }
1296
1333
  },
1297
- "description": "Switch the active model",
1334
+ "description": "Connect or switch to an LLM provider",
1298
1335
  "examples": [
1299
- "<%= config.bin %> model switch claude-sonnet-4-5",
1300
- "<%= config.bin %> model switch gpt-4.1 --provider openai",
1301
- "<%= config.bin %> model switch claude-sonnet-4-5 --format json"
1336
+ "<%= config.bin %> providers connect",
1337
+ "<%= config.bin %> providers connect anthropic --api-key sk-xxx",
1338
+ "<%= config.bin %> providers connect openai --oauth",
1339
+ "<%= config.bin %> providers connect byterover",
1340
+ "<%= config.bin %> providers connect openai-compatible --base-url http://localhost:11434/v1 --api-key sk-xxx"
1302
1341
  ],
1303
1342
  "flags": {
1304
- "format": {
1305
- "description": "Output format (text or json)",
1306
- "name": "format",
1307
- "default": "text",
1343
+ "api-key": {
1344
+ "char": "k",
1345
+ "description": "API key for the provider",
1346
+ "name": "api-key",
1308
1347
  "hasDynamicHelp": false,
1309
1348
  "multiple": false,
1310
- "options": [
1311
- "text",
1312
- "json"
1313
- ],
1314
1349
  "type": "option"
1315
1350
  },
1316
- "provider": {
1317
- "char": "p",
1318
- "description": "Provider ID (defaults to active provider)",
1319
- "name": "provider",
1320
- "hasDynamicHelp": false,
1321
- "multiple": false,
1322
- "type": "option"
1351
+ "base-url": {
1352
+ "char": "b",
1353
+ "description": "Base URL for OpenAI-compatible providers (e.g., http://localhost:11434/v1)",
1354
+ "name": "base-url",
1355
+ "hasDynamicHelp": false,
1356
+ "multiple": false,
1357
+ "type": "option"
1358
+ },
1359
+ "code": {
1360
+ "char": "c",
1361
+ "description": "Authorization code for code-paste OAuth providers (e.g., Anthropic). Not applicable to browser-callback providers like OpenAI — use --oauth without --code instead.",
1362
+ "hidden": true,
1363
+ "name": "code",
1364
+ "hasDynamicHelp": false,
1365
+ "multiple": false,
1366
+ "type": "option"
1367
+ },
1368
+ "format": {
1369
+ "description": "Output format (text or json)",
1370
+ "name": "format",
1371
+ "default": "text",
1372
+ "hasDynamicHelp": false,
1373
+ "multiple": false,
1374
+ "options": [
1375
+ "text",
1376
+ "json"
1377
+ ],
1378
+ "type": "option"
1379
+ },
1380
+ "model": {
1381
+ "char": "m",
1382
+ "description": "Model to set as active after connecting",
1383
+ "name": "model",
1384
+ "hasDynamicHelp": false,
1385
+ "multiple": false,
1386
+ "type": "option"
1387
+ },
1388
+ "oauth": {
1389
+ "description": "Connect via OAuth (browser-based)",
1390
+ "name": "oauth",
1391
+ "allowNo": false,
1392
+ "type": "boolean"
1393
+ }
1394
+ },
1395
+ "hasDynamicHelp": false,
1396
+ "hiddenAliases": [],
1397
+ "id": "providers:connect",
1398
+ "pluginAlias": "byterover-cli",
1399
+ "pluginName": "byterover-cli",
1400
+ "pluginType": "core",
1401
+ "strict": true,
1402
+ "enableJsonFlag": false,
1403
+ "isESM": true,
1404
+ "relativePath": [
1405
+ "dist",
1406
+ "oclif",
1407
+ "commands",
1408
+ "providers",
1409
+ "connect.js"
1410
+ ]
1411
+ },
1412
+ "providers:disconnect": {
1413
+ "aliases": [],
1414
+ "args": {
1415
+ "provider": {
1416
+ "description": "Provider ID to disconnect",
1417
+ "name": "provider",
1418
+ "required": true
1419
+ }
1420
+ },
1421
+ "description": "Disconnect an LLM provider",
1422
+ "examples": [
1423
+ "<%= config.bin %> providers disconnect anthropic",
1424
+ "<%= config.bin %> providers disconnect openai --format json"
1425
+ ],
1426
+ "flags": {
1427
+ "format": {
1428
+ "description": "Output format (text or json)",
1429
+ "name": "format",
1430
+ "default": "text",
1431
+ "hasDynamicHelp": false,
1432
+ "multiple": false,
1433
+ "options": [
1434
+ "text",
1435
+ "json"
1436
+ ],
1437
+ "type": "option"
1438
+ }
1439
+ },
1440
+ "hasDynamicHelp": false,
1441
+ "hiddenAliases": [],
1442
+ "id": "providers:disconnect",
1443
+ "pluginAlias": "byterover-cli",
1444
+ "pluginName": "byterover-cli",
1445
+ "pluginType": "core",
1446
+ "strict": true,
1447
+ "enableJsonFlag": false,
1448
+ "isESM": true,
1449
+ "relativePath": [
1450
+ "dist",
1451
+ "oclif",
1452
+ "commands",
1453
+ "providers",
1454
+ "disconnect.js"
1455
+ ]
1456
+ },
1457
+ "providers": {
1458
+ "aliases": [],
1459
+ "args": {},
1460
+ "description": "Show active provider and model",
1461
+ "examples": [
1462
+ "<%= config.bin %> providers",
1463
+ "<%= config.bin %> providers --format json"
1464
+ ],
1465
+ "flags": {
1466
+ "format": {
1467
+ "description": "Output format (text or json)",
1468
+ "name": "format",
1469
+ "default": "text",
1470
+ "hasDynamicHelp": false,
1471
+ "multiple": false,
1472
+ "options": [
1473
+ "text",
1474
+ "json"
1475
+ ],
1476
+ "type": "option"
1477
+ }
1478
+ },
1479
+ "hasDynamicHelp": false,
1480
+ "hiddenAliases": [],
1481
+ "id": "providers",
1482
+ "pluginAlias": "byterover-cli",
1483
+ "pluginName": "byterover-cli",
1484
+ "pluginType": "core",
1485
+ "strict": true,
1486
+ "enableJsonFlag": false,
1487
+ "isESM": true,
1488
+ "relativePath": [
1489
+ "dist",
1490
+ "oclif",
1491
+ "commands",
1492
+ "providers",
1493
+ "index.js"
1494
+ ]
1495
+ },
1496
+ "providers:list": {
1497
+ "aliases": [],
1498
+ "args": {},
1499
+ "description": "List all available providers and their connection status",
1500
+ "examples": [
1501
+ "<%= config.bin %> providers list",
1502
+ "<%= config.bin %> providers list --format json"
1503
+ ],
1504
+ "flags": {
1505
+ "format": {
1506
+ "description": "Output format (text or json)",
1507
+ "name": "format",
1508
+ "default": "text",
1509
+ "hasDynamicHelp": false,
1510
+ "multiple": false,
1511
+ "options": [
1512
+ "text",
1513
+ "json"
1514
+ ],
1515
+ "type": "option"
1516
+ }
1517
+ },
1518
+ "hasDynamicHelp": false,
1519
+ "hiddenAliases": [],
1520
+ "id": "providers:list",
1521
+ "pluginAlias": "byterover-cli",
1522
+ "pluginName": "byterover-cli",
1523
+ "pluginType": "core",
1524
+ "strict": true,
1525
+ "enableJsonFlag": false,
1526
+ "isESM": true,
1527
+ "relativePath": [
1528
+ "dist",
1529
+ "oclif",
1530
+ "commands",
1531
+ "providers",
1532
+ "list.js"
1533
+ ]
1534
+ },
1535
+ "providers:switch": {
1536
+ "aliases": [],
1537
+ "args": {
1538
+ "provider": {
1539
+ "description": "Provider ID to switch to (e.g., anthropic, openai)",
1540
+ "name": "provider",
1541
+ "required": true
1542
+ }
1543
+ },
1544
+ "description": "Switch the active provider",
1545
+ "examples": [
1546
+ "<%= config.bin %> providers switch anthropic",
1547
+ "<%= config.bin %> providers switch openai --format json"
1548
+ ],
1549
+ "flags": {
1550
+ "format": {
1551
+ "description": "Output format (text or json)",
1552
+ "name": "format",
1553
+ "default": "text",
1554
+ "hasDynamicHelp": false,
1555
+ "multiple": false,
1556
+ "options": [
1557
+ "text",
1558
+ "json"
1559
+ ],
1560
+ "type": "option"
1561
+ }
1562
+ },
1563
+ "hasDynamicHelp": false,
1564
+ "hiddenAliases": [],
1565
+ "id": "providers:switch",
1566
+ "pluginAlias": "byterover-cli",
1567
+ "pluginName": "byterover-cli",
1568
+ "pluginType": "core",
1569
+ "strict": true,
1570
+ "enableJsonFlag": false,
1571
+ "isESM": true,
1572
+ "relativePath": [
1573
+ "dist",
1574
+ "oclif",
1575
+ "commands",
1576
+ "providers",
1577
+ "switch.js"
1578
+ ]
1579
+ },
1580
+ "space:list": {
1581
+ "aliases": [],
1582
+ "args": {},
1583
+ "description": "List all teams and spaces (deprecated)",
1584
+ "examples": [
1585
+ "<%= config.bin %> space list"
1586
+ ],
1587
+ "flags": {
1588
+ "format": {
1589
+ "char": "f",
1590
+ "description": "Output format",
1591
+ "name": "format",
1592
+ "default": "text",
1593
+ "hasDynamicHelp": false,
1594
+ "multiple": false,
1595
+ "options": [
1596
+ "text",
1597
+ "json"
1598
+ ],
1599
+ "type": "option"
1600
+ }
1601
+ },
1602
+ "hasDynamicHelp": false,
1603
+ "hiddenAliases": [],
1604
+ "id": "space:list",
1605
+ "pluginAlias": "byterover-cli",
1606
+ "pluginName": "byterover-cli",
1607
+ "pluginType": "core",
1608
+ "strict": true,
1609
+ "enableJsonFlag": false,
1610
+ "isESM": true,
1611
+ "relativePath": [
1612
+ "dist",
1613
+ "oclif",
1614
+ "commands",
1615
+ "space",
1616
+ "list.js"
1617
+ ]
1618
+ },
1619
+ "space:switch": {
1620
+ "aliases": [],
1621
+ "args": {},
1622
+ "description": "Switch to a different space (deprecated)",
1623
+ "examples": [
1624
+ "<%= config.bin %> space switch"
1625
+ ],
1626
+ "flags": {
1627
+ "format": {
1628
+ "char": "f",
1629
+ "description": "Output format",
1630
+ "name": "format",
1631
+ "default": "text",
1632
+ "hasDynamicHelp": false,
1633
+ "multiple": false,
1634
+ "options": [
1635
+ "text",
1636
+ "json"
1637
+ ],
1638
+ "type": "option"
1639
+ }
1640
+ },
1641
+ "hasDynamicHelp": false,
1642
+ "hiddenAliases": [],
1643
+ "id": "space:switch",
1644
+ "pluginAlias": "byterover-cli",
1645
+ "pluginName": "byterover-cli",
1646
+ "pluginType": "core",
1647
+ "strict": true,
1648
+ "enableJsonFlag": false,
1649
+ "isESM": true,
1650
+ "relativePath": [
1651
+ "dist",
1652
+ "oclif",
1653
+ "commands",
1654
+ "space",
1655
+ "switch.js"
1656
+ ]
1657
+ },
1658
+ "vc:add": {
1659
+ "aliases": [],
1660
+ "args": {},
1661
+ "description": "Stage files for the next commit",
1662
+ "examples": [
1663
+ "<%= config.bin %> <%= command.id %> .",
1664
+ "<%= config.bin %> <%= command.id %> notes.md",
1665
+ "<%= config.bin %> <%= command.id %> design/architecture.md",
1666
+ "<%= config.bin %> <%= command.id %> docs/"
1667
+ ],
1668
+ "flags": {},
1669
+ "hasDynamicHelp": false,
1670
+ "hiddenAliases": [],
1671
+ "id": "vc:add",
1672
+ "pluginAlias": "byterover-cli",
1673
+ "pluginName": "byterover-cli",
1674
+ "pluginType": "core",
1675
+ "strict": false,
1676
+ "enableJsonFlag": false,
1677
+ "isESM": true,
1678
+ "relativePath": [
1679
+ "dist",
1680
+ "oclif",
1681
+ "commands",
1682
+ "vc",
1683
+ "add.js"
1684
+ ]
1685
+ },
1686
+ "vc:branch": {
1687
+ "aliases": [],
1688
+ "args": {
1689
+ "name": {
1690
+ "description": "Branch name to create",
1691
+ "name": "name"
1692
+ }
1693
+ },
1694
+ "description": "List, create, or delete local branches",
1695
+ "examples": [
1696
+ "<%= config.bin %> <%= command.id %>",
1697
+ "<%= config.bin %> <%= command.id %> feature/new-context",
1698
+ "<%= config.bin %> <%= command.id %> -d feature/new-context",
1699
+ "<%= config.bin %> <%= command.id %> -a",
1700
+ "<%= config.bin %> <%= command.id %> --set-upstream-to origin/main"
1701
+ ],
1702
+ "flags": {
1703
+ "all": {
1704
+ "char": "a",
1705
+ "description": "List all branches including remote-tracking",
1706
+ "name": "all",
1707
+ "allowNo": false,
1708
+ "type": "boolean"
1709
+ },
1710
+ "delete": {
1711
+ "char": "d",
1712
+ "description": "Delete a branch by name",
1713
+ "name": "delete",
1714
+ "hasDynamicHelp": false,
1715
+ "multiple": false,
1716
+ "type": "option"
1717
+ },
1718
+ "set-upstream-to": {
1719
+ "description": "Set upstream tracking (e.g. origin/main)",
1720
+ "name": "set-upstream-to",
1721
+ "hasDynamicHelp": false,
1722
+ "multiple": false,
1723
+ "type": "option"
1724
+ }
1725
+ },
1726
+ "hasDynamicHelp": false,
1727
+ "hiddenAliases": [],
1728
+ "id": "vc:branch",
1729
+ "pluginAlias": "byterover-cli",
1730
+ "pluginName": "byterover-cli",
1731
+ "pluginType": "core",
1732
+ "strict": true,
1733
+ "enableJsonFlag": false,
1734
+ "isESM": true,
1735
+ "relativePath": [
1736
+ "dist",
1737
+ "oclif",
1738
+ "commands",
1739
+ "vc",
1740
+ "branch.js"
1741
+ ]
1742
+ },
1743
+ "vc:checkout": {
1744
+ "aliases": [],
1745
+ "args": {
1746
+ "branch": {
1747
+ "description": "Branch to switch to",
1748
+ "name": "branch",
1749
+ "required": true
1750
+ }
1751
+ },
1752
+ "description": "Switch to an existing branch, or create and switch with -b",
1753
+ "examples": [
1754
+ "<%= config.bin %> <%= command.id %> feature/my-branch",
1755
+ "<%= config.bin %> <%= command.id %> -b feature/new-branch",
1756
+ "<%= config.bin %> <%= command.id %> --force feature/my-branch"
1757
+ ],
1758
+ "flags": {
1759
+ "create": {
1760
+ "char": "b",
1761
+ "description": "Create a new branch and switch to it",
1762
+ "name": "create",
1763
+ "allowNo": false,
1764
+ "type": "boolean"
1765
+ },
1766
+ "force": {
1767
+ "description": "Discard local changes and switch",
1768
+ "name": "force",
1769
+ "allowNo": false,
1770
+ "type": "boolean"
1771
+ }
1772
+ },
1773
+ "hasDynamicHelp": false,
1774
+ "hiddenAliases": [],
1775
+ "id": "vc:checkout",
1776
+ "pluginAlias": "byterover-cli",
1777
+ "pluginName": "byterover-cli",
1778
+ "pluginType": "core",
1779
+ "strict": true,
1780
+ "enableJsonFlag": false,
1781
+ "isESM": true,
1782
+ "relativePath": [
1783
+ "dist",
1784
+ "oclif",
1785
+ "commands",
1786
+ "vc",
1787
+ "checkout.js"
1788
+ ]
1789
+ },
1790
+ "vc:clone": {
1791
+ "aliases": [],
1792
+ "args": {
1793
+ "url": {
1794
+ "description": "Clone URL (e.g. https://byterover.dev/<team>/<space>.git)",
1795
+ "name": "url"
1796
+ }
1797
+ },
1798
+ "description": "Clone a ByteRover space repository",
1799
+ "examples": [
1800
+ "<%= config.bin %> vc clone https://byterover.dev/acme/project.git"
1801
+ ],
1802
+ "flags": {},
1803
+ "hasDynamicHelp": false,
1804
+ "hiddenAliases": [],
1805
+ "id": "vc:clone",
1806
+ "pluginAlias": "byterover-cli",
1807
+ "pluginName": "byterover-cli",
1808
+ "pluginType": "core",
1809
+ "strict": true,
1810
+ "enableJsonFlag": false,
1811
+ "isESM": true,
1812
+ "relativePath": [
1813
+ "dist",
1814
+ "oclif",
1815
+ "commands",
1816
+ "vc",
1817
+ "clone.js"
1818
+ ]
1819
+ },
1820
+ "vc:commit": {
1821
+ "aliases": [],
1822
+ "args": {},
1823
+ "description": "Save staged changes as a commit",
1824
+ "examples": [
1825
+ "<%= config.bin %> <%= command.id %> -m \"Add project architecture notes\""
1826
+ ],
1827
+ "flags": {
1828
+ "message": {
1829
+ "char": "m",
1830
+ "description": "Commit message",
1831
+ "name": "message",
1832
+ "hasDynamicHelp": false,
1833
+ "multiple": false,
1834
+ "type": "option"
1835
+ }
1836
+ },
1837
+ "hasDynamicHelp": false,
1838
+ "hiddenAliases": [],
1839
+ "id": "vc:commit",
1840
+ "pluginAlias": "byterover-cli",
1841
+ "pluginName": "byterover-cli",
1842
+ "pluginType": "core",
1843
+ "strict": false,
1844
+ "enableJsonFlag": false,
1845
+ "isESM": true,
1846
+ "relativePath": [
1847
+ "dist",
1848
+ "oclif",
1849
+ "commands",
1850
+ "vc",
1851
+ "commit.js"
1852
+ ]
1853
+ },
1854
+ "vc:config": {
1855
+ "aliases": [],
1856
+ "args": {
1857
+ "key": {
1858
+ "description": "Config key (user.name or user.email)",
1859
+ "name": "key",
1860
+ "required": true
1861
+ },
1862
+ "value": {
1863
+ "description": "Value to set (omit to read current value)",
1864
+ "name": "value"
1865
+ }
1866
+ },
1867
+ "description": "Get or set commit author for ByteRover version control",
1868
+ "examples": [
1869
+ "<%= config.bin %> <%= command.id %> user.name \"Your Name\"",
1870
+ "<%= config.bin %> <%= command.id %> user.email \"you@example.com\"",
1871
+ "<%= config.bin %> <%= command.id %> user.name",
1872
+ "<%= config.bin %> <%= command.id %> user.email"
1873
+ ],
1874
+ "flags": {},
1875
+ "hasDynamicHelp": false,
1876
+ "hiddenAliases": [],
1877
+ "id": "vc:config",
1878
+ "pluginAlias": "byterover-cli",
1879
+ "pluginName": "byterover-cli",
1880
+ "pluginType": "core",
1881
+ "strict": true,
1882
+ "enableJsonFlag": false,
1883
+ "isESM": true,
1884
+ "relativePath": [
1885
+ "dist",
1886
+ "oclif",
1887
+ "commands",
1888
+ "vc",
1889
+ "config.js"
1890
+ ]
1891
+ },
1892
+ "vc:fetch": {
1893
+ "aliases": [],
1894
+ "args": {
1895
+ "remote": {
1896
+ "description": "Remote name (only origin supported)",
1897
+ "name": "remote",
1898
+ "required": false
1899
+ },
1900
+ "branch": {
1901
+ "description": "Branch to fetch",
1902
+ "name": "branch",
1903
+ "required": false
1904
+ }
1905
+ },
1906
+ "description": "Fetch refs from ByteRover cloud",
1907
+ "examples": [
1908
+ "<%= config.bin %> <%= command.id %>",
1909
+ "<%= config.bin %> <%= command.id %> origin",
1910
+ "<%= config.bin %> <%= command.id %> origin main"
1911
+ ],
1912
+ "flags": {},
1913
+ "hasDynamicHelp": false,
1914
+ "hiddenAliases": [],
1915
+ "id": "vc:fetch",
1916
+ "pluginAlias": "byterover-cli",
1917
+ "pluginName": "byterover-cli",
1918
+ "pluginType": "core",
1919
+ "strict": true,
1920
+ "enableJsonFlag": false,
1921
+ "isESM": true,
1922
+ "relativePath": [
1923
+ "dist",
1924
+ "oclif",
1925
+ "commands",
1926
+ "vc",
1927
+ "fetch.js"
1928
+ ]
1929
+ },
1930
+ "vc": {
1931
+ "aliases": [],
1932
+ "args": {},
1933
+ "description": "Version control commands for the context tree",
1934
+ "examples": [
1935
+ "<%= config.bin %> <%= command.id %> --help"
1936
+ ],
1937
+ "flags": {},
1938
+ "hasDynamicHelp": false,
1939
+ "hiddenAliases": [],
1940
+ "id": "vc",
1941
+ "pluginAlias": "byterover-cli",
1942
+ "pluginName": "byterover-cli",
1943
+ "pluginType": "core",
1944
+ "strict": true,
1945
+ "enableJsonFlag": false,
1946
+ "isESM": true,
1947
+ "relativePath": [
1948
+ "dist",
1949
+ "oclif",
1950
+ "commands",
1951
+ "vc",
1952
+ "index.js"
1953
+ ]
1954
+ },
1955
+ "vc:init": {
1956
+ "aliases": [],
1957
+ "args": {},
1958
+ "description": "Initialize ByteRover version control for context tree",
1959
+ "examples": [
1960
+ "<%= config.bin %> <%= command.id %>"
1961
+ ],
1962
+ "flags": {},
1963
+ "hasDynamicHelp": false,
1964
+ "hiddenAliases": [],
1965
+ "id": "vc:init",
1966
+ "pluginAlias": "byterover-cli",
1967
+ "pluginName": "byterover-cli",
1968
+ "pluginType": "core",
1969
+ "strict": true,
1970
+ "enableJsonFlag": false,
1971
+ "isESM": true,
1972
+ "relativePath": [
1973
+ "dist",
1974
+ "oclif",
1975
+ "commands",
1976
+ "vc",
1977
+ "init.js"
1978
+ ]
1979
+ },
1980
+ "vc:log": {
1981
+ "aliases": [],
1982
+ "args": {
1983
+ "branch": {
1984
+ "description": "Branch name to show history for",
1985
+ "name": "branch"
1986
+ }
1987
+ },
1988
+ "description": "Show commit history for the context-tree",
1989
+ "examples": [
1990
+ "<%= config.bin %> <%= command.id %>",
1991
+ "<%= config.bin %> <%= command.id %> --limit 20",
1992
+ "<%= config.bin %> <%= command.id %> main",
1993
+ "<%= config.bin %> <%= command.id %> --all"
1994
+ ],
1995
+ "flags": {
1996
+ "all": {
1997
+ "char": "a",
1998
+ "description": "Show commits from all branches",
1999
+ "name": "all",
2000
+ "allowNo": false,
2001
+ "type": "boolean"
2002
+ },
2003
+ "limit": {
2004
+ "description": "Number of commits to show",
2005
+ "name": "limit",
2006
+ "default": 10,
2007
+ "hasDynamicHelp": false,
2008
+ "multiple": false,
2009
+ "type": "option"
1323
2010
  }
1324
2011
  },
1325
2012
  "hasDynamicHelp": false,
1326
2013
  "hiddenAliases": [],
1327
- "id": "model:switch",
2014
+ "id": "vc:log",
1328
2015
  "pluginAlias": "byterover-cli",
1329
2016
  "pluginName": "byterover-cli",
1330
2017
  "pluginType": "core",
@@ -1335,36 +2022,63 @@
1335
2022
  "dist",
1336
2023
  "oclif",
1337
2024
  "commands",
1338
- "model",
1339
- "switch.js"
2025
+ "vc",
2026
+ "log.js"
1340
2027
  ]
1341
2028
  },
1342
- "space:list": {
2029
+ "vc:merge": {
1343
2030
  "aliases": [],
1344
- "args": {},
1345
- "description": "List all teams and spaces",
2031
+ "args": {
2032
+ "branch": {
2033
+ "description": "Branch to merge into the current branch",
2034
+ "name": "branch",
2035
+ "required": false
2036
+ }
2037
+ },
2038
+ "description": "Merge a branch into the current branch",
1346
2039
  "examples": [
1347
- "<%= config.bin %> space list",
1348
- "<%= config.bin %> space list --format json"
2040
+ "<%= config.bin %> <%= command.id %> feature/my-branch",
2041
+ "<%= config.bin %> <%= command.id %> --abort",
2042
+ "<%= config.bin %> <%= command.id %> --continue",
2043
+ "<%= config.bin %> <%= command.id %> -m \"Custom merge message\" feature/my-branch"
1349
2044
  ],
1350
2045
  "flags": {
1351
- "format": {
1352
- "char": "f",
1353
- "description": "Output format",
1354
- "name": "format",
1355
- "default": "text",
2046
+ "abort": {
2047
+ "description": "Abort the current merge",
2048
+ "exclusive": [
2049
+ "continue"
2050
+ ],
2051
+ "name": "abort",
2052
+ "allowNo": false,
2053
+ "type": "boolean"
2054
+ },
2055
+ "allow-unrelated-histories": {
2056
+ "description": "Allow merging unrelated histories",
2057
+ "name": "allow-unrelated-histories",
2058
+ "allowNo": false,
2059
+ "type": "boolean"
2060
+ },
2061
+ "continue": {
2062
+ "description": "Continue the current merge after resolving conflicts",
2063
+ "exclusive": [
2064
+ "abort"
2065
+ ],
2066
+ "name": "continue",
2067
+ "allowNo": false,
2068
+ "type": "boolean"
2069
+ },
2070
+ "message": {
2071
+ "char": "m",
2072
+ "description": "Merge commit message",
2073
+ "name": "message",
1356
2074
  "hasDynamicHelp": false,
1357
2075
  "multiple": false,
1358
- "options": [
1359
- "text",
1360
- "json"
1361
- ],
1362
2076
  "type": "option"
1363
2077
  }
1364
2078
  },
1365
2079
  "hasDynamicHelp": false,
1366
2080
  "hiddenAliases": [],
1367
- "id": "space:list",
2081
+ "id": "vc:merge",
1368
2082
  "pluginAlias": "byterover-cli",
1369
2083
  "pluginName": "byterover-cli",
1370
2084
  "pluginType": "core",
@@ -1375,54 +2089,160 @@
1375
2089
  "dist",
1376
2090
  "oclif",
1377
2091
  "commands",
1378
- "space",
1379
- "list.js"
2092
+ "vc",
2093
+ "merge.js"
1380
2094
  ]
1381
2095
  },
1382
- "space:switch": {
2096
+ "vc:pull": {
2097
+ "aliases": [],
2098
+ "args": {
2099
+ "remote": {
2100
+ "description": "Remote name (only origin supported)",
2101
+ "name": "remote",
2102
+ "required": false
2103
+ },
2104
+ "branch": {
2105
+ "description": "Branch to pull",
2106
+ "name": "branch",
2107
+ "required": false
2108
+ }
2109
+ },
2110
+ "description": "Pull commits from ByteRover cloud",
2111
+ "examples": [
2112
+ "<%= config.bin %> <%= command.id %>",
2113
+ "<%= config.bin %> <%= command.id %> origin main",
2114
+ "<%= config.bin %> <%= command.id %> origin main --allow-unrelated-histories"
2115
+ ],
2116
+ "flags": {
2117
+ "allow-unrelated-histories": {
2118
+ "description": "Allow merging unrelated histories",
2119
+ "name": "allow-unrelated-histories",
2120
+ "allowNo": false,
2121
+ "type": "boolean"
2122
+ }
2123
+ },
2124
+ "hasDynamicHelp": false,
2125
+ "hiddenAliases": [],
2126
+ "id": "vc:pull",
2127
+ "pluginAlias": "byterover-cli",
2128
+ "pluginName": "byterover-cli",
2129
+ "pluginType": "core",
2130
+ "strict": true,
2131
+ "enableJsonFlag": false,
2132
+ "isESM": true,
2133
+ "relativePath": [
2134
+ "dist",
2135
+ "oclif",
2136
+ "commands",
2137
+ "vc",
2138
+ "pull.js"
2139
+ ]
2140
+ },
2141
+ "vc:push": {
2142
+ "aliases": [],
2143
+ "args": {
2144
+ "remote": {
2145
+ "description": "Remote name (only origin supported)",
2146
+ "name": "remote",
2147
+ "required": false
2148
+ },
2149
+ "branch": {
2150
+ "description": "Branch to push",
2151
+ "name": "branch",
2152
+ "required": false
2153
+ }
2154
+ },
2155
+ "description": "Push commits to ByteRover cloud",
2156
+ "examples": [
2157
+ "<%= config.bin %> <%= command.id %>",
2158
+ "<%= config.bin %> <%= command.id %> -u",
2159
+ "<%= config.bin %> <%= command.id %> origin feat/my-branch"
2160
+ ],
2161
+ "flags": {
2162
+ "set-upstream": {
2163
+ "char": "u",
2164
+ "description": "Set upstream tracking branch",
2165
+ "name": "set-upstream",
2166
+ "allowNo": false,
2167
+ "type": "boolean"
2168
+ }
2169
+ },
2170
+ "hasDynamicHelp": false,
2171
+ "hiddenAliases": [],
2172
+ "id": "vc:push",
2173
+ "pluginAlias": "byterover-cli",
2174
+ "pluginName": "byterover-cli",
2175
+ "pluginType": "core",
2176
+ "strict": true,
2177
+ "enableJsonFlag": false,
2178
+ "isESM": true,
2179
+ "relativePath": [
2180
+ "dist",
2181
+ "oclif",
2182
+ "commands",
2183
+ "vc",
2184
+ "push.js"
2185
+ ]
2186
+ },
2187
+ "vc:reset": {
1383
2188
  "aliases": [],
1384
2189
  "args": {},
1385
- "description": "Switch to a different space",
2190
+ "description": "Unstage files or undo commits",
1386
2191
  "examples": [
1387
- "<%= config.bin %> space switch --team acme --name my-space",
1388
- "<%= config.bin %> space switch --team acme --name my-space --format json"
2192
+ "<%= config.bin %> <%= command.id %>",
2193
+ "<%= config.bin %> <%= command.id %> notes.md",
2194
+ "<%= config.bin %> <%= command.id %> --soft HEAD~1",
2195
+ "<%= config.bin %> <%= command.id %> --hard HEAD~1",
2196
+ "<%= config.bin %> <%= command.id %> --hard"
1389
2197
  ],
1390
2198
  "flags": {
1391
- "format": {
1392
- "char": "f",
1393
- "description": "Output format",
1394
- "name": "format",
1395
- "default": "text",
1396
- "hasDynamicHelp": false,
1397
- "multiple": false,
1398
- "options": [
1399
- "text",
1400
- "json"
2199
+ "hard": {
2200
+ "description": "Reset HEAD, index, and working tree",
2201
+ "exclusive": [
2202
+ "soft"
1401
2203
  ],
1402
- "type": "option"
1403
- },
1404
- "name": {
1405
- "char": "n",
1406
- "description": "Name of the space to switch to",
1407
- "name": "name",
1408
- "required": true,
1409
- "hasDynamicHelp": false,
1410
- "multiple": false,
1411
- "type": "option"
2204
+ "name": "hard",
2205
+ "allowNo": false,
2206
+ "type": "boolean"
1412
2207
  },
1413
- "team": {
1414
- "char": "t",
1415
- "description": "Team name",
1416
- "name": "team",
1417
- "required": true,
1418
- "hasDynamicHelp": false,
1419
- "multiple": false,
1420
- "type": "option"
2208
+ "soft": {
2209
+ "description": "Reset HEAD only, keep changes staged",
2210
+ "exclusive": [
2211
+ "hard"
2212
+ ],
2213
+ "name": "soft",
2214
+ "allowNo": false,
2215
+ "type": "boolean"
1421
2216
  }
1422
2217
  },
1423
2218
  "hasDynamicHelp": false,
1424
2219
  "hiddenAliases": [],
1425
- "id": "space:switch",
2220
+ "id": "vc:reset",
2221
+ "pluginAlias": "byterover-cli",
2222
+ "pluginName": "byterover-cli",
2223
+ "pluginType": "core",
2224
+ "strict": false,
2225
+ "enableJsonFlag": false,
2226
+ "isESM": true,
2227
+ "relativePath": [
2228
+ "dist",
2229
+ "oclif",
2230
+ "commands",
2231
+ "vc",
2232
+ "reset.js"
2233
+ ]
2234
+ },
2235
+ "vc:status": {
2236
+ "aliases": [],
2237
+ "args": {},
2238
+ "description": "Show ByteRover version control status",
2239
+ "examples": [
2240
+ "<%= config.bin %> <%= command.id %>"
2241
+ ],
2242
+ "flags": {},
2243
+ "hasDynamicHelp": false,
2244
+ "hiddenAliases": [],
2245
+ "id": "vc:status",
1426
2246
  "pluginAlias": "byterover-cli",
1427
2247
  "pluginName": "byterover-cli",
1428
2248
  "pluginType": "core",
@@ -1433,8 +2253,8 @@
1433
2253
  "dist",
1434
2254
  "oclif",
1435
2255
  "commands",
1436
- "space",
1437
- "switch.js"
2256
+ "vc",
2257
+ "status.js"
1438
2258
  ]
1439
2259
  },
1440
2260
  "hub:registry:add": {
@@ -1634,7 +2454,107 @@
1634
2454
  "registry",
1635
2455
  "remove.js"
1636
2456
  ]
2457
+ },
2458
+ "vc:remote:add": {
2459
+ "aliases": [],
2460
+ "args": {
2461
+ "name": {
2462
+ "description": "Remote name",
2463
+ "name": "name",
2464
+ "required": true
2465
+ },
2466
+ "url": {
2467
+ "description": "Remote URL (e.g. https://byterover.dev/<team>/<space>.git)",
2468
+ "name": "url",
2469
+ "required": true
2470
+ }
2471
+ },
2472
+ "description": "Add a named remote",
2473
+ "examples": [
2474
+ "<%= config.bin %> <%= command.id %> origin https://byterover.dev/acme/project.git"
2475
+ ],
2476
+ "flags": {},
2477
+ "hasDynamicHelp": false,
2478
+ "hiddenAliases": [],
2479
+ "id": "vc:remote:add",
2480
+ "pluginAlias": "byterover-cli",
2481
+ "pluginName": "byterover-cli",
2482
+ "pluginType": "core",
2483
+ "strict": true,
2484
+ "enableJsonFlag": false,
2485
+ "isESM": true,
2486
+ "relativePath": [
2487
+ "dist",
2488
+ "oclif",
2489
+ "commands",
2490
+ "vc",
2491
+ "remote",
2492
+ "add.js"
2493
+ ]
2494
+ },
2495
+ "vc:remote": {
2496
+ "aliases": [],
2497
+ "args": {},
2498
+ "description": "Show current remote origin",
2499
+ "examples": [
2500
+ "<%= config.bin %> <%= command.id %>"
2501
+ ],
2502
+ "flags": {},
2503
+ "hasDynamicHelp": false,
2504
+ "hiddenAliases": [],
2505
+ "id": "vc:remote",
2506
+ "pluginAlias": "byterover-cli",
2507
+ "pluginName": "byterover-cli",
2508
+ "pluginType": "core",
2509
+ "strict": true,
2510
+ "enableJsonFlag": false,
2511
+ "isESM": true,
2512
+ "relativePath": [
2513
+ "dist",
2514
+ "oclif",
2515
+ "commands",
2516
+ "vc",
2517
+ "remote",
2518
+ "index.js"
2519
+ ]
2520
+ },
2521
+ "vc:remote:set-url": {
2522
+ "aliases": [],
2523
+ "args": {
2524
+ "name": {
2525
+ "description": "Remote name",
2526
+ "name": "name",
2527
+ "required": true
2528
+ },
2529
+ "url": {
2530
+ "description": "Remote URL (e.g. https://byterover.dev/<team>/<space>.git)",
2531
+ "name": "url",
2532
+ "required": true
2533
+ }
2534
+ },
2535
+ "description": "Update a remote URL",
2536
+ "examples": [
2537
+ "<%= config.bin %> <%= command.id %> origin https://byterover.dev/acme/project.git"
2538
+ ],
2539
+ "flags": {},
2540
+ "hasDynamicHelp": false,
2541
+ "hiddenAliases": [],
2542
+ "id": "vc:remote:set-url",
2543
+ "pluginAlias": "byterover-cli",
2544
+ "pluginName": "byterover-cli",
2545
+ "pluginType": "core",
2546
+ "strict": true,
2547
+ "enableJsonFlag": false,
2548
+ "isESM": true,
2549
+ "relativePath": [
2550
+ "dist",
2551
+ "oclif",
2552
+ "commands",
2553
+ "vc",
2554
+ "remote",
2555
+ "set-url.js"
2556
+ ]
1637
2557
  }
1638
2558
  },
1639
- "version": "2.6.0"
2559
+ "version": "3.0.0"
1640
2560
  }