claude_swarm 0.1.10 → 0.1.11
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/README.md +3 -6
- data/lib/claude_swarm/cli.rb +4 -1
- data/lib/claude_swarm/orchestrator.rb +5 -2
- data/lib/claude_swarm/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6d943c577c58e38133c56a9852a175bb4167916784c2fcda3487740f70c9ff4e
|
4
|
+
data.tar.gz: 8aaebece866fd8f73f12a86b300d85ffb0a1ac3b160e3c3d70e4a3df48ba1594
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 20cc61370c608454ec588cf5771290cb7e9c563ef6bbc13c3d02009d33292445d6da3b069a7dc4cc5c69ce916183b49adfbd86cbaf2df41185912fa7e73aab87
|
7
|
+
data.tar.gz: 2b2f63db094d495da5b76bede0b2c49e933a6a5adfd4b9fb9967753e51011302291ad0c47d721c120113b0d182b501650ffd4cd1eacd47fa8a5c21db08249475
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# Claude Swarm
|
2
2
|
|
3
|
-
[](https://badge.fury.io/rb/claude_swarm)
|
4
4
|
[](https://github.com/parruda/claude-swarm/actions/workflows/ci.yml)
|
5
5
|
|
6
6
|
Claude Swarm orchestrates multiple Claude Code instances as a collaborative AI development team. It enables running AI agents with specialized roles, tools, and directory contexts, communicating via MCP (Model Context Protocol) in a tree-like hierarchy. Define your swarm topology in simple YAML and let Claude instances delegate tasks through connected instances. Perfect for complex projects requiring specialized AI agents for frontend, backend, testing, DevOps, or research tasks.
|
@@ -48,15 +48,12 @@ swarm:
|
|
48
48
|
directory: .
|
49
49
|
model: opus
|
50
50
|
connections: [frontend, backend]
|
51
|
-
|
52
|
-
- Read
|
53
|
-
- Edit
|
54
|
-
- Bash
|
51
|
+
vibe: true # Allow all tools for this instance
|
55
52
|
frontend:
|
56
53
|
description: "Frontend specialist handling UI and user experience"
|
57
54
|
directory: ./frontend
|
58
55
|
model: opus
|
59
|
-
allowed_tools:
|
56
|
+
allowed_tools: # Tools aren't required if you run it with `--vibe`
|
60
57
|
- Edit
|
61
58
|
- Write
|
62
59
|
- Bash
|
data/lib/claude_swarm/cli.rb
CHANGED
@@ -22,6 +22,8 @@ module ClaudeSwarm
|
|
22
22
|
desc: "Prompt to pass to the main Claude instance (non-interactive mode)"
|
23
23
|
method_option :stream_logs, type: :boolean, default: false,
|
24
24
|
desc: "Stream session logs to stdout (only works with -p)"
|
25
|
+
method_option :debug, type: :boolean, default: false,
|
26
|
+
desc: "Enable debug output"
|
25
27
|
def start(config_file = nil)
|
26
28
|
config_path = config_file || options[:config]
|
27
29
|
unless File.exist?(config_path)
|
@@ -45,7 +47,8 @@ module ClaudeSwarm
|
|
45
47
|
vibe: options[:vibe],
|
46
48
|
prompt: options[:prompt],
|
47
49
|
session_timestamp: session_timestamp,
|
48
|
-
stream_logs: options[:stream_logs]
|
50
|
+
stream_logs: options[:stream_logs],
|
51
|
+
debug: options[:debug])
|
49
52
|
orchestrator.start
|
50
53
|
rescue Error => e
|
51
54
|
error e.message
|
@@ -4,13 +4,14 @@ require "shellwords"
|
|
4
4
|
|
5
5
|
module ClaudeSwarm
|
6
6
|
class Orchestrator
|
7
|
-
def initialize(configuration, mcp_generator, vibe: false, prompt: nil, session_timestamp: nil, stream_logs: false)
|
7
|
+
def initialize(configuration, mcp_generator, vibe: false, prompt: nil, session_timestamp: nil, stream_logs: false, debug: false)
|
8
8
|
@config = configuration
|
9
9
|
@generator = mcp_generator
|
10
10
|
@vibe = vibe
|
11
11
|
@prompt = prompt
|
12
12
|
@session_timestamp = session_timestamp || Time.now.strftime("%Y%m%d_%H%M%S")
|
13
13
|
@stream_logs = stream_logs
|
14
|
+
@debug = debug
|
14
15
|
end
|
15
16
|
|
16
17
|
def start
|
@@ -48,7 +49,7 @@ module ClaudeSwarm
|
|
48
49
|
end
|
49
50
|
|
50
51
|
command = build_main_command(main_instance)
|
51
|
-
if
|
52
|
+
if @debug && !@prompt
|
52
53
|
puts "Running: #{command}"
|
53
54
|
puts
|
54
55
|
end
|
@@ -133,6 +134,8 @@ module ClaudeSwarm
|
|
133
134
|
parts << instance[:prompt]
|
134
135
|
end
|
135
136
|
|
137
|
+
parts << "--debug" if @debug
|
138
|
+
|
136
139
|
mcp_config_path = @generator.mcp_config_path(@config.main_instance)
|
137
140
|
parts << "--mcp-config"
|
138
141
|
parts << mcp_config_path
|
data/lib/claude_swarm/version.rb
CHANGED