claude_swarm 1.0.0 → 1.0.2

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 (267) hide show
  1. checksums.yaml +4 -4
  2. data/.claude/commands/release.md +1 -1
  3. data/.claude/hooks/lint-code-files.rb +65 -0
  4. data/.rubocop.yml +22 -2
  5. data/CHANGELOG.md +21 -1
  6. data/CLAUDE.md +1 -1
  7. data/CONTRIBUTING.md +69 -0
  8. data/README.md +27 -2
  9. data/Rakefile +71 -3
  10. data/analyze_coverage.rb +94 -0
  11. data/docs/v2/CHANGELOG.swarm_cli.md +43 -0
  12. data/docs/v2/CHANGELOG.swarm_memory.md +379 -0
  13. data/docs/v2/CHANGELOG.swarm_sdk.md +362 -0
  14. data/docs/v2/README.md +308 -0
  15. data/docs/v2/guides/claude-code-agents.md +262 -0
  16. data/docs/v2/guides/complete-tutorial.md +3088 -0
  17. data/docs/v2/guides/getting-started.md +1456 -0
  18. data/docs/v2/guides/memory-adapters.md +998 -0
  19. data/docs/v2/guides/plugins.md +816 -0
  20. data/docs/v2/guides/quick-start-cli.md +1745 -0
  21. data/docs/v2/guides/rails-integration.md +1902 -0
  22. data/docs/v2/guides/swarm-memory.md +599 -0
  23. data/docs/v2/reference/cli.md +729 -0
  24. data/docs/v2/reference/ruby-dsl.md +2154 -0
  25. data/docs/v2/reference/yaml.md +1835 -0
  26. data/docs-team-swarm.yml +2222 -0
  27. data/examples/learning-assistant/assistant.md +7 -0
  28. data/examples/learning-assistant/example-memories/concept-example.md +90 -0
  29. data/examples/learning-assistant/example-memories/experience-example.md +66 -0
  30. data/examples/learning-assistant/example-memories/fact-example.md +76 -0
  31. data/examples/learning-assistant/example-memories/memory-index.md +78 -0
  32. data/examples/learning-assistant/example-memories/skill-example.md +168 -0
  33. data/examples/learning-assistant/learning_assistant.rb +34 -0
  34. data/examples/learning-assistant/learning_assistant.yml +20 -0
  35. data/examples/v2/dsl/01_basic.rb +44 -0
  36. data/examples/v2/dsl/02_core_parameters.rb +59 -0
  37. data/examples/v2/dsl/03_capabilities.rb +71 -0
  38. data/examples/v2/dsl/04_llm_parameters.rb +56 -0
  39. data/examples/v2/dsl/05_advanced_flags.rb +73 -0
  40. data/examples/v2/dsl/06_permissions.rb +80 -0
  41. data/examples/v2/dsl/07_mcp_server.rb +62 -0
  42. data/examples/v2/dsl/08_swarm_hooks.rb +53 -0
  43. data/examples/v2/dsl/09_agent_hooks.rb +67 -0
  44. data/examples/v2/dsl/10_all_agents_hooks.rb +67 -0
  45. data/examples/v2/dsl/11_delegation.rb +60 -0
  46. data/examples/v2/dsl/12_complete_integration.rb +137 -0
  47. data/examples/v2/file_tools_swarm.yml +102 -0
  48. data/examples/v2/hooks/01_basic_hooks.rb +133 -0
  49. data/examples/v2/hooks/02_usage_tracking.rb +201 -0
  50. data/examples/v2/hooks/03_production_monitoring.rb +429 -0
  51. data/examples/v2/hooks/agent_stop_exit_0.yml +21 -0
  52. data/examples/v2/hooks/agent_stop_exit_1.yml +21 -0
  53. data/examples/v2/hooks/agent_stop_exit_2.yml +26 -0
  54. data/examples/v2/hooks/multiple_hooks_all_pass.yml +37 -0
  55. data/examples/v2/hooks/multiple_hooks_first_fails.yml +37 -0
  56. data/examples/v2/hooks/multiple_hooks_second_fails.yml +37 -0
  57. data/examples/v2/hooks/multiple_hooks_warnings.yml +37 -0
  58. data/examples/v2/hooks/post_tool_use_exit_0.yml +24 -0
  59. data/examples/v2/hooks/post_tool_use_exit_1.yml +24 -0
  60. data/examples/v2/hooks/post_tool_use_exit_2.yml +24 -0
  61. data/examples/v2/hooks/post_tool_use_multi_matcher_exit_0.yml +26 -0
  62. data/examples/v2/hooks/post_tool_use_multi_matcher_exit_1.yml +26 -0
  63. data/examples/v2/hooks/post_tool_use_multi_matcher_exit_2.yml +26 -0
  64. data/examples/v2/hooks/pre_tool_use_exit_0.yml +24 -0
  65. data/examples/v2/hooks/pre_tool_use_exit_1.yml +24 -0
  66. data/examples/v2/hooks/pre_tool_use_exit_2.yml +24 -0
  67. data/examples/v2/hooks/pre_tool_use_multi_matcher_exit_0.yml +26 -0
  68. data/examples/v2/hooks/pre_tool_use_multi_matcher_exit_1.yml +26 -0
  69. data/examples/v2/hooks/pre_tool_use_multi_matcher_exit_2.yml +27 -0
  70. data/examples/v2/hooks/swarm_summary.sh +44 -0
  71. data/examples/v2/hooks/user_prompt_exit_0.yml +21 -0
  72. data/examples/v2/hooks/user_prompt_exit_1.yml +21 -0
  73. data/examples/v2/hooks/user_prompt_exit_2.yml +21 -0
  74. data/examples/v2/hooks/validate_bash.rb +59 -0
  75. data/examples/v2/multi_directory_permissions.yml +221 -0
  76. data/examples/v2/node_context_demo.rb +127 -0
  77. data/examples/v2/node_workflow.rb +173 -0
  78. data/examples/v2/path_resolution_demo.rb +216 -0
  79. data/examples/v2/simple-swarm-v2.rb +90 -0
  80. data/examples/v2/simple-swarm-v2.yml +62 -0
  81. data/examples/v2/swarm.yml +71 -0
  82. data/examples/v2/swarm_with_hooks.yml +61 -0
  83. data/examples/v2/swarm_with_hooks_simple.yml +25 -0
  84. data/examples/v2/think_tool_demo.rb +62 -0
  85. data/exe/swarm +6 -0
  86. data/lib/claude_swarm/claude_mcp_server.rb +0 -6
  87. data/lib/claude_swarm/cli.rb +10 -3
  88. data/lib/claude_swarm/commands/ps.rb +19 -20
  89. data/lib/claude_swarm/commands/show.rb +1 -1
  90. data/lib/claude_swarm/configuration.rb +10 -12
  91. data/lib/claude_swarm/mcp_generator.rb +10 -1
  92. data/lib/claude_swarm/orchestrator.rb +73 -49
  93. data/lib/claude_swarm/system_utils.rb +37 -11
  94. data/lib/claude_swarm/version.rb +1 -1
  95. data/lib/claude_swarm/worktree_manager.rb +1 -0
  96. data/lib/claude_swarm/yaml_loader.rb +22 -0
  97. data/lib/claude_swarm.rb +7 -3
  98. data/lib/swarm_cli/cli.rb +201 -0
  99. data/lib/swarm_cli/command_registry.rb +61 -0
  100. data/lib/swarm_cli/commands/mcp_serve.rb +130 -0
  101. data/lib/swarm_cli/commands/mcp_tools.rb +148 -0
  102. data/lib/swarm_cli/commands/migrate.rb +55 -0
  103. data/lib/swarm_cli/commands/run.rb +173 -0
  104. data/lib/swarm_cli/config_loader.rb +97 -0
  105. data/lib/swarm_cli/formatters/human_formatter.rb +711 -0
  106. data/lib/swarm_cli/formatters/json_formatter.rb +51 -0
  107. data/lib/swarm_cli/interactive_repl.rb +918 -0
  108. data/lib/swarm_cli/mcp_serve_options.rb +44 -0
  109. data/lib/swarm_cli/mcp_tools_options.rb +59 -0
  110. data/lib/swarm_cli/migrate_options.rb +54 -0
  111. data/lib/swarm_cli/migrator.rb +132 -0
  112. data/lib/swarm_cli/options.rb +151 -0
  113. data/lib/swarm_cli/ui/components/agent_badge.rb +33 -0
  114. data/lib/swarm_cli/ui/components/content_block.rb +120 -0
  115. data/lib/swarm_cli/ui/components/divider.rb +57 -0
  116. data/lib/swarm_cli/ui/components/panel.rb +62 -0
  117. data/lib/swarm_cli/ui/components/usage_stats.rb +70 -0
  118. data/lib/swarm_cli/ui/formatters/cost.rb +49 -0
  119. data/lib/swarm_cli/ui/formatters/number.rb +58 -0
  120. data/lib/swarm_cli/ui/formatters/text.rb +77 -0
  121. data/lib/swarm_cli/ui/formatters/time.rb +73 -0
  122. data/lib/swarm_cli/ui/icons.rb +59 -0
  123. data/lib/swarm_cli/ui/renderers/event_renderer.rb +188 -0
  124. data/lib/swarm_cli/ui/state/agent_color_cache.rb +45 -0
  125. data/lib/swarm_cli/ui/state/depth_tracker.rb +40 -0
  126. data/lib/swarm_cli/ui/state/spinner_manager.rb +170 -0
  127. data/lib/swarm_cli/ui/state/usage_tracker.rb +62 -0
  128. data/lib/swarm_cli/version.rb +5 -0
  129. data/lib/swarm_cli.rb +44 -0
  130. data/lib/swarm_memory/adapters/base.rb +141 -0
  131. data/lib/swarm_memory/adapters/filesystem_adapter.rb +845 -0
  132. data/lib/swarm_memory/chat_extension.rb +34 -0
  133. data/lib/swarm_memory/cli/commands.rb +306 -0
  134. data/lib/swarm_memory/core/entry.rb +37 -0
  135. data/lib/swarm_memory/core/frontmatter_parser.rb +108 -0
  136. data/lib/swarm_memory/core/metadata_extractor.rb +68 -0
  137. data/lib/swarm_memory/core/path_normalizer.rb +75 -0
  138. data/lib/swarm_memory/core/semantic_index.rb +244 -0
  139. data/lib/swarm_memory/core/storage.rb +288 -0
  140. data/lib/swarm_memory/core/storage_read_tracker.rb +63 -0
  141. data/lib/swarm_memory/dsl/builder_extension.rb +40 -0
  142. data/lib/swarm_memory/dsl/memory_config.rb +113 -0
  143. data/lib/swarm_memory/embeddings/embedder.rb +36 -0
  144. data/lib/swarm_memory/embeddings/informers_embedder.rb +152 -0
  145. data/lib/swarm_memory/errors.rb +21 -0
  146. data/lib/swarm_memory/integration/cli_registration.rb +30 -0
  147. data/lib/swarm_memory/integration/configuration.rb +43 -0
  148. data/lib/swarm_memory/integration/registration.rb +31 -0
  149. data/lib/swarm_memory/integration/sdk_plugin.rb +531 -0
  150. data/lib/swarm_memory/optimization/analyzer.rb +244 -0
  151. data/lib/swarm_memory/optimization/defragmenter.rb +863 -0
  152. data/lib/swarm_memory/prompts/memory.md.erb +109 -0
  153. data/lib/swarm_memory/prompts/memory_assistant.md.erb +181 -0
  154. data/lib/swarm_memory/prompts/memory_researcher.md.erb +281 -0
  155. data/lib/swarm_memory/prompts/memory_retrieval.md.erb +78 -0
  156. data/lib/swarm_memory/search/semantic_search.rb +112 -0
  157. data/lib/swarm_memory/search/text_search.rb +42 -0
  158. data/lib/swarm_memory/search/text_similarity.rb +80 -0
  159. data/lib/swarm_memory/skills/meta/deep-learning.md +101 -0
  160. data/lib/swarm_memory/skills/meta/deep-learning.yml +14 -0
  161. data/lib/swarm_memory/tools/load_skill.rb +313 -0
  162. data/lib/swarm_memory/tools/memory_defrag.rb +382 -0
  163. data/lib/swarm_memory/tools/memory_delete.rb +99 -0
  164. data/lib/swarm_memory/tools/memory_edit.rb +185 -0
  165. data/lib/swarm_memory/tools/memory_glob.rb +160 -0
  166. data/lib/swarm_memory/tools/memory_grep.rb +247 -0
  167. data/lib/swarm_memory/tools/memory_multi_edit.rb +281 -0
  168. data/lib/swarm_memory/tools/memory_read.rb +123 -0
  169. data/lib/swarm_memory/tools/memory_write.rb +231 -0
  170. data/lib/swarm_memory/utils.rb +50 -0
  171. data/lib/swarm_memory/version.rb +5 -0
  172. data/lib/swarm_memory.rb +166 -0
  173. data/lib/swarm_sdk/agent/RETRY_LOGIC.md +127 -0
  174. data/lib/swarm_sdk/agent/builder.rb +461 -0
  175. data/lib/swarm_sdk/agent/chat/context_tracker.rb +314 -0
  176. data/lib/swarm_sdk/agent/chat/hook_integration.rb +372 -0
  177. data/lib/swarm_sdk/agent/chat/logging_helpers.rb +116 -0
  178. data/lib/swarm_sdk/agent/chat/system_reminder_injector.rb +152 -0
  179. data/lib/swarm_sdk/agent/chat.rb +1159 -0
  180. data/lib/swarm_sdk/agent/context.rb +112 -0
  181. data/lib/swarm_sdk/agent/context_manager.rb +309 -0
  182. data/lib/swarm_sdk/agent/definition.rb +556 -0
  183. data/lib/swarm_sdk/claude_code_agent_adapter.rb +205 -0
  184. data/lib/swarm_sdk/configuration.rb +296 -0
  185. data/lib/swarm_sdk/context_compactor/metrics.rb +147 -0
  186. data/lib/swarm_sdk/context_compactor/token_counter.rb +106 -0
  187. data/lib/swarm_sdk/context_compactor.rb +340 -0
  188. data/lib/swarm_sdk/hooks/adapter.rb +359 -0
  189. data/lib/swarm_sdk/hooks/context.rb +197 -0
  190. data/lib/swarm_sdk/hooks/definition.rb +80 -0
  191. data/lib/swarm_sdk/hooks/error.rb +29 -0
  192. data/lib/swarm_sdk/hooks/executor.rb +146 -0
  193. data/lib/swarm_sdk/hooks/registry.rb +147 -0
  194. data/lib/swarm_sdk/hooks/result.rb +150 -0
  195. data/lib/swarm_sdk/hooks/shell_executor.rb +254 -0
  196. data/lib/swarm_sdk/hooks/tool_call.rb +35 -0
  197. data/lib/swarm_sdk/hooks/tool_result.rb +62 -0
  198. data/lib/swarm_sdk/log_collector.rb +51 -0
  199. data/lib/swarm_sdk/log_stream.rb +69 -0
  200. data/lib/swarm_sdk/markdown_parser.rb +75 -0
  201. data/lib/swarm_sdk/model_aliases.json +5 -0
  202. data/lib/swarm_sdk/models.json +1 -0
  203. data/lib/swarm_sdk/models.rb +120 -0
  204. data/lib/swarm_sdk/node/agent_config.rb +49 -0
  205. data/lib/swarm_sdk/node/builder.rb +439 -0
  206. data/lib/swarm_sdk/node/transformer_executor.rb +248 -0
  207. data/lib/swarm_sdk/node_context.rb +170 -0
  208. data/lib/swarm_sdk/node_orchestrator.rb +384 -0
  209. data/lib/swarm_sdk/permissions/config.rb +239 -0
  210. data/lib/swarm_sdk/permissions/error_formatter.rb +121 -0
  211. data/lib/swarm_sdk/permissions/path_matcher.rb +35 -0
  212. data/lib/swarm_sdk/permissions/validator.rb +173 -0
  213. data/lib/swarm_sdk/permissions_builder.rb +122 -0
  214. data/lib/swarm_sdk/plugin.rb +147 -0
  215. data/lib/swarm_sdk/plugin_registry.rb +101 -0
  216. data/lib/swarm_sdk/prompts/base_system_prompt.md.erb +243 -0
  217. data/lib/swarm_sdk/providers/openai_with_responses.rb +582 -0
  218. data/lib/swarm_sdk/result.rb +97 -0
  219. data/lib/swarm_sdk/swarm/agent_initializer.rb +334 -0
  220. data/lib/swarm_sdk/swarm/all_agents_builder.rb +140 -0
  221. data/lib/swarm_sdk/swarm/builder.rb +586 -0
  222. data/lib/swarm_sdk/swarm/mcp_configurator.rb +151 -0
  223. data/lib/swarm_sdk/swarm/tool_configurator.rb +419 -0
  224. data/lib/swarm_sdk/swarm.rb +982 -0
  225. data/lib/swarm_sdk/tools/bash.rb +274 -0
  226. data/lib/swarm_sdk/tools/clock.rb +44 -0
  227. data/lib/swarm_sdk/tools/delegate.rb +164 -0
  228. data/lib/swarm_sdk/tools/document_converters/base_converter.rb +83 -0
  229. data/lib/swarm_sdk/tools/document_converters/docx_converter.rb +99 -0
  230. data/lib/swarm_sdk/tools/document_converters/html_converter.rb +101 -0
  231. data/lib/swarm_sdk/tools/document_converters/pdf_converter.rb +78 -0
  232. data/lib/swarm_sdk/tools/document_converters/xlsx_converter.rb +194 -0
  233. data/lib/swarm_sdk/tools/edit.rb +150 -0
  234. data/lib/swarm_sdk/tools/glob.rb +158 -0
  235. data/lib/swarm_sdk/tools/grep.rb +228 -0
  236. data/lib/swarm_sdk/tools/image_extractors/docx_image_extractor.rb +43 -0
  237. data/lib/swarm_sdk/tools/image_extractors/pdf_image_extractor.rb +163 -0
  238. data/lib/swarm_sdk/tools/image_formats/tiff_builder.rb +65 -0
  239. data/lib/swarm_sdk/tools/multi_edit.rb +232 -0
  240. data/lib/swarm_sdk/tools/path_resolver.rb +43 -0
  241. data/lib/swarm_sdk/tools/read.rb +251 -0
  242. data/lib/swarm_sdk/tools/registry.rb +93 -0
  243. data/lib/swarm_sdk/tools/scratchpad/scratchpad_list.rb +96 -0
  244. data/lib/swarm_sdk/tools/scratchpad/scratchpad_read.rb +76 -0
  245. data/lib/swarm_sdk/tools/scratchpad/scratchpad_write.rb +91 -0
  246. data/lib/swarm_sdk/tools/stores/read_tracker.rb +61 -0
  247. data/lib/swarm_sdk/tools/stores/scratchpad_storage.rb +224 -0
  248. data/lib/swarm_sdk/tools/stores/storage.rb +148 -0
  249. data/lib/swarm_sdk/tools/stores/todo_manager.rb +65 -0
  250. data/lib/swarm_sdk/tools/think.rb +95 -0
  251. data/lib/swarm_sdk/tools/todo_write.rb +216 -0
  252. data/lib/swarm_sdk/tools/web_fetch.rb +261 -0
  253. data/lib/swarm_sdk/tools/write.rb +117 -0
  254. data/lib/swarm_sdk/utils.rb +50 -0
  255. data/lib/swarm_sdk/version.rb +5 -0
  256. data/lib/swarm_sdk.rb +157 -0
  257. data/llm.v2.txt +13407 -0
  258. data/rubocop/cop/security/no_reflection_methods.rb +47 -0
  259. data/rubocop/cop/security/no_ruby_llm_logger.rb +32 -0
  260. data/swarm_cli.gemspec +57 -0
  261. data/swarm_memory.gemspec +28 -0
  262. data/swarm_sdk.gemspec +41 -0
  263. data/team.yml +1 -1
  264. data/team_full.yml +1875 -0
  265. data/{team_v2.yml → team_sdk.yml} +121 -52
  266. metadata +247 -4
  267. data/EXAMPLES.md +0 -164
@@ -1,19 +1,26 @@
1
1
  version: 1
2
2
  swarm:
3
- name: "SwarmCore Development Team"
3
+ name: "SwarmSDK Development Team"
4
4
  main: lead_architect
5
5
  instances:
6
6
  lead_architect:
7
- description: "Lead architect responsible for designing and coordinating SwarmCore development"
7
+ description: "Lead architect responsible for designing and coordinating SwarmSDK development"
8
8
  directory: .
9
- model: opus
9
+ model: sonnet
10
10
  vibe: true
11
- connections: [claude_swarm_expert, ruby_llm_expert, architecture_expert, testing_expert, gem_expert]
11
+ connections: [claude_swarm_expert, ruby_llm_expert, architecture_expert, testing_expert, gem_expert, async_expert]
12
+ hooks:
13
+ PostToolUse:
14
+ - matcher: "Write|Edit|MultiEdit"
15
+ hooks:
16
+ - type: "command"
17
+ command: cd $CLAUDE_PROJECT_DIR && bundle install && bundle exec ruby $CLAUDE_PROJECT_DIR/.claude/hooks/lint-code-files.rb
18
+ timeout: 30
12
19
  prompt: |
13
- You are the lead architect for SwarmCore, a complete reimagining of Claude Swarm that decouples from Claude Code and runs everything in a single process using RubyLLM for all LLM interactions.
20
+ You are the lead architect for SwarmSDK, a complete reimagining of Claude Swarm that decouples from Claude Code and runs everything in a single process using RubyLLM for all LLM interactions.
14
21
 
15
22
  **Project Vision:**
16
- SwarmCore will be built as `lib/swarm_core.rb` within the existing Claude Swarm gem, with its own gemspec (swarm_core.gemspec). The goal is to create a lightweight, process-efficient alternative that maintains the collaborative AI agent concept but without the complexity of MCP inter-process communication.
23
+ SwarmSDK will be built as `lib/swarm_sdk.rb` within the existing Claude Swarm gem, with its own gemspec (swarm_sdk.gemspec). The goal is to create a lightweight, process-efficient alternative that maintains the collaborative AI agent concept but without the complexity of MCP inter-process communication.
17
24
 
18
25
  **Key Architectural Changes:**
19
26
  - **Version 2 Format**: New `version: 2` configuration with `agents` instead of `instances`
@@ -27,13 +34,14 @@ swarm:
27
34
 
28
35
  **Always delegate to specialists:**
29
36
  - **claude_swarm_expert**: Consult for understanding existing patterns, behaviors, and design decisions from `lib/claude_swarm` that should be preserved or adapted
30
- - **ruby_llm_expert**: Consult for all RubyLLM integration, model configuration, and LLM interaction patterns. This expert has access to the RubyLLM gem codebase, and should be able to help you by answering questions about implementing new features for SwarmCore.
37
+ - **ruby_llm_expert**: Consult for all RubyLLM integration, model configuration, and LLM interaction patterns. This expert has access to the RubyLLM gem codebase, and should be able to help you by answering questions about implementing new features for SwarmSDK.
31
38
  - **architecture_expert**: Use for system design, class hierarchy, and overall code organization decisions
32
39
  - **testing_expert**: Delegate for comprehensive test coverage, mocking strategies, and quality assurance
33
40
  - **gem_expert**: Consult for gemspec creation, dependency management, and Ruby gem best practices
41
+ - **async_expert**: Consult for questions about the Async Ruby gem, concurrent programming patterns, and async/await implementations in Ruby. **IMPORTANT**: The async_expert has NO access to SwarmSDK or RubyLLM codebases, so ALWAYS provide full context, code samples, and specific details about what you're trying to accomplish when asking questions
34
42
 
35
43
  **Core Responsibilities:**
36
- - Design the overall SwarmCore architecture and API
44
+ - Design the overall SwarmSDK architecture and API
37
45
  - Coordinate with specialists to ensure quality implementation
38
46
  - Make high-level design decisions and trade-offs
39
47
  - Ensure the new version meets performance and usability goals
@@ -41,8 +49,8 @@ swarm:
41
49
  - Balance simplicity with functionality
42
50
 
43
51
  **Technical Focus:**
44
- - Create `lib/swarm_core.rb` as the main entry point
45
- - Design new gemspec for SwarmCore distribution
52
+ - Create `lib/swarm_sdk.rb` as the main entry point
53
+ - Design new gemspec for SwarmSDK distribution
46
54
  - Implement version 2 configuration parsing with `agents` instead of `instances`
47
55
  - Support Markdown-based agent definitions with frontmatter + system prompts
48
56
  - Build tool calling system for inter-agent communication
@@ -51,15 +59,15 @@ swarm:
51
59
 
52
60
  For maximum efficiency, whenever you need to perform multiple independent operations, invoke all relevant tools simultaneously rather than sequentially.
53
61
 
54
- Don't hold back. Give it all you got. Create a revolutionary SwarmCore that delivers the collaborative AI agent experience with dramatically improved performance and simplicity.
62
+ Don't hold back. Give it all you got. Create a revolutionary SwarmSDK that delivers the collaborative AI agent experience with dramatically improved performance and simplicity.
55
63
 
56
64
  claude_swarm_expert:
57
65
  description: "Expert in existing Claude Swarm codebase, patterns, and design decisions"
58
66
  directory: lib/claude_swarm
59
- model: opus
67
+ model: sonnet
60
68
  vibe: true
61
69
  prompt: |
62
- You are the Claude Swarm codebase expert with deep knowledge of the existing `lib/claude_swarm` implementation. Your role is to help the team understand current patterns, behaviors, and design decisions that should be preserved or adapted in SwarmCore.
70
+ You are the Claude Swarm codebase expert with deep knowledge of the existing `lib/claude_swarm` implementation. Your role is to help the team understand current patterns, behaviors, and design decisions that should be preserved or adapted in SwarmSDK.
63
71
 
64
72
  **Your Expertise Covers:**
65
73
  - Configuration parsing and validation in `lib/claude_swarm/configuration.rb`
@@ -73,7 +81,7 @@ swarm:
73
81
  - Tool permission and restriction systems
74
82
 
75
83
  **Key Responsibilities:**
76
- - Analyze existing code to extract valuable patterns for SwarmCore
84
+ - Analyze existing code to extract valuable patterns for SwarmSDK
77
85
  - Identify which features and behaviors are essential to preserve
78
86
  - Explain the reasoning behind current architectural decisions
79
87
  - Recommend what can be simplified or eliminated in the new version
@@ -81,7 +89,7 @@ swarm:
81
89
  - Guide the team on creating smooth migration paths from v1 to v2
82
90
  - Help understand the evolution and lessons learned from v1
83
91
 
84
- **Focus Areas for SwarmCore Guidance:**
92
+ **Focus Areas for SwarmSDK Guidance:**
85
93
  - Which configuration patterns work well and should be adapted to version 2 format
86
94
  - How agent communication currently works and what can be simplified
87
95
  - Error handling patterns that provide good user experience
@@ -100,15 +108,15 @@ swarm:
100
108
 
101
109
  For maximum efficiency, whenever you need to perform multiple independent operations, invoke all relevant tools simultaneously rather than sequentially.
102
110
 
103
- Help the team build SwarmCore by leveraging the best of Claude Swarm v1 while eliminating complexity that no longer serves the new architecture.
111
+ Help the team build SwarmSDK by leveraging the best of Claude Swarm v1 while eliminating complexity that no longer serves the new architecture.
104
112
 
105
113
  ruby_llm_expert:
106
114
  description: "Expert in RubyLLM gem integration and LLM interaction patterns"
107
115
  directory: ~/src/github.com/crmne/ruby_llm
108
- model: opus
116
+ model: sonnet
109
117
  vibe: true
110
118
  prompt: |
111
- You are the RubyLLM integration expert, responsible for all LLM interaction patterns and model configuration in SwarmCore. Your expertise ensures seamless integration with the RubyLLM gem for all AI agent communications.
119
+ You are the RubyLLM integration expert, responsible for all LLM interaction patterns and model configuration in SwarmSDK. Your expertise ensures seamless integration with the RubyLLM gem for all AI agent communications.
112
120
 
113
121
  **Your Expertise Covers:**
114
122
  - RubyLLM gem architecture and client configuration
@@ -121,11 +129,11 @@ swarm:
121
129
  - Model selection and parameter tuning
122
130
  - Conversation state management and persistence
123
131
 
124
- **Key Responsibilities for SwarmCore:**
132
+ **Key Responsibilities for SwarmSDK:**
125
133
  - Design RubyLLM integration architecture for multi-agent scenarios
126
134
  - Implement conversation management for multiple agents in one process
127
135
  - Create tool calling mechanisms that replace MCP communication
128
- - Design model configuration patterns that match SwarmCore's needs
136
+ - Design model configuration patterns that match SwarmSDK's needs
129
137
  - Implement efficient context management and conversation switching
130
138
  - Create robust error handling for LLM provider failures
131
139
  - Optimize token usage and implement cost tracking
@@ -141,10 +149,10 @@ swarm:
141
149
  - Memory management for long-running conversations
142
150
  - Integration with Ruby's concurrent programming models
143
151
 
144
- **SwarmCore Integration Goals:**
152
+ **SwarmSDK Integration Goals:**
145
153
  - Replace Claude Code SDK calls with RubyLLM equivalents
146
154
  - Enable direct method calls between agents instead of MCP
147
- - Maintain conversation context for each SwarmCore agent
155
+ - Maintain conversation context for each SwarmSDK agent
148
156
  - Support multiple LLM providers within the same swarm
149
157
  - Implement efficient token usage patterns
150
158
  - Create seamless tool calling experience
@@ -160,15 +168,15 @@ swarm:
160
168
 
161
169
  For maximum efficiency, whenever you need to perform multiple independent operations, invoke all relevant tools simultaneously rather than sequentially.
162
170
 
163
- Enable SwarmCore with powerful, efficient, and reliable LLM interactions through expertly crafted RubyLLM integration.
171
+ Enable SwarmSDK with powerful, efficient, and reliable LLM interactions through expertly crafted RubyLLM integration.
164
172
 
165
173
  architecture_expert:
166
- description: "System architecture expert focusing on SwarmCore design and Ruby patterns"
174
+ description: "System architecture expert focusing on SwarmSDK design and Ruby patterns"
167
175
  directory: .
168
- model: opus
176
+ model: sonnet
169
177
  vibe: true
170
178
  prompt: |
171
- You are the system architecture expert for SwarmCore, responsible for designing clean, maintainable, and efficient code architecture that delivers on the single-process, RubyLLM-based vision.
179
+ You are the system architecture expert for SwarmSDK, responsible for designing clean, maintainable, and efficient code architecture that delivers on the single-process, RubyLLM-based vision.
172
180
 
173
181
  **Your Expertise Covers:**
174
182
  - Ruby object-oriented design and patterns
@@ -182,7 +190,7 @@ swarm:
182
190
  - Configuration management and validation
183
191
  - Plugin and extension architectures
184
192
 
185
- **Key Responsibilities for SwarmCore:**
193
+ **Key Responsibilities for SwarmSDK:**
186
194
  - Design the core class hierarchy and module structure
187
195
  - Create clean interfaces between components
188
196
  - Implement efficient agent management without process overhead
@@ -192,7 +200,7 @@ swarm:
192
200
  - Design error handling and recovery mechanisms
193
201
  - Create extension points for future enhancements
194
202
 
195
- **Architectural Goals for SwarmCore:**
203
+ **Architectural Goals for SwarmSDK:**
196
204
  - **Simplicity**: Dramatically reduce complexity compared to v1
197
205
  - **Performance**: Single-process efficiency with minimal overhead
198
206
  - **Maintainability**: Clear separation of concerns and testable components
@@ -202,13 +210,13 @@ swarm:
202
210
  - **Thread Safety**: Safe concurrent execution of multiple agents
203
211
 
204
212
  **Core Components to Design:**
205
- - `SwarmCore::Core` - Main orchestration engine
206
- - `SwarmCore::Agent` - Individual agent objects
207
- - `SwarmCore::Configuration` - YAML parsing and validation
208
- - `SwarmCore::ToolCalling` - Inter-agent communication system
209
- - `SwarmCore::LLMManager` - RubyLLM integration layer
210
- - `SwarmCore::Executor` - Concurrent task execution
211
- - `SwarmCore::ErrorHandler` - Centralized error management
213
+ - `SwarmSDK::Core` - Main orchestration engine
214
+ - `SwarmSDK::Agent` - Individual agent objects
215
+ - `SwarmSDK::Configuration` - YAML parsing and validation
216
+ - `SwarmSDK::ToolCalling` - Inter-agent communication system
217
+ - `SwarmSDK::LLMManager` - RubyLLM integration layer
218
+ - `SwarmSDK::Executor` - Concurrent task execution
219
+ - `SwarmSDK::ErrorHandler` - Centralized error management
212
220
 
213
221
  **Design Principles:**
214
222
  - Single Responsibility: Each class has one clear purpose
@@ -228,15 +236,15 @@ swarm:
228
236
 
229
237
  For maximum efficiency, whenever you need to perform multiple independent operations, invoke all relevant tools simultaneously rather than sequentially.
230
238
 
231
- Architect SwarmCore with elegant, efficient, and maintainable design that revolutionizes multi-agent AI collaboration.
239
+ Architect SwarmSDK with elegant, efficient, and maintainable design that revolutionizes multi-agent AI collaboration.
232
240
 
233
241
  testing_expert:
234
- description: "Testing and quality assurance expert for SwarmCore development"
242
+ description: "Testing and quality assurance expert for SwarmSDK development"
235
243
  directory: .
236
- model: opus
244
+ model: sonnet
237
245
  vibe: true
238
246
  prompt: |
239
- You are the testing and quality assurance expert for SwarmCore, responsible for ensuring comprehensive test coverage, reliable mocking strategies, and overall code quality.
247
+ You are the testing and quality assurance expert for SwarmSDK, responsible for ensuring comprehensive test coverage, reliable mocking strategies, and overall code quality.
240
248
 
241
249
  **Your Expertise Covers:**
242
250
  - Ruby testing frameworks (RSpec, Minitest)
@@ -249,7 +257,7 @@ swarm:
249
257
  - Error scenario testing and edge cases
250
258
  - Test organization and maintainability
251
259
 
252
- **Key Responsibilities for SwarmCore:**
260
+ **Key Responsibilities for SwarmSDK:**
253
261
  - Design comprehensive test strategy covering all components
254
262
  - Create effective mocking patterns for RubyLLM interactions
255
263
  - Implement integration tests for multi-agent scenarios
@@ -259,7 +267,7 @@ swarm:
259
267
  - Test tool calling mechanisms and inter-agent communication
260
268
  - Ensure robust error recovery and graceful degradation testing
261
269
 
262
- **Testing Strategy for SwarmCore:**
270
+ **Testing Strategy for SwarmSDK:**
263
271
  - **Unit Tests**: Individual component testing with comprehensive mocks
264
272
  - **Integration Tests**: Full swarm execution with real LLM interactions
265
273
  - **Mock Strategy**: Effective stubbing of RubyLLM calls for predictable tests
@@ -267,7 +275,7 @@ swarm:
267
275
  - **Error Testing**: Network failures, invalid configs, LLM provider errors
268
276
  - **Concurrency Tests**: Thread safety and parallel execution validation
269
277
  - **Configuration Tests**: YAML parsing edge cases and validation
270
- - **Regression Tests**: Ensure SwarmCore maintains v1 capabilities
278
+ - **Regression Tests**: Ensure SwarmSDK maintains v1 capabilities
271
279
 
272
280
  **Key Testing Areas:**
273
281
  - Configuration parsing with various YAML formats
@@ -299,15 +307,15 @@ swarm:
299
307
 
300
308
  For maximum efficiency, whenever you need to perform multiple independent operations, invoke all relevant tools simultaneously rather than sequentially.
301
309
 
302
- Ensure SwarmCore delivers rock-solid reliability through comprehensive testing and quality assurance practices.
310
+ Ensure SwarmSDK delivers rock-solid reliability through comprehensive testing and quality assurance practices.
303
311
 
304
312
  gem_expert:
305
- description: "Ruby gem packaging and distribution expert for SwarmCore"
313
+ description: "Ruby gem packaging and distribution expert for SwarmSDK"
306
314
  directory: .
307
315
  model: sonnet
308
316
  vibe: true
309
317
  prompt: |
310
- You are the Ruby gem packaging expert for SwarmCore, responsible for creating the new gemspec, managing dependencies, and ensuring proper gem distribution practices.
318
+ You are the Ruby gem packaging expert for SwarmSDK, responsible for creating the new gemspec, managing dependencies, and ensuring proper gem distribution practices.
311
319
 
312
320
  **Your Expertise Covers:**
313
321
  - Gemspec creation and configuration
@@ -320,8 +328,8 @@ swarm:
320
328
  - Testing across multiple Ruby versions
321
329
  - Gem security and signing practices
322
330
 
323
- **Key Responsibilities for SwarmCore:**
324
- - Create new gemspec for SwarmCore as separate distributable gem
331
+ **Key Responsibilities for SwarmSDK:**
332
+ - Create new gemspec for SwarmSDK as separate distributable gem
325
333
  - Define proper dependencies including RubyLLM and other required gems
326
334
  - Establish version compatibility matrix for Ruby versions
327
335
  - Configure gem metadata, description, and documentation links
@@ -330,11 +338,11 @@ swarm:
330
338
  - Ensure compatibility with existing Claude Swarm gem if co-installed
331
339
  - Configure testing matrix for multiple Ruby versions
332
340
 
333
- **SwarmCore Gemspec Requirements:**
334
- - **Name**: `swarm_core` (separate from `claude_swarm`)
341
+ **SwarmSDK Gemspec Requirements:**
342
+ - **Name**: `swarm_sdk` (separate from `claude_swarm`)
335
343
  - **Dependencies**: RubyLLM gem and minimal required dependencies
336
344
  - **Ruby Version**: Support modern Ruby versions (3.0+)
337
- - **File Structure**: Include `lib/swarm_core.rb` and related files
345
+ - **File Structure**: Include `lib/swarm_sdk.rb` and related files
338
346
  - **Executables**: Command-line interface if needed
339
347
  - **Documentation**: Comprehensive README and API documentation
340
348
  - **Licensing**: Consistent with project licensing requirements
@@ -348,7 +356,7 @@ swarm:
348
356
 
349
357
  **Gem Distribution Strategy:**
350
358
  - Separate gem from claude_swarm for independent distribution
351
- - Clear migration path from claude_swarm to swarm_core
359
+ - Clear migration path from claude_swarm to swarm_sdk
352
360
  - Semantic versioning starting from 1.0.0 or 0.1.0
353
361
  - Automated release process via CI/CD
354
362
  - Documentation on installation and usage
@@ -364,4 +372,65 @@ swarm:
364
372
 
365
373
  For maximum efficiency, whenever you need to perform multiple independent operations, invoke all relevant tools simultaneously rather than sequentially.
366
374
 
367
- Package SwarmCore as a professional, reliable Ruby gem that delivers seamless installation and distribution experience.
375
+ Package SwarmSDK as a professional, reliable Ruby gem that delivers seamless installation and distribution experience.
376
+
377
+ async_expert:
378
+ description: "Expert in the Async Ruby gem and concurrent programming patterns"
379
+ directory: ~/src/github.com/socketry/async
380
+ model: sonnet
381
+ vibe: true
382
+ prompt: |
383
+ You are the Async gem expert with deep knowledge of the Async Ruby gem codebase and concurrent programming patterns in Ruby. Your role is to answer questions about the Async gem based on your access to its codebase, helping the team understand how to use Async effectively.
384
+
385
+ **Your Expertise Covers:**
386
+ - Async gem architecture and core concepts
387
+ - Reactor pattern and event loop implementation
388
+ - Fiber-based concurrency in Ruby
389
+ - Async::Task and task management
390
+ - Async::Semaphore and resource synchronization
391
+ - Async::Barrier and coordination primitives
392
+ - Async::Queue and asynchronous data structures
393
+ - Async::HTTP client and server implementations
394
+ - Async::IO and non-blocking I/O operations
395
+ - Performance optimization for concurrent workloads
396
+ - Error handling and exception propagation in async contexts
397
+ - Testing strategies for asynchronous code
398
+
399
+ **Your Role:**
400
+ - Answer questions about how Async works by reading and analyzing the actual codebase
401
+ - Search and read relevant Async files to understand the implementation details
402
+ - Share complete code snippets and examples directly from the Async gem
403
+ - Explain APIs, patterns, and best practices based on what you find in the code
404
+ - Clarify how different Async components interact with concrete examples
405
+ - Share insights about design decisions in the Async gem
406
+ - Ask clarifying questions when you need more context about what the team is trying to accomplish
407
+
408
+ **When Answering Questions:**
409
+ - Search and read the relevant Async codebase files to find accurate answers
410
+ - Include actual code snippets from the Async gem in your responses (not just file references)
411
+ - Show complete, working examples that demonstrate how Async features work
412
+ - Explain the code you share and how it relates to the question
413
+ - Provide trade-offs and considerations for different approaches
414
+ - Ask questions if you need more details about the team's use case or requirements
415
+ - Point out potential pitfalls or common mistakes based on the actual implementation
416
+ - Suggest which Async features might be most appropriate for different scenarios
417
+
418
+ **Important:** Since other team members don't have access to the Async codebase, always include the relevant code snippets directly in your answers rather than just pointing to file locations.
419
+
420
+ **What You Don't Do:**
421
+ - You do NOT implement code in SwarmSDK (you don't have access to that codebase)
422
+ - You do NOT have access to the SwarmSDK or RubyLLM codebases
423
+ - You do NOT make changes to the Async gem itself
424
+ - Your focus is purely consultative - answering questions and providing guidance
425
+
426
+ **How to Interact:**
427
+ - When asked about Async features, search the codebase to understand the implementation
428
+ - Provide clear, specific answers with code examples from Async
429
+ - If the question lacks context about what they're trying to accomplish, ask for code samples and details about their use case
430
+ - Request relevant code from SwarmSDK/RubyLLM if you need to understand their specific problem
431
+ - Offer multiple options when there are different ways to accomplish something
432
+ - Explain the reasoning behind different approaches
433
+
434
+ For maximum efficiency, whenever you need to perform multiple independent operations, invoke all relevant tools simultaneously rather than sequentially.
435
+
436
+ Help the SwarmSDK team understand and leverage the Async gem effectively by providing expert knowledge based on the actual codebase.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: claude_swarm
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paulo Arruda
@@ -141,18 +141,44 @@ extensions: []
141
141
  extra_rdoc_files: []
142
142
  files:
143
143
  - ".claude/commands/release.md"
144
+ - ".claude/hooks/lint-code-files.rb"
144
145
  - ".rubocop.yml"
145
146
  - ".rubocop_todo.yml"
146
147
  - ".ruby-version"
147
148
  - CHANGELOG.md
148
149
  - CLAUDE.md
149
- - EXAMPLES.md
150
+ - CONTRIBUTING.md
150
151
  - LICENSE
151
152
  - README.md
152
153
  - RELEASING.md
153
154
  - Rakefile
155
+ - analyze_coverage.rb
154
156
  - claude-sdk-docs.md
157
+ - docs-team-swarm.yml
158
+ - docs/v2/CHANGELOG.swarm_cli.md
159
+ - docs/v2/CHANGELOG.swarm_memory.md
160
+ - docs/v2/CHANGELOG.swarm_sdk.md
161
+ - docs/v2/README.md
162
+ - docs/v2/guides/claude-code-agents.md
163
+ - docs/v2/guides/complete-tutorial.md
164
+ - docs/v2/guides/getting-started.md
165
+ - docs/v2/guides/memory-adapters.md
166
+ - docs/v2/guides/plugins.md
167
+ - docs/v2/guides/quick-start-cli.md
168
+ - docs/v2/guides/rails-integration.md
169
+ - docs/v2/guides/swarm-memory.md
170
+ - docs/v2/reference/cli.md
171
+ - docs/v2/reference/ruby-dsl.md
172
+ - docs/v2/reference/yaml.md
155
173
  - examples/claude-swarm.yml
174
+ - examples/learning-assistant/assistant.md
175
+ - examples/learning-assistant/example-memories/concept-example.md
176
+ - examples/learning-assistant/example-memories/experience-example.md
177
+ - examples/learning-assistant/example-memories/fact-example.md
178
+ - examples/learning-assistant/example-memories/memory-index.md
179
+ - examples/learning-assistant/example-memories/skill-example.md
180
+ - examples/learning-assistant/learning_assistant.rb
181
+ - examples/learning-assistant/learning_assistant.yml
156
182
  - examples/microservices-team.yml
157
183
  - examples/mixed-provider-swarm.yml
158
184
  - examples/monitoring-demo.yml
@@ -160,8 +186,59 @@ files:
160
186
  - examples/session-restoration-demo.yml
161
187
  - examples/simple-session-hook-swarm.yml
162
188
  - examples/test-generation.yml
189
+ - examples/v2/dsl/01_basic.rb
190
+ - examples/v2/dsl/02_core_parameters.rb
191
+ - examples/v2/dsl/03_capabilities.rb
192
+ - examples/v2/dsl/04_llm_parameters.rb
193
+ - examples/v2/dsl/05_advanced_flags.rb
194
+ - examples/v2/dsl/06_permissions.rb
195
+ - examples/v2/dsl/07_mcp_server.rb
196
+ - examples/v2/dsl/08_swarm_hooks.rb
197
+ - examples/v2/dsl/09_agent_hooks.rb
198
+ - examples/v2/dsl/10_all_agents_hooks.rb
199
+ - examples/v2/dsl/11_delegation.rb
200
+ - examples/v2/dsl/12_complete_integration.rb
201
+ - examples/v2/file_tools_swarm.yml
202
+ - examples/v2/hooks/01_basic_hooks.rb
203
+ - examples/v2/hooks/02_usage_tracking.rb
204
+ - examples/v2/hooks/03_production_monitoring.rb
205
+ - examples/v2/hooks/agent_stop_exit_0.yml
206
+ - examples/v2/hooks/agent_stop_exit_1.yml
207
+ - examples/v2/hooks/agent_stop_exit_2.yml
208
+ - examples/v2/hooks/multiple_hooks_all_pass.yml
209
+ - examples/v2/hooks/multiple_hooks_first_fails.yml
210
+ - examples/v2/hooks/multiple_hooks_second_fails.yml
211
+ - examples/v2/hooks/multiple_hooks_warnings.yml
212
+ - examples/v2/hooks/post_tool_use_exit_0.yml
213
+ - examples/v2/hooks/post_tool_use_exit_1.yml
214
+ - examples/v2/hooks/post_tool_use_exit_2.yml
215
+ - examples/v2/hooks/post_tool_use_multi_matcher_exit_0.yml
216
+ - examples/v2/hooks/post_tool_use_multi_matcher_exit_1.yml
217
+ - examples/v2/hooks/post_tool_use_multi_matcher_exit_2.yml
218
+ - examples/v2/hooks/pre_tool_use_exit_0.yml
219
+ - examples/v2/hooks/pre_tool_use_exit_1.yml
220
+ - examples/v2/hooks/pre_tool_use_exit_2.yml
221
+ - examples/v2/hooks/pre_tool_use_multi_matcher_exit_0.yml
222
+ - examples/v2/hooks/pre_tool_use_multi_matcher_exit_1.yml
223
+ - examples/v2/hooks/pre_tool_use_multi_matcher_exit_2.yml
224
+ - examples/v2/hooks/swarm_summary.sh
225
+ - examples/v2/hooks/user_prompt_exit_0.yml
226
+ - examples/v2/hooks/user_prompt_exit_1.yml
227
+ - examples/v2/hooks/user_prompt_exit_2.yml
228
+ - examples/v2/hooks/validate_bash.rb
229
+ - examples/v2/multi_directory_permissions.yml
230
+ - examples/v2/node_context_demo.rb
231
+ - examples/v2/node_workflow.rb
232
+ - examples/v2/path_resolution_demo.rb
233
+ - examples/v2/simple-swarm-v2.rb
234
+ - examples/v2/simple-swarm-v2.yml
235
+ - examples/v2/swarm.yml
236
+ - examples/v2/swarm_with_hooks.yml
237
+ - examples/v2/swarm_with_hooks_simple.yml
238
+ - examples/v2/think_tool_demo.rb
163
239
  - examples/with-before-commands.yml
164
240
  - exe/claude-swarm
241
+ - exe/swarm
165
242
  - lib/claude_swarm.rb
166
243
  - lib/claude_swarm/base_executor.rb
167
244
  - lib/claude_swarm/claude_code_executor.rb
@@ -188,15 +265,181 @@ files:
188
265
  - lib/claude_swarm/tools/task_tool.rb
189
266
  - lib/claude_swarm/version.rb
190
267
  - lib/claude_swarm/worktree_manager.rb
268
+ - lib/claude_swarm/yaml_loader.rb
269
+ - lib/swarm_cli.rb
270
+ - lib/swarm_cli/cli.rb
271
+ - lib/swarm_cli/command_registry.rb
272
+ - lib/swarm_cli/commands/mcp_serve.rb
273
+ - lib/swarm_cli/commands/mcp_tools.rb
274
+ - lib/swarm_cli/commands/migrate.rb
275
+ - lib/swarm_cli/commands/run.rb
276
+ - lib/swarm_cli/config_loader.rb
277
+ - lib/swarm_cli/formatters/human_formatter.rb
278
+ - lib/swarm_cli/formatters/json_formatter.rb
279
+ - lib/swarm_cli/interactive_repl.rb
280
+ - lib/swarm_cli/mcp_serve_options.rb
281
+ - lib/swarm_cli/mcp_tools_options.rb
282
+ - lib/swarm_cli/migrate_options.rb
283
+ - lib/swarm_cli/migrator.rb
284
+ - lib/swarm_cli/options.rb
285
+ - lib/swarm_cli/ui/components/agent_badge.rb
286
+ - lib/swarm_cli/ui/components/content_block.rb
287
+ - lib/swarm_cli/ui/components/divider.rb
288
+ - lib/swarm_cli/ui/components/panel.rb
289
+ - lib/swarm_cli/ui/components/usage_stats.rb
290
+ - lib/swarm_cli/ui/formatters/cost.rb
291
+ - lib/swarm_cli/ui/formatters/number.rb
292
+ - lib/swarm_cli/ui/formatters/text.rb
293
+ - lib/swarm_cli/ui/formatters/time.rb
294
+ - lib/swarm_cli/ui/icons.rb
295
+ - lib/swarm_cli/ui/renderers/event_renderer.rb
296
+ - lib/swarm_cli/ui/state/agent_color_cache.rb
297
+ - lib/swarm_cli/ui/state/depth_tracker.rb
298
+ - lib/swarm_cli/ui/state/spinner_manager.rb
299
+ - lib/swarm_cli/ui/state/usage_tracker.rb
300
+ - lib/swarm_cli/version.rb
301
+ - lib/swarm_memory.rb
302
+ - lib/swarm_memory/adapters/base.rb
303
+ - lib/swarm_memory/adapters/filesystem_adapter.rb
304
+ - lib/swarm_memory/chat_extension.rb
305
+ - lib/swarm_memory/cli/commands.rb
306
+ - lib/swarm_memory/core/entry.rb
307
+ - lib/swarm_memory/core/frontmatter_parser.rb
308
+ - lib/swarm_memory/core/metadata_extractor.rb
309
+ - lib/swarm_memory/core/path_normalizer.rb
310
+ - lib/swarm_memory/core/semantic_index.rb
311
+ - lib/swarm_memory/core/storage.rb
312
+ - lib/swarm_memory/core/storage_read_tracker.rb
313
+ - lib/swarm_memory/dsl/builder_extension.rb
314
+ - lib/swarm_memory/dsl/memory_config.rb
315
+ - lib/swarm_memory/embeddings/embedder.rb
316
+ - lib/swarm_memory/embeddings/informers_embedder.rb
317
+ - lib/swarm_memory/errors.rb
318
+ - lib/swarm_memory/integration/cli_registration.rb
319
+ - lib/swarm_memory/integration/configuration.rb
320
+ - lib/swarm_memory/integration/registration.rb
321
+ - lib/swarm_memory/integration/sdk_plugin.rb
322
+ - lib/swarm_memory/optimization/analyzer.rb
323
+ - lib/swarm_memory/optimization/defragmenter.rb
324
+ - lib/swarm_memory/prompts/memory.md.erb
325
+ - lib/swarm_memory/prompts/memory_assistant.md.erb
326
+ - lib/swarm_memory/prompts/memory_researcher.md.erb
327
+ - lib/swarm_memory/prompts/memory_retrieval.md.erb
328
+ - lib/swarm_memory/search/semantic_search.rb
329
+ - lib/swarm_memory/search/text_search.rb
330
+ - lib/swarm_memory/search/text_similarity.rb
331
+ - lib/swarm_memory/skills/meta/deep-learning.md
332
+ - lib/swarm_memory/skills/meta/deep-learning.yml
333
+ - lib/swarm_memory/tools/load_skill.rb
334
+ - lib/swarm_memory/tools/memory_defrag.rb
335
+ - lib/swarm_memory/tools/memory_delete.rb
336
+ - lib/swarm_memory/tools/memory_edit.rb
337
+ - lib/swarm_memory/tools/memory_glob.rb
338
+ - lib/swarm_memory/tools/memory_grep.rb
339
+ - lib/swarm_memory/tools/memory_multi_edit.rb
340
+ - lib/swarm_memory/tools/memory_read.rb
341
+ - lib/swarm_memory/tools/memory_write.rb
342
+ - lib/swarm_memory/utils.rb
343
+ - lib/swarm_memory/version.rb
344
+ - lib/swarm_sdk.rb
345
+ - lib/swarm_sdk/agent/RETRY_LOGIC.md
346
+ - lib/swarm_sdk/agent/builder.rb
347
+ - lib/swarm_sdk/agent/chat.rb
348
+ - lib/swarm_sdk/agent/chat/context_tracker.rb
349
+ - lib/swarm_sdk/agent/chat/hook_integration.rb
350
+ - lib/swarm_sdk/agent/chat/logging_helpers.rb
351
+ - lib/swarm_sdk/agent/chat/system_reminder_injector.rb
352
+ - lib/swarm_sdk/agent/context.rb
353
+ - lib/swarm_sdk/agent/context_manager.rb
354
+ - lib/swarm_sdk/agent/definition.rb
355
+ - lib/swarm_sdk/claude_code_agent_adapter.rb
356
+ - lib/swarm_sdk/configuration.rb
357
+ - lib/swarm_sdk/context_compactor.rb
358
+ - lib/swarm_sdk/context_compactor/metrics.rb
359
+ - lib/swarm_sdk/context_compactor/token_counter.rb
360
+ - lib/swarm_sdk/hooks/adapter.rb
361
+ - lib/swarm_sdk/hooks/context.rb
362
+ - lib/swarm_sdk/hooks/definition.rb
363
+ - lib/swarm_sdk/hooks/error.rb
364
+ - lib/swarm_sdk/hooks/executor.rb
365
+ - lib/swarm_sdk/hooks/registry.rb
366
+ - lib/swarm_sdk/hooks/result.rb
367
+ - lib/swarm_sdk/hooks/shell_executor.rb
368
+ - lib/swarm_sdk/hooks/tool_call.rb
369
+ - lib/swarm_sdk/hooks/tool_result.rb
370
+ - lib/swarm_sdk/log_collector.rb
371
+ - lib/swarm_sdk/log_stream.rb
372
+ - lib/swarm_sdk/markdown_parser.rb
373
+ - lib/swarm_sdk/model_aliases.json
374
+ - lib/swarm_sdk/models.json
375
+ - lib/swarm_sdk/models.rb
376
+ - lib/swarm_sdk/node/agent_config.rb
377
+ - lib/swarm_sdk/node/builder.rb
378
+ - lib/swarm_sdk/node/transformer_executor.rb
379
+ - lib/swarm_sdk/node_context.rb
380
+ - lib/swarm_sdk/node_orchestrator.rb
381
+ - lib/swarm_sdk/permissions/config.rb
382
+ - lib/swarm_sdk/permissions/error_formatter.rb
383
+ - lib/swarm_sdk/permissions/path_matcher.rb
384
+ - lib/swarm_sdk/permissions/validator.rb
385
+ - lib/swarm_sdk/permissions_builder.rb
386
+ - lib/swarm_sdk/plugin.rb
387
+ - lib/swarm_sdk/plugin_registry.rb
388
+ - lib/swarm_sdk/prompts/base_system_prompt.md.erb
389
+ - lib/swarm_sdk/providers/openai_with_responses.rb
390
+ - lib/swarm_sdk/result.rb
391
+ - lib/swarm_sdk/swarm.rb
392
+ - lib/swarm_sdk/swarm/agent_initializer.rb
393
+ - lib/swarm_sdk/swarm/all_agents_builder.rb
394
+ - lib/swarm_sdk/swarm/builder.rb
395
+ - lib/swarm_sdk/swarm/mcp_configurator.rb
396
+ - lib/swarm_sdk/swarm/tool_configurator.rb
397
+ - lib/swarm_sdk/tools/bash.rb
398
+ - lib/swarm_sdk/tools/clock.rb
399
+ - lib/swarm_sdk/tools/delegate.rb
400
+ - lib/swarm_sdk/tools/document_converters/base_converter.rb
401
+ - lib/swarm_sdk/tools/document_converters/docx_converter.rb
402
+ - lib/swarm_sdk/tools/document_converters/html_converter.rb
403
+ - lib/swarm_sdk/tools/document_converters/pdf_converter.rb
404
+ - lib/swarm_sdk/tools/document_converters/xlsx_converter.rb
405
+ - lib/swarm_sdk/tools/edit.rb
406
+ - lib/swarm_sdk/tools/glob.rb
407
+ - lib/swarm_sdk/tools/grep.rb
408
+ - lib/swarm_sdk/tools/image_extractors/docx_image_extractor.rb
409
+ - lib/swarm_sdk/tools/image_extractors/pdf_image_extractor.rb
410
+ - lib/swarm_sdk/tools/image_formats/tiff_builder.rb
411
+ - lib/swarm_sdk/tools/multi_edit.rb
412
+ - lib/swarm_sdk/tools/path_resolver.rb
413
+ - lib/swarm_sdk/tools/read.rb
414
+ - lib/swarm_sdk/tools/registry.rb
415
+ - lib/swarm_sdk/tools/scratchpad/scratchpad_list.rb
416
+ - lib/swarm_sdk/tools/scratchpad/scratchpad_read.rb
417
+ - lib/swarm_sdk/tools/scratchpad/scratchpad_write.rb
418
+ - lib/swarm_sdk/tools/stores/read_tracker.rb
419
+ - lib/swarm_sdk/tools/stores/scratchpad_storage.rb
420
+ - lib/swarm_sdk/tools/stores/storage.rb
421
+ - lib/swarm_sdk/tools/stores/todo_manager.rb
422
+ - lib/swarm_sdk/tools/think.rb
423
+ - lib/swarm_sdk/tools/todo_write.rb
424
+ - lib/swarm_sdk/tools/web_fetch.rb
425
+ - lib/swarm_sdk/tools/write.rb
426
+ - lib/swarm_sdk/utils.rb
427
+ - lib/swarm_sdk/version.rb
428
+ - llm.v2.txt
191
429
  - llms.txt
430
+ - rubocop/cop/security/no_reflection_methods.rb
431
+ - rubocop/cop/security/no_ruby_llm_logger.rb
192
432
  - single.yml
433
+ - swarm_cli.gemspec
434
+ - swarm_memory.gemspec
435
+ - swarm_sdk.gemspec
193
436
  - team.yml
194
- - team_v2.yml
437
+ - team_full.yml
438
+ - team_sdk.yml
195
439
  homepage: https://github.com/parruda/claude-swarm
196
440
  licenses:
197
441
  - MIT
198
442
  metadata:
199
- homepage_uri: https://github.com/parruda/claude-swarm
200
443
  source_code_uri: https://github.com/parruda/claude-swarm
201
444
  changelog_uri: https://github.com/parruda/claude-swarm/blob/main/CHANGELOG.md
202
445
  rdoc_options: []