claude_swarm 0.1.15 → 0.1.17
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 +43 -0
- data/CLAUDE.md +9 -5
- data/README.md +119 -37
- data/claude-swarm.yml +18 -34
- data/example/microservices-team.yml +17 -17
- data/example/test-generation.yml +5 -5
- data/examples/monitoring-demo.yml +26 -0
- data/examples/multi-directory.yml +26 -0
- data/lib/claude_swarm/claude_code_executor.rb +19 -7
- data/lib/claude_swarm/claude_mcp_server.rb +2 -1
- data/lib/claude_swarm/cli.rb +86 -21
- data/lib/claude_swarm/commands/ps.rb +148 -0
- data/lib/claude_swarm/commands/show.rb +158 -0
- data/lib/claude_swarm/configuration.rb +20 -3
- data/lib/claude_swarm/mcp_generator.rb +6 -22
- data/lib/claude_swarm/orchestrator.rb +68 -9
- data/lib/claude_swarm/task_tool.rb +5 -2
- data/lib/claude_swarm/version.rb +1 -1
- data/lib/claude_swarm.rb +0 -2
- data/llms.txt +4 -5
- metadata +6 -4
- data/lib/claude_swarm/permission_mcp_server.rb +0 -189
- data/lib/claude_swarm/permission_tool.rb +0 -201
- /data/{sdk-docs.md → claude-sdk-docs.md} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3f0ab99665f31bddf2d3641525481ce2df55e910950af03290137246847bf70d
|
4
|
+
data.tar.gz: 2435170f5b61604c3131b1680f60ed8727795c58432806d9b61007813d4f5ce3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ee74c188f6cc7fd31bb8705661f0913674bb687fd1eae6c2973728d2418f62bbad86054a89bd150965f39ec0bbd37ac04b2413dd22340311afd03cd5ec9d5424
|
7
|
+
data.tar.gz: a6c5fb7db4a8659619c9c7b5de000303ce91b046b85d635381f437adc92b4fd739e8d2142f0e65323346d1ba4d2607bf2b90c7d76fcf7c119bf6b9d5c431a7fc
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,46 @@
|
|
1
|
+
## [0.1.17]
|
2
|
+
|
3
|
+
### Added
|
4
|
+
- **Multi-directory support**: Instances can now access multiple directories
|
5
|
+
- The `directory` field in YAML configuration now accepts either a string (single directory) or an array of strings (multiple directories)
|
6
|
+
- Additional directories are passed to Claude using the `--add-dir` flag
|
7
|
+
- The first directory in the array serves as the primary working directory
|
8
|
+
- All specified directories must exist or validation will fail
|
9
|
+
- Example: `directory: [./frontend, ./backend, ./shared]`
|
10
|
+
- **Session monitoring commands**: New commands for monitoring and managing active Claude Swarm sessions
|
11
|
+
- `claude-swarm ps`: List all active sessions with properly aligned columns showing session ID, swarm name, total cost, uptime, and directories
|
12
|
+
- `claude-swarm show SESSION_ID`: Display detailed session information including instance hierarchy and individual costs
|
13
|
+
- `claude-swarm watch SESSION_ID`: Tail session logs in real-time (uses native `tail -f`)
|
14
|
+
- `claude-swarm clean`: Remove stale session symlinks with optional age filtering (`--days N`)
|
15
|
+
- Active sessions are tracked via symlinks in `~/.claude-swarm/run/` for efficient monitoring
|
16
|
+
- Cost tracking aggregates data from `session.log.json` for accurate reporting
|
17
|
+
- Interactive main instance shows "n/a (interactive)" for cost when not available
|
18
|
+
|
19
|
+
## [0.1.16]
|
20
|
+
|
21
|
+
### Changed
|
22
|
+
- **Breaking change**: Removed custom permission MCP server in favor of Claude's native `mcp__MCP_NAME` pattern
|
23
|
+
- Connected instances are now automatically added to allowed tools as `mcp__<instance_name>`
|
24
|
+
- CLI parameter `--tools` renamed to `--allowed-tools` for consistency with YAML configuration
|
25
|
+
- MCP generator no longer creates permission MCP server configurations
|
26
|
+
|
27
|
+
### Removed
|
28
|
+
- Removed `PermissionMcpServer` and `PermissionTool` classes
|
29
|
+
- Removed `tools-mcp` CLI command
|
30
|
+
- Removed regex tool pattern syntax - use Claude Code patterns instead
|
31
|
+
- Removed `--permission-prompt-tool` flag from orchestrator
|
32
|
+
- Removed permission logging to `permissions.log`
|
33
|
+
|
34
|
+
### Migration Guide
|
35
|
+
- Replace custom tool patterns with Claude Code's native patterns in your YAML files:
|
36
|
+
- `"Bash(npm:*)"` → Use `Bash` and Claude Code's built-in command restrictions
|
37
|
+
- `"Edit(*.js)"` → Use `Edit` and Claude Code's built-in file restrictions
|
38
|
+
- For fine-grained tool control, use Claude Code's native patterns:
|
39
|
+
- `mcp__<server_name>__<tool_name>` for specific tools from an MCP server
|
40
|
+
- `mcp__<server_name>` to allow all tools from an MCP server
|
41
|
+
- Connected instances are automatically accessible via `mcp__<instance_name>` pattern
|
42
|
+
- See Claude Code's documentation for full details on supported tool patterns
|
43
|
+
|
1
44
|
## [0.1.15]
|
2
45
|
|
3
46
|
### Changed
|
data/CLAUDE.md
CHANGED
@@ -54,7 +54,7 @@ The gem is fully implemented with the following components:
|
|
54
54
|
|
55
55
|
1. **YAML Configuration**: Define swarms with instances, connections, tools, and MCP servers
|
56
56
|
2. **Inter-Instance Communication**: Instances connect via MCP using `claude mcp serve` with `-p` flag
|
57
|
-
3. **Tool Restrictions**: Support for
|
57
|
+
3. **Tool Restrictions**: Support for tool restrictions using Claude's native pattern (connections are available as `mcp__instance_name`)
|
58
58
|
4. **Multiple MCP Types**: Supports both stdio and SSE MCP server types
|
59
59
|
5. **Automatic MCP Generation**: Creates `.claude-swarm/` directory with MCP configs
|
60
60
|
6. **Custom System Prompts**: Each instance can have a custom prompt via `--append-system-prompt`
|
@@ -63,9 +63,10 @@ The gem is fully implemented with the following components:
|
|
63
63
|
|
64
64
|
1. User creates a `claude-swarm.yml` file defining the swarm topology
|
65
65
|
2. Running `claude-swarm` parses the configuration and validates it
|
66
|
-
3. MCP configuration files are generated for each instance in
|
66
|
+
3. MCP configuration files are generated for each instance in a session directory
|
67
67
|
4. The main instance is launched with `exec`, replacing the current process
|
68
68
|
5. Connected instances are available as MCP servers to the main instance
|
69
|
+
6. When an instance has connections, those connections are automatically added to its allowed tools as `mcp__<connection_name>`
|
69
70
|
|
70
71
|
### Configuration Example
|
71
72
|
|
@@ -85,15 +86,18 @@ swarm:
|
|
85
86
|
directory: ./frontend
|
86
87
|
model: sonnet
|
87
88
|
prompt: "You specialize in frontend development with React"
|
88
|
-
tools: [Edit, Write,
|
89
|
+
tools: [Edit, Write, Bash]
|
89
90
|
```
|
90
91
|
|
91
92
|
## Testing
|
92
93
|
|
93
|
-
The gem includes
|
94
|
+
The gem includes comprehensive tests covering:
|
94
95
|
- Configuration parsing and validation
|
95
|
-
- MCP generation logic
|
96
|
+
- MCP generation logic with connections
|
96
97
|
- Error handling scenarios
|
98
|
+
- CLI command functionality
|
99
|
+
- Session restoration
|
100
|
+
- Vibe mode behavior
|
97
101
|
|
98
102
|
## Dependencies
|
99
103
|
|
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.
|
@@ -113,7 +113,7 @@ swarm:
|
|
113
113
|
directory: ./web-frontend/src
|
114
114
|
model: opus
|
115
115
|
prompt: "You specialize in React components and state management"
|
116
|
-
allowed_tools: [Edit, Write,
|
116
|
+
allowed_tools: [Edit, Write, Bash]
|
117
117
|
|
118
118
|
css_expert:
|
119
119
|
description: "CSS specialist handling styling and responsive design"
|
@@ -142,7 +142,7 @@ swarm:
|
|
142
142
|
directory: ./api-server/db
|
143
143
|
model: opus
|
144
144
|
prompt: "You handle database schema and migrations"
|
145
|
-
allowed_tools: [Edit, Write,
|
145
|
+
allowed_tools: [Edit, Write, Bash]
|
146
146
|
|
147
147
|
mobile_lead:
|
148
148
|
description: "Mobile team lead coordinating cross-platform development"
|
@@ -157,21 +157,21 @@ swarm:
|
|
157
157
|
directory: ./mobile-app/ios
|
158
158
|
model: opus
|
159
159
|
prompt: "You develop the iOS application"
|
160
|
-
allowed_tools: [Edit, Write,
|
160
|
+
allowed_tools: [Edit, Write, Bash]
|
161
161
|
|
162
162
|
android_dev:
|
163
163
|
description: "Android developer creating native Android apps"
|
164
164
|
directory: ./mobile-app/android
|
165
165
|
model: opus
|
166
166
|
prompt: "You develop the Android application"
|
167
|
-
allowed_tools: [Edit, Write,
|
167
|
+
allowed_tools: [Edit, Write, Bash]
|
168
168
|
|
169
169
|
devops:
|
170
170
|
description: "DevOps engineer managing CI/CD and infrastructure"
|
171
171
|
directory: ./infrastructure
|
172
172
|
model: opus
|
173
173
|
prompt: "You handle CI/CD and infrastructure"
|
174
|
-
allowed_tools: [Read, Edit,
|
174
|
+
allowed_tools: [Read, Edit, Bash]
|
175
175
|
```
|
176
176
|
|
177
177
|
In this setup:
|
@@ -179,6 +179,7 @@ In this setup:
|
|
179
179
|
- Each team lead can work with their specialized developers
|
180
180
|
- Each instance is independent - connections create separate MCP server instances
|
181
181
|
- Teams work in isolated directories with role-appropriate tools
|
182
|
+
- Connected instances are accessible via MCP tools like `mcp__frontend_lead__task`, `mcp__backend_lead__task`, etc.
|
182
183
|
|
183
184
|
|
184
185
|
### Configuration Format
|
@@ -202,8 +203,8 @@ Each instance must have:
|
|
202
203
|
|
203
204
|
Each instance can have:
|
204
205
|
|
205
|
-
- **directory**: Working directory for this instance (can use ~ for home)
|
206
|
-
- **model**: Claude model to use (opus, sonnet
|
206
|
+
- **directory**: Working directory for this instance (can use ~ for home). Can be a string for a single directory or an array of strings for multiple directories
|
207
|
+
- **model**: Claude model to use (opus, sonnet)
|
207
208
|
- **connections**: Array of other instances this one can communicate with
|
208
209
|
- **allowed_tools**: Array of tools this instance can use (backward compatible with `tools`)
|
209
210
|
- **disallowed_tools**: Array of tools to explicitly deny (takes precedence over allowed_tools)
|
@@ -272,23 +273,22 @@ allowed_tools:
|
|
272
273
|
- WebFetch # Fetch web content
|
273
274
|
- WebSearch # Search the web
|
274
275
|
|
275
|
-
|
276
|
-
|
277
|
-
- "Bash(rm:*)" # Don't allow rm commands
|
276
|
+
# Note: Pattern-based tool restrictions have been deprecated.
|
277
|
+
# Use allowed_tools and disallowed_tools with tool names only.
|
278
278
|
```
|
279
279
|
|
280
280
|
Tools are passed to Claude using the `--allowedTools` and `--disallowedTools` flags with comma-separated values. Disallowed tools take precedence over allowed tools.
|
281
281
|
|
282
|
-
####
|
283
|
-
|
284
|
-
You can restrict tools with pattern-based filters:
|
282
|
+
#### Available Tools
|
285
283
|
|
286
284
|
```yaml
|
287
285
|
allowed_tools:
|
288
|
-
- Read
|
289
|
-
- Edit
|
290
|
-
-
|
291
|
-
-
|
286
|
+
- Read # File reading
|
287
|
+
- Edit # File editing
|
288
|
+
- Write # File creation
|
289
|
+
- Bash # Command execution
|
290
|
+
- WebFetch # Fetch web content
|
291
|
+
- WebSearch # Search the web
|
292
292
|
```
|
293
293
|
|
294
294
|
### Examples
|
@@ -336,7 +336,7 @@ swarm:
|
|
336
336
|
database:
|
337
337
|
description: "Database administrator managing data persistence"
|
338
338
|
directory: ./db
|
339
|
-
model:
|
339
|
+
model: sonnet
|
340
340
|
allowed_tools:
|
341
341
|
- Read
|
342
342
|
- Bash
|
@@ -398,6 +398,36 @@ swarm:
|
|
398
398
|
- Read
|
399
399
|
```
|
400
400
|
|
401
|
+
#### Multi-Directory Support
|
402
|
+
|
403
|
+
Instances can have access to multiple directories using an array (uses `claude --add-dir`):
|
404
|
+
|
405
|
+
```yaml
|
406
|
+
version: 1
|
407
|
+
swarm:
|
408
|
+
name: "Multi-Module Project"
|
409
|
+
main: fullstack_dev
|
410
|
+
instances:
|
411
|
+
fullstack_dev:
|
412
|
+
description: "Full-stack developer working across multiple modules"
|
413
|
+
directory: [./frontend, ./backend, ./shared] # Access to multiple directories
|
414
|
+
model: opus
|
415
|
+
allowed_tools: [Read, Edit, Write, Bash]
|
416
|
+
prompt: "You work across frontend, backend, and shared code modules"
|
417
|
+
|
418
|
+
documentation_writer:
|
419
|
+
description: "Documentation specialist with access to code and docs"
|
420
|
+
directory: ["./docs", "./src", "./examples"] # Multiple directories as array
|
421
|
+
model: sonnet
|
422
|
+
allowed_tools: [Read, Write, Edit]
|
423
|
+
prompt: "You maintain documentation based on code and examples"
|
424
|
+
```
|
425
|
+
|
426
|
+
When using multiple directories:
|
427
|
+
- The first directory in the array is the primary working directory
|
428
|
+
- Additional directories are accessible via the `--add-dir` flag in Claude
|
429
|
+
- All directories must exist or the configuration will fail validation
|
430
|
+
|
401
431
|
#### Mixed Permission Modes
|
402
432
|
|
403
433
|
You can have different permission modes for different instances:
|
@@ -419,7 +449,7 @@ swarm:
|
|
419
449
|
description: "Worker with restricted permissions"
|
420
450
|
directory: ./sensitive
|
421
451
|
model: sonnet
|
422
|
-
allowed_tools: [Read,
|
452
|
+
allowed_tools: [Read, Bash] # Allow read and bash commands
|
423
453
|
|
424
454
|
trusted_worker:
|
425
455
|
description: "Trusted worker with more permissions"
|
@@ -450,21 +480,77 @@ claude-swarm --prompt "Fix the bug in the payment module"
|
|
450
480
|
claude-swarm --session-id 20241206_143022
|
451
481
|
claude-swarm --session-id ~/path/to/session
|
452
482
|
|
453
|
-
# List available sessions
|
454
|
-
claude-swarm list-sessions
|
455
|
-
claude-swarm list-sessions --limit 20
|
456
|
-
|
457
483
|
# Show version
|
458
484
|
claude-swarm version
|
459
485
|
|
460
|
-
#
|
461
|
-
|
462
|
-
claude-swarm tools-mcp --allowed-tools 'Read,Edit' --disallowed-tools 'Edit(*.log)'
|
486
|
+
# Note: The permission MCP server has been deprecated.
|
487
|
+
# Tool permissions are now handled through allowed_tools and disallowed_tools in your configuration.
|
463
488
|
|
464
489
|
# Internal command for MCP server (used by connected instances)
|
465
490
|
claude-swarm mcp-serve INSTANCE_NAME --config CONFIG_FILE --session-timestamp TIMESTAMP
|
466
491
|
```
|
467
492
|
|
493
|
+
### Session Monitoring
|
494
|
+
|
495
|
+
Claude Swarm provides commands to monitor and inspect running sessions:
|
496
|
+
|
497
|
+
```bash
|
498
|
+
# List running swarm sessions with costs and uptime
|
499
|
+
claude-swarm ps
|
500
|
+
|
501
|
+
# Show detailed information about a session including instance hierarchy
|
502
|
+
claude-swarm show 20250617_235233
|
503
|
+
|
504
|
+
# Watch live logs from a session
|
505
|
+
claude-swarm watch 20250617_235233
|
506
|
+
|
507
|
+
# Watch logs starting from the last 50 lines
|
508
|
+
claude-swarm watch 20250617_235233 -n 50
|
509
|
+
|
510
|
+
# List all available sessions (including completed ones)
|
511
|
+
claude-swarm list-sessions
|
512
|
+
claude-swarm list-sessions --limit 20
|
513
|
+
|
514
|
+
# Clean up stale session symlinks
|
515
|
+
claude-swarm clean
|
516
|
+
|
517
|
+
# Remove sessions older than 30 days
|
518
|
+
claude-swarm clean --days 30
|
519
|
+
```
|
520
|
+
|
521
|
+
Example output from `claude-swarm ps`:
|
522
|
+
```
|
523
|
+
⚠️ Total cost does not include the cost of the main instance
|
524
|
+
|
525
|
+
SESSION_ID SWARM_NAME TOTAL_COST UPTIME DIRECTORY
|
526
|
+
-------------------------------------------------------------------------------
|
527
|
+
20250617_235233 Feature Development $0.3847 15m .
|
528
|
+
20250617_143022 Bug Investigation $1.2156 1h ./shopify
|
529
|
+
20250617_091547 Multi-Module Dev $0.8932 30m ./frontend, ./backend, ./shared
|
530
|
+
```
|
531
|
+
|
532
|
+
Note: The total cost shown reflects only the costs of connected instances called via MCP. The main instance cost is not tracked when running interactively.
|
533
|
+
|
534
|
+
Example output from `claude-swarm show`:
|
535
|
+
```
|
536
|
+
Session: 20250617_235233
|
537
|
+
Swarm: Feature Development
|
538
|
+
Total Cost: $0.3847 (excluding main instance)
|
539
|
+
Start Directory: /Users/paulo/project
|
540
|
+
|
541
|
+
Instance Hierarchy:
|
542
|
+
--------------------------------------------------
|
543
|
+
├─ orchestrator [main] (orchestrator_e85036fc)
|
544
|
+
Cost: n/a (interactive) | Calls: 0
|
545
|
+
└─ test_archaeologist (test_archaeologist_c504ca5f)
|
546
|
+
Cost: $0.1925 | Calls: 1
|
547
|
+
└─ pr_analyst (pr_analyst_bfbefe56)
|
548
|
+
Cost: $0.1922 | Calls: 1
|
549
|
+
|
550
|
+
Note: Main instance (orchestrator) cost is not tracked in interactive mode.
|
551
|
+
View costs directly in the Claude interface.
|
552
|
+
```
|
553
|
+
|
468
554
|
### Session Management and Restoration (Experimental)
|
469
555
|
|
470
556
|
Claude Swarm provides experimental session management with restoration capabilities. **Note: This feature is experimental and has limitations - the main instance's conversation context is not fully restored.**
|
@@ -477,7 +563,7 @@ All session files are organized in `~/.claude-swarm/sessions/{project}/{timestam
|
|
477
563
|
- `{instance_name}.mcp.json`: MCP configuration files
|
478
564
|
- `session.log`: Human-readable request/response tracking
|
479
565
|
- `session.log.json`: All events in JSONL format (one JSON per line)
|
480
|
-
|
566
|
+
# Note: permissions.log is no longer generated as the permission MCP server has been deprecated
|
481
567
|
|
482
568
|
#### Listing Sessions
|
483
569
|
View your previous Claude Swarm sessions:
|
@@ -503,10 +589,10 @@ Resume a previous session with all instances restored to their Claude session st
|
|
503
589
|
|
504
590
|
```bash
|
505
591
|
# Resume by session ID
|
506
|
-
claude-swarm --session-id
|
592
|
+
claude-swarm --session-id 20250617_143022
|
507
593
|
|
508
594
|
# Resume by full path
|
509
|
-
claude-swarm --session-id ~/.claude-swarm/sessions/my-project/
|
595
|
+
claude-swarm --session-id ~/.claude-swarm/sessions/my-project/20250617_143022
|
510
596
|
```
|
511
597
|
|
512
598
|
This will:
|
@@ -535,15 +621,11 @@ This will:
|
|
535
621
|
2. **MCP Generation**: For each instance, it generates an MCP configuration file that includes:
|
536
622
|
- Any explicitly defined MCP servers
|
537
623
|
- MCP servers for each connected instance (using `claude-swarm mcp-serve`)
|
538
|
-
|
539
|
-
|
540
|
-
-
|
541
|
-
- Supports wildcard patterns (e.g., `mcp__frontend__*` allows all frontend MCP tools)
|
624
|
+
3. **Tool Permissions**: Claude Swarm manages tool permissions through configuration:
|
625
|
+
- Each instance's `allowed_tools` specifies which tools it can use
|
626
|
+
- Connected instances are accessible via `mcp__<instance_name>__*` pattern
|
542
627
|
- Disallowed tools take precedence over allowed tools for fine-grained control
|
543
|
-
- Eliminates the need to manually accept each tool or use global `--vibe` mode
|
544
628
|
- Per-instance `vibe: true` skips all permission checks for that specific instance
|
545
|
-
- The permission MCP uses `--permission-prompt-tool` to check tool access
|
546
|
-
- Permission decisions are logged to `~/.claude-swarm/sessions/{project}/{timestamp}/permissions.log`
|
547
629
|
4. **Session Persistence**: Claude Swarm automatically tracks session state:
|
548
630
|
- Generates a shared session path for all instances
|
549
631
|
- Each instance's Claude session ID is captured and saved
|
data/claude-swarm.yml
CHANGED
@@ -1,42 +1,26 @@
|
|
1
1
|
version: 1
|
2
2
|
swarm:
|
3
3
|
name: "Swarm Name"
|
4
|
-
main:
|
4
|
+
main: claude_swarm_architect
|
5
5
|
instances:
|
6
|
-
|
7
|
-
description: "Lead
|
8
|
-
directory:
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
6
|
+
claude_swarm_architect:
|
7
|
+
description: "Lead architect"
|
8
|
+
directory:
|
9
|
+
- .
|
10
|
+
- /Users/paulo/src/github.com/shopify-playground/claudeception
|
11
|
+
model: opus
|
12
|
+
prompt: "You are an expert in Claude swarm architecture"
|
13
|
+
vibe: true
|
14
|
+
connections: [claudeception_architect]
|
13
15
|
|
14
16
|
# Example instances (uncomment and modify as needed):
|
15
17
|
|
16
|
-
|
17
|
-
description: "
|
18
|
-
directory:
|
19
|
-
|
20
|
-
|
21
|
-
|
18
|
+
claudeception_architect:
|
19
|
+
description: "You are an expert in Claudeception architecture"
|
20
|
+
directory:
|
21
|
+
- .
|
22
|
+
- /Users/paulo/src/github.com/shopify-playground/claudeception
|
23
|
+
model: opus
|
24
|
+
prompt: "You are an expert in Claudeception architecture"
|
25
|
+
vibe: true
|
22
26
|
|
23
|
-
backend_dev:
|
24
|
-
description: "Backend developer focusing on APIs, databases, and server architecture"
|
25
|
-
directory: .
|
26
|
-
model: sonnet
|
27
|
-
prompt: "You specialize in backend development, APIs, databases, and server architecture"
|
28
|
-
allowed_tools: [Read, Edit, Write, Bash]
|
29
|
-
|
30
|
-
# devops_engineer:
|
31
|
-
# description: "DevOps engineer managing infrastructure, CI/CD, and deployments"
|
32
|
-
# directory: .
|
33
|
-
# model: sonnet
|
34
|
-
# prompt: "You specialize in infrastructure, CI/CD, containerization, and deployment"
|
35
|
-
# allowed_tools: [Read, Edit, Write, "Bash(docker:*)", "Bash(kubectl:*)", "Bash(terraform:*)"]
|
36
|
-
|
37
|
-
# qa_engineer:
|
38
|
-
# description: "QA engineer ensuring quality through comprehensive testing"
|
39
|
-
# directory: ./tests
|
40
|
-
# model: sonnet
|
41
|
-
# prompt: "You specialize in testing, quality assurance, and test automation"
|
42
|
-
# allowed_tools: [Read, Edit, Write, Bash]
|
@@ -58,7 +58,7 @@ swarm:
|
|
58
58
|
allowed_tools:
|
59
59
|
- Edit
|
60
60
|
- Write
|
61
|
-
-
|
61
|
+
- Bash
|
62
62
|
|
63
63
|
ui_designer:
|
64
64
|
description: "UI/UX specialist creating responsive designs and managing design system"
|
@@ -91,7 +91,7 @@ swarm:
|
|
91
91
|
allowed_tools:
|
92
92
|
- Edit
|
93
93
|
- Write
|
94
|
-
-
|
94
|
+
- Bash
|
95
95
|
|
96
96
|
api_gateway_dev:
|
97
97
|
description: "API gateway developer managing request routing and rate limiting"
|
@@ -101,7 +101,7 @@ swarm:
|
|
101
101
|
allowed_tools:
|
102
102
|
- Edit
|
103
103
|
- Write
|
104
|
-
-
|
104
|
+
- Bash
|
105
105
|
|
106
106
|
core_service_dev:
|
107
107
|
description: "Core business logic service developer"
|
@@ -111,7 +111,7 @@ swarm:
|
|
111
111
|
allowed_tools:
|
112
112
|
- Edit
|
113
113
|
- Write
|
114
|
-
-
|
114
|
+
- Bash
|
115
115
|
|
116
116
|
shared_lib_dev:
|
117
117
|
description: "Shared libraries developer maintaining common code across services"
|
@@ -122,7 +122,7 @@ swarm:
|
|
122
122
|
allowed_tools:
|
123
123
|
- Edit
|
124
124
|
- Write
|
125
|
-
-
|
125
|
+
- Bash
|
126
126
|
|
127
127
|
# Mobile Team
|
128
128
|
mobile_lead:
|
@@ -143,7 +143,7 @@ swarm:
|
|
143
143
|
allowed_tools:
|
144
144
|
- Edit
|
145
145
|
- Write
|
146
|
-
-
|
146
|
+
- Bash
|
147
147
|
|
148
148
|
android_senior:
|
149
149
|
description: "Senior Android developer creating Kotlin applications"
|
@@ -153,7 +153,7 @@ swarm:
|
|
153
153
|
allowed_tools:
|
154
154
|
- Edit
|
155
155
|
- Write
|
156
|
-
-
|
156
|
+
- Bash
|
157
157
|
|
158
158
|
# Data Team
|
159
159
|
data_lead:
|
@@ -175,7 +175,7 @@ swarm:
|
|
175
175
|
allowed_tools:
|
176
176
|
- Edit
|
177
177
|
- Write
|
178
|
-
-
|
178
|
+
- Bash
|
179
179
|
|
180
180
|
ml_engineer:
|
181
181
|
description: "ML engineer developing and deploying machine learning models"
|
@@ -185,7 +185,7 @@ swarm:
|
|
185
185
|
allowed_tools:
|
186
186
|
- Edit
|
187
187
|
- Write
|
188
|
-
-
|
188
|
+
- Bash
|
189
189
|
|
190
190
|
analytics_dev:
|
191
191
|
description: "Analytics developer creating dashboards and reports"
|
@@ -195,7 +195,7 @@ swarm:
|
|
195
195
|
allowed_tools:
|
196
196
|
- Edit
|
197
197
|
- Write
|
198
|
-
-
|
198
|
+
- Bash
|
199
199
|
|
200
200
|
# DevOps & Infrastructure
|
201
201
|
devops_lead:
|
@@ -217,7 +217,7 @@ swarm:
|
|
217
217
|
allowed_tools:
|
218
218
|
- Edit
|
219
219
|
- Write
|
220
|
-
-
|
220
|
+
- Bash
|
221
221
|
|
222
222
|
platform_engineer:
|
223
223
|
description: "Platform engineer managing Kubernetes and container infrastructure"
|
@@ -227,7 +227,7 @@ swarm:
|
|
227
227
|
allowed_tools:
|
228
228
|
- Edit
|
229
229
|
- Write
|
230
|
-
-
|
230
|
+
- Bash
|
231
231
|
|
232
232
|
cloud_architect:
|
233
233
|
description: "Cloud architect managing AWS/GCP infrastructure and costs"
|
@@ -237,7 +237,7 @@ swarm:
|
|
237
237
|
allowed_tools:
|
238
238
|
- Edit
|
239
239
|
- Write
|
240
|
-
-
|
240
|
+
- Bash
|
241
241
|
|
242
242
|
# Quality & Security
|
243
243
|
qa_lead:
|
@@ -259,7 +259,7 @@ swarm:
|
|
259
259
|
allowed_tools:
|
260
260
|
- Edit
|
261
261
|
- Write
|
262
|
-
-
|
262
|
+
- Bash
|
263
263
|
|
264
264
|
backend_qa:
|
265
265
|
description: "Backend QA engineer creating API tests and integration tests"
|
@@ -269,7 +269,7 @@ swarm:
|
|
269
269
|
allowed_tools:
|
270
270
|
- Edit
|
271
271
|
- Write
|
272
|
-
-
|
272
|
+
- Bash
|
273
273
|
|
274
274
|
mobile_qa:
|
275
275
|
description: "Mobile QA engineer testing iOS and Android applications"
|
@@ -279,7 +279,7 @@ swarm:
|
|
279
279
|
allowed_tools:
|
280
280
|
- Edit
|
281
281
|
- Write
|
282
|
-
-
|
282
|
+
- Bash
|
283
283
|
|
284
284
|
security_lead:
|
285
285
|
description: "Security lead ensuring application and infrastructure security"
|
@@ -290,4 +290,4 @@ swarm:
|
|
290
290
|
allowed_tools:
|
291
291
|
- Read
|
292
292
|
- Edit
|
293
|
-
-
|
293
|
+
- Bash
|
data/example/test-generation.yml
CHANGED
@@ -70,7 +70,7 @@ swarm:
|
|
70
70
|
- Read
|
71
71
|
- Edit
|
72
72
|
- Write
|
73
|
-
-
|
73
|
+
- Bash
|
74
74
|
|
75
75
|
integration_test_expert:
|
76
76
|
description: "Integration test specialist for controllers, API endpoints, and request specs"
|
@@ -111,7 +111,7 @@ swarm:
|
|
111
111
|
- Read
|
112
112
|
- Edit
|
113
113
|
- Write
|
114
|
-
-
|
114
|
+
- Bash
|
115
115
|
|
116
116
|
system_test_expert:
|
117
117
|
description: "System test specialist for end-to-end user flows and JavaScript interactions"
|
@@ -154,7 +154,7 @@ swarm:
|
|
154
154
|
- Read
|
155
155
|
- Edit
|
156
156
|
- Write
|
157
|
-
-
|
157
|
+
- Bash
|
158
158
|
|
159
159
|
factory_specialist:
|
160
160
|
description: "Test data specialist managing factories, traits, and test data generation"
|
@@ -198,7 +198,7 @@ swarm:
|
|
198
198
|
- Read
|
199
199
|
- Edit
|
200
200
|
- Write
|
201
|
-
-
|
201
|
+
- Bash
|
202
202
|
|
203
203
|
test_quality_reviewer:
|
204
204
|
description: "Test quality assurance specialist ensuring best practices, coverage, and maintainability"
|
@@ -243,4 +243,4 @@ swarm:
|
|
243
243
|
Provide actionable feedback to improve test quality and coverage.
|
244
244
|
allowed_tools:
|
245
245
|
- Read
|
246
|
-
-
|
246
|
+
- Bash
|
@@ -0,0 +1,26 @@
|
|
1
|
+
version: 1
|
2
|
+
swarm:
|
3
|
+
name: "Monitoring Demo"
|
4
|
+
main: coordinator
|
5
|
+
instances:
|
6
|
+
coordinator:
|
7
|
+
description: "Main coordinator managing the team"
|
8
|
+
directory: .
|
9
|
+
model: haiku
|
10
|
+
connections: [analyzer, reporter]
|
11
|
+
prompt: "You coordinate analysis and reporting tasks"
|
12
|
+
allowed_tools: [Read, Edit]
|
13
|
+
|
14
|
+
analyzer:
|
15
|
+
description: "Data analyzer processing information"
|
16
|
+
directory: ./data
|
17
|
+
model: haiku
|
18
|
+
prompt: "You analyze data and provide insights"
|
19
|
+
allowed_tools: [Read, Bash]
|
20
|
+
|
21
|
+
reporter:
|
22
|
+
description: "Report generator creating summaries"
|
23
|
+
directory: ./reports
|
24
|
+
model: haiku
|
25
|
+
prompt: "You generate reports from analysis"
|
26
|
+
allowed_tools: [Write, Edit]
|