oh-my-claude-sisyphus 2.6.1 → 3.0.1

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 (548) hide show
  1. package/README.md +61 -784
  2. package/agents/analyst.md +85 -0
  3. package/agents/architect-low.md +88 -0
  4. package/agents/architect-medium.md +108 -0
  5. package/agents/architect.md +77 -0
  6. package/agents/critic.md +97 -0
  7. package/agents/designer-high.md +113 -0
  8. package/agents/designer-low.md +89 -0
  9. package/agents/designer.md +80 -0
  10. package/agents/executor-high.md +116 -0
  11. package/agents/executor-low.md +94 -0
  12. package/agents/executor.md +62 -0
  13. package/agents/explore-medium.md +113 -0
  14. package/agents/explore.md +86 -0
  15. package/agents/planner.md +164 -0
  16. package/agents/qa-tester.md +109 -0
  17. package/agents/researcher-low.md +84 -0
  18. package/agents/researcher.md +70 -0
  19. package/agents/vision.md +39 -0
  20. package/agents/writer.md +152 -0
  21. package/commands/.gitkeep +0 -0
  22. package/dist/__tests__/hooks.test.js +22 -22
  23. package/dist/__tests__/hooks.test.js.map +1 -1
  24. package/dist/__tests__/hud-agents.test.d.ts +7 -0
  25. package/dist/__tests__/hud-agents.test.d.ts.map +1 -0
  26. package/dist/__tests__/hud-agents.test.js +363 -0
  27. package/dist/__tests__/hud-agents.test.js.map +1 -0
  28. package/dist/__tests__/installer.test.js +184 -116
  29. package/dist/__tests__/installer.test.js.map +1 -1
  30. package/dist/__tests__/learned-skills/config.test.d.ts +2 -0
  31. package/dist/__tests__/learned-skills/config.test.d.ts.map +1 -0
  32. package/dist/__tests__/learned-skills/config.test.js +37 -0
  33. package/dist/__tests__/learned-skills/config.test.js.map +1 -0
  34. package/dist/__tests__/learned-skills/detector.test.d.ts +2 -0
  35. package/dist/__tests__/learned-skills/detector.test.d.ts.map +1 -0
  36. package/dist/__tests__/learned-skills/detector.test.js +99 -0
  37. package/dist/__tests__/learned-skills/detector.test.js.map +1 -0
  38. package/dist/__tests__/learned-skills/finder.test.d.ts +2 -0
  39. package/dist/__tests__/learned-skills/finder.test.d.ts.map +1 -0
  40. package/dist/__tests__/learned-skills/finder.test.js +59 -0
  41. package/dist/__tests__/learned-skills/finder.test.js.map +1 -0
  42. package/dist/__tests__/learned-skills/loader.test.d.ts +2 -0
  43. package/dist/__tests__/learned-skills/loader.test.d.ts.map +1 -0
  44. package/dist/__tests__/learned-skills/loader.test.js +69 -0
  45. package/dist/__tests__/learned-skills/loader.test.js.map +1 -0
  46. package/dist/__tests__/learned-skills/parser.test.d.ts +2 -0
  47. package/dist/__tests__/learned-skills/parser.test.d.ts.map +1 -0
  48. package/dist/__tests__/learned-skills/parser.test.js +81 -0
  49. package/dist/__tests__/learned-skills/parser.test.js.map +1 -0
  50. package/dist/__tests__/learned-skills/validator.test.d.ts +2 -0
  51. package/dist/__tests__/learned-skills/validator.test.d.ts.map +1 -0
  52. package/dist/__tests__/learned-skills/validator.test.js +85 -0
  53. package/dist/__tests__/learned-skills/validator.test.js.map +1 -0
  54. package/dist/__tests__/mnemosyne/config.test.d.ts +2 -0
  55. package/dist/__tests__/mnemosyne/config.test.d.ts.map +1 -0
  56. package/dist/__tests__/mnemosyne/config.test.js +37 -0
  57. package/dist/__tests__/mnemosyne/config.test.js.map +1 -0
  58. package/dist/__tests__/mnemosyne/detector.test.d.ts +2 -0
  59. package/dist/__tests__/mnemosyne/detector.test.d.ts.map +1 -0
  60. package/dist/__tests__/mnemosyne/detector.test.js +99 -0
  61. package/dist/__tests__/mnemosyne/detector.test.js.map +1 -0
  62. package/dist/__tests__/mnemosyne/finder.test.d.ts +2 -0
  63. package/dist/__tests__/mnemosyne/finder.test.d.ts.map +1 -0
  64. package/dist/__tests__/mnemosyne/finder.test.js +61 -0
  65. package/dist/__tests__/mnemosyne/finder.test.js.map +1 -0
  66. package/dist/__tests__/mnemosyne/loader.test.d.ts +2 -0
  67. package/dist/__tests__/mnemosyne/loader.test.d.ts.map +1 -0
  68. package/dist/__tests__/mnemosyne/loader.test.js +73 -0
  69. package/dist/__tests__/mnemosyne/loader.test.js.map +1 -0
  70. package/dist/__tests__/mnemosyne/parser.test.d.ts +2 -0
  71. package/dist/__tests__/mnemosyne/parser.test.d.ts.map +1 -0
  72. package/dist/__tests__/mnemosyne/parser.test.js +81 -0
  73. package/dist/__tests__/mnemosyne/parser.test.js.map +1 -0
  74. package/dist/__tests__/mnemosyne/validator.test.d.ts +2 -0
  75. package/dist/__tests__/mnemosyne/validator.test.d.ts.map +1 -0
  76. package/dist/__tests__/mnemosyne/validator.test.js +85 -0
  77. package/dist/__tests__/mnemosyne/validator.test.js.map +1 -0
  78. package/dist/__tests__/model-routing.test.js +34 -34
  79. package/dist/__tests__/model-routing.test.js.map +1 -1
  80. package/dist/__tests__/notepad.test.js +7 -7
  81. package/dist/__tests__/notepad.test.js.map +1 -1
  82. package/dist/__tests__/ralph-prd.test.js +12 -12
  83. package/dist/__tests__/ralph-prd.test.js.map +1 -1
  84. package/dist/__tests__/ralph-progress.test.js +12 -12
  85. package/dist/__tests__/ralph-progress.test.js.map +1 -1
  86. package/dist/__tests__/skills.test.js +50 -17
  87. package/dist/__tests__/skills.test.js.map +1 -1
  88. package/dist/__tests__/types.test.js +5 -5
  89. package/dist/__tests__/types.test.js.map +1 -1
  90. package/dist/agents/analyst.d.ts +11 -0
  91. package/dist/agents/analyst.d.ts.map +1 -0
  92. package/dist/agents/analyst.js +115 -0
  93. package/dist/agents/analyst.js.map +1 -0
  94. package/dist/agents/architect.d.ts +12 -0
  95. package/dist/agents/architect.d.ts.map +1 -0
  96. package/dist/agents/architect.js +189 -0
  97. package/dist/agents/architect.js.map +1 -0
  98. package/dist/agents/coordinator.d.ts +11 -0
  99. package/dist/agents/coordinator.d.ts.map +1 -0
  100. package/dist/agents/coordinator.js +115 -0
  101. package/dist/agents/coordinator.js.map +1 -0
  102. package/dist/agents/critic.d.ts +11 -0
  103. package/dist/agents/critic.d.ts.map +1 -0
  104. package/dist/agents/critic.js +127 -0
  105. package/dist/agents/critic.js.map +1 -0
  106. package/dist/agents/definitions.d.ts +33 -70
  107. package/dist/agents/definitions.d.ts.map +1 -1
  108. package/dist/agents/definitions.js +140 -1268
  109. package/dist/agents/definitions.js.map +1 -1
  110. package/dist/agents/designer.d.ts +11 -0
  111. package/dist/agents/designer.d.ts.map +1 -0
  112. package/dist/agents/designer.js +115 -0
  113. package/dist/agents/designer.js.map +1 -0
  114. package/dist/agents/executor.d.ts +12 -0
  115. package/dist/agents/executor.d.ts.map +1 -0
  116. package/dist/agents/executor.js +93 -0
  117. package/dist/agents/executor.js.map +1 -0
  118. package/dist/agents/explore.js +4 -4
  119. package/dist/agents/explore.js.map +1 -1
  120. package/dist/agents/index.d.ts +12 -11
  121. package/dist/agents/index.d.ts.map +1 -1
  122. package/dist/agents/index.js +15 -16
  123. package/dist/agents/index.js.map +1 -1
  124. package/dist/agents/planner.d.ts +11 -0
  125. package/dist/agents/planner.d.ts.map +1 -0
  126. package/dist/agents/planner.js +194 -0
  127. package/dist/agents/planner.js.map +1 -0
  128. package/dist/agents/qa-tester.js +16 -16
  129. package/dist/agents/qa-tester.js.map +1 -1
  130. package/dist/agents/researcher.d.ts +12 -0
  131. package/dist/agents/researcher.d.ts.map +1 -0
  132. package/dist/agents/researcher.js +103 -0
  133. package/dist/agents/researcher.js.map +1 -0
  134. package/dist/agents/vision.d.ts +11 -0
  135. package/dist/agents/vision.d.ts.map +1 -0
  136. package/dist/agents/vision.js +70 -0
  137. package/dist/agents/vision.js.map +1 -0
  138. package/dist/agents/writer.d.ts +11 -0
  139. package/dist/agents/writer.d.ts.map +1 -0
  140. package/dist/agents/writer.js +209 -0
  141. package/dist/agents/writer.js.map +1 -0
  142. package/dist/cli/index.js +32 -32
  143. package/dist/cli/index.js.map +1 -1
  144. package/dist/commands/index.d.ts +4 -4
  145. package/dist/commands/index.js +4 -4
  146. package/dist/config/loader.js +25 -25
  147. package/dist/config/loader.js.map +1 -1
  148. package/dist/features/auto-update.d.ts +5 -5
  149. package/dist/features/auto-update.d.ts.map +1 -1
  150. package/dist/features/auto-update.js +17 -17
  151. package/dist/features/auto-update.js.map +1 -1
  152. package/dist/features/background-agent/manager.js +1 -1
  153. package/dist/features/background-agent/manager.js.map +1 -1
  154. package/dist/features/boulder-state/constants.d.ts +5 -5
  155. package/dist/features/boulder-state/constants.d.ts.map +1 -1
  156. package/dist/features/boulder-state/constants.js +3 -3
  157. package/dist/features/boulder-state/constants.js.map +1 -1
  158. package/dist/features/boulder-state/index.d.ts +2 -2
  159. package/dist/features/boulder-state/index.d.ts.map +1 -1
  160. package/dist/features/boulder-state/index.js +2 -2
  161. package/dist/features/boulder-state/index.js.map +1 -1
  162. package/dist/features/boulder-state/storage.d.ts +3 -3
  163. package/dist/features/boulder-state/storage.d.ts.map +1 -1
  164. package/dist/features/boulder-state/storage.js +6 -6
  165. package/dist/features/boulder-state/storage.js.map +1 -1
  166. package/dist/features/builtin-skills/skills.d.ts +15 -1
  167. package/dist/features/builtin-skills/skills.d.ts.map +1 -1
  168. package/dist/features/builtin-skills/skills.js +100 -1110
  169. package/dist/features/builtin-skills/skills.js.map +1 -1
  170. package/dist/features/context-injector/types.d.ts +1 -1
  171. package/dist/features/context-injector/types.d.ts.map +1 -1
  172. package/dist/features/index.d.ts +1 -1
  173. package/dist/features/index.d.ts.map +1 -1
  174. package/dist/features/index.js +2 -2
  175. package/dist/features/index.js.map +1 -1
  176. package/dist/features/magic-keywords.js +14 -14
  177. package/dist/features/magic-keywords.js.map +1 -1
  178. package/dist/features/model-routing/prompts/opus.d.ts +1 -1
  179. package/dist/features/model-routing/prompts/opus.d.ts.map +1 -1
  180. package/dist/features/model-routing/prompts/opus.js +1 -1
  181. package/dist/features/model-routing/router.d.ts +1 -1
  182. package/dist/features/model-routing/router.js +14 -14
  183. package/dist/features/model-routing/router.js.map +1 -1
  184. package/dist/features/model-routing/rules.js +31 -31
  185. package/dist/features/model-routing/rules.js.map +1 -1
  186. package/dist/features/model-routing/types.js +1 -1
  187. package/dist/features/model-routing/types.js.map +1 -1
  188. package/dist/hooks/agent-usage-reminder/constants.d.ts +2 -2
  189. package/dist/hooks/agent-usage-reminder/constants.d.ts.map +1 -1
  190. package/dist/hooks/agent-usage-reminder/constants.js +5 -5
  191. package/dist/hooks/agent-usage-reminder/constants.js.map +1 -1
  192. package/dist/hooks/auto-slash-command/constants.d.ts +1 -1
  193. package/dist/hooks/auto-slash-command/constants.d.ts.map +1 -1
  194. package/dist/hooks/auto-slash-command/constants.js +9 -2
  195. package/dist/hooks/auto-slash-command/constants.js.map +1 -1
  196. package/dist/hooks/bridge.d.ts +2 -2
  197. package/dist/hooks/bridge.d.ts.map +1 -1
  198. package/dist/hooks/bridge.js +50 -18
  199. package/dist/hooks/bridge.js.map +1 -1
  200. package/dist/hooks/directory-readme-injector/constants.d.ts +1 -1
  201. package/dist/hooks/directory-readme-injector/constants.d.ts.map +1 -1
  202. package/dist/hooks/directory-readme-injector/constants.js +2 -2
  203. package/dist/hooks/directory-readme-injector/constants.js.map +1 -1
  204. package/dist/hooks/index.d.ts +3 -2
  205. package/dist/hooks/index.d.ts.map +1 -1
  206. package/dist/hooks/index.js +9 -4
  207. package/dist/hooks/index.js.map +1 -1
  208. package/dist/hooks/learned-skills/config.d.ts +53 -0
  209. package/dist/hooks/learned-skills/config.d.ts.map +1 -0
  210. package/dist/hooks/learned-skills/config.js +103 -0
  211. package/dist/hooks/learned-skills/config.js.map +1 -0
  212. package/dist/hooks/learned-skills/constants.d.ts +24 -0
  213. package/dist/hooks/learned-skills/constants.d.ts.map +1 -0
  214. package/dist/hooks/learned-skills/constants.js +26 -0
  215. package/dist/hooks/learned-skills/constants.js.map +1 -0
  216. package/dist/hooks/learned-skills/detection-hook.d.ts +39 -0
  217. package/dist/hooks/learned-skills/detection-hook.d.ts.map +1 -0
  218. package/dist/hooks/learned-skills/detection-hook.js +83 -0
  219. package/dist/hooks/learned-skills/detection-hook.js.map +1 -0
  220. package/dist/hooks/learned-skills/detector.d.ts +30 -0
  221. package/dist/hooks/learned-skills/detector.d.ts.map +1 -0
  222. package/dist/hooks/learned-skills/detector.js +150 -0
  223. package/dist/hooks/learned-skills/detector.js.map +1 -0
  224. package/dist/hooks/learned-skills/finder.d.ts +21 -0
  225. package/dist/hooks/learned-skills/finder.d.ts.map +1 -0
  226. package/dist/hooks/learned-skills/finder.js +117 -0
  227. package/dist/hooks/learned-skills/finder.js.map +1 -0
  228. package/dist/hooks/learned-skills/index.d.ts +62 -0
  229. package/dist/hooks/learned-skills/index.d.ts.map +1 -0
  230. package/dist/hooks/learned-skills/index.js +137 -0
  231. package/dist/hooks/learned-skills/index.js.map +1 -0
  232. package/dist/hooks/learned-skills/loader.d.ts +20 -0
  233. package/dist/hooks/learned-skills/loader.d.ts.map +1 -0
  234. package/dist/hooks/learned-skills/loader.js +107 -0
  235. package/dist/hooks/learned-skills/loader.js.map +1 -0
  236. package/dist/hooks/learned-skills/parser.d.ts +21 -0
  237. package/dist/hooks/learned-skills/parser.d.ts.map +1 -0
  238. package/dist/hooks/learned-skills/parser.js +190 -0
  239. package/dist/hooks/learned-skills/parser.js.map +1 -0
  240. package/dist/hooks/learned-skills/promotion.d.ts +29 -0
  241. package/dist/hooks/learned-skills/promotion.d.ts.map +1 -0
  242. package/dist/hooks/learned-skills/promotion.js +87 -0
  243. package/dist/hooks/learned-skills/promotion.js.map +1 -0
  244. package/dist/hooks/learned-skills/types.d.ts +109 -0
  245. package/dist/hooks/learned-skills/types.d.ts.map +1 -0
  246. package/dist/hooks/learned-skills/types.js +8 -0
  247. package/dist/hooks/learned-skills/types.js.map +1 -0
  248. package/dist/hooks/learned-skills/validator.d.ts +15 -0
  249. package/dist/hooks/learned-skills/validator.d.ts.map +1 -0
  250. package/dist/hooks/learned-skills/validator.js +87 -0
  251. package/dist/hooks/learned-skills/validator.js.map +1 -0
  252. package/dist/hooks/learned-skills/writer.d.ts +27 -0
  253. package/dist/hooks/learned-skills/writer.d.ts.map +1 -0
  254. package/dist/hooks/learned-skills/writer.js +126 -0
  255. package/dist/hooks/learned-skills/writer.js.map +1 -0
  256. package/dist/hooks/learner/config.d.ts +53 -0
  257. package/dist/hooks/learner/config.d.ts.map +1 -0
  258. package/dist/hooks/learner/config.js +103 -0
  259. package/dist/hooks/learner/config.js.map +1 -0
  260. package/dist/hooks/learner/constants.d.ts +24 -0
  261. package/dist/hooks/learner/constants.d.ts.map +1 -0
  262. package/dist/hooks/learner/constants.js +26 -0
  263. package/dist/hooks/learner/constants.js.map +1 -0
  264. package/dist/hooks/learner/detection-hook.d.ts +39 -0
  265. package/dist/hooks/learner/detection-hook.d.ts.map +1 -0
  266. package/dist/hooks/learner/detection-hook.js +83 -0
  267. package/dist/hooks/learner/detection-hook.js.map +1 -0
  268. package/dist/hooks/learner/detector.d.ts +30 -0
  269. package/dist/hooks/learner/detector.d.ts.map +1 -0
  270. package/dist/hooks/learner/detector.js +150 -0
  271. package/dist/hooks/learner/detector.js.map +1 -0
  272. package/dist/hooks/learner/finder.d.ts +21 -0
  273. package/dist/hooks/learner/finder.d.ts.map +1 -0
  274. package/dist/hooks/learner/finder.js +117 -0
  275. package/dist/hooks/learner/finder.js.map +1 -0
  276. package/dist/hooks/learner/index.d.ts +62 -0
  277. package/dist/hooks/learner/index.d.ts.map +1 -0
  278. package/dist/hooks/learner/index.js +137 -0
  279. package/dist/hooks/learner/index.js.map +1 -0
  280. package/dist/hooks/learner/loader.d.ts +20 -0
  281. package/dist/hooks/learner/loader.d.ts.map +1 -0
  282. package/dist/hooks/learner/loader.js +113 -0
  283. package/dist/hooks/learner/loader.js.map +1 -0
  284. package/dist/hooks/learner/parser.d.ts +21 -0
  285. package/dist/hooks/learner/parser.d.ts.map +1 -0
  286. package/dist/hooks/learner/parser.js +190 -0
  287. package/dist/hooks/learner/parser.js.map +1 -0
  288. package/dist/hooks/learner/promotion.d.ts +29 -0
  289. package/dist/hooks/learner/promotion.d.ts.map +1 -0
  290. package/dist/hooks/learner/promotion.js +87 -0
  291. package/dist/hooks/learner/promotion.js.map +1 -0
  292. package/dist/hooks/learner/types.d.ts +109 -0
  293. package/dist/hooks/learner/types.d.ts.map +1 -0
  294. package/dist/hooks/learner/types.js +8 -0
  295. package/dist/hooks/learner/types.js.map +1 -0
  296. package/dist/hooks/learner/validator.d.ts +15 -0
  297. package/dist/hooks/learner/validator.d.ts.map +1 -0
  298. package/dist/hooks/learner/validator.js +87 -0
  299. package/dist/hooks/learner/validator.js.map +1 -0
  300. package/dist/hooks/learner/writer.d.ts +27 -0
  301. package/dist/hooks/learner/writer.d.ts.map +1 -0
  302. package/dist/hooks/learner/writer.js +126 -0
  303. package/dist/hooks/learner/writer.js.map +1 -0
  304. package/dist/hooks/mnemosyne/config.d.ts +53 -0
  305. package/dist/hooks/mnemosyne/config.d.ts.map +1 -0
  306. package/dist/hooks/mnemosyne/config.js +103 -0
  307. package/dist/hooks/mnemosyne/config.js.map +1 -0
  308. package/dist/hooks/mnemosyne/constants.d.ts +24 -0
  309. package/dist/hooks/mnemosyne/constants.d.ts.map +1 -0
  310. package/dist/hooks/mnemosyne/constants.js +26 -0
  311. package/dist/hooks/mnemosyne/constants.js.map +1 -0
  312. package/dist/hooks/mnemosyne/detection-hook.d.ts +39 -0
  313. package/dist/hooks/mnemosyne/detection-hook.d.ts.map +1 -0
  314. package/dist/hooks/mnemosyne/detection-hook.js +83 -0
  315. package/dist/hooks/mnemosyne/detection-hook.js.map +1 -0
  316. package/dist/hooks/mnemosyne/detector.d.ts +30 -0
  317. package/dist/hooks/mnemosyne/detector.d.ts.map +1 -0
  318. package/dist/hooks/mnemosyne/detector.js +150 -0
  319. package/dist/hooks/mnemosyne/detector.js.map +1 -0
  320. package/dist/hooks/mnemosyne/finder.d.ts +21 -0
  321. package/dist/hooks/mnemosyne/finder.d.ts.map +1 -0
  322. package/dist/hooks/mnemosyne/finder.js +117 -0
  323. package/dist/hooks/mnemosyne/finder.js.map +1 -0
  324. package/dist/hooks/mnemosyne/index.d.ts +62 -0
  325. package/dist/hooks/mnemosyne/index.d.ts.map +1 -0
  326. package/dist/hooks/mnemosyne/index.js +137 -0
  327. package/dist/hooks/mnemosyne/index.js.map +1 -0
  328. package/dist/hooks/mnemosyne/loader.d.ts +20 -0
  329. package/dist/hooks/mnemosyne/loader.d.ts.map +1 -0
  330. package/dist/hooks/mnemosyne/loader.js +113 -0
  331. package/dist/hooks/mnemosyne/loader.js.map +1 -0
  332. package/dist/hooks/mnemosyne/parser.d.ts +21 -0
  333. package/dist/hooks/mnemosyne/parser.d.ts.map +1 -0
  334. package/dist/hooks/mnemosyne/parser.js +190 -0
  335. package/dist/hooks/mnemosyne/parser.js.map +1 -0
  336. package/dist/hooks/mnemosyne/promotion.d.ts +29 -0
  337. package/dist/hooks/mnemosyne/promotion.d.ts.map +1 -0
  338. package/dist/hooks/mnemosyne/promotion.js +87 -0
  339. package/dist/hooks/mnemosyne/promotion.js.map +1 -0
  340. package/dist/hooks/mnemosyne/types.d.ts +109 -0
  341. package/dist/hooks/mnemosyne/types.d.ts.map +1 -0
  342. package/dist/hooks/mnemosyne/types.js +8 -0
  343. package/dist/hooks/mnemosyne/types.js.map +1 -0
  344. package/dist/hooks/mnemosyne/validator.d.ts +15 -0
  345. package/dist/hooks/mnemosyne/validator.d.ts.map +1 -0
  346. package/dist/hooks/mnemosyne/validator.js +87 -0
  347. package/dist/hooks/mnemosyne/validator.js.map +1 -0
  348. package/dist/hooks/mnemosyne/writer.d.ts +27 -0
  349. package/dist/hooks/mnemosyne/writer.d.ts.map +1 -0
  350. package/dist/hooks/mnemosyne/writer.js +126 -0
  351. package/dist/hooks/mnemosyne/writer.js.map +1 -0
  352. package/dist/hooks/notepad/index.d.ts +2 -2
  353. package/dist/hooks/notepad/index.js +7 -7
  354. package/dist/hooks/notepad/index.js.map +1 -1
  355. package/dist/hooks/omc-orchestrator/constants.d.ts +23 -0
  356. package/dist/hooks/omc-orchestrator/constants.d.ts.map +1 -0
  357. package/dist/hooks/omc-orchestrator/constants.js +142 -0
  358. package/dist/hooks/omc-orchestrator/constants.js.map +1 -0
  359. package/dist/hooks/omc-orchestrator/index.d.ts +113 -0
  360. package/dist/hooks/omc-orchestrator/index.d.ts.map +1 -0
  361. package/dist/hooks/omc-orchestrator/index.js +309 -0
  362. package/dist/hooks/omc-orchestrator/index.js.map +1 -0
  363. package/dist/hooks/persistent-mode/index.d.ts +4 -4
  364. package/dist/hooks/persistent-mode/index.d.ts.map +1 -1
  365. package/dist/hooks/persistent-mode/index.js +37 -37
  366. package/dist/hooks/persistent-mode/index.js.map +1 -1
  367. package/dist/hooks/ralph-loop/index.d.ts +33 -5
  368. package/dist/hooks/ralph-loop/index.d.ts.map +1 -1
  369. package/dist/hooks/ralph-loop/index.js +91 -17
  370. package/dist/hooks/ralph-loop/index.js.map +1 -1
  371. package/dist/hooks/ralph-prd/index.d.ts +4 -4
  372. package/dist/hooks/ralph-prd/index.d.ts.map +1 -1
  373. package/dist/hooks/ralph-prd/index.js +13 -13
  374. package/dist/hooks/ralph-prd/index.js.map +1 -1
  375. package/dist/hooks/ralph-progress/index.d.ts +5 -5
  376. package/dist/hooks/ralph-progress/index.d.ts.map +1 -1
  377. package/dist/hooks/ralph-progress/index.js +14 -14
  378. package/dist/hooks/ralph-progress/index.js.map +1 -1
  379. package/dist/hooks/ralph-verifier/index.d.ts +23 -23
  380. package/dist/hooks/ralph-verifier/index.d.ts.map +1 -1
  381. package/dist/hooks/ralph-verifier/index.js +41 -41
  382. package/dist/hooks/ralph-verifier/index.js.map +1 -1
  383. package/dist/hooks/rules-injector/constants.d.ts +1 -1
  384. package/dist/hooks/rules-injector/constants.d.ts.map +1 -1
  385. package/dist/hooks/rules-injector/constants.js +2 -2
  386. package/dist/hooks/rules-injector/constants.js.map +1 -1
  387. package/dist/hooks/todo-continuation/index.js +1 -1
  388. package/dist/hooks/todo-continuation/index.js.map +1 -1
  389. package/dist/hooks/ultraqa-loop/index.d.ts +1 -1
  390. package/dist/hooks/ultraqa-loop/index.js +8 -8
  391. package/dist/hooks/ultraqa-loop/index.js.map +1 -1
  392. package/dist/hooks/ultrawork-state/index.js +7 -7
  393. package/dist/hooks/ultrawork-state/index.js.map +1 -1
  394. package/dist/hud/background-tasks.d.ts +26 -0
  395. package/dist/hud/background-tasks.d.ts.map +1 -0
  396. package/dist/hud/background-tasks.js +116 -0
  397. package/dist/hud/background-tasks.js.map +1 -0
  398. package/dist/hud/colors.d.ts +54 -0
  399. package/dist/hud/colors.d.ts.map +1 -0
  400. package/dist/hud/colors.js +156 -0
  401. package/dist/hud/colors.js.map +1 -0
  402. package/dist/hud/elements/agents.d.ts +73 -0
  403. package/dist/hud/elements/agents.d.ts.map +1 -0
  404. package/dist/hud/elements/agents.js +405 -0
  405. package/dist/hud/elements/agents.js.map +1 -0
  406. package/dist/hud/elements/background.d.ts +20 -0
  407. package/dist/hud/elements/background.d.ts.map +1 -0
  408. package/dist/hud/elements/background.js +70 -0
  409. package/dist/hud/elements/background.js.map +1 -0
  410. package/dist/hud/elements/context.d.ts +19 -0
  411. package/dist/hud/elements/context.d.ts.map +1 -0
  412. package/dist/hud/elements/context.js +58 -0
  413. package/dist/hud/elements/context.js.map +1 -0
  414. package/dist/hud/elements/index.d.ts +17 -0
  415. package/dist/hud/elements/index.d.ts.map +1 -0
  416. package/dist/hud/elements/index.js +17 -0
  417. package/dist/hud/elements/index.js.map +1 -0
  418. package/dist/hud/elements/limits.d.ts +19 -0
  419. package/dist/hud/elements/limits.d.ts.map +1 -0
  420. package/dist/hud/elements/limits.js +54 -0
  421. package/dist/hud/elements/limits.js.map +1 -0
  422. package/dist/hud/elements/permission.d.ts +13 -0
  423. package/dist/hud/elements/permission.d.ts.map +1 -0
  424. package/dist/hud/elements/permission.js +20 -0
  425. package/dist/hud/elements/permission.js.map +1 -0
  426. package/dist/hud/elements/prd.d.ts +20 -0
  427. package/dist/hud/elements/prd.d.ts.map +1 -0
  428. package/dist/hud/elements/prd.js +52 -0
  429. package/dist/hud/elements/prd.js.map +1 -0
  430. package/dist/hud/elements/ralph.d.ts +14 -0
  431. package/dist/hud/elements/ralph.d.ts.map +1 -0
  432. package/dist/hud/elements/ralph.js +36 -0
  433. package/dist/hud/elements/ralph.js.map +1 -0
  434. package/dist/hud/elements/session.d.ts +13 -0
  435. package/dist/hud/elements/session.d.ts.map +1 -0
  436. package/dist/hud/elements/session.js +24 -0
  437. package/dist/hud/elements/session.js.map +1 -0
  438. package/dist/hud/elements/skills.d.ts +24 -0
  439. package/dist/hud/elements/skills.d.ts.map +1 -0
  440. package/dist/hud/elements/skills.js +81 -0
  441. package/dist/hud/elements/skills.js.map +1 -0
  442. package/dist/hud/elements/thinking.d.ts +13 -0
  443. package/dist/hud/elements/thinking.d.ts.map +1 -0
  444. package/dist/hud/elements/thinking.js +19 -0
  445. package/dist/hud/elements/thinking.js.map +1 -0
  446. package/dist/hud/elements/todos.d.ts +20 -0
  447. package/dist/hud/elements/todos.d.ts.map +1 -0
  448. package/dist/hud/elements/todos.js +70 -0
  449. package/dist/hud/elements/todos.js.map +1 -0
  450. package/dist/hud/index.d.ts +9 -0
  451. package/dist/hud/index.d.ts.map +1 -0
  452. package/dist/hud/index.js +89 -0
  453. package/dist/hud/index.js.map +1 -0
  454. package/dist/hud/omc-state.d.ts +31 -0
  455. package/dist/hud/omc-state.d.ts.map +1 -0
  456. package/dist/hud/omc-state.js +163 -0
  457. package/dist/hud/omc-state.js.map +1 -0
  458. package/dist/hud/render.d.ts +11 -0
  459. package/dist/hud/render.d.ts.map +1 -0
  460. package/dist/hud/render.js +121 -0
  461. package/dist/hud/render.js.map +1 -0
  462. package/dist/hud/sisyphus-state.d.ts +31 -0
  463. package/dist/hud/sisyphus-state.d.ts.map +1 -0
  464. package/dist/hud/sisyphus-state.js +163 -0
  465. package/dist/hud/sisyphus-state.js.map +1 -0
  466. package/dist/hud/state.d.ts +43 -0
  467. package/dist/hud/state.d.ts.map +1 -0
  468. package/dist/hud/state.js +201 -0
  469. package/dist/hud/state.js.map +1 -0
  470. package/dist/hud/stdin.d.ts +22 -0
  471. package/dist/hud/stdin.d.ts.map +1 -0
  472. package/dist/hud/stdin.js +65 -0
  473. package/dist/hud/stdin.js.map +1 -0
  474. package/dist/hud/transcript.d.ts +32 -0
  475. package/dist/hud/transcript.d.ts.map +1 -0
  476. package/dist/hud/transcript.js +364 -0
  477. package/dist/hud/transcript.js.map +1 -0
  478. package/dist/hud/types.d.ts +178 -0
  479. package/dist/hud/types.d.ts.map +1 -0
  480. package/dist/hud/types.js +119 -0
  481. package/dist/hud/types.js.map +1 -0
  482. package/dist/hud/usage-api.d.ts +24 -0
  483. package/dist/hud/usage-api.d.ts.map +1 -0
  484. package/dist/hud/usage-api.js +234 -0
  485. package/dist/hud/usage-api.js.map +1 -0
  486. package/dist/index.d.ts +7 -7
  487. package/dist/index.d.ts.map +1 -1
  488. package/dist/index.js +10 -12
  489. package/dist/index.js.map +1 -1
  490. package/dist/installer/hooks.d.ts +36 -64
  491. package/dist/installer/hooks.d.ts.map +1 -1
  492. package/dist/installer/hooks.js +91 -1298
  493. package/dist/installer/hooks.js.map +1 -1
  494. package/dist/installer/index.d.ts +23 -22
  495. package/dist/installer/index.d.ts.map +1 -1
  496. package/dist/installer/index.js +307 -2575
  497. package/dist/installer/index.js.map +1 -1
  498. package/dist/shared/types.d.ts +6 -6
  499. package/dist/shared/types.d.ts.map +1 -1
  500. package/docs/ARCHITECTURE.md +386 -0
  501. package/docs/CLAUDE.md +281 -0
  502. package/docs/FULL-README.md +824 -0
  503. package/docs/LOCAL_PLUGIN_INSTALL.md +94 -0
  504. package/docs/MIGRATION-v3.md +186 -0
  505. package/docs/MIGRATION.md +456 -0
  506. package/docs/TIERED_AGENTS_V2.md +322 -0
  507. package/hooks/hooks.json +70 -0
  508. package/hooks/keyword-detector.sh +102 -0
  509. package/hooks/persistent-mode.sh +172 -0
  510. package/hooks/session-start.sh +62 -0
  511. package/hooks/stop-continuation.sh +40 -0
  512. package/package.json +14 -8
  513. package/scripts/install.sh +90 -72
  514. package/scripts/keyword-detector.mjs +1 -1
  515. package/scripts/persistent-mode.mjs +9 -9
  516. package/scripts/persistent-mode.sh +21 -10
  517. package/scripts/plugin-setup.mjs +109 -0
  518. package/scripts/pre-tool-enforcer.mjs +1 -1
  519. package/scripts/pre-tool-enforcer.sh +1 -1
  520. package/scripts/session-start.mjs +38 -3
  521. package/scripts/skill-injector.mjs +231 -0
  522. package/scripts/uninstall.sh +8 -8
  523. package/skills/analyze/SKILL.md +47 -0
  524. package/skills/cancel-ralph/SKILL.md +43 -0
  525. package/skills/cancel-ultraqa/SKILL.md +29 -0
  526. package/skills/cancel-ultrawork/SKILL.md +42 -0
  527. package/skills/deepinit/SKILL.md +321 -0
  528. package/skills/deepsearch/SKILL.md +39 -0
  529. package/skills/doctor/SKILL.md +192 -0
  530. package/skills/frontend-ui-ux/SKILL.md +53 -0
  531. package/skills/git-master/SKILL.md +58 -0
  532. package/skills/help/SKILL.md +66 -0
  533. package/skills/hud/SKILL.md +142 -0
  534. package/skills/learner/SKILL.md +136 -0
  535. package/skills/note/SKILL.md +63 -0
  536. package/skills/omc-default/SKILL.md +78 -0
  537. package/skills/omc-default-global/SKILL.md +75 -0
  538. package/skills/omc-setup/SKILL.md +134 -0
  539. package/skills/orchestrate/SKILL.md +409 -0
  540. package/skills/plan/SKILL.md +37 -0
  541. package/skills/planner/SKILL.md +43 -0
  542. package/skills/ralph/SKILL.md +101 -0
  543. package/skills/ralph-init/SKILL.md +61 -0
  544. package/skills/ralplan/SKILL.md +219 -0
  545. package/skills/release/SKILL.md +84 -0
  546. package/skills/review/SKILL.md +37 -0
  547. package/skills/ultraqa/SKILL.md +123 -0
  548. package/skills/ultrawork/SKILL.md +89 -0
@@ -0,0 +1,824 @@
1
+ # Full Reference Documentation
2
+
3
+ > This is the complete reference documentation. For quick start, see the main [README.md](../README.md).
4
+
5
+ ---
6
+
7
+ <div align="center">
8
+
9
+ ![oh-my-claudecode](https://raw.githubusercontent.com/Yeachan-Heo/oh-my-claudecode-website/main/social-preview.png)
10
+
11
+ # oh-my-claudecode
12
+
13
+ [![Version](https://img.shields.io/badge/version-3.0.0--beta-ff6b6b)](https://github.com/Yeachan-Heo/oh-my-claude-sisyphus)
14
+ [![npm version](https://img.shields.io/npm/v/oh-my-claudecode?color=cb3837)](https://www.npmjs.com/package/oh-my-claudecode)
15
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
16
+ [![Node.js](https://img.shields.io/badge/Node.js-20+-339933?logo=node.js&logoColor=white)](https://nodejs.org/)
17
+ [![TypeScript](https://img.shields.io/badge/TypeScript-5.0+-3178c6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/)
18
+
19
+ **Multi-agent orchestration system for [Claude Code](https://docs.anthropic.com/claude-code)**
20
+
21
+ [Install](#quick-install) • [Usage](#usage) • [Agents](#the-twelve-agents) • [Architecture](docs/ARCHITECTURE.md) • [Website](https://yeachan-heo.github.io/oh-my-claudecode-website)
22
+
23
+ </div>
24
+
25
+ ---
26
+
27
+ ## ⚡ NEW in 3.0: HUD Statusline, Learned Skills & Enhanced Orchestration
28
+
29
+ **Game-changing release:** Claude never forgets critical project knowledge, even through context compaction.
30
+
31
+ ### 🧠 Three-Tier Memory System
32
+
33
+ **The Problem:** Long sessions lose context through compaction. Critical discoveries vanish.
34
+
35
+ **The Solution:** Persistent notepad system that survives compaction:
36
+
37
+ | Tier | Purpose | Retention |
38
+ |------|---------|-----------|
39
+ | **Priority Context** | Critical discoveries (API URLs, key files) | Always loaded on session start |
40
+ | **Working Memory** | Session notes with timestamps | Auto-pruned after 7 days |
41
+ | **MANUAL** | User permanent notes | Never pruned |
42
+
43
+ ```bash
44
+ # Agents can persist discoveries automatically
45
+ <remember>Project uses pnpm not npm</remember>
46
+ <remember priority>API client at src/api/client.ts</remember>
47
+
48
+ # Or save notes manually
49
+ /note Database schema uses PostgreSQL with Prisma ORM
50
+ ```
51
+
52
+ ### 📋 Ralph Loop PRD Support
53
+
54
+ **Structured task tracking** inspired by [Ralph](https://github.com/snarktank/ralph):
55
+
56
+ - **Product Requirements Document (PRD)** format with user stories
57
+ - **Progress tracking** with learnings and patterns
58
+ - **Completion guarantee** - loop continues until ALL stories pass
59
+ - **Three powerful modes:**
60
+ - `/oh-my-claudecode:ralph` - Self-referential loop until completion
61
+ - `/oh-my-claudecode:ultrawork` + `/oh-my-claudecode:ralph` - Maximum intensity + completion guarantee
62
+ - `/oh-my-claudecode:ultraqa` - Autonomous test-verify-fix cycles
63
+
64
+ ```bash
65
+ # Initialize a structured task
66
+ /oh-my-claudecode:ralph-init implement user authentication with OAuth
67
+
68
+ # Maximum intensity with completion guarantee
69
+ /oh-my-claudecode:ultrawork refactor the entire API layer
70
+
71
+ # Autonomous QA cycling
72
+ /oh-my-claudecode:ultraqa all tests must pass with 90%+ coverage
73
+ ```
74
+
75
+ See [CHANGELOG.md](CHANGELOG.md) for full details.
76
+
77
+ ---
78
+
79
+ ## Quick Install
80
+
81
+ Choose **ONE** installation method below. Do not mix methods.
82
+
83
+ ### Option A: Claude Code Plugin (Recommended)
84
+
85
+ ```bash
86
+ # From terminal:
87
+ claude plugin install oh-my-claude-sisyphus
88
+
89
+ # Or from within Claude Code:
90
+ /plugin oh-my-claude-sisyphus
91
+ ```
92
+
93
+ Uses Node.js hooks from the plugin directory. Integrates directly with Claude Code's plugin system.
94
+
95
+ ### Option B: Curl One-Liner (Deprecated)
96
+
97
+ ```bash
98
+ curl -fsSL https://raw.githubusercontent.com/Yeachan-Heo/oh-my-claudecode/main/scripts/install.sh | bash
99
+ ```
100
+
101
+ > **Deprecated**: This method installs bash hooks to `~/.claude/` which can conflict with plugin installations. Use the plugin method above instead.
102
+
103
+ ### Option C: Via npm (Windows & Cross-Platform)
104
+
105
+ ```bash
106
+ npm install -g oh-my-claudecode
107
+ ```
108
+
109
+ > **Windows Users**: This is the recommended installation method. Requires Node.js 20+.
110
+
111
+ > **Important:** Plugin install and curl install are **mutually exclusive**. Using both will cause hook conflicts. Choose one method only.
112
+
113
+ ### Manual Install (macOS/Linux)
114
+
115
+ ```bash
116
+ git clone https://github.com/Yeachan-Heo/oh-my-claude-sisyphus.git
117
+ cd oh-my-claude-sisyphus
118
+ chmod +x scripts/install.sh
119
+ ./scripts/install.sh
120
+ ```
121
+
122
+ ---
123
+
124
+ ## 🎯 Configuration: Choose Global or Project Scope
125
+
126
+ **After ANY installation method**, choose how you want to configure omc:
127
+
128
+ ### Option A: Project-Scoped (Recommended)
129
+
130
+ Configure omc for the current project only:
131
+
132
+ ```
133
+ /omc-default
134
+ ```
135
+
136
+ - Creates `./.claude/CLAUDE.md` in your current project
137
+ - Configuration applies only to this project
138
+ - Won't affect other projects or global settings
139
+ - **Safe**: Preserves your global CLAUDE.md
140
+
141
+ ### Option B: Global Configuration
142
+
143
+ Configure omc for all Claude Code sessions:
144
+
145
+ ```
146
+ /omc-default-global
147
+ ```
148
+
149
+ - Creates `~/.claude/CLAUDE.md` globally
150
+ - Configuration applies to all projects
151
+ - **Warning**: Completely overwrites existing `~/.claude/CLAUDE.md`
152
+
153
+ ### Why This Matters
154
+
155
+ Without running one of these commands, Claude operates with basic capabilities. Running either enables:
156
+
157
+ | Feature | Without | With omc Config |
158
+ |---------|---------|-----------------|
159
+ | Agent delegation | Manual only | Automatic based on task |
160
+ | Keyword detection | Disabled | ultrawork, search, analyze |
161
+ | Todo continuation | Basic | Enforced completion |
162
+ | Model routing | Default | Smart tier selection |
163
+ | Skill composition | None | Auto-combines skills |
164
+
165
+ ### What These Commands Do
166
+
167
+ 1. ✅ Download latest CLAUDE.md with full omc orchestration prompt
168
+ 2. ✅ Configure 19 agents with intelligent model routing
169
+ 3. ✅ Enable magic keyword detection (ultrawork, search, analyze)
170
+ 4. ✅ Activate continuation enforcement (tasks complete before stopping)
171
+ 5. ✅ Set up skill composition (orchestrate + ultrawork + git-master, etc.)
172
+
173
+ ### When to Run Them
174
+
175
+ - **First time**: Run after installation (choose project or global)
176
+ - **After updates**: Re-run to get the latest configuration
177
+ - **Different machines**: Run on each machine where you use Claude Code
178
+ - **New projects**: Run `/oh-my-claudecode:omc-default` in each project that needs omc
179
+
180
+ ### Configuration Precedence
181
+
182
+ If both configurations exist, **project-scoped takes precedence** over global:
183
+
184
+ ```
185
+ ./.claude/CLAUDE.md (project) → Overrides → ~/.claude/CLAUDE.md (global)
186
+ ```
187
+
188
+ > **NOTE**: After updating the plugin (via `npm update`, `git pull`, or Claude Code's plugin update), you MUST re-run `/oh-my-claudecode:omc-default` or `/oh-my-claudecode:omc-default-global` to apply the latest CLAUDE.md changes. The plugin update does NOT automatically update your CLAUDE.md files.
189
+
190
+ ---
191
+
192
+ ## What Gets Installed
193
+
194
+ ### Plugin Structure (Claude Code Plugin Format)
195
+
196
+ The repository is also a Claude Code plugin with this structure:
197
+
198
+ ```
199
+ oh-my-claudecode/
200
+ ├── .claude-plugin/
201
+ │ └── plugin.json # Plugin manifest
202
+ ├── agents/ # 12 specialized subagents
203
+ ├── commands/ # 12 slash commands
204
+ ├── skills/ # 4 skills (ultrawork, deepinit, git-master, frontend-ui-ux)
205
+ ├── hooks/
206
+ │ └── hooks.json # Hook configuration
207
+ └── scripts/ # Hook scripts
208
+ ```
209
+
210
+ ### Traditional Installation Structure
211
+
212
+ The installer adds to your Claude Code config (`~/.claude/`):
213
+
214
+ ```
215
+ ~/.claude/
216
+ ├── agents/
217
+ │ ├── architect.md # Architecture & debugging expert (Opus)
218
+ │ ├── researcher.md # Documentation & research (Sonnet)
219
+ │ ├── explore.md # Fast pattern matching (Haiku)
220
+ │ ├── designer.md # UI/UX specialist (Sonnet)
221
+ │ ├── writer.md # Technical writing (Haiku)
222
+ │ ├── vision.md # Visual analysis (Sonnet)
223
+ │ ├── critic.md # Plan reviewer (Opus)
224
+ │ ├── analyst.md # Pre-planning consultant (Opus)
225
+ │ ├── executor.md # Focused executor (Sonnet)
226
+ │ ├── planner.md # Strategic planner (Opus)
227
+ │ └── qa-tester.md # CLI/service testing (Sonnet)
228
+ ├── commands/
229
+ │ ├── orchestrate.md # /orchestrate command
230
+ │ ├── omc-default.md # /omc-default command (project-scoped)
231
+ │ ├── omc-default-global.md # /omc-default-global command (global)
232
+ │ ├── ultrawork.md # /ultrawork command
233
+ │ ├── deepsearch.md # /deepsearch command
234
+ │ ├── analyze.md # /analyze command
235
+ │ ├── plan.md # /plan command (planner)
236
+ │ ├── review.md # /review command (critic)
237
+ │ ├── planner.md # /planner command
238
+ │ ├── orchestrator.md # /orchestrator command
239
+ │ ├── ralph-loop.md # /ralph-loop command
240
+ │ └── cancel-ralph.md # /cancel-ralph command
241
+ ├── skills/
242
+ │ ├── ultrawork/SKILL.md # Maximum performance mode
243
+ │ ├── deepinit/SKILL.md # Hierarchical AGENTS.md generation
244
+ │ ├── git-master/SKILL.md # Git expert skill
245
+ │ └── frontend-ui-ux/SKILL.md # UI/UX design skill
246
+ └── CLAUDE.md # omc system prompt
247
+ ```
248
+
249
+ ---
250
+
251
+ ## Usage
252
+
253
+ ### Start Claude Code
254
+
255
+ ```bash
256
+ claude
257
+ ```
258
+
259
+ ### Slash Commands
260
+
261
+ | Command | Description |
262
+ |---------|-------------|
263
+ | `/oh-my-claudecode:orchestrate <task>` | Activate multi-agent orchestration mode |
264
+ | `/oh-my-claudecode:omc-default` | Configure omc for current project (./.claude/CLAUDE.md) |
265
+ | `/oh-my-claudecode:omc-default-global` | Configure omc globally (~/.claude/CLAUDE.md) |
266
+ | `/oh-my-claudecode:ultrawork <task>` | Maximum performance mode with parallel agents |
267
+ | `/oh-my-claudecode:ralph-init <task>` | Initialize PRD (Product Requirements Document) for structured task tracking |
268
+ | `/oh-my-claudecode:ralph <task>` | Self-referential loop until task completion |
269
+ | `/oh-my-claudecode:ultraqa <goal>` | Autonomous QA cycling workflow (test → verify → fix → repeat) |
270
+ | `/oh-my-claudecode:cancel-ralph` | Cancel active Ralph Loop |
271
+ | `/oh-my-claudecode:cancel-ultraqa` | Cancel active UltraQA cycling workflow |
272
+ | `/oh-my-claudecode:note <content>` | Save notes to notepad.md for compaction resilience |
273
+ | `/oh-my-claudecode:deepsearch <query>` | Thorough multi-strategy codebase search |
274
+ | `/oh-my-claudecode:deepinit [path]` | Index codebase with hierarchical AGENTS.md files |
275
+ | `/oh-my-claudecode:analyze <target>` | Deep analysis and investigation |
276
+ | `/oh-my-claudecode:plan <description>` | Start planning session with planner |
277
+ | `/oh-my-claudecode:review [plan-path]` | Review a plan with critic |
278
+ | `/oh-my-claudecode:planner <task>` | Strategic planning with interview workflow |
279
+ | `/oh-my-claudecode:doctor` | Diagnose and fix installation issues |
280
+
281
+ ### Examples
282
+
283
+ ```bash
284
+ # In Claude Code:
285
+
286
+ # Activate orchestration for a task
287
+ /oh-my-claudecode:orchestrate refactor the authentication module
288
+
289
+ # Configure for current project
290
+ /oh-my-claudecode:omc-default
291
+
292
+ # Or configure globally for all projects
293
+ /oh-my-claudecode:omc-default-global
294
+
295
+ # Use ultrawork for maximum performance
296
+ /oh-my-claudecode:ultrawork implement user dashboard with charts
297
+
298
+ # Initialize structured task with PRD
299
+ /ralph-init implement user authentication with OAuth
300
+
301
+ # Maximum intensity with completion guarantee
302
+ /ultrawork-ralph migrate database schema to PostgreSQL
303
+
304
+ # Autonomous QA cycling
305
+ /ultraqa all tests must pass with 90%+ coverage
306
+
307
+ # Save important discoveries
308
+ /note Project uses Bun runtime instead of Node.js
309
+
310
+ # Deep search
311
+ /deepsearch API endpoints that handle user data
312
+
313
+ # Deep analysis
314
+ /analyze performance bottleneck in the database layer
315
+ ```
316
+
317
+ ### Magic Keywords
318
+
319
+ Just include these words anywhere in your prompt:
320
+
321
+ | Keyword | Effect |
322
+ |---------|--------|
323
+ | `ultrawork`, `ulw`, `uw` | Activates parallel agent orchestration |
324
+ | `search`, `find`, `locate` | Enhanced search mode |
325
+ | `analyze`, `investigate` | Deep analysis mode |
326
+
327
+ ```bash
328
+ # These work in normal prompts too:
329
+ > ultrawork implement user authentication with OAuth
330
+
331
+ > find all files that import the utils module
332
+
333
+ > analyze why the tests are failing
334
+ ```
335
+
336
+ ---
337
+
338
+ ## Auto-Update
339
+
340
+ Oh-my-claudecode includes a silent auto-update system that checks for updates in the background. Updates are applied automatically without interrupting your workflow.
341
+
342
+ Features:
343
+ - **Rate-limited**: Checks at most once every 24 hours
344
+ - **Concurrent-safe**: Lock file prevents simultaneous update attempts
345
+ - **Cross-platform**: Works on both macOS and Linux
346
+
347
+ To manually update, re-run the plugin install command or use Claude Code's built-in update mechanism.
348
+
349
+ ---
350
+
351
+ ## Hooks System
352
+
353
+ Oh-my-claudecode includes 19 lifecycle hooks that enhance Claude Code's behavior:
354
+
355
+ ### Core Hooks
356
+
357
+ | Hook | Description |
358
+ |------|-------------|
359
+ | **rules-injector** | Dynamic rules injection with YAML frontmatter parsing |
360
+ | **omc-orchestrator** | Enforces orchestrator behavior and delegation |
361
+ | **auto-slash-command** | Automatic slash command detection and execution |
362
+ | **keyword-detector** | Magic keyword detection (ultrawork, search, analyze) |
363
+ | **ralph-loop** | Self-referential development loop management |
364
+ | **todo-continuation** | Ensures todo list completion |
365
+ | **notepad** | Compaction-resilient memory system with three-tier storage |
366
+
367
+ ### Context & Recovery
368
+
369
+ | Hook | Description |
370
+ |------|-------------|
371
+ | **context-window-limit-recovery** | Token limit error handling and recovery |
372
+ | **preemptive-compaction** | Context usage monitoring to prevent limits |
373
+ | **session-recovery** | Session state recovery on crashes |
374
+ | **directory-readme-injector** | README context injection |
375
+
376
+ ### Quality & Validation
377
+
378
+ | Hook | Description |
379
+ |------|-------------|
380
+ | **comment-checker** | BDD detection and directive filtering |
381
+ | **thinking-block-validator** | Extended thinking validation |
382
+ | **empty-message-sanitizer** | Empty message handling |
383
+ | **edit-error-recovery** | Automatic recovery from edit errors |
384
+ | **post-tool-use** | Remember tag auto-capture to notepad system |
385
+
386
+ ### Environment & Notifications
387
+
388
+ | Hook | Description |
389
+ |------|-------------|
390
+ | **non-interactive-env** | CI/non-interactive environment handling |
391
+ | **agent-usage-reminder** | Reminder to use specialized agents |
392
+ | **background-notification** | Background task completion notifications |
393
+
394
+ ---
395
+
396
+ ## Builtin Skills
397
+
398
+ 21 builtin skills provide specialized capabilities:
399
+
400
+ ### Core Skills
401
+ | Skill | Description |
402
+ |-------|-------------|
403
+ | **orchestrate** | Multi-agent orchestration mode |
404
+ | **ultrawork** | Maximum performance with parallel agents |
405
+ | **ralph-loop** | Self-referential development until completion |
406
+ | **ralph-init** | Initialize PRD for structured task tracking |
407
+ | **ultrawork-ralph** | Maximum intensity + completion guarantee |
408
+ | **ultraqa** | Autonomous QA cycling workflow |
409
+ | **planner** | Strategic planning with interview workflow |
410
+ | **plan** | Start planning session |
411
+ | **review** | Review work plans with critic |
412
+
413
+ ### Enhancement Skills
414
+ | Skill | Description |
415
+ |-------|-------------|
416
+ | **deepinit** | Hierarchical AGENTS.md codebase documentation |
417
+ | **deepsearch** | Thorough multi-strategy codebase search |
418
+ | **analyze** | Deep analysis and investigation |
419
+ | **frontend-ui-ux** | Designer-turned-developer UI/UX expertise |
420
+ | **git-master** | Git expert for atomic commits and history |
421
+
422
+ ### Utility Skills
423
+ | Skill | Description |
424
+ |-------|-------------|
425
+ | **note** | Save notes to compaction-resilient notepad |
426
+ | **cancel-ralph** | Cancel Ralph Loop or ultrawork-ralph |
427
+ | **cancel-ultraqa** | Cancel UltraQA cycling workflow |
428
+ | **omc-default** | Configure omc for current project |
429
+ | **omc-default-global** | Configure omc globally |
430
+ | **doctor** | Diagnose and fix installation issues |
431
+ | **release** | Automated release workflow |
432
+
433
+ Skills are automatically activated via slash commands or magic keywords.
434
+
435
+ ---
436
+
437
+ ## Intelligent Skill Activation
438
+
439
+ > **New in v1.11.0**: Enhanced Hook Enforcement System - PreToolUse/PostToolUse hooks and strengthened Stop hook for stronger orchestration behavior beyond CLAUDE.md.
440
+
441
+ ### Skill Layers
442
+
443
+ Skills work in **three composable layers**:
444
+
445
+ | Layer | Skills | Purpose |
446
+ |-------|--------|---------|
447
+ | **Execution** | orchestrate, orchestrator, planner | HOW you work (pick primary) |
448
+ | **Enhancement** | ultrawork, git-master, frontend-ui-ux | ADD capabilities (stack multiple) |
449
+ | **Guarantee** | ralph-loop | ENSURE completion |
450
+
451
+ **Combination Formula:** `[Execution] + [0-N Enhancements] + [Optional Guarantee]`
452
+
453
+ ### Task Type → Skill Selection
454
+
455
+ Claude uses judgment to detect task type and activate appropriate skill combinations:
456
+
457
+ | Task Type | Skill Combination | When |
458
+ |-----------|-------------------|------|
459
+ | Multi-step implementation | `orchestrate` | Building features, refactoring |
460
+ | + parallel subtasks | `orchestrate + ultrawork` | 3+ independent subtasks |
461
+ | + multi-file changes | `orchestrate + git-master` | Changes span 3+ files |
462
+ | + must complete | `orchestrate + ralph-loop` | User emphasizes completion |
463
+ | UI/frontend work | `orchestrate + frontend-ui-ux` | Components, styling |
464
+ | Complex debugging | `architect` → `orchestrate` | Root cause → fix |
465
+ | Strategic planning | `planner` | Need plan first |
466
+ | Maximum performance | `ultrawork` (stacks) | Speed critical |
467
+
468
+ ### Examples
469
+
470
+ ```
471
+ "Add dark mode with proper commits"
472
+ → orchestrate + frontend-ui-ux + git-master
473
+
474
+ "ultrawork: refactor the entire API layer"
475
+ → ultrawork + orchestrate + git-master
476
+
477
+ "Plan auth system, then implement it completely"
478
+ → planner (first) → orchestrate + ralph-loop (after plan)
479
+
480
+ "Fix this bug, don't stop until it's done"
481
+ → orchestrate + ralph-loop
482
+ ```
483
+
484
+ ---
485
+
486
+ ## The Twelve Agents
487
+
488
+ Claude will automatically delegate to these specialized agents:
489
+
490
+ ### Task Execution
491
+
492
+ | | Agent | Model | Best For |
493
+ |---|-------|-------|----------|
494
+ | **architect** | Opus | Complex debugging, architecture decisions, root cause analysis |
495
+ | **researcher** | Sonnet | Finding documentation, understanding code organization |
496
+ | **explore** | Haiku | Quick file searches, pattern matching, reconnaissance |
497
+ | **designer** | Sonnet | UI components, styling, accessibility |
498
+ | **writer** | Haiku | README files, API docs, code comments |
499
+ | **vision** | Sonnet | Analyzing screenshots, diagrams, mockups |
500
+ | **qa-tester** | Sonnet | Interactive CLI/service testing with tmux |
501
+
502
+ ### Planning & Review
503
+
504
+ | | Agent | Model | Best For |
505
+ |---|-------|-------|----------|
506
+ | **planner** | Opus | Strategic planning, comprehensive work plans, interview-style requirement gathering |
507
+ | **critic** | Opus | Critical plan review, feasibility assessment, risk identification |
508
+ | **analyst** | Opus | Pre-planning analysis, hidden requirement detection, ambiguity resolution |
509
+
510
+ ### Orchestration
511
+
512
+ | | Agent | Model | Best For |
513
+ |---|-------|-------|----------|
514
+ | **orchestrator** | Opus | Master todo coordination, complex multi-step task management |
515
+ | **executor** | Sonnet | Focused task execution, plan following, direct implementation |
516
+
517
+ ### Manual Agent Invocation
518
+
519
+ You can explicitly request an agent:
520
+
521
+ ```
522
+ Use the architect agent to debug the memory leak in the worker process
523
+
524
+ Have the researcher find all documentation about the API
525
+
526
+ Ask explore to find all TypeScript files that import React
527
+ ```
528
+
529
+ ---
530
+
531
+ ## Configuration
532
+
533
+ ### Project-Level Config
534
+
535
+ Create `.claude/CLAUDE.md` in your project for project-specific instructions:
536
+
537
+ ```markdown
538
+ # Project Context
539
+
540
+ This is a TypeScript monorepo using:
541
+ - Bun runtime
542
+ - React for frontend
543
+ - PostgreSQL database
544
+
545
+ ## Conventions
546
+ - Use functional components
547
+ - All API routes in /src/api
548
+ - Tests alongside source files
549
+ ```
550
+
551
+ ### Agent Customization
552
+
553
+ Edit agent files in `~/.claude/agents/` to customize behavior:
554
+
555
+ ```yaml
556
+ ---
557
+ name: architect
558
+ description: Your custom description
559
+ tools: Read, Grep, Glob, Bash, Edit
560
+ model: opus # or sonnet, haiku
561
+ ---
562
+
563
+ Your custom system prompt here...
564
+ ```
565
+
566
+ ---
567
+
568
+ ## Uninstall
569
+
570
+ ```bash
571
+ curl -fsSL https://raw.githubusercontent.com/Yeachan-Heo/oh-my-claudecode/main/scripts/uninstall.sh | bash
572
+ ```
573
+
574
+ Or manually:
575
+
576
+ ```bash
577
+ rm ~/.claude/agents/{architect,researcher,explore,designer,writer,vision,critic,analyst,executor,planner,qa-tester}.md
578
+ rm ~/.claude/commands/{orchestrate,omc-default,omc-default-global,ultrawork,deepsearch,analyze,plan,review,planner,orchestrator,ralph-loop,cancel-ralph}.md
579
+ ```
580
+
581
+ ---
582
+
583
+ ## SDK Usage (Advanced)
584
+
585
+ For programmatic use with the Claude Agent SDK:
586
+
587
+ ```bash
588
+ npm install oh-my-claudecode @anthropic-ai/claude-agent-sdk
589
+ ```
590
+
591
+ ```typescript
592
+ import { createOmcSession } from 'oh-my-claudecode';
593
+ import { query } from '@anthropic-ai/claude-agent-sdk';
594
+
595
+ const session = createOmcSession();
596
+
597
+ for await (const message of query({
598
+ prompt: session.processPrompt("ultrawork implement feature X"),
599
+ ...session.queryOptions
600
+ })) {
601
+ console.log(message);
602
+ }
603
+ ```
604
+
605
+ ---
606
+
607
+ ## How It Works
608
+
609
+ ```
610
+ ┌─────────────────────────────────────────────────────────────────┐
611
+ │ ORCHESTRATOR │
612
+ └─────────────────────────────────────────────────────────────────┘
613
+
614
+ ┌───────────────────┼───────────────────┐
615
+ │ │ │
616
+ ▼ ▼ ▼
617
+ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
618
+ │ PLANNING │ │ EXECUTION │ │ SUPPORT │
619
+ ├─────────────────┤ ├─────────────────┤ ├─────────────────┤
620
+ │ planner │ │ architect │ │ researcher │
621
+ │ critic │ │ designer │ │ explore │
622
+ │ analyst │ │ orchestrator │ │ writer │
623
+ │ │ │ executor │ │ vision │
624
+ └─────────────────┘ └─────────────────┘ └─────────────────┘
625
+ ```
626
+
627
+ 1. **Orchestrator**: The main Claude instance coordinates all work
628
+ 2. **Specialized Subagents**: Each agent has focused expertise and tools
629
+ 3. **Parallel Execution**: Independent tasks run concurrently
630
+ 4. **Continuation Enforcement**: Agents persist until ALL tasks complete
631
+ 5. **Context Injection**: Project-specific instructions from CLAUDE.md files
632
+
633
+ ---
634
+
635
+ <details>
636
+ <summary><h2>Differences from oh-my-opencode</h2></summary>
637
+
638
+ This project is inspired by [oh-my-opencode](https://github.com/code-yeongyu/oh-my-opencode), reimagined for Claude Code with skill composition, intelligent model routing, and native integration. Here's what's different:
639
+
640
+ ### Model Mapping
641
+
642
+ The original oh-my-opencode used multiple AI providers. This project uses Claude models exclusively:
643
+
644
+ | Agent | Original Model | Ported Model | Notes |
645
+ |-------|---------------|--------------|-------|
646
+ | **orchestrator** | Claude Opus 4.5 | Claude Opus 4.5 | Same |
647
+ | **architect** | GPT-5.2 | Claude Opus | Was OpenAI's flagship for deep reasoning |
648
+ | **researcher** | Claude Sonnet or Gemini 3 Flash | Claude Sonnet | Multi-provider → Claude only |
649
+ | **explore** | Grok Code or Gemini 3 Flash | Claude Haiku 4.5 | Fast/cheap model for quick searches |
650
+ | **designer** | Gemini 3 Pro | Claude Sonnet | Was Google's model |
651
+ | **writer** | Gemini 3 Flash | Claude Haiku 4.5 | Fast model for docs |
652
+ | **vision** | Various | Claude Sonnet | Visual analysis |
653
+ | **critic** | GPT-5.2 | Claude Opus | Plan reviewer |
654
+ | **analyst** | Claude Opus 4.5 | Claude Opus | Pre-planning consultant |
655
+ | **executor** | Configurable | Claude Sonnet | Focused task executor |
656
+ | **planner** | Planning System | Claude Opus | Strategic planner |
657
+
658
+ **Why Claude-only?** The Claude Agent SDK is designed for Claude models. Using Claude throughout provides:
659
+ - Consistent behavior and capabilities
660
+ - Simpler authentication (single API key)
661
+ - Native integration with Claude Code's tools
662
+
663
+ ### Tools Comparison
664
+
665
+ #### Available Tools (via Claude Code)
666
+
667
+ | Tool | Status | Description |
668
+ |------|--------|-------------|
669
+ | **Read** | ✅ Available | Read files |
670
+ | **Write** | ✅ Available | Create files |
671
+ | **Edit** | ✅ Available | Modify files |
672
+ | **Bash** | ✅ Available | Run shell commands |
673
+ | **Glob** | ✅ Available | Find files by pattern |
674
+ | **Grep** | ✅ Available | Search file contents |
675
+ | **WebSearch** | ✅ Available | Search the web |
676
+ | **WebFetch** | ✅ Available | Fetch web pages |
677
+ | **Task** | ✅ Available | Spawn subagents |
678
+ | **TodoWrite** | ✅ Available | Track tasks |
679
+
680
+ #### LSP Tools (Real Implementation)
681
+
682
+ | Tool | Status | Description |
683
+ |------|--------|-------------|
684
+ | **lsp_hover** | ✅ Implemented | Get type info and documentation at position |
685
+ | **lsp_goto_definition** | ✅ Implemented | Jump to symbol definition |
686
+ | **lsp_find_references** | ✅ Implemented | Find all usages of a symbol |
687
+ | **lsp_document_symbols** | ✅ Implemented | Get file outline (functions, classes, etc.) |
688
+ | **lsp_workspace_symbols** | ✅ Implemented | Search symbols across workspace |
689
+ | **lsp_diagnostics** | ✅ Implemented | Get errors, warnings, hints |
690
+ | **lsp_prepare_rename** | ✅ Implemented | Check if rename is valid |
691
+ | **lsp_rename** | ✅ Implemented | Rename symbol across project |
692
+ | **lsp_code_actions** | ✅ Implemented | Get available refactorings |
693
+ | **lsp_code_action_resolve** | ✅ Implemented | Get details of a code action |
694
+ | **lsp_servers** | ✅ Implemented | List available language servers |
695
+
696
+ > **Note:** LSP tools require language servers to be installed (typescript-language-server, pylsp, rust-analyzer, gopls, etc.). Use `lsp_servers` to check installation status.
697
+
698
+ #### AST Tools (ast-grep Integration)
699
+
700
+ | Tool | Status | Description |
701
+ |------|--------|-------------|
702
+ | **ast_grep_search** | ✅ Implemented | Pattern-based code search using AST matching |
703
+ | **ast_grep_replace** | ✅ Implemented | Pattern-based code transformation |
704
+
705
+ > **Note:** AST tools use [@ast-grep/napi](https://ast-grep.github.io/) for structural code matching. Supports meta-variables like `$VAR` (single node) and `$$$` (multiple nodes).
706
+
707
+ ### Features Comparison
708
+
709
+ #### Fully Implemented ✅
710
+
711
+ | Feature | Description |
712
+ |---------|-------------|
713
+ | **19 Specialized Agents** | architect, researcher, explore, designer, writer, vision, qa-tester, critic, analyst, orchestrator, executor, planner (+ tiered variants) |
714
+ | **19 Lifecycle Hooks** | rules-injector, omc-orchestrator, auto-slash-command, keyword-detector, ralph-loop, todo-continuation, notepad, post-tool-use, context-window-limit-recovery, preemptive-compaction, session-recovery, directory-readme-injector, comment-checker, thinking-block-validator, empty-message-sanitizer, edit-error-recovery, non-interactive-env, agent-usage-reminder, background-notification |
715
+ | **21 Builtin Skills** | orchestrate, ultrawork, ralph-loop, ralph-init, ultrawork-ralph, ultraqa, planner, plan, review, deepinit, deepsearch, analyze, frontend-ui-ux, git-master, note, cancel-ralph, cancel-ultraqa, omc-default, omc-default-global, doctor, release |
716
+ | **Magic Keywords** | `ultrawork`, `search`, `analyze`, `ultrathink` trigger enhanced modes |
717
+ | **Slash Commands** | All skills available via `/oh-my-claudecode:skill-name` (e.g., `/oh-my-claudecode:ultrawork`, `/oh-my-claudecode:ralph`, `/oh-my-claudecode:plan`) |
718
+ | **Compaction-Resilient Memory** | Three-tier notepad system (Priority Context, Working Memory, MANUAL) |
719
+ | **Remember Tag Auto-Capture** | Agents can persist discoveries with `<remember>` tags |
720
+ | **PRD Support** | Structured task tracking with user stories and acceptance criteria |
721
+ | **Progress Tracking** | Append-only progress log with learnings and patterns |
722
+ | **Auto-Update System** | Updates via Claude Code's plugin system |
723
+ | **Configuration System** | JSONC config with multi-source merging |
724
+ | **Context Injection** | Auto-loads CLAUDE.md and AGENTS.md files |
725
+ | **Continuation Enforcement** | System prompt and hooks enforce task completion |
726
+ | **Session Recovery** | Automatic state recovery on crashes |
727
+ | **Background Task Manager** | Async agent execution with concurrency limits |
728
+ | **Context Window Recovery** | Multi-stage recovery when hitting token limits |
729
+ | **MCP Server Configs** | Exa, Context7, grep.app server definitions |
730
+ | **LSP Tools** | Real LSP server integration with 11 tools |
731
+ | **AST Tools** | ast-grep integration for structural code search/replace |
732
+ | **Comprehensive Test Suite** | 358 tests covering all major features |
733
+
734
+ #### Not Implemented ❌
735
+
736
+ | Feature | Original Capability | Why Not Ported |
737
+ |---------|---------------------|----------------|
738
+ | **Multi-Model Routing** | Route to GPT/Gemini/Grok based on task | Claude-only by design |
739
+ | **Per-Model Concurrency** | Fine-grained concurrency per provider | Single provider simplifies this |
740
+ | **Interactive Bash + Tmux** | Advanced terminal with Tmux integration | Standard Bash tool sufficient |
741
+
742
+ ### Architecture Differences
743
+
744
+ ```
745
+ oh-my-opencode (Original) oh-my-claudecode (Port)
746
+ ───────────────────────── ────────────────────────
747
+ ┌─────────────────────┐ ┌─────────────────────┐
748
+ │ OpenCode Plugin │ │ Claude Code │
749
+ │ (Bun runtime) │ │ (Native CLI) │
750
+ └─────────┬───────────┘ └─────────┬───────────┘
751
+ │ │
752
+ ┌─────────▼───────────┐ ┌─────────▼───────────┐
753
+ │ Multi-Provider │ │ Claude Agent SDK │
754
+ │ Orchestration │ │ (Claude only) │
755
+ │ ┌───┐ ┌───┐ ┌───┐ │ └─────────┬───────────┘
756
+ │ │GPT│ │Gem│ │Grok│ │ │
757
+ │ └───┘ └───┘ └───┘ │ ┌─────────▼───────────┐
758
+ └─────────┬───────────┘ │ ~/.claude/agents/ │
759
+ │ │ (Markdown configs) │
760
+ ┌─────────▼───────────┐ └─────────────────────┘
761
+ │ Custom Tool Layer │
762
+ │ (LSP, AST, etc.) │
763
+ └─────────────────────┘
764
+ ```
765
+
766
+ **Key Architectural Changes:**
767
+
768
+ 1. **Plugin → Native Integration**: Original was an OpenCode plugin; this uses Claude Code's native agent/command system
769
+ 2. **Multi-Provider → Single Provider**: Simplified to Claude-only for consistency
770
+ 3. **Custom Runtime → Claude Code Runtime**: Leverages Claude Code's built-in capabilities
771
+ 4. **Programmatic Config → Markdown Files**: Agents defined as `.md` files in `~/.claude/agents/`
772
+
773
+ ### What You Gain
774
+
775
+ - **Simpler Setup**: One curl command vs. multi-step plugin installation
776
+ - **Native Integration**: Works directly with Claude Code, no plugin layer
777
+ - **Consistent Behavior**: All agents use Claude, no cross-model quirks
778
+ - **Easier Customization**: Edit markdown files to customize agents
779
+
780
+ ### What You Lose
781
+
782
+ - **Model Diversity**: Can't use GPT-5.2 for architect's deep reasoning
783
+ - **Advanced Hooks**: Fewer lifecycle interception points (22 hooks → system prompt enforcement)
784
+
785
+ ### Migration Tips
786
+
787
+ If you're coming from oh-my-opencode:
788
+
789
+ 1. **Architect Tasks**: Claude Opus handles architecture/debugging well, but differently than GPT-5.2
790
+ 2. **LSP Workflows**: All LSP tools are available! Use `lsp_servers` to check which servers are installed
791
+ 3. **AST Searches**: Use `ast_grep_search` with pattern syntax (e.g., `function $NAME($$$)`)
792
+ 4. **Background Tasks**: Claude Code's `Task` tool with `run_in_background` works similarly
793
+ 5. **Planning**: Use `/oh-my-claudecode:plan` command to start a planning session with planner
794
+
795
+ </details>
796
+
797
+ ---
798
+
799
+ ## Requirements
800
+
801
+ - [Claude Code](https://docs.anthropic.com/claude-code) installed
802
+ - Anthropic API key (`ANTHROPIC_API_KEY` environment variable)
803
+ - **Windows**: Node.js 20+ (for npm installation)
804
+ - **macOS/Linux**: Bash shell (default) or Node.js 20+ (optional)
805
+
806
+ ### Platform Support
807
+
808
+ | Platform | Install Method | Hook Type |
809
+ |----------|---------------|-----------|
810
+ | **Windows** | `npm install -g` | Node.js (.mjs) |
811
+ | **macOS** | curl or npm | Bash (.sh) |
812
+ | **Linux** | curl or npm | Bash (.sh) |
813
+
814
+ > **Note**: Bash hooks are fully portable across macOS and Linux (no GNU-specific dependencies).
815
+
816
+ > **Advanced**: Set `OMC_USE_NODE_HOOKS=1` to use Node.js hooks on macOS/Linux.
817
+
818
+ ## License
819
+
820
+ MIT - see [LICENSE](LICENSE)
821
+
822
+ ## Credits
823
+
824
+ Inspired by [oh-my-opencode](https://github.com/code-yeongyu/oh-my-opencode) by code-yeongyu.