poly-weaver 0.2.5

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 (365) hide show
  1. package/README.md +388 -0
  2. package/dist/agents/implementors/adapter.d.ts +18 -0
  3. package/dist/agents/implementors/adapter.d.ts.map +1 -0
  4. package/dist/agents/implementors/adapter.js +36 -0
  5. package/dist/agents/implementors/adapter.js.map +1 -0
  6. package/dist/agents/implementors/dsl.d.ts +11 -0
  7. package/dist/agents/implementors/dsl.d.ts.map +1 -0
  8. package/dist/agents/implementors/dsl.js +9 -0
  9. package/dist/agents/implementors/dsl.js.map +1 -0
  10. package/dist/agents/implementors/handler.d.ts +10 -0
  11. package/dist/agents/implementors/handler.d.ts.map +1 -0
  12. package/dist/agents/implementors/handler.js +55 -0
  13. package/dist/agents/implementors/handler.js.map +1 -0
  14. package/dist/agents/implementors/index.d.ts +10 -0
  15. package/dist/agents/implementors/index.d.ts.map +1 -0
  16. package/dist/agents/implementors/index.js +21 -0
  17. package/dist/agents/implementors/index.js.map +1 -0
  18. package/dist/agents/implementors/prompts.d.ts +20 -0
  19. package/dist/agents/implementors/prompts.d.ts.map +1 -0
  20. package/dist/agents/implementors/prompts.js +72 -0
  21. package/dist/agents/implementors/prompts.js.map +1 -0
  22. package/dist/agents/implementors/types.d.ts +24 -0
  23. package/dist/agents/implementors/types.d.ts.map +1 -0
  24. package/dist/agents/implementors/types.js +2 -0
  25. package/dist/agents/implementors/types.js.map +1 -0
  26. package/dist/agents/index.d.ts +12 -0
  27. package/dist/agents/index.d.ts.map +1 -0
  28. package/dist/agents/index.js +25 -0
  29. package/dist/agents/index.js.map +1 -0
  30. package/dist/agents/planners/adapter.d.ts +22 -0
  31. package/dist/agents/planners/adapter.d.ts.map +1 -0
  32. package/dist/agents/planners/adapter.js +67 -0
  33. package/dist/agents/planners/adapter.js.map +1 -0
  34. package/dist/agents/planners/dsl.d.ts +13 -0
  35. package/dist/agents/planners/dsl.d.ts.map +1 -0
  36. package/dist/agents/planners/dsl.js +9 -0
  37. package/dist/agents/planners/dsl.js.map +1 -0
  38. package/dist/agents/planners/handler.d.ts +9 -0
  39. package/dist/agents/planners/handler.d.ts.map +1 -0
  40. package/dist/agents/planners/handler.js +86 -0
  41. package/dist/agents/planners/handler.js.map +1 -0
  42. package/dist/agents/planners/index.d.ts +10 -0
  43. package/dist/agents/planners/index.d.ts.map +1 -0
  44. package/dist/agents/planners/index.js +21 -0
  45. package/dist/agents/planners/index.js.map +1 -0
  46. package/dist/agents/planners/prompts.d.ts +30 -0
  47. package/dist/agents/planners/prompts.d.ts.map +1 -0
  48. package/dist/agents/planners/prompts.js +153 -0
  49. package/dist/agents/planners/prompts.js.map +1 -0
  50. package/dist/agents/planners/types.d.ts +37 -0
  51. package/dist/agents/planners/types.d.ts.map +1 -0
  52. package/dist/agents/planners/types.js +2 -0
  53. package/dist/agents/planners/types.js.map +1 -0
  54. package/dist/agents/registry.d.ts +29 -0
  55. package/dist/agents/registry.d.ts.map +1 -0
  56. package/dist/agents/registry.js +44 -0
  57. package/dist/agents/registry.js.map +1 -0
  58. package/dist/agents/reviewers/adapter.d.ts +10 -0
  59. package/dist/agents/reviewers/adapter.d.ts.map +1 -0
  60. package/dist/agents/reviewers/adapter.js +35 -0
  61. package/dist/agents/reviewers/adapter.js.map +1 -0
  62. package/dist/agents/reviewers/dsl.d.ts +12 -0
  63. package/dist/agents/reviewers/dsl.d.ts.map +1 -0
  64. package/dist/agents/reviewers/dsl.js +9 -0
  65. package/dist/agents/reviewers/dsl.js.map +1 -0
  66. package/dist/agents/reviewers/handler.d.ts +8 -0
  67. package/dist/agents/reviewers/handler.d.ts.map +1 -0
  68. package/dist/agents/reviewers/handler.js +48 -0
  69. package/dist/agents/reviewers/handler.js.map +1 -0
  70. package/dist/agents/reviewers/index.d.ts +10 -0
  71. package/dist/agents/reviewers/index.d.ts.map +1 -0
  72. package/dist/agents/reviewers/index.js +33 -0
  73. package/dist/agents/reviewers/index.js.map +1 -0
  74. package/dist/agents/reviewers/prompts.d.ts +25 -0
  75. package/dist/agents/reviewers/prompts.d.ts.map +1 -0
  76. package/dist/agents/reviewers/prompts.js +143 -0
  77. package/dist/agents/reviewers/prompts.js.map +1 -0
  78. package/dist/agents/reviewers/types.d.ts +35 -0
  79. package/dist/agents/reviewers/types.d.ts.map +1 -0
  80. package/dist/agents/reviewers/types.js +10 -0
  81. package/dist/agents/reviewers/types.js.map +1 -0
  82. package/dist/agents/runner.d.ts +62 -0
  83. package/dist/agents/runner.d.ts.map +1 -0
  84. package/dist/agents/runner.js +136 -0
  85. package/dist/agents/runner.js.map +1 -0
  86. package/dist/agents/simplifiers/adapter.d.ts +12 -0
  87. package/dist/agents/simplifiers/adapter.d.ts.map +1 -0
  88. package/dist/agents/simplifiers/adapter.js +27 -0
  89. package/dist/agents/simplifiers/adapter.js.map +1 -0
  90. package/dist/agents/simplifiers/dsl.d.ts +11 -0
  91. package/dist/agents/simplifiers/dsl.d.ts.map +1 -0
  92. package/dist/agents/simplifiers/dsl.js +9 -0
  93. package/dist/agents/simplifiers/dsl.js.map +1 -0
  94. package/dist/agents/simplifiers/handler.d.ts +9 -0
  95. package/dist/agents/simplifiers/handler.d.ts.map +1 -0
  96. package/dist/agents/simplifiers/handler.js +39 -0
  97. package/dist/agents/simplifiers/handler.js.map +1 -0
  98. package/dist/agents/simplifiers/index.d.ts +10 -0
  99. package/dist/agents/simplifiers/index.d.ts.map +1 -0
  100. package/dist/agents/simplifiers/index.js +20 -0
  101. package/dist/agents/simplifiers/index.js.map +1 -0
  102. package/dist/agents/simplifiers/prompts.d.ts +11 -0
  103. package/dist/agents/simplifiers/prompts.d.ts.map +1 -0
  104. package/dist/agents/simplifiers/prompts.js +24 -0
  105. package/dist/agents/simplifiers/prompts.js.map +1 -0
  106. package/dist/agents/simplifiers/types.d.ts +15 -0
  107. package/dist/agents/simplifiers/types.d.ts.map +1 -0
  108. package/dist/agents/simplifiers/types.js +2 -0
  109. package/dist/agents/simplifiers/types.js.map +1 -0
  110. package/dist/agents/whip-hint.d.ts +23 -0
  111. package/dist/agents/whip-hint.d.ts.map +1 -0
  112. package/dist/agents/whip-hint.js +41 -0
  113. package/dist/agents/whip-hint.js.map +1 -0
  114. package/dist/ansi.d.ts +39 -0
  115. package/dist/ansi.d.ts.map +1 -0
  116. package/dist/ansi.js +158 -0
  117. package/dist/ansi.js.map +1 -0
  118. package/dist/cli.d.ts +3 -0
  119. package/dist/cli.d.ts.map +1 -0
  120. package/dist/cli.js +309 -0
  121. package/dist/cli.js.map +1 -0
  122. package/dist/config.d.ts +41 -0
  123. package/dist/config.d.ts.map +1 -0
  124. package/dist/config.js +55 -0
  125. package/dist/config.js.map +1 -0
  126. package/dist/dsl.d.ts +25 -0
  127. package/dist/dsl.d.ts.map +1 -0
  128. package/dist/dsl.js +16 -0
  129. package/dist/dsl.js.map +1 -0
  130. package/dist/flow/artifacts.d.ts +13 -0
  131. package/dist/flow/artifacts.d.ts.map +1 -0
  132. package/dist/flow/artifacts.js +27 -0
  133. package/dist/flow/artifacts.js.map +1 -0
  134. package/dist/flow/built-in/default.d.ts +15 -0
  135. package/dist/flow/built-in/default.d.ts.map +1 -0
  136. package/dist/flow/built-in/default.js +123 -0
  137. package/dist/flow/built-in/default.js.map +1 -0
  138. package/dist/flow/built-in/default.ts +152 -0
  139. package/dist/flow/built-in/why-so-serious.d.ts +15 -0
  140. package/dist/flow/built-in/why-so-serious.d.ts.map +1 -0
  141. package/dist/flow/built-in/why-so-serious.js +147 -0
  142. package/dist/flow/built-in/why-so-serious.js.map +1 -0
  143. package/dist/flow/custom/AUTHORING.md +558 -0
  144. package/dist/flow/custom/index.d.ts +3 -0
  145. package/dist/flow/custom/index.d.ts.map +1 -0
  146. package/dist/flow/custom/index.js +2 -0
  147. package/dist/flow/custom/index.js.map +1 -0
  148. package/dist/flow/custom/load.d.ts +19 -0
  149. package/dist/flow/custom/load.d.ts.map +1 -0
  150. package/dist/flow/custom/load.js +117 -0
  151. package/dist/flow/custom/load.js.map +1 -0
  152. package/dist/flow/diagram.d.ts +37 -0
  153. package/dist/flow/diagram.d.ts.map +1 -0
  154. package/dist/flow/diagram.js +596 -0
  155. package/dist/flow/diagram.js.map +1 -0
  156. package/dist/flow/dsl.d.ts +65 -0
  157. package/dist/flow/dsl.d.ts.map +1 -0
  158. package/dist/flow/dsl.js +210 -0
  159. package/dist/flow/dsl.js.map +1 -0
  160. package/dist/flow/executor.d.ts +22 -0
  161. package/dist/flow/executor.d.ts.map +1 -0
  162. package/dist/flow/executor.js +185 -0
  163. package/dist/flow/executor.js.map +1 -0
  164. package/dist/flow/index.d.ts +16 -0
  165. package/dist/flow/index.d.ts.map +1 -0
  166. package/dist/flow/index.js +12 -0
  167. package/dist/flow/index.js.map +1 -0
  168. package/dist/flow/inspect.d.ts +21 -0
  169. package/dist/flow/inspect.d.ts.map +1 -0
  170. package/dist/flow/inspect.js +54 -0
  171. package/dist/flow/inspect.js.map +1 -0
  172. package/dist/flow/neighbors.d.ts +10 -0
  173. package/dist/flow/neighbors.d.ts.map +1 -0
  174. package/dist/flow/neighbors.js +48 -0
  175. package/dist/flow/neighbors.js.map +1 -0
  176. package/dist/flow/params.d.ts +21 -0
  177. package/dist/flow/params.d.ts.map +1 -0
  178. package/dist/flow/params.js +44 -0
  179. package/dist/flow/params.js.map +1 -0
  180. package/dist/flow/types.d.ts +159 -0
  181. package/dist/flow/types.d.ts.map +1 -0
  182. package/dist/flow/types.js +33 -0
  183. package/dist/flow/types.js.map +1 -0
  184. package/dist/flow-editor/index.d.ts +9 -0
  185. package/dist/flow-editor/index.d.ts.map +1 -0
  186. package/dist/flow-editor/index.js +6 -0
  187. package/dist/flow-editor/index.js.map +1 -0
  188. package/dist/flow-editor/llm.d.ts +33 -0
  189. package/dist/flow-editor/llm.d.ts.map +1 -0
  190. package/dist/flow-editor/llm.js +137 -0
  191. package/dist/flow-editor/llm.js.map +1 -0
  192. package/dist/flow-editor/names.d.ts +5 -0
  193. package/dist/flow-editor/names.d.ts.map +1 -0
  194. package/dist/flow-editor/names.js +21 -0
  195. package/dist/flow-editor/names.js.map +1 -0
  196. package/dist/flow-editor/save.d.ts +59 -0
  197. package/dist/flow-editor/save.d.ts.map +1 -0
  198. package/dist/flow-editor/save.js +143 -0
  199. package/dist/flow-editor/save.js.map +1 -0
  200. package/dist/flow-editor/tui.d.ts +56 -0
  201. package/dist/flow-editor/tui.d.ts.map +1 -0
  202. package/dist/flow-editor/tui.js +628 -0
  203. package/dist/flow-editor/tui.js.map +1 -0
  204. package/dist/flow-editor/validate.d.ts +39 -0
  205. package/dist/flow-editor/validate.d.ts.map +1 -0
  206. package/dist/flow-editor/validate.js +192 -0
  207. package/dist/flow-editor/validate.js.map +1 -0
  208. package/dist/git-info.d.ts +6 -0
  209. package/dist/git-info.d.ts.map +1 -0
  210. package/dist/git-info.js +26 -0
  211. package/dist/git-info.js.map +1 -0
  212. package/dist/orchestrator.d.ts +55 -0
  213. package/dist/orchestrator.d.ts.map +1 -0
  214. package/dist/orchestrator.js +240 -0
  215. package/dist/orchestrator.js.map +1 -0
  216. package/dist/preflight.d.ts +30 -0
  217. package/dist/preflight.d.ts.map +1 -0
  218. package/dist/preflight.js +107 -0
  219. package/dist/preflight.js.map +1 -0
  220. package/dist/preview-panel.d.ts +87 -0
  221. package/dist/preview-panel.d.ts.map +1 -0
  222. package/dist/preview-panel.js +418 -0
  223. package/dist/preview-panel.js.map +1 -0
  224. package/dist/prompts.d.ts +34 -0
  225. package/dist/prompts.d.ts.map +1 -0
  226. package/dist/prompts.js +67 -0
  227. package/dist/prompts.js.map +1 -0
  228. package/dist/providers/base-completion.d.ts +56 -0
  229. package/dist/providers/base-completion.d.ts.map +1 -0
  230. package/dist/providers/base-completion.js +111 -0
  231. package/dist/providers/base-completion.js.map +1 -0
  232. package/dist/providers/claude/completion.d.ts +28 -0
  233. package/dist/providers/claude/completion.d.ts.map +1 -0
  234. package/dist/providers/claude/completion.js +103 -0
  235. package/dist/providers/claude/completion.js.map +1 -0
  236. package/dist/providers/claude/index.d.ts +2 -0
  237. package/dist/providers/claude/index.d.ts.map +1 -0
  238. package/dist/providers/claude/index.js +2 -0
  239. package/dist/providers/claude/index.js.map +1 -0
  240. package/dist/providers/claude/session.d.ts +55 -0
  241. package/dist/providers/claude/session.d.ts.map +1 -0
  242. package/dist/providers/claude/session.js +172 -0
  243. package/dist/providers/claude/session.js.map +1 -0
  244. package/dist/providers/claude/strategy.d.ts +14 -0
  245. package/dist/providers/claude/strategy.d.ts.map +1 -0
  246. package/dist/providers/claude/strategy.js +38 -0
  247. package/dist/providers/claude/strategy.js.map +1 -0
  248. package/dist/providers/codex/completion.d.ts +21 -0
  249. package/dist/providers/codex/completion.d.ts.map +1 -0
  250. package/dist/providers/codex/completion.js +63 -0
  251. package/dist/providers/codex/completion.js.map +1 -0
  252. package/dist/providers/codex/index.d.ts +2 -0
  253. package/dist/providers/codex/index.d.ts.map +1 -0
  254. package/dist/providers/codex/index.js +2 -0
  255. package/dist/providers/codex/index.js.map +1 -0
  256. package/dist/providers/codex/session.d.ts +46 -0
  257. package/dist/providers/codex/session.d.ts.map +1 -0
  258. package/dist/providers/codex/session.js +151 -0
  259. package/dist/providers/codex/session.js.map +1 -0
  260. package/dist/providers/codex/strategy.d.ts +14 -0
  261. package/dist/providers/codex/strategy.d.ts.map +1 -0
  262. package/dist/providers/codex/strategy.js +41 -0
  263. package/dist/providers/codex/strategy.js.map +1 -0
  264. package/dist/providers/copilot/completion.d.ts +22 -0
  265. package/dist/providers/copilot/completion.d.ts.map +1 -0
  266. package/dist/providers/copilot/completion.js +65 -0
  267. package/dist/providers/copilot/completion.js.map +1 -0
  268. package/dist/providers/copilot/index.d.ts +2 -0
  269. package/dist/providers/copilot/index.d.ts.map +1 -0
  270. package/dist/providers/copilot/index.js +2 -0
  271. package/dist/providers/copilot/index.js.map +1 -0
  272. package/dist/providers/copilot/session.d.ts +39 -0
  273. package/dist/providers/copilot/session.d.ts.map +1 -0
  274. package/dist/providers/copilot/session.js +185 -0
  275. package/dist/providers/copilot/session.js.map +1 -0
  276. package/dist/providers/copilot/strategy.d.ts +14 -0
  277. package/dist/providers/copilot/strategy.d.ts.map +1 -0
  278. package/dist/providers/copilot/strategy.js +48 -0
  279. package/dist/providers/copilot/strategy.js.map +1 -0
  280. package/dist/providers/index.d.ts +8 -0
  281. package/dist/providers/index.d.ts.map +1 -0
  282. package/dist/providers/index.js +6 -0
  283. package/dist/providers/index.js.map +1 -0
  284. package/dist/providers/invoke.d.ts +14 -0
  285. package/dist/providers/invoke.d.ts.map +1 -0
  286. package/dist/providers/invoke.js +55 -0
  287. package/dist/providers/invoke.js.map +1 -0
  288. package/dist/providers/path-utils.d.ts +7 -0
  289. package/dist/providers/path-utils.d.ts.map +1 -0
  290. package/dist/providers/path-utils.js +9 -0
  291. package/dist/providers/path-utils.js.map +1 -0
  292. package/dist/providers/prompt-file.d.ts +8 -0
  293. package/dist/providers/prompt-file.d.ts.map +1 -0
  294. package/dist/providers/prompt-file.js +17 -0
  295. package/dist/providers/prompt-file.js.map +1 -0
  296. package/dist/providers/registry.d.ts +17 -0
  297. package/dist/providers/registry.d.ts.map +1 -0
  298. package/dist/providers/registry.js +49 -0
  299. package/dist/providers/registry.js.map +1 -0
  300. package/dist/providers/types.d.ts +145 -0
  301. package/dist/providers/types.d.ts.map +1 -0
  302. package/dist/providers/types.js +5 -0
  303. package/dist/providers/types.js.map +1 -0
  304. package/dist/providers/version.d.ts +11 -0
  305. package/dist/providers/version.d.ts.map +1 -0
  306. package/dist/providers/version.js +31 -0
  307. package/dist/providers/version.js.map +1 -0
  308. package/dist/pty/exit.d.ts +12 -0
  309. package/dist/pty/exit.d.ts.map +1 -0
  310. package/dist/pty/exit.js +43 -0
  311. package/dist/pty/exit.js.map +1 -0
  312. package/dist/pty/spawn.d.ts +20 -0
  313. package/dist/pty/spawn.d.ts.map +1 -0
  314. package/dist/pty/spawn.js +163 -0
  315. package/dist/pty/spawn.js.map +1 -0
  316. package/dist/pty/types.d.ts +44 -0
  317. package/dist/pty/types.d.ts.map +1 -0
  318. package/dist/pty/types.js +2 -0
  319. package/dist/pty/types.js.map +1 -0
  320. package/dist/session/dir.d.ts +19 -0
  321. package/dist/session/dir.d.ts.map +1 -0
  322. package/dist/session/dir.js +31 -0
  323. package/dist/session/dir.js.map +1 -0
  324. package/dist/session/locator.d.ts +28 -0
  325. package/dist/session/locator.d.ts.map +1 -0
  326. package/dist/session/locator.js +88 -0
  327. package/dist/session/locator.js.map +1 -0
  328. package/dist/session/reader.d.ts +12 -0
  329. package/dist/session/reader.d.ts.map +1 -0
  330. package/dist/session/reader.js +94 -0
  331. package/dist/session/reader.js.map +1 -0
  332. package/dist/startup-tui.d.ts +75 -0
  333. package/dist/startup-tui.d.ts.map +1 -0
  334. package/dist/startup-tui.js +504 -0
  335. package/dist/startup-tui.js.map +1 -0
  336. package/dist/status-bar.d.ts +29 -0
  337. package/dist/status-bar.d.ts.map +1 -0
  338. package/dist/status-bar.js +135 -0
  339. package/dist/status-bar.js.map +1 -0
  340. package/dist/terminal-input.d.ts +51 -0
  341. package/dist/terminal-input.d.ts.map +1 -0
  342. package/dist/terminal-input.js +212 -0
  343. package/dist/terminal-input.js.map +1 -0
  344. package/dist/user/dsl.d.ts +13 -0
  345. package/dist/user/dsl.d.ts.map +1 -0
  346. package/dist/user/dsl.js +19 -0
  347. package/dist/user/dsl.js.map +1 -0
  348. package/dist/user/handler.d.ts +16 -0
  349. package/dist/user/handler.d.ts.map +1 -0
  350. package/dist/user/handler.js +49 -0
  351. package/dist/user/handler.js.map +1 -0
  352. package/dist/user/index.d.ts +5 -0
  353. package/dist/user/index.d.ts.map +1 -0
  354. package/dist/user/index.js +4 -0
  355. package/dist/user/index.js.map +1 -0
  356. package/dist/user/prompt.d.ts +86 -0
  357. package/dist/user/prompt.d.ts.map +1 -0
  358. package/dist/user/prompt.js +320 -0
  359. package/dist/user/prompt.js.map +1 -0
  360. package/dist/version.d.ts +2 -0
  361. package/dist/version.d.ts.map +1 -0
  362. package/dist/version.js +4 -0
  363. package/dist/version.js.map +1 -0
  364. package/package.json +50 -0
  365. package/schemas/review-verdict.json +41 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import type { FlowParamValue } from "./flow/types.js";
2
+ export interface CliOptions {
3
+ task: string;
4
+ workdir: string;
5
+ verbose: boolean;
6
+ opinionless: boolean;
7
+ yolo: boolean;
8
+ whipMode: boolean;
9
+ configPath?: string;
10
+ /** Dynamic flow-param values keyed by FlowParam.key */
11
+ [key: string]: FlowParamValue | undefined;
12
+ }
13
+ export interface ConfigFile {
14
+ opinionless?: boolean;
15
+ yolo?: boolean;
16
+ whipMode?: boolean;
17
+ /** Dynamic flow-param values keyed by FlowParam.key */
18
+ [key: string]: FlowParamValue | undefined;
19
+ }
20
+ /**
21
+ * Resolve the effective yolo value from CLI, file config, and user config.
22
+ *
23
+ * Precedence: --no-yolo (CLI) > file config > user config > true (default).
24
+ */
25
+ export declare function resolveYolo(noYoloPassed: boolean, fileConfig: ConfigFile, userConfig: ConfigFile): boolean;
26
+ /**
27
+ * Resolve the effective whipMode value from CLI, file config, and user config.
28
+ *
29
+ * Precedence: CLI (--whip-mode / --no-whip-mode) > file config > user config > false (default).
30
+ */
31
+ export declare function resolveWhipMode(cliValue: boolean | undefined, fileConfig: ConfigFile, userConfig: ConfigFile): boolean;
32
+ export declare function getUserConfigPath(): string;
33
+ /**
34
+ * Load a config file (JSON) and merge with CLI options.
35
+ * CLI options take precedence over config file values.
36
+ */
37
+ export declare function loadConfig(configPath: string): Promise<ConfigFile>;
38
+ export declare function loadUserConfig(): Promise<ConfigFile>;
39
+ export declare function getFlowsDir(): string;
40
+ export declare function saveUserConfig(config: ConfigFile): Promise<void>;
41
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAC;CAC3C;AAED,MAAM,WAAW,UAAU;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAC;CAC3C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CACzB,YAAY,EAAE,OAAO,EACrB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU,GACrB,OAAO,CAKT;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,OAAO,GAAG,SAAS,EAC7B,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU,GACrB,OAAO,CAKT;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAC9B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,CAAC,CAGrB;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,CAM1D;AAED,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAItE"}
package/dist/config.js ADDED
@@ -0,0 +1,55 @@
1
+ import { readFile, writeFile, mkdir } from "node:fs/promises";
2
+ import { homedir } from "node:os";
3
+ import { join, dirname } from "node:path";
4
+ /**
5
+ * Resolve the effective yolo value from CLI, file config, and user config.
6
+ *
7
+ * Precedence: --no-yolo (CLI) > file config > user config > true (default).
8
+ */
9
+ export function resolveYolo(noYoloPassed, fileConfig, userConfig) {
10
+ if (noYoloPassed)
11
+ return false;
12
+ return fileConfig.yolo
13
+ ?? userConfig.yolo
14
+ ?? true;
15
+ }
16
+ /**
17
+ * Resolve the effective whipMode value from CLI, file config, and user config.
18
+ *
19
+ * Precedence: CLI (--whip-mode / --no-whip-mode) > file config > user config > false (default).
20
+ */
21
+ export function resolveWhipMode(cliValue, fileConfig, userConfig) {
22
+ if (cliValue !== undefined)
23
+ return cliValue;
24
+ return fileConfig.whipMode
25
+ ?? userConfig.whipMode
26
+ ?? false;
27
+ }
28
+ export function getUserConfigPath() {
29
+ return join(homedir(), ".poly-weaver", "config.json");
30
+ }
31
+ /**
32
+ * Load a config file (JSON) and merge with CLI options.
33
+ * CLI options take precedence over config file values.
34
+ */
35
+ export async function loadConfig(configPath) {
36
+ const raw = await readFile(configPath, "utf-8");
37
+ return JSON.parse(raw);
38
+ }
39
+ export async function loadUserConfig() {
40
+ try {
41
+ return await loadConfig(getUserConfigPath());
42
+ }
43
+ catch {
44
+ return {};
45
+ }
46
+ }
47
+ export function getFlowsDir() {
48
+ return join(homedir(), ".poly-weaver", "flows");
49
+ }
50
+ export async function saveUserConfig(config) {
51
+ const configPath = getUserConfigPath();
52
+ await mkdir(dirname(configPath), { recursive: true });
53
+ await writeFile(configPath, JSON.stringify(config, null, 2) + "\n", "utf-8");
54
+ }
55
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuB1C;;;;GAIG;AACH,MAAM,UAAU,WAAW,CACzB,YAAqB,EACrB,UAAsB,EACtB,UAAsB;IAEtB,IAAI,YAAY;QAAE,OAAO,KAAK,CAAC;IAC/B,OAAQ,UAAU,CAAC,IAA4B;WACzC,UAAU,CAAC,IAA4B;WACxC,IAAI,CAAC;AACZ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAC7B,QAA6B,EAC7B,UAAsB,EACtB,UAAsB;IAEtB,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IAC5C,OAAQ,UAAU,CAAC,QAAgC;WAC7C,UAAU,CAAC,QAAgC;WAC5C,KAAK,CAAC;AACb,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;AACxD,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,UAAkB;IAElB,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAChD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAe,CAAC;AACvC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,IAAI,CAAC;QACH,OAAO,MAAM,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,MAAkB;IACrD,MAAM,UAAU,GAAG,iBAAiB,EAAE,CAAC;IACvC,MAAM,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtD,MAAM,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;AAC/E,CAAC"}
package/dist/dsl.d.ts ADDED
@@ -0,0 +1,25 @@
1
+ import { defineFlow, loop, artifactData, ctxField, cyclePhase, predicateLabel } from "./flow/dsl.js";
2
+ import { user } from "./user/dsl.js";
3
+ import { plan } from "./agents/planners/dsl.js";
4
+ import { review } from "./agents/reviewers/dsl.js";
5
+ import { implement } from "./agents/implementors/dsl.js";
6
+ import { simplify } from "./agents/simplifiers/dsl.js";
7
+ /** Toolkit passed to flow factory functions. */
8
+ export declare const flowDSL: {
9
+ readonly defineFlow: typeof defineFlow;
10
+ readonly loop: typeof loop;
11
+ readonly artifactData: typeof artifactData;
12
+ readonly ctxField: typeof ctxField;
13
+ readonly cyclePhase: typeof cyclePhase;
14
+ readonly predicateLabel: typeof predicateLabel;
15
+ readonly plan: typeof plan;
16
+ readonly review: typeof review;
17
+ readonly implement: typeof implement;
18
+ readonly simplify: typeof simplify;
19
+ readonly user: typeof user;
20
+ readonly TASK: "task";
21
+ };
22
+ export type FlowDSL = typeof flowDSL;
23
+ export type { FlowTemplate, FlowDefinition, FlowStep, FlowParam, FlowParamValues, FlowParamValue, AgentStep, UserStep, LoopStep, BaseStep, StepContext, DriverFlowParam, NumberFlowParam, BooleanFlowParam, BuiltinRole, DriverName, } from "./flow/types.js";
24
+ export type { FlowPredicate, ArtifactDataPredicate, CtxFieldPredicate, UntilCondition, WhenCondition, CyclePhaseLabel, PhaseLabelSpec, } from "./flow/dsl.js";
25
+ //# sourceMappingURL=dsl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dsl.d.ts","sourceRoot":"","sources":["../src/dsl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACrG,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAGvD,gDAAgD;AAChD,eAAO,MAAM,OAAO;;;;;;;;;;;;;CAMV,CAAC;AAEX,MAAM,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC;AAGrC,YAAY,EACV,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,cAAc,EAClF,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EACpD,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAClD,WAAW,EAAE,UAAU,GACxB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EACV,aAAa,EAAE,qBAAqB,EAAE,iBAAiB,EACvD,cAAc,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,GAC/D,MAAM,eAAe,CAAC"}
package/dist/dsl.js ADDED
@@ -0,0 +1,16 @@
1
+ import { defineFlow, loop, artifactData, ctxField, cyclePhase, predicateLabel } from "./flow/dsl.js";
2
+ import { user } from "./user/dsl.js";
3
+ import { plan } from "./agents/planners/dsl.js";
4
+ import { review } from "./agents/reviewers/dsl.js";
5
+ import { implement } from "./agents/implementors/dsl.js";
6
+ import { simplify } from "./agents/simplifiers/dsl.js";
7
+ import { TASK } from "./flow/types.js";
8
+ /** Toolkit passed to flow factory functions. */
9
+ export const flowDSL = {
10
+ defineFlow, loop,
11
+ artifactData, ctxField,
12
+ cyclePhase, predicateLabel,
13
+ plan, review, implement, simplify, user,
14
+ TASK,
15
+ };
16
+ //# sourceMappingURL=dsl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dsl.js","sourceRoot":"","sources":["../src/dsl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AACrG,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvC,gDAAgD;AAChD,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,UAAU,EAAE,IAAI;IAChB,YAAY,EAAE,QAAQ;IACtB,UAAU,EAAE,cAAc;IAC1B,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI;IACvC,IAAI;CACI,CAAC"}
@@ -0,0 +1,13 @@
1
+ import type { Artifact, ArtifactStore } from "./types.js";
2
+ /** Simple Map-based artifact store. */
3
+ export declare class MapArtifactStore implements ArtifactStore {
4
+ private store;
5
+ get(name: string): Artifact | undefined;
6
+ set(name: string, artifact: Artifact): void;
7
+ has(name: string): boolean;
8
+ getFile(name: string): string | undefined;
9
+ getText(name: string): string | undefined;
10
+ getData<T = unknown>(name: string): T | undefined;
11
+ getMeta<T = unknown>(name: string, key: string): T | undefined;
12
+ }
13
+ //# sourceMappingURL=artifacts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifacts.d.ts","sourceRoot":"","sources":["../../src/flow/artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE1D,uCAAuC;AACvC,qBAAa,gBAAiB,YAAW,aAAa;IACpD,OAAO,CAAC,KAAK,CAA+B;IAE5C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAIvC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAI3C,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI1B,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIzC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIzC,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAIjD,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;CAI/D"}
@@ -0,0 +1,27 @@
1
+ /** Simple Map-based artifact store. */
2
+ export class MapArtifactStore {
3
+ store = new Map();
4
+ get(name) {
5
+ return this.store.get(name);
6
+ }
7
+ set(name, artifact) {
8
+ this.store.set(name, artifact);
9
+ }
10
+ has(name) {
11
+ return this.store.has(name);
12
+ }
13
+ getFile(name) {
14
+ return this.store.get(name)?.file;
15
+ }
16
+ getText(name) {
17
+ return this.store.get(name)?.text;
18
+ }
19
+ getData(name) {
20
+ return this.store.get(name)?.data;
21
+ }
22
+ getMeta(name, key) {
23
+ const meta = this.store.get(name)?.meta;
24
+ return meta?.[key];
25
+ }
26
+ }
27
+ //# sourceMappingURL=artifacts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../src/flow/artifacts.ts"],"names":[],"mappings":"AAEA,uCAAuC;AACvC,MAAM,OAAO,gBAAgB;IACnB,KAAK,GAAG,IAAI,GAAG,EAAoB,CAAC;IAE5C,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,GAAG,CAAC,IAAY,EAAE,QAAkB;QAClC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED,GAAG,CAAC,IAAY;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,CAAC,IAAY;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IACpC,CAAC;IAED,OAAO,CAAC,IAAY;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IACpC,CAAC;IAED,OAAO,CAAc,IAAY;QAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAqB,CAAC;IACrD,CAAC;IAED,OAAO,CAAc,IAAY,EAAE,GAAW;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;QACxC,OAAO,IAAI,EAAE,CAAC,GAAG,CAAkB,CAAC;IACtC,CAAC;CACF"}
@@ -0,0 +1,15 @@
1
+ import { type FlowDSL } from "../../dsl.js";
2
+ import type { FlowDefinition, FlowTemplate, FlowParam } from "../types.js";
3
+ export declare const defaultParams: readonly FlowParam[];
4
+ export default function createDefaultFlow({ defineFlow, loop, artifactData, ctxField, cyclePhase, plan, review, implement, user, TASK }: FlowDSL): FlowTemplate;
5
+ export declare const defaultFlowTemplate: FlowTemplate;
6
+ /**
7
+ * Convenience wrapper used by tests to build a default flow definition.
8
+ */
9
+ export declare function buildDefaultFlow(opts?: {
10
+ maxPlanIterations?: number;
11
+ maxImplIterations?: number;
12
+ includeImplementation?: boolean;
13
+ auto?: boolean;
14
+ }): FlowDefinition;
15
+ //# sourceMappingURL=default.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../src/flow/built-in/default.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EAEZ,SAAS,EACV,MAAM,aAAa,CAAC;AAGrB,eAAO,MAAM,aAAa,EAAE,SAAS,SAAS,EAoB7C,CAAC;AAGF,MAAM,CAAC,OAAO,UAAU,iBAAiB,CACvC,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,GACrG,YAAY,CA8Fd;AAGD,eAAO,MAAM,mBAAmB,EAAE,YAAyC,CAAC;AAE5E;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,CAAC,EAAE;IACtC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,GAAG,cAAc,CAUjB"}
@@ -0,0 +1,123 @@
1
+ import { flowDSL } from "../../dsl.js";
2
+ // Params extracted as named export (why-so-serious spreads these)
3
+ export const defaultParams = [
4
+ // Driver selections
5
+ { key: "planner", type: "driver", role: "planner", label: "Planner", default: "claude",
6
+ description: "Which CLI plans" },
7
+ { key: "reviewer", type: "driver", role: "reviewer", label: "Reviewer", default: "codex",
8
+ description: "Which CLI reviews" },
9
+ { key: "implementor", type: "driver", role: "implementor", label: "Implementor", default: "claude",
10
+ description: "Which CLI implements" },
11
+ // Loop limits
12
+ { key: "maxIterations", type: "number", label: "Max Planning Iterations",
13
+ default: 5, min: 1, max: 50 },
14
+ { key: "maxImplIterations", type: "number", label: "Max Impl Iterations",
15
+ default: 5, min: 1, max: 50 },
16
+ // Mode toggles
17
+ { key: "auto", type: "boolean", label: "Auto Mode", default: false,
18
+ description: "Skip user review phases" },
19
+ { key: "planOnly", type: "boolean", label: "Plan Only", default: false,
20
+ description: "Skip implementation phase" },
21
+ ];
22
+ // Factory — single source of truth
23
+ export default function createDefaultFlow({ defineFlow, loop, artifactData, ctxField, cyclePhase, plan, review, implement, user, TASK }) {
24
+ return {
25
+ name: "default",
26
+ params: defaultParams,
27
+ build(values) {
28
+ const maxPlan = values.maxIterations;
29
+ const maxImpl = values.maxImplIterations;
30
+ const isPlanOnly = values.planOnly;
31
+ const isAuto = values.auto;
32
+ const plannerDriver = values.planner;
33
+ const reviewerDriver = values.reviewer;
34
+ const implementorDriver = values.implementor;
35
+ const steps = [];
36
+ if (isAuto) {
37
+ // Auto mode: no user steps, reviewer-only approval
38
+ steps.push(loop(maxPlan, artifactData("verdict", "approved"), [
39
+ plan({
40
+ driver: plannerDriver,
41
+ phaseLabel: cyclePhase("📝 Planning...", "✏️ Revising Plan..."),
42
+ reads: { task: TASK, verdict: "verdict" },
43
+ writes: { plan: "plan" },
44
+ }),
45
+ review({
46
+ driver: reviewerDriver,
47
+ variant: "plan",
48
+ reads: { task: TASK, plan: "plan" },
49
+ writes: { verdict: "verdict" },
50
+ }),
51
+ ]));
52
+ }
53
+ else {
54
+ // Interactive mode: two-layered loop
55
+ // Outer loop: user feedback (uncapped, exits via break-loop)
56
+ // Inner loop: agent review (capped by maxPlan, no onExhausted)
57
+ steps.push(loop(Infinity, () => false, [
58
+ plan({
59
+ driver: plannerDriver,
60
+ phaseLabel: cyclePhase("📝 Planning...", "✏️ Addressing Feedback..."),
61
+ reads: { task: TASK, verdict: "verdict" },
62
+ writes: { plan: "plan" },
63
+ }),
64
+ user("user:feedback", { writes: { verdict: "verdict" } }),
65
+ loop(maxPlan, artifactData("verdict", "approved"), [
66
+ plan({
67
+ driver: plannerDriver,
68
+ when: ctxField("iteration", "!=", 1),
69
+ phaseLabel: "✏️ Revising Plan...",
70
+ reads: { task: TASK, verdict: "verdict" },
71
+ writes: { plan: "plan" },
72
+ }),
73
+ review({
74
+ driver: reviewerDriver,
75
+ variant: "plan",
76
+ reads: { task: TASK, plan: "plan" },
77
+ writes: { verdict: "verdict" },
78
+ }),
79
+ ]),
80
+ user("user:approval", {
81
+ breakOnAccept: true,
82
+ writes: { verdict: "verdict" },
83
+ }),
84
+ ]));
85
+ }
86
+ // Optional implementation loop (same regardless of auto)
87
+ if (!isPlanOnly) {
88
+ const implVerdict = "impl-verdict";
89
+ steps.push(loop(maxImpl, artifactData(implVerdict, "approved"), [
90
+ implement({
91
+ driver: implementorDriver,
92
+ phaseLabel: cyclePhase("🔨 Implementing...", "✏️ Revising Impl..."),
93
+ reads: { plan: "plan", verdict: implVerdict },
94
+ }),
95
+ review({
96
+ driver: reviewerDriver,
97
+ variant: "impl",
98
+ reads: { task: TASK, plan: "plan" },
99
+ writes: { verdict: implVerdict },
100
+ }),
101
+ ]));
102
+ }
103
+ return defineFlow("default", steps);
104
+ },
105
+ };
106
+ }
107
+ // Static convenience (tests, backward compat)
108
+ export const defaultFlowTemplate = createDefaultFlow(flowDSL);
109
+ /**
110
+ * Convenience wrapper used by tests to build a default flow definition.
111
+ */
112
+ export function buildDefaultFlow(opts) {
113
+ return defaultFlowTemplate.build({
114
+ maxIterations: opts?.maxPlanIterations ?? 5,
115
+ maxImplIterations: opts?.maxImplIterations ?? (opts?.maxPlanIterations ?? 5),
116
+ planOnly: !(opts?.includeImplementation ?? false),
117
+ auto: opts?.auto ?? false,
118
+ planner: "claude",
119
+ reviewer: "codex",
120
+ implementor: "claude",
121
+ });
122
+ }
123
+ //# sourceMappingURL=default.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/flow/built-in/default.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,152 @@
1
+ import { flowDSL, type FlowDSL } from "../../dsl.js";
2
+ import type {
3
+ FlowDefinition,
4
+ FlowTemplate,
5
+ FlowParamValues,
6
+ FlowParam,
7
+ } from "../types.js";
8
+
9
+ // Params extracted as named export (why-so-serious spreads these)
10
+ export const defaultParams: readonly FlowParam[] = [
11
+ // Driver selections
12
+ { key: "planner", type: "driver", role: "planner", label: "Planner", default: "claude",
13
+ description: "Which CLI plans" },
14
+ { key: "reviewer", type: "driver", role: "reviewer", label: "Reviewer", default: "codex",
15
+ description: "Which CLI reviews" },
16
+ { key: "implementor", type: "driver", role: "implementor", label: "Implementor", default: "claude",
17
+ description: "Which CLI implements" },
18
+
19
+ // Loop limits
20
+ { key: "maxIterations", type: "number", label: "Max Planning Iterations",
21
+ default: 5, min: 1, max: 50 },
22
+ { key: "maxImplIterations", type: "number", label: "Max Impl Iterations",
23
+ default: 5, min: 1, max: 50 },
24
+
25
+ // Mode toggles
26
+ { key: "auto", type: "boolean", label: "Auto Mode", default: false,
27
+ description: "Skip user review phases" },
28
+ { key: "planOnly", type: "boolean", label: "Plan Only", default: false,
29
+ description: "Skip implementation phase" },
30
+ ];
31
+
32
+ // Factory — single source of truth
33
+ export default function createDefaultFlow(
34
+ { defineFlow, loop, artifactData, ctxField, cyclePhase, plan, review, implement, user, TASK }: FlowDSL,
35
+ ): FlowTemplate {
36
+ return {
37
+ name: "default",
38
+ params: defaultParams,
39
+
40
+ build(values: FlowParamValues) {
41
+ const maxPlan = values.maxIterations as number;
42
+ const maxImpl = values.maxImplIterations as number;
43
+ const isPlanOnly = values.planOnly as boolean;
44
+ const isAuto = values.auto as boolean;
45
+
46
+ const plannerDriver = values.planner as string;
47
+ const reviewerDriver = values.reviewer as string;
48
+ const implementorDriver = values.implementor as string;
49
+
50
+ const steps = [];
51
+
52
+ if (isAuto) {
53
+ // Auto mode: no user steps, reviewer-only approval
54
+ steps.push(
55
+ loop(maxPlan, artifactData("verdict", "approved"), [
56
+ plan({
57
+ driver: plannerDriver,
58
+ phaseLabel: cyclePhase("📝 Planning...", "✏️ Revising Plan..."),
59
+ reads: { task: TASK, verdict: "verdict" },
60
+ writes: { plan: "plan" },
61
+ }),
62
+ review({
63
+ driver: reviewerDriver,
64
+ variant: "plan",
65
+ reads: { task: TASK, plan: "plan" },
66
+ writes: { verdict: "verdict" },
67
+ }),
68
+ ]),
69
+ );
70
+ } else {
71
+ // Interactive mode: two-layered loop
72
+ // Outer loop: user feedback (uncapped, exits via break-loop)
73
+ // Inner loop: agent review (capped by maxPlan, no onExhausted)
74
+ steps.push(
75
+ loop(Infinity, () => false, [
76
+ plan({
77
+ driver: plannerDriver,
78
+ phaseLabel: cyclePhase("📝 Planning...", "✏️ Addressing Feedback..."),
79
+ reads: { task: TASK, verdict: "verdict" },
80
+ writes: { plan: "plan" },
81
+ }),
82
+ user("user:feedback", { writes: { verdict: "verdict" } }),
83
+ loop(maxPlan, artifactData("verdict", "approved"), [
84
+ plan({
85
+ driver: plannerDriver,
86
+ when: ctxField("iteration", "!=", 1),
87
+ phaseLabel: "✏️ Revising Plan...",
88
+ reads: { task: TASK, verdict: "verdict" },
89
+ writes: { plan: "plan" },
90
+ }),
91
+ review({
92
+ driver: reviewerDriver,
93
+ variant: "plan",
94
+ reads: { task: TASK, plan: "plan" },
95
+ writes: { verdict: "verdict" },
96
+ }),
97
+ ]),
98
+ user("user:approval", {
99
+ breakOnAccept: true,
100
+ writes: { verdict: "verdict" },
101
+ }),
102
+ ]),
103
+ );
104
+ }
105
+
106
+ // Optional implementation loop (same regardless of auto)
107
+ if (!isPlanOnly) {
108
+ const implVerdict = "impl-verdict";
109
+ steps.push(
110
+ loop(maxImpl, artifactData(implVerdict, "approved"), [
111
+ implement({
112
+ driver: implementorDriver,
113
+ phaseLabel: cyclePhase("🔨 Implementing...", "✏️ Revising Impl..."),
114
+ reads: { plan: "plan", verdict: implVerdict },
115
+ }),
116
+ review({
117
+ driver: reviewerDriver,
118
+ variant: "impl",
119
+ reads: { task: TASK, plan: "plan" },
120
+ writes: { verdict: implVerdict },
121
+ }),
122
+ ]),
123
+ );
124
+ }
125
+
126
+ return defineFlow("default", steps);
127
+ },
128
+ };
129
+ }
130
+
131
+ // Static convenience (tests, backward compat)
132
+ export const defaultFlowTemplate: FlowTemplate = createDefaultFlow(flowDSL);
133
+
134
+ /**
135
+ * Convenience wrapper used by tests to build a default flow definition.
136
+ */
137
+ export function buildDefaultFlow(opts?: {
138
+ maxPlanIterations?: number;
139
+ maxImplIterations?: number;
140
+ includeImplementation?: boolean;
141
+ auto?: boolean;
142
+ }): FlowDefinition {
143
+ return defaultFlowTemplate.build({
144
+ maxIterations: opts?.maxPlanIterations ?? 5,
145
+ maxImplIterations: opts?.maxImplIterations ?? (opts?.maxPlanIterations ?? 5),
146
+ planOnly: !(opts?.includeImplementation ?? false),
147
+ auto: opts?.auto ?? false,
148
+ planner: "claude",
149
+ reviewer: "codex",
150
+ implementor: "claude",
151
+ });
152
+ }
@@ -0,0 +1,15 @@
1
+ import { type FlowDSL } from "../../dsl.js";
2
+ import type { FlowDefinition, FlowTemplate } from "../types.js";
3
+ export default function createWhySoSeriousFlow({ defineFlow, loop, artifactData, ctxField, cyclePhase, plan, review, implement, simplify, user, TASK }: FlowDSL): FlowTemplate;
4
+ export declare const whySoSeriousFlowTemplate: FlowTemplate;
5
+ /**
6
+ * Convenience wrapper used by tests to build a why-so-serious flow definition.
7
+ */
8
+ export declare function buildWhySoSeriousFlow(opts?: {
9
+ maxPlanIterations?: number;
10
+ maxImplIterations?: number;
11
+ includeImplementation?: boolean;
12
+ auto?: boolean;
13
+ simplifier?: string;
14
+ }): FlowDefinition;
15
+ //# sourceMappingURL=why-so-serious.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"why-so-serious.d.ts","sourceRoot":"","sources":["../../../src/flow/built-in/why-so-serious.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EACV,cAAc,EAEd,YAAY,EAGb,MAAM,aAAa,CAAC;AAMrB,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAC5C,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,GAC/G,YAAY,CA6Id;AAGD,eAAO,MAAM,wBAAwB,EAAE,YAA8C,CAAC;AAEtF;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,CAAC,EAAE;IAC3C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GAAG,cAAc,CAWjB"}