oh-my-claude-sisyphus 3.3.10 → 3.4.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 (382) hide show
  1. package/README.md +74 -8
  2. package/agents/explore-high.md +195 -0
  3. package/agents/qa-tester-high.md +141 -0
  4. package/agents/templates/README.md +110 -0
  5. package/agents/templates/base-agent.md +54 -0
  6. package/agents/templates/tier-instructions.md +94 -0
  7. package/commands/cancel-ecomode.md +71 -0
  8. package/commands/cancel.md +75 -0
  9. package/commands/ecomode.md +60 -0
  10. package/commands/help.md +1 -1
  11. package/commands/mcp-setup.md +7 -6
  12. package/commands/pipeline.md +231 -0
  13. package/commands/planner.md +174 -0
  14. package/commands/ralplan.md +8 -1
  15. package/commands/swarm.md +280 -0
  16. package/commands/ultrapilot.md +158 -0
  17. package/commands/ultrawork.md +1 -0
  18. package/dist/__tests__/delegation-enforcer-integration.test.d.ts +6 -0
  19. package/dist/__tests__/delegation-enforcer-integration.test.d.ts.map +1 -0
  20. package/dist/__tests__/delegation-enforcer-integration.test.js +136 -0
  21. package/dist/__tests__/delegation-enforcer-integration.test.js.map +1 -0
  22. package/dist/__tests__/delegation-enforcer.test.d.ts +5 -0
  23. package/dist/__tests__/delegation-enforcer.test.d.ts.map +1 -0
  24. package/dist/__tests__/delegation-enforcer.test.js +208 -0
  25. package/dist/__tests__/delegation-enforcer.test.js.map +1 -0
  26. package/dist/__tests__/hooks.test.js +2 -2
  27. package/dist/__tests__/hooks.test.js.map +1 -1
  28. package/dist/__tests__/installer.test.js +4 -6
  29. package/dist/__tests__/installer.test.js.map +1 -1
  30. package/dist/__tests__/ralph-prd.test.js +1 -1
  31. package/dist/__tests__/ralph-prd.test.js.map +1 -1
  32. package/dist/__tests__/ralph-progress.test.js +1 -1
  33. package/dist/__tests__/ralph-progress.test.js.map +1 -1
  34. package/dist/__tests__/skills.test.js +31 -24
  35. package/dist/__tests__/skills.test.js.map +1 -1
  36. package/dist/agents/analyst.d.ts.map +1 -1
  37. package/dist/agents/analyst.js +1 -0
  38. package/dist/agents/analyst.js.map +1 -1
  39. package/dist/agents/architect.d.ts.map +1 -1
  40. package/dist/agents/architect.js +1 -0
  41. package/dist/agents/architect.js.map +1 -1
  42. package/dist/agents/critic.d.ts.map +1 -1
  43. package/dist/agents/critic.js +1 -0
  44. package/dist/agents/critic.js.map +1 -1
  45. package/dist/agents/definitions.d.ts +5 -1
  46. package/dist/agents/definitions.d.ts.map +1 -1
  47. package/dist/agents/definitions.js +53 -155
  48. package/dist/agents/definitions.js.map +1 -1
  49. package/dist/agents/designer.d.ts.map +1 -1
  50. package/dist/agents/designer.js +1 -0
  51. package/dist/agents/designer.js.map +1 -1
  52. package/dist/agents/executor.d.ts.map +1 -1
  53. package/dist/agents/executor.js +1 -0
  54. package/dist/agents/executor.js.map +1 -1
  55. package/dist/agents/explore.d.ts.map +1 -1
  56. package/dist/agents/explore.js +1 -0
  57. package/dist/agents/explore.js.map +1 -1
  58. package/dist/agents/planner.d.ts.map +1 -1
  59. package/dist/agents/planner.js +1 -0
  60. package/dist/agents/planner.js.map +1 -1
  61. package/dist/agents/qa-tester.d.ts.map +1 -1
  62. package/dist/agents/qa-tester.js +1 -0
  63. package/dist/agents/qa-tester.js.map +1 -1
  64. package/dist/agents/researcher.d.ts.map +1 -1
  65. package/dist/agents/researcher.js +1 -0
  66. package/dist/agents/researcher.js.map +1 -1
  67. package/dist/agents/scientist.d.ts.map +1 -1
  68. package/dist/agents/scientist.js +1 -0
  69. package/dist/agents/scientist.js.map +1 -1
  70. package/dist/agents/types.d.ts +2 -0
  71. package/dist/agents/types.d.ts.map +1 -1
  72. package/dist/agents/types.js.map +1 -1
  73. package/dist/agents/vision.d.ts.map +1 -1
  74. package/dist/agents/vision.js +1 -0
  75. package/dist/agents/vision.js.map +1 -1
  76. package/dist/agents/writer.d.ts.map +1 -1
  77. package/dist/agents/writer.js +1 -0
  78. package/dist/agents/writer.js.map +1 -1
  79. package/dist/analytics/cost-estimator.d.ts +14 -0
  80. package/dist/analytics/cost-estimator.d.ts.map +1 -0
  81. package/dist/analytics/cost-estimator.js +70 -0
  82. package/dist/analytics/cost-estimator.js.map +1 -0
  83. package/dist/analytics/export.d.ts +7 -0
  84. package/dist/analytics/export.d.ts.map +1 -0
  85. package/dist/analytics/export.js +93 -0
  86. package/dist/analytics/export.js.map +1 -0
  87. package/dist/analytics/index.d.ts +14 -0
  88. package/dist/analytics/index.d.ts.map +1 -0
  89. package/dist/analytics/index.js +14 -0
  90. package/dist/analytics/index.js.map +1 -0
  91. package/dist/analytics/metrics-collector.d.ts +30 -0
  92. package/dist/analytics/metrics-collector.d.ts.map +1 -0
  93. package/dist/analytics/metrics-collector.js +96 -0
  94. package/dist/analytics/metrics-collector.js.map +1 -0
  95. package/dist/analytics/query-engine.d.ts +32 -0
  96. package/dist/analytics/query-engine.d.ts.map +1 -0
  97. package/dist/analytics/query-engine.js +151 -0
  98. package/dist/analytics/query-engine.js.map +1 -0
  99. package/dist/analytics/session-manager.d.ts +26 -0
  100. package/dist/analytics/session-manager.d.ts.map +1 -0
  101. package/dist/analytics/session-manager.js +201 -0
  102. package/dist/analytics/session-manager.js.map +1 -0
  103. package/dist/analytics/session-types.d.ts +37 -0
  104. package/dist/analytics/session-types.d.ts.map +1 -0
  105. package/dist/analytics/session-types.js +2 -0
  106. package/dist/analytics/session-types.js.map +1 -0
  107. package/dist/analytics/token-tracker.d.ts +24 -0
  108. package/dist/analytics/token-tracker.d.ts.map +1 -0
  109. package/dist/analytics/token-tracker.js +161 -0
  110. package/dist/analytics/token-tracker.js.map +1 -0
  111. package/dist/analytics/types.d.ts +37 -0
  112. package/dist/analytics/types.d.ts.map +1 -0
  113. package/dist/analytics/types.js +21 -0
  114. package/dist/analytics/types.js.map +1 -0
  115. package/dist/cli/analytics.d.ts +3 -0
  116. package/dist/cli/analytics.d.ts.map +1 -0
  117. package/dist/cli/analytics.js +74 -0
  118. package/dist/cli/analytics.js.map +1 -0
  119. package/dist/cli/commands/agents.d.ts +5 -0
  120. package/dist/cli/commands/agents.d.ts.map +1 -0
  121. package/dist/cli/commands/agents.js +29 -0
  122. package/dist/cli/commands/agents.js.map +1 -0
  123. package/dist/cli/commands/cleanup.d.ts +4 -0
  124. package/dist/cli/commands/cleanup.d.ts.map +1 -0
  125. package/dist/cli/commands/cleanup.js +17 -0
  126. package/dist/cli/commands/cleanup.js.map +1 -0
  127. package/dist/cli/commands/cost.d.ts +4 -0
  128. package/dist/cli/commands/cost.d.ts.map +1 -0
  129. package/dist/cli/commands/cost.js +53 -0
  130. package/dist/cli/commands/cost.js.map +1 -0
  131. package/dist/cli/commands/export.d.ts +5 -0
  132. package/dist/cli/commands/export.d.ts.map +1 -0
  133. package/dist/cli/commands/export.js +30 -0
  134. package/dist/cli/commands/export.js.map +1 -0
  135. package/dist/cli/commands/sessions.d.ts +5 -0
  136. package/dist/cli/commands/sessions.d.ts.map +1 -0
  137. package/dist/cli/commands/sessions.js +37 -0
  138. package/dist/cli/commands/sessions.js.map +1 -0
  139. package/dist/cli/commands/stats.d.ts +4 -0
  140. package/dist/cli/commands/stats.d.ts.map +1 -0
  141. package/dist/cli/commands/stats.js +43 -0
  142. package/dist/cli/commands/stats.js.map +1 -0
  143. package/dist/cli/index.js +0 -3
  144. package/dist/cli/index.js.map +1 -1
  145. package/dist/cli/utils/formatting.d.ts +22 -0
  146. package/dist/cli/utils/formatting.d.ts.map +1 -0
  147. package/dist/cli/utils/formatting.js +70 -0
  148. package/dist/cli/utils/formatting.js.map +1 -0
  149. package/dist/config/loader.d.ts.map +1 -1
  150. package/dist/config/loader.js +1 -6
  151. package/dist/config/loader.js.map +1 -1
  152. package/dist/features/delegation-enforcer.d.ts +71 -0
  153. package/dist/features/delegation-enforcer.d.ts.map +1 -0
  154. package/dist/features/delegation-enforcer.js +128 -0
  155. package/dist/features/delegation-enforcer.js.map +1 -0
  156. package/dist/features/index.d.ts +3 -0
  157. package/dist/features/index.d.ts.map +1 -1
  158. package/dist/features/index.js +18 -0
  159. package/dist/features/index.js.map +1 -1
  160. package/dist/features/state-manager/index.d.ts +100 -0
  161. package/dist/features/state-manager/index.d.ts.map +1 -0
  162. package/dist/features/state-manager/index.js +407 -0
  163. package/dist/features/state-manager/index.js.map +1 -0
  164. package/dist/features/state-manager/types.d.ts +147 -0
  165. package/dist/features/state-manager/types.d.ts.map +1 -0
  166. package/dist/features/state-manager/types.js +30 -0
  167. package/dist/features/state-manager/types.js.map +1 -0
  168. package/dist/features/task-decomposer/index.d.ts +33 -0
  169. package/dist/features/task-decomposer/index.d.ts.map +1 -0
  170. package/dist/features/task-decomposer/index.js +698 -0
  171. package/dist/features/task-decomposer/index.js.map +1 -0
  172. package/dist/features/task-decomposer/types.d.ts +133 -0
  173. package/dist/features/task-decomposer/types.d.ts.map +1 -0
  174. package/dist/features/task-decomposer/types.js +8 -0
  175. package/dist/features/task-decomposer/types.js.map +1 -0
  176. package/dist/features/verification/example.d.ts +49 -0
  177. package/dist/features/verification/example.d.ts.map +1 -0
  178. package/dist/features/verification/example.js +235 -0
  179. package/dist/features/verification/example.js.map +1 -0
  180. package/dist/features/verification/index.d.ts +97 -0
  181. package/dist/features/verification/index.d.ts.map +1 -0
  182. package/dist/features/verification/index.js +439 -0
  183. package/dist/features/verification/index.js.map +1 -0
  184. package/dist/features/verification/types.d.ts +142 -0
  185. package/dist/features/verification/types.d.ts.map +1 -0
  186. package/dist/features/verification/types.js +7 -0
  187. package/dist/features/verification/types.js.map +1 -0
  188. package/dist/hooks/agent-usage-reminder/constants.d.ts.map +1 -1
  189. package/dist/hooks/agent-usage-reminder/constants.js +0 -1
  190. package/dist/hooks/agent-usage-reminder/constants.js.map +1 -1
  191. package/dist/hooks/autopilot/__tests__/cancel.test.js +4 -4
  192. package/dist/hooks/autopilot/__tests__/cancel.test.js.map +1 -1
  193. package/dist/hooks/autopilot/__tests__/summary.test.js +1 -1
  194. package/dist/hooks/autopilot/__tests__/summary.test.js.map +1 -1
  195. package/dist/hooks/autopilot/__tests__/transition.test.js +1 -2
  196. package/dist/hooks/autopilot/__tests__/transition.test.js.map +1 -1
  197. package/dist/hooks/autopilot/cancel.js +2 -2
  198. package/dist/hooks/autopilot/cancel.js.map +1 -1
  199. package/dist/hooks/autopilot/enforcement.d.ts +16 -2
  200. package/dist/hooks/autopilot/enforcement.d.ts.map +1 -1
  201. package/dist/hooks/autopilot/enforcement.js +78 -4
  202. package/dist/hooks/autopilot/enforcement.js.map +1 -1
  203. package/dist/hooks/autopilot/index.d.ts +3 -6
  204. package/dist/hooks/autopilot/index.d.ts.map +1 -1
  205. package/dist/hooks/autopilot/index.js +6 -12
  206. package/dist/hooks/autopilot/index.js.map +1 -1
  207. package/dist/hooks/autopilot/state.d.ts +36 -2
  208. package/dist/hooks/autopilot/state.d.ts.map +1 -1
  209. package/dist/hooks/autopilot/state.js +216 -2
  210. package/dist/hooks/autopilot/state.js.map +1 -1
  211. package/dist/hooks/autopilot/validation.d.ts +23 -2
  212. package/dist/hooks/autopilot/validation.d.ts.map +1 -1
  213. package/dist/hooks/autopilot/validation.js +158 -1
  214. package/dist/hooks/autopilot/validation.js.map +1 -1
  215. package/dist/hooks/bridge.js +3 -3
  216. package/dist/hooks/bridge.js.map +1 -1
  217. package/dist/hooks/index.d.ts +5 -9
  218. package/dist/hooks/index.d.ts.map +1 -1
  219. package/dist/hooks/index.js +31 -21
  220. package/dist/hooks/index.js.map +1 -1
  221. package/dist/hooks/learner/promotion.js +1 -1
  222. package/dist/hooks/learner/promotion.js.map +1 -1
  223. package/dist/hooks/persistent-mode/index.d.ts.map +1 -1
  224. package/dist/hooks/persistent-mode/index.js +2 -3
  225. package/dist/hooks/persistent-mode/index.js.map +1 -1
  226. package/dist/hooks/ralph/index.d.ts +11 -0
  227. package/dist/hooks/ralph/index.d.ts.map +1 -0
  228. package/dist/hooks/ralph/index.js +53 -0
  229. package/dist/hooks/ralph/index.js.map +1 -0
  230. package/dist/hooks/ralph/loop.d.ts +116 -0
  231. package/dist/hooks/ralph/loop.d.ts.map +1 -0
  232. package/dist/hooks/ralph/loop.js +322 -0
  233. package/dist/hooks/ralph/loop.js.map +1 -0
  234. package/dist/hooks/ralph/prd.d.ts +130 -0
  235. package/dist/hooks/ralph/prd.d.ts.map +1 -0
  236. package/dist/hooks/ralph/prd.js +310 -0
  237. package/dist/hooks/ralph/prd.js.map +1 -0
  238. package/dist/hooks/ralph/progress.d.ts +102 -0
  239. package/dist/hooks/ralph/progress.d.ts.map +1 -0
  240. package/dist/hooks/ralph/progress.js +408 -0
  241. package/dist/hooks/ralph/progress.js.map +1 -0
  242. package/dist/hooks/ralph/verifier.d.ts +72 -0
  243. package/dist/hooks/ralph/verifier.d.ts.map +1 -0
  244. package/dist/hooks/ralph/verifier.js +223 -0
  245. package/dist/hooks/ralph/verifier.js.map +1 -0
  246. package/dist/hooks/recovery/constants.d.ts +114 -0
  247. package/dist/hooks/recovery/constants.d.ts.map +1 -0
  248. package/dist/hooks/recovery/constants.js +227 -0
  249. package/dist/hooks/recovery/constants.js.map +1 -0
  250. package/dist/hooks/recovery/context-window.d.ts +24 -0
  251. package/dist/hooks/recovery/context-window.d.ts.map +1 -0
  252. package/dist/hooks/recovery/context-window.js +321 -0
  253. package/dist/hooks/recovery/context-window.js.map +1 -0
  254. package/dist/hooks/recovery/edit-error.d.ts +24 -0
  255. package/dist/hooks/recovery/edit-error.d.ts.map +1 -0
  256. package/dist/hooks/recovery/edit-error.js +56 -0
  257. package/dist/hooks/recovery/edit-error.js.map +1 -0
  258. package/dist/hooks/recovery/index.d.ts +102 -0
  259. package/dist/hooks/recovery/index.d.ts.map +1 -0
  260. package/dist/hooks/recovery/index.js +166 -0
  261. package/dist/hooks/recovery/index.js.map +1 -0
  262. package/dist/hooks/recovery/session-recovery.d.ts +24 -0
  263. package/dist/hooks/recovery/session-recovery.d.ts.map +1 -0
  264. package/dist/hooks/recovery/session-recovery.js +281 -0
  265. package/dist/hooks/recovery/session-recovery.js.map +1 -0
  266. package/dist/hooks/recovery/storage.d.ts +75 -0
  267. package/dist/hooks/recovery/storage.d.ts.map +1 -0
  268. package/dist/hooks/recovery/storage.js +382 -0
  269. package/dist/hooks/recovery/storage.js.map +1 -0
  270. package/dist/hooks/recovery/types.d.ts +196 -0
  271. package/dist/hooks/recovery/types.d.ts.map +1 -0
  272. package/dist/hooks/recovery/types.js +32 -0
  273. package/dist/hooks/recovery/types.js.map +1 -0
  274. package/dist/hooks/ultrapilot/index.d.ts +90 -0
  275. package/dist/hooks/ultrapilot/index.d.ts.map +1 -0
  276. package/dist/hooks/ultrapilot/index.js +310 -0
  277. package/dist/hooks/ultrapilot/index.js.map +1 -0
  278. package/dist/hooks/ultrapilot/state.d.ts +72 -0
  279. package/dist/hooks/ultrapilot/state.d.ts.map +1 -0
  280. package/dist/hooks/ultrapilot/state.js +258 -0
  281. package/dist/hooks/ultrapilot/state.js.map +1 -0
  282. package/dist/hooks/ultrapilot/types.d.ts +113 -0
  283. package/dist/hooks/ultrapilot/types.d.ts.map +1 -0
  284. package/dist/hooks/ultrapilot/types.js +36 -0
  285. package/dist/hooks/ultrapilot/types.js.map +1 -0
  286. package/dist/hooks/ultraqa/index.d.ts +94 -0
  287. package/dist/hooks/ultraqa/index.d.ts.map +1 -0
  288. package/dist/hooks/ultraqa/index.js +216 -0
  289. package/dist/hooks/ultraqa/index.js.map +1 -0
  290. package/dist/hooks/ultrawork/index.d.ts +62 -0
  291. package/dist/hooks/ultrawork/index.d.ts.map +1 -0
  292. package/dist/hooks/ultrawork/index.js +208 -0
  293. package/dist/hooks/ultrawork/index.js.map +1 -0
  294. package/dist/hud/analytics-display.d.ts +28 -0
  295. package/dist/hud/analytics-display.d.ts.map +1 -0
  296. package/dist/hud/analytics-display.js +105 -0
  297. package/dist/hud/analytics-display.js.map +1 -0
  298. package/dist/hud/background-cleanup.d.ts +28 -0
  299. package/dist/hud/background-cleanup.d.ts.map +1 -0
  300. package/dist/hud/background-cleanup.js +92 -0
  301. package/dist/hud/background-cleanup.js.map +1 -0
  302. package/dist/hud/index.js +4 -2
  303. package/dist/hud/index.js.map +1 -1
  304. package/dist/hud/render.d.ts +1 -1
  305. package/dist/hud/render.d.ts.map +1 -1
  306. package/dist/hud/render.js +32 -1
  307. package/dist/hud/render.js.map +1 -1
  308. package/dist/hud/state.d.ts +5 -0
  309. package/dist/hud/state.d.ts.map +1 -1
  310. package/dist/hud/state.js +13 -0
  311. package/dist/hud/state.js.map +1 -1
  312. package/dist/hud/types.d.ts +11 -1
  313. package/dist/hud/types.d.ts.map +1 -1
  314. package/dist/hud/types.js +19 -0
  315. package/dist/hud/types.js.map +1 -1
  316. package/dist/index.d.ts.map +1 -1
  317. package/dist/index.js +1 -2
  318. package/dist/index.js.map +1 -1
  319. package/dist/installer/index.d.ts +1 -1
  320. package/dist/installer/index.d.ts.map +1 -1
  321. package/dist/installer/index.js +1 -1
  322. package/dist/installer/index.js.map +1 -1
  323. package/dist/mcp/index.d.ts +1 -1
  324. package/dist/mcp/index.d.ts.map +1 -1
  325. package/dist/mcp/index.js +1 -1
  326. package/dist/mcp/index.js.map +1 -1
  327. package/dist/mcp/servers.d.ts +2 -18
  328. package/dist/mcp/servers.d.ts.map +1 -1
  329. package/dist/mcp/servers.js +4 -36
  330. package/dist/mcp/servers.js.map +1 -1
  331. package/dist/shared/types.d.ts +1 -3
  332. package/dist/shared/types.d.ts.map +1 -1
  333. package/docs/CLAUDE.md +170 -44
  334. package/docs/DELEGATION-ENFORCER.md +282 -0
  335. package/docs/FULL-README.md +130 -16
  336. package/docs/LOCAL_PLUGIN_INSTALL.md +1 -1
  337. package/docs/MIGRATION.md +513 -98
  338. package/docs/SYNC-SYSTEM.md +528 -0
  339. package/package.json +9 -3
  340. package/scripts/sync-metadata.ts +363 -0
  341. package/scripts/test-mutual-exclusion.ts +1 -1
  342. package/skills/analyze/SKILL.md +0 -1
  343. package/skills/autopilot/SKILL.md +0 -1
  344. package/skills/build-fix/SKILL.md +123 -0
  345. package/skills/cancel/SKILL.md +580 -0
  346. package/skills/cancel-autopilot/SKILL.md +0 -1
  347. package/skills/cancel-ecomode/SKILL.md +41 -0
  348. package/skills/cancel-ralph/SKILL.md +0 -1
  349. package/skills/cancel-ultraqa/SKILL.md +0 -1
  350. package/skills/cancel-ultrawork/SKILL.md +0 -1
  351. package/skills/code-review/SKILL.md +179 -0
  352. package/skills/deepinit/SKILL.md +0 -1
  353. package/skills/deepsearch/SKILL.md +0 -1
  354. package/skills/doctor/SKILL.md +0 -1
  355. package/skills/ecomode/SKILL.md +128 -0
  356. package/skills/frontend-ui-ux/SKILL.md +0 -1
  357. package/skills/git-master/SKILL.md +0 -1
  358. package/skills/help/SKILL.md +1 -2
  359. package/skills/hud/SKILL.md +0 -1
  360. package/skills/learner/SKILL.md +0 -1
  361. package/skills/mcp-setup/SKILL.md +8 -7
  362. package/skills/note/SKILL.md +0 -1
  363. package/skills/omc-default/SKILL.md +0 -1
  364. package/skills/omc-default-global/SKILL.md +0 -1
  365. package/skills/omc-setup/SKILL.md +176 -10
  366. package/skills/orchestrate/SKILL.md +0 -1
  367. package/skills/pipeline/SKILL.md +417 -0
  368. package/skills/plan/SKILL.md +138 -21
  369. package/skills/planner/SKILL.md +0 -1
  370. package/skills/ralph/SKILL.md +65 -1
  371. package/skills/ralph-init/SKILL.md +0 -1
  372. package/skills/ralplan/SKILL.md +0 -1
  373. package/skills/release/SKILL.md +0 -1
  374. package/skills/research/SKILL.md +0 -1
  375. package/skills/review/SKILL.md +0 -1
  376. package/skills/security-review/SKILL.md +254 -0
  377. package/skills/swarm/SKILL.md +349 -0
  378. package/skills/tdd/SKILL.md +0 -1
  379. package/skills/ultrapilot/SKILL.md +563 -0
  380. package/skills/ultraqa/SKILL.md +0 -1
  381. package/skills/ultrawork/SKILL.md +0 -1
  382. package/docs/MIGRATION-v3.md +0 -186
@@ -0,0 +1,580 @@
1
+ ---
2
+ name: cancel
3
+ description: Cancel any active OMC mode (autopilot, ralph, ultrawork, ecomode, ultraqa, swarm, ultrapilot, pipeline)
4
+ ---
5
+
6
+ # Cancel Skill
7
+
8
+ Intelligent cancellation that detects and cancels the active OMC mode.
9
+
10
+ ## What It Does
11
+
12
+ Automatically detects which mode is active and cancels it:
13
+ - **Autopilot**: Stops workflow, preserves progress for resume
14
+ - **Ralph**: Stops persistence loop, clears linked ultrawork if applicable
15
+ - **Ultrawork**: Stops parallel execution (standalone or linked)
16
+ - **Ecomode**: Stops token-efficient parallel execution (standalone or linked to ralph)
17
+ - **UltraQA**: Stops QA cycling workflow
18
+ - **Swarm**: Stops coordinated agent swarm, releases claimed tasks
19
+ - **Ultrapilot**: Stops parallel autopilot workers
20
+ - **Pipeline**: Stops sequential agent pipeline
21
+
22
+ ## Usage
23
+
24
+ ```
25
+ /oh-my-claudecode:cancel
26
+ ```
27
+
28
+ Or say: "stop", "cancel", "abort"
29
+
30
+ ## Auto-Detection
31
+
32
+ The skill checks state files to determine what's active:
33
+ - `.omc/autopilot-state.json` → Autopilot detected
34
+ - `.omc/ralph-state.json` → Ralph detected
35
+ - `.omc/ultrawork-state.json` → Ultrawork detected
36
+ - `.omc/ecomode-state.json` → Ecomode detected
37
+ - `.omc/ultraqa-state.json` → UltraQA detected
38
+ - `.omc/swarm-state.json` → Swarm detected
39
+ - `.omc/ultrapilot-state.json` → Ultrapilot detected
40
+ - `.omc/pipeline-state.json` → Pipeline detected
41
+
42
+ If multiple modes are active, they're cancelled in order of dependency:
43
+ 1. Autopilot (includes ralph/ultraqa/ecomode cleanup)
44
+ 2. Ralph (includes linked ultrawork OR ecomode cleanup)
45
+ 3. Ultrawork (standalone)
46
+ 4. Ecomode (standalone)
47
+ 5. UltraQA (standalone)
48
+ 6. Swarm (standalone)
49
+ 7. Ultrapilot (standalone)
50
+ 8. Pipeline (standalone)
51
+
52
+ ## Force Clear All
53
+
54
+ To clear ALL state files regardless of what's active:
55
+
56
+ ```
57
+ /oh-my-claudecode:cancel --force
58
+ ```
59
+
60
+ Or use the `--all` alias:
61
+
62
+ ```
63
+ /oh-my-claudecode:cancel --all
64
+ ```
65
+
66
+ This removes all state files:
67
+ - `.omc/autopilot-state.json`
68
+ - `.omc/ralph-state.json`
69
+ - `.omc/ultrawork-state.json`
70
+ - `.omc/ecomode-state.json`
71
+ - `.omc/ultraqa-state.json`
72
+ - `.omc/swarm-state.json`
73
+ - `.omc/state/swarm-tasks.json`
74
+ - `.omc/ultrapilot-state.json`
75
+ - `.omc/pipeline-state.json`
76
+ - `~/.claude/ralph-state.json`
77
+ - `~/.claude/ultrawork-state.json`
78
+ - `~/.claude/ecomode-state.json`
79
+
80
+ ## Implementation Steps
81
+
82
+ When you invoke this skill:
83
+
84
+ ### 1. Parse Arguments
85
+
86
+ ```bash
87
+ # Check for --force or --all flags
88
+ FORCE_MODE=false
89
+ if [[ "$*" == *"--force"* ]] || [[ "$*" == *"--all"* ]]; then
90
+ FORCE_MODE=true
91
+ fi
92
+ ```
93
+
94
+ ### 2. Detect Active Modes
95
+
96
+ ```bash
97
+ # Check which modes are active
98
+ AUTOPILOT_ACTIVE=false
99
+ RALPH_ACTIVE=false
100
+ ULTRAWORK_ACTIVE=false
101
+ ECOMODE_ACTIVE=false
102
+ ULTRAQA_ACTIVE=false
103
+
104
+ if [[ -f .omc/autopilot-state.json ]]; then
105
+ AUTOPILOT_ACTIVE=$(cat .omc/autopilot-state.json | jq -r '.active // false')
106
+ fi
107
+
108
+ if [[ -f .omc/ralph-state.json ]]; then
109
+ RALPH_ACTIVE=$(cat .omc/ralph-state.json | jq -r '.active // false')
110
+ fi
111
+
112
+ if [[ -f .omc/ultrawork-state.json ]]; then
113
+ ULTRAWORK_ACTIVE=$(cat .omc/ultrawork-state.json | jq -r '.active // false')
114
+ fi
115
+
116
+ if [[ -f .omc/ecomode-state.json ]]; then
117
+ ECOMODE_ACTIVE=$(cat .omc/ecomode-state.json | jq -r '.active // false')
118
+ fi
119
+
120
+ if [[ -f .omc/ultraqa-state.json ]]; then
121
+ ULTRAQA_ACTIVE=$(cat .omc/ultraqa-state.json | jq -r '.active // false')
122
+ fi
123
+ ```
124
+
125
+ ### 3A. Force Mode (if --force or --all)
126
+
127
+ ```bash
128
+ if [[ "$FORCE_MODE" == "true" ]]; then
129
+ echo "FORCE CLEAR: Removing all OMC state files..."
130
+
131
+ # Remove local state files
132
+ rm -f .omc/autopilot-state.json
133
+ rm -f .omc/ralph-state.json
134
+ rm -f .omc/ultrawork-state.json
135
+ rm -f .omc/ecomode-state.json
136
+ rm -f .omc/ultraqa-state.json
137
+ rm -f .omc/ralph-plan-state.json
138
+ rm -f .omc/ralph-verification.json
139
+ rm -f .omc/swarm-state.json
140
+ rm -f .omc/state/swarm-tasks.json
141
+ rm -f .omc/ultrapilot-state.json
142
+ rm -f .omc/pipeline-state.json
143
+
144
+ # Remove global state files
145
+ rm -f ~/.claude/ralph-state.json
146
+ rm -f ~/.claude/ultrawork-state.json
147
+ rm -f ~/.claude/ecomode-state.json
148
+
149
+ echo "All OMC modes cleared. You are free to start fresh."
150
+ exit 0
151
+ fi
152
+ ```
153
+
154
+ ### 3B. Smart Cancellation (default)
155
+
156
+ #### If Autopilot Active
157
+
158
+ Call `cancelAutopilot()` from `src/hooks/autopilot/cancel.ts:27-78`:
159
+
160
+ ```bash
161
+ # Autopilot handles its own cleanup + ralph + ultraqa
162
+ # Just mark autopilot as inactive (preserves state for resume)
163
+ if [[ -f .omc/autopilot-state.json ]]; then
164
+ # Clean up ralph if active
165
+ if [[ -f .omc/ralph-state.json ]]; then
166
+ RALPH_STATE=$(cat .omc/ralph-state.json)
167
+ LINKED_UW=$(echo "$RALPH_STATE" | jq -r '.linked_ultrawork // false')
168
+
169
+ # Clean linked ultrawork first
170
+ if [[ "$LINKED_UW" == "true" ]] && [[ -f .omc/ultrawork-state.json ]]; then
171
+ rm -f .omc/ultrawork-state.json
172
+ rm -f ~/.claude/ultrawork-state.json
173
+ echo "Cleaned up: ultrawork (linked to ralph)"
174
+ fi
175
+
176
+ # Clean ralph
177
+ rm -f .omc/ralph-state.json
178
+ rm -f ~/.claude/ralph-state.json
179
+ rm -f .omc/ralph-verification.json
180
+ echo "Cleaned up: ralph"
181
+ fi
182
+
183
+ # Clean up ultraqa if active
184
+ if [[ -f .omc/ultraqa-state.json ]]; then
185
+ rm -f .omc/ultraqa-state.json
186
+ echo "Cleaned up: ultraqa"
187
+ fi
188
+
189
+ # Mark autopilot inactive but preserve state
190
+ CURRENT_STATE=$(cat .omc/autopilot-state.json)
191
+ CURRENT_PHASE=$(echo "$CURRENT_STATE" | jq -r '.phase // "unknown"')
192
+ echo "$CURRENT_STATE" | jq '.active = false' > .omc/autopilot-state.json
193
+
194
+ echo "Autopilot cancelled at phase: $CURRENT_PHASE. Progress preserved for resume."
195
+ echo "Run /oh-my-claudecode:autopilot to resume."
196
+ fi
197
+ ```
198
+
199
+ #### If Ralph Active (but not Autopilot)
200
+
201
+ Call `clearRalphState()` + `clearLinkedUltraworkState()` from `src/hooks/ralph-loop/index.ts:147-182`:
202
+
203
+ ```bash
204
+ if [[ -f .omc/ralph-state.json ]]; then
205
+ # Check if ultrawork is linked
206
+ RALPH_STATE=$(cat .omc/ralph-state.json)
207
+ LINKED_UW=$(echo "$RALPH_STATE" | jq -r '.linked_ultrawork // false')
208
+
209
+ # Clean linked ultrawork first
210
+ if [[ "$LINKED_UW" == "true" ]] && [[ -f .omc/ultrawork-state.json ]]; then
211
+ UW_STATE=$(cat .omc/ultrawork-state.json)
212
+ UW_LINKED=$(echo "$UW_STATE" | jq -r '.linked_to_ralph // false')
213
+
214
+ # Only clear if it was linked to ralph
215
+ if [[ "$UW_LINKED" == "true" ]]; then
216
+ rm -f .omc/ultrawork-state.json
217
+ rm -f ~/.claude/ultrawork-state.json
218
+ echo "Cleaned up: ultrawork (linked to ralph)"
219
+ fi
220
+ fi
221
+
222
+ # Clean ralph state (both local and global)
223
+ rm -f .omc/ralph-state.json
224
+ rm -f ~/.claude/ralph-state.json
225
+ rm -f .omc/ralph-plan-state.json
226
+ rm -f .omc/ralph-verification.json
227
+
228
+ echo "Ralph cancelled. Persistent mode deactivated."
229
+ fi
230
+ ```
231
+
232
+ #### If Ultrawork Active (standalone, not linked)
233
+
234
+ Call `deactivateUltrawork()` from `src/hooks/ultrawork/index.ts:150-173`:
235
+
236
+ ```bash
237
+ if [[ -f .omc/ultrawork-state.json ]]; then
238
+ # Check if linked to ralph
239
+ UW_STATE=$(cat .omc/ultrawork-state.json)
240
+ LINKED=$(echo "$UW_STATE" | jq -r '.linked_to_ralph // false')
241
+
242
+ if [[ "$LINKED" == "true" ]]; then
243
+ echo "Ultrawork is linked to Ralph. Use /oh-my-claudecode:cancel to cancel both."
244
+ exit 1
245
+ fi
246
+
247
+ # Remove both local and global state
248
+ rm -f .omc/ultrawork-state.json
249
+ rm -f ~/.claude/ultrawork-state.json
250
+
251
+ echo "Ultrawork cancelled. Parallel execution mode deactivated."
252
+ fi
253
+ ```
254
+
255
+ #### If UltraQA Active (standalone)
256
+
257
+ Call `clearUltraQAState()` from `src/hooks/ultraqa/index.ts:107-120`:
258
+
259
+ ```bash
260
+ if [[ -f .omc/ultraqa-state.json ]]; then
261
+ rm -f .omc/ultraqa-state.json
262
+ echo "UltraQA cancelled. QA cycling workflow stopped."
263
+ fi
264
+ ```
265
+
266
+ #### No Active Modes
267
+
268
+ ```bash
269
+ echo "No active OMC modes detected."
270
+ echo ""
271
+ echo "Checked for:"
272
+ echo " - Autopilot (.omc/autopilot-state.json)"
273
+ echo " - Ralph (.omc/ralph-state.json)"
274
+ echo " - Ultrawork (.omc/ultrawork-state.json)"
275
+ echo " - UltraQA (.omc/ultraqa-state.json)"
276
+ echo ""
277
+ echo "Use --force to clear all state files anyway."
278
+ ```
279
+
280
+ ## Complete Implementation
281
+
282
+ Here's the complete bash implementation you should run:
283
+
284
+ ```bash
285
+ #!/bin/bash
286
+
287
+ # Parse arguments
288
+ FORCE_MODE=false
289
+ if [[ "$*" == *"--force"* ]] || [[ "$*" == *"--all"* ]]; then
290
+ FORCE_MODE=true
291
+ fi
292
+
293
+ # Force mode: clear everything
294
+ if [[ "$FORCE_MODE" == "true" ]]; then
295
+ echo "FORCE CLEAR: Removing all OMC state files..."
296
+
297
+ mkdir -p .omc ~/.claude
298
+
299
+ # Remove local state files
300
+ rm -f .omc/autopilot-state.json
301
+ rm -f .omc/ralph-state.json
302
+ rm -f .omc/ultrawork-state.json
303
+ rm -f .omc/ecomode-state.json
304
+ rm -f .omc/ultraqa-state.json
305
+ rm -f .omc/ralph-plan-state.json
306
+ rm -f .omc/ralph-verification.json
307
+ rm -f .omc/swarm-state.json
308
+ rm -f .omc/state/swarm-tasks.json
309
+ rm -f .omc/ultrapilot-state.json
310
+ rm -f .omc/pipeline-state.json
311
+
312
+ # Remove global state files
313
+ rm -f ~/.claude/ralph-state.json
314
+ rm -f ~/.claude/ultrawork-state.json
315
+ rm -f ~/.claude/ecomode-state.json
316
+
317
+ echo ""
318
+ echo "All OMC modes cleared. You are free to start fresh."
319
+ exit 0
320
+ fi
321
+
322
+ # Track what we cancelled
323
+ CANCELLED_ANYTHING=false
324
+
325
+ # 1. Check Autopilot (highest priority, includes cleanup of ralph/ultraqa)
326
+ if [[ -f .omc/autopilot-state.json ]]; then
327
+ AUTOPILOT_STATE=$(cat .omc/autopilot-state.json)
328
+ AUTOPILOT_ACTIVE=$(echo "$AUTOPILOT_STATE" | jq -r '.active // false')
329
+
330
+ if [[ "$AUTOPILOT_ACTIVE" == "true" ]]; then
331
+ CURRENT_PHASE=$(echo "$AUTOPILOT_STATE" | jq -r '.phase // "unknown"')
332
+ CLEANED_UP=()
333
+
334
+ # Clean up ralph if active
335
+ if [[ -f .omc/ralph-state.json ]]; then
336
+ RALPH_STATE=$(cat .omc/ralph-state.json)
337
+ RALPH_ACTIVE=$(echo "$RALPH_STATE" | jq -r '.active // false')
338
+
339
+ if [[ "$RALPH_ACTIVE" == "true" ]]; then
340
+ LINKED_UW=$(echo "$RALPH_STATE" | jq -r '.linked_ultrawork // false')
341
+
342
+ # Clean linked ultrawork first
343
+ if [[ "$LINKED_UW" == "true" ]] && [[ -f .omc/ultrawork-state.json ]]; then
344
+ rm -f .omc/ultrawork-state.json
345
+ rm -f ~/.claude/ultrawork-state.json
346
+ CLEANED_UP+=("ultrawork")
347
+ fi
348
+
349
+ # Clean ralph
350
+ rm -f .omc/ralph-state.json
351
+ rm -f ~/.claude/ralph-state.json
352
+ rm -f .omc/ralph-verification.json
353
+ CLEANED_UP+=("ralph")
354
+ fi
355
+ fi
356
+
357
+ # Clean up ultraqa if active
358
+ if [[ -f .omc/ultraqa-state.json ]]; then
359
+ ULTRAQA_STATE=$(cat .omc/ultraqa-state.json)
360
+ ULTRAQA_ACTIVE=$(echo "$ULTRAQA_STATE" | jq -r '.active // false')
361
+
362
+ if [[ "$ULTRAQA_ACTIVE" == "true" ]]; then
363
+ rm -f .omc/ultraqa-state.json
364
+ CLEANED_UP+=("ultraqa")
365
+ fi
366
+ fi
367
+
368
+ # Mark autopilot inactive but preserve state for resume
369
+ echo "$AUTOPILOT_STATE" | jq '.active = false' > .omc/autopilot-state.json
370
+
371
+ echo "Autopilot cancelled at phase: $CURRENT_PHASE."
372
+
373
+ if [[ ${#CLEANED_UP[@]} -gt 0 ]]; then
374
+ echo "Cleaned up: ${CLEANED_UP[*]}"
375
+ fi
376
+
377
+ echo "Progress preserved for resume. Run /oh-my-claudecode:autopilot to continue."
378
+ CANCELLED_ANYTHING=true
379
+ exit 0
380
+ fi
381
+ fi
382
+
383
+ # 2. Check Ralph (if not handled by autopilot)
384
+ if [[ -f .omc/ralph-state.json ]]; then
385
+ RALPH_STATE=$(cat .omc/ralph-state.json)
386
+ RALPH_ACTIVE=$(echo "$RALPH_STATE" | jq -r '.active // false')
387
+
388
+ if [[ "$RALPH_ACTIVE" == "true" ]]; then
389
+ LINKED_UW=$(echo "$RALPH_STATE" | jq -r '.linked_ultrawork // false')
390
+
391
+ # Clean linked ultrawork first
392
+ if [[ "$LINKED_UW" == "true" ]] && [[ -f .omc/ultrawork-state.json ]]; then
393
+ UW_STATE=$(cat .omc/ultrawork-state.json)
394
+ UW_LINKED=$(echo "$UW_STATE" | jq -r '.linked_to_ralph // false')
395
+
396
+ # Only clear if it was linked to ralph
397
+ if [[ "$UW_LINKED" == "true" ]]; then
398
+ rm -f .omc/ultrawork-state.json
399
+ rm -f ~/.claude/ultrawork-state.json
400
+ echo "Cleaned up: ultrawork (linked to ralph)"
401
+ fi
402
+ fi
403
+
404
+ # Clean linked ecomode if present
405
+ LINKED_ECO=$(echo "$RALPH_STATE" | jq -r '.linked_ecomode // false')
406
+
407
+ if [[ "$LINKED_ECO" == "true" ]] && [[ -f .omc/ecomode-state.json ]]; then
408
+ ECO_STATE=$(cat .omc/ecomode-state.json)
409
+ ECO_LINKED=$(echo "$ECO_STATE" | jq -r '.linked_to_ralph // false')
410
+
411
+ if [[ "$ECO_LINKED" == "true" ]]; then
412
+ rm -f .omc/ecomode-state.json
413
+ rm -f ~/.claude/ecomode-state.json
414
+ echo "Cleaned up: ecomode (linked to ralph)"
415
+ fi
416
+ fi
417
+
418
+ # Clean ralph state (both local and global)
419
+ rm -f .omc/ralph-state.json
420
+ rm -f ~/.claude/ralph-state.json
421
+ rm -f .omc/ralph-plan-state.json
422
+ rm -f .omc/ralph-verification.json
423
+
424
+ echo "Ralph cancelled. Persistent mode deactivated."
425
+ CANCELLED_ANYTHING=true
426
+ exit 0
427
+ fi
428
+ fi
429
+
430
+ # 3. Check Ultrawork (standalone, not linked)
431
+ if [[ -f .omc/ultrawork-state.json ]]; then
432
+ UW_STATE=$(cat .omc/ultrawork-state.json)
433
+ UW_ACTIVE=$(echo "$UW_STATE" | jq -r '.active // false')
434
+
435
+ if [[ "$UW_ACTIVE" == "true" ]]; then
436
+ LINKED=$(echo "$UW_STATE" | jq -r '.linked_to_ralph // false')
437
+
438
+ if [[ "$LINKED" == "true" ]]; then
439
+ echo "Warning: Ultrawork is linked to Ralph, but Ralph is not active."
440
+ echo "Clearing ultrawork state anyway..."
441
+ fi
442
+
443
+ # Remove both local and global state
444
+ rm -f .omc/ultrawork-state.json
445
+ rm -f ~/.claude/ultrawork-state.json
446
+
447
+ echo "Ultrawork cancelled. Parallel execution mode deactivated."
448
+ CANCELLED_ANYTHING=true
449
+ exit 0
450
+ fi
451
+ fi
452
+
453
+ # 4. Check Ecomode (standalone, not linked)
454
+ if [[ -f .omc/ecomode-state.json ]]; then
455
+ ECO_STATE=$(cat .omc/ecomode-state.json)
456
+ ECO_ACTIVE=$(echo "$ECO_STATE" | jq -r '.active // false')
457
+
458
+ if [[ "$ECO_ACTIVE" == "true" ]]; then
459
+ LINKED=$(echo "$ECO_STATE" | jq -r '.linked_to_ralph // false')
460
+
461
+ if [[ "$LINKED" == "true" ]]; then
462
+ echo "Warning: Ecomode is linked to Ralph, but Ralph is not active."
463
+ echo "Clearing ecomode state anyway..."
464
+ fi
465
+
466
+ # Remove both local and global state
467
+ rm -f .omc/ecomode-state.json
468
+ rm -f ~/.claude/ecomode-state.json
469
+
470
+ echo "Ecomode cancelled. Token-efficient execution mode deactivated."
471
+ CANCELLED_ANYTHING=true
472
+ exit 0
473
+ fi
474
+ fi
475
+
476
+ # 5. Check UltraQA (standalone)
477
+ if [[ -f .omc/ultraqa-state.json ]]; then
478
+ ULTRAQA_STATE=$(cat .omc/ultraqa-state.json)
479
+ ULTRAQA_ACTIVE=$(echo "$ULTRAQA_STATE" | jq -r '.active // false')
480
+
481
+ if [[ "$ULTRAQA_ACTIVE" == "true" ]]; then
482
+ rm -f .omc/ultraqa-state.json
483
+ echo "UltraQA cancelled. QA cycling workflow stopped."
484
+ CANCELLED_ANYTHING=true
485
+ exit 0
486
+ fi
487
+ fi
488
+
489
+ # 6. Check Swarm (standalone)
490
+ if [[ -f .omc/swarm-state.json ]]; then
491
+ SWARM_STATE=$(cat .omc/swarm-state.json)
492
+ SWARM_ACTIVE=$(echo "$SWARM_STATE" | jq -r '.active // false')
493
+
494
+ if [[ "$SWARM_ACTIVE" == "true" ]]; then
495
+ rm -f .omc/swarm-state.json
496
+ rm -f .omc/state/swarm-tasks.json
497
+ echo "Swarm cancelled. Coordinated agents stopped."
498
+ CANCELLED_ANYTHING=true
499
+ exit 0
500
+ fi
501
+ fi
502
+
503
+ # 7. Check Ultrapilot (standalone)
504
+ if [[ -f .omc/ultrapilot-state.json ]]; then
505
+ ULTRAPILOT_STATE=$(cat .omc/ultrapilot-state.json)
506
+ ULTRAPILOT_ACTIVE=$(echo "$ULTRAPILOT_STATE" | jq -r '.active // false')
507
+
508
+ if [[ "$ULTRAPILOT_ACTIVE" == "true" ]]; then
509
+ rm -f .omc/ultrapilot-state.json
510
+ echo "Ultrapilot cancelled. Parallel autopilot workers stopped."
511
+ CANCELLED_ANYTHING=true
512
+ exit 0
513
+ fi
514
+ fi
515
+
516
+ # 8. Check Pipeline (standalone)
517
+ if [[ -f .omc/pipeline-state.json ]]; then
518
+ PIPELINE_STATE=$(cat .omc/pipeline-state.json)
519
+ PIPELINE_ACTIVE=$(echo "$PIPELINE_STATE" | jq -r '.active // false')
520
+
521
+ if [[ "$PIPELINE_ACTIVE" == "true" ]]; then
522
+ rm -f .omc/pipeline-state.json
523
+ echo "Pipeline cancelled. Sequential agent chain stopped."
524
+ CANCELLED_ANYTHING=true
525
+ exit 0
526
+ fi
527
+ fi
528
+
529
+ # No active modes found
530
+ if [[ "$CANCELLED_ANYTHING" == "false" ]]; then
531
+ echo "No active OMC modes detected."
532
+ echo ""
533
+ echo "Checked for:"
534
+ echo " - Autopilot (.omc/autopilot-state.json)"
535
+ echo " - Ralph (.omc/ralph-state.json)"
536
+ echo " - Ultrawork (.omc/ultrawork-state.json)"
537
+ echo " - Ecomode (.omc/ecomode-state.json)"
538
+ echo " - UltraQA (.omc/ultraqa-state.json)"
539
+ echo " - Swarm (.omc/swarm-state.json)"
540
+ echo " - Ultrapilot (.omc/ultrapilot-state.json)"
541
+ echo " - Pipeline (.omc/pipeline-state.json)"
542
+ echo ""
543
+ echo "Use --force to clear all state files anyway."
544
+ fi
545
+ ```
546
+
547
+ ## Messages Reference
548
+
549
+ | Mode | Success Message |
550
+ |------|-----------------|
551
+ | Autopilot | "Autopilot cancelled at phase: {phase}. Progress preserved for resume." |
552
+ | Ralph | "Ralph cancelled. Persistent mode deactivated." |
553
+ | Ultrawork | "Ultrawork cancelled. Parallel execution mode deactivated." |
554
+ | Ecomode | "Ecomode cancelled. Token-efficient execution mode deactivated." |
555
+ | UltraQA | "UltraQA cancelled. QA cycling workflow stopped." |
556
+ | Swarm | "Swarm cancelled. Coordinated agents stopped." |
557
+ | Ultrapilot | "Ultrapilot cancelled. Parallel autopilot workers stopped." |
558
+ | Pipeline | "Pipeline cancelled. Sequential agent chain stopped." |
559
+ | Force | "All OMC modes cleared. You are free to start fresh." |
560
+ | None | "No active OMC modes detected." |
561
+
562
+ ## What Gets Preserved
563
+
564
+ | Mode | State Preserved | Resume Command |
565
+ |------|-----------------|----------------|
566
+ | Autopilot | Yes (phase, files, spec, plan, verdicts) | `/oh-my-claudecode:autopilot` |
567
+ | Ralph | No | N/A |
568
+ | Ultrawork | No | N/A |
569
+ | UltraQA | No | N/A |
570
+ | Swarm | No | N/A |
571
+ | Ultrapilot | No | N/A |
572
+ | Pipeline | No | N/A |
573
+
574
+ ## Notes
575
+
576
+ - **Dependency-aware**: Autopilot cancellation cleans up Ralph and UltraQA
577
+ - **Link-aware**: Ralph cancellation cleans up linked Ultrawork or Ecomode
578
+ - **Safe**: Only clears linked Ultrawork, preserves standalone Ultrawork
579
+ - **Dual-location**: Clears both `.omc/` and `~/.claude/` state files
580
+ - **Resume-friendly**: Autopilot state is preserved for seamless resume
@@ -1,7 +1,6 @@
1
1
  ---
2
2
  name: cancel-autopilot
3
3
  description: Cancel active autopilot session
4
- user-invocable: true
5
4
  ---
6
5
 
7
6
  # Cancel Autopilot Skill
@@ -0,0 +1,41 @@
1
+ ---
2
+ name: cancel-ecomode
3
+ description: Cancel active Ecomode mode
4
+ ---
5
+
6
+ # Cancel Ecomode
7
+
8
+ [ECOMODE CANCELLED]
9
+
10
+ The Ecomode has been cancelled. Clearing state files.
11
+
12
+ ## MANDATORY ACTION
13
+
14
+ **First**, check if ecomode is linked to an active Ralph loop:
15
+
16
+ ```bash
17
+ cat .omc/ecomode-state.json 2>/dev/null | jq -r '.linked_to_ralph // false'
18
+ ```
19
+
20
+ **If linked_to_ralph is true**: Use `/oh-my-claudecode:cancel-ralph` instead to cancel both Ralph and its linked Ecomode.
21
+
22
+ **Otherwise**, execute this command to cancel Ecomode:
23
+
24
+ ```bash
25
+ mkdir -p .omc && \
26
+ echo '{"active": false, "cancelled_at": "'$(date -Iseconds)'", "reason": "User cancelled via /cancel-ecomode"}' > .omc/ecomode-state.json && \
27
+ echo '{"active": false, "cancelled_at": "'$(date -Iseconds)'", "reason": "User cancelled via /cancel-ecomode"}' > ~/.claude/ecomode-state.json
28
+ ```
29
+
30
+ After running this command, ecomode will be deactivated and the HUD will update.
31
+
32
+ ## Note on Linked Modes
33
+
34
+ Since v3.5, Ralph can activate either Ultrawork OR Ecomode based on user preference. If you see `linked_to_ralph: true` in the ecomode state, it means Ecomode was auto-activated by Ralph. In this case:
35
+ - Use `/oh-my-claudecode:cancel-ralph` to cancel both modes
36
+ - If you only cancel ecomode, Ralph will continue but without parallel execution benefits
37
+
38
+ ## To Start Fresh
39
+
40
+ - `/oh-my-claudecode:ecomode "task"` - Start ecomode only (standalone)
41
+ - `/oh-my-claudecode:ralph "task"` - Start ralph with default execution mode
@@ -1,7 +1,6 @@
1
1
  ---
2
2
  name: cancel-ralph
3
3
  description: Cancel active Ralph (and linked ultrawork if auto-activated)
4
- user-invocable: true
5
4
  ---
6
5
 
7
6
  # Cancel Ralph
@@ -1,7 +1,6 @@
1
1
  ---
2
2
  name: cancel-ultraqa
3
3
  description: Cancel active UltraQA cycling workflow
4
- user-invocable: true
5
4
  ---
6
5
 
7
6
  # Cancel UltraQA
@@ -1,7 +1,6 @@
1
1
  ---
2
2
  name: cancel-ultrawork
3
3
  description: Cancel active Ultrawork mode
4
- user-invocable: true
5
4
  ---
6
5
 
7
6
  # Cancel Ultrawork