@claude-flow/cli 3.5.47 → 3.5.49
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/README.md +21 -21
- package/dist/src/commands/agent-wasm.d.ts +14 -0
- package/dist/src/commands/agent-wasm.d.ts.map +1 -0
- package/dist/src/commands/agent-wasm.js +333 -0
- package/dist/src/commands/agent-wasm.js.map +1 -0
- package/dist/src/commands/agent.d.ts.map +1 -1
- package/dist/src/commands/agent.js +14 -6
- package/dist/src/commands/agent.js.map +1 -1
- package/dist/src/commands/daemon.d.ts.map +1 -1
- package/dist/src/commands/daemon.js +21 -8
- package/dist/src/commands/daemon.js.map +1 -1
- package/dist/src/memory/memory-bridge.d.ts.map +1 -1
- package/dist/src/memory/memory-bridge.js +9 -5
- package/dist/src/memory/memory-bridge.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -21,11 +21,11 @@
|
|
|
21
21
|
[](https://www.youtube.com/@ReuvenCohen)
|
|
22
22
|
|
|
23
23
|
# **Production-ready multi-agent AI orchestration for Claude Code**
|
|
24
|
-
*Deploy
|
|
24
|
+
*Deploy 100+ specialized agents in coordinated swarms with self-learning capabilities, fault-tolerant consensus, and enterprise-grade security.*
|
|
25
25
|
|
|
26
26
|
</div>
|
|
27
27
|
|
|
28
|
-
> **Why Ruflo?** Claude Flow is now Ruflo — named by Ruv, who loves Rust, flow states, and building things that feel inevitable. The "Ru" is the Ruv. The "flo" is the flow. Underneath, WASM kernels written in Rust power the policy engine, embeddings, and proof system.
|
|
28
|
+
> **Why Ruflo?** Claude Flow is now Ruflo — named by Ruv, who loves Rust, flow states, and building things that feel inevitable. The "Ru" is the Ruv. The "flo" is the flow. Underneath, WASM kernels written in Rust power the policy engine, embeddings, and proof system. 6,000+ commits later, this is v3.5.
|
|
29
29
|
|
|
30
30
|
## Getting into the Flow
|
|
31
31
|
|
|
@@ -56,8 +56,8 @@ flowchart TB
|
|
|
56
56
|
subgraph ROUTING["🧭 Routing Layer"]
|
|
57
57
|
QL[Q-Learning Router]
|
|
58
58
|
MOE[MoE - 8 Experts]
|
|
59
|
-
SK[Skills -
|
|
60
|
-
HK[Hooks -
|
|
59
|
+
SK[Skills - 130+]
|
|
60
|
+
HK[Hooks - 27]
|
|
61
61
|
end
|
|
62
62
|
|
|
63
63
|
subgraph SWARM["🐝 Swarm Coordination"]
|
|
@@ -66,7 +66,7 @@ flowchart TB
|
|
|
66
66
|
CLM[Claims<br/>Human-Agent Coord]
|
|
67
67
|
end
|
|
68
68
|
|
|
69
|
-
subgraph AGENTS["🤖
|
|
69
|
+
subgraph AGENTS["🤖 100+ Agents"]
|
|
70
70
|
AG1[coder]
|
|
71
71
|
AG2[tester]
|
|
72
72
|
AG3[reviewer]
|
|
@@ -132,7 +132,7 @@ flowchart TB
|
|
|
132
132
|
|-----------|---------|-------------|
|
|
133
133
|
| **SONA** | Self-Optimizing Neural Architecture - learns optimal routing | Fast adaptation |
|
|
134
134
|
| **EWC++** | Elastic Weight Consolidation - prevents catastrophic forgetting | Preserves learned patterns |
|
|
135
|
-
| **Flash Attention** | Optimized attention computation | 2-7x speedup |
|
|
135
|
+
| **Flash Attention** | Optimized attention computation | 2-7x speedup (benchmarked) |
|
|
136
136
|
| **HNSW** | Hierarchical Navigable Small World vector search | Sub-millisecond retrieval |
|
|
137
137
|
| **ReasoningBank** | Pattern storage with trajectory learning | RETRIEVE→JUDGE→DISTILL |
|
|
138
138
|
| **Hyperbolic** | Poincare ball embeddings for hierarchical data | Better code relationships |
|
|
@@ -161,12 +161,12 @@ curl -fsSL https://cdn.jsdelivr.net/gh/ruvnet/ruflo@main/scripts/install.sh | ba
|
|
|
161
161
|
npx ruflo@latest init --wizard
|
|
162
162
|
```
|
|
163
163
|
|
|
164
|
-
> **New to Ruflo?** You don't need to learn
|
|
164
|
+
> **New to Ruflo?** You don't need to learn 310+ MCP tools or 26 CLI commands. After running `init`, just use Claude Code normally — the hooks system automatically routes tasks to the right agents, learns from successful patterns, and coordinates multi-agent work in the background. The advanced tools exist for fine-grained control when you need it.
|
|
165
165
|
|
|
166
166
|
---
|
|
167
167
|
### Key Capabilities
|
|
168
168
|
|
|
169
|
-
🤖 **
|
|
169
|
+
🤖 **100+ Specialized Agents** - Ready-to-use AI agents for coding, code review, testing, security audits, documentation, and DevOps. Each agent is optimized for its specific role.
|
|
170
170
|
|
|
171
171
|
🐝 **Coordinated Agent Teams** - Run unlimited agents simultaneously in organized swarms. Agents spawn sub-workers, communicate, share context, and divide work automatically using hierarchical (queen/workers) or mesh (peer-to-peer) patterns.
|
|
172
172
|
|
|
@@ -193,7 +193,7 @@ Every request flows through four layers: from your CLI or Claude Code interface,
|
|
|
193
193
|
|-------|------------|--------------|
|
|
194
194
|
| User | Claude Code, CLI | Your interface to control and run commands |
|
|
195
195
|
| Orchestration | MCP Server, Router, Hooks | Routes requests to the right agents |
|
|
196
|
-
| Agents |
|
|
196
|
+
| Agents | 100+ types | Specialized workers (coder, tester, reviewer...) |
|
|
197
197
|
| Providers | Anthropic, OpenAI, Google, Ollama | AI models that power reasoning |
|
|
198
198
|
|
|
199
199
|
</details>
|
|
@@ -702,7 +702,7 @@ claude mcp add ruflo -- npx -y ruflo@latest mcp start
|
|
|
702
702
|
claude mcp list
|
|
703
703
|
```
|
|
704
704
|
|
|
705
|
-
Once added, Claude Code can use all
|
|
705
|
+
Once added, Claude Code can use all 313 ruflo MCP tools directly:
|
|
706
706
|
- `swarm_init` - Initialize agent swarms
|
|
707
707
|
- `agent_spawn` - Spawn specialized agents
|
|
708
708
|
- `memory_search` - Search patterns with HNSW vector search
|
|
@@ -757,7 +757,7 @@ Ruflo v3 introduces **self-learning neural capabilities** that no other agent or
|
|
|
757
757
|
|
|
758
758
|
| Feature | Ruflo v3 | CrewAI | LangGraph | AutoGen | Manus |
|
|
759
759
|
|---------|----------------|--------|-----------|---------|-------|
|
|
760
|
-
| **MCP Integration** | ✅ Native (
|
|
760
|
+
| **MCP Integration** | ✅ Native (313 tools) | ⛔ | ⛔ | ⛔ | ⛔ |
|
|
761
761
|
| **Skills System** | ✅ 42+ pre-built | ⛔ | ⛔ | ⛔ | Limited |
|
|
762
762
|
| **Stream Pipelines** | ✅ JSON chains | ⛔ | Via code | ⛔ | ⛔ |
|
|
763
763
|
| **Pair Programming** | ✅ Driver/Navigator | ⛔ | ⛔ | ⛔ | ⛔ |
|
|
@@ -895,7 +895,7 @@ flowchart TB
|
|
|
895
895
|
|
|
896
896
|
subgraph Agents["🤖 Agent Layer"]
|
|
897
897
|
Queen[Queen Coordinator]
|
|
898
|
-
Workers[
|
|
898
|
+
Workers[100+ Specialized Agents]
|
|
899
899
|
Swarm[Swarm Manager]
|
|
900
900
|
end
|
|
901
901
|
|
|
@@ -1180,7 +1180,7 @@ Connect Ruflo to your development environment.
|
|
|
1180
1180
|
<details>
|
|
1181
1181
|
<summary>🔌 <strong>MCP Setup</strong> — Connect Ruflo to Any AI Environment</summary>
|
|
1182
1182
|
|
|
1183
|
-
Ruflo runs as an MCP (Model Context Protocol) server, allowing you to connect it to any MCP-compatible AI client. This means you can use Ruflo's
|
|
1183
|
+
Ruflo runs as an MCP (Model Context Protocol) server, allowing you to connect it to any MCP-compatible AI client. This means you can use Ruflo's 100+ agents, swarm coordination, and self-learning capabilities from Claude Desktop, VS Code, Cursor, Windsurf, ChatGPT, and more.
|
|
1184
1184
|
|
|
1185
1185
|
### Quick Add Command
|
|
1186
1186
|
|
|
@@ -1558,12 +1558,12 @@ chain.verify(envelope); // true — tamper-evident
|
|
|
1558
1558
|
Comprehensive capabilities for enterprise-grade AI agent orchestration.
|
|
1559
1559
|
|
|
1560
1560
|
<details>
|
|
1561
|
-
<summary>📦 <strong>Features</strong> —
|
|
1561
|
+
<summary>📦 <strong>Features</strong> — 100+ Agents, Swarm Topologies, MCP Tools & Security</summary>
|
|
1562
1562
|
|
|
1563
1563
|
Comprehensive feature set for enterprise-grade AI agent orchestration.
|
|
1564
1564
|
|
|
1565
1565
|
<details open>
|
|
1566
|
-
<summary>🤖 <strong>Agent Ecosystem</strong> —
|
|
1566
|
+
<summary>🤖 <strong>Agent Ecosystem</strong> — 100+ specialized agents across 8 categories</summary>
|
|
1567
1567
|
|
|
1568
1568
|
Pre-built agents for every development task, from coding to security audits.
|
|
1569
1569
|
|
|
@@ -1710,7 +1710,7 @@ npx ruflo@latest hooks task-completed --task-id <id> --train-patterns
|
|
|
1710
1710
|
</details>
|
|
1711
1711
|
|
|
1712
1712
|
<details>
|
|
1713
|
-
<summary>🔧 <strong>MCP Tools & Integration</strong> —
|
|
1713
|
+
<summary>🔧 <strong>MCP Tools & Integration</strong> — 313 tools across 31 modules</summary>
|
|
1714
1714
|
|
|
1715
1715
|
Full MCP server with tools for coordination, monitoring, memory, and GitHub integration.
|
|
1716
1716
|
|
|
@@ -2163,7 +2163,7 @@ npx ruflo@latest worker status
|
|
|
2163
2163
|
| `agentConfigs` | 15 V3 agent configurations | Agent testing |
|
|
2164
2164
|
| `memoryEntries` | Patterns, rules, embeddings | Memory testing |
|
|
2165
2165
|
| `swarmConfigs` | V3 default, minimal, mesh, hierarchical | Swarm testing |
|
|
2166
|
-
| `mcpTools` |
|
|
2166
|
+
| `mcpTools` | 313 tool definitions | MCP testing |
|
|
2167
2167
|
|
|
2168
2168
|
</details>
|
|
2169
2169
|
|
|
@@ -5023,9 +5023,9 @@ npx agentic-flow mcp stdio
|
|
|
5023
5023
|
</details>
|
|
5024
5024
|
|
|
5025
5025
|
<details>
|
|
5026
|
-
<summary>🔧 <strong>MCP Tools</strong> —
|
|
5026
|
+
<summary>🔧 <strong>MCP Tools</strong> — 313 Integration Tools</summary>
|
|
5027
5027
|
|
|
5028
|
-
Agentic-flow exposes
|
|
5028
|
+
Agentic-flow exposes 310+ MCP tools for integration:
|
|
5029
5029
|
|
|
5030
5030
|
| Category | Tools | Examples |
|
|
5031
5031
|
|----------|-------|----------|
|
|
@@ -6141,7 +6141,7 @@ Domain-Driven Design with bounded contexts, clean architecture, and measured per
|
|
|
6141
6141
|
| **Memory** | Pattern retrieval | <10ms | ✅ Met |
|
|
6142
6142
|
| **Swarm** | Agent spawn | <200ms | ✅ Met |
|
|
6143
6143
|
| **Swarm** | Consensus latency | <100ms | ✅ Met |
|
|
6144
|
-
| **Neural** | SONA adaptation | <0.05ms |
|
|
6144
|
+
| **Neural** | SONA adaptation | <0.05ms | ⚡ Benchmarked |
|
|
6145
6145
|
| **Graph** | Build (1k nodes) | <200ms | ✅ Met |
|
|
6146
6146
|
| **Graph** | PageRank (1k nodes) | <100ms | ✅ Met |
|
|
6147
6147
|
| **Learning** | Insight recording | <5ms | ✅ Met |
|
|
@@ -7349,7 +7349,7 @@ export CLAUDE_FLOW_HNSW_EF=100
|
|
|
7349
7349
|
│ Pattern Matching │ Self-learning (ReasoningBank) │
|
|
7350
7350
|
│ Security │ CVE remediation + strict validation │
|
|
7351
7351
|
│ Modular Architecture │ 18 @claude-flow/* packages │
|
|
7352
|
-
│ Agent Coordination │
|
|
7352
|
+
│ Agent Coordination │ 100+ specialized agents │
|
|
7353
7353
|
│ Token Efficiency │ 32% reduction with optimization │
|
|
7354
7354
|
└───────────────────────┴─────────────────────────────────────┘
|
|
7355
7355
|
```
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WASM Agent CLI Subcommands
|
|
3
|
+
*
|
|
4
|
+
* Exposes @ruvector/rvagent-wasm operations via the `agent` CLI command.
|
|
5
|
+
* Wraps functions from ruvector/agent-wasm.ts for CLI usage.
|
|
6
|
+
*/
|
|
7
|
+
import type { Command } from '../types.js';
|
|
8
|
+
export declare const wasmStatusCommand: Command;
|
|
9
|
+
export declare const wasmCreateCommand: Command;
|
|
10
|
+
export declare const wasmPromptCommand: Command;
|
|
11
|
+
export declare const wasmGalleryCommand: Command;
|
|
12
|
+
/** All WASM subcommands for the agent command */
|
|
13
|
+
export declare const wasmSubcommands: Command[];
|
|
14
|
+
//# sourceMappingURL=agent-wasm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-wasm.d.ts","sourceRoot":"","sources":["../../../src/commands/agent-wasm.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;AAa1E,eAAO,MAAM,iBAAiB,EAAE,OAqF/B,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,OAyF/B,CAAC;AAGF,eAAO,MAAM,iBAAiB,EAAE,OAmE/B,CAAC;AAGF,eAAO,MAAM,kBAAkB,EAAE,OAwFhC,CAAC;AAEF,iDAAiD;AACjD,eAAO,MAAM,eAAe,EAAE,OAAO,EAKpC,CAAC"}
|
|
@@ -0,0 +1,333 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WASM Agent CLI Subcommands
|
|
3
|
+
*
|
|
4
|
+
* Exposes @ruvector/rvagent-wasm operations via the `agent` CLI command.
|
|
5
|
+
* Wraps functions from ruvector/agent-wasm.ts for CLI usage.
|
|
6
|
+
*/
|
|
7
|
+
import { output } from '../output.js';
|
|
8
|
+
const WASM_NOT_AVAILABLE_MSG = '@ruvector/rvagent-wasm is not installed.\n' +
|
|
9
|
+
'Install it with: npm install @ruvector/rvagent-wasm';
|
|
10
|
+
async function loadWasm() {
|
|
11
|
+
const mod = await import('../ruvector/agent-wasm.js');
|
|
12
|
+
return mod;
|
|
13
|
+
}
|
|
14
|
+
// agent wasm-status
|
|
15
|
+
export const wasmStatusCommand = {
|
|
16
|
+
name: 'wasm-status',
|
|
17
|
+
description: 'Check rvagent-wasm availability, version, and capabilities',
|
|
18
|
+
options: [],
|
|
19
|
+
examples: [
|
|
20
|
+
{ command: 'claude-flow agent wasm-status', description: 'Check WASM agent runtime status' },
|
|
21
|
+
],
|
|
22
|
+
action: async (ctx) => {
|
|
23
|
+
try {
|
|
24
|
+
const wasm = await loadWasm();
|
|
25
|
+
const available = await wasm.isAgentWasmAvailable();
|
|
26
|
+
if (!available) {
|
|
27
|
+
output.writeln();
|
|
28
|
+
output.printWarning(WASM_NOT_AVAILABLE_MSG);
|
|
29
|
+
if (ctx.flags.format === 'json') {
|
|
30
|
+
output.printJson({ available: false });
|
|
31
|
+
}
|
|
32
|
+
return { success: true, data: { available: false } };
|
|
33
|
+
}
|
|
34
|
+
// Init to get full status
|
|
35
|
+
await wasm.initAgentWasm();
|
|
36
|
+
const agents = wasm.listWasmAgents();
|
|
37
|
+
let galleryCount = 0;
|
|
38
|
+
let categories = {};
|
|
39
|
+
try {
|
|
40
|
+
galleryCount = await wasm.getGalleryCount();
|
|
41
|
+
categories = await wasm.getGalleryCategories();
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
// Gallery may not be available in all builds
|
|
45
|
+
}
|
|
46
|
+
const statusData = {
|
|
47
|
+
available: true,
|
|
48
|
+
activeAgents: agents.length,
|
|
49
|
+
gallery: {
|
|
50
|
+
templates: galleryCount,
|
|
51
|
+
categories,
|
|
52
|
+
},
|
|
53
|
+
tools: ['read_file', 'write_file', 'edit_file', 'write_todos', 'list_files'],
|
|
54
|
+
features: ['sandboxed-execution', 'virtual-filesystem', 'gallery-templates', 'rvf-containers', 'mcp-bridge'],
|
|
55
|
+
};
|
|
56
|
+
if (ctx.flags.format === 'json') {
|
|
57
|
+
output.printJson(statusData);
|
|
58
|
+
return { success: true, data: statusData };
|
|
59
|
+
}
|
|
60
|
+
output.writeln();
|
|
61
|
+
output.writeln(output.bold('WASM Agent Runtime'));
|
|
62
|
+
output.writeln();
|
|
63
|
+
output.printTable({
|
|
64
|
+
columns: [
|
|
65
|
+
{ key: 'property', header: 'Property', width: 20 },
|
|
66
|
+
{ key: 'value', header: 'Value', width: 40 },
|
|
67
|
+
],
|
|
68
|
+
data: [
|
|
69
|
+
{ property: 'Available', value: output.success('yes') },
|
|
70
|
+
{ property: 'Active Agents', value: String(agents.length) },
|
|
71
|
+
{ property: 'Gallery Templates', value: String(galleryCount) },
|
|
72
|
+
{ property: 'Sandbox Tools', value: statusData.tools.join(', ') },
|
|
73
|
+
{ property: 'Features', value: statusData.features.join(', ') },
|
|
74
|
+
],
|
|
75
|
+
});
|
|
76
|
+
if (Object.keys(categories).length > 0) {
|
|
77
|
+
output.writeln();
|
|
78
|
+
output.writeln(output.bold('Gallery Categories'));
|
|
79
|
+
output.printTable({
|
|
80
|
+
columns: [
|
|
81
|
+
{ key: 'category', header: 'Category', width: 20 },
|
|
82
|
+
{ key: 'count', header: 'Templates', width: 10, align: 'right' },
|
|
83
|
+
],
|
|
84
|
+
data: Object.entries(categories).map(([category, count]) => ({ category, count })),
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
return { success: true, data: statusData };
|
|
88
|
+
}
|
|
89
|
+
catch (error) {
|
|
90
|
+
output.printError(`WASM status check failed: ${String(error)}`);
|
|
91
|
+
return { success: false, exitCode: 1 };
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
// agent wasm-create
|
|
96
|
+
export const wasmCreateCommand = {
|
|
97
|
+
name: 'wasm-create',
|
|
98
|
+
description: 'Create a WASM-sandboxed agent',
|
|
99
|
+
options: [
|
|
100
|
+
{
|
|
101
|
+
name: 'template',
|
|
102
|
+
short: 't',
|
|
103
|
+
description: 'Gallery template (coder, researcher, tester, reviewer, security, swarm)',
|
|
104
|
+
type: 'string',
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
name: 'model',
|
|
108
|
+
short: 'm',
|
|
109
|
+
description: 'Model identifier (default: anthropic:claude-sonnet-4-20250514)',
|
|
110
|
+
type: 'string',
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
name: 'instructions',
|
|
114
|
+
short: 'i',
|
|
115
|
+
description: 'System instructions for the agent',
|
|
116
|
+
type: 'string',
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
name: 'max-turns',
|
|
120
|
+
description: 'Maximum conversation turns (default: 50)',
|
|
121
|
+
type: 'number',
|
|
122
|
+
default: 50,
|
|
123
|
+
},
|
|
124
|
+
],
|
|
125
|
+
examples: [
|
|
126
|
+
{ command: 'claude-flow agent wasm-create', description: 'Create a default WASM agent' },
|
|
127
|
+
{ command: 'claude-flow agent wasm-create -t coder', description: 'Create from gallery template' },
|
|
128
|
+
{ command: 'claude-flow agent wasm-create -m "anthropic:claude-sonnet-4-20250514" -i "You are a security auditor"', description: 'Create with custom config' },
|
|
129
|
+
],
|
|
130
|
+
action: async (ctx) => {
|
|
131
|
+
try {
|
|
132
|
+
const wasm = await loadWasm();
|
|
133
|
+
const available = await wasm.isAgentWasmAvailable();
|
|
134
|
+
if (!available) {
|
|
135
|
+
output.printError(WASM_NOT_AVAILABLE_MSG);
|
|
136
|
+
return { success: false, exitCode: 1 };
|
|
137
|
+
}
|
|
138
|
+
const template = ctx.flags.template;
|
|
139
|
+
let info;
|
|
140
|
+
if (template) {
|
|
141
|
+
output.printInfo(`Creating WASM agent from template: ${output.highlight(template)}`);
|
|
142
|
+
info = await wasm.createAgentFromTemplate(template);
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
output.printInfo('Creating WASM agent...');
|
|
146
|
+
info = await wasm.createWasmAgent({
|
|
147
|
+
model: ctx.flags.model,
|
|
148
|
+
instructions: ctx.flags.instructions,
|
|
149
|
+
maxTurns: ctx.flags['max-turns'],
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
if (ctx.flags.format === 'json') {
|
|
153
|
+
output.printJson({ success: true, agent: info, source: template ? 'gallery' : 'custom' });
|
|
154
|
+
return { success: true, data: info };
|
|
155
|
+
}
|
|
156
|
+
output.writeln();
|
|
157
|
+
output.printTable({
|
|
158
|
+
columns: [
|
|
159
|
+
{ key: 'property', header: 'Property', width: 15 },
|
|
160
|
+
{ key: 'value', header: 'Value', width: 45 },
|
|
161
|
+
],
|
|
162
|
+
data: [
|
|
163
|
+
{ property: 'ID', value: info.id },
|
|
164
|
+
{ property: 'State', value: info.state },
|
|
165
|
+
{ property: 'Model', value: info.model },
|
|
166
|
+
{ property: 'Turn Count', value: String(info.turnCount) },
|
|
167
|
+
{ property: 'File Count', value: String(info.fileCount) },
|
|
168
|
+
{ property: 'Created', value: info.createdAt },
|
|
169
|
+
...(template ? [{ property: 'Template', value: template }] : []),
|
|
170
|
+
],
|
|
171
|
+
});
|
|
172
|
+
output.writeln();
|
|
173
|
+
output.printSuccess(`WASM agent created: ${info.id}`);
|
|
174
|
+
return { success: true, data: info };
|
|
175
|
+
}
|
|
176
|
+
catch (error) {
|
|
177
|
+
output.printError(`Failed to create WASM agent: ${String(error)}`);
|
|
178
|
+
return { success: false, exitCode: 1 };
|
|
179
|
+
}
|
|
180
|
+
},
|
|
181
|
+
};
|
|
182
|
+
// agent wasm-prompt
|
|
183
|
+
export const wasmPromptCommand = {
|
|
184
|
+
name: 'wasm-prompt',
|
|
185
|
+
description: 'Send a prompt to a WASM agent',
|
|
186
|
+
options: [
|
|
187
|
+
{
|
|
188
|
+
name: 'agent-id',
|
|
189
|
+
short: 'a',
|
|
190
|
+
description: 'WASM agent ID (required)',
|
|
191
|
+
type: 'string',
|
|
192
|
+
},
|
|
193
|
+
{
|
|
194
|
+
name: 'input',
|
|
195
|
+
short: 'i',
|
|
196
|
+
description: 'Prompt text to send',
|
|
197
|
+
type: 'string',
|
|
198
|
+
},
|
|
199
|
+
],
|
|
200
|
+
examples: [
|
|
201
|
+
{ command: 'claude-flow agent wasm-prompt -a wasm-agent-1-abc -i "Write a hello world"', description: 'Send prompt to WASM agent' },
|
|
202
|
+
],
|
|
203
|
+
action: async (ctx) => {
|
|
204
|
+
const agentId = ctx.flags['agent-id'] || ctx.args[0];
|
|
205
|
+
const promptInput = ctx.flags.input || ctx.args[1];
|
|
206
|
+
if (!agentId) {
|
|
207
|
+
output.printError('Agent ID is required. Use --agent-id or -a');
|
|
208
|
+
return { success: false, exitCode: 1 };
|
|
209
|
+
}
|
|
210
|
+
if (!promptInput) {
|
|
211
|
+
output.printError('Prompt input is required. Use --input or -i');
|
|
212
|
+
return { success: false, exitCode: 1 };
|
|
213
|
+
}
|
|
214
|
+
try {
|
|
215
|
+
const wasm = await loadWasm();
|
|
216
|
+
const available = await wasm.isAgentWasmAvailable();
|
|
217
|
+
if (!available) {
|
|
218
|
+
output.printError(WASM_NOT_AVAILABLE_MSG);
|
|
219
|
+
return { success: false, exitCode: 1 };
|
|
220
|
+
}
|
|
221
|
+
output.printInfo(`Sending prompt to ${output.highlight(agentId)}...`);
|
|
222
|
+
const result = await wasm.promptWasmAgent(agentId, promptInput);
|
|
223
|
+
if (ctx.flags.format === 'json') {
|
|
224
|
+
output.printJson({ agentId, response: result });
|
|
225
|
+
return { success: true, data: { agentId, response: result } };
|
|
226
|
+
}
|
|
227
|
+
output.writeln();
|
|
228
|
+
output.writeln(output.bold('Response'));
|
|
229
|
+
output.writeln();
|
|
230
|
+
output.writeln(result);
|
|
231
|
+
// Show updated agent info
|
|
232
|
+
const info = wasm.getWasmAgent(agentId);
|
|
233
|
+
if (info) {
|
|
234
|
+
output.writeln();
|
|
235
|
+
output.writeln(output.dim(`[turns: ${info.turnCount}, files: ${info.fileCount}, state: ${info.state}]`));
|
|
236
|
+
}
|
|
237
|
+
return { success: true, data: { agentId, response: result } };
|
|
238
|
+
}
|
|
239
|
+
catch (error) {
|
|
240
|
+
output.printError(`Prompt failed: ${String(error)}`);
|
|
241
|
+
return { success: false, exitCode: 1 };
|
|
242
|
+
}
|
|
243
|
+
},
|
|
244
|
+
};
|
|
245
|
+
// agent wasm-gallery
|
|
246
|
+
export const wasmGalleryCommand = {
|
|
247
|
+
name: 'wasm-gallery',
|
|
248
|
+
description: 'List available WASM agent gallery templates',
|
|
249
|
+
options: [
|
|
250
|
+
{
|
|
251
|
+
name: 'search',
|
|
252
|
+
short: 's',
|
|
253
|
+
description: 'Search templates by query',
|
|
254
|
+
type: 'string',
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
name: 'category',
|
|
258
|
+
short: 'c',
|
|
259
|
+
description: 'Filter by category',
|
|
260
|
+
type: 'string',
|
|
261
|
+
},
|
|
262
|
+
],
|
|
263
|
+
examples: [
|
|
264
|
+
{ command: 'claude-flow agent wasm-gallery', description: 'List all gallery templates' },
|
|
265
|
+
{ command: 'claude-flow agent wasm-gallery -s coder', description: 'Search gallery templates' },
|
|
266
|
+
],
|
|
267
|
+
action: async (ctx) => {
|
|
268
|
+
try {
|
|
269
|
+
const wasm = await loadWasm();
|
|
270
|
+
const available = await wasm.isAgentWasmAvailable();
|
|
271
|
+
if (!available) {
|
|
272
|
+
output.printError(WASM_NOT_AVAILABLE_MSG);
|
|
273
|
+
return { success: false, exitCode: 1 };
|
|
274
|
+
}
|
|
275
|
+
const searchQuery = ctx.flags.search;
|
|
276
|
+
const category = ctx.flags.category;
|
|
277
|
+
let templates;
|
|
278
|
+
if (searchQuery) {
|
|
279
|
+
output.printInfo(`Searching gallery for: ${output.highlight(searchQuery)}`);
|
|
280
|
+
templates = await wasm.searchGalleryTemplates(searchQuery);
|
|
281
|
+
}
|
|
282
|
+
else {
|
|
283
|
+
templates = await wasm.listGalleryTemplates();
|
|
284
|
+
}
|
|
285
|
+
// Filter by category if specified
|
|
286
|
+
if (category) {
|
|
287
|
+
templates = templates.filter((t) => t.category.toLowerCase() === category.toLowerCase());
|
|
288
|
+
}
|
|
289
|
+
if (ctx.flags.format === 'json') {
|
|
290
|
+
output.printJson({ templates, count: templates.length });
|
|
291
|
+
return { success: true, data: { templates, count: templates.length } };
|
|
292
|
+
}
|
|
293
|
+
output.writeln();
|
|
294
|
+
output.writeln(output.bold('WASM Agent Gallery'));
|
|
295
|
+
output.writeln();
|
|
296
|
+
if (templates.length === 0) {
|
|
297
|
+
output.printInfo('No templates found matching criteria');
|
|
298
|
+
return { success: true, data: { templates: [], count: 0 } };
|
|
299
|
+
}
|
|
300
|
+
output.printTable({
|
|
301
|
+
columns: [
|
|
302
|
+
{ key: 'id', header: 'ID', width: 20 },
|
|
303
|
+
{ key: 'name', header: 'Name', width: 18 },
|
|
304
|
+
{ key: 'category', header: 'Category', width: 12 },
|
|
305
|
+
{ key: 'description', header: 'Description', width: 35 },
|
|
306
|
+
{ key: 'version', header: 'Version', width: 10 },
|
|
307
|
+
],
|
|
308
|
+
data: templates.map((t) => ({
|
|
309
|
+
id: t.id,
|
|
310
|
+
name: t.name,
|
|
311
|
+
category: t.category,
|
|
312
|
+
description: t.description.length > 35 ? t.description.slice(0, 32) + '...' : t.description,
|
|
313
|
+
version: t.version,
|
|
314
|
+
})),
|
|
315
|
+
});
|
|
316
|
+
output.writeln();
|
|
317
|
+
output.printInfo(`${templates.length} template(s) found. Create with: agent wasm-create -t <id>`);
|
|
318
|
+
return { success: true, data: { templates, count: templates.length } };
|
|
319
|
+
}
|
|
320
|
+
catch (error) {
|
|
321
|
+
output.printError(`Gallery listing failed: ${String(error)}`);
|
|
322
|
+
return { success: false, exitCode: 1 };
|
|
323
|
+
}
|
|
324
|
+
},
|
|
325
|
+
};
|
|
326
|
+
/** All WASM subcommands for the agent command */
|
|
327
|
+
export const wasmSubcommands = [
|
|
328
|
+
wasmStatusCommand,
|
|
329
|
+
wasmCreateCommand,
|
|
330
|
+
wasmPromptCommand,
|
|
331
|
+
wasmGalleryCommand,
|
|
332
|
+
];
|
|
333
|
+
//# sourceMappingURL=agent-wasm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-wasm.js","sourceRoot":"","sources":["../../../src/commands/agent-wasm.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/commands/agent.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../../src/commands/agent.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;AA69B1E,eAAO,MAAM,YAAY,EAAE,OAqC1B,CAAC;AAoCF,eAAe,YAAY,CAAC"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
import { output } from '../output.js';
|
|
6
6
|
import { select, confirm, input } from '../prompt.js';
|
|
7
7
|
import { callMCPTool, MCPClientError } from '../mcp-client.js';
|
|
8
|
+
import { wasmSubcommands } from './agent-wasm.js';
|
|
8
9
|
import * as fs from 'fs';
|
|
9
10
|
import * as path from 'path';
|
|
10
11
|
/**
|
|
@@ -857,7 +858,7 @@ function formatLogLevel(level) {
|
|
|
857
858
|
export const agentCommand = {
|
|
858
859
|
name: 'agent',
|
|
859
860
|
description: 'Agent management commands',
|
|
860
|
-
subcommands: [spawnCommand, listCommand, statusCommand, stopCommand, metricsCommand, poolCommand, healthCommand, logsCommand],
|
|
861
|
+
subcommands: [spawnCommand, listCommand, statusCommand, stopCommand, metricsCommand, poolCommand, healthCommand, logsCommand, ...wasmSubcommands],
|
|
861
862
|
options: [],
|
|
862
863
|
examples: [
|
|
863
864
|
{ command: 'claude-flow agent spawn -t coder', description: 'Spawn a coder agent' },
|
|
@@ -873,11 +874,18 @@ export const agentCommand = {
|
|
|
873
874
|
output.writeln();
|
|
874
875
|
output.writeln('Subcommands:');
|
|
875
876
|
output.printList([
|
|
876
|
-
`${output.highlight('spawn')}
|
|
877
|
-
`${output.highlight('list')}
|
|
878
|
-
`${output.highlight('status')}
|
|
879
|
-
`${output.highlight('stop')}
|
|
880
|
-
`${output.highlight('metrics')}
|
|
877
|
+
`${output.highlight('spawn')} - Spawn a new agent`,
|
|
878
|
+
`${output.highlight('list')} - List all active agents`,
|
|
879
|
+
`${output.highlight('status')} - Show detailed agent status`,
|
|
880
|
+
`${output.highlight('stop')} - Stop a running agent`,
|
|
881
|
+
`${output.highlight('metrics')} - Show agent metrics`,
|
|
882
|
+
`${output.highlight('pool')} - Manage agent pool`,
|
|
883
|
+
`${output.highlight('health')} - Show agent health`,
|
|
884
|
+
`${output.highlight('logs')} - Show agent logs`,
|
|
885
|
+
`${output.highlight('wasm-status')} - Check WASM runtime availability`,
|
|
886
|
+
`${output.highlight('wasm-create')} - Create a WASM-sandboxed agent`,
|
|
887
|
+
`${output.highlight('wasm-prompt')} - Send a prompt to a WASM agent`,
|
|
888
|
+
`${output.highlight('wasm-gallery')} - List WASM agent gallery templates`,
|
|
881
889
|
]);
|
|
882
890
|
output.writeln();
|
|
883
891
|
output.writeln('Run "claude-flow agent <subcommand> --help" for subcommand help');
|