claude-flow 3.16.2 → 3.17.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.
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claude-flow",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.17.0",
|
|
4
4
|
"description": "Ruflo - Enterprise AI agent orchestration for Claude Code. Deploy 60+ specialized agents in coordinated swarms with self-learning, fault-tolerant consensus, vector memory, and MCP integration",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -56,9 +56,15 @@ const SUBCOMMANDS = {
|
|
|
56
56
|
// iter 53 — one-command drift detection (compose audit-list + oia-audit + audit-trend)
|
|
57
57
|
'drift-from-history': 'drift-from-history.mjs',
|
|
58
58
|
mint: 'mint.mjs',
|
|
59
|
-
// @metaharness/redblue@~0.1.
|
|
59
|
+
// @metaharness/redblue@~0.1.4 — adversarial red/blue LLM testing
|
|
60
60
|
// (init|run|patch|attack|report sub-subcommands handled by redblue.mjs)
|
|
61
61
|
redblue: 'redblue.mjs',
|
|
62
|
+
// metaharness@0.3.0 — upstream ADR-235 GEPA learning run ($0 dry-run
|
|
63
|
+
// default; --run to spend; needs a metaharness repo checkout)
|
|
64
|
+
learn: 'learn.mjs',
|
|
65
|
+
// @metaharness/darwin@0.8.0 — GEPA library surface (genome ops; the
|
|
66
|
+
// gepaOptimize loop itself stays library-only / behind evolve)
|
|
67
|
+
gepa: 'gepa.mjs',
|
|
62
68
|
};
|
|
63
69
|
/**
|
|
64
70
|
* Walk up from the current dirname to find the ruflo repo root that
|
|
@@ -118,10 +124,10 @@ export const metaharnessCommand = {
|
|
|
118
124
|
options: [
|
|
119
125
|
{
|
|
120
126
|
name: 'subcommand',
|
|
121
|
-
// iter 73 — list reflects all
|
|
127
|
+
// iter 73 — list reflects all dispatchable subcommands (was
|
|
122
128
|
// stale at the iter-3 list of 5). Keep this synced with the
|
|
123
129
|
// SUBCOMMANDS map above.
|
|
124
|
-
description: 'One of: score | genome | mcp-scan | threat-model | oia-audit | audit-list | audit-trend | similarity | drift-from-history | mint | redblue',
|
|
130
|
+
description: 'One of: score | genome | mcp-scan | threat-model | oia-audit | audit-list | audit-trend | similarity | drift-from-history | mint | redblue | learn | gepa',
|
|
125
131
|
type: 'string',
|
|
126
132
|
},
|
|
127
133
|
],
|
|
@@ -24,6 +24,13 @@
|
|
|
24
24
|
*
|
|
25
25
|
* - metaharness_redblue red-team → judge → blue-patch → retest → report
|
|
26
26
|
*
|
|
27
|
+
* metaharness@0.3.0 + @metaharness/darwin@0.8.0 add two more:
|
|
28
|
+
*
|
|
29
|
+
* - metaharness_learn upstream ADR-235 GEPA learning run ($0 dry-run
|
|
30
|
+
* default; run=true to spend; needs repo checkout)
|
|
31
|
+
* - metaharness_gepa GEPA library surface — genome load/validate/
|
|
32
|
+
* render + transcript failure analysis
|
|
33
|
+
*
|
|
27
34
|
* Every tool resolves the corresponding plugin script
|
|
28
35
|
* (`plugins/ruflo-metaharness/scripts/<X>.mjs`) via the same locator
|
|
29
36
|
* the commands/metaharness.ts dispatcher uses, then spawns it with
|
|
@@ -24,6 +24,13 @@
|
|
|
24
24
|
*
|
|
25
25
|
* - metaharness_redblue red-team → judge → blue-patch → retest → report
|
|
26
26
|
*
|
|
27
|
+
* metaharness@0.3.0 + @metaharness/darwin@0.8.0 add two more:
|
|
28
|
+
*
|
|
29
|
+
* - metaharness_learn upstream ADR-235 GEPA learning run ($0 dry-run
|
|
30
|
+
* default; run=true to spend; needs repo checkout)
|
|
31
|
+
* - metaharness_gepa GEPA library surface — genome load/validate/
|
|
32
|
+
* render + transcript failure analysis
|
|
33
|
+
*
|
|
27
34
|
* Every tool resolves the corresponding plugin script
|
|
28
35
|
* (`plugins/ruflo-metaharness/scripts/<X>.mjs`) via the same locator
|
|
29
36
|
* the commands/metaharness.ts dispatcher uses, then spawns it with
|
|
@@ -591,5 +598,87 @@ export const metaharnessTools = [
|
|
|
591
598
|
return { success: r.success, data: r.json, degraded: r.degraded, exitCode: r.exitCode };
|
|
592
599
|
},
|
|
593
600
|
},
|
|
601
|
+
// ───────────────────────────────────────────────────────────────────────
|
|
602
|
+
// metaharness@0.3.0 `learn` + @metaharness/darwin@0.8.0 GEPA (2 tools).
|
|
603
|
+
//
|
|
604
|
+
// learn — upstream ADR-235 GEPA learning run. $0 dry-run by default;
|
|
605
|
+
// spending requires the explicit `run: true` opt-in, forwarded as --run.
|
|
606
|
+
// Requires a metaharness repo checkout (the learning harness is too heavy
|
|
607
|
+
// for the npm package) — absent checkout returns a structured
|
|
608
|
+
// {status: "checkout-required"} payload, distinct from degraded.
|
|
609
|
+
//
|
|
610
|
+
// gepa — the darwin GEPA *library* surface (genome load/validate/render,
|
|
611
|
+
// transcript analysis). gepaOptimize itself is deliberately NOT exposed:
|
|
612
|
+
// it takes an in-process evaluate() callback that cannot cross the
|
|
613
|
+
// subprocess boundary; optimization runs live behind metaharness_evolve.
|
|
614
|
+
// ───────────────────────────────────────────────────────────────────────
|
|
615
|
+
{
|
|
616
|
+
name: 'metaharness_learn',
|
|
617
|
+
description: 'ADR-235 (upstream) — GEPA learning run via `metaharness learn`: optimizes a harness genome against a SWE-bench-style slice manifest. $0 DRY-RUN BY DEFAULT — it resolves the slice and prices the run without model calls; pass run=true to actually spend (model calls + Docker sandboxes). Requires a local metaharness repo checkout (repo param or $METAHARNESS_REPO); without one the tool returns {status:"checkout-required"} with clone instructions — that is a precondition report, not an error. Use when you want the harness policy to LEARN from a task corpus rather than hand-editing prompts; manual prompt tweaking is wrong because GEPA scores candidates against held-out slices and only promotes measured winners. Long real runs exceed the 120s MCP subprocess budget — run those via `ruflo metaharness learn` in a terminal instead. ' + MCP_SUCCESS_SEMANTIC,
|
|
618
|
+
category: 'metaharness',
|
|
619
|
+
inputSchema: {
|
|
620
|
+
type: 'object',
|
|
621
|
+
properties: {
|
|
622
|
+
host: { type: 'string', description: 'Target host harness (e.g. claude-code, codex, pi-dev, hermes)' },
|
|
623
|
+
model: { type: 'string', description: 'Model to learn against (upstream model id)' },
|
|
624
|
+
slice: { type: 'string', description: 'Path to a slice manifest JSON' },
|
|
625
|
+
repo: { type: 'string', description: 'Path to a metaharness repo checkout (sets $METAHARNESS_REPO)' },
|
|
626
|
+
run: { type: 'boolean', description: 'EXPLICIT SPEND OPT-IN — without this the run is a $0 dry-run', default: false },
|
|
627
|
+
alertOnFail: { type: 'boolean', description: 'Exit 1 when the learn run reports failure', default: false },
|
|
628
|
+
timeoutMs: { type: 'number', description: 'Subprocess hard timeout override' },
|
|
629
|
+
},
|
|
630
|
+
},
|
|
631
|
+
handler: async (input) => {
|
|
632
|
+
const args = [];
|
|
633
|
+
if (input.host)
|
|
634
|
+
args.push('--host', String(input.host));
|
|
635
|
+
if (input.model)
|
|
636
|
+
args.push('--model', String(input.model));
|
|
637
|
+
if (input.slice)
|
|
638
|
+
args.push('--slice', String(input.slice));
|
|
639
|
+
if (input.repo)
|
|
640
|
+
args.push('--repo', String(input.repo));
|
|
641
|
+
if (input.run === true)
|
|
642
|
+
args.push('--run');
|
|
643
|
+
if (input.alertOnFail === true)
|
|
644
|
+
args.push('--alert-on-fail');
|
|
645
|
+
if (input.timeoutMs !== undefined)
|
|
646
|
+
args.push('--timeout-ms', String(input.timeoutMs));
|
|
647
|
+
const r = await runScript('learn.mjs', args);
|
|
648
|
+
return { success: r.success, data: r.json, degraded: r.degraded, exitCode: r.exitCode };
|
|
649
|
+
},
|
|
650
|
+
},
|
|
651
|
+
{
|
|
652
|
+
name: 'metaharness_gepa',
|
|
653
|
+
description: 'GEPA genome operations from the `@metaharness/darwin/gepa` library entry (darwin 0.8.0). op=genome loads + validates a genome (default: the shipped cand-6 — first holdout-confirmed cheap-tier policy promotion, provenance in the package); op=validate returns structural errors for a genome JSON; op=render compiles a genome to the system prompt it encodes (inspect what a policy actually says before adopting it); op=analyze classifies failure modes in a transcript JSON array. Use when adopting/auditing/debugging evolved harness policies — reading genome JSON by eye is wrong because the behavior lives in the rendered system prompt and the component interactions, not the raw fields. NOTE: gepaOptimize (bring-your-own-evaluator optimization) is library-only — import @metaharness/darwin/gepa directly, or use metaharness_evolve for sandbox-scored evolution. ' + MCP_SUCCESS_SEMANTIC,
|
|
654
|
+
category: 'metaharness',
|
|
655
|
+
inputSchema: {
|
|
656
|
+
type: 'object',
|
|
657
|
+
properties: {
|
|
658
|
+
op: { type: 'string', enum: ['genome', 'validate', 'render', 'analyze'], description: 'genome = load + validate; validate = structural errors only; render = genome → system prompt; analyze = transcript failure classes' },
|
|
659
|
+
path: { type: 'string', description: 'Genome JSON path (genome/validate/render; default: shipped cand-6)' },
|
|
660
|
+
transcript: { type: 'string', description: 'Transcript JSON array path (required for op=analyze)' },
|
|
661
|
+
ext: { type: 'string', description: 'render only — target file extension hint' },
|
|
662
|
+
glob: { type: 'string', description: 'render only — target glob hint' },
|
|
663
|
+
alertOnInvalid: { type: 'boolean', description: 'Exit 1 when validation finds errors (gate-style)', default: false },
|
|
664
|
+
},
|
|
665
|
+
required: ['op'],
|
|
666
|
+
},
|
|
667
|
+
handler: async (input) => {
|
|
668
|
+
const args = ['--op', String(input.op)];
|
|
669
|
+
if (input.path)
|
|
670
|
+
args.push('--path', String(input.path));
|
|
671
|
+
if (input.transcript)
|
|
672
|
+
args.push('--transcript', String(input.transcript));
|
|
673
|
+
if (input.ext)
|
|
674
|
+
args.push('--ext', String(input.ext));
|
|
675
|
+
if (input.glob)
|
|
676
|
+
args.push('--glob', String(input.glob));
|
|
677
|
+
if (input.alertOnInvalid === true)
|
|
678
|
+
args.push('--alert-on-invalid');
|
|
679
|
+
const r = await runScript('gepa.mjs', args);
|
|
680
|
+
return { success: r.success, data: r.json, degraded: r.degraded, exitCode: r.exitCode };
|
|
681
|
+
},
|
|
682
|
+
},
|
|
594
683
|
];
|
|
595
684
|
//# sourceMappingURL=metaharness-tools.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@claude-flow/cli",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.17.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Ruflo CLI - Enterprise AI agent orchestration with 60+ specialized agents, swarm coordination, MCP server, self-learning hooks, and vector memory for Claude Code",
|
|
6
6
|
"main": "dist/src/index.js",
|
|
@@ -115,11 +115,11 @@
|
|
|
115
115
|
"@claude-flow/memory": "^3.0.0-alpha.21",
|
|
116
116
|
"@claude-flow/plugin-gastown-bridge": "^0.1.3",
|
|
117
117
|
"@claude-flow/security": "^3.0.0-alpha.10",
|
|
118
|
-
"@metaharness/darwin": "~0.
|
|
119
|
-
"@metaharness/kernel": "~0.1.
|
|
120
|
-
"@metaharness/redblue": "~0.1.
|
|
118
|
+
"@metaharness/darwin": "~0.8.0",
|
|
119
|
+
"@metaharness/kernel": "~0.1.2",
|
|
120
|
+
"@metaharness/redblue": "~0.1.4",
|
|
121
121
|
"@metaharness/router": "~0.3.2",
|
|
122
|
-
"metaharness": "~0.2.
|
|
122
|
+
"metaharness": "~0.2.8",
|
|
123
123
|
"@ruvector/attention": "^0.1.32",
|
|
124
124
|
"@ruvector/attention-darwin-arm64": "0.1.32",
|
|
125
125
|
"@ruvector/diskann": "^0.1.0",
|