@bloxystudios/bloxycode 1.0.2 → 1.0.4

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 (345) hide show
  1. package/bin/bloxycode +11 -8
  2. package/package.json +16 -143
  3. package/postinstall.mjs +129 -0
  4. package/LICENSE +0 -21
  5. package/README.md +0 -286
  6. package/src/acp/README.md +0 -164
  7. package/src/acp/agent.ts +0 -1437
  8. package/src/acp/session.ts +0 -105
  9. package/src/acp/types.ts +0 -22
  10. package/src/agent/agent.ts +0 -356
  11. package/src/agent/generate.txt +0 -75
  12. package/src/agent/prompt/bloxy.txt +0 -46
  13. package/src/agent/prompt/compaction.txt +0 -12
  14. package/src/agent/prompt/explore.txt +0 -18
  15. package/src/agent/prompt/summary.txt +0 -11
  16. package/src/agent/prompt/title.txt +0 -44
  17. package/src/auth/index.ts +0 -73
  18. package/src/bloxy/event.ts +0 -41
  19. package/src/bloxy/index.ts +0 -5
  20. package/src/bloxy/parser.ts +0 -263
  21. package/src/bloxy/prompt.ts +0 -121
  22. package/src/bloxy/runner.ts +0 -193
  23. package/src/bloxy/state.ts +0 -246
  24. package/src/bun/index.ts +0 -134
  25. package/src/bus/bus-event.ts +0 -43
  26. package/src/bus/global.ts +0 -10
  27. package/src/bus/index.ts +0 -105
  28. package/src/cli/bootstrap.ts +0 -17
  29. package/src/cli/cmd/acp.ts +0 -69
  30. package/src/cli/cmd/agent.ts +0 -257
  31. package/src/cli/cmd/auth.ts +0 -400
  32. package/src/cli/cmd/cmd.ts +0 -7
  33. package/src/cli/cmd/debug/agent.ts +0 -167
  34. package/src/cli/cmd/debug/config.ts +0 -16
  35. package/src/cli/cmd/debug/file.ts +0 -97
  36. package/src/cli/cmd/debug/index.ts +0 -48
  37. package/src/cli/cmd/debug/lsp.ts +0 -52
  38. package/src/cli/cmd/debug/ripgrep.ts +0 -87
  39. package/src/cli/cmd/debug/scrap.ts +0 -16
  40. package/src/cli/cmd/debug/skill.ts +0 -16
  41. package/src/cli/cmd/debug/snapshot.ts +0 -52
  42. package/src/cli/cmd/export.ts +0 -88
  43. package/src/cli/cmd/generate.ts +0 -38
  44. package/src/cli/cmd/github.ts +0 -1548
  45. package/src/cli/cmd/import.ts +0 -98
  46. package/src/cli/cmd/mcp.ts +0 -755
  47. package/src/cli/cmd/models.ts +0 -77
  48. package/src/cli/cmd/pr.ts +0 -112
  49. package/src/cli/cmd/run.ts +0 -395
  50. package/src/cli/cmd/serve.ts +0 -20
  51. package/src/cli/cmd/session.ts +0 -135
  52. package/src/cli/cmd/stats.ts +0 -402
  53. package/src/cli/cmd/tui/app.tsx +0 -771
  54. package/src/cli/cmd/tui/attach.ts +0 -39
  55. package/src/cli/cmd/tui/component/border.tsx +0 -21
  56. package/src/cli/cmd/tui/component/dialog-agent.tsx +0 -31
  57. package/src/cli/cmd/tui/component/dialog-command.tsx +0 -148
  58. package/src/cli/cmd/tui/component/dialog-mcp.tsx +0 -86
  59. package/src/cli/cmd/tui/component/dialog-model.tsx +0 -234
  60. package/src/cli/cmd/tui/component/dialog-provider.tsx +0 -256
  61. package/src/cli/cmd/tui/component/dialog-session-list.tsx +0 -114
  62. package/src/cli/cmd/tui/component/dialog-session-rename.tsx +0 -31
  63. package/src/cli/cmd/tui/component/dialog-stash.tsx +0 -87
  64. package/src/cli/cmd/tui/component/dialog-status.tsx +0 -164
  65. package/src/cli/cmd/tui/component/dialog-tag.tsx +0 -44
  66. package/src/cli/cmd/tui/component/dialog-theme-list.tsx +0 -50
  67. package/src/cli/cmd/tui/component/logo.tsx +0 -102
  68. package/src/cli/cmd/tui/component/prompt/autocomplete.tsx +0 -653
  69. package/src/cli/cmd/tui/component/prompt/frecency.tsx +0 -89
  70. package/src/cli/cmd/tui/component/prompt/history.tsx +0 -108
  71. package/src/cli/cmd/tui/component/prompt/index.tsx +0 -1138
  72. package/src/cli/cmd/tui/component/prompt/stash.tsx +0 -101
  73. package/src/cli/cmd/tui/component/textarea-keybindings.ts +0 -73
  74. package/src/cli/cmd/tui/component/tips.tsx +0 -153
  75. package/src/cli/cmd/tui/component/todo-item.tsx +0 -32
  76. package/src/cli/cmd/tui/context/args.tsx +0 -14
  77. package/src/cli/cmd/tui/context/directory.ts +0 -13
  78. package/src/cli/cmd/tui/context/exit.tsx +0 -23
  79. package/src/cli/cmd/tui/context/helper.tsx +0 -25
  80. package/src/cli/cmd/tui/context/keybind.tsx +0 -101
  81. package/src/cli/cmd/tui/context/kv.tsx +0 -52
  82. package/src/cli/cmd/tui/context/local.tsx +0 -402
  83. package/src/cli/cmd/tui/context/prompt.tsx +0 -18
  84. package/src/cli/cmd/tui/context/route.tsx +0 -46
  85. package/src/cli/cmd/tui/context/sdk.tsx +0 -94
  86. package/src/cli/cmd/tui/context/sync.tsx +0 -470
  87. package/src/cli/cmd/tui/context/theme/aura.json +0 -69
  88. package/src/cli/cmd/tui/context/theme/ayu.json +0 -80
  89. package/src/cli/cmd/tui/context/theme/bloxycode.json +0 -245
  90. package/src/cli/cmd/tui/context/theme/carbonfox.json +0 -248
  91. package/src/cli/cmd/tui/context/theme/catppuccin-frappe.json +0 -233
  92. package/src/cli/cmd/tui/context/theme/catppuccin-macchiato.json +0 -233
  93. package/src/cli/cmd/tui/context/theme/catppuccin.json +0 -112
  94. package/src/cli/cmd/tui/context/theme/cobalt2.json +0 -228
  95. package/src/cli/cmd/tui/context/theme/cursor.json +0 -249
  96. package/src/cli/cmd/tui/context/theme/dracula.json +0 -219
  97. package/src/cli/cmd/tui/context/theme/everforest.json +0 -241
  98. package/src/cli/cmd/tui/context/theme/flexoki.json +0 -237
  99. package/src/cli/cmd/tui/context/theme/github.json +0 -233
  100. package/src/cli/cmd/tui/context/theme/gruvbox.json +0 -242
  101. package/src/cli/cmd/tui/context/theme/kanagawa.json +0 -77
  102. package/src/cli/cmd/tui/context/theme/lucent-orng.json +0 -237
  103. package/src/cli/cmd/tui/context/theme/material.json +0 -235
  104. package/src/cli/cmd/tui/context/theme/matrix.json +0 -77
  105. package/src/cli/cmd/tui/context/theme/mercury.json +0 -252
  106. package/src/cli/cmd/tui/context/theme/monokai.json +0 -221
  107. package/src/cli/cmd/tui/context/theme/nightowl.json +0 -221
  108. package/src/cli/cmd/tui/context/theme/nord.json +0 -223
  109. package/src/cli/cmd/tui/context/theme/one-dark.json +0 -84
  110. package/src/cli/cmd/tui/context/theme/orng.json +0 -249
  111. package/src/cli/cmd/tui/context/theme/osaka-jade.json +0 -93
  112. package/src/cli/cmd/tui/context/theme/palenight.json +0 -222
  113. package/src/cli/cmd/tui/context/theme/rosepine.json +0 -234
  114. package/src/cli/cmd/tui/context/theme/solarized.json +0 -223
  115. package/src/cli/cmd/tui/context/theme/synthwave84.json +0 -226
  116. package/src/cli/cmd/tui/context/theme/tokyonight.json +0 -243
  117. package/src/cli/cmd/tui/context/theme/vercel.json +0 -245
  118. package/src/cli/cmd/tui/context/theme/vesper.json +0 -218
  119. package/src/cli/cmd/tui/context/theme/zenburn.json +0 -223
  120. package/src/cli/cmd/tui/context/theme.tsx +0 -1152
  121. package/src/cli/cmd/tui/event.ts +0 -48
  122. package/src/cli/cmd/tui/routes/home.tsx +0 -140
  123. package/src/cli/cmd/tui/routes/session/dialog-fork-from-timeline.tsx +0 -64
  124. package/src/cli/cmd/tui/routes/session/dialog-message.tsx +0 -109
  125. package/src/cli/cmd/tui/routes/session/dialog-subagent.tsx +0 -26
  126. package/src/cli/cmd/tui/routes/session/dialog-timeline.tsx +0 -47
  127. package/src/cli/cmd/tui/routes/session/footer.tsx +0 -91
  128. package/src/cli/cmd/tui/routes/session/header.tsx +0 -142
  129. package/src/cli/cmd/tui/routes/session/index.tsx +0 -2048
  130. package/src/cli/cmd/tui/routes/session/permission.tsx +0 -508
  131. package/src/cli/cmd/tui/routes/session/question.tsx +0 -453
  132. package/src/cli/cmd/tui/routes/session/sidebar.tsx +0 -313
  133. package/src/cli/cmd/tui/thread.ts +0 -165
  134. package/src/cli/cmd/tui/ui/dialog-alert.tsx +0 -57
  135. package/src/cli/cmd/tui/ui/dialog-confirm.tsx +0 -83
  136. package/src/cli/cmd/tui/ui/dialog-export-options.tsx +0 -204
  137. package/src/cli/cmd/tui/ui/dialog-help.tsx +0 -38
  138. package/src/cli/cmd/tui/ui/dialog-prompt.tsx +0 -77
  139. package/src/cli/cmd/tui/ui/dialog-select.tsx +0 -385
  140. package/src/cli/cmd/tui/ui/dialog.tsx +0 -167
  141. package/src/cli/cmd/tui/ui/link.tsx +0 -28
  142. package/src/cli/cmd/tui/ui/spinner.ts +0 -368
  143. package/src/cli/cmd/tui/ui/toast.tsx +0 -100
  144. package/src/cli/cmd/tui/util/clipboard.ts +0 -160
  145. package/src/cli/cmd/tui/util/editor.ts +0 -32
  146. package/src/cli/cmd/tui/util/signal.ts +0 -7
  147. package/src/cli/cmd/tui/util/terminal.ts +0 -114
  148. package/src/cli/cmd/tui/util/transcript.ts +0 -98
  149. package/src/cli/cmd/tui/worker.ts +0 -152
  150. package/src/cli/cmd/uninstall.ts +0 -357
  151. package/src/cli/cmd/upgrade.ts +0 -73
  152. package/src/cli/cmd/web.ts +0 -81
  153. package/src/cli/error.ts +0 -57
  154. package/src/cli/network.ts +0 -53
  155. package/src/cli/ui.ts +0 -86
  156. package/src/cli/upgrade.ts +0 -25
  157. package/src/command/index.ts +0 -173
  158. package/src/command/template/bloxy-resume.txt +0 -15
  159. package/src/command/template/bloxy-status.txt +0 -25
  160. package/src/command/template/bloxy-validate.txt +0 -22
  161. package/src/command/template/bloxy.txt +0 -14
  162. package/src/command/template/initialize.txt +0 -10
  163. package/src/command/template/review.txt +0 -99
  164. package/src/config/config.ts +0 -1367
  165. package/src/config/markdown.ts +0 -93
  166. package/src/env/index.ts +0 -26
  167. package/src/file/ignore.ts +0 -83
  168. package/src/file/index.ts +0 -415
  169. package/src/file/ripgrep.ts +0 -407
  170. package/src/file/time.ts +0 -69
  171. package/src/file/watcher.ts +0 -127
  172. package/src/flag/flag.ts +0 -79
  173. package/src/format/formatter.ts +0 -357
  174. package/src/format/index.ts +0 -137
  175. package/src/global/index.ts +0 -55
  176. package/src/id/id.ts +0 -83
  177. package/src/ide/index.ts +0 -76
  178. package/src/index.ts +0 -159
  179. package/src/installation/index.ts +0 -246
  180. package/src/lsp/client.ts +0 -252
  181. package/src/lsp/index.ts +0 -485
  182. package/src/lsp/language.ts +0 -119
  183. package/src/lsp/server.ts +0 -2046
  184. package/src/mcp/auth.ts +0 -135
  185. package/src/mcp/index.ts +0 -934
  186. package/src/mcp/oauth-callback.ts +0 -200
  187. package/src/mcp/oauth-provider.ts +0 -154
  188. package/src/patch/index.ts +0 -680
  189. package/src/permission/arity.ts +0 -163
  190. package/src/permission/index.ts +0 -210
  191. package/src/permission/next.ts +0 -280
  192. package/src/plugin/antigravity.ts +0 -378
  193. package/src/plugin/codex.ts +0 -506
  194. package/src/plugin/copilot.ts +0 -298
  195. package/src/plugin/index.ts +0 -136
  196. package/src/project/bootstrap.ts +0 -35
  197. package/src/project/instance.ts +0 -91
  198. package/src/project/project.ts +0 -371
  199. package/src/project/state.ts +0 -66
  200. package/src/project/vcs.ts +0 -76
  201. package/src/provider/auth.ts +0 -147
  202. package/src/provider/models-snapshot.ts +0 -2
  203. package/src/provider/models.ts +0 -133
  204. package/src/provider/provider.ts +0 -1241
  205. package/src/provider/sdk/openai-compatible/src/README.md +0 -5
  206. package/src/provider/sdk/openai-compatible/src/index.ts +0 -2
  207. package/src/provider/sdk/openai-compatible/src/openai-compatible-provider.ts +0 -100
  208. package/src/provider/sdk/openai-compatible/src/responses/convert-to-openai-responses-input.ts +0 -303
  209. package/src/provider/sdk/openai-compatible/src/responses/map-openai-responses-finish-reason.ts +0 -22
  210. package/src/provider/sdk/openai-compatible/src/responses/openai-config.ts +0 -18
  211. package/src/provider/sdk/openai-compatible/src/responses/openai-error.ts +0 -22
  212. package/src/provider/sdk/openai-compatible/src/responses/openai-responses-api-types.ts +0 -207
  213. package/src/provider/sdk/openai-compatible/src/responses/openai-responses-language-model.ts +0 -1732
  214. package/src/provider/sdk/openai-compatible/src/responses/openai-responses-prepare-tools.ts +0 -177
  215. package/src/provider/sdk/openai-compatible/src/responses/openai-responses-settings.ts +0 -1
  216. package/src/provider/sdk/openai-compatible/src/responses/tool/code-interpreter.ts +0 -88
  217. package/src/provider/sdk/openai-compatible/src/responses/tool/file-search.ts +0 -128
  218. package/src/provider/sdk/openai-compatible/src/responses/tool/image-generation.ts +0 -115
  219. package/src/provider/sdk/openai-compatible/src/responses/tool/local-shell.ts +0 -65
  220. package/src/provider/sdk/openai-compatible/src/responses/tool/web-search-preview.ts +0 -104
  221. package/src/provider/sdk/openai-compatible/src/responses/tool/web-search.ts +0 -103
  222. package/src/provider/transform.ts +0 -741
  223. package/src/pty/index.ts +0 -241
  224. package/src/question/index.ts +0 -171
  225. package/src/scheduler/index.ts +0 -61
  226. package/src/server/error.ts +0 -36
  227. package/src/server/event.ts +0 -7
  228. package/src/server/mdns.ts +0 -59
  229. package/src/server/routes/config.ts +0 -92
  230. package/src/server/routes/experimental.ts +0 -208
  231. package/src/server/routes/file.ts +0 -197
  232. package/src/server/routes/global.ts +0 -135
  233. package/src/server/routes/mcp.ts +0 -225
  234. package/src/server/routes/permission.ts +0 -68
  235. package/src/server/routes/project.ts +0 -82
  236. package/src/server/routes/provider.ts +0 -165
  237. package/src/server/routes/pty.ts +0 -169
  238. package/src/server/routes/question.ts +0 -98
  239. package/src/server/routes/session.ts +0 -939
  240. package/src/server/routes/tui.ts +0 -379
  241. package/src/server/server.ts +0 -604
  242. package/src/session/compaction.ts +0 -225
  243. package/src/session/fallback.ts +0 -246
  244. package/src/session/index.ts +0 -498
  245. package/src/session/instruction.ts +0 -164
  246. package/src/session/llm.ts +0 -298
  247. package/src/session/message-v2.ts +0 -747
  248. package/src/session/message.ts +0 -189
  249. package/src/session/processor.ts +0 -450
  250. package/src/session/prompt/anthropic-20250930.txt +0 -166
  251. package/src/session/prompt/anthropic.txt +0 -105
  252. package/src/session/prompt/beast.txt +0 -147
  253. package/src/session/prompt/build-switch.txt +0 -5
  254. package/src/session/prompt/codex_header.txt +0 -79
  255. package/src/session/prompt/copilot-gpt-5.txt +0 -143
  256. package/src/session/prompt/gemini.txt +0 -155
  257. package/src/session/prompt/max-steps.txt +0 -16
  258. package/src/session/prompt/plan-reminder-anthropic.txt +0 -67
  259. package/src/session/prompt/plan.txt +0 -26
  260. package/src/session/prompt/qwen.txt +0 -109
  261. package/src/session/prompt.ts +0 -1822
  262. package/src/session/retry.ts +0 -99
  263. package/src/session/revert.ts +0 -121
  264. package/src/session/status.ts +0 -100
  265. package/src/session/summary.ts +0 -217
  266. package/src/session/system.ts +0 -52
  267. package/src/session/todo.ts +0 -37
  268. package/src/share/share-next.ts +0 -200
  269. package/src/share/share.ts +0 -92
  270. package/src/shell/shell.ts +0 -67
  271. package/src/skill/index.ts +0 -1
  272. package/src/skill/skill.ts +0 -135
  273. package/src/snapshot/index.ts +0 -236
  274. package/src/storage/storage.ts +0 -227
  275. package/src/tool/apply_patch.ts +0 -281
  276. package/src/tool/apply_patch.txt +0 -33
  277. package/src/tool/bash.ts +0 -258
  278. package/src/tool/bash.txt +0 -115
  279. package/src/tool/batch.ts +0 -175
  280. package/src/tool/batch.txt +0 -24
  281. package/src/tool/bloxy-control.ts +0 -123
  282. package/src/tool/bloxy-control.txt +0 -13
  283. package/src/tool/codesearch.ts +0 -132
  284. package/src/tool/codesearch.txt +0 -12
  285. package/src/tool/edit.ts +0 -655
  286. package/src/tool/edit.txt +0 -10
  287. package/src/tool/external-directory.ts +0 -32
  288. package/src/tool/glob.ts +0 -77
  289. package/src/tool/glob.txt +0 -6
  290. package/src/tool/grep.ts +0 -154
  291. package/src/tool/grep.txt +0 -8
  292. package/src/tool/invalid.ts +0 -17
  293. package/src/tool/ls.ts +0 -121
  294. package/src/tool/ls.txt +0 -1
  295. package/src/tool/lsp.ts +0 -96
  296. package/src/tool/lsp.txt +0 -19
  297. package/src/tool/multiedit.ts +0 -46
  298. package/src/tool/multiedit.txt +0 -41
  299. package/src/tool/plan-enter.txt +0 -14
  300. package/src/tool/plan-exit.txt +0 -13
  301. package/src/tool/plan.ts +0 -130
  302. package/src/tool/question.ts +0 -33
  303. package/src/tool/question.txt +0 -10
  304. package/src/tool/read.ts +0 -211
  305. package/src/tool/read.txt +0 -12
  306. package/src/tool/registry.ts +0 -161
  307. package/src/tool/skill.ts +0 -82
  308. package/src/tool/task.ts +0 -191
  309. package/src/tool/task.txt +0 -60
  310. package/src/tool/todo.ts +0 -53
  311. package/src/tool/todoread.txt +0 -14
  312. package/src/tool/todowrite.txt +0 -167
  313. package/src/tool/tool.ts +0 -89
  314. package/src/tool/truncation.ts +0 -106
  315. package/src/tool/webfetch.ts +0 -188
  316. package/src/tool/webfetch.txt +0 -13
  317. package/src/tool/websearch.ts +0 -150
  318. package/src/tool/websearch.txt +0 -14
  319. package/src/tool/write.ts +0 -85
  320. package/src/tool/write.txt +0 -8
  321. package/src/util/archive.ts +0 -16
  322. package/src/util/binary.ts +0 -41
  323. package/src/util/color.ts +0 -19
  324. package/src/util/context.ts +0 -25
  325. package/src/util/defer.ts +0 -12
  326. package/src/util/error.ts +0 -54
  327. package/src/util/eventloop.ts +0 -20
  328. package/src/util/filesystem.ts +0 -93
  329. package/src/util/fn.ts +0 -11
  330. package/src/util/format.ts +0 -20
  331. package/src/util/iife.ts +0 -3
  332. package/src/util/keybind.ts +0 -103
  333. package/src/util/lazy.ts +0 -23
  334. package/src/util/locale.ts +0 -81
  335. package/src/util/lock.ts +0 -98
  336. package/src/util/log.ts +0 -180
  337. package/src/util/queue.ts +0 -32
  338. package/src/util/rpc.ts +0 -66
  339. package/src/util/scrap.ts +0 -10
  340. package/src/util/signal.ts +0 -12
  341. package/src/util/slug.ts +0 -74
  342. package/src/util/timeout.ts +0 -14
  343. package/src/util/token.ts +0 -7
  344. package/src/util/wildcard.ts +0 -56
  345. package/src/worktree/index.ts +0 -549
package/bin/bloxycode CHANGED
@@ -55,14 +55,17 @@ function findBinary(startDir) {
55
55
  for (;;) {
56
56
  const modules = path.join(current, "node_modules")
57
57
  if (fs.existsSync(modules)) {
58
- const entries = fs.readdirSync(modules)
59
- for (const entry of entries) {
60
- if (!entry.startsWith(base)) {
61
- continue
62
- }
63
- const candidate = path.join(modules, entry, "bin", binary)
64
- if (fs.existsSync(candidate)) {
65
- return candidate
58
+ const scopeDir = path.join(modules, "@bloxystudios")
59
+ if (fs.existsSync(scopeDir)) {
60
+ const entries = fs.readdirSync(scopeDir)
61
+ for (const entry of entries) {
62
+ if (!entry.startsWith(base)) {
63
+ continue
64
+ }
65
+ const candidate = path.join(scopeDir, entry, "bin", binary)
66
+ if (fs.existsSync(candidate)) {
67
+ return candidate
68
+ }
66
69
  }
67
70
  }
68
71
  }
package/package.json CHANGED
@@ -1,150 +1,23 @@
1
1
  {
2
- "$schema": "https://json.schemastore.org/package.json",
3
- "version": "1.0.2",
4
2
  "name": "@bloxystudios/bloxycode",
5
- "type": "module",
6
- "license": "MIT",
7
- "author": "Bloxy Studios <contact@bloxystudios.com>",
8
- "repository": {
9
- "type": "git",
10
- "url": "git+https://github.com/bloxystudios/bloxycode.git"
11
- },
12
- "homepage": "https://github.com/bloxystudios/bloxycode#readme",
13
- "bugs": {
14
- "url": "https://github.com/bloxystudios/bloxycode/issues"
15
- },
16
- "optionalDependencies": {
17
- "bloxycode-darwin-arm64": "1.0.2",
18
- "bloxycode-darwin-x64": "1.0.2",
19
- "bloxycode-darwin-x64-baseline": "1.0.2",
20
- "bloxycode-linux-arm64": "1.0.2",
21
- "bloxycode-linux-x64": "1.0.2",
22
- "bloxycode-linux-x64-baseline": "1.0.2",
23
- "bloxycode-linux-arm64-musl": "1.0.2",
24
- "bloxycode-linux-x64-musl": "1.0.2",
25
- "bloxycode-linux-x64-baseline-musl": "1.0.2",
26
- "bloxycode-windows-x64": "1.0.2",
27
- "bloxycode-windows-x64-baseline": "1.0.2"
28
- },
29
- "resolutions": {
30
- "zod": "4.1.8",
31
- "quansync": "^1.0.0"
32
- },
33
- "scripts": {
34
- "typecheck": "tsgo --noEmit",
35
- "test": "bun test",
36
- "build": "bun run script/build.ts",
37
- "dev": "bun run --conditions=browser ./src/index.ts",
38
- "random": "echo 'Random script updated at $(date)' && echo 'Change queued successfully' && echo 'Another change made' && echo 'Yet another change' && echo 'One more change' && echo 'Final change' && echo 'Another final change' && echo 'Yet another final change'",
39
- "clean": "echo 'Cleaning up...' && rm -rf node_modules dist",
40
- "lint": "echo 'Running lint checks...' && bun test --coverage",
41
- "format": "echo 'Formatting code...' && bun run --prettier --write src/**/*.ts",
42
- "docs": "echo 'Generating documentation...' && find src -name '*.ts' -exec echo 'Processing: {}' \\;",
43
- "deploy": "echo 'Deploying application...' && bun run build && echo 'Deployment completed successfully'"
44
- },
45
3
  "bin": {
46
4
  "bloxycode": "./bin/bloxycode"
47
5
  },
48
- "files": [
49
- "bin/",
50
- "src/",
51
- "README.md",
52
- "LICENSE"
53
- ],
54
- "exports": {
55
- "./*": "./src/*.ts"
56
- },
57
- "devDependencies": {
58
- "@babel/core": "7.28.4",
59
- "@octokit/webhooks-types": "7.6.1",
60
- "@parcel/watcher-darwin-arm64": "2.5.1",
61
- "@parcel/watcher-darwin-x64": "2.5.1",
62
- "@parcel/watcher-linux-arm64-glibc": "2.5.1",
63
- "@parcel/watcher-linux-arm64-musl": "2.5.1",
64
- "@parcel/watcher-linux-x64-glibc": "2.5.1",
65
- "@parcel/watcher-linux-x64-musl": "2.5.1",
66
- "@parcel/watcher-win32-x64": "2.5.1",
67
- "@tsconfig/bun": "^1.0.10",
68
- "@types/babel__core": "7.20.5",
69
- "@types/bun": "^1.3.8",
70
- "@types/turndown": "5.0.5",
71
- "@types/yargs": "17.0.33",
72
- "@typescript/native-preview": "^7.0.0-dev.20260130.1",
73
- "typescript": "^5.9.3",
74
- "vscode-languageserver-types": "3.17.5",
75
- "why-is-node-running": "3.2.2"
6
+ "scripts": {
7
+ "postinstall": "bun ./postinstall.mjs || node ./postinstall.mjs"
76
8
  },
77
- "dependencies": {
78
- "@actions/core": "1.11.1",
79
- "@actions/github": "6.0.1",
80
- "@agentclientprotocol/sdk": "0.12.0",
81
- "@ai-sdk/amazon-bedrock": "3.0.73",
82
- "@ai-sdk/anthropic": "2.0.57",
83
- "@ai-sdk/azure": "2.0.91",
84
- "@ai-sdk/cerebras": "1.0.34",
85
- "@ai-sdk/cohere": "2.0.22",
86
- "@ai-sdk/deepinfra": "1.0.31",
87
- "@ai-sdk/gateway": "2.0.25",
88
- "@ai-sdk/google": "2.0.52",
89
- "@ai-sdk/google-vertex": "3.0.97",
90
- "@ai-sdk/groq": "2.0.34",
91
- "@ai-sdk/mistral": "2.0.27",
92
- "@ai-sdk/openai": "2.0.89",
93
- "@ai-sdk/openai-compatible": "1.0.30",
94
- "@ai-sdk/perplexity": "2.0.23",
95
- "@ai-sdk/provider": "2.0.1",
96
- "@ai-sdk/provider-utils": "3.0.20",
97
- "@ai-sdk/togetherai": "1.0.31",
98
- "@ai-sdk/vercel": "1.0.31",
99
- "@ai-sdk/xai": "2.0.51",
100
- "@clack/prompts": "1.0.0-alpha.1",
101
- "@gitlab/gitlab-ai-provider": "3.3.1",
102
- "@hono/standard-validator": "^0.2.0",
103
- "@hono/zod-validator": "^0.7.6",
104
- "@modelcontextprotocol/sdk": "1.25.2",
105
- "@octokit/graphql": "9.0.2",
106
- "@octokit/rest": "^22.0.1",
107
- "@openauthjs/openauth": "^0.4.3",
108
- "@opencode-ai/plugin": "^1.1.44",
109
- "@opencode-ai/sdk": "^1.1.44",
110
- "@openrouter/ai-sdk-provider": "1.5.2",
111
- "@opentui/core": "0.1.75",
112
- "@opentui/solid": "0.1.75",
113
- "@parcel/watcher": "2.5.1",
114
- "@pierre/diffs": "^1.0.9",
115
- "@solid-primitives/event-bus": "1.1.2",
116
- "@solid-primitives/scheduled": "1.5.2",
117
- "@standard-schema/spec": "1.0.0",
118
- "@zip.js/zip.js": "2.7.62",
119
- "ai": "5.0.119",
120
- "bonjour-service": "1.3.0",
121
- "bun-pty": "0.4.4",
122
- "chokidar": "4.0.3",
123
- "clipboardy": "4.0.0",
124
- "decimal.js": "10.5.0",
125
- "diff": "8.0.2",
126
- "fuzzysort": "3.1.0",
127
- "gray-matter": "4.0.3",
128
- "hono": "4.10.7",
129
- "hono-openapi": "1.1.2",
130
- "ignore": "7.0.5",
131
- "jsonc-parser": "3.3.1",
132
- "minimatch": "10.0.3",
133
- "open": "10.1.2",
134
- "opentui-spinner": "0.0.6",
135
- "partial-json": "0.1.7",
136
- "quansync": "^0.2.11",
137
- "remeda": "2.26.0",
138
- "solid-js": "1.9.10",
139
- "strip-ansi": "7.1.2",
140
- "tree-sitter-bash": "0.25.0",
141
- "turndown": "7.2.0",
142
- "ulid": "3.0.1",
143
- "vscode-jsonrpc": "8.2.1",
144
- "web-tree-sitter": "0.25.10",
145
- "xdg-basedir": "5.1.0",
146
- "yargs": "18.0.0",
147
- "zod": "4.1.8",
148
- "zod-to-json-schema": "3.24.5"
9
+ "version": "1.0.4",
10
+ "optionalDependencies": {
11
+ "@bloxystudios/bloxycode-linux-arm64": "1.0.4",
12
+ "@bloxystudios/bloxycode-linux-x64": "1.0.4",
13
+ "@bloxystudios/bloxycode-linux-x64-baseline": "1.0.4",
14
+ "@bloxystudios/bloxycode-linux-arm64-musl": "1.0.4",
15
+ "@bloxystudios/bloxycode-linux-x64-musl": "1.0.4",
16
+ "@bloxystudios/bloxycode-linux-x64-baseline-musl": "1.0.4",
17
+ "@bloxystudios/bloxycode-darwin-arm64": "1.0.4",
18
+ "@bloxystudios/bloxycode-darwin-x64": "1.0.4",
19
+ "@bloxystudios/bloxycode-darwin-x64-baseline": "1.0.4",
20
+ "@bloxystudios/bloxycode-windows-x64": "1.0.4",
21
+ "@bloxystudios/bloxycode-windows-x64-baseline": "1.0.4"
149
22
  }
150
- }
23
+ }
@@ -0,0 +1,129 @@
1
+ #!/usr/bin/env node
2
+
3
+ import fs from "fs"
4
+ import path from "path"
5
+ import os from "os"
6
+ import { fileURLToPath } from "url"
7
+ import { createRequire } from "module"
8
+
9
+ const __dirname = path.dirname(fileURLToPath(import.meta.url))
10
+ const require = createRequire(import.meta.url)
11
+
12
+ function detectPlatformAndArch() {
13
+ // Map platform names
14
+ let platform
15
+ switch (os.platform()) {
16
+ case "darwin":
17
+ platform = "darwin"
18
+ break
19
+ case "linux":
20
+ platform = "linux"
21
+ break
22
+ case "win32":
23
+ platform = "windows"
24
+ break
25
+ default:
26
+ platform = os.platform()
27
+ break
28
+ }
29
+
30
+ // Map architecture names
31
+ let arch
32
+ switch (os.arch()) {
33
+ case "x64":
34
+ arch = "x64"
35
+ break
36
+ case "arm64":
37
+ arch = "arm64"
38
+ break
39
+ case "arm":
40
+ arch = "arm"
41
+ break
42
+ default:
43
+ arch = os.arch()
44
+ break
45
+ }
46
+
47
+ return { platform, arch }
48
+ }
49
+
50
+ function findBinary() {
51
+ const { platform, arch } = detectPlatformAndArch()
52
+ const packageName = `@bloxystudios/bloxycode-${platform}-${arch}`
53
+ const binaryName = platform === "windows" ? "bloxycode.exe" : "bloxycode"
54
+
55
+ try {
56
+ // Use require.resolve to find the package
57
+ const packageJsonPath = require.resolve(`${packageName}/package.json`)
58
+ const packageDir = path.dirname(packageJsonPath)
59
+ const binaryPath = path.join(packageDir, "bin", binaryName)
60
+
61
+ if (!fs.existsSync(binaryPath)) {
62
+ throw new Error(`Binary not found at ${binaryPath}`)
63
+ }
64
+
65
+ return { binaryPath, binaryName }
66
+ } catch (error) {
67
+ throw new Error(`Could not find package ${packageName}: ${error.message}`)
68
+ }
69
+ }
70
+
71
+ function prepareBinDirectory(binaryName) {
72
+ const binDir = path.join(__dirname, "bin")
73
+ const targetPath = path.join(binDir, binaryName)
74
+
75
+ // Ensure bin directory exists
76
+ if (!fs.existsSync(binDir)) {
77
+ fs.mkdirSync(binDir, { recursive: true })
78
+ }
79
+
80
+ // Remove existing binary/symlink if it exists
81
+ if (fs.existsSync(targetPath)) {
82
+ fs.unlinkSync(targetPath)
83
+ }
84
+
85
+ return { binDir, targetPath }
86
+ }
87
+
88
+ function symlinkBinary(sourcePath, binaryName) {
89
+ const { targetPath } = prepareBinDirectory(binaryName)
90
+
91
+ fs.symlinkSync(sourcePath, targetPath)
92
+ console.log(`bloxycode binary symlinked: ${targetPath} -> ${sourcePath}`)
93
+
94
+ // Verify the file exists after operation
95
+ if (!fs.existsSync(targetPath)) {
96
+ throw new Error(`Failed to symlink binary to ${targetPath}`)
97
+ }
98
+ }
99
+
100
+ async function main() {
101
+ try {
102
+ if (os.platform() === "win32") {
103
+ // On Windows, the .exe is already included in the package and bin field points to it
104
+ // No postinstall setup needed
105
+ console.log("Windows detected: binary setup not needed (using packaged .exe)")
106
+ return
107
+ }
108
+
109
+ // On non-Windows platforms, just verify the binary package exists
110
+ // Don't replace the wrapper script - it handles binary execution
111
+ const { binaryPath } = findBinary()
112
+ console.log(`Platform binary verified at: ${binaryPath}`)
113
+ console.log("Wrapper script will handle binary execution")
114
+ } catch (error) {
115
+ if (fs.existsSync(path.join(__dirname, "build.ts"))) {
116
+ console.log("Development environment detected. Skipping binary verification.");
117
+ process.exit(0);
118
+ }
119
+ console.error("Failed to setup bloxycode binary:", error.message)
120
+ process.exit(1)
121
+ }
122
+ }
123
+
124
+ try {
125
+ main()
126
+ } catch (error) {
127
+ console.error("Postinstall script error:", error.message)
128
+ process.exit(0)
129
+ }
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2025 Bloxy Studios
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
package/README.md DELETED
@@ -1,286 +0,0 @@
1
- # BloxyCode
2
-
3
- [![Version](https://img.shields.io/badge/Version-1.0.2-blue?style=for-the-badge)](https://www.npmjs.com/package/@bloxystudios/bloxycode)
4
- [![Vibeathon 2026](https://img.shields.io/badge/Vibeathon-Feb%202026-purple?style=for-the-badge)](https://www.bridgemind.ai/vibeathon)
5
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=for-the-badge)](LICENSE)
6
- [![Bun](https://img.shields.io/badge/Bun-1.3+-black?style=for-the-badge)](https://bun.sh/)
7
-
8
- > **Vibeathon Entry**: This project is a submission for the [BridgeMind Vibeathon](https://www.bridgemind.ai/vibeathon) (Feb 1-14, 2026)
9
- >
10
- > **BloxyCode** is an enhanced fork of [OpenCode](https://github.com/opencode-ai/opencode) featuring **Bloxy** - an autonomous task execution system that runs until your tasks are done.
11
-
12
- An AI-powered coding CLI tool that brings the power of Claude and other LLMs directly to your terminal. BloxyCode enables autonomous code generation, intelligent file operations, and seamless AI-assisted development workflows.
13
-
14
- ## Features
15
-
16
- ### 🤖 Autonomous Task Execution (Bloxy Mode)
17
- BloxyCode's flagship feature - execute complex coding tasks autonomously from Product Requirements Documents (PRDs):
18
- - **Sequential Task Processing**: Parse PRD markdown files and execute tasks one by one
19
- - **Automatic Testing**: Run tests after each task (when configured)
20
- - **Auto-commit**: Optional automatic git commits with descriptive messages
21
- - **Retry Logic**: Configurable retry attempts for failed tasks
22
- - **Task State Management**: Track pending, in-progress, completed, and failed tasks
23
-
24
- ### 🛠️ Comprehensive Tool Set
25
- - **File Operations**: Read, write, edit files with intelligent context awareness
26
- - **Code Search**: Fast glob patterns and grep-based content search with ripgrep
27
- - **Bash Integration**: Execute shell commands with proper error handling
28
- - **Web Capabilities**: Web search and content fetching
29
- - **Task Management**: Built-in todo list tracking for complex workflows
30
-
31
- ### 🎯 Multi-Agent System
32
- Create and manage specialized AI agents for different tasks:
33
- - **Primary Agents**: Main agents for direct interaction
34
- - **Subagents**: Specialized agents for delegated tasks
35
- - **Custom Tools**: Configure which tools each agent can access
36
- - **Agent Generation**: LLM-powered agent creation from descriptions
37
-
38
- ### 🔌 Extensibility
39
- - **Model Provider Support**: Anthropic, OpenAI, Google, Azure, AWS Bedrock, and 15+ other providers
40
- - **MCP (Model Context Protocol)**: Standard protocol for AI-tool integration
41
- - **Custom Commands**: Define project-specific slash commands
42
- - **Skill System**: Reusable best practices and workflows
43
-
44
- ### 🚀 Antigravity Integration (Built-in)
45
- Access Claude and Gemini models through your Google account — no API keys required:
46
- - **Claude Opus 4.5 & Sonnet 4.5** with extended thinking support
47
- - **Gemini 3 Pro/Flash** with configurable thinking levels
48
- - **Multi-account support** with automatic rate limit rotation
49
- - **Free tier access** using your Google Cloud quota
50
- - See [Antigravity Documentation](docs/ANTIGRAVITY.md) for setup
51
-
52
- ### 💬 Multiple Interaction Modes
53
- - **CLI Chat**: Direct command-line interaction with AI
54
- - **Server Mode**: Run as a persistent server with HTTP API
55
- - **TUI (Terminal UI)**: Rich terminal interface built with SolidJS
56
- - **Session Management**: Continue conversations, attach to running servers
57
-
58
- ### 🔐 Smart Permissions
59
- - **Permission System**: Fine-grained control over tool usage
60
- - **Pattern Matching**: Allow/deny based on file patterns
61
- - **Interactive Prompts**: Ask for permission when needed
62
-
63
- ## Installation
64
-
65
- ### Global Installation (Recommended)
66
-
67
- ```bash
68
- # Install via npm
69
- npm install -g @bloxystudios/bloxycode
70
-
71
- # Or install via bun
72
- bun install -g @bloxystudios/bloxycode
73
- ```
74
-
75
- ### Development Setup
76
-
77
- ```bash
78
- # Clone the repository
79
- git clone https://github.com/bloxystudios/bloxycode.git
80
- cd bloxycode
81
-
82
- # Install dependencies
83
- bun install
84
-
85
- # Run in development mode
86
- bun run dev
87
- ```
88
-
89
- ## Basic Usage
90
-
91
- ### Start a conversation
92
-
93
- ```bash
94
- # Simple prompt
95
- bloxycode run "create a new React component"
96
-
97
- # Continue previous session
98
- bloxycode run -c "add tests for the component"
99
-
100
- # Use specific model
101
- bloxycode run -m anthropic/claude-sonnet-4 "refactor the authentication logic"
102
-
103
- # Attach files to context
104
- bloxycode run -f src/app.ts "review this code for bugs"
105
- ```
106
-
107
- ### Run in Bloxy autonomous mode
108
-
109
- Create a `PRD.md` file:
110
-
111
- ```markdown
112
- # My Feature PRD
113
-
114
- ## Tasks
115
- - [ ] Create user authentication module
116
- - [ ] Add login and signup endpoints
117
- - [ ] Write unit tests for auth module
118
- ```
119
-
120
- Then execute:
121
-
122
- ```bash
123
- bloxycode run "/bloxy PRD.md"
124
- ```
125
-
126
- BloxyCode will autonomously:
127
- 1. Read and parse the PRD
128
- 2. Execute each task sequentially
129
- 3. Run tests (if configured)
130
- 4. Commit changes (if auto-commit enabled)
131
- 5. Report progress and results
132
-
133
- ### Agent Management
134
-
135
- ```bash
136
- # Create a new custom agent
137
- bloxycode agent create
138
-
139
- # List available agents
140
- bloxycode agent list
141
-
142
- # Use a specific agent
143
- bloxycode run --agent code-reviewer "review my changes"
144
- ```
145
-
146
- ### Server Mode
147
-
148
- ```bash
149
- # Start server on specific port
150
- bloxycode serve --port 4096
151
-
152
- # Attach to running server
153
- bloxycode run --attach http://localhost:4096 "your prompt"
154
- ```
155
-
156
- ## Configuration
157
-
158
- BloxyCode can be configured via:
159
- - `~/.config/bloxycode/config.yml` (global)
160
- - `.bloxycode/config.yml` (project-specific)
161
-
162
- Example configuration:
163
-
164
- ```yaml
165
- # Default model
166
- model: anthropic/claude-sonnet-4
167
-
168
- # Share sessions automatically
169
- share: auto
170
-
171
- # Custom agents directory
172
- agents: .bloxycode/agent
173
-
174
- # Bloxy mode settings
175
- bloxy:
176
- autoCommit: true
177
- testCommand: "bun test"
178
- lintCommand: "bun run typecheck"
179
- maxRetries: 3
180
- ```
181
-
182
- ## Commands
183
-
184
- | Command | Description |
185
- |---------|-------------|
186
- | `run [message]` | Start or continue a conversation |
187
- | `serve` | Start the BloxyCode server |
188
- | `agent create` | Create a new custom agent |
189
- | `agent list` | List all available agents |
190
- | `auth` | Authenticate with providers |
191
- | `models` | List available models |
192
- | `export` | Export session history |
193
- | `import` | Import session history |
194
- | `stats` | View usage statistics |
195
-
196
- ## Tools Available to AI
197
-
198
- BloxyCode provides these tools to AI agents:
199
-
200
- - **bash**: Execute shell commands
201
- - **read**: Read file contents
202
- - **write**: Create/overwrite files
203
- - **edit**: Make precise edits to files
204
- - **glob**: Find files by pattern
205
- - **grep**: Search file contents
206
- - **webfetch**: Fetch web content
207
- - **task**: Delegate to subagents
208
- - **todowrite/todoread**: Manage task lists
209
- - **bloxy_control**: Control autonomous execution (Bloxy mode)
210
-
211
- ## Development
212
-
213
- ```bash
214
- # Install dependencies
215
- bun install
216
-
217
- # Run in development mode
218
- bun run dev
219
-
220
- # Type check
221
- bun run typecheck
222
-
223
- # Run tests
224
- bun test
225
-
226
- # Run specific test
227
- bun test test/tool/tool.test.ts
228
-
229
- # Build
230
- bun run build
231
- ```
232
-
233
- ## Project Structure
234
-
235
- ```
236
- src/
237
- ├── cli/ # CLI commands and interface
238
- ├── tool/ # AI tool implementations
239
- ├── session/ # Session management
240
- ├── agent/ # Agent system
241
- ├── bloxy/ # Autonomous mode implementation
242
- ├── provider/ # LLM provider integrations
243
- ├── server/ # HTTP server
244
- └── util/ # Utilities
245
- ```
246
-
247
- ## Architecture
248
-
249
- BloxyCode uses a modern TypeScript architecture:
250
- - **Runtime**: Bun with TypeScript ESM modules
251
- - **Validation**: Zod schemas for all inputs
252
- - **State**: Namespace-based organization
253
- - **UI**: SolidJS + OpenTUI for terminal interfaces
254
- - **Communication**: MCP (Model Context Protocol) compatible
255
-
256
- ## Contributing
257
-
258
- Contributions are welcome! Please see our contributing guidelines for more details.
259
-
260
- ## License
261
-
262
- MIT
263
-
264
- ## Changelog
265
-
266
- ### 1.0.2 - 2026-01-30
267
- - **Fixed**: npm global installation failing to find platform-specific binary
268
- - Added `optionalDependencies` to package.json for all platform packages (darwin, linux, windows)
269
- - This allows npm to automatically install the correct binary for the user's platform
270
-
271
- ### 1.0.1 - Initial Release
272
- - Initial release of BloxyCode with Bloxy autonomous task execution
273
- - Multi-provider AI support (Claude, OpenAI, Gemini, and 15+ more)
274
- - MCP (Model Context Protocol) compatibility
275
- - TUI interface with SolidJS
276
- - Session management and agent system
277
-
278
- ## Links
279
-
280
- - [Documentation](https://docs.bloxycode.dev) (coming soon)
281
- - [GitHub](https://github.com/bloxystudios/bloxycode)
282
- - [Discord Community](https://discord.gg/bloxycode) (coming soon)
283
-
284
- ---
285
-
286
- Built with ❤️ by Bloxy Studios