darwin-agents 0.7.0 → 0.8.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 (189) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/README.md +85 -34
  3. package/dist/src/cli/evolution-flags.d.ts +40 -0
  4. package/dist/src/cli/evolution-flags.d.ts.map +1 -0
  5. package/dist/src/cli/evolution-flags.js +106 -0
  6. package/dist/src/cli/evolution-flags.js.map +1 -0
  7. package/dist/src/cli/evolve.d.ts +10 -1
  8. package/dist/src/cli/evolve.d.ts.map +1 -1
  9. package/dist/src/cli/evolve.js +93 -8
  10. package/dist/src/cli/evolve.js.map +1 -1
  11. package/dist/src/cli/index.js +13 -0
  12. package/dist/src/cli/index.js.map +1 -1
  13. package/dist/src/cli/run.d.ts.map +1 -1
  14. package/dist/src/cli/run.js +38 -69
  15. package/dist/src/cli/run.js.map +1 -1
  16. package/dist/src/evolution/build-loop.d.ts +20 -0
  17. package/dist/src/evolution/build-loop.d.ts.map +1 -0
  18. package/dist/src/evolution/build-loop.js +67 -0
  19. package/dist/src/evolution/build-loop.js.map +1 -0
  20. package/dist/src/evolution/enabled-state.d.ts +59 -0
  21. package/dist/src/evolution/enabled-state.d.ts.map +1 -0
  22. package/dist/src/evolution/enabled-state.js +122 -0
  23. package/dist/src/evolution/enabled-state.js.map +1 -0
  24. package/dist/src/evolution/loop.d.ts +46 -0
  25. package/dist/src/evolution/loop.d.ts.map +1 -1
  26. package/dist/src/evolution/loop.js +119 -1
  27. package/dist/src/evolution/loop.js.map +1 -1
  28. package/dist/src/evolution/parse-score.d.ts +35 -0
  29. package/dist/src/evolution/parse-score.d.ts.map +1 -0
  30. package/dist/src/evolution/parse-score.js +115 -0
  31. package/dist/src/evolution/parse-score.js.map +1 -0
  32. package/dist/src/evolution/tracker.d.ts +13 -0
  33. package/dist/src/evolution/tracker.d.ts.map +1 -1
  34. package/dist/src/evolution/tracker.js +34 -0
  35. package/dist/src/evolution/tracker.js.map +1 -1
  36. package/dist/src/index.d.ts +2 -1
  37. package/dist/src/index.d.ts.map +1 -1
  38. package/dist/src/index.js +4 -0
  39. package/dist/src/index.js.map +1 -1
  40. package/dist/src/memory/postgres-memory.d.ts.map +1 -1
  41. package/dist/src/memory/postgres-memory.js +1 -0
  42. package/dist/src/memory/postgres-memory.js.map +1 -1
  43. package/dist/src/memory/sqlite-memory.d.ts.map +1 -1
  44. package/dist/src/memory/sqlite-memory.js +1 -0
  45. package/dist/src/memory/sqlite-memory.js.map +1 -1
  46. package/dist/src/types.d.ts +45 -0
  47. package/dist/src/types.d.ts.map +1 -1
  48. package/dist/src/types.js.map +1 -1
  49. package/package.json +2 -1
  50. package/dist/agents/analyst.d.ts +0 -11
  51. package/dist/agents/analyst.d.ts.map +0 -1
  52. package/dist/agents/analyst.js +0 -78
  53. package/dist/agents/analyst.js.map +0 -1
  54. package/dist/agents/blog-writer.d.ts +0 -13
  55. package/dist/agents/blog-writer.d.ts.map +0 -1
  56. package/dist/agents/blog-writer.js +0 -59
  57. package/dist/agents/blog-writer.js.map +0 -1
  58. package/dist/agents/critic.d.ts +0 -11
  59. package/dist/agents/critic.d.ts.map +0 -1
  60. package/dist/agents/critic.js +0 -57
  61. package/dist/agents/critic.js.map +0 -1
  62. package/dist/agents/index.d.ts +0 -15
  63. package/dist/agents/index.d.ts.map +0 -1
  64. package/dist/agents/index.js +0 -31
  65. package/dist/agents/index.js.map +0 -1
  66. package/dist/agents/investigator-critic.d.ts +0 -10
  67. package/dist/agents/investigator-critic.d.ts.map +0 -1
  68. package/dist/agents/investigator-critic.js +0 -78
  69. package/dist/agents/investigator-critic.js.map +0 -1
  70. package/dist/agents/investigator.d.ts +0 -13
  71. package/dist/agents/investigator.d.ts.map +0 -1
  72. package/dist/agents/investigator.js +0 -105
  73. package/dist/agents/investigator.js.map +0 -1
  74. package/dist/agents/marketing.d.ts +0 -13
  75. package/dist/agents/marketing.d.ts.map +0 -1
  76. package/dist/agents/marketing.js +0 -59
  77. package/dist/agents/marketing.js.map +0 -1
  78. package/dist/agents/researcher.d.ts +0 -11
  79. package/dist/agents/researcher.d.ts.map +0 -1
  80. package/dist/agents/researcher.js +0 -68
  81. package/dist/agents/researcher.js.map +0 -1
  82. package/dist/agents/writer.d.ts +0 -9
  83. package/dist/agents/writer.d.ts.map +0 -1
  84. package/dist/agents/writer.js +0 -47
  85. package/dist/agents/writer.js.map +0 -1
  86. package/dist/cli/create.d.ts +0 -11
  87. package/dist/cli/create.d.ts.map +0 -1
  88. package/dist/cli/create.js +0 -104
  89. package/dist/cli/create.js.map +0 -1
  90. package/dist/cli/evolve.d.ts +0 -13
  91. package/dist/cli/evolve.d.ts.map +0 -1
  92. package/dist/cli/evolve.js +0 -69
  93. package/dist/cli/evolve.js.map +0 -1
  94. package/dist/cli/index.d.ts +0 -13
  95. package/dist/cli/index.d.ts.map +0 -1
  96. package/dist/cli/index.js +0 -84
  97. package/dist/cli/index.js.map +0 -1
  98. package/dist/cli/init.d.ts +0 -12
  99. package/dist/cli/init.d.ts.map +0 -1
  100. package/dist/cli/init.js +0 -68
  101. package/dist/cli/init.js.map +0 -1
  102. package/dist/cli/run.d.ts +0 -7
  103. package/dist/cli/run.d.ts.map +0 -1
  104. package/dist/cli/run.js +0 -371
  105. package/dist/cli/run.js.map +0 -1
  106. package/dist/cli/status.d.ts +0 -7
  107. package/dist/cli/status.d.ts.map +0 -1
  108. package/dist/cli/status.js +0 -123
  109. package/dist/cli/status.js.map +0 -1
  110. package/dist/core/agent.d.ts +0 -53
  111. package/dist/core/agent.d.ts.map +0 -1
  112. package/dist/core/agent.js +0 -172
  113. package/dist/core/agent.js.map +0 -1
  114. package/dist/core/runner.d.ts +0 -75
  115. package/dist/core/runner.d.ts.map +0 -1
  116. package/dist/core/runner.js +0 -255
  117. package/dist/core/runner.js.map +0 -1
  118. package/dist/evolution/loop.d.ts +0 -100
  119. package/dist/evolution/loop.d.ts.map +0 -1
  120. package/dist/evolution/loop.js +0 -424
  121. package/dist/evolution/loop.js.map +0 -1
  122. package/dist/evolution/multi-critic.d.ts +0 -58
  123. package/dist/evolution/multi-critic.d.ts.map +0 -1
  124. package/dist/evolution/multi-critic.js +0 -326
  125. package/dist/evolution/multi-critic.js.map +0 -1
  126. package/dist/evolution/notifications.d.ts +0 -32
  127. package/dist/evolution/notifications.d.ts.map +0 -1
  128. package/dist/evolution/notifications.js +0 -92
  129. package/dist/evolution/notifications.js.map +0 -1
  130. package/dist/evolution/optimizer.d.ts +0 -64
  131. package/dist/evolution/optimizer.d.ts.map +0 -1
  132. package/dist/evolution/optimizer.js +0 -223
  133. package/dist/evolution/optimizer.js.map +0 -1
  134. package/dist/evolution/patterns.d.ts +0 -63
  135. package/dist/evolution/patterns.d.ts.map +0 -1
  136. package/dist/evolution/patterns.js +0 -297
  137. package/dist/evolution/patterns.js.map +0 -1
  138. package/dist/evolution/safety.d.ts +0 -76
  139. package/dist/evolution/safety.d.ts.map +0 -1
  140. package/dist/evolution/safety.js +0 -182
  141. package/dist/evolution/safety.js.map +0 -1
  142. package/dist/evolution/tracker.d.ts +0 -48
  143. package/dist/evolution/tracker.d.ts.map +0 -1
  144. package/dist/evolution/tracker.js +0 -163
  145. package/dist/evolution/tracker.js.map +0 -1
  146. package/dist/index.d.ts +0 -32
  147. package/dist/index.d.ts.map +0 -1
  148. package/dist/index.js +0 -35
  149. package/dist/index.js.map +0 -1
  150. package/dist/memory/index.d.ts +0 -32
  151. package/dist/memory/index.d.ts.map +0 -1
  152. package/dist/memory/index.js +0 -49
  153. package/dist/memory/index.js.map +0 -1
  154. package/dist/memory/postgres-memory.d.ts +0 -52
  155. package/dist/memory/postgres-memory.d.ts.map +0 -1
  156. package/dist/memory/postgres-memory.js +0 -515
  157. package/dist/memory/postgres-memory.js.map +0 -1
  158. package/dist/memory/sqlite-memory.d.ts +0 -36
  159. package/dist/memory/sqlite-memory.d.ts.map +0 -1
  160. package/dist/memory/sqlite-memory.js +0 -380
  161. package/dist/memory/sqlite-memory.js.map +0 -1
  162. package/dist/providers/anthropic.d.ts +0 -20
  163. package/dist/providers/anthropic.d.ts.map +0 -1
  164. package/dist/providers/anthropic.js +0 -82
  165. package/dist/providers/anthropic.js.map +0 -1
  166. package/dist/providers/claude-cli.d.ts +0 -35
  167. package/dist/providers/claude-cli.d.ts.map +0 -1
  168. package/dist/providers/claude-cli.js +0 -153
  169. package/dist/providers/claude-cli.js.map +0 -1
  170. package/dist/providers/index.d.ts +0 -39
  171. package/dist/providers/index.d.ts.map +0 -1
  172. package/dist/providers/index.js +0 -58
  173. package/dist/providers/index.js.map +0 -1
  174. package/dist/providers/ollama.d.ts +0 -17
  175. package/dist/providers/ollama.d.ts.map +0 -1
  176. package/dist/providers/ollama.js +0 -64
  177. package/dist/providers/ollama.js.map +0 -1
  178. package/dist/providers/openai.d.ts +0 -19
  179. package/dist/providers/openai.d.ts.map +0 -1
  180. package/dist/providers/openai.js +0 -75
  181. package/dist/providers/openai.js.map +0 -1
  182. package/dist/providers/types.d.ts +0 -62
  183. package/dist/providers/types.d.ts.map +0 -1
  184. package/dist/providers/types.js +0 -9
  185. package/dist/providers/types.js.map +0 -1
  186. package/dist/types.d.ts +0 -221
  187. package/dist/types.d.ts.map +0 -1
  188. package/dist/types.js +0 -19
  189. package/dist/types.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,41 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.7.1] — 2026-06-20
6
+
7
+ **Documentation honesty + a reproducible evolution benchmark.** No library code
8
+ changed — `src/` is byte-for-byte 0.7.0, **455 tests green**, `build` clean. This
9
+ release makes every claim in the README survive scrutiny and ships a way to
10
+ reproduce the one that matters.
11
+
12
+ ### Added
13
+
14
+ - **`benchmark/`** — a reproducible evolution benchmark (`npm run benchmark`).
15
+ Ships the baseline `writer` prompt and the prompt Darwin's own optimizer
16
+ produced from it, a frozen held-out task set, and the exact critic-scoring
17
+ loop, so anyone can reproduce the baseline-vs-evolved delta on their own tasks.
18
+ `--quick` (1 task) and `--dry` (validate wiring, zero LLM calls) flags.
19
+
20
+ ### Changed
21
+
22
+ - **README metrics are now real and dated.** Replaced the stale "300+ runs /
23
+ 7.2–7.8" block with actual figures from 419 runs across 19 agents
24
+ (Mar–Jun 2026), including the measured v1→v2 evolution lift (writer +0.23,
25
+ marketing +0.28).
26
+ - **Removed the "Darwin Pro — coming soon" tier.** PostgreSQL already ships free
27
+ in the open-source package; the old table implied a paywall and even listed
28
+ Postgres itself as a paid feature. Replaced with an honest "SQLite or
29
+ PostgreSQL — both free, both MIT" section + an open roadmap for the
30
+ genuinely-unbuilt features (pgvector semantic search, cross-agent learnings,
31
+ analytics, contradiction detection, data export).
32
+ - **Clarified the LLM-as-judge mitigation.** Critics are multi-*dimension* by
33
+ default; the CLI spreads them across model families (GPT + Claude) only when
34
+ more than one provider key is present.
35
+ - **Comparison table:** "MCP native" → "MCP-native memory bridge" — the specific,
36
+ defensible claim (other frameworks added MCP tool use during 2025).
37
+ - Surfaced the production safety gate, online GEPA, and always-valid sequential
38
+ tests in a "why this isn't a toy" callout near the top of the README.
39
+
5
40
  ## [0.7.0] — 2026-06-20
6
41
 
7
42
  **Statistical rigor + coverage sampling.** Seven additive, opt-in upgrades that
package/README.md CHANGED
@@ -79,6 +79,16 @@ Your agent got better.
79
79
  You did nothing.
80
80
  ```
81
81
 
82
+ > **Why this isn't a toy.** The loop runs behind a real production **safety gate**
83
+ > — regression rollback to last-known-good, data-quality guards that pause
84
+ > evolution during a tool outage, and an alignment check on *every* mutation so a
85
+ > rewrite can't quietly erode a safety constraint. It can drive that mutation with
86
+ > a [GEPA](https://arxiv.org/abs/2507.19457) reflective optimizer running **online,
87
+ > inside the gate** (not as an offline batch step), and the A/B gate supports
88
+ > **always-valid sequential tests** (mSPRT / Hoeffding) so checking after every run
89
+ > doesn't inflate false positives. Details: [reflective evolution](#reflective-evolution--gepa-online-v06-opt-in)
90
+ > · [statistical rigor](#statistical-rigor--coverage-sampling-v07-opt-in).
91
+
82
92
  ## Quick Start
83
93
 
84
94
  ```bash
@@ -313,28 +323,36 @@ last run's lessons.
313
323
 
314
324
  <!-- REAL_METRICS_START -->
315
325
 
316
- ### Real results from 300+ production runs
326
+ ### Real results from our own production use (Mar–Jun 2026)
317
327
 
318
- These are actual metrics from our development not synthetic benchmarks.
328
+ Actual numbers from **419 runs across 19 agents** in our internal `darwin_db` —
329
+ not synthetic benchmarks. "Success" means the run completed and produced valid
330
+ output (100% across 419 runs); "quality" is the critic's separate 1–10 score.
319
331
 
320
- ```
321
- Agents: writer, researcher, marketing, blog-writer
322
- Total Runs: 300+
323
- Success Rate: 100%
332
+ > Those 19 are our own internal + custom agents; the package ships **8 built-in
333
+ > agents** by default (`writer`, `researcher`, `critic`, `analyst`,
334
+ > `investigator`, `investigator-critic`, `marketing`, `blog-writer`) — the table
335
+ > below shows the four with enough runs to report.
324
336
 
325
- Writer: 7.2/10 (120 runs across tech, webdesign, market)
326
- Marketing: 7.8/10 (70 runs across LinkedIn, Instagram)
327
- Researcher: 7.6/10 (50+ runs, web research with citations)
337
+ ```
338
+ Agent Runs Avg quality
339
+ writer 172 6.94 / 10
340
+ marketing 70 7.74 / 10
341
+ investigator 28 8.33 / 10
342
+ blog-writer 5 8.20 / 10
328
343
  ```
329
344
 
330
- #### Multi-Model Critics in action
345
+ **Evolution, measured.** When the safety gate adopted an evolved prompt, the
346
+ critic score rose on the runs that followed — modest, but real and directional:
331
347
 
332
348
  ```
333
- platform-compliance ████████░░ 8/10
334
- scroll-stopping ████████░░ 8/10
335
- conversion-intent ████████░░ 8/10
349
+ writer v1 6.89 (126 runs) → v2 7.12 (42 runs) +0.23
350
+ marketing v1 7.64 (45 runs) → v2 7.92 (25 runs) +0.28
336
351
  ```
337
352
 
353
+ Don't take our word for it — reproduce the v1-vs-evolved comparison on your own
354
+ tasks with [`npm run benchmark`](benchmark/).
355
+
338
356
  <!-- REAL_METRICS_END -->
339
357
 
340
358
  ## Feature Comparison
@@ -346,7 +364,7 @@ conversion-intent ████████░░ 8/10
346
364
  | Safety gate + rollback | **Yes** | No | No | No | No |
347
365
  | TypeScript native | **Yes** | No (Python) | No (Python) | No (Python) | No (Python) |
348
366
  | Zero-config first agent | **Yes** | No | No | No | Partial |
349
- | MCP native | **Yes** | No | No | No | No |
367
+ | MCP-native memory bridge | **Yes** | No | No | No | No |
350
368
  | File-based (no DB required) | **Yes** | No | No | No | No |
351
369
  | Built-in Critic agent | **Yes** | No | No | No | No |
352
370
 
@@ -374,8 +392,10 @@ Darwin uses SQLite by default — zero config, single file, no database to insta
374
392
  └── exp-researcher-2026-03-08-002.md
375
393
  ```
376
394
 
377
- **Want semantic search, cross-agent learnings, and analytics?**
378
- Upgrade to [Darwin Pro](#darwin-pro) for PostgreSQL + pgvector support.
395
+ **Want concurrent multi-process writes and richer analytics?**
396
+ PostgreSQL is supported out of the box, for free set `DARWIN_POSTGRES_URL`.
397
+ Semantic search (pgvector), cross-agent learnings and analytics are on the
398
+ [roadmap](#storage-sqlite-or-postgresql--both-free-both-mit), not gated behind a paywall.
379
399
 
380
400
  ## CLI Reference
381
401
 
@@ -387,34 +407,65 @@ darwin run analyst --path ./src # Analyze a codebase
387
407
  darwin status # Overview of all agents
388
408
  darwin status writer # Detailed agent stats + evolution history
389
409
 
390
- darwin evolve writer --enable # Enable self-evolution
410
+ darwin evolve writer --enable # Enable self-evolution (persisted)
411
+ darwin evolve writer --disable # Disable self-evolution (persisted)
391
412
  darwin evolve writer --reset # Reset to v1
413
+ darwin evolve writer --force # Force one optimization cycle now
392
414
 
393
415
  darwin create my-agent # Scaffold a new agent
394
416
  ```
395
417
 
396
- ## Darwin Pro
418
+ ### Advanced evolution flags
397
419
 
398
- The free version uses SQLite great for getting started, handles thousands of experiments.
420
+ The v0.6/v0.7 evolution strategies are reachable from the CLI. `darwin evolve`
421
+ **persists** them onto the agent (they survive process exit); `darwin run`
422
+ accepts the same flags as a one-off override for a single run.
423
+
424
+ ```bash
425
+ # Persist: reflect with GEPA + a stronger reflection model, pick parents by coverage
426
+ darwin evolve writer --gepa --reflection-model claude-opus-4-8 --coverage
427
+
428
+ # One-off for a single run
429
+ darwin run writer "Explain consensus" --gepa --pareto-gate
430
+ ```
399
431
 
400
- For teams and production use, Darwin Pro adds:
432
+ | Flag | What it does |
433
+ |------|--------------|
434
+ | `--gepa` / `--no-gepa` | GEPA-style reflective prompt mutation (vs. the legacy stats optimizer) |
435
+ | `--merge` / `--no-merge` | GEPA system-aware merge of two Pareto-front prompts as a challenger source |
436
+ | `--pareto-gate` / `--no-pareto-gate` | Reject an A/B winner that regressed on any objective |
437
+ | `--coverage` / `--no-coverage` | Pick the reflection parent by per-task-type coverage breadth (GEPA Algorithm 2) |
438
+ | `--reflection-model <id>` | Use a stronger model for GEPA reflection (the documented leverage point) |
401
439
 
402
- | Feature | Free (SQLite) | Pro (PostgreSQL) |
440
+ All default to **off** the baseline single-objective evolution loop is
441
+ unchanged unless you opt in.
442
+
443
+ ## Storage: SQLite or PostgreSQL — both free, both MIT
444
+
445
+ Darwin runs on SQLite by default (zero config, single file) and on PostgreSQL
446
+ out of the box — just set `DARWIN_POSTGRES_URL`. Both backends ship in the
447
+ open-source package. There is no paywall.
448
+
449
+ | Capability | SQLite | PostgreSQL |
403
450
  |---------|:---:|:---:|
404
451
  | Experiment tracking | ✓ | ✓ |
405
452
  | Prompt versioning | ✓ | ✓ |
406
- | A/B testing | ✓ | ✓ |
407
- | Safety gate | ✓ | ✓ |
408
- | Keyword search | | ✓ |
409
- | **Semantic search** (pgvector) | — | ✓ |
410
- | **Cross-agent learnings** | — | ✓ |
411
- | **Analytics & time series** | — | ✓ |
412
- | **Contradiction detection** | | |
413
- | **Team support** (multi-user) | — | ✓ |
414
- | **Data export** (CSV/JSON) | — | ✓ |
415
- | **Learning decay** | — | ✓ |
416
-
417
- *Coming soon. Follow the repo for updates.*
453
+ | A/B testing + safety gate | ✓ | ✓ |
454
+ | Keyword search | ✓ (FTS5) | ✓ (GIN / `ts_rank`) |
455
+ | Concurrent multi-process writes | | ✓ |
456
+
457
+ ### Roadmap
458
+
459
+ Not built yettracked in the open, PRs welcome:
460
+
461
+ - Semantic search (pgvector embeddings)
462
+ - Cross-agent learnings
463
+ - Analytics & time series
464
+ - Contradiction detection
465
+ - Data export (CSV/JSON)
466
+
467
+ The core stays MIT. If a hosted option ever ships, the self-host path keeps
468
+ every feature.
418
469
 
419
470
  ## FAQ
420
471
 
@@ -438,7 +489,7 @@ The safety gate prevents regressions. If a new variant scores >20% lower, Darwin
438
489
 
439
490
  ## Known Limitations
440
491
 
441
- - **LLM-as-Judge bias**: Critics use LLMs to evaluate LLM outputs. We mitigate this with multi-model critics (GPT + Claude), but inherent self-preference bias exists. [Research context](https://openreview.net/forum?id=Ns8zGZ0lmM).
492
+ - **LLM-as-Judge bias**: Critics use LLMs to evaluate LLM outputs. Each agent is scored by a **multi-dimension critic set** (several scoring rubrics per agent type, not a single number). When more than one provider key is present, the CLI also spreads those critics across model families — e.g. GPT for one, Claude for another — to blunt single-model self-preference; with one provider they all run on it. Inherent judge bias still exists. [Research context](https://openreview.net/forum?id=Ns8zGZ0lmM).
442
493
  - **Statistical simplicity (default)**: A/B tests use mean comparison with a 5% threshold by default, not formal significance tests. `computeDynamicMinRuns()` adjusts sample sizes based on variance. For rigor, v0.6 added an opt-in `requireConfidence` effect-size gate and **v0.7 ships proper always-valid sequential tests** — set `confidenceMethod: 'msprt'` (Mixture SPRT) or `'hoeffding'` (σ-free confidence sequence) on your `SafetyThresholds` to make the peeking-resistant gate statistically sound. The default path remains the simple threshold for zero-config use.
443
494
  - **No human-in-the-loop approval**: Prompt mutations go directly to A/B testing. Telegram notifications inform you, but there's no approval gate before testing starts.
444
495
 
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Darwin CLI — shared parser for the advanced evolution-config flags.
3
+ *
4
+ * Both `darwin run` and `darwin evolve` accept the same knobs that toggle the
5
+ * v0.6/v0.7 evolution config (GEPA reflective optimizer, system-aware merge,
6
+ * Pareto activation gate, instance-wise coverage selection, and the reflection
7
+ * model). This module centralises the flag spelling + parsing so the two
8
+ * commands stay in sync.
9
+ *
10
+ * --gepa / --no-gepa
11
+ * --merge / --no-merge
12
+ * --pareto-gate / --no-pareto-gate
13
+ * --coverage / --no-coverage
14
+ * --reflection-model <model-id>
15
+ */
16
+ import type { EvolutionConfigOverride } from '../types.js';
17
+ /** True when `arg` is one of the evolution-config flags this module handles. */
18
+ export declare function isEvolutionConfigFlag(arg: string): boolean;
19
+ /**
20
+ * Apply a single recognised evolution flag to `target`, mutating it in place.
21
+ *
22
+ * Returns the number of EXTRA argv tokens consumed (1 for `--reflection-model`
23
+ * which takes a value, 0 for the boolean flags). Callers that walk argv use the
24
+ * return value to advance their index. Unknown flags are ignored (return 0) —
25
+ * use {@link isEvolutionConfigFlag} to gate first.
26
+ */
27
+ export declare function applyEvolutionFlag(arg: string, nextArg: string | undefined, target: EvolutionConfigOverride): number;
28
+ /**
29
+ * Parse an argv slice into an {@link EvolutionConfigOverride}, returning the
30
+ * override plus the tokens that were NOT consumed (so the caller can keep
31
+ * parsing its own flags / positionals). Only the evolution-config flags above
32
+ * are recognised; everything else is passed through untouched.
33
+ */
34
+ export declare function parseEvolutionConfigFlags(args: string[]): {
35
+ override: EvolutionConfigOverride;
36
+ rest: string[];
37
+ };
38
+ /** True when the override carries at least one set flag. */
39
+ export declare function hasAnyEvolutionFlag(override: EvolutionConfigOverride): boolean;
40
+ //# sourceMappingURL=evolution-flags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evolution-flags.d.ts","sourceRoot":"","sources":["../../../src/cli/evolution-flags.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE3D,gFAAgF;AAChF,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAe1D;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,MAAM,EAAE,uBAAuB,GAC9B,MAAM,CAmCR;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;IACzD,QAAQ,EAAE,uBAAuB,CAAC;IAClC,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB,CAaA;AAED,4DAA4D;AAC5D,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,uBAAuB,GAAG,OAAO,CAQ9E"}
@@ -0,0 +1,106 @@
1
+ /**
2
+ * Darwin CLI — shared parser for the advanced evolution-config flags.
3
+ *
4
+ * Both `darwin run` and `darwin evolve` accept the same knobs that toggle the
5
+ * v0.6/v0.7 evolution config (GEPA reflective optimizer, system-aware merge,
6
+ * Pareto activation gate, instance-wise coverage selection, and the reflection
7
+ * model). This module centralises the flag spelling + parsing so the two
8
+ * commands stay in sync.
9
+ *
10
+ * --gepa / --no-gepa
11
+ * --merge / --no-merge
12
+ * --pareto-gate / --no-pareto-gate
13
+ * --coverage / --no-coverage
14
+ * --reflection-model <model-id>
15
+ */
16
+ /** True when `arg` is one of the evolution-config flags this module handles. */
17
+ export function isEvolutionConfigFlag(arg) {
18
+ switch (arg) {
19
+ case '--gepa':
20
+ case '--no-gepa':
21
+ case '--merge':
22
+ case '--no-merge':
23
+ case '--pareto-gate':
24
+ case '--no-pareto-gate':
25
+ case '--coverage':
26
+ case '--no-coverage':
27
+ case '--reflection-model':
28
+ return true;
29
+ default:
30
+ return false;
31
+ }
32
+ }
33
+ /**
34
+ * Apply a single recognised evolution flag to `target`, mutating it in place.
35
+ *
36
+ * Returns the number of EXTRA argv tokens consumed (1 for `--reflection-model`
37
+ * which takes a value, 0 for the boolean flags). Callers that walk argv use the
38
+ * return value to advance their index. Unknown flags are ignored (return 0) —
39
+ * use {@link isEvolutionConfigFlag} to gate first.
40
+ */
41
+ export function applyEvolutionFlag(arg, nextArg, target) {
42
+ switch (arg) {
43
+ case '--gepa':
44
+ target.useGepa = true;
45
+ return 0;
46
+ case '--no-gepa':
47
+ target.useGepa = false;
48
+ return 0;
49
+ case '--merge':
50
+ target.useMerge = true;
51
+ return 0;
52
+ case '--no-merge':
53
+ target.useMerge = false;
54
+ return 0;
55
+ case '--pareto-gate':
56
+ target.paretoGate = true;
57
+ return 0;
58
+ case '--no-pareto-gate':
59
+ target.paretoGate = false;
60
+ return 0;
61
+ case '--coverage':
62
+ target.useCoverage = true;
63
+ return 0;
64
+ case '--no-coverage':
65
+ target.useCoverage = false;
66
+ return 0;
67
+ case '--reflection-model':
68
+ if (nextArg !== undefined) {
69
+ target.reflectionModel = nextArg;
70
+ return 1;
71
+ }
72
+ return 0;
73
+ default:
74
+ return 0;
75
+ }
76
+ }
77
+ /**
78
+ * Parse an argv slice into an {@link EvolutionConfigOverride}, returning the
79
+ * override plus the tokens that were NOT consumed (so the caller can keep
80
+ * parsing its own flags / positionals). Only the evolution-config flags above
81
+ * are recognised; everything else is passed through untouched.
82
+ */
83
+ export function parseEvolutionConfigFlags(args) {
84
+ const override = {};
85
+ const rest = [];
86
+ for (let i = 0; i < args.length; i++) {
87
+ const arg = args[i];
88
+ if (isEvolutionConfigFlag(arg)) {
89
+ const consumed = applyEvolutionFlag(arg, args[i + 1], override);
90
+ i += consumed;
91
+ }
92
+ else {
93
+ rest.push(arg);
94
+ }
95
+ }
96
+ return { override, rest };
97
+ }
98
+ /** True when the override carries at least one set flag. */
99
+ export function hasAnyEvolutionFlag(override) {
100
+ return (override.useGepa !== undefined ||
101
+ override.useMerge !== undefined ||
102
+ override.paretoGate !== undefined ||
103
+ override.useCoverage !== undefined ||
104
+ override.reflectionModel !== undefined);
105
+ }
106
+ //# sourceMappingURL=evolution-flags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evolution-flags.js","sourceRoot":"","sources":["../../../src/cli/evolution-flags.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,gFAAgF;AAChF,MAAM,UAAU,qBAAqB,CAAC,GAAW;IAC/C,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,WAAW,CAAC;QACjB,KAAK,SAAS,CAAC;QACf,KAAK,YAAY,CAAC;QAClB,KAAK,eAAe,CAAC;QACrB,KAAK,kBAAkB,CAAC;QACxB,KAAK,YAAY,CAAC;QAClB,KAAK,eAAe,CAAC;QACrB,KAAK,oBAAoB;YACvB,OAAO,IAAI,CAAC;QACd;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAChC,GAAW,EACX,OAA2B,EAC3B,MAA+B;IAE/B,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,QAAQ;YACX,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;YACtB,OAAO,CAAC,CAAC;QACX,KAAK,WAAW;YACd,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,OAAO,CAAC,CAAC;QACX,KAAK,SAAS;YACZ,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;YACvB,OAAO,CAAC,CAAC;QACX,KAAK,YAAY;YACf,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;YACxB,OAAO,CAAC,CAAC;QACX,KAAK,eAAe;YAClB,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;YACzB,OAAO,CAAC,CAAC;QACX,KAAK,kBAAkB;YACrB,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC;YAC1B,OAAO,CAAC,CAAC;QACX,KAAK,YAAY;YACf,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;YAC1B,OAAO,CAAC,CAAC;QACX,KAAK,eAAe;YAClB,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC;YAC3B,OAAO,CAAC,CAAC;QACX,KAAK,oBAAoB;YACvB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC1B,MAAM,CAAC,eAAe,GAAG,OAAO,CAAC;gBACjC,OAAO,CAAC,CAAC;YACX,CAAC;YACD,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,CAAC;IACb,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB,CAAC,IAAc;IAItD,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAC7C,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;QACrB,IAAI,qBAAqB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAChE,CAAC,IAAI,QAAQ,CAAC;QAChB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAC5B,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,mBAAmB,CAAC,QAAiC;IACnE,OAAO,CACL,QAAQ,CAAC,OAAO,KAAK,SAAS;QAC9B,QAAQ,CAAC,QAAQ,KAAK,SAAS;QAC/B,QAAQ,CAAC,UAAU,KAAK,SAAS;QACjC,QAAQ,CAAC,WAAW,KAAK,SAAS;QAClC,QAAQ,CAAC,eAAe,KAAK,SAAS,CACvC,CAAC;AACJ,CAAC"}
@@ -7,7 +7,16 @@
7
7
  * darwin evolve researcher --enable
8
8
  * darwin evolve researcher --disable
9
9
  * darwin evolve researcher --reset
10
- * darwin evolve researcher --force (force optimization now)
10
+ * darwin evolve researcher --force (force one optimization now)
11
+ * darwin evolve researcher --gepa --coverage (persist advanced config flags)
12
+ * darwin evolve researcher --reflection-model claude-opus-4-8
13
+ *
14
+ * Advanced flags (persisted, also accepted by `darwin run`):
15
+ * --gepa / --no-gepa GEPA reflective optimizer
16
+ * --merge / --no-merge GEPA system-aware merge
17
+ * --pareto-gate / --no-pareto-gate multi-objective A/B activation gate
18
+ * --coverage / --no-coverage instance-wise coverage selection
19
+ * --reflection-model <id> stronger reflection model for GEPA
11
20
  */
12
21
  export declare function evolveCommand(args: string[]): Promise<void>;
13
22
  //# sourceMappingURL=evolve.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"evolve.d.ts","sourceRoot":"","sources":["../../../src/cli/evolve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsDjE"}
1
+ {"version":3,"file":"evolve.d.ts","sourceRoot":"","sources":["../../../src/cli/evolve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAeH,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAkGjE"}
@@ -7,28 +7,52 @@
7
7
  * darwin evolve researcher --enable
8
8
  * darwin evolve researcher --disable
9
9
  * darwin evolve researcher --reset
10
- * darwin evolve researcher --force (force optimization now)
10
+ * darwin evolve researcher --force (force one optimization now)
11
+ * darwin evolve researcher --gepa --coverage (persist advanced config flags)
12
+ * darwin evolve researcher --reflection-model claude-opus-4-8
13
+ *
14
+ * Advanced flags (persisted, also accepted by `darwin run`):
15
+ * --gepa / --no-gepa GEPA reflective optimizer
16
+ * --merge / --no-merge GEPA system-aware merge
17
+ * --pareto-gate / --no-pareto-gate multi-objective A/B activation gate
18
+ * --coverage / --no-coverage instance-wise coverage selection
19
+ * --reflection-model <id> stronger reflection model for GEPA
11
20
  */
12
21
  import { createMemory } from '../memory/index.js';
13
22
  import { loadConfig } from '../core/agent.js';
14
23
  import { builtinAgents } from '../agents/index.js';
24
+ import { resolveEvolutionEnabled, resolveEvolutionConfig, setEvolutionEnabled, setEvolutionConfigOverrides, } from '../evolution/enabled-state.js';
25
+ import { buildEvolutionLoop } from '../evolution/build-loop.js';
26
+ import { parseEvolutionConfigFlags, hasAnyEvolutionFlag } from './evolution-flags.js';
15
27
  export async function evolveCommand(args) {
16
28
  const agentName = args[0];
17
29
  if (!agentName) {
18
- throw new Error('Usage: darwin evolve <agent> [--enable|--disable|--reset|--force]');
30
+ throw new Error('Usage: darwin evolve <agent> [--enable|--disable|--reset|--force|--gepa|--coverage|…]');
19
31
  }
20
32
  const agent = builtinAgents[agentName];
21
33
  if (!agent) {
22
34
  throw new Error(`Unknown agent: "${agentName}". Available: ${Object.keys(builtinAgents).join(', ')}`);
23
35
  }
24
- const flags = args.slice(1);
36
+ // Separate the advanced evolution-config flags from the action flags.
37
+ const { override, rest: flags } = parseEvolutionConfigFlags(args.slice(1));
25
38
  const config = await loadConfig();
26
39
  const memory = createMemory(config);
27
40
  await memory.init();
41
+ // Persist advanced-config flags FIRST (so e.g. `--force --gepa` forces with
42
+ // GEPA on, and `--gepa --coverage` alone just records the config).
43
+ if (hasAnyEvolutionFlag(override)) {
44
+ await setEvolutionConfigOverrides(memory, agentName, override);
45
+ console.log(`[darwin] Evolution config updated for ${agentName}: ${describeOverride(override)}`);
46
+ }
28
47
  if (flags.includes('--enable')) {
48
+ // Persist the override into DarwinState so it survives process exit.
49
+ // (Mutating the in-memory singleton alone was the v0.7.1 bug — the flag
50
+ // was gone the moment the CLI process ended and `darwin run` read the
51
+ // static source default again.)
29
52
  if (agent.evolution) {
30
53
  agent.evolution.enabled = true;
31
54
  }
55
+ await setEvolutionEnabled(memory, agentName, true);
32
56
  console.log(`[darwin] Evolution ENABLED for ${agentName}`);
33
57
  console.log(`[darwin] The critic will evaluate runs and Darwin will optimize prompts automatically.`);
34
58
  }
@@ -36,6 +60,7 @@ export async function evolveCommand(args) {
36
60
  if (agent.evolution) {
37
61
  agent.evolution.enabled = false;
38
62
  }
63
+ await setEvolutionEnabled(memory, agentName, false);
39
64
  console.log(`[darwin] Evolution DISABLED for ${agentName}`);
40
65
  }
41
66
  else if (flags.includes('--reset')) {
@@ -47,23 +72,83 @@ export async function evolveCommand(args) {
47
72
  console.log(`[darwin] Evolution RESET for ${agentName}. Back to v1.`);
48
73
  }
49
74
  else if (flags.includes('--force')) {
50
- console.log(`[darwin] Force evolution is not yet available.`);
51
- console.log(`[darwin] Run the agent normally Darwin will evolve automatically after enough runs.`);
75
+ // On-demand manual trigger: run the loop's variant-generation + A/B-start
76
+ // path ONCE, bypassing the "enough runs / actionable patterns / data
77
+ // quality" gates of the automatic loop. Uses the experiments collected so
78
+ // far. Refuses cleanly when there is nothing to mutate from (no active
79
+ // prompt / no experiments) or a test is already running.
80
+ console.log(`[darwin] Forcing evolution for ${agentName}...`);
81
+ // Build the loop with the resolved advanced config (persisted overrides +
82
+ // any flags passed on this command line) so `--force --gepa` etc. take
83
+ // effect for the forced cycle.
84
+ const state = await memory.getState();
85
+ const resolvedEvolution = resolveEvolutionConfig(agent, state);
86
+ const evolutionAgent = resolvedEvolution
87
+ ? { ...agent, evolution: resolvedEvolution }
88
+ : agent;
89
+ const loop = buildEvolutionLoop(evolutionAgent, config, memory);
90
+ const evoResult = await loop.forceEvolve(agentName);
91
+ if (evoResult.abTestStarted) {
92
+ console.log(`[darwin] EVOLVED: ${evoResult.message}`);
93
+ }
94
+ else {
95
+ console.log(`[darwin] ${evoResult.message}`);
96
+ }
97
+ if (evoResult.patternsFound.length > 0) {
98
+ console.log(`[darwin] Patterns detected:`);
99
+ for (const p of evoResult.patternsFound.slice(0, 5)) {
100
+ console.log(` ${p.type}: ${p.description}`);
101
+ }
102
+ }
52
103
  }
53
- else {
54
- // Show current status
104
+ else if (!hasAnyEvolutionFlag(override)) {
105
+ // Show current status (only when no config flag was the whole command —
106
+ // a bare `--gepa` already printed its confirmation above).
55
107
  const state = await memory.getState();
56
108
  const version = state.activeVersions[agentName] ?? 'v1';
57
109
  const runs = state.experimentCounts[agentName] ?? 0;
58
110
  const abTest = state.abTests[agentName];
59
- const enabled = agent.evolution?.enabled ?? false;
111
+ // Reflect the PERSISTED override (set by --enable/--disable) so `darwin
112
+ // evolve <agent>` reports the same enabled-state `darwin run` will act on.
113
+ const enabled = resolveEvolutionEnabled(agent, state);
114
+ const evo = resolveEvolutionConfig(agent, state);
60
115
  console.log(`\n[darwin] Evolution for ${agentName}:`);
61
116
  console.log(` Enabled: ${enabled ? 'yes' : 'no'}`);
62
117
  console.log(` Version: ${version}`);
63
118
  console.log(` Runs: ${runs}`);
64
119
  console.log(` A/B Test: ${abTest ? `${abTest.versionA} vs ${abTest.versionB}` : 'none'}`);
65
120
  console.log(` Min Runs: ${agent.evolution?.minRuns ?? 5}`);
121
+ console.log(` Advanced: ${describeConfig(evo)}`);
66
122
  }
67
123
  await memory.close();
68
124
  }
125
+ /** One-line summary of which advanced flags an override set (for confirmation). */
126
+ function describeOverride(o) {
127
+ const parts = [];
128
+ if (o.useGepa !== undefined)
129
+ parts.push(`gepa=${o.useGepa}`);
130
+ if (o.useMerge !== undefined)
131
+ parts.push(`merge=${o.useMerge}`);
132
+ if (o.paretoGate !== undefined)
133
+ parts.push(`paretoGate=${o.paretoGate}`);
134
+ if (o.useCoverage !== undefined)
135
+ parts.push(`coverage=${o.useCoverage}`);
136
+ if (o.reflectionModel !== undefined)
137
+ parts.push(`reflectionModel=${o.reflectionModel}`);
138
+ return parts.length > 0 ? parts.join(', ') : '(none)';
139
+ }
140
+ /** One-line summary of the effective advanced config for the status view. */
141
+ function describeConfig(evo) {
142
+ if (!evo)
143
+ return '(no evolution config)';
144
+ const parts = [
145
+ `gepa=${evo.useGepa ?? false}`,
146
+ `merge=${evo.useMerge ?? false}`,
147
+ `paretoGate=${evo.paretoGate ?? false}`,
148
+ `coverage=${evo.useCoverage ?? false}`,
149
+ ];
150
+ if (evo.reflectionModel)
151
+ parts.push(`reflectionModel=${evo.reflectionModel}`);
152
+ return parts.join(', ');
153
+ }
69
154
  //# sourceMappingURL=evolve.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"evolve.js","sourceRoot":"","sources":["../../../src/cli/evolve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evolve.js","sourceRoot":"","sources":["../../../src/cli/evolve.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,12 @@ const HELP = `
36
36
  darwin run analyst --path ./src
37
37
  darwin status researcher
38
38
  darwin evolve researcher --enable
39
+ darwin evolve researcher --force
40
+
41
+ Evolve flags:
42
+ --enable / --disable Persistently turn self-evolution on/off for an agent
43
+ --reset Reset the agent back to its v1 prompt
44
+ --force Force one optimization cycle now (needs >=1 prior run)
39
45
 
40
46
  Options:
41
47
  --task-type <type> Categorize the task (tech, webdesign, market, general)
@@ -44,6 +50,13 @@ const HELP = `
44
50
  --model <model> Override LLM model
45
51
  --verbose Show detailed output
46
52
  --help Show this help
53
+
54
+ Advanced evolution flags (run + evolve; persisted by evolve):
55
+ --gepa / --no-gepa GEPA reflective optimizer
56
+ --merge / --no-merge GEPA system-aware merge
57
+ --pareto-gate / --no-pareto-gate multi-objective A/B activation gate
58
+ --coverage / --no-coverage instance-wise coverage selection
59
+ --reflection-model <id> stronger reflection model for GEPA
47
60
  `;
48
61
  async function main() {
49
62
  const args = process.argv.slice(2);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BZ,CAAC;AAEF,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACxE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAExB,IAAI,CAAC;QACH,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,KAAK;gBACR,MAAM,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChC,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,MAAM;gBACT,MAAM,WAAW,EAAE,CAAC;gBACpB,MAAM;YACR;gBACE,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,qBAAsB,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;GASG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,IAAI,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CZ,CAAC;AAEF,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACxE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAExB,IAAI,CAAC;QACH,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,KAAK;gBACR,MAAM,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChC,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,QAAQ;gBACX,MAAM,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM;YACR,KAAK,MAAM;gBACT,MAAM,WAAW,EAAE,CAAC;gBACpB,MAAM;YACR;gBACE,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,qBAAsB,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/run.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAwJH,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoB9D"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/run.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA8JH,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAoB9D"}