jonsoc 1.1.48 → 1.1.50

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 (421) hide show
  1. package/bin/jonsoc +17 -9
  2. package/package.json +8 -142
  3. package/postinstall.mjs +15 -0
  4. package/AGENTS.md +0 -27
  5. package/Dockerfile +0 -18
  6. package/PUBLISHING_GUIDE.md +0 -151
  7. package/README.md +0 -58
  8. package/bunfig.toml +0 -7
  9. package/package.json.placeholder +0 -11
  10. package/parsers-config.ts +0 -253
  11. package/script/build.ts +0 -115
  12. package/script/publish-registries.ts +0 -197
  13. package/script/publish.ts +0 -110
  14. package/script/schema.ts +0 -47
  15. package/script/seed-e2e.ts +0 -50
  16. package/src/acp/README.md +0 -164
  17. package/src/acp/agent.ts +0 -1437
  18. package/src/acp/session.ts +0 -105
  19. package/src/acp/types.ts +0 -22
  20. package/src/agent/agent.ts +0 -347
  21. package/src/agent/generate.txt +0 -75
  22. package/src/agent/prompt/compaction.txt +0 -12
  23. package/src/agent/prompt/explore.txt +0 -18
  24. package/src/agent/prompt/summary.txt +0 -11
  25. package/src/agent/prompt/title.txt +0 -44
  26. package/src/auth/index.ts +0 -73
  27. package/src/brand/index.ts +0 -89
  28. package/src/bun/index.ts +0 -139
  29. package/src/bus/bus-event.ts +0 -43
  30. package/src/bus/global.ts +0 -10
  31. package/src/bus/index.ts +0 -105
  32. package/src/cli/bootstrap.ts +0 -17
  33. package/src/cli/cmd/acp.ts +0 -69
  34. package/src/cli/cmd/agent.ts +0 -257
  35. package/src/cli/cmd/auth.ts +0 -405
  36. package/src/cli/cmd/cmd.ts +0 -7
  37. package/src/cli/cmd/debug/agent.ts +0 -166
  38. package/src/cli/cmd/debug/config.ts +0 -16
  39. package/src/cli/cmd/debug/file.ts +0 -97
  40. package/src/cli/cmd/debug/index.ts +0 -48
  41. package/src/cli/cmd/debug/lsp.ts +0 -52
  42. package/src/cli/cmd/debug/ripgrep.ts +0 -87
  43. package/src/cli/cmd/debug/scrap.ts +0 -16
  44. package/src/cli/cmd/debug/skill.ts +0 -16
  45. package/src/cli/cmd/debug/snapshot.ts +0 -52
  46. package/src/cli/cmd/export.ts +0 -88
  47. package/src/cli/cmd/generate.ts +0 -38
  48. package/src/cli/cmd/github.ts +0 -1548
  49. package/src/cli/cmd/import.ts +0 -99
  50. package/src/cli/cmd/mcp.ts +0 -765
  51. package/src/cli/cmd/models.ts +0 -77
  52. package/src/cli/cmd/pr.ts +0 -112
  53. package/src/cli/cmd/run.ts +0 -395
  54. package/src/cli/cmd/serve.ts +0 -20
  55. package/src/cli/cmd/session.ts +0 -135
  56. package/src/cli/cmd/stats.ts +0 -402
  57. package/src/cli/cmd/tui/app.tsx +0 -923
  58. package/src/cli/cmd/tui/attach.ts +0 -39
  59. package/src/cli/cmd/tui/component/border.tsx +0 -21
  60. package/src/cli/cmd/tui/component/dialog-agent.tsx +0 -31
  61. package/src/cli/cmd/tui/component/dialog-command.tsx +0 -162
  62. package/src/cli/cmd/tui/component/dialog-error-log.tsx +0 -155
  63. package/src/cli/cmd/tui/component/dialog-mcp.tsx +0 -86
  64. package/src/cli/cmd/tui/component/dialog-model.tsx +0 -234
  65. package/src/cli/cmd/tui/component/dialog-provider.tsx +0 -256
  66. package/src/cli/cmd/tui/component/dialog-session-list.tsx +0 -114
  67. package/src/cli/cmd/tui/component/dialog-session-rename.tsx +0 -31
  68. package/src/cli/cmd/tui/component/dialog-stash.tsx +0 -87
  69. package/src/cli/cmd/tui/component/dialog-status.tsx +0 -164
  70. package/src/cli/cmd/tui/component/dialog-tag.tsx +0 -44
  71. package/src/cli/cmd/tui/component/dialog-theme-list.tsx +0 -50
  72. package/src/cli/cmd/tui/component/dynamic-layout.tsx +0 -86
  73. package/src/cli/cmd/tui/component/inspector-overlay.tsx +0 -247
  74. package/src/cli/cmd/tui/component/logo.tsx +0 -88
  75. package/src/cli/cmd/tui/component/prompt/autocomplete.tsx +0 -653
  76. package/src/cli/cmd/tui/component/prompt/frecency.tsx +0 -89
  77. package/src/cli/cmd/tui/component/prompt/history.tsx +0 -108
  78. package/src/cli/cmd/tui/component/prompt/index.tsx +0 -1347
  79. package/src/cli/cmd/tui/component/prompt/stash.tsx +0 -101
  80. package/src/cli/cmd/tui/component/textarea-keybindings.ts +0 -73
  81. package/src/cli/cmd/tui/component/tips.tsx +0 -153
  82. package/src/cli/cmd/tui/component/todo-item.tsx +0 -32
  83. package/src/cli/cmd/tui/context/args.tsx +0 -14
  84. package/src/cli/cmd/tui/context/directory.ts +0 -13
  85. package/src/cli/cmd/tui/context/error-log.tsx +0 -56
  86. package/src/cli/cmd/tui/context/exit.tsx +0 -26
  87. package/src/cli/cmd/tui/context/helper.tsx +0 -25
  88. package/src/cli/cmd/tui/context/inspector.tsx +0 -57
  89. package/src/cli/cmd/tui/context/keybind.tsx +0 -108
  90. package/src/cli/cmd/tui/context/kv.tsx +0 -53
  91. package/src/cli/cmd/tui/context/layout.tsx +0 -240
  92. package/src/cli/cmd/tui/context/local.tsx +0 -402
  93. package/src/cli/cmd/tui/context/prompt.tsx +0 -18
  94. package/src/cli/cmd/tui/context/route.tsx +0 -51
  95. package/src/cli/cmd/tui/context/sdk.tsx +0 -94
  96. package/src/cli/cmd/tui/context/sync.tsx +0 -449
  97. package/src/cli/cmd/tui/context/theme/aura.json +0 -69
  98. package/src/cli/cmd/tui/context/theme/ayu.json +0 -80
  99. package/src/cli/cmd/tui/context/theme/carbonfox.json +0 -248
  100. package/src/cli/cmd/tui/context/theme/catppuccin-frappe.json +0 -233
  101. package/src/cli/cmd/tui/context/theme/catppuccin-macchiato.json +0 -233
  102. package/src/cli/cmd/tui/context/theme/catppuccin.json +0 -112
  103. package/src/cli/cmd/tui/context/theme/cobalt2.json +0 -228
  104. package/src/cli/cmd/tui/context/theme/cursor.json +0 -249
  105. package/src/cli/cmd/tui/context/theme/dracula.json +0 -219
  106. package/src/cli/cmd/tui/context/theme/everforest.json +0 -241
  107. package/src/cli/cmd/tui/context/theme/flexoki.json +0 -237
  108. package/src/cli/cmd/tui/context/theme/github.json +0 -233
  109. package/src/cli/cmd/tui/context/theme/gruvbox.json +0 -242
  110. package/src/cli/cmd/tui/context/theme/jonsoc.json +0 -245
  111. package/src/cli/cmd/tui/context/theme/kanagawa.json +0 -77
  112. package/src/cli/cmd/tui/context/theme/lucent-orng.json +0 -237
  113. package/src/cli/cmd/tui/context/theme/material.json +0 -235
  114. package/src/cli/cmd/tui/context/theme/matrix.json +0 -77
  115. package/src/cli/cmd/tui/context/theme/mercury.json +0 -252
  116. package/src/cli/cmd/tui/context/theme/monokai.json +0 -221
  117. package/src/cli/cmd/tui/context/theme/nightowl.json +0 -221
  118. package/src/cli/cmd/tui/context/theme/nord.json +0 -223
  119. package/src/cli/cmd/tui/context/theme/one-dark.json +0 -84
  120. package/src/cli/cmd/tui/context/theme/orng.json +0 -249
  121. package/src/cli/cmd/tui/context/theme/osaka-jade.json +0 -93
  122. package/src/cli/cmd/tui/context/theme/palenight.json +0 -222
  123. package/src/cli/cmd/tui/context/theme/rosepine.json +0 -234
  124. package/src/cli/cmd/tui/context/theme/solarized.json +0 -223
  125. package/src/cli/cmd/tui/context/theme/synthwave84.json +0 -226
  126. package/src/cli/cmd/tui/context/theme/tokyonight.json +0 -243
  127. package/src/cli/cmd/tui/context/theme/vercel.json +0 -245
  128. package/src/cli/cmd/tui/context/theme/vesper.json +0 -218
  129. package/src/cli/cmd/tui/context/theme/zenburn.json +0 -223
  130. package/src/cli/cmd/tui/context/theme.tsx +0 -1153
  131. package/src/cli/cmd/tui/event.ts +0 -48
  132. package/src/cli/cmd/tui/hooks/use-command-registry.tsx +0 -184
  133. package/src/cli/cmd/tui/routes/home.tsx +0 -198
  134. package/src/cli/cmd/tui/routes/session/dialog-fork-from-timeline.tsx +0 -64
  135. package/src/cli/cmd/tui/routes/session/dialog-message.tsx +0 -109
  136. package/src/cli/cmd/tui/routes/session/dialog-subagent.tsx +0 -26
  137. package/src/cli/cmd/tui/routes/session/dialog-timeline.tsx +0 -47
  138. package/src/cli/cmd/tui/routes/session/footer.tsx +0 -91
  139. package/src/cli/cmd/tui/routes/session/git-commit.tsx +0 -59
  140. package/src/cli/cmd/tui/routes/session/git-history.tsx +0 -122
  141. package/src/cli/cmd/tui/routes/session/header.tsx +0 -185
  142. package/src/cli/cmd/tui/routes/session/index.tsx +0 -2363
  143. package/src/cli/cmd/tui/routes/session/navigator-ui.tsx +0 -214
  144. package/src/cli/cmd/tui/routes/session/navigator.tsx +0 -1124
  145. package/src/cli/cmd/tui/routes/session/panel-explorer.tsx +0 -553
  146. package/src/cli/cmd/tui/routes/session/panel-viewer.tsx +0 -386
  147. package/src/cli/cmd/tui/routes/session/permission.tsx +0 -501
  148. package/src/cli/cmd/tui/routes/session/question.tsx +0 -507
  149. package/src/cli/cmd/tui/routes/session/sidebar.tsx +0 -365
  150. package/src/cli/cmd/tui/routes/session/vcs-diff-viewer.tsx +0 -37
  151. package/src/cli/cmd/tui/routes/ui-settings.tsx +0 -449
  152. package/src/cli/cmd/tui/thread.ts +0 -172
  153. package/src/cli/cmd/tui/ui/dialog-alert.tsx +0 -90
  154. package/src/cli/cmd/tui/ui/dialog-confirm.tsx +0 -83
  155. package/src/cli/cmd/tui/ui/dialog-export-options.tsx +0 -204
  156. package/src/cli/cmd/tui/ui/dialog-help.tsx +0 -38
  157. package/src/cli/cmd/tui/ui/dialog-prompt.tsx +0 -77
  158. package/src/cli/cmd/tui/ui/dialog-select.tsx +0 -384
  159. package/src/cli/cmd/tui/ui/dialog.tsx +0 -170
  160. package/src/cli/cmd/tui/ui/link.tsx +0 -28
  161. package/src/cli/cmd/tui/ui/spinner.ts +0 -375
  162. package/src/cli/cmd/tui/ui/toast.tsx +0 -100
  163. package/src/cli/cmd/tui/util/clipboard.ts +0 -255
  164. package/src/cli/cmd/tui/util/editor.ts +0 -32
  165. package/src/cli/cmd/tui/util/signal.ts +0 -7
  166. package/src/cli/cmd/tui/util/terminal.ts +0 -114
  167. package/src/cli/cmd/tui/util/transcript.ts +0 -98
  168. package/src/cli/cmd/tui/worker.ts +0 -152
  169. package/src/cli/cmd/uninstall.ts +0 -362
  170. package/src/cli/cmd/upgrade.ts +0 -73
  171. package/src/cli/cmd/web.ts +0 -81
  172. package/src/cli/error.ts +0 -57
  173. package/src/cli/network.ts +0 -53
  174. package/src/cli/ui.ts +0 -119
  175. package/src/cli/upgrade.ts +0 -25
  176. package/src/command/index.ts +0 -131
  177. package/src/command/template/initialize.txt +0 -10
  178. package/src/command/template/review.txt +0 -99
  179. package/src/config/config.ts +0 -1404
  180. package/src/config/markdown.ts +0 -93
  181. package/src/env/index.ts +0 -26
  182. package/src/file/ignore.ts +0 -83
  183. package/src/file/index.ts +0 -432
  184. package/src/file/ripgrep.ts +0 -407
  185. package/src/file/time.ts +0 -69
  186. package/src/file/watcher.ts +0 -127
  187. package/src/flag/flag.ts +0 -80
  188. package/src/format/formatter.ts +0 -357
  189. package/src/format/index.ts +0 -137
  190. package/src/global/index.ts +0 -58
  191. package/src/id/id.ts +0 -83
  192. package/src/ide/index.ts +0 -76
  193. package/src/index.ts +0 -208
  194. package/src/installation/index.ts +0 -258
  195. package/src/lsp/client.ts +0 -252
  196. package/src/lsp/index.ts +0 -485
  197. package/src/lsp/language.ts +0 -119
  198. package/src/lsp/server.ts +0 -2046
  199. package/src/mcp/auth.ts +0 -135
  200. package/src/mcp/index.ts +0 -934
  201. package/src/mcp/oauth-callback.ts +0 -200
  202. package/src/mcp/oauth-provider.ts +0 -155
  203. package/src/patch/index.ts +0 -680
  204. package/src/permission/arity.ts +0 -163
  205. package/src/permission/index.ts +0 -210
  206. package/src/permission/next.ts +0 -280
  207. package/src/plugin/codex.ts +0 -500
  208. package/src/plugin/copilot.ts +0 -283
  209. package/src/plugin/index.ts +0 -135
  210. package/src/project/bootstrap.ts +0 -35
  211. package/src/project/instance.ts +0 -91
  212. package/src/project/project.ts +0 -371
  213. package/src/project/state.ts +0 -66
  214. package/src/project/vcs.ts +0 -151
  215. package/src/provider/auth.ts +0 -147
  216. package/src/provider/models-macro.ts +0 -14
  217. package/src/provider/models.ts +0 -114
  218. package/src/provider/provider.ts +0 -1220
  219. package/src/provider/sdk/openai-compatible/src/README.md +0 -5
  220. package/src/provider/sdk/openai-compatible/src/index.ts +0 -2
  221. package/src/provider/sdk/openai-compatible/src/openai-compatible-provider.ts +0 -100
  222. package/src/provider/sdk/openai-compatible/src/responses/convert-to-openai-responses-input.ts +0 -303
  223. package/src/provider/sdk/openai-compatible/src/responses/map-openai-responses-finish-reason.ts +0 -22
  224. package/src/provider/sdk/openai-compatible/src/responses/openai-config.ts +0 -18
  225. package/src/provider/sdk/openai-compatible/src/responses/openai-error.ts +0 -22
  226. package/src/provider/sdk/openai-compatible/src/responses/openai-responses-api-types.ts +0 -207
  227. package/src/provider/sdk/openai-compatible/src/responses/openai-responses-language-model.ts +0 -1732
  228. package/src/provider/sdk/openai-compatible/src/responses/openai-responses-prepare-tools.ts +0 -177
  229. package/src/provider/sdk/openai-compatible/src/responses/openai-responses-settings.ts +0 -1
  230. package/src/provider/sdk/openai-compatible/src/responses/tool/code-interpreter.ts +0 -88
  231. package/src/provider/sdk/openai-compatible/src/responses/tool/file-search.ts +0 -128
  232. package/src/provider/sdk/openai-compatible/src/responses/tool/image-generation.ts +0 -115
  233. package/src/provider/sdk/openai-compatible/src/responses/tool/local-shell.ts +0 -65
  234. package/src/provider/sdk/openai-compatible/src/responses/tool/web-search-preview.ts +0 -104
  235. package/src/provider/sdk/openai-compatible/src/responses/tool/web-search.ts +0 -103
  236. package/src/provider/transform.ts +0 -742
  237. package/src/pty/index.ts +0 -241
  238. package/src/question/index.ts +0 -176
  239. package/src/scheduler/index.ts +0 -61
  240. package/src/server/error.ts +0 -36
  241. package/src/server/event.ts +0 -7
  242. package/src/server/mdns.ts +0 -59
  243. package/src/server/routes/config.ts +0 -92
  244. package/src/server/routes/experimental.ts +0 -208
  245. package/src/server/routes/file.ts +0 -227
  246. package/src/server/routes/global.ts +0 -135
  247. package/src/server/routes/mcp.ts +0 -225
  248. package/src/server/routes/permission.ts +0 -68
  249. package/src/server/routes/project.ts +0 -82
  250. package/src/server/routes/provider.ts +0 -165
  251. package/src/server/routes/pty.ts +0 -169
  252. package/src/server/routes/question.ts +0 -98
  253. package/src/server/routes/session.ts +0 -939
  254. package/src/server/routes/tui.ts +0 -379
  255. package/src/server/server.ts +0 -663
  256. package/src/session/compaction.ts +0 -225
  257. package/src/session/index.ts +0 -498
  258. package/src/session/llm.ts +0 -288
  259. package/src/session/message-v2.ts +0 -740
  260. package/src/session/message.ts +0 -189
  261. package/src/session/processor.ts +0 -406
  262. package/src/session/prompt/anthropic-20250930.txt +0 -168
  263. package/src/session/prompt/anthropic.txt +0 -172
  264. package/src/session/prompt/anthropic_spoof.txt +0 -1
  265. package/src/session/prompt/beast.txt +0 -149
  266. package/src/session/prompt/build-switch.txt +0 -5
  267. package/src/session/prompt/codex_header.txt +0 -81
  268. package/src/session/prompt/copilot-gpt-5.txt +0 -145
  269. package/src/session/prompt/gemini.txt +0 -157
  270. package/src/session/prompt/max-steps.txt +0 -16
  271. package/src/session/prompt/plan-reminder-anthropic.txt +0 -67
  272. package/src/session/prompt/plan.txt +0 -26
  273. package/src/session/prompt/qwen.txt +0 -111
  274. package/src/session/prompt.ts +0 -1815
  275. package/src/session/retry.ts +0 -90
  276. package/src/session/revert.ts +0 -121
  277. package/src/session/status.ts +0 -76
  278. package/src/session/summary.ts +0 -150
  279. package/src/session/system.ts +0 -156
  280. package/src/session/todo.ts +0 -37
  281. package/src/share/share-next.ts +0 -204
  282. package/src/share/share.ts +0 -95
  283. package/src/shell/shell.ts +0 -67
  284. package/src/skill/index.ts +0 -1
  285. package/src/skill/skill.ts +0 -135
  286. package/src/snapshot/index.ts +0 -236
  287. package/src/storage/storage.ts +0 -227
  288. package/src/tool/apply_patch.ts +0 -279
  289. package/src/tool/apply_patch.txt +0 -33
  290. package/src/tool/bash.ts +0 -258
  291. package/src/tool/bash.txt +0 -115
  292. package/src/tool/batch.ts +0 -175
  293. package/src/tool/batch.txt +0 -24
  294. package/src/tool/codesearch.ts +0 -132
  295. package/src/tool/codesearch.txt +0 -12
  296. package/src/tool/edit.ts +0 -645
  297. package/src/tool/edit.txt +0 -10
  298. package/src/tool/external-directory.ts +0 -32
  299. package/src/tool/glob.ts +0 -77
  300. package/src/tool/glob.txt +0 -6
  301. package/src/tool/grep.ts +0 -154
  302. package/src/tool/grep.txt +0 -8
  303. package/src/tool/invalid.ts +0 -17
  304. package/src/tool/ls.ts +0 -121
  305. package/src/tool/ls.txt +0 -1
  306. package/src/tool/lsp.ts +0 -96
  307. package/src/tool/lsp.txt +0 -19
  308. package/src/tool/multiedit.ts +0 -46
  309. package/src/tool/multiedit.txt +0 -41
  310. package/src/tool/plan-enter.txt +0 -14
  311. package/src/tool/plan-exit.txt +0 -13
  312. package/src/tool/plan.ts +0 -130
  313. package/src/tool/question.ts +0 -33
  314. package/src/tool/question.txt +0 -10
  315. package/src/tool/read.ts +0 -202
  316. package/src/tool/read.txt +0 -12
  317. package/src/tool/registry.ts +0 -162
  318. package/src/tool/skill.ts +0 -82
  319. package/src/tool/task.ts +0 -188
  320. package/src/tool/task.txt +0 -60
  321. package/src/tool/todo.ts +0 -53
  322. package/src/tool/todoread.txt +0 -14
  323. package/src/tool/todowrite.txt +0 -167
  324. package/src/tool/tool.ts +0 -88
  325. package/src/tool/truncation.ts +0 -106
  326. package/src/tool/webfetch.ts +0 -182
  327. package/src/tool/webfetch.txt +0 -13
  328. package/src/tool/websearch.ts +0 -150
  329. package/src/tool/websearch.txt +0 -14
  330. package/src/tool/write.ts +0 -80
  331. package/src/tool/write.txt +0 -8
  332. package/src/util/archive.ts +0 -16
  333. package/src/util/color.ts +0 -19
  334. package/src/util/context.ts +0 -25
  335. package/src/util/defer.ts +0 -12
  336. package/src/util/eventloop.ts +0 -20
  337. package/src/util/filesystem.ts +0 -93
  338. package/src/util/fn.ts +0 -11
  339. package/src/util/format.ts +0 -20
  340. package/src/util/iife.ts +0 -3
  341. package/src/util/keybind.ts +0 -103
  342. package/src/util/lazy.ts +0 -18
  343. package/src/util/locale.ts +0 -81
  344. package/src/util/lock.ts +0 -98
  345. package/src/util/log.ts +0 -180
  346. package/src/util/queue.ts +0 -32
  347. package/src/util/rpc.ts +0 -66
  348. package/src/util/scrap.ts +0 -10
  349. package/src/util/signal.ts +0 -12
  350. package/src/util/timeout.ts +0 -14
  351. package/src/util/token.ts +0 -7
  352. package/src/util/wildcard.ts +0 -56
  353. package/src/worktree/index.ts +0 -524
  354. package/sst-env.d.ts +0 -9
  355. package/test/acp/agent-interface.test.ts +0 -51
  356. package/test/acp/event-subscription.test.ts +0 -436
  357. package/test/agent/agent.test.ts +0 -638
  358. package/test/bun.test.ts +0 -53
  359. package/test/cli/cmd/tui/fileref.test.ts +0 -30
  360. package/test/cli/github-action.test.ts +0 -129
  361. package/test/cli/github-remote.test.ts +0 -80
  362. package/test/cli/tui/navigator_logic.test.ts +0 -99
  363. package/test/cli/tui/transcript.test.ts +0 -297
  364. package/test/cli/ui.test.ts +0 -80
  365. package/test/config/agent-color.test.ts +0 -66
  366. package/test/config/config.test.ts +0 -1613
  367. package/test/config/fixtures/empty-frontmatter.md +0 -4
  368. package/test/config/fixtures/frontmatter.md +0 -28
  369. package/test/config/fixtures/no-frontmatter.md +0 -1
  370. package/test/config/markdown.test.ts +0 -192
  371. package/test/file/ignore.test.ts +0 -10
  372. package/test/file/path-traversal.test.ts +0 -198
  373. package/test/fixture/fixture.ts +0 -45
  374. package/test/fixture/lsp/fake-lsp-server.js +0 -77
  375. package/test/ide/ide.test.ts +0 -82
  376. package/test/keybind.test.ts +0 -421
  377. package/test/lsp/client.test.ts +0 -95
  378. package/test/mcp/headers.test.ts +0 -153
  379. package/test/mcp/oauth-browser.test.ts +0 -261
  380. package/test/patch/patch.test.ts +0 -348
  381. package/test/permission/arity.test.ts +0 -33
  382. package/test/permission/next.test.ts +0 -690
  383. package/test/permission-task.test.ts +0 -319
  384. package/test/plugin/codex.test.ts +0 -123
  385. package/test/preload.ts +0 -67
  386. package/test/project/project.test.ts +0 -120
  387. package/test/provider/amazon-bedrock.test.ts +0 -268
  388. package/test/provider/gitlab-duo.test.ts +0 -286
  389. package/test/provider/provider.test.ts +0 -2149
  390. package/test/provider/transform.test.ts +0 -1631
  391. package/test/question/question.test.ts +0 -300
  392. package/test/scheduler.test.ts +0 -73
  393. package/test/server/session-list.test.ts +0 -39
  394. package/test/server/session-select.test.ts +0 -78
  395. package/test/session/compaction.test.ts +0 -293
  396. package/test/session/llm.test.ts +0 -90
  397. package/test/session/message-v2.test.ts +0 -786
  398. package/test/session/retry.test.ts +0 -131
  399. package/test/session/revert-compact.test.ts +0 -285
  400. package/test/session/session.test.ts +0 -71
  401. package/test/skill/skill.test.ts +0 -185
  402. package/test/snapshot/snapshot.test.ts +0 -939
  403. package/test/tool/__snapshots__/tool.test.ts.snap +0 -9
  404. package/test/tool/apply_patch.test.ts +0 -499
  405. package/test/tool/bash.test.ts +0 -320
  406. package/test/tool/external-directory.test.ts +0 -126
  407. package/test/tool/fixtures/large-image.png +0 -0
  408. package/test/tool/fixtures/models-api.json +0 -33453
  409. package/test/tool/grep.test.ts +0 -109
  410. package/test/tool/question.test.ts +0 -105
  411. package/test/tool/read.test.ts +0 -332
  412. package/test/tool/registry.test.ts +0 -76
  413. package/test/tool/truncation.test.ts +0 -159
  414. package/test/util/filesystem.test.ts +0 -39
  415. package/test/util/format.test.ts +0 -59
  416. package/test/util/iife.test.ts +0 -36
  417. package/test/util/lazy.test.ts +0 -50
  418. package/test/util/lock.test.ts +0 -72
  419. package/test/util/timeout.test.ts +0 -21
  420. package/test/util/wildcard.test.ts +0 -75
  421. package/tsconfig.json +0 -16
package/bin/jonsoc CHANGED
@@ -187,8 +187,8 @@ let arch = archMap[osArch()]
187
187
  if (!arch) {
188
188
  arch = osArch()
189
189
  }
190
- const base = "jonsoc-" + platform + "-" + arch
191
- const binary = platform === "windows" ? "jonsoc.exe" : "jonsoc"
190
+ const base = "jonsoc-" + platform + "-" + arch
191
+ const binary = platform === "windows" ? "jonsoc.exe" : "jonsoc"
192
192
 
193
193
  const supported = new Set(["darwin-arm64", "linux-x64", "windows-x64"])
194
194
  if (!supported.has(`${platform}-${arch}`)) {
@@ -204,7 +204,7 @@ const version = (() => {
204
204
  return typeof data.version === "string" ? data.version : "latest"
205
205
  })()
206
206
 
207
- const repo = (process.env.JONSOC_REPO ?? process.env.OPENCODE_REPO ?? "Noisemaker111/JonsOpencode").replace(
207
+ const repo = (process.env.JONSOC_REPO ?? process.env.OPENCODE_REPO ?? "Noisemaker111/Jonsoc").replace(
208
208
  /^https?:\/\/github\.com\//,
209
209
  "",
210
210
  )
@@ -235,7 +235,7 @@ function releaseUrl() {
235
235
  }
236
236
  }
237
237
 
238
- function extractArchive(archivePath) {
238
+ function extractArchive(archivePath) {
239
239
  if (platform === "linux") {
240
240
  const code = run("tar", ["-xzf", archivePath, "-C", binDir], { env })
241
241
  if (code !== 0) process.exit(code)
@@ -251,11 +251,19 @@ function extractArchive(archivePath) {
251
251
 
252
252
  const code = run("unzip", ["-o", archivePath, "-d", binDir], { env })
253
253
  if (code !== 0) process.exit(code)
254
- }
255
-
256
- function ensureBinary() {
257
- if (versionMatch()) return binaryPath
258
- ensureDir(binDir)
254
+ }
255
+
256
+ function bundledBinary() {
257
+ const bundle = join(pkgDir, "..", base, "bin", binary)
258
+ if (!existsSync(bundle)) return
259
+ return bundle
260
+ }
261
+
262
+ function ensureBinary() {
263
+ const bundle = bundledBinary()
264
+ if (bundle) return bundle
265
+ if (versionMatch()) return binaryPath
266
+ ensureDir(binDir)
259
267
  const { asset, url } = releaseUrl()
260
268
  const archivePath = join(dataDir, asset)
261
269
  const code = run("curl", ["-fL", "-o", archivePath, url], { env })
package/package.json CHANGED
@@ -1,149 +1,15 @@
1
1
  {
2
- "$schema": "https://json.schemastore.org/package.json",
3
- "version": "1.1.48",
4
2
  "name": "jonsoc",
5
- "description": "AI-powered development tool - an open source fork of OpenCode (opencode.ai)",
6
- "type": "module",
7
- "license": "MIT",
8
- "author": "Jon",
9
- "keywords": [
10
- "ai",
11
- "development",
12
- "cli",
13
- "jonsoc",
14
- "coding-assistant",
15
- "opencode",
16
- "opencode-fork"
17
- ],
18
- "repository": {
19
- "type": "git",
20
- "url": "https://github.com/Noisemaker111/Jonsoc"
21
- },
22
- "homepage": "https://github.com/Noisemaker111/Jonsoc#readme",
23
- "bugs": {
24
- "url": "https://github.com/Noisemaker111/Jonsoc/issues"
25
- },
26
- "scripts": {
27
- "typecheck": "tsgo --noEmit",
28
- "test": "bun test",
29
- "build": "bun run script/build.ts",
30
- "dev": "bun run --conditions=browser ./src/index.ts",
31
- "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'",
32
- "clean": "echo 'Cleaning up...' && rm -rf node_modules dist",
33
- "lint": "echo 'Running lint checks...' && bun test --coverage",
34
- "format": "echo 'Formatting code...' && bun run --prettier --write src/**/*.ts",
35
- "docs": "echo 'Generating documentation...' && find src -name '*.ts' -exec echo 'Processing: {}' \\;",
36
- "deploy": "echo 'Deploying application...' && bun run build && echo 'Deployment completed successfully'"
37
- },
38
3
  "bin": {
39
4
  "jonsoc": "./bin/jonsoc"
40
5
  },
41
- "optionalDependencies": {
42
- "jonsoc-darwin-arm64": "1.1.47",
43
- "jonsoc-linux-x64": "1.1.47",
44
- "jonsoc-windows-x64": "1.1.47"
45
- },
46
- "exports": {
47
- "./*": "./src/*.ts"
48
- },
49
- "devDependencies": {
50
- "@babel/core": "7.28.4",
51
- "@octokit/webhooks-types": "7.6.1",
52
- "@jonsoc/script": "workspace:*",
53
- "@parcel/watcher-darwin-arm64": "2.5.1",
54
- "@parcel/watcher-darwin-x64": "2.5.1",
55
- "@parcel/watcher-linux-arm64-glibc": "2.5.1",
56
- "@parcel/watcher-linux-arm64-musl": "2.5.1",
57
- "@parcel/watcher-linux-x64-glibc": "2.5.1",
58
- "@parcel/watcher-linux-x64-musl": "2.5.1",
59
- "@parcel/watcher-win32-x64": "2.5.1",
60
- "@standard-schema/spec": "1.0.0",
61
- "@tsconfig/bun": "catalog:",
62
- "@types/babel__core": "7.20.5",
63
- "@types/bun": "catalog:",
64
- "@types/turndown": "5.0.5",
65
- "@types/yargs": "17.0.33",
66
- "@typescript/native-preview": "catalog:",
67
- "typescript": "catalog:",
68
- "vscode-languageserver-types": "3.17.5",
69
- "why-is-node-running": "3.2.2",
70
- "zod-to-json-schema": "3.24.5"
71
- },
72
- "dependencies": {
73
- "@actions/core": "1.11.1",
74
- "@actions/github": "6.0.1",
75
- "@agentclientprotocol/sdk": "0.12.0",
76
- "@ai-sdk/amazon-bedrock": "3.0.73",
77
- "@ai-sdk/anthropic": "2.0.57",
78
- "@ai-sdk/azure": "2.0.91",
79
- "@ai-sdk/cerebras": "1.0.34",
80
- "@ai-sdk/cohere": "2.0.22",
81
- "@ai-sdk/deepinfra": "1.0.31",
82
- "@ai-sdk/gateway": "2.0.25",
83
- "@ai-sdk/google": "2.0.52",
84
- "@ai-sdk/google-vertex": "3.0.97",
85
- "@ai-sdk/groq": "2.0.34",
86
- "@ai-sdk/mistral": "2.0.27",
87
- "@ai-sdk/openai": "2.0.89",
88
- "@ai-sdk/openai-compatible": "1.0.30",
89
- "@ai-sdk/perplexity": "2.0.23",
90
- "@ai-sdk/provider": "2.0.1",
91
- "@ai-sdk/provider-utils": "3.0.20",
92
- "@ai-sdk/togetherai": "1.0.31",
93
- "@ai-sdk/vercel": "1.0.31",
94
- "@ai-sdk/xai": "2.0.51",
95
- "@clack/prompts": "1.0.0-alpha.1",
96
- "@gitlab/gitlab-ai-provider": "3.2.0",
97
- "@hono/standard-validator": "0.1.5",
98
- "@hono/zod-validator": "catalog:",
99
- "@jonsoc/plugin": "workspace:*",
100
- "@jonsoc/script": "workspace:*",
101
- "@jonsoc/sdk": "workspace:*",
102
- "@jonsoc/util": "workspace:*",
103
- "@modelcontextprotocol/sdk": "1.25.2",
104
- "@octokit/graphql": "9.0.2",
105
- "@octokit/rest": "catalog:",
106
- "@openauthjs/openauth": "catalog:",
107
- "@openrouter/ai-sdk-provider": "1.5.2",
108
- "@opentui/core": "0.1.75",
109
- "@opentui/solid": "0.1.75",
110
- "@parcel/watcher": "2.5.1",
111
- "@pierre/diffs": "catalog:",
112
- "@solid-primitives/event-bus": "1.1.2",
113
- "@solid-primitives/scheduled": "1.5.2",
114
- "@standard-schema/spec": "1.0.0",
115
- "@zip.js/zip.js": "2.7.62",
116
- "ai": "catalog:",
117
- "bonjour-service": "1.3.0",
118
- "bun-pty": "0.4.4",
119
- "chokidar": "4.0.3",
120
- "clipboardy": "4.0.0",
121
- "decimal.js": "10.5.0",
122
- "diff": "catalog:",
123
- "fuzzysort": "3.1.0",
124
- "gray-matter": "4.0.3",
125
- "hono": "catalog:",
126
- "hono-openapi": "catalog:",
127
- "ignore": "7.0.5",
128
- "jsonc-parser": "3.3.1",
129
- "minimatch": "10.0.3",
130
- "open": "10.1.2",
131
- "opentui-spinner": "0.0.6",
132
- "partial-json": "0.1.7",
133
- "remeda": "catalog:",
134
- "solid-js": "catalog:",
135
- "strip-ansi": "7.1.2",
136
- "tree-sitter-bash": "0.25.0",
137
- "turndown": "7.2.0",
138
- "ulid": "catalog:",
139
- "vscode-jsonrpc": "8.2.1",
140
- "web-tree-sitter": "0.25.10",
141
- "xdg-basedir": "5.1.0",
142
- "yargs": "18.0.0",
143
- "zod": "catalog:",
144
- "zod-to-json-schema": "3.24.5"
6
+ "scripts": {
7
+ "postinstall": "bun ./postinstall.mjs || node ./postinstall.mjs"
145
8
  },
146
- "publishConfig": {
147
- "access": "public"
9
+ "version": "1.1.50",
10
+ "optionalDependencies": {
11
+ "jonsoc-linux-x64": "1.1.50",
12
+ "jonsoc-darwin-arm64": "1.1.50",
13
+ "jonsoc-windows-x64": "1.1.50"
148
14
  }
149
- }
15
+ }
@@ -0,0 +1,15 @@
1
+ import { arch, platform } from "os"
2
+
3
+ const osMap = {
4
+ win32: "windows",
5
+ darwin: "darwin",
6
+ linux: "linux",
7
+ }
8
+
9
+ const os = osMap[platform()] ?? platform()
10
+ const cpu = arch()
11
+ const pkgName = `jonsoc-${os}-${cpu}`
12
+
13
+ if (process.env.JONSOC_DEBUG_POSTINSTALL === "1") {
14
+ console.log(`[jonsoc] optional dependency: ${pkgName}`)
15
+ }
package/AGENTS.md DELETED
@@ -1,27 +0,0 @@
1
- # jonsoc agent guidelines
2
-
3
- ## Build/Test Commands
4
-
5
- - **Install**: `bun install`
6
- - **Run**: `bun run --conditions=browser ./src/index.ts`
7
- - **Typecheck**: `bun run typecheck` (npm run typecheck)
8
- - **Test**: `bun test` (runs all tests)
9
- - **Single test**: `bun test test/tool/tool.test.ts` (specific test file)
10
-
11
- ## Code Style
12
-
13
- - **Runtime**: Bun with TypeScript ESM modules
14
- - **Imports**: Use relative imports for local modules, named imports preferred
15
- - **Types**: Zod schemas for validation, TypeScript interfaces for structure
16
- - **Naming**: camelCase for variables/functions, PascalCase for classes/namespaces
17
- - **Error handling**: Use Result patterns, avoid throwing exceptions in tools
18
- - **File structure**: Namespace-based organization (e.g., `Tool.define()`, `Session.create()`)
19
-
20
- ## Architecture
21
-
22
- - **Tools**: Implement `Tool.Info` interface with `execute()` method
23
- - **Context**: Pass `sessionID` in tool context, use `App.provide()` for DI
24
- - **Validation**: All inputs validated with Zod schemas
25
- - **Logging**: Use `Log.create({ service: "name" })` pattern
26
- - **Storage**: Use `Storage` namespace for persistence
27
- - **API Client**: The TypeScript TUI (built with SolidJS + OpenTUI) communicates with the JonsOC server using `@jonsoc/sdk`. When adding/modifying server endpoints in `packages/jonsoc/src/server/server.ts`, run `./script/generate.ts` to regenerate the SDK and related files.
package/Dockerfile DELETED
@@ -1,18 +0,0 @@
1
- FROM alpine AS base
2
-
3
- # Disable the runtime transpiler cache by default inside Docker containers.
4
- # On ephemeral containers, the cache is not useful
5
- ARG BUN_RUNTIME_TRANSPILER_CACHE_PATH=0
6
- ENV BUN_RUNTIME_TRANSPILER_CACHE_PATH=${BUN_RUNTIME_TRANSPILER_CACHE_PATH}
7
- RUN apk add libgcc libstdc++ ripgrep
8
-
9
- FROM base AS build-amd64
10
- COPY dist/opencode-linux-x64-baseline-musl/bin/opencode /usr/local/bin/opencode
11
-
12
- FROM base AS build-arm64
13
- COPY dist/opencode-linux-arm64-musl/bin/opencode /usr/local/bin/opencode
14
-
15
- ARG TARGETARCH
16
- FROM build-${TARGETARCH}
17
- RUN opencode --version
18
- ENTRYPOINT ["opencode"]
@@ -1,151 +0,0 @@
1
- # Publishing jonsOC to npm
2
-
3
- This guide explains how to publish jonsOC as a global npm package that users can install with `bun add -g jonsoc` or `npm install -g jonsoc`.
4
-
5
- ## Changes Made
6
-
7
- 1. **Removed `"private": true`** from `package.json` to allow publishing
8
- 2. **Updated package name** in publish script from "jonsoc" to "jonsoc"
9
- 3. **Added npm metadata** (description, keywords, repository, etc.) for better discoverability
10
- 4. **Updated README** with installation and usage instructions
11
-
12
- ## How It Works
13
-
14
- jonsOC uses a multi-package distribution strategy (similar to esbuild, Parcel, etc.):
15
-
16
- 1. **Main package (`jonsoc`)**: Contains the wrapper script that users install
17
- 2. **Platform-specific packages**: Compiled binaries for each platform:
18
- - `jonsoc-linux-x64`
19
- - `jonsoc-darwin-arm64`
20
- - `jonsoc-windows-x64`
21
-
22
- When users install `jonsoc`, npm automatically installs the correct platform-specific binary as an optional dependency.
23
-
24
- ## Prerequisites
25
-
26
- Before publishing, make sure you:
27
-
28
- 1. **Have an npm account**: Sign up at https://www.npmjs.com
29
- 2. **Are logged in to npm**:
30
- ```bash
31
- npm login
32
- ```
33
- 3. **Check package name availability**:
34
- ```bash
35
- npm view jonsoc
36
- ```
37
- If the package exists and isn't yours, you'll need to choose a different name.
38
-
39
- ## Publishing Steps
40
-
41
- ### 1. Build all platform binaries
42
-
43
- ```bash
44
- cd packages/jonsoc
45
- bun run build
46
- ```
47
-
48
- This creates compiled binaries for all supported platforms in the `dist/` directory.
49
-
50
- ### 2. Test locally (optional but recommended)
51
-
52
- Build for your current platform only:
53
-
54
- ```bash
55
- bun run build -- --single
56
- ```
57
-
58
- Test the binary:
59
-
60
- ```bash
61
- ./dist/jonsoc-<your-platform>-<your-arch>/bin/jonsoc --version
62
- ```
63
-
64
- ### 3. Publish to npm
65
-
66
- ```bash
67
- bun run script/publish.ts
68
- ```
69
-
70
- This will:
71
-
72
- - Publish all platform-specific packages
73
- - Publish the main `jonsoc` package
74
- - Create GitHub release archives (if configured)
75
-
76
- ### 4. Test the published package
77
-
78
- ```bash
79
- # In a different directory
80
- bun add -g jonsoc
81
-
82
- # Verify installation
83
- jonsoc --version
84
- jonsoc --help
85
- ```
86
-
87
- ## Version Management
88
-
89
- The version is managed in `@jonsoc/script` package. To publish a new version:
90
-
91
- 1. Update the version in the script package
92
- 2. Run the build and publish commands
93
-
94
- ## Troubleshooting
95
-
96
- ### Package name already taken
97
-
98
- If `jonsoc` is already taken on npm, you have a few options:
99
-
100
- 1. **Use a scoped package**: Change to `@your-username/jonsoc`
101
- 2. **Choose a different name**: e.g., `jonsoc-cli`, `jonsoc-dev`, etc.
102
- 3. **Contact the current owner** if the package is abandoned
103
-
104
- To use a scoped package, update the `name` field in `package.json`:
105
-
106
- ```json
107
- {
108
- "name": "@your-username/jonsoc"
109
- }
110
- ```
111
-
112
- ### Authentication errors
113
-
114
- If you get authentication errors:
115
-
116
- ```bash
117
- npm whoami # Check if logged in
118
- npm login # Login if needed
119
- ```
120
-
121
- ### Platform binary issues
122
-
123
- If a specific platform binary fails to build:
124
-
125
- ```bash
126
- # Build only current platform for testing
127
- bun run build -- --single
128
-
129
- # Skip npm install during build
130
- bun run build -- --skip-install
131
- ```
132
-
133
- ## Publishing Updates
134
-
135
- When publishing updates:
136
-
137
- 1. Update version in script package
138
- 2. Run `bun run build`
139
- 3. Run `bun run script/publish.ts`
140
-
141
- The publish script automatically:
142
-
143
- - Tags releases based on the channel (stable, preview, etc.)
144
- - Creates platform-specific packages
145
- - Updates the main package
146
-
147
- ## Notes
148
-
149
- - The publish script uses `--access public` to ensure packages are publicly available
150
- - Platform-specific binaries are automatically selected during installation based on OS and architecture
151
- - The bin wrapper (`bin/jonsoc`) handles finding and executing the correct binary
package/README.md DELETED
@@ -1,58 +0,0 @@
1
- # jonsOC
2
-
3
- AI-powered development tool for modern coding workflows.
4
-
5
- ## Installation
6
-
7
- Install globally using bun:
8
-
9
- ```bash
10
- bun add -g jonsoc
11
- ```
12
-
13
- Or with npm:
14
-
15
- ```bash
16
- npm install -g jonsoc
17
- ```
18
-
19
- ## Usage
20
-
21
- Once installed, you can use jonsOC from anywhere:
22
-
23
- ```bash
24
- jonsoc --help
25
- ```
26
-
27
- ## Development
28
-
29
- To install dependencies:
30
-
31
- ```bash
32
- bun install
33
- ```
34
-
35
- To run locally:
36
-
37
- ```bash
38
- bun run dev
39
- ```
40
-
41
- To build for all platforms:
42
-
43
- ```bash
44
- bun run build
45
- ```
46
-
47
- ## Publishing
48
-
49
- To build and publish to npm:
50
-
51
- ```bash
52
- bun run build
53
- bun run script/publish.ts
54
- ```
55
-
56
- ## License
57
-
58
- MIT
package/bunfig.toml DELETED
@@ -1,7 +0,0 @@
1
- preload = ["@opentui/solid/preload"]
2
-
3
- [test]
4
- preload = ["./test/preload.ts"]
5
- timeout = 10000 # 10 seconds (default is 5000ms)
6
- # Enable code coverage
7
- coverage = true
@@ -1,11 +0,0 @@
1
- {
2
- "name": "jonsoc",
3
- "version": "0.0.0",
4
- "description": "AI-powered development tool",
5
- "license": "MIT",
6
- "author": "Jon",
7
- "repository": {
8
- "type": "git",
9
- "url": "https://github.com/Noisemaker111/Jonsoc"
10
- }
11
- }