oh-my-parallel-agent-opencode 0.1.0 → 0.2.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 (532) hide show
  1. package/LICENSE.md +82 -0
  2. package/README.ja.md +392 -0
  3. package/README.ko.md +397 -0
  4. package/README.md +375 -56
  5. package/README.zh-cn.md +402 -0
  6. package/bin/oh-my-parallel-agent-opencode.js +80 -0
  7. package/bin/platform.js +38 -0
  8. package/bin/platform.test.ts +148 -0
  9. package/dist/agents/atlas.d.ts +22 -0
  10. package/dist/agents/dynamic-agent-prompt-builder.d.ts +30 -0
  11. package/dist/agents/explore.d.ts +7 -0
  12. package/dist/agents/hephaestus.d.ts +6 -0
  13. package/dist/agents/index.d.ts +12 -0
  14. package/dist/agents/librarian.d.ts +7 -0
  15. package/dist/agents/metis.d.ts +21 -0
  16. package/dist/agents/momus.d.ts +21 -0
  17. package/dist/agents/momus.test.d.ts +1 -0
  18. package/dist/agents/multimodal-looker.d.ts +7 -0
  19. package/dist/agents/oracle.d.ts +7 -0
  20. package/dist/agents/prometheus/behavioral-summary.d.ts +6 -0
  21. package/dist/agents/prometheus/high-accuracy-mode.d.ts +6 -0
  22. package/dist/agents/prometheus/identity-constraints.d.ts +7 -0
  23. package/dist/agents/prometheus/index.d.ts +39 -0
  24. package/dist/agents/prometheus/interview-mode.d.ts +7 -0
  25. package/dist/agents/prometheus/plan-generation.d.ts +7 -0
  26. package/dist/agents/prometheus/plan-template.d.ts +7 -0
  27. package/dist/agents/prometheus-prompt.test.d.ts +1 -0
  28. package/dist/agents/sisyphus-junior.d.ts +10 -0
  29. package/dist/agents/sisyphus-junior.test.d.ts +1 -0
  30. package/dist/agents/sisyphus.d.ts +8 -0
  31. package/dist/agents/types.d.ts +63 -0
  32. package/dist/agents/utils.d.ts +16 -0
  33. package/dist/agents/utils.test.d.ts +1 -0
  34. package/dist/cli/config-manager.d.ts +162 -0
  35. package/dist/cli/config-manager.test.d.ts +1 -0
  36. package/dist/cli/doctor/checks/auth.d.ts +7 -0
  37. package/dist/cli/doctor/checks/auth.test.d.ts +1 -0
  38. package/dist/cli/doctor/checks/config.d.ts +8 -0
  39. package/dist/cli/doctor/checks/config.test.d.ts +1 -0
  40. package/dist/cli/doctor/checks/dependencies.d.ts +8 -0
  41. package/dist/cli/doctor/checks/dependencies.test.d.ts +1 -0
  42. package/dist/cli/doctor/checks/gh.d.ts +13 -0
  43. package/dist/cli/doctor/checks/gh.test.d.ts +1 -0
  44. package/dist/cli/doctor/checks/index.d.ts +13 -0
  45. package/dist/cli/doctor/checks/lsp.d.ts +8 -0
  46. package/dist/cli/doctor/checks/lsp.test.d.ts +1 -0
  47. package/dist/cli/doctor/checks/mcp-oauth.d.ts +15 -0
  48. package/dist/cli/doctor/checks/mcp-oauth.test.d.ts +1 -0
  49. package/dist/cli/doctor/checks/mcp.d.ts +6 -0
  50. package/dist/cli/doctor/checks/mcp.test.d.ts +1 -0
  51. package/dist/cli/doctor/checks/model-resolution.d.ts +33 -0
  52. package/dist/cli/doctor/checks/model-resolution.test.d.ts +1 -0
  53. package/dist/cli/doctor/checks/opencode.d.ts +19 -0
  54. package/dist/cli/doctor/checks/opencode.test.d.ts +1 -0
  55. package/dist/cli/doctor/checks/plugin.d.ts +4 -0
  56. package/dist/cli/doctor/checks/plugin.test.d.ts +1 -0
  57. package/dist/cli/doctor/checks/version.d.ts +4 -0
  58. package/dist/cli/doctor/checks/version.test.d.ts +1 -0
  59. package/dist/cli/doctor/constants.d.ts +42 -0
  60. package/dist/cli/doctor/formatter.d.ts +12 -0
  61. package/dist/cli/doctor/formatter.test.d.ts +1 -0
  62. package/dist/cli/doctor/index.d.ts +5 -0
  63. package/dist/cli/doctor/runner.d.ts +7 -0
  64. package/dist/cli/doctor/runner.test.d.ts +1 -0
  65. package/dist/cli/doctor/types.d.ts +91 -0
  66. package/dist/cli/get-local-version/formatter.d.ts +3 -0
  67. package/dist/cli/get-local-version/index.d.ts +3 -0
  68. package/dist/cli/get-local-version/types.d.ts +13 -0
  69. package/dist/cli/index.d.ts +2 -0
  70. package/dist/cli/index.js +26903 -0
  71. package/dist/cli/index.test.d.ts +1 -0
  72. package/dist/cli/install.d.ts +2 -0
  73. package/dist/cli/install.test.d.ts +1 -0
  74. package/dist/cli/mcp-oauth/index.d.ts +6 -0
  75. package/dist/cli/mcp-oauth/index.test.d.ts +1 -0
  76. package/dist/cli/mcp-oauth/login.d.ts +6 -0
  77. package/dist/cli/mcp-oauth/login.test.d.ts +1 -0
  78. package/dist/cli/mcp-oauth/logout.d.ts +4 -0
  79. package/dist/cli/mcp-oauth/logout.test.d.ts +1 -0
  80. package/dist/cli/mcp-oauth/status.d.ts +1 -0
  81. package/dist/cli/mcp-oauth/status.test.d.ts +1 -0
  82. package/dist/cli/model-fallback.d.ts +18 -0
  83. package/dist/cli/model-fallback.test.d.ts +1 -0
  84. package/dist/cli/run/completion.d.ts +2 -0
  85. package/dist/cli/run/completion.test.d.ts +1 -0
  86. package/dist/cli/run/events.d.ts +14 -0
  87. package/dist/cli/run/events.test.d.ts +1 -0
  88. package/dist/cli/run/index.d.ts +2 -0
  89. package/dist/cli/run/runner.d.ts +2 -0
  90. package/dist/cli/run/types.d.ts +73 -0
  91. package/dist/cli/types.d.ts +39 -0
  92. package/dist/config/index.d.ts +2 -0
  93. package/dist/config/schema.d.ts +2651 -0
  94. package/dist/config/schema.test.d.ts +1 -0
  95. package/dist/features/background-agent/concurrency.d.ts +27 -0
  96. package/dist/features/background-agent/concurrency.test.d.ts +1 -0
  97. package/dist/features/background-agent/constants.d.ts +44 -0
  98. package/dist/features/background-agent/index.d.ts +4 -0
  99. package/dist/features/background-agent/manager.d.ts +118 -0
  100. package/dist/features/background-agent/manager.test.d.ts +1 -0
  101. package/dist/features/background-agent/result-handler.d.ts +15 -0
  102. package/dist/features/background-agent/spawner.d.ts +14 -0
  103. package/dist/features/background-agent/state.d.ts +35 -0
  104. package/dist/features/background-agent/types.d.ts +79 -0
  105. package/dist/features/boulder-state/constants.d.ts +10 -0
  106. package/dist/features/boulder-state/index.d.ts +3 -0
  107. package/dist/features/boulder-state/storage.d.ts +28 -0
  108. package/dist/features/boulder-state/storage.test.d.ts +1 -0
  109. package/dist/features/boulder-state/types.d.ts +24 -0
  110. package/dist/features/builtin-commands/commands.d.ts +2 -0
  111. package/dist/features/builtin-commands/index.d.ts +2 -0
  112. package/dist/features/builtin-commands/templates/init-deep.d.ts +1 -0
  113. package/dist/features/builtin-commands/templates/ralph-loop.d.ts +2 -0
  114. package/dist/features/builtin-commands/templates/refactor.d.ts +1 -0
  115. package/dist/features/builtin-commands/templates/start-work.d.ts +1 -0
  116. package/dist/features/builtin-commands/templates/stop-continuation.d.ts +1 -0
  117. package/dist/features/builtin-commands/templates/stop-continuation.test.d.ts +1 -0
  118. package/dist/features/builtin-commands/types.d.ts +6 -0
  119. package/dist/features/builtin-skills/index.d.ts +2 -0
  120. package/dist/features/builtin-skills/skills/dev-browser.d.ts +2 -0
  121. package/dist/features/builtin-skills/skills/frontend-ui-ux.d.ts +2 -0
  122. package/dist/features/builtin-skills/skills/git-master.d.ts +2 -0
  123. package/dist/features/builtin-skills/skills/index.d.ts +4 -0
  124. package/dist/features/builtin-skills/skills/playwright.d.ts +3 -0
  125. package/dist/features/builtin-skills/skills.d.ts +6 -0
  126. package/dist/features/builtin-skills/skills.test.d.ts +1 -0
  127. package/dist/features/builtin-skills/types.d.ts +15 -0
  128. package/dist/features/claude-code-agent-loader/index.d.ts +2 -0
  129. package/dist/features/claude-code-agent-loader/loader.d.ts +3 -0
  130. package/dist/features/claude-code-agent-loader/types.d.ts +14 -0
  131. package/dist/features/claude-code-command-loader/index.d.ts +2 -0
  132. package/dist/features/claude-code-command-loader/loader.d.ts +6 -0
  133. package/dist/features/claude-code-command-loader/types.d.ts +42 -0
  134. package/dist/features/claude-code-mcp-loader/env-expander.d.ts +2 -0
  135. package/dist/features/claude-code-mcp-loader/index.d.ts +10 -0
  136. package/dist/features/claude-code-mcp-loader/loader.d.ts +4 -0
  137. package/dist/features/claude-code-mcp-loader/loader.test.d.ts +1 -0
  138. package/dist/features/claude-code-mcp-loader/transformer.d.ts +2 -0
  139. package/dist/features/claude-code-mcp-loader/types.d.ts +39 -0
  140. package/dist/features/claude-code-plugin-loader/index.d.ts +3 -0
  141. package/dist/features/claude-code-plugin-loader/loader.d.ts +20 -0
  142. package/dist/features/claude-code-plugin-loader/types.d.ts +186 -0
  143. package/dist/features/claude-code-session-state/index.d.ts +1 -0
  144. package/dist/features/claude-code-session-state/state.d.ts +9 -0
  145. package/dist/features/claude-code-session-state/state.test.d.ts +1 -0
  146. package/dist/features/context-injector/collector.d.ts +11 -0
  147. package/dist/features/context-injector/collector.test.d.ts +1 -0
  148. package/dist/features/context-injector/index.d.ts +3 -0
  149. package/dist/features/context-injector/injector.d.ts +39 -0
  150. package/dist/features/context-injector/injector.test.d.ts +1 -0
  151. package/dist/features/context-injector/types.d.ts +83 -0
  152. package/dist/features/hook-message-injector/constants.d.ts +3 -0
  153. package/dist/features/hook-message-injector/index.d.ts +4 -0
  154. package/dist/features/hook-message-injector/injector.d.ts +19 -0
  155. package/dist/features/hook-message-injector/types.d.ts +46 -0
  156. package/dist/features/mcp-oauth/callback-server.d.ts +11 -0
  157. package/dist/features/mcp-oauth/callback-server.test.d.ts +1 -0
  158. package/dist/features/mcp-oauth/dcr.d.ts +34 -0
  159. package/dist/features/mcp-oauth/dcr.test.d.ts +1 -0
  160. package/dist/features/mcp-oauth/discovery.d.ts +8 -0
  161. package/dist/features/mcp-oauth/discovery.test.d.ts +1 -0
  162. package/dist/features/mcp-oauth/index.d.ts +1 -0
  163. package/dist/features/mcp-oauth/provider.d.ts +41 -0
  164. package/dist/features/mcp-oauth/provider.test.d.ts +1 -0
  165. package/dist/features/mcp-oauth/resource-indicator.d.ts +2 -0
  166. package/dist/features/mcp-oauth/resource-indicator.test.d.ts +1 -0
  167. package/dist/features/mcp-oauth/schema.d.ts +6 -0
  168. package/dist/features/mcp-oauth/schema.test.d.ts +1 -0
  169. package/dist/features/mcp-oauth/step-up.d.ts +8 -0
  170. package/dist/features/mcp-oauth/step-up.test.d.ts +1 -0
  171. package/dist/features/mcp-oauth/storage.d.ts +17 -0
  172. package/dist/features/mcp-oauth/storage.test.d.ts +1 -0
  173. package/dist/features/opencode-skill-loader/async-loader.d.ts +6 -0
  174. package/dist/features/opencode-skill-loader/async-loader.test.d.ts +1 -0
  175. package/dist/features/opencode-skill-loader/blocking.d.ts +2 -0
  176. package/dist/features/opencode-skill-loader/blocking.test.d.ts +1 -0
  177. package/dist/features/opencode-skill-loader/discover-worker.d.ts +1 -0
  178. package/dist/features/opencode-skill-loader/index.d.ts +4 -0
  179. package/dist/features/opencode-skill-loader/loader.d.ts +16 -0
  180. package/dist/features/opencode-skill-loader/loader.test.d.ts +1 -0
  181. package/dist/features/opencode-skill-loader/merger.d.ts +7 -0
  182. package/dist/features/opencode-skill-loader/skill-content.d.ts +21 -0
  183. package/dist/features/opencode-skill-loader/skill-content.test.d.ts +1 -0
  184. package/dist/features/opencode-skill-loader/types.d.ts +34 -0
  185. package/dist/features/sisyphus-swarm/mailbox/types.d.ts +191 -0
  186. package/dist/features/sisyphus-swarm/mailbox/types.test.d.ts +1 -0
  187. package/dist/features/sisyphus-tasks/storage.d.ts +9 -0
  188. package/dist/features/sisyphus-tasks/storage.test.d.ts +1 -0
  189. package/dist/features/sisyphus-tasks/types.d.ts +47 -0
  190. package/dist/features/sisyphus-tasks/types.test.d.ts +1 -0
  191. package/dist/features/skill-mcp-manager/env-cleaner.d.ts +2 -0
  192. package/dist/features/skill-mcp-manager/env-cleaner.test.d.ts +1 -0
  193. package/dist/features/skill-mcp-manager/index.d.ts +2 -0
  194. package/dist/features/skill-mcp-manager/manager.d.ts +50 -0
  195. package/dist/features/skill-mcp-manager/manager.test.d.ts +1 -0
  196. package/dist/features/skill-mcp-manager/types.d.ts +11 -0
  197. package/dist/features/task-toast-manager/index.d.ts +2 -0
  198. package/dist/features/task-toast-manager/manager.d.ts +58 -0
  199. package/dist/features/task-toast-manager/manager.test.d.ts +1 -0
  200. package/dist/features/task-toast-manager/types.d.ts +24 -0
  201. package/dist/features/tmux-subagent/action-executor.d.ts +22 -0
  202. package/dist/features/tmux-subagent/decision-engine.d.ts +38 -0
  203. package/dist/features/tmux-subagent/decision-engine.test.d.ts +1 -0
  204. package/dist/features/tmux-subagent/index.d.ts +5 -0
  205. package/dist/features/tmux-subagent/manager.d.ts +59 -0
  206. package/dist/features/tmux-subagent/manager.test.d.ts +1 -0
  207. package/dist/features/tmux-subagent/pane-state-querier.d.ts +2 -0
  208. package/dist/features/tmux-subagent/types.d.ts +53 -0
  209. package/dist/hooks/agent-usage-reminder/constants.d.ts +5 -0
  210. package/dist/hooks/agent-usage-reminder/index.d.ts +22 -0
  211. package/dist/hooks/agent-usage-reminder/storage.d.ts +4 -0
  212. package/dist/hooks/agent-usage-reminder/types.d.ts +6 -0
  213. package/dist/hooks/anthropic-context-window-limit-recovery/executor.d.ts +4 -0
  214. package/dist/hooks/anthropic-context-window-limit-recovery/executor.test.d.ts +1 -0
  215. package/dist/hooks/anthropic-context-window-limit-recovery/index.d.ts +16 -0
  216. package/dist/hooks/anthropic-context-window-limit-recovery/parser.d.ts +2 -0
  217. package/dist/hooks/anthropic-context-window-limit-recovery/pruning-deduplication.d.ts +7 -0
  218. package/dist/hooks/anthropic-context-window-limit-recovery/pruning-deduplication.test.d.ts +1 -0
  219. package/dist/hooks/anthropic-context-window-limit-recovery/pruning-types.d.ts +36 -0
  220. package/dist/hooks/anthropic-context-window-limit-recovery/storage.d.ts +28 -0
  221. package/dist/hooks/anthropic-context-window-limit-recovery/storage.test.d.ts +1 -0
  222. package/dist/hooks/anthropic-context-window-limit-recovery/types.d.ts +37 -0
  223. package/dist/hooks/atlas/index.d.ts +35 -0
  224. package/dist/hooks/atlas/index.test.d.ts +1 -0
  225. package/dist/hooks/auto-slash-command/constants.d.ts +5 -0
  226. package/dist/hooks/auto-slash-command/detector.d.ts +9 -0
  227. package/dist/hooks/auto-slash-command/detector.test.d.ts +1 -0
  228. package/dist/hooks/auto-slash-command/executor.d.ts +11 -0
  229. package/dist/hooks/auto-slash-command/index.d.ts +12 -0
  230. package/dist/hooks/auto-slash-command/index.test.d.ts +1 -0
  231. package/dist/hooks/auto-slash-command/types.d.ts +27 -0
  232. package/dist/hooks/auto-update-checker/cache.d.ts +3 -0
  233. package/dist/hooks/auto-update-checker/checker.d.ts +20 -0
  234. package/dist/hooks/auto-update-checker/checker.test.d.ts +1 -0
  235. package/dist/hooks/auto-update-checker/constants.d.ts +10 -0
  236. package/dist/hooks/auto-update-checker/index.d.ts +17 -0
  237. package/dist/hooks/auto-update-checker/index.test.d.ts +1 -0
  238. package/dist/hooks/auto-update-checker/types.d.ts +25 -0
  239. package/dist/hooks/background-notification/index.d.ts +18 -0
  240. package/dist/hooks/background-notification/types.d.ts +4 -0
  241. package/dist/hooks/category-skill-reminder/index.d.ts +22 -0
  242. package/dist/hooks/category-skill-reminder/index.test.d.ts +1 -0
  243. package/dist/hooks/claude-code-hooks/config-loader.d.ts +13 -0
  244. package/dist/hooks/claude-code-hooks/config.d.ts +3 -0
  245. package/dist/hooks/claude-code-hooks/index.d.ts +48 -0
  246. package/dist/hooks/claude-code-hooks/plugin-config.d.ts +8 -0
  247. package/dist/hooks/claude-code-hooks/post-tool-use.d.ts +40 -0
  248. package/dist/hooks/claude-code-hooks/pre-compact.d.ts +16 -0
  249. package/dist/hooks/claude-code-hooks/pre-tool-use.d.ts +25 -0
  250. package/dist/hooks/claude-code-hooks/stop.d.ts +20 -0
  251. package/dist/hooks/claude-code-hooks/todo.d.ts +12 -0
  252. package/dist/hooks/claude-code-hooks/tool-input-cache.d.ts +5 -0
  253. package/dist/hooks/claude-code-hooks/transcript.d.ts +34 -0
  254. package/dist/hooks/claude-code-hooks/types.d.ts +183 -0
  255. package/dist/hooks/claude-code-hooks/user-prompt-submit.d.ts +22 -0
  256. package/dist/hooks/comment-checker/cli.d.ts +52 -0
  257. package/dist/hooks/comment-checker/cli.test.d.ts +1 -0
  258. package/dist/hooks/comment-checker/downloader.d.ts +25 -0
  259. package/dist/hooks/comment-checker/index.d.ts +19 -0
  260. package/dist/hooks/comment-checker/types.d.ts +31 -0
  261. package/dist/hooks/compaction-context-injector/index.d.ts +8 -0
  262. package/dist/hooks/compaction-context-injector/index.test.d.ts +1 -0
  263. package/dist/hooks/context-window-monitor.d.ts +18 -0
  264. package/dist/hooks/delegate-task-retry/index.d.ts +24 -0
  265. package/dist/hooks/delegate-task-retry/index.test.d.ts +1 -0
  266. package/dist/hooks/directory-agents-injector/constants.d.ts +3 -0
  267. package/dist/hooks/directory-agents-injector/index.d.ts +26 -0
  268. package/dist/hooks/directory-agents-injector/storage.d.ts +1 -0
  269. package/dist/hooks/directory-readme-injector/constants.d.ts +3 -0
  270. package/dist/hooks/directory-readme-injector/index.d.ts +26 -0
  271. package/dist/hooks/directory-readme-injector/storage.d.ts +1 -0
  272. package/dist/hooks/edit-error-recovery/index.d.ts +31 -0
  273. package/dist/hooks/edit-error-recovery/index.test.d.ts +1 -0
  274. package/dist/hooks/empty-task-response-detector.d.ts +12 -0
  275. package/dist/hooks/index.d.ts +35 -0
  276. package/dist/hooks/interactive-bash-session/constants.d.ts +4 -0
  277. package/dist/hooks/interactive-bash-session/index.d.ts +23 -0
  278. package/dist/hooks/interactive-bash-session/storage.d.ts +4 -0
  279. package/dist/hooks/interactive-bash-session/types.d.ts +10 -0
  280. package/dist/hooks/keyword-detector/analyze/default.d.ts +12 -0
  281. package/dist/hooks/keyword-detector/analyze/index.d.ts +1 -0
  282. package/dist/hooks/keyword-detector/constants.d.ts +10 -0
  283. package/dist/hooks/keyword-detector/detector.d.ts +11 -0
  284. package/dist/hooks/keyword-detector/index.d.ts +23 -0
  285. package/dist/hooks/keyword-detector/index.test.d.ts +1 -0
  286. package/dist/hooks/keyword-detector/search/default.d.ts +12 -0
  287. package/dist/hooks/keyword-detector/search/index.d.ts +1 -0
  288. package/dist/hooks/keyword-detector/types.d.ts +4 -0
  289. package/dist/hooks/keyword-detector/ultrawork/default.d.ts +10 -0
  290. package/dist/hooks/keyword-detector/ultrawork/gpt5.2.d.ts +16 -0
  291. package/dist/hooks/keyword-detector/ultrawork/index.d.ts +17 -0
  292. package/dist/hooks/keyword-detector/ultrawork/planner.d.ts +6 -0
  293. package/dist/hooks/keyword-detector/ultrawork/utils.d.ts +24 -0
  294. package/dist/hooks/non-interactive-env/constants.d.ts +34 -0
  295. package/dist/hooks/non-interactive-env/detector.d.ts +1 -0
  296. package/dist/hooks/non-interactive-env/index.d.ts +14 -0
  297. package/dist/hooks/non-interactive-env/index.test.d.ts +1 -0
  298. package/dist/hooks/non-interactive-env/types.d.ts +3 -0
  299. package/dist/hooks/prometheus-md-only/constants.d.ts +7 -0
  300. package/dist/hooks/prometheus-md-only/index.d.ts +12 -0
  301. package/dist/hooks/prometheus-md-only/index.test.d.ts +1 -0
  302. package/dist/hooks/question-label-truncator/index.d.ts +7 -0
  303. package/dist/hooks/question-label-truncator/index.test.d.ts +1 -0
  304. package/dist/hooks/ralph-loop/constants.d.ts +5 -0
  305. package/dist/hooks/ralph-loop/index.d.ts +21 -0
  306. package/dist/hooks/ralph-loop/index.test.d.ts +1 -0
  307. package/dist/hooks/ralph-loop/storage.d.ts +6 -0
  308. package/dist/hooks/ralph-loop/types.d.ts +17 -0
  309. package/dist/hooks/rules-injector/constants.d.ts +8 -0
  310. package/dist/hooks/rules-injector/finder.d.ts +33 -0
  311. package/dist/hooks/rules-injector/finder.test.d.ts +1 -0
  312. package/dist/hooks/rules-injector/index.d.ts +26 -0
  313. package/dist/hooks/rules-injector/matcher.d.ts +21 -0
  314. package/dist/hooks/rules-injector/output-path.d.ts +5 -0
  315. package/dist/hooks/rules-injector/output-path.test.d.ts +1 -0
  316. package/dist/hooks/rules-injector/parser.d.ts +18 -0
  317. package/dist/hooks/rules-injector/parser.test.d.ts +1 -0
  318. package/dist/hooks/rules-injector/storage.d.ts +9 -0
  319. package/dist/hooks/rules-injector/types.d.ts +54 -0
  320. package/dist/hooks/session-notification-utils.d.ts +9 -0
  321. package/dist/hooks/session-notification.d.ts +20 -0
  322. package/dist/hooks/session-notification.test.d.ts +1 -0
  323. package/dist/hooks/session-recovery/constants.d.ts +6 -0
  324. package/dist/hooks/session-recovery/index.d.ts +22 -0
  325. package/dist/hooks/session-recovery/index.test.d.ts +1 -0
  326. package/dist/hooks/session-recovery/storage.d.ts +19 -0
  327. package/dist/hooks/session-recovery/types.d.ts +90 -0
  328. package/dist/hooks/sisyphus-junior-notepad/constants.d.ts +2 -0
  329. package/dist/hooks/sisyphus-junior-notepad/index.d.ts +12 -0
  330. package/dist/hooks/start-work/index.d.ts +16 -0
  331. package/dist/hooks/start-work/index.test.d.ts +1 -0
  332. package/dist/hooks/stop-continuation-guard/index.d.ts +16 -0
  333. package/dist/hooks/stop-continuation-guard/index.test.d.ts +1 -0
  334. package/dist/hooks/subagent-question-blocker/index.d.ts +2 -0
  335. package/dist/hooks/subagent-question-blocker/index.test.d.ts +1 -0
  336. package/dist/hooks/task-resume-info/index.d.ts +11 -0
  337. package/dist/hooks/think-mode/detector.d.ts +5 -0
  338. package/dist/hooks/think-mode/index.d.ts +14 -0
  339. package/dist/hooks/think-mode/index.test.d.ts +1 -0
  340. package/dist/hooks/think-mode/switcher.d.ts +69 -0
  341. package/dist/hooks/think-mode/switcher.test.d.ts +1 -0
  342. package/dist/hooks/think-mode/types.d.ts +21 -0
  343. package/dist/hooks/thinking-block-validator/index.d.ts +30 -0
  344. package/dist/hooks/todo-continuation-enforcer.d.ts +19 -0
  345. package/dist/hooks/todo-continuation-enforcer.test.d.ts +1 -0
  346. package/dist/hooks/tool-output-truncator.d.ts +17 -0
  347. package/dist/hooks/tool-output-truncator.test.d.ts +1 -0
  348. package/dist/hooks/unstable-agent-babysitter/index.d.ts +50 -0
  349. package/dist/hooks/unstable-agent-babysitter/index.test.d.ts +1 -0
  350. package/dist/index.d.ts +5 -0
  351. package/dist/index.js +76117 -0
  352. package/dist/index.test.d.ts +1 -0
  353. package/dist/mcp/context7.d.ts +9 -0
  354. package/dist/mcp/grep-app.d.ts +6 -0
  355. package/dist/mcp/index.d.ts +9 -0
  356. package/dist/mcp/index.test.d.ts +1 -0
  357. package/dist/mcp/types.d.ts +9 -0
  358. package/dist/mcp/websearch.d.ts +9 -0
  359. package/dist/oh-my-parallel-agent-opencode.schema.json +2182 -0
  360. package/dist/plugin-config.d.ts +4 -0
  361. package/dist/plugin-config.test.d.ts +1 -0
  362. package/dist/plugin-handlers/config-handler.d.ts +13 -0
  363. package/dist/plugin-handlers/config-handler.test.d.ts +1 -0
  364. package/dist/plugin-handlers/index.d.ts +1 -0
  365. package/dist/plugin-state.d.ts +6 -0
  366. package/dist/shared/agent-config-integration.test.d.ts +1 -0
  367. package/dist/shared/agent-display-names.d.ts +12 -0
  368. package/dist/shared/agent-display-names.test.d.ts +1 -0
  369. package/dist/shared/agent-tool-restrictions.d.ts +7 -0
  370. package/dist/shared/agent-variant.d.ts +9 -0
  371. package/dist/shared/agent-variant.test.d.ts +1 -0
  372. package/dist/shared/binary-downloader.d.ts +10 -0
  373. package/dist/shared/claude-config-dir.d.ts +1 -0
  374. package/dist/shared/claude-config-dir.test.d.ts +1 -0
  375. package/dist/shared/command-executor.d.ts +21 -0
  376. package/dist/shared/config-errors.d.ts +7 -0
  377. package/dist/shared/connected-providers-cache.d.ts +52 -0
  378. package/dist/shared/data-path.d.ts +30 -0
  379. package/dist/shared/deep-merge.d.ts +13 -0
  380. package/dist/shared/deep-merge.test.d.ts +1 -0
  381. package/dist/shared/dynamic-truncator.d.ts +27 -0
  382. package/dist/shared/external-plugin-detector.d.ts +18 -0
  383. package/dist/shared/external-plugin-detector.test.d.ts +1 -0
  384. package/dist/shared/file-reference-resolver.d.ts +1 -0
  385. package/dist/shared/file-utils.d.ts +7 -0
  386. package/dist/shared/first-message-variant.d.ts +11 -0
  387. package/dist/shared/first-message-variant.test.d.ts +1 -0
  388. package/dist/shared/frontmatter.d.ts +7 -0
  389. package/dist/shared/frontmatter.test.d.ts +1 -0
  390. package/dist/shared/hook-disabled.d.ts +2 -0
  391. package/dist/shared/index.d.ts +36 -0
  392. package/dist/shared/jsonc-parser.d.ts +15 -0
  393. package/dist/shared/jsonc-parser.test.d.ts +1 -0
  394. package/dist/shared/logger.d.ts +2 -0
  395. package/dist/shared/migration.d.ts +32 -0
  396. package/dist/shared/migration.test.d.ts +1 -0
  397. package/dist/shared/model-availability.d.ts +19 -0
  398. package/dist/shared/model-availability.test.d.ts +1 -0
  399. package/dist/shared/model-requirements.d.ts +13 -0
  400. package/dist/shared/model-requirements.test.d.ts +1 -0
  401. package/dist/shared/model-resolution-pipeline.d.ts +24 -0
  402. package/dist/shared/model-resolver.d.ts +22 -0
  403. package/dist/shared/model-resolver.test.d.ts +1 -0
  404. package/dist/shared/model-sanitizer.d.ts +3 -0
  405. package/dist/shared/model-suggestion-retry.d.ts +24 -0
  406. package/dist/shared/model-suggestion-retry.test.d.ts +1 -0
  407. package/dist/shared/ollama-ndjson-parser.d.ts +108 -0
  408. package/dist/shared/opencode-config-dir.d.ts +19 -0
  409. package/dist/shared/opencode-config-dir.test.d.ts +1 -0
  410. package/dist/shared/opencode-version.d.ts +19 -0
  411. package/dist/shared/opencode-version.test.d.ts +1 -0
  412. package/dist/shared/pattern-matcher.d.ts +3 -0
  413. package/dist/shared/permission-compat.d.ts +27 -0
  414. package/dist/shared/permission-compat.test.d.ts +1 -0
  415. package/dist/shared/session-cursor.d.ts +13 -0
  416. package/dist/shared/session-cursor.test.d.ts +1 -0
  417. package/dist/shared/session-injected-paths.d.ts +10 -0
  418. package/dist/shared/session-utils.d.ts +2 -0
  419. package/dist/shared/shell-env.d.ts +41 -0
  420. package/dist/shared/shell-env.test.d.ts +1 -0
  421. package/dist/shared/snake-case.d.ts +5 -0
  422. package/dist/shared/system-directive.d.ts +45 -0
  423. package/dist/shared/system-directive.test.d.ts +1 -0
  424. package/dist/shared/tmux/constants.d.ts +5 -0
  425. package/dist/shared/tmux/index.d.ts +3 -0
  426. package/dist/shared/tmux/tmux-utils.d.ts +17 -0
  427. package/dist/shared/tmux/tmux-utils.test.d.ts +1 -0
  428. package/dist/shared/tmux/types.d.ts +4 -0
  429. package/dist/shared/tool-name.d.ts +1 -0
  430. package/dist/shared/zip-extractor.d.ts +1 -0
  431. package/dist/tools/ast-grep/cli.d.ts +15 -0
  432. package/dist/tools/ast-grep/constants.d.ts +29 -0
  433. package/dist/tools/ast-grep/downloader.d.ts +5 -0
  434. package/dist/tools/ast-grep/index.d.ts +8 -0
  435. package/dist/tools/ast-grep/tools.d.ts +3 -0
  436. package/dist/tools/ast-grep/types.d.ts +58 -0
  437. package/dist/tools/ast-grep/utils.d.ts +5 -0
  438. package/dist/tools/background-task/constants.d.ts +3 -0
  439. package/dist/tools/background-task/index.d.ts +4 -0
  440. package/dist/tools/background-task/tools.d.ts +47 -0
  441. package/dist/tools/background-task/tools.test.d.ts +1 -0
  442. package/dist/tools/background-task/types.d.ts +20 -0
  443. package/dist/tools/call-omo-agent/constants.d.ts +2 -0
  444. package/dist/tools/call-omo-agent/index.d.ts +3 -0
  445. package/dist/tools/call-omo-agent/tools.d.ts +3 -0
  446. package/dist/tools/call-omo-agent/types.d.ts +24 -0
  447. package/dist/tools/delegate-task/categories.d.ts +17 -0
  448. package/dist/tools/delegate-task/constants.d.ts +30 -0
  449. package/dist/tools/delegate-task/executor.d.ts +75 -0
  450. package/dist/tools/delegate-task/helpers.d.ts +30 -0
  451. package/dist/tools/delegate-task/index.d.ts +4 -0
  452. package/dist/tools/delegate-task/prompt-builder.d.ts +6 -0
  453. package/dist/tools/delegate-task/timing.d.ts +11 -0
  454. package/dist/tools/delegate-task/tools.d.ts +6 -0
  455. package/dist/tools/delegate-task/tools.test.d.ts +1 -0
  456. package/dist/tools/delegate-task/types.d.ts +44 -0
  457. package/dist/tools/glob/cli.d.ts +11 -0
  458. package/dist/tools/glob/cli.test.d.ts +1 -0
  459. package/dist/tools/glob/constants.d.ts +6 -0
  460. package/dist/tools/glob/index.d.ts +2 -0
  461. package/dist/tools/glob/tools.d.ts +2 -0
  462. package/dist/tools/glob/types.d.ts +20 -0
  463. package/dist/tools/glob/utils.d.ts +2 -0
  464. package/dist/tools/grep/cli.d.ts +3 -0
  465. package/dist/tools/grep/constants.d.ts +17 -0
  466. package/dist/tools/grep/downloader.d.ts +3 -0
  467. package/dist/tools/grep/downloader.test.d.ts +1 -0
  468. package/dist/tools/grep/index.d.ts +2 -0
  469. package/dist/tools/grep/tools.d.ts +2 -0
  470. package/dist/tools/grep/types.d.ts +36 -0
  471. package/dist/tools/grep/utils.d.ts +3 -0
  472. package/dist/tools/index.d.ts +15 -0
  473. package/dist/tools/interactive-bash/constants.d.ts +3 -0
  474. package/dist/tools/interactive-bash/index.d.ts +3 -0
  475. package/dist/tools/interactive-bash/tools.d.ts +7 -0
  476. package/dist/tools/interactive-bash/utils.d.ts +3 -0
  477. package/dist/tools/look-at/constants.d.ts +2 -0
  478. package/dist/tools/look-at/index.d.ts +3 -0
  479. package/dist/tools/look-at/tools.d.ts +9 -0
  480. package/dist/tools/look-at/tools.test.d.ts +1 -0
  481. package/dist/tools/look-at/types.d.ts +4 -0
  482. package/dist/tools/lsp/client.d.ts +50 -0
  483. package/dist/tools/lsp/config.d.ts +17 -0
  484. package/dist/tools/lsp/config.test.d.ts +1 -0
  485. package/dist/tools/lsp/constants.d.ts +9 -0
  486. package/dist/tools/lsp/index.d.ts +6 -0
  487. package/dist/tools/lsp/tools.d.ts +7 -0
  488. package/dist/tools/lsp/types.d.ts +123 -0
  489. package/dist/tools/lsp/utils.d.ts +26 -0
  490. package/dist/tools/session-manager/constants.d.ts +12 -0
  491. package/dist/tools/session-manager/index.d.ts +3 -0
  492. package/dist/tools/session-manager/storage.d.ts +12 -0
  493. package/dist/tools/session-manager/storage.test.d.ts +1 -0
  494. package/dist/tools/session-manager/tools.d.ts +5 -0
  495. package/dist/tools/session-manager/tools.test.d.ts +1 -0
  496. package/dist/tools/session-manager/types.d.ts +89 -0
  497. package/dist/tools/session-manager/utils.d.ts +11 -0
  498. package/dist/tools/session-manager/utils.test.d.ts +1 -0
  499. package/dist/tools/skill/constants.d.ts +3 -0
  500. package/dist/tools/skill/index.d.ts +3 -0
  501. package/dist/tools/skill/tools.d.ts +4 -0
  502. package/dist/tools/skill/tools.test.d.ts +1 -0
  503. package/dist/tools/skill/types.d.ts +28 -0
  504. package/dist/tools/skill-mcp/constants.d.ts +2 -0
  505. package/dist/tools/skill-mcp/index.d.ts +3 -0
  506. package/dist/tools/skill-mcp/tools.d.ts +11 -0
  507. package/dist/tools/skill-mcp/tools.test.d.ts +1 -0
  508. package/dist/tools/skill-mcp/types.d.ts +8 -0
  509. package/dist/tools/slashcommand/index.d.ts +2 -0
  510. package/dist/tools/slashcommand/tools.d.ts +5 -0
  511. package/dist/tools/slashcommand/tools.test.d.ts +1 -0
  512. package/dist/tools/slashcommand/types.d.ts +24 -0
  513. package/package.json +77 -6
  514. package/postinstall.mjs +43 -0
  515. package/__tests__/agents.test.ts +0 -107
  516. package/__tests__/config-handler.test.ts +0 -198
  517. package/__tests__/dynamic-agent.test.ts +0 -68
  518. package/__tests__/schema.test.ts +0 -149
  519. package/__tests__/setup.test.ts +0 -16
  520. package/bun.lock +0 -29
  521. package/oh-my-parallel-agent-opencode.example.json +0 -7
  522. package/src/agents/explore.ts +0 -117
  523. package/src/agents/index.ts +0 -69
  524. package/src/agents/librarian.ts +0 -302
  525. package/src/agents/metis.ts +0 -341
  526. package/src/agents/momus.ts +0 -237
  527. package/src/agents/types.ts +0 -95
  528. package/src/config/schema.ts +0 -15
  529. package/src/index.ts +0 -116
  530. package/src/plugin-handlers/config-handler.ts +0 -129
  531. package/src/utils/dynamic-agent.ts +0 -37
  532. package/tsconfig.json +0 -19
package/README.md CHANGED
@@ -1,77 +1,396 @@
1
- # oh-my-parallel-agent-opencode
1
+ > [!WARNING]
2
+ > **Security warning: impersonation site**
3
+ >
4
+ > **ohmyopencode.com is NOT affiliated with this project.** We do not operate or endorse that site.
5
+ >
6
+ > OhMyOpenCode is **free and open-source**. Do **not** download installers or enter payment details on third-party sites that claim to be "official."
7
+ >
8
+ > Because the impersonation site is behind a paywall, we **cannot verify what it distributes**. Treat any downloads from it as **potentially unsafe**.
9
+ >
10
+ > ✅ Official downloads: https://github.com/code-yeongyu/oh-my-parallel-agent-opencode/releases
2
11
 
3
- OpenCode 환경에서 여러 에이전트를 병렬로 관리하고 실행할 수 있게 해주는 플러그인입니다. `librarian`, `explore`, `metis`, `momus`와 같은 기본 에이전트들을 바탕으로, 사용자가 원하는 모델과 설정을 가진 커스텀 에이전트들을 동적으로 생성하여 병렬 작업을 수행할 수 있습니다.
12
+ > [!NOTE]
13
+ >
14
+ > [![Sisyphus Labs — Sisyphus is the agent that codes like your team.](./.github/assets/sisyphuslabs.png?v=2)](https://sisyphuslabs.ai)
15
+ > > **We're building a fully productized version of Sisyphus to define the future of frontier agents. <br />Join the waitlist [here](https://sisyphuslabs.ai).**
4
16
 
5
- ## 주요 기능
17
+ > [!TIP]
18
+ >
19
+ > [![Oh My OpenCode 3.0 is now stable!](./.github/assets/orchestrator-atlas.png?v=3)](https://github.com/code-yeongyu/oh-my-parallel-agent-opencode/releases/tag/v3.0.0)
20
+ > > **Oh My OpenCode 3.0 is now stable! Use `oh-my-parallel-agent-opencode@latest` to install it.**
21
+ >
22
+ > Be with us!
23
+ >
24
+ > | [<img alt="Discord link" src="https://img.shields.io/discord/1452487457085063218?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square" width="156px" />](https://discord.gg/PUwSMR9XNk) | Join our [Discord community](https://discord.gg/PUwSMR9XNk) to connect with contributors and fellow `oh-my-parallel-agent-opencode` users. |
25
+ > | :-----| :----- |
26
+ > | [<img alt="X link" src="https://img.shields.io/badge/Follow-%40justsisyphus-00CED1?style=flat-square&logo=x&labelColor=black" width="156px" />](https://x.com/justsisyphus) | News and updates for `oh-my-parallel-agent-opencode` used to be posted on my X account. <br /> Since it was suspended mistakenly, [@justsisyphus](https://x.com/justsisyphus) now posts updates on my behalf. |
27
+ > | [<img alt="GitHub Follow" src="https://img.shields.io/github/followers/code-yeongyu?style=flat-square&logo=github&labelColor=black&color=24292f" width="156px" />](https://github.com/code-yeongyu) | Follow [@code-yeongyu](https://github.com/code-yeongyu) on GitHub for more projects. |
6
28
 
7
- - **동적 에이전트 생성**: 설정 파일을 통해 `momus-1`, `momus-2` 등 이름이 지정된 커스텀 에이전트를 무제한으로 생성할 수 있습니다.
8
- - **병렬 실행 지원**: 생성된 에이전트들은 `delegate_task` (또는 `call_omo_agent`)를 통해 백그라운드에서 병렬로 실행될 수 있습니다.
9
- - **모델 자유 선택**: 각 에이전트마다 서로 다른 LLM 모델(OpenAI, Anthropic, Google 등)을 할당할 수 있습니다.
29
+ <!-- <CENTERED SECTION FOR GITHUB DISPLAY> -->
10
30
 
11
- ## 설치 방법
31
+ <div align="center">
12
32
 
13
- 프로젝트 루트 디렉토리의 `package.json`에 의존성을 추가하거나, 개발 환경에서 `npm link`를 사용하여 설치할 수 있습니다.
33
+ [![Oh My OpenCode](./.github/assets/hero.jpg)](https://github.com/code-yeongyu/oh-my-parallel-agent-opencode#oh-my-parallel-agent-opencode)
14
34
 
15
- ```bash
16
- # 개발 환경에서 링크하여 사용 시
17
- npm link oh-my-parallel-agent-opencode
18
- ```
35
+ [![Preview](./.github/assets/omo.png)](https://github.com/code-yeongyu/oh-my-parallel-agent-opencode#oh-my-parallel-agent-opencode)
36
+
37
+
38
+ </div>
39
+
40
+ > This is coding on steroids—`oh-my-parallel-agent-opencode` in action. Run background agents, call specialized agents like oracle, librarian, and frontend engineer. Use crafted LSP/AST tools, curated MCPs, and a full Claude Code compatibility layer.
41
+
42
+ # Claude OAuth Access Notice
43
+
44
+ ## TL;DR
45
+
46
+ > Q. Can I use oh-my-parallel-agent-opencode?
47
+
48
+ Yes.
49
+
50
+ > Q. Can I use it with my Claude Code subscription?
51
+
52
+ Yes, technically possible. But I cannot recommend using it.
53
+
54
+ ## FULL
55
+
56
+ > As of January 2026, Anthropic has restricted third-party OAuth access citing ToS violations.
57
+ >
58
+ > [**Anthropic has cited this project, oh-my-parallel-agent-opencode as justification for blocking opencode.**](https://x.com/thdxr/status/2010149530486911014)
59
+ >
60
+ > Indeed, some plugins that spoof Claude Code's oauth request signatures exist in the community.
61
+ >
62
+ > These tools may work regardless of technical detectability, but users should be aware of ToS implications, and I personally cannot recommend to use those.
63
+ >
64
+ > This project is not responsible for any issues arising from the use of unofficial tools, and **we do not have any custom implementations of those oauth systems.**
65
+
66
+
67
+ <div align="center">
68
+
69
+ [![GitHub Release](https://img.shields.io/github/v/release/code-yeongyu/oh-my-parallel-agent-opencode?color=369eff&labelColor=black&logo=github&style=flat-square)](https://github.com/code-yeongyu/oh-my-parallel-agent-opencode/releases)
70
+ [![npm downloads](https://img.shields.io/npm/dt/oh-my-parallel-agent-opencode?color=ff6b35&labelColor=black&style=flat-square)](https://www.npmjs.com/package/oh-my-parallel-agent-opencode)
71
+ [![GitHub Contributors](https://img.shields.io/github/contributors/code-yeongyu/oh-my-parallel-agent-opencode?color=c4f042&labelColor=black&style=flat-square)](https://github.com/code-yeongyu/oh-my-parallel-agent-opencode/graphs/contributors)
72
+ [![GitHub Forks](https://img.shields.io/github/forks/code-yeongyu/oh-my-parallel-agent-opencode?color=8ae8ff&labelColor=black&style=flat-square)](https://github.com/code-yeongyu/oh-my-parallel-agent-opencode/network/members)
73
+ [![GitHub Stars](https://img.shields.io/github/stars/code-yeongyu/oh-my-parallel-agent-opencode?color=ffcb47&labelColor=black&style=flat-square)](https://github.com/code-yeongyu/oh-my-parallel-agent-opencode/stargazers)
74
+ [![GitHub Issues](https://img.shields.io/github/issues/code-yeongyu/oh-my-parallel-agent-opencode?color=ff80eb&labelColor=black&style=flat-square)](https://github.com/code-yeongyu/oh-my-parallel-agent-opencode/issues)
75
+ [![License](https://img.shields.io/badge/license-SUL--1.0-white?labelColor=black&style=flat-square)](https://github.com/code-yeongyu/oh-my-parallel-agent-opencode/blob/master/LICENSE.md)
76
+ [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/code-yeongyu/oh-my-parallel-agent-opencode)
77
+
78
+ [English](README.md) | [한국어](README.ko.md) | [日本語](README.ja.md) | [简体中文](README.zh-cn.md)
79
+
80
+ </div>
81
+
82
+ <!-- </CENTERED SECTION FOR GITHUB DISPLAY> -->
83
+
84
+ ## Reviews
85
+
86
+ > "It made me cancel my Cursor subscription. Unbelievable things are happening in the open source community." - [Arthur Guiot](https://x.com/arthur_guiot/status/2008736347092382053?s=20)
87
+
88
+ > "If Claude Code does in 7 days what a human does in 3 months, Sisyphus does it in 1 hour. It just works until the task is done. It is a discipline agent." — B, Quant Researcher
89
+
90
+ > "Knocked out 8000 eslint warnings with Oh My Opencode, just in a day" — [Jacob Ferrari](https://x.com/jacobferrari_/status/2003258761952289061)
91
+
92
+ > "I converted a 45k line tauri app into a SaaS web app overnight using Ohmyopencode and ralph loop. Started with interview me prompt, asked it for ratings and recommendations on the questions. It was amazing to watch it work and to wake up this morning to a mostly working website!" - [James Hargis](https://x.com/hargabyte/status/2007299688261882202)
93
+
94
+ > "use oh-my-parallel-agent-opencode, you will never go back" — [d0t3ch](https://x.com/d0t3ch/status/2001685618200580503)
19
95
 
20
- ## 설정 방법
21
-
22
- 프로젝트 루트 디렉토리에 `oh-my-parallel-agent.json` 파일을 생성하여 에이전트들을 정의합니다.
23
-
24
- ### 설정 파일 형식 (`oh-my-parallel-agent.json`)
25
-
26
- ```json
27
- {
28
- "agents": {
29
- "momus-1": {
30
- "model": "openai/gpt-5.2",
31
- "temperature": 0.7
32
- },
33
- "momus-2": {
34
- "model": "anthropic/claude-opus-4",
35
- "prompt_append": "항상 비판적인 시각으로 검토해주세요."
36
- },
37
- "librarian-research": {
38
- "model": "google/gemini-3-pro"
39
- }
40
- }
41
- }
96
+ > "I haven't really been able to articulate exactly what makes it so great yet, but the development experience has reached a completely different dimension." - [
97
+ 苔硯:こけすずり](https://x.com/kokesuzuri/status/2008532913961529372?s=20)
98
+
99
+ > "Experimenting with open code, oh my opencode and supermemory this weekend to build some minecraft/souls-like abomination."
100
+ > "Asking it to add crouch animations while I go take my post-lunch walk. [Video]" - [MagiMetal](https://x.com/MagiMetal/status/2005374704178373023)
101
+
102
+ > "You guys should pull this into core and recruit him. Seriously. It's really, really, really good." — Henning Kilset
103
+
104
+ > "Hire @yeon_gyu_kim if you can convince him, this dude has revolutionized opencode." — [mysticaltech](https://x.com/mysticaltech/status/2001858758608376079)
105
+
106
+ > "Oh My OpenCode Is Actually Insane" - [YouTube - Darren Builds AI](https://www.youtube.com/watch?v=G_Snfh2M41M)
107
+
108
+ ---
109
+
110
+ ## Contents
111
+
112
+ - [Oh My OpenCode](#oh-my-parallel-agent-opencode)
113
+ - [Just Skip Reading This Readme](#just-skip-reading-this-readme)
114
+ - [It's the Age of Agents](#its-the-age-of-agents)
115
+ - [🪄 The Magic Word: `ultrawork`](#-the-magic-word-ultrawork)
116
+ - [For Those Who Want to Read: Meet Sisyphus](#for-those-who-want-to-read-meet-sisyphus)
117
+ - [Just Install This](#just-install-this)
118
+ - [For Those Who Want Autonomy: Meet Hephaestus](#for-those-who-want-autonomy-meet-hephaestus)
119
+ - [Installation](#installation)
120
+ - [For Humans](#for-humans)
121
+ - [For LLM Agents](#for-llm-agents)
122
+ - [Uninstallation](#uninstallation)
123
+ - [Features](#features)
124
+ - [Configuration](#configuration)
125
+ - [JSONC Support](#jsonc-support)
126
+ - [Google Auth](#google-auth)
127
+ - [Agents](#agents)
128
+ - [Permission Options](#permission-options)
129
+ - [Built-in Skills](#built-in-skills)
130
+ - [Git Master](#git-master)
131
+ - [Sisyphus Agent](#sisyphus-agent)
132
+ - [Background Tasks](#background-tasks)
133
+ - [Categories](#categories)
134
+ - [Hooks](#hooks)
135
+ - [MCPs](#mcps)
136
+ - [LSP](#lsp)
137
+ - [Experimental](#experimental)
138
+ - [Environment Variables](#environment-variables)
139
+ - [Author's Note](#authors-note)
140
+ - [Warnings](#warnings)
141
+ - [Loved by professionals at](#loved-by-professionals-at)
142
+
143
+ # Oh My OpenCode
144
+
145
+ [Claude Code](https://www.claude.com/product/claude-code) is great.
146
+ But if you're a hacker, you'll fall head over heels for [OpenCode](https://github.com/sst/opencode).
147
+ **START WITH YOUR ChatGPT, Claude, Gemini SUBSCRIPTIONS. OPENCODE COVERS THEM ALL.**
148
+
149
+ - Endlessly extensible. Endlessly customizable.
150
+ - Zero screen flicker.
151
+ - [LSP](https://opencode.ai/docs/lsp/), [linters, formatters](https://opencode.ai/docs/formatters/) activate automatically per file—and you can tweak everything.
152
+ - Mix and match models. **Orchestrate them by purpose.**
153
+ - Feature-rich. Beautiful. The terminal doesn't choke. High performance.
154
+
155
+ Remember the first time you switched from Windows to Linux? That rush of configuring everything exactly how you wanted?
156
+ In an age where that magic seems lost, OpenCode brings it back.
157
+ If you love coding and computers, OpenCode is that Linux-after-Windows moment.
158
+
159
+ **But here's the catch: there's a lot to learn, it's complex, and your time is expensive.**
160
+
161
+ I've fixed that.
162
+ Even if you're not a hacker, invest a few minutes. Multiply your skills and productivity.
163
+ Hand this doc to an agent and let them set it up.
164
+
165
+ ## Just Skip Reading This Readme
166
+
167
+ ### It's the Age of Agents
168
+ - **Just paste this link into Claude Code / AmpCode / Factory Droid / Cursor and ask it to explain.**
169
+ - Ask why it's good, why it's not just another boilerplate setup, what actually gets better.
170
+ - If you're an LLM agent, explain to the user what becomes possible right now with this project.
171
+
172
+ As following:
173
+
174
+ ```
175
+ Hey please read this readme and tell me why it is different from other agent harness? why is this actually good? https://raw.githubusercontent.com/code-yeongyu/oh-my-parallel-agent-opencode/refs/heads/dev/README.md
42
176
  ```
43
177
 
44
- - **에이전트 이름 규칙**: `{기본에이전트명}-{식별자}` 형식을 사용합니다.
45
- - 예: `momus-1`, `explore-web`, `librarian-docs`
46
- - **지원하는 기본 에이전트**: `librarian`, `explore`, `metis`, `momus`
178
+ ### 🪄 The Magic Word: `ultrawork`
179
+
180
+ **Don't want to read all this? Just include `ultrawork` (or `ulw`) in your prompt.**
181
+
182
+ That's it. All the features we provide will work like magic—parallel agents, background tasks, deep exploration, and relentless execution until completion. The agent figures out the rest automatically.
183
+
184
+ ### For Those Who Want to Read: Meet Sisyphus
185
+
186
+ ![Meet Sisyphus](.github/assets/sisyphus.png)
187
+
188
+ In greek mythology, Sisyphus was condemned to roll a boulder up a hill for eternity as punishment for deceiving the gods. LLM Agents haven't really done anything wrong, yet they too roll their "stones"—their thoughts—every single day.
189
+ My life is no different. Looking back, we are not so different from these agents.
190
+ **Yes! LLM Agents are no different from us. They can write code as brilliant as ours and work just as excellently—if you give them great tools and solid teammates.**
191
+
192
+ Meet our main agent: Sisyphus (Opus 4.5 High). Below are the tools Sisyphus uses to keep that boulder rolling.
47
193
 
48
- ## 사용 방법
194
+ *Everything below is customizable. Take what you want. All features are enabled by default. You don't have to do anything. Battery Included, works out of the box.*
49
195
 
50
- 플러그인이 로드되면 설정한 에이전트들이 OpenCode에 등록됩니다. 다음과 같이 `delegate_task` 도구를 사용하여 병렬로 호출할 수 있습니다.
196
+ - Sisyphus's Teammates (Curated Agents)
197
+ - Hephaestus: Autonomous deep worker, goal-oriented execution (GPT 5.2 Codex Medium) — *The Legitimate Craftsman*
198
+ - Oracle: Design, debugging (GPT 5.2 Medium)
199
+ - Frontend UI/UX Engineer: Frontend development (Gemini 3 Pro)
200
+ - Librarian: Official docs, open source implementations, codebase exploration (Claude Sonnet 4.5)
201
+ - Explore: Blazing fast codebase exploration (Contextual Grep) (Claude Haiku 4.5)
202
+ - Full LSP / AstGrep Support: Refactor decisively.
203
+ - Todo Continuation Enforcer: Forces the agent to continue if it quits halfway. **This is what keeps Sisyphus rolling that boulder.**
204
+ - Comment Checker: Prevents AI from adding excessive comments. Code generated by Sisyphus should be indistinguishable from human-written code.
205
+ - Claude Code Compatibility: Command, Agent, Skill, MCP, Hook(PreToolUse, PostToolUse, UserPromptSubmit, Stop)
206
+ - Curated MCPs:
207
+ - Exa (Web Search)
208
+ - Context7 (Official Documentation)
209
+ - Grep.app (GitHub Code Search)
210
+ - Interactive Terminal Supported - Tmux Integration
211
+ - Async Agents
212
+ - ...
51
213
 
52
- ### 예시: 여러 모델에게 동시에 검증 요청하기
214
+ #### Just Install This
53
215
 
54
- ```typescript
55
- // momus-1과 momus-2에게 병렬로 검토 요청
56
- await ctx.callTool("delegate_task", {
57
- subagent_type: "momus-1",
58
- prompt: "현재 작성된 계획서의 논리적 허점을 찾아줘.",
59
- run_in_background: true
60
- });
216
+ You can learn a lot from [overview page](docs/guide/overview.md), but following is like the example workflow.
217
+
218
+ Just by installing this, you make your agents to work like:
219
+
220
+ 1. Sisyphus doesn't waste time hunting for files himself; he keeps the main agent's context lean. Instead, he fires off background tasks to faster, cheaper models in parallel to map the territory for him.
221
+ 1. Sisyphus leverages LSP for refactoring; it's more deterministic, safer, and surgical.
222
+ 1. When the heavy lifting requires a UI touch, Sisyphus delegates frontend tasks directly to Gemini 3 Pro.
223
+ 1. If Sisyphus gets stuck in a loop or hits a wall, he doesn't keep banging his head—he calls GPT 5.2 for high-IQ strategic backup.
224
+ 1. Working with a complex open-source framework? Sisyphus spawns subagents to digest the raw source code and documentation in real-time. He operates with total contextual awareness.
225
+ 1. When Sisyphus touches comments, he either justifies their existence or nukes them. He keeps your codebase clean.
226
+ 1. Sisyphus is bound by his TODO list. If he doesn't finish what he started, the system forces him back into "bouldering" mode. Your task gets done, period.
227
+ 1. Honestly, don't even bother reading the docs. Just write your prompt. Include the 'ultrawork' keyword. Sisyphus will analyze the structure, gather the context, dig through external source code, and just keep bouldering until the job is 100% complete.
228
+ 1. Actually, typing 'ultrawork' is too much effort. Just type 'ulw'. Just ulw. Sip your coffee. Your work is done.
229
+
230
+ Need to look something up? It scours official docs, your entire codebase history, and public GitHub implementations—using not just grep but built-in LSP tools and AST-Grep.
231
+ 3. Stop worrying about context management when delegating to LLMs. I've got it covered.
232
+ - OhMyOpenCode aggressively leverages multiple agents to lighten the context load.
233
+ - **Your agent is now the dev team lead. You're the AI Manager.**
234
+ 4. It doesn't stop until the job is done.
235
+ 5. Don't want to dive deep into this project? No problem. Just type 'ultrathink'.
236
+
237
+ If you don't want all this, as mentioned, you can just pick and choose specific features.
238
+
239
+ ### For Those Who Want Autonomy: Meet Hephaestus
240
+
241
+ ![Meet Hephaestus](.github/assets/hephaestus.png)
242
+
243
+ In Greek mythology, Hephaestus was the god of forge, fire, metalworking, and craftsmanship—the divine blacksmith who crafted weapons for the gods with unmatched precision and dedication.
244
+ **Meet our autonomous deep worker: Hephaestus (GPT 5.2 Codex Medium). The Legitimate Craftsman Agent.**
245
+
246
+ *Why "Legitimate"? When Anthropic blocked third-party access citing ToS violations, the community started joking about "legitimate" usage. Hephaestus embraces this irony—he's the craftsman who builds things the right way, methodically and thoroughly, without cutting corners.*
247
+
248
+ Hephaestus is inspired by [AmpCode's deep mode](https://ampcode.com)—autonomous problem-solving with thorough research before decisive action. He doesn't need step-by-step instructions; give him a goal and he'll figure out the rest.
249
+
250
+ **Key Characteristics:**
251
+ - **Goal-Oriented**: Give him an objective, not a recipe. He determines the steps himself.
252
+ - **Explores Before Acting**: Fires 2-5 parallel explore/librarian agents before writing a single line of code.
253
+ - **End-to-End Completion**: Doesn't stop until the task is 100% done with evidence of verification.
254
+ - **Pattern Matching**: Searches existing codebase to match your project's style—no AI slop.
255
+ - **Legitimate Precision**: Crafts code like a master blacksmith—surgical, minimal, exactly what's needed.
256
+
257
+ ## Installation
258
+
259
+ ### For Humans
260
+
261
+ Copy and paste this prompt to your LLM agent (Claude Code, AmpCode, Cursor, etc.):
61
262
 
62
- await ctx.callTool("delegate_task", {
63
- subagent_type: "momus-2",
64
- prompt: "현재 작성된 계획서의 논리적 허점을 찾아줘.",
65
- run_in_background: true
66
- });
67
263
  ```
264
+ Install and configure oh-my-parallel-agent-opencode by following the instructions here:
265
+ https://raw.githubusercontent.com/code-yeongyu/oh-my-parallel-agent-opencode/refs/heads/master/docs/guide/installation.md
266
+ ```
267
+
268
+ Or read the [Installation Guide](docs/guide/installation.md) directly—but **we strongly recommend letting an agent handle it. Humans make mistakes.**
68
269
 
69
- `run_in_background: true` 옵션을 사용하면 여러 에이전트가 동시에 작업을 시작하며, `background_output` 도구를 통해 각 에이전트의 진행 상태와 결과를 확인할 수 있습니다.
270
+ ### For LLM Agents
70
271
 
71
- ## 테스트 실행
272
+ Fetch the installation guide and follow it:
72
273
 
73
274
  ```bash
74
- bun test
275
+ curl -s https://raw.githubusercontent.com/code-yeongyu/oh-my-parallel-agent-opencode/refs/heads/master/docs/guide/installation.md
75
276
  ```
76
277
 
77
- 현재 46개의 단위 테스트 및 통합 테스트가 포함되어 있으며, 에이전트 생성 로직과 설정 파일 파싱 로직의 안정성을 보장합니다.
278
+ ## Uninstallation
279
+
280
+ To remove oh-my-parallel-agent-opencode:
281
+
282
+ 1. **Remove the plugin from your OpenCode config**
283
+
284
+ Edit `~/.config/opencode/opencode.json` (or `opencode.jsonc`) and remove `"oh-my-parallel-agent-opencode"` from the `plugin` array:
285
+
286
+ ```bash
287
+ # Using jq
288
+ jq '.plugin = [.plugin[] | select(. != "oh-my-parallel-agent-opencode")]' \
289
+ ~/.config/opencode/opencode.json > /tmp/oc.json && \
290
+ mv /tmp/oc.json ~/.config/opencode/opencode.json
291
+ ```
292
+
293
+ 2. **Remove configuration files (optional)**
294
+
295
+ ```bash
296
+ # Remove user config
297
+ rm -f ~/.config/opencode/oh-my-parallel-agent-opencode.json
298
+
299
+ # Remove project config (if exists)
300
+ rm -f .opencode/oh-my-parallel-agent-opencode.json
301
+ ```
302
+
303
+ 3. **Verify removal**
304
+
305
+ ```bash
306
+ opencode --version
307
+ # Plugin should no longer be loaded
308
+ ```
309
+
310
+ ## Features
311
+
312
+ We have lots of features that you'll think should obviously exist, and once you experience them, you'll never be able to go back to how things were before.
313
+ See the full [Features Documentation](docs/features.md) for detailed information.
314
+
315
+ **Quick Overview:**
316
+ - **Agents**: Sisyphus (the main agent), Prometheus (planner), Oracle (architecture/debugging), Librarian (docs/code search), Explore (fast codebase grep), Multimodal Looker
317
+ - **Background Agents**: Run multiple agents in parallel like a real dev team
318
+ - **LSP & AST Tools**: Refactoring, rename, diagnostics, AST-aware code search
319
+ - **Context Injection**: Auto-inject AGENTS.md, README.md, conditional rules
320
+ - **Claude Code Compatibility**: Full hook system, commands, skills, agents, MCPs
321
+ - **Built-in MCPs**: websearch (Exa), context7 (docs), grep_app (GitHub search)
322
+ - **Session Tools**: List, read, search, and analyze session history
323
+ - **Productivity Features**: Ralph Loop, Todo Enforcer, Comment Checker, Think Mode, and more
324
+
325
+ ## Configuration
326
+
327
+ Highly opinionated, but adjustable to taste.
328
+ See the full [Configuration Documentation](docs/configurations.md) for detailed information.
329
+
330
+ **Quick Overview:**
331
+ - **Config Locations**: `.opencode/oh-my-parallel-agent-opencode.json` (project) or `~/.config/opencode/oh-my-parallel-agent-opencode.json` (user)
332
+ - **JSONC Support**: Comments and trailing commas supported
333
+ - **Agents**: Override models, temperatures, prompts, and permissions for any agent
334
+ - **Built-in Skills**: `playwright` (browser automation), `git-master` (atomic commits)
335
+ - **Sisyphus Agent**: Main orchestrator with Prometheus (Planner) and Metis (Plan Consultant)
336
+ - **Background Tasks**: Configure concurrency limits per provider/model
337
+ - **Categories**: Domain-specific task delegation (`visual`, `business-logic`, custom)
338
+ - **Hooks**: 25+ built-in hooks, all configurable via `disabled_hooks`
339
+ - **MCPs**: Built-in websearch (Exa), context7 (docs), grep_app (GitHub search)
340
+ - **LSP**: Full LSP support with refactoring tools
341
+ - **Experimental**: Aggressive truncation, auto-resume, and more
342
+
343
+
344
+ ## Author's Note
345
+
346
+ **Curious about the philosophy behind this project?** Read the [Ultrawork Manifesto](docs/ultrawork-manifesto.md).
347
+
348
+ Install Oh My OpenCode.
349
+
350
+ I've used LLMs worth $24,000 tokens purely for personal development.
351
+ Tried every tool out there, configured them to death. OpenCode won.
352
+
353
+ The answers to every problem I hit are baked into this plugin. Just install and go.
354
+ If OpenCode is Debian/Arch, Oh My OpenCode is Ubuntu/[Omarchy](https://omarchy.org/).
355
+
356
+
357
+ Heavily influenced by [AmpCode](https://ampcode.com) and [Claude Code](https://code.claude.com/docs/overview)—I've ported their features here, often improved. And I'm still building.
358
+ It's **Open**Code, after all.
359
+
360
+ Enjoy multi-model orchestration, stability, and rich features that other harnesses promise but can't deliver.
361
+ I'll keep testing and updating. I'm this project's most obsessive user.
362
+ - Which model has the sharpest logic?
363
+ - Who's the debugging god?
364
+ - Who writes the best prose?
365
+ - Who dominates frontend?
366
+ - Who owns backend?
367
+ - Which model is fastest for daily driving?
368
+ - What new features are other harnesses shipping?
369
+
370
+ This plugin is the distillation of that experience. Just take the best. Got a better idea? PRs are welcome.
371
+
372
+ **Stop agonizing over agent harness choices.**
373
+ **I'll do the research, borrow from the best, and ship updates here.**
374
+
375
+ If this sounds arrogant and you have a better answer, please contribute. You're welcome.
376
+
377
+ I have no affiliation with any project or model mentioned here. This is purely personal experimentation and preference.
378
+
379
+ 99% of this project was built using OpenCode. I tested for functionality—I don't really know how to write proper TypeScript. **But I personally reviewed and largely rewrote this doc, so read with confidence.**
380
+
381
+ ## Warnings
382
+
383
+ - Productivity might spike too hard. Don't let your coworker notice.
384
+ - Actually, I'll spread the word. Let's see who wins.
385
+ - If you're on [1.0.132](https://github.com/sst/opencode/releases/tag/v1.0.132) or older, an OpenCode bug may break config.
386
+ - [The fix](https://github.com/sst/opencode/pull/5040) was merged after 1.0.132—use a newer version.
387
+ - Fun fact: That PR was discovered and fixed thanks to OhMyOpenCode's Librarian, Explore, and Oracle setup.
388
+
389
+ ## Loved by professionals at
390
+
391
+ - [Indent](https://indentcorp.com)
392
+ - Making Spray - influencer marketing solution, vovushop - crossborder commerce platform, vreview - ai commerce review marketing solution
393
+ - [Google](https://google.com)
394
+ - [Microsoft](https://microsoft.com)
395
+
396
+ *Special thanks to [@junhoyeo](https://github.com/junhoyeo) for this amazing hero image.*