@mobrienv/autoloop 0.3.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (415) hide show
  1. package/README.md +140 -43
  2. package/bin/autoloop +1 -1
  3. package/dist/index.d.ts +6 -0
  4. package/dist/index.js +19 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/testing/mock-backend.js +3 -5
  7. package/dist/testing/mock-backend.js.map +1 -1
  8. package/package.json +32 -10
  9. package/plugins/autoloop/.claude-plugin/plugin.json +1 -1
  10. package/dist/agent-map.d.ts +0 -10
  11. package/dist/agent-map.js +0 -58
  12. package/dist/agent-map.js.map +0 -1
  13. package/dist/backend/acp-client.d.ts +0 -38
  14. package/dist/backend/acp-client.js +0 -288
  15. package/dist/backend/acp-client.js.map +0 -1
  16. package/dist/backend/index.d.ts +0 -10
  17. package/dist/backend/index.js +0 -71
  18. package/dist/backend/index.js.map +0 -1
  19. package/dist/backend/kiro-bridge.d.ts +0 -17
  20. package/dist/backend/kiro-bridge.js +0 -84
  21. package/dist/backend/kiro-bridge.js.map +0 -1
  22. package/dist/backend/kiro-worker.d.ts +0 -1
  23. package/dist/backend/kiro-worker.js +0 -92
  24. package/dist/backend/kiro-worker.js.map +0 -1
  25. package/dist/backend/run-command.d.ts +0 -7
  26. package/dist/backend/run-command.js +0 -50
  27. package/dist/backend/run-command.js.map +0 -1
  28. package/dist/backend/run-kiro.d.ts +0 -3
  29. package/dist/backend/run-kiro.js +0 -16
  30. package/dist/backend/run-kiro.js.map +0 -1
  31. package/dist/backend/run-mock.d.ts +0 -1
  32. package/dist/backend/run-mock.js +0 -6
  33. package/dist/backend/run-mock.js.map +0 -1
  34. package/dist/backend/run-pi.d.ts +0 -5
  35. package/dist/backend/run-pi.js +0 -5
  36. package/dist/backend/run-pi.js.map +0 -1
  37. package/dist/backend/types.d.ts +0 -21
  38. package/dist/backend/types.js +0 -2
  39. package/dist/backend/types.js.map +0 -1
  40. package/dist/chains/budget.d.ts +0 -7
  41. package/dist/chains/budget.js +0 -54
  42. package/dist/chains/budget.js.map +0 -1
  43. package/dist/chains/load.d.ts +0 -18
  44. package/dist/chains/load.js +0 -129
  45. package/dist/chains/load.js.map +0 -1
  46. package/dist/chains/render.d.ts +0 -2
  47. package/dist/chains/render.js +0 -74
  48. package/dist/chains/render.js.map +0 -1
  49. package/dist/chains/run.d.ts +0 -17
  50. package/dist/chains/run.js +0 -260
  51. package/dist/chains/run.js.map +0 -1
  52. package/dist/chains/types.d.ts +0 -38
  53. package/dist/chains/types.js +0 -2
  54. package/dist/chains/types.js.map +0 -1
  55. package/dist/chains.d.ts +0 -6
  56. package/dist/chains.js +0 -5
  57. package/dist/chains.js.map +0 -1
  58. package/dist/commands/chain.d.ts +0 -1
  59. package/dist/commands/chain.js +0 -53
  60. package/dist/commands/chain.js.map +0 -1
  61. package/dist/commands/config.d.ts +0 -1
  62. package/dist/commands/config.js +0 -74
  63. package/dist/commands/config.js.map +0 -1
  64. package/dist/commands/dashboard.d.ts +0 -1
  65. package/dist/commands/dashboard.js +0 -68
  66. package/dist/commands/dashboard.js.map +0 -1
  67. package/dist/commands/guide.d.ts +0 -1
  68. package/dist/commands/guide.js +0 -33
  69. package/dist/commands/guide.js.map +0 -1
  70. package/dist/commands/inspect.d.ts +0 -1
  71. package/dist/commands/inspect.js +0 -203
  72. package/dist/commands/inspect.js.map +0 -1
  73. package/dist/commands/list.d.ts +0 -1
  74. package/dist/commands/list.js +0 -15
  75. package/dist/commands/list.js.map +0 -1
  76. package/dist/commands/loops.d.ts +0 -1
  77. package/dist/commands/loops.js +0 -72
  78. package/dist/commands/loops.js.map +0 -1
  79. package/dist/commands/memory.d.ts +0 -1
  80. package/dist/commands/memory.js +0 -65
  81. package/dist/commands/memory.js.map +0 -1
  82. package/dist/commands/pi-adapter.d.ts +0 -1
  83. package/dist/commands/pi-adapter.js +0 -6
  84. package/dist/commands/pi-adapter.js.map +0 -1
  85. package/dist/commands/run.d.ts +0 -1
  86. package/dist/commands/run.js +0 -292
  87. package/dist/commands/run.js.map +0 -1
  88. package/dist/commands/runs.d.ts +0 -1
  89. package/dist/commands/runs.js +0 -50
  90. package/dist/commands/runs.js.map +0 -1
  91. package/dist/commands/task.d.ts +0 -1
  92. package/dist/commands/task.js +0 -74
  93. package/dist/commands/task.js.map +0 -1
  94. package/dist/commands/worktree.d.ts +0 -1
  95. package/dist/commands/worktree.js +0 -162
  96. package/dist/commands/worktree.js.map +0 -1
  97. package/dist/config.d.ts +0 -31
  98. package/dist/config.js +0 -261
  99. package/dist/config.js.map +0 -1
  100. package/dist/dashboard/app.d.ts +0 -12
  101. package/dist/dashboard/app.js +0 -23
  102. package/dist/dashboard/app.js.map +0 -1
  103. package/dist/dashboard/routes/api.d.ts +0 -3
  104. package/dist/dashboard/routes/api.js +0 -130
  105. package/dist/dashboard/routes/api.js.map +0 -1
  106. package/dist/dashboard/routes/pages.d.ts +0 -2
  107. package/dist/dashboard/routes/pages.js +0 -14
  108. package/dist/dashboard/routes/pages.js.map +0 -1
  109. package/dist/dashboard/views/alpine-vendor.d.ts +0 -1
  110. package/dist/dashboard/views/alpine-vendor.js +0 -10
  111. package/dist/dashboard/views/alpine-vendor.js.map +0 -1
  112. package/dist/dashboard/views/shell.d.ts +0 -1
  113. package/dist/dashboard/views/shell.js +0 -746
  114. package/dist/dashboard/views/shell.js.map +0 -1
  115. package/dist/events/decode.d.ts +0 -2
  116. package/dist/events/decode.js +0 -45
  117. package/dist/events/decode.js.map +0 -1
  118. package/dist/events/encode.d.ts +0 -2
  119. package/dist/events/encode.js +0 -33
  120. package/dist/events/encode.js.map +0 -1
  121. package/dist/events/guards.d.ts +0 -5
  122. package/dist/events/guards.js +0 -42
  123. package/dist/events/guards.js.map +0 -1
  124. package/dist/events/types.d.ts +0 -26
  125. package/dist/events/types.js +0 -2
  126. package/dist/events/types.js.map +0 -1
  127. package/dist/harness/config-helpers.d.ts +0 -35
  128. package/dist/harness/config-helpers.js +0 -411
  129. package/dist/harness/config-helpers.js.map +0 -1
  130. package/dist/harness/coordination.d.ts +0 -1
  131. package/dist/harness/coordination.js +0 -127
  132. package/dist/harness/coordination.js.map +0 -1
  133. package/dist/harness/display.d.ts +0 -21
  134. package/dist/harness/display.js +0 -176
  135. package/dist/harness/display.js.map +0 -1
  136. package/dist/harness/emit.d.ts +0 -15
  137. package/dist/harness/emit.js +0 -240
  138. package/dist/harness/emit.js.map +0 -1
  139. package/dist/harness/index.d.ts +0 -13
  140. package/dist/harness/index.js +0 -240
  141. package/dist/harness/index.js.map +0 -1
  142. package/dist/harness/iteration.d.ts +0 -16
  143. package/dist/harness/iteration.js +0 -131
  144. package/dist/harness/iteration.js.map +0 -1
  145. package/dist/harness/journal.d.ts +0 -31
  146. package/dist/harness/journal.js +0 -178
  147. package/dist/harness/journal.js.map +0 -1
  148. package/dist/harness/metareview.d.ts +0 -4
  149. package/dist/harness/metareview.js +0 -48
  150. package/dist/harness/metareview.js.map +0 -1
  151. package/dist/harness/metrics.d.ts +0 -12
  152. package/dist/harness/metrics.js +0 -180
  153. package/dist/harness/metrics.js.map +0 -1
  154. package/dist/harness/parallel.d.ts +0 -37
  155. package/dist/harness/parallel.js +0 -237
  156. package/dist/harness/parallel.js.map +0 -1
  157. package/dist/harness/prompt.d.ts +0 -46
  158. package/dist/harness/prompt.js +0 -403
  159. package/dist/harness/prompt.js.map +0 -1
  160. package/dist/harness/scratchpad.d.ts +0 -2
  161. package/dist/harness/scratchpad.js +0 -67
  162. package/dist/harness/scratchpad.js.map +0 -1
  163. package/dist/harness/stop.d.ts +0 -5
  164. package/dist/harness/stop.js +0 -70
  165. package/dist/harness/stop.js.map +0 -1
  166. package/dist/harness/tools.d.ts +0 -3
  167. package/dist/harness/tools.js +0 -65
  168. package/dist/harness/tools.js.map +0 -1
  169. package/dist/harness/types.d.ts +0 -110
  170. package/dist/harness/types.js +0 -2
  171. package/dist/harness/types.js.map +0 -1
  172. package/dist/harness/wave/finalize-wave.d.ts +0 -9
  173. package/dist/harness/wave/finalize-wave.js +0 -87
  174. package/dist/harness/wave/finalize-wave.js.map +0 -1
  175. package/dist/harness/wave/launch-branches.d.ts +0 -6
  176. package/dist/harness/wave/launch-branches.js +0 -314
  177. package/dist/harness/wave/launch-branches.js.map +0 -1
  178. package/dist/harness/wave/parse-objectives.d.ts +0 -3
  179. package/dist/harness/wave/parse-objectives.js +0 -32
  180. package/dist/harness/wave/parse-objectives.js.map +0 -1
  181. package/dist/harness/wave/types.d.ts +0 -43
  182. package/dist/harness/wave/types.js +0 -2
  183. package/dist/harness/wave/types.js.map +0 -1
  184. package/dist/harness/wave.d.ts +0 -6
  185. package/dist/harness/wave.js +0 -159
  186. package/dist/harness/wave.js.map +0 -1
  187. package/dist/isolation/index.d.ts +0 -4
  188. package/dist/isolation/index.js +0 -3
  189. package/dist/isolation/index.js.map +0 -1
  190. package/dist/isolation/resolve.d.ts +0 -39
  191. package/dist/isolation/resolve.js +0 -118
  192. package/dist/isolation/resolve.js.map +0 -1
  193. package/dist/isolation/run-scope.d.ts +0 -21
  194. package/dist/isolation/run-scope.js +0 -50
  195. package/dist/isolation/run-scope.js.map +0 -1
  196. package/dist/json.d.ts +0 -8
  197. package/dist/json.js +0 -82
  198. package/dist/json.js.map +0 -1
  199. package/dist/loops/health.d.ts +0 -16
  200. package/dist/loops/health.js +0 -152
  201. package/dist/loops/health.js.map +0 -1
  202. package/dist/loops/list.d.ts +0 -6
  203. package/dist/loops/list.js +0 -21
  204. package/dist/loops/list.js.map +0 -1
  205. package/dist/loops/policy.d.ts +0 -6
  206. package/dist/loops/policy.js +0 -41
  207. package/dist/loops/policy.js.map +0 -1
  208. package/dist/loops/render.d.ts +0 -19
  209. package/dist/loops/render.js +0 -100
  210. package/dist/loops/render.js.map +0 -1
  211. package/dist/loops/show.d.ts +0 -8
  212. package/dist/loops/show.js +0 -31
  213. package/dist/loops/show.js.map +0 -1
  214. package/dist/loops/watch.d.ts +0 -14
  215. package/dist/loops/watch.js +0 -143
  216. package/dist/loops/watch.js.map +0 -1
  217. package/dist/main.d.ts +0 -1
  218. package/dist/main.js +0 -148
  219. package/dist/main.js.map +0 -1
  220. package/dist/markdown.d.ts +0 -10
  221. package/dist/markdown.js +0 -66
  222. package/dist/markdown.js.map +0 -1
  223. package/dist/memory-render.d.ts +0 -6
  224. package/dist/memory-render.js +0 -81
  225. package/dist/memory-render.js.map +0 -1
  226. package/dist/memory.d.ts +0 -22
  227. package/dist/memory.js +0 -318
  228. package/dist/memory.js.map +0 -1
  229. package/dist/pi-adapter.d.ts +0 -1
  230. package/dist/pi-adapter.js +0 -220
  231. package/dist/pi-adapter.js.map +0 -1
  232. package/dist/profiles.d.ts +0 -12
  233. package/dist/profiles.js +0 -71
  234. package/dist/profiles.js.map +0 -1
  235. package/dist/registry/derive.d.ts +0 -8
  236. package/dist/registry/derive.js +0 -88
  237. package/dist/registry/derive.js.map +0 -1
  238. package/dist/registry/discover.d.ts +0 -20
  239. package/dist/registry/discover.js +0 -98
  240. package/dist/registry/discover.js.map +0 -1
  241. package/dist/registry/harness.d.ts +0 -7
  242. package/dist/registry/harness.js +0 -63
  243. package/dist/registry/harness.js.map +0 -1
  244. package/dist/registry/index.d.ts +0 -6
  245. package/dist/registry/index.js +0 -6
  246. package/dist/registry/index.js.map +0 -1
  247. package/dist/registry/read.d.ts +0 -11
  248. package/dist/registry/read.js +0 -50
  249. package/dist/registry/read.js.map +0 -1
  250. package/dist/registry/rebuild.d.ts +0 -5
  251. package/dist/registry/rebuild.js +0 -22
  252. package/dist/registry/rebuild.js.map +0 -1
  253. package/dist/registry/types.d.ts +0 -28
  254. package/dist/registry/types.js +0 -2
  255. package/dist/registry/types.js.map +0 -1
  256. package/dist/registry/update.d.ts +0 -2
  257. package/dist/registry/update.js +0 -7
  258. package/dist/registry/update.js.map +0 -1
  259. package/dist/tasks-render.d.ts +0 -2
  260. package/dist/tasks-render.js +0 -44
  261. package/dist/tasks-render.js.map +0 -1
  262. package/dist/tasks.d.ts +0 -24
  263. package/dist/tasks.js +0 -184
  264. package/dist/tasks.js.map +0 -1
  265. package/dist/topology.d.ts +0 -31
  266. package/dist/topology.js +0 -309
  267. package/dist/topology.js.map +0 -1
  268. package/dist/usage.d.ts +0 -9
  269. package/dist/usage.js +0 -159
  270. package/dist/usage.js.map +0 -1
  271. package/dist/utils.d.ts +0 -21
  272. package/dist/utils.js +0 -349
  273. package/dist/utils.js.map +0 -1
  274. package/dist/worktree/clean.d.ts +0 -12
  275. package/dist/worktree/clean.js +0 -98
  276. package/dist/worktree/clean.js.map +0 -1
  277. package/dist/worktree/create.d.ts +0 -14
  278. package/dist/worktree/create.js +0 -71
  279. package/dist/worktree/create.js.map +0 -1
  280. package/dist/worktree/index.d.ts +0 -10
  281. package/dist/worktree/index.js +0 -6
  282. package/dist/worktree/index.js.map +0 -1
  283. package/dist/worktree/list.d.ts +0 -9
  284. package/dist/worktree/list.js +0 -24
  285. package/dist/worktree/list.js.map +0 -1
  286. package/dist/worktree/merge.d.ts +0 -11
  287. package/dist/worktree/merge.js +0 -129
  288. package/dist/worktree/merge.js.map +0 -1
  289. package/dist/worktree/meta.d.ts +0 -17
  290. package/dist/worktree/meta.js +0 -34
  291. package/dist/worktree/meta.js.map +0 -1
  292. package/presets/autocode/README.md +0 -81
  293. package/presets/autocode/autoloops.toml +0 -30
  294. package/presets/autocode/harness.md +0 -26
  295. package/presets/autocode/miniloops.toml +0 -22
  296. package/presets/autocode/roles/build.md +0 -34
  297. package/presets/autocode/roles/critic.md +0 -40
  298. package/presets/autocode/roles/finalizer.md +0 -43
  299. package/presets/autocode/roles/planner.md +0 -40
  300. package/presets/autocode/topology.toml +0 -32
  301. package/presets/autodoc/README.md +0 -42
  302. package/presets/autodoc/autoloops.toml +0 -21
  303. package/presets/autodoc/harness.md +0 -19
  304. package/presets/autodoc/miniloops.toml +0 -21
  305. package/presets/autodoc/roles/auditor.md +0 -39
  306. package/presets/autodoc/roles/checker.md +0 -43
  307. package/presets/autodoc/roles/publisher.md +0 -51
  308. package/presets/autodoc/roles/writer.md +0 -37
  309. package/presets/autodoc/topology.toml +0 -31
  310. package/presets/autofix/README.md +0 -56
  311. package/presets/autofix/autoloops.toml +0 -24
  312. package/presets/autofix/harness.md +0 -25
  313. package/presets/autofix/miniloops.toml +0 -21
  314. package/presets/autofix/roles/closer.md +0 -48
  315. package/presets/autofix/roles/diagnoser.md +0 -43
  316. package/presets/autofix/roles/fixer.md +0 -28
  317. package/presets/autofix/roles/verifier.md +0 -31
  318. package/presets/autofix/topology.toml +0 -33
  319. package/presets/autoideas/README.md +0 -73
  320. package/presets/autoideas/autoloops.toml +0 -18
  321. package/presets/autoideas/harness.md +0 -31
  322. package/presets/autoideas/miniloops.toml +0 -18
  323. package/presets/autoideas/roles/analyst.md +0 -32
  324. package/presets/autoideas/roles/reviewer.md +0 -36
  325. package/presets/autoideas/roles/scanner.md +0 -26
  326. package/presets/autoideas/roles/synthesizer.md +0 -61
  327. package/presets/autoideas/topology.toml +0 -32
  328. package/presets/automerge/README.md +0 -3
  329. package/presets/automerge/autoloops.toml +0 -12
  330. package/presets/automerge/harness.md +0 -10
  331. package/presets/automerge/miniloops.toml +0 -12
  332. package/presets/automerge/roles/merge.md +0 -10
  333. package/presets/automerge/topology.toml +0 -10
  334. package/presets/autoperf/README.md +0 -56
  335. package/presets/autoperf/autoloops.toml +0 -21
  336. package/presets/autoperf/harness.md +0 -21
  337. package/presets/autoperf/miniloops.toml +0 -21
  338. package/presets/autoperf/roles/judge.md +0 -38
  339. package/presets/autoperf/roles/measurer.md +0 -36
  340. package/presets/autoperf/roles/optimizer.md +0 -35
  341. package/presets/autoperf/roles/profiler.md +0 -38
  342. package/presets/autoperf/topology.toml +0 -32
  343. package/presets/autopr/README.md +0 -99
  344. package/presets/autopr/autoloops.toml +0 -22
  345. package/presets/autopr/harness.md +0 -27
  346. package/presets/autopr/miniloops.toml +0 -22
  347. package/presets/autopr/roles/collector.md +0 -55
  348. package/presets/autopr/roles/drafter.md +0 -38
  349. package/presets/autopr/roles/publisher.md +0 -28
  350. package/presets/autopr/roles/validator.md +0 -31
  351. package/presets/autopr/topology.toml +0 -32
  352. package/presets/autoqa/README.md +0 -76
  353. package/presets/autoqa/autoloops.toml +0 -21
  354. package/presets/autoqa/harness.md +0 -30
  355. package/presets/autoqa/miniloops.toml +0 -21
  356. package/presets/autoqa/roles/executor.md +0 -43
  357. package/presets/autoqa/roles/inspector.md +0 -45
  358. package/presets/autoqa/roles/planner.md +0 -55
  359. package/presets/autoqa/roles/reporter.md +0 -74
  360. package/presets/autoqa/topology.toml +0 -31
  361. package/presets/autoresearch/README.md +0 -63
  362. package/presets/autoresearch/autoloops.toml +0 -18
  363. package/presets/autoresearch/harness.md +0 -28
  364. package/presets/autoresearch/miniloops.toml +0 -18
  365. package/presets/autoresearch/roles/benchmarker.md +0 -34
  366. package/presets/autoresearch/roles/evaluator.md +0 -33
  367. package/presets/autoresearch/roles/implementer.md +0 -26
  368. package/presets/autoresearch/roles/strategist.md +0 -43
  369. package/presets/autoresearch/topology.toml +0 -31
  370. package/presets/autoreview/README.md +0 -51
  371. package/presets/autoreview/autoloops.toml +0 -21
  372. package/presets/autoreview/harness.md +0 -20
  373. package/presets/autoreview/miniloops.toml +0 -21
  374. package/presets/autoreview/roles/checker.md +0 -36
  375. package/presets/autoreview/roles/reader.md +0 -33
  376. package/presets/autoreview/roles/suggester.md +0 -26
  377. package/presets/autoreview/roles/summarizer.md +0 -57
  378. package/presets/autoreview/topology.toml +0 -31
  379. package/presets/autosec/README.md +0 -51
  380. package/presets/autosec/autoloops.toml +0 -21
  381. package/presets/autosec/harness.md +0 -20
  382. package/presets/autosec/miniloops.toml +0 -21
  383. package/presets/autosec/roles/analyst.md +0 -38
  384. package/presets/autosec/roles/hardener.md +0 -36
  385. package/presets/autosec/roles/reporter.md +0 -63
  386. package/presets/autosec/roles/scanner.md +0 -38
  387. package/presets/autosec/topology.toml +0 -31
  388. package/presets/autosimplify/README.md +0 -83
  389. package/presets/autosimplify/autoloops.toml +0 -26
  390. package/presets/autosimplify/harness.md +0 -25
  391. package/presets/autosimplify/miniloops.toml +0 -22
  392. package/presets/autosimplify/roles/reviewer.md +0 -38
  393. package/presets/autosimplify/roles/scoper.md +0 -42
  394. package/presets/autosimplify/roles/simplifier.md +0 -51
  395. package/presets/autosimplify/roles/verifier.md +0 -40
  396. package/presets/autosimplify/topology.toml +0 -32
  397. package/presets/autospec/README.md +0 -84
  398. package/presets/autospec/autoloops.toml +0 -21
  399. package/presets/autospec/harness.md +0 -23
  400. package/presets/autospec/miniloops.toml +0 -21
  401. package/presets/autospec/roles/clarifier.md +0 -39
  402. package/presets/autospec/roles/critic.md +0 -41
  403. package/presets/autospec/roles/designer.md +0 -37
  404. package/presets/autospec/roles/planner.md +0 -38
  405. package/presets/autospec/roles/researcher.md +0 -33
  406. package/presets/autospec/topology.toml +0 -38
  407. package/presets/autotest/README.md +0 -55
  408. package/presets/autotest/autoloops.toml +0 -21
  409. package/presets/autotest/harness.md +0 -21
  410. package/presets/autotest/miniloops.toml +0 -21
  411. package/presets/autotest/roles/assessor.md +0 -57
  412. package/presets/autotest/roles/runner.md +0 -31
  413. package/presets/autotest/roles/surveyor.md +0 -39
  414. package/presets/autotest/roles/writer.md +0 -37
  415. package/presets/autotest/topology.toml +0 -32
package/dist/topology.js DELETED
@@ -1,309 +0,0 @@
1
- import { existsSync, readFileSync } from "node:fs";
2
- import { join } from "node:path";
3
- import TOML from "@iarna/toml";
4
- import { lineSep, listContains, listText } from "./utils.js";
5
- export function eventMatchesAny(topic, patterns) {
6
- for (const pattern of patterns) {
7
- if (eventMatchesPattern(topic, pattern))
8
- return true;
9
- }
10
- return false;
11
- }
12
- export function getRoleIds(topology) {
13
- return topology.roles.map((r) => r.id);
14
- }
15
- export function allEmittedEvents(topology) {
16
- const all = [];
17
- for (const role of topology.roles) {
18
- for (const e of role.emits) {
19
- if (!all.includes(e))
20
- all.push(e);
21
- }
22
- }
23
- return all;
24
- }
25
- export function handoffKeys(topology) {
26
- return topology.handoffKeys;
27
- }
28
- export function handoffTargetIds(topology) {
29
- const all = [];
30
- for (const key of topology.handoffKeys) {
31
- for (const target of topology.handoff[key] ?? []) {
32
- if (!all.includes(target))
33
- all.push(target);
34
- }
35
- }
36
- return all;
37
- }
38
- export function loadTopology(projectDir) {
39
- const path = join(projectDir, "topology.toml");
40
- if (!existsSync(path))
41
- return defaultTopology();
42
- return loadExisting(path, projectDir);
43
- }
44
- export function completionEvent(topology, fallback) {
45
- return topology.completion || fallback;
46
- }
47
- export function suggestedRoles(topology, recentEvent) {
48
- const roles = collectMatchingRoles(topology, recentEvent);
49
- if (roles.length === 0)
50
- return getRoleIds(topology);
51
- return roles;
52
- }
53
- export function allowedEvents(topology, recentEvent) {
54
- const roleIds = suggestedRoles(topology, recentEvent);
55
- return collectEventsForRoles(topology.roles, roleIds);
56
- }
57
- export function roleCount(topology) {
58
- return topology.roles.length;
59
- }
60
- export function render(topology, recentEvent) {
61
- if (topology.roles.length === 0)
62
- return "";
63
- const suggested = suggestedRoles(topology, recentEvent);
64
- const allowed = allowedEvents(topology, recentEvent);
65
- return renderWithContext(topology, recentEvent, suggested, allowed);
66
- }
67
- export function renderWithContext(topology, recentEvent, suggested, allowed) {
68
- if (topology.roles.length === 0)
69
- return "";
70
- return ("Topology (advisory):\n" +
71
- "Recent routing event: " +
72
- recentEvent +
73
- "\n" +
74
- "Suggested next roles: " +
75
- listText(suggested) +
76
- "\n" +
77
- "Allowed next events: " +
78
- listText(allowed) +
79
- "\n\n" +
80
- "Role deck:\n" +
81
- renderRoles(topology.roles));
82
- }
83
- function defaultTopology() {
84
- return { name: "", completion: "", roles: [], handoff: {}, handoffKeys: [] };
85
- }
86
- function loadExisting(path, projectDir) {
87
- const text = readFileSync(path, "utf-8");
88
- const parsed = TOML.parse(text);
89
- return buildTopology(parsed, projectDir);
90
- }
91
- function buildTopology(parsed, projectDir) {
92
- const name = typeof parsed.name === "string" ? parsed.name : "";
93
- const completion = typeof parsed.completion === "string" ? parsed.completion : "";
94
- const rawRoles = (parsed.role ?? []);
95
- const roles = rawRoles
96
- .filter((r) => typeof r.id === "string" && r.id !== "")
97
- .map((r) => {
98
- const role = {
99
- id: r.id,
100
- prompt: typeof r.prompt === "string" ? r.prompt : "",
101
- promptFile: typeof r.prompt_file === "string" ? r.prompt_file : "",
102
- emits: Array.isArray(r.emits) ? r.emits.map(String) : [],
103
- };
104
- return { ...role, prompt: rolePrompt(role, projectDir) };
105
- });
106
- const rawHandoff = (parsed.handoff ?? {});
107
- const handoff = {};
108
- const handoffKeys = [];
109
- for (const [key, value] of Object.entries(rawHandoff)) {
110
- handoff[key] = Array.isArray(value) ? value.map(String) : [String(value)];
111
- handoffKeys.push(key);
112
- }
113
- return { name, completion, roles, handoff, handoffKeys };
114
- }
115
- function rolePrompt(role, projectDir) {
116
- if (role.prompt)
117
- return role.prompt;
118
- if (!role.promptFile)
119
- return "";
120
- return readPromptFile(projectDir, role.promptFile);
121
- }
122
- function readPromptFile(projectDir, promptFile) {
123
- const fullPath = join(projectDir, promptFile);
124
- if (!existsSync(fullPath))
125
- return "";
126
- return readFileSync(fullPath, "utf-8");
127
- }
128
- function collectMatchingRoles(topology, event) {
129
- const acc = [];
130
- for (const key of topology.handoffKeys) {
131
- if (eventMatchesPattern(event, key)) {
132
- for (const roleId of topology.handoff[key] ?? []) {
133
- if (!acc.includes(roleId))
134
- acc.push(roleId);
135
- }
136
- }
137
- }
138
- return acc;
139
- }
140
- function collectEventsForRoles(roles, roleIds) {
141
- const acc = [];
142
- for (const role of roles) {
143
- if (listContains(roleIds, role.id)) {
144
- for (const e of role.emits) {
145
- if (!acc.includes(e))
146
- acc.push(e);
147
- }
148
- }
149
- }
150
- return acc;
151
- }
152
- function eventMatchesPattern(topic, pattern) {
153
- if (isRegexPattern(pattern)) {
154
- return regexMatch(topic, stripRegexDelimiters(pattern));
155
- }
156
- return topic === pattern;
157
- }
158
- function isRegexPattern(value) {
159
- return value.length >= 3 && value.startsWith("/") && value.endsWith("/");
160
- }
161
- function stripRegexDelimiters(value) {
162
- return value.slice(1, -1);
163
- }
164
- function regexMatch(topic, pattern) {
165
- try {
166
- const re = new RegExp(`^${pattern}$`);
167
- return re.test(topic);
168
- }
169
- catch {
170
- return false;
171
- }
172
- }
173
- function renderRoles(roles) {
174
- let result = "";
175
- for (const role of roles) {
176
- result +=
177
- "- role `" +
178
- role.id +
179
- "`\n" +
180
- " emits: " +
181
- listText(role.emits) +
182
- "\n" +
183
- " prompt: " +
184
- promptSummary(role.prompt) +
185
- "\n";
186
- }
187
- return result;
188
- }
189
- function promptSummary(prompt) {
190
- if (!prompt)
191
- return "(none)";
192
- const lines = prompt.split(lineSep());
193
- for (const line of lines) {
194
- const trimmed = line.trim();
195
- if (trimmed !== "")
196
- return trimmed;
197
- }
198
- return "(none)";
199
- }
200
- export function validateTopology(topology) {
201
- const warnings = [];
202
- const targetedRoleIds = handoffTargetIds(topology);
203
- for (const role of topology.roles) {
204
- if (!targetedRoleIds.includes(role.id)) {
205
- warnings.push({
206
- kind: "orphan-role",
207
- message: `role \`${role.id}\` is not targeted by any handoff rule`,
208
- });
209
- }
210
- if (role.emits.length === 0) {
211
- warnings.push({
212
- kind: "no-emits",
213
- message: `role \`${role.id}\` has no emits`,
214
- });
215
- }
216
- }
217
- const emitted = allEmittedEvents(topology);
218
- for (const event of emitted) {
219
- if (!eventMatchesAny(event, topology.handoffKeys) &&
220
- event !== topology.completion) {
221
- warnings.push({
222
- kind: "unreachable-event",
223
- message: `event \`${event}\` is emitted but has no matching handoff rule`,
224
- });
225
- }
226
- }
227
- return warnings;
228
- }
229
- export function renderTopologyInspect(projectDir, format) {
230
- const topology = loadTopology(projectDir);
231
- if (topology.roles.length === 0) {
232
- console.log("No topology defined.");
233
- return;
234
- }
235
- switch (format) {
236
- case "json":
237
- renderTopologyJson(topology);
238
- break;
239
- case "graph":
240
- renderTopologyGraph(topology);
241
- break;
242
- default:
243
- renderTopologyTerminal(topology);
244
- break;
245
- }
246
- }
247
- function renderTopologyJson(topology) {
248
- const warnings = validateTopology(topology);
249
- const out = {
250
- name: topology.name,
251
- completion: topology.completion,
252
- roles: topology.roles.map((r) => ({
253
- id: r.id,
254
- emits: r.emits,
255
- prompt: promptSummary(r.prompt),
256
- })),
257
- handoff: topology.handoff,
258
- warnings: warnings.map((w) => ({ kind: w.kind, message: w.message })),
259
- };
260
- console.log(JSON.stringify(out, null, 2));
261
- }
262
- function renderTopologyGraph(topology) {
263
- const lines = [];
264
- for (const role of topology.roles) {
265
- for (const event of role.emits) {
266
- const targets = collectMatchingRoles(topology, event);
267
- if (event === topology.completion) {
268
- lines.push(`[${role.id}] --${event}--> (done)`);
269
- }
270
- else if (targets.length > 0) {
271
- lines.push(`[${role.id}] --${event}--> [${targets.join(", ")}]`);
272
- }
273
- else {
274
- lines.push(`[${role.id}] --${event}--> (?)`);
275
- }
276
- }
277
- }
278
- console.log(lines.join("\n"));
279
- }
280
- function renderTopologyTerminal(topology) {
281
- const lines = [];
282
- lines.push(`## Topology: ${topology.name || "(unnamed)"}`);
283
- lines.push("");
284
- lines.push(`Completion event: ${topology.completion || "(none)"}`);
285
- lines.push("");
286
- lines.push("### Roles");
287
- for (const role of topology.roles) {
288
- lines.push(`- \`${role.id}\` — emits: ${listText(role.emits)}`);
289
- lines.push(` prompt: ${promptSummary(role.prompt)}`);
290
- }
291
- lines.push("");
292
- lines.push("### Handoff Map");
293
- for (const key of topology.handoffKeys) {
294
- const targets = topology.handoff[key] ?? [];
295
- const isRegex = key.startsWith("/") && key.endsWith("/");
296
- const annotation = isRegex ? " (regex)" : "";
297
- lines.push(`- ${key}${annotation} → [${targets.join(", ")}]`);
298
- }
299
- lines.push("");
300
- const warnings = validateTopology(topology);
301
- if (warnings.length > 0) {
302
- lines.push("### Warnings");
303
- for (const w of warnings) {
304
- lines.push(`- ${w.message}`);
305
- }
306
- }
307
- console.log(lines.join("\n"));
308
- }
309
- //# sourceMappingURL=topology.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"topology.js","sourceRoot":"","sources":["../src/topology.ts"],"names":[],"mappings":"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"}
package/dist/usage.d.ts DELETED
@@ -1,9 +0,0 @@
1
- export declare function printUsage(): void;
2
- export declare function printRunUsage(): void;
3
- export declare function printEmitUsage(): void;
4
- export declare function printInspectUsage(): void;
5
- export declare function printMemoryUsage(): void;
6
- export declare function printTaskUsage(): void;
7
- export declare function printMemoryAddUsage(): void;
8
- export declare function missingPresetError(): void;
9
- export declare function unknownPresetError(name: string): void;
package/dist/usage.js DELETED
@@ -1,159 +0,0 @@
1
- import * as chains from "./chains.js";
2
- import { joinCsv } from "./utils.js";
3
- export function printUsage() {
4
- console.log("autoloop — autonomous LLM loop harness");
5
- console.log("");
6
- console.log("Usage:");
7
- console.log(" autoloop run <preset-name|preset-dir> [prompt...] [flags]");
8
- console.log(" autoloop emit <topic> [summary]");
9
- console.log(" autoloop inspect <artifact> [selector] [project-dir] [--format <md|terminal|text|json|csv>]");
10
- console.log(" autoloop memory <list|add|remove> [args]");
11
- console.log(" autoloop task <add|complete|update|remove|list> [args]");
12
- console.log(" autoloop list");
13
- console.log(" autoloop loops [--all]");
14
- console.log(" autoloop loops show <run-id>");
15
- console.log(" autoloop loops artifacts <run-id>");
16
- console.log(" autoloop loops watch <run-id>");
17
- console.log(" autoloop loops health [--verbose]");
18
- console.log(" autoloop chain <list|run> [args]");
19
- console.log(" autoloop runs clean [--max-age <days>]");
20
- console.log(" autoloop worktree <list|show|merge|clean> [args]");
21
- console.log(" autoloop config <show|set|unset|path> [args]");
22
- console.log(" autoloop dashboard [--port <port>]");
23
- console.log("");
24
- console.log("The preset argument is required for `run`. It must be a bundled preset");
25
- console.log("name (e.g. autocode, autoqa) or a path to a directory containing");
26
- console.log("autoloops.toml. Use `.` to run from the current directory.");
27
- console.log("");
28
- console.log("Flags:");
29
- console.log(" -h, --help Show this help");
30
- console.log(" -v, --verbose Set log level to debug");
31
- console.log(" -b, --backend Override backend command");
32
- console.log(" -p, --preset Resolve a bundled preset name or custom preset dir");
33
- console.log(" --chain Run an inline chain (comma-separated presets)");
34
- console.log(" --profile <spec> Activate a profile (repo:<name> or user:<name>), repeatable");
35
- console.log(" --no-default-profiles Suppress config-defined default profiles");
36
- console.log("");
37
- console.log("Developer Workflow:");
38
- console.log(" npm run build Type-check and compile (tsc)");
39
- console.log(" npm test Run the test suite (vitest)");
40
- console.log(" npm run test:watch Run tests in watch mode");
41
- console.log(" bin/install-hooks Install git pre-commit/pre-push hooks");
42
- }
43
- export function printRunUsage() {
44
- console.log("Usage: autoloop run <preset-name|preset-dir> [prompt...] [flags]");
45
- console.log("");
46
- console.log("The preset argument is required. It must be a bundled preset name");
47
- console.log("(e.g. autocode, autoqa) or a path to a directory containing");
48
- console.log("autoloops.toml. Use `.` to run from the current directory.");
49
- console.log("");
50
- console.log("Flags:");
51
- console.log(" -h, --help Show this help");
52
- console.log(" -v, --verbose Set log level to debug");
53
- console.log(" -b, --backend Override backend command");
54
- console.log(" -p, --preset Resolve a bundled preset name or custom preset dir");
55
- console.log(" --chain Run an inline chain (comma-separated presets)");
56
- console.log(" --profile <spec> Activate a profile (repo:<name> or user:<name>), repeatable");
57
- console.log(" --no-default-profiles Suppress config-defined default profiles");
58
- console.log("");
59
- console.log("Isolation:");
60
- console.log(" --worktree Run in an isolated git worktree");
61
- console.log(" --no-worktree Force shared checkout (disable worktree)");
62
- console.log(" --merge-strategy <s> Merge strategy: squash (default), merge, rebase");
63
- console.log(" --automerge Auto-merge worktree on completion");
64
- console.log(" --keep-worktree Keep worktree after run completes");
65
- console.log("");
66
- console.log("Examples:");
67
- console.log(" autoloop run autocode");
68
- console.log(' autoloop run autocode "Fix the login bug"');
69
- console.log(' autoloop run presets/autoqa "QA recent changes"');
70
- console.log(' autoloop run . "Run from current directory"');
71
- console.log("");
72
- console.log("Run 'autoloop list' to see all available presets.");
73
- }
74
- export function printEmitUsage() {
75
- console.log("Usage:");
76
- console.log(" autoloop emit <topic> [summary]");
77
- }
78
- export function printInspectUsage() {
79
- console.log("Usage:");
80
- console.log(" autoloop inspect <artifact> [selector] [project-dir] [--format <md|terminal|text|json|csv|graph>]");
81
- console.log("");
82
- console.log("Artifacts:");
83
- console.log("");
84
- console.log(" Artifact Selector Formats Default");
85
- console.log(" ───────────── ──────────── ────────────────────── ────────");
86
- console.log(" scratchpad — md, terminal terminal");
87
- console.log(" prompt <iteration> md, terminal terminal");
88
- console.log(" output <iteration> text text");
89
- console.log(" journal — json json");
90
- console.log(" memory — md, terminal, json terminal");
91
- console.log(" tasks — md, terminal terminal");
92
- console.log(" coordination — md, terminal terminal");
93
- console.log(" chain — md, terminal terminal");
94
- console.log(" metrics [run_id] md, terminal, csv, json terminal");
95
- console.log(" profiles — terminal terminal");
96
- console.log(" topology — terminal, json, graph terminal");
97
- console.log("");
98
- console.log("Examples:");
99
- console.log(" autoloop inspect scratchpad");
100
- console.log(" autoloop inspect prompt 5 --format md");
101
- console.log(" autoloop inspect topology");
102
- console.log(" autoloop inspect topology --format graph");
103
- console.log(" autoloop inspect topology --format json");
104
- }
105
- export function printMemoryUsage() {
106
- console.log("Usage:");
107
- console.log(" autoloop memory list [project-dir]");
108
- console.log(" autoloop memory status [project-dir]");
109
- console.log(" autoloop memory find <pattern...>");
110
- console.log(" autoloop memory add learning <text...>");
111
- console.log(" autoloop memory add preference <category> <text...>");
112
- console.log(" autoloop memory add meta <key> <value...>");
113
- console.log(" autoloop memory remove <id> [reason...]");
114
- }
115
- export function printTaskUsage() {
116
- console.log("Usage:");
117
- console.log(" autoloop task add <text...>");
118
- console.log(" autoloop task complete <id>");
119
- console.log(" autoloop task update <id> <text...>");
120
- console.log(" autoloop task remove <id> [reason...]");
121
- console.log(" autoloop task list [project-dir]");
122
- }
123
- export function printMemoryAddUsage() {
124
- console.log("Usage:");
125
- console.log(" autoloop memory add learning <text...>");
126
- console.log(" autoloop memory add preference <category> <text...>");
127
- console.log(" autoloop memory add meta <key> <value...>");
128
- console.log("");
129
- console.log("Memory helpers:");
130
- console.log(" autoloop memory status [project-dir]");
131
- console.log(" autoloop memory find <pattern...>");
132
- console.log(" autoloop memory remove <id> [reason...]");
133
- }
134
- export function missingPresetError() {
135
- console.log("error: missing required preset argument");
136
- console.log("");
137
- console.log("Usage: autoloop run <preset-name|preset-dir> [prompt...] [flags]");
138
- console.log("");
139
- console.log("Examples:");
140
- console.log(" autoloop run autocode");
141
- console.log(' autoloop run autocode "Fix the login bug"');
142
- console.log(' autoloop run presets/autoqa "QA recent changes"');
143
- console.log(' autoloop run . "Run from current directory"');
144
- console.log("");
145
- console.log("Run 'autoloop list' to see all available presets.");
146
- }
147
- export function unknownPresetError(name) {
148
- console.log(`error: preset \`${name}\` not found`);
149
- console.log("");
150
- console.log(`The argument \`${name}\` is not a valid preset name or directory.`);
151
- console.log("A preset must be a directory containing autoloops.toml (or autoloops.conf),");
152
- console.log("or a bundled preset name.");
153
- console.log("");
154
- console.log(`Available presets: ${joinCsv(chains.listKnownPresets())}`);
155
- console.log("Run 'autoloop list' to see all available presets.");
156
- console.log("");
157
- console.log("Usage: autoloop run <preset-name|preset-dir> [prompt...] [flags]");
158
- }
159
- //# sourceMappingURL=usage.js.map
package/dist/usage.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"usage.js","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC,MAAM,UAAU,UAAU;IACxB,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CACT,+FAA+F,CAChG,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC/B,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CACT,wEAAwE,CACzE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,kEAAkE,CACnE,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CACT,uEAAuE,CACxE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,kEAAkE,CACnE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,gFAAgF,CACjF,CAAC;IACF,OAAO,CAAC,GAAG,CACT,mEAAmE,CACpE,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IACnC,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,CAAC,GAAG,CACT,kEAAkE,CACnE,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CACT,mEAAmE,CACpE,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CACT,uEAAuE,CACxE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,kEAAkE,CACnE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,gFAAgF,CACjF,CAAC;IACF,OAAO,CAAC,GAAG,CACT,mEAAmE,CACpE,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC1B,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CACT,mEAAmE,CACpE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,0EAA0E,CAC3E,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACzB,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CACT,qGAAqG,CACtG,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC1B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;IAC9E,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACzB,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;IACrD,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,mBAAmB;IACjC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC/B,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CACT,kEAAkE,CACnE,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACzB,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,cAAc,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CACT,kBAAkB,IAAI,6CAA6C,CACpE,CAAC;IACF,OAAO,CAAC,GAAG,CACT,6EAA6E,CAC9E,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,sBAAsB,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CACT,kEAAkE,CACnE,CAAC;AACJ,CAAC"}
package/dist/utils.d.ts DELETED
@@ -1,21 +0,0 @@
1
- export declare function listContains(list: string[], needle: string): boolean;
2
- export declare function listText(list: string[]): string;
3
- export declare function splitCsv(text: string): string[];
4
- export declare function parseStringList(value: string): string[];
5
- export declare function joinCsv(items: string[]): string;
6
- export declare function lineSep(): string;
7
- export declare function joinLines(lines: string[]): string;
8
- export declare function nonemptyOr(value: string, fallback: string): string;
9
- export declare function shellQuote(text: string): string;
10
- export declare function replaceAll(text: string, pattern: string, replacement: string): string;
11
- export declare function expandTemplatePlaceholders(text: string, vars: Record<string, string>): string;
12
- export declare function assertNoRawAutoloopPaths(text: string, label: string): void;
13
- export declare function shellWords(parts: string[]): string;
14
- export declare function stripQuotes(value: string): string;
15
- export declare function isQuoted(value: string): boolean;
16
- export declare function sliceOuter(text: string): string;
17
- export declare function parseFlag(args: string[], flag: string): string | undefined;
18
- export declare function generateCompactId(prefix: string): string;
19
- export declare function generateReadableId(): string;
20
- export declare function readableIdCapacity(): number;
21
- export declare function uniqueGeneratedId(generate: () => string, existing: ReadonlySet<string>, maxAttempts?: number): string | undefined;