roast-ai 0.4.3 → 0.4.5
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/.github/CODEOWNERS +2 -0
- data/.github/workflows/ci.yaml +1 -0
- data/.gitignore +0 -26
- data/.rubocop.yml +13 -0
- data/.rubocop_todo.yml +21 -0
- data/CHANGELOG.md +29 -0
- data/Gemfile +4 -0
- data/Gemfile.lock +47 -29
- data/bin/rubocop +27 -0
- data/bin/spoom +27 -0
- data/bin/srb +27 -0
- data/bin/srb-rbi +27 -0
- data/bin/tapioca +27 -0
- data/docs/INSTRUMENTATION.md +3 -3
- data/dsl/simple.rb +10 -0
- data/lib/roast/dsl/executor.rb +26 -0
- data/lib/roast/dsl.rb +7 -0
- data/lib/roast/errors.rb +1 -0
- data/lib/roast/factories/api_provider_factory.rb +1 -0
- data/lib/roast/helpers/function_caching_interceptor.rb +3 -0
- data/lib/roast/helpers/logger.rb +6 -9
- data/lib/roast/helpers/metadata_access.rb +1 -0
- data/lib/roast/helpers/minitest_coverage_runner.rb +1 -0
- data/lib/roast/helpers/path_resolver.rb +8 -18
- data/lib/roast/helpers/prompt_loader.rb +3 -2
- data/lib/roast/helpers/timeout_handler.rb +3 -5
- data/lib/roast/initializers.rb +1 -0
- data/lib/roast/resources/api_resource.rb +4 -3
- data/lib/roast/resources/base_resource.rb +1 -0
- data/lib/roast/resources/directory_resource.rb +1 -0
- data/lib/roast/resources/file_resource.rb +1 -0
- data/lib/roast/resources/none_resource.rb +1 -0
- data/lib/roast/resources/url_resource.rb +2 -1
- data/lib/roast/resources.rb +1 -2
- data/lib/roast/services/context_threshold_checker.rb +1 -0
- data/lib/roast/services/token_counting_service.rb +1 -0
- data/lib/roast/tools/apply_diff.rb +1 -0
- data/lib/roast/tools/ask_user.rb +1 -0
- data/lib/roast/tools/bash.rb +1 -0
- data/lib/roast/tools/cmd.rb +1 -0
- data/lib/roast/tools/coding_agent.rb +1 -0
- data/lib/roast/tools/context_summarizer.rb +1 -0
- data/lib/roast/tools/grep.rb +1 -0
- data/lib/roast/tools/helpers/coding_agent_message_formatter.rb +1 -0
- data/lib/roast/tools/read_file.rb +1 -0
- data/lib/roast/tools/search_file.rb +1 -0
- data/lib/roast/tools/swarm.rb +1 -0
- data/lib/roast/tools/update_files.rb +1 -0
- data/lib/roast/tools/write_file.rb +1 -0
- data/lib/roast/tools.rb +2 -0
- data/lib/roast/value_objects/api_token.rb +1 -0
- data/lib/roast/value_objects/step_name.rb +1 -0
- data/lib/roast/value_objects/uri_base.rb +1 -0
- data/lib/roast/value_objects/workflow_path.rb +1 -0
- data/lib/roast/value_objects.rb +1 -0
- data/lib/roast/version.rb +2 -1
- data/lib/roast/workflow/agent_step.rb +1 -0
- data/lib/roast/workflow/api_configuration.rb +1 -0
- data/lib/roast/workflow/base_iteration_step.rb +1 -0
- data/lib/roast/workflow/base_step.rb +1 -0
- data/lib/roast/workflow/base_workflow.rb +1 -0
- data/lib/roast/workflow/case_executor.rb +1 -0
- data/lib/roast/workflow/case_step.rb +1 -0
- data/lib/roast/workflow/command_executor.rb +1 -0
- data/lib/roast/workflow/conditional_executor.rb +1 -0
- data/lib/roast/workflow/conditional_step.rb +1 -0
- data/lib/roast/workflow/configuration.rb +9 -0
- data/lib/roast/workflow/configuration_loader.rb +4 -1
- data/lib/roast/workflow/context_manager.rb +1 -0
- data/lib/roast/workflow/context_path_resolver.rb +1 -0
- data/lib/roast/workflow/dot_access_hash.rb +1 -0
- data/lib/roast/workflow/each_step.rb +1 -0
- data/lib/roast/workflow/error_handler.rb +7 -1
- data/lib/roast/workflow/expression_evaluator.rb +1 -0
- data/lib/roast/workflow/expression_utils.rb +1 -0
- data/lib/roast/workflow/file_state_repository.rb +2 -1
- data/lib/roast/workflow/input_executor.rb +1 -0
- data/lib/roast/workflow/input_step.rb +1 -0
- data/lib/roast/workflow/interpolator.rb +2 -1
- data/lib/roast/workflow/iteration_executor.rb +1 -0
- data/lib/roast/workflow/llm_boolean_coercer.rb +1 -0
- data/lib/roast/workflow/metadata_manager.rb +1 -0
- data/lib/roast/workflow/output_handler.rb +1 -0
- data/lib/roast/workflow/output_manager.rb +1 -0
- data/lib/roast/workflow/parallel_executor.rb +1 -0
- data/lib/roast/workflow/prompt_step.rb +1 -0
- data/lib/roast/workflow/repeat_step.rb +1 -0
- data/lib/roast/workflow/replay_handler.rb +1 -0
- data/lib/roast/workflow/resource_resolver.rb +2 -6
- data/lib/roast/workflow/session_manager.rb +1 -0
- data/lib/roast/workflow/shell_script_step.rb +1 -0
- data/lib/roast/workflow/sqlite_state_repository.rb +1 -0
- data/lib/roast/workflow/state_manager.rb +1 -0
- data/lib/roast/workflow/state_repository.rb +1 -0
- data/lib/roast/workflow/state_repository_factory.rb +4 -2
- data/lib/roast/workflow/step_completion_reporter.rb +1 -0
- data/lib/roast/workflow/step_executor_coordinator.rb +9 -5
- data/lib/roast/workflow/step_executor_factory.rb +1 -0
- data/lib/roast/workflow/step_executor_registry.rb +2 -3
- data/lib/roast/workflow/step_executor_with_reporting.rb +1 -0
- data/lib/roast/workflow/step_executors/base_step_executor.rb +1 -0
- data/lib/roast/workflow/step_executors/hash_step_executor.rb +1 -0
- data/lib/roast/workflow/step_executors/parallel_step_executor.rb +1 -0
- data/lib/roast/workflow/step_executors/string_step_executor.rb +1 -0
- data/lib/roast/workflow/step_factory.rb +1 -0
- data/lib/roast/workflow/step_finder.rb +1 -0
- data/lib/roast/workflow/step_loader.rb +1 -0
- data/lib/roast/workflow/step_name_extractor.rb +1 -0
- data/lib/roast/workflow/step_runner.rb +1 -0
- data/lib/roast/workflow/step_type_resolver.rb +1 -0
- data/lib/roast/workflow/validation_command.rb +1 -0
- data/lib/roast/workflow/validator.rb +1 -0
- data/lib/roast/workflow/validators/base_validator.rb +1 -0
- data/lib/roast/workflow/validators/dependency_validator.rb +1 -0
- data/lib/roast/workflow/validators/linting_validator.rb +1 -0
- data/lib/roast/workflow/validators/schema_validator.rb +1 -0
- data/lib/roast/workflow/validators/step_collector.rb +1 -0
- data/lib/roast/workflow/validators/validation_orchestrator.rb +1 -0
- data/lib/roast/workflow/workflow_context.rb +1 -0
- data/lib/roast/workflow/workflow_execution_context.rb +1 -0
- data/lib/roast/workflow/workflow_executor.rb +2 -1
- data/lib/roast/workflow/workflow_initializer.rb +1 -0
- data/lib/roast/workflow/workflow_runner.rb +66 -55
- data/lib/roast/workflow.rb +1 -0
- data/lib/roast/workflow_diagram_generator.rb +3 -2
- data/lib/roast.rb +23 -8
- data/roast.gemspec +1 -1
- data/sorbet/config +8 -0
- data/sorbet/rbi/dsl/.gitattributes +1 -0
- data/sorbet/rbi/dsl/active_support/callbacks.rbi +21 -0
- data/sorbet/rbi/gems/.gitattributes +1 -0
- data/sorbet/rbi/gems/activesupport@8.0.2.rbi +19107 -0
- data/sorbet/rbi/gems/addressable@2.8.7.rbi +1994 -0
- data/sorbet/rbi/gems/ast@2.4.3.rbi +585 -0
- data/sorbet/rbi/gems/base64@0.3.0.rbi +545 -0
- data/sorbet/rbi/gems/benchmark@0.4.1.rbi +619 -0
- data/sorbet/rbi/gems/bigdecimal@3.2.2.rbi +62 -0
- data/sorbet/rbi/gems/cgi@0.5.0.rbi +2961 -0
- data/sorbet/rbi/gems/claude_swarm@0.1.19.rbi +568 -0
- data/sorbet/rbi/gems/cli-kit@5.0.1.rbi +1991 -0
- data/sorbet/rbi/gems/cli-ui@2.3.0.rbi +3181 -0
- data/sorbet/rbi/gems/coderay@1.1.3.rbi +9 -0
- data/sorbet/rbi/gems/concurrent-ruby@1.3.5.rbi +11657 -0
- data/sorbet/rbi/gems/connection_pool@2.5.3.rbi +9 -0
- data/sorbet/rbi/gems/crack@1.0.0.rbi +145 -0
- data/sorbet/rbi/gems/diff-lcs@1.6.2.rbi +972 -0
- data/sorbet/rbi/gems/dotenv@3.1.8.rbi +295 -0
- data/sorbet/rbi/gems/drb@2.2.3.rbi +1661 -0
- data/sorbet/rbi/gems/dry-configurable@1.3.0.rbi +672 -0
- data/sorbet/rbi/gems/dry-core@1.1.0.rbi +1894 -0
- data/sorbet/rbi/gems/dry-inflector@1.2.0.rbi +659 -0
- data/sorbet/rbi/gems/dry-initializer@3.2.0.rbi +781 -0
- data/sorbet/rbi/gems/dry-logic@1.6.0.rbi +1127 -0
- data/sorbet/rbi/gems/dry-schema@1.14.1.rbi +3727 -0
- data/sorbet/rbi/gems/dry-types@1.8.3.rbi +3969 -0
- data/sorbet/rbi/gems/erubi@1.13.1.rbi +155 -0
- data/sorbet/rbi/gems/event_stream_parser@1.0.0.rbi +49 -0
- data/sorbet/rbi/gems/faraday-multipart@1.1.1.rbi +283 -0
- data/sorbet/rbi/gems/faraday-net_http@3.4.1.rbi +147 -0
- data/sorbet/rbi/gems/faraday-retry@2.3.2.rbi +9 -0
- data/sorbet/rbi/gems/faraday@2.13.1.rbi +2977 -0
- data/sorbet/rbi/gems/fast-mcp-annotations@1.5.3.rbi +1588 -0
- data/sorbet/rbi/gems/ffi@1.17.2.rbi +9 -0
- data/sorbet/rbi/gems/formatador@1.1.0.rbi +9 -0
- data/sorbet/rbi/gems/guard-compat@1.2.1.rbi +102 -0
- data/sorbet/rbi/gems/guard-minitest@2.4.6.rbi +402 -0
- data/sorbet/rbi/gems/guard@2.19.1.rbi +2283 -0
- data/sorbet/rbi/gems/hashdiff@1.2.0.rbi +355 -0
- data/sorbet/rbi/gems/i18n@1.14.7.rbi +2359 -0
- data/sorbet/rbi/gems/json-schema@5.1.1.rbi +1466 -0
- data/sorbet/rbi/gems/json@2.12.2.rbi +2051 -0
- data/sorbet/rbi/gems/language_server-protocol@3.17.0.5.rbi +9 -0
- data/sorbet/rbi/gems/lint_roller@1.1.0.rbi +9 -0
- data/sorbet/rbi/gems/listen@3.9.0.rbi +1206 -0
- data/sorbet/rbi/gems/logger@1.7.0.rbi +963 -0
- data/sorbet/rbi/gems/lumberjack@1.2.10.rbi +1830 -0
- data/sorbet/rbi/gems/method_source@1.1.0.rbi +9 -0
- data/sorbet/rbi/gems/mime-types-data@3.2025.0617.rbi +136 -0
- data/sorbet/rbi/gems/mime-types@3.7.0.rbi +1342 -0
- data/sorbet/rbi/gems/minitest-rg@5.3.0.rbi +160 -0
- data/sorbet/rbi/gems/minitest@5.25.5.rbi +1640 -0
- data/sorbet/rbi/gems/mocha@2.7.1.rbi +12 -0
- data/sorbet/rbi/gems/multipart-post@2.4.1.rbi +244 -0
- data/sorbet/rbi/gems/nenv@0.3.0.rbi +147 -0
- data/sorbet/rbi/gems/net-http@0.6.0.rbi +4247 -0
- data/sorbet/rbi/gems/netrc@0.11.0.rbi +159 -0
- data/sorbet/rbi/gems/notiffany@0.1.3.rbi +1079 -0
- data/sorbet/rbi/gems/open_router@0.3.3.rbi +230 -0
- data/sorbet/rbi/gems/ostruct@0.6.2.rbi +354 -0
- data/sorbet/rbi/gems/parallel@1.27.0.rbi +291 -0
- data/sorbet/rbi/gems/parser@3.3.8.0.rbi +5535 -0
- data/sorbet/rbi/gems/prism@1.4.0.rbi +41732 -0
- data/sorbet/rbi/gems/pry@0.15.2.rbi +9 -0
- data/sorbet/rbi/gems/public_suffix@6.0.2.rbi +936 -0
- data/sorbet/rbi/gems/racc@1.8.1.rbi +158 -0
- data/sorbet/rbi/gems/rack@2.2.17.rbi +5659 -0
- data/sorbet/rbi/gems/rainbow@3.1.1.rbi +9 -0
- data/sorbet/rbi/gems/raix@1.0.2.rbi +1104 -0
- data/sorbet/rbi/gems/rake@13.3.0.rbi +3036 -0
- data/sorbet/rbi/gems/rb-fsevent@0.11.2.rbi +9 -0
- data/sorbet/rbi/gems/rb-inotify@0.11.1.rbi +9 -0
- data/sorbet/rbi/gems/rbi@0.3.6.rbi +6893 -0
- data/sorbet/rbi/gems/rbs@3.9.4.rbi +6978 -0
- data/sorbet/rbi/gems/regexp_parser@2.10.0.rbi +9 -0
- data/sorbet/rbi/gems/rexml@3.4.1.rbi +5346 -0
- data/sorbet/rbi/gems/rubocop-ast@1.45.1.rbi +9 -0
- data/sorbet/rbi/gems/rubocop-shopify@2.17.1.rbi +9 -0
- data/sorbet/rbi/gems/rubocop@1.77.0.rbi +9 -0
- data/sorbet/rbi/gems/ruby-graphviz@1.2.5.rbi +1333 -0
- data/sorbet/rbi/gems/ruby-openai@8.1.0.rbi +758 -0
- data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +9 -0
- data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +9 -0
- data/sorbet/rbi/gems/securerandom@0.4.1.rbi +75 -0
- data/sorbet/rbi/gems/shellany@0.0.1.rbi +102 -0
- data/sorbet/rbi/gems/spoom@1.6.3.rbi +6985 -0
- data/sorbet/rbi/gems/sqlite3@2.7.0.rbi +1900 -0
- data/sorbet/rbi/gems/tapioca@0.16.11.rbi +3628 -0
- data/sorbet/rbi/gems/thor@1.4.0.rbi +4399 -0
- data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +5918 -0
- data/sorbet/rbi/gems/unicode-display_width@3.1.4.rbi +9 -0
- data/sorbet/rbi/gems/unicode-emoji@4.0.4.rbi +9 -0
- data/sorbet/rbi/gems/uri@1.0.3.rbi +2349 -0
- data/sorbet/rbi/gems/vcr@6.3.1.rbi +3040 -0
- data/sorbet/rbi/gems/webmock@3.25.1.rbi +1792 -0
- data/sorbet/rbi/gems/yard-sorbet@0.9.0.rbi +435 -0
- data/sorbet/rbi/gems/yard@0.9.37.rbi +18492 -0
- data/sorbet/rbi/gems/zeitwerk@2.7.3.rbi +1429 -0
- data/sorbet/tapioca/config.yml +13 -0
- data/sorbet/tapioca/require.rb +36 -0
- metadata +116 -5
- data/lib/roast/workflow/configuration_parser.rb +0 -54
@@ -0,0 +1,568 @@
|
|
1
|
+
# typed: true
|
2
|
+
|
3
|
+
# DO NOT EDIT MANUALLY
|
4
|
+
# This is an autogenerated file for types exported from the `claude_swarm` gem.
|
5
|
+
# Please instead update this file by running `bin/tapioca gem claude_swarm`.
|
6
|
+
|
7
|
+
|
8
|
+
# source://claude_swarm//lib/claude_swarm/version.rb#3
|
9
|
+
module ClaudeSwarm; end
|
10
|
+
|
11
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#11
|
12
|
+
class ClaudeSwarm::CLI < ::Thor
|
13
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#254
|
14
|
+
def clean; end
|
15
|
+
|
16
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#208
|
17
|
+
def generate; end
|
18
|
+
|
19
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#140
|
20
|
+
def init; end
|
21
|
+
|
22
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#318
|
23
|
+
def list_sessions; end
|
24
|
+
|
25
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#106
|
26
|
+
def mcp_serve; end
|
27
|
+
|
28
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#240
|
29
|
+
def ps; end
|
30
|
+
|
31
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#246
|
32
|
+
def show(session_id); end
|
33
|
+
|
34
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#32
|
35
|
+
def start(config_file = T.unsafe(nil)); end
|
36
|
+
|
37
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#235
|
38
|
+
def version; end
|
39
|
+
|
40
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#289
|
41
|
+
def watch(session_id); end
|
42
|
+
|
43
|
+
private
|
44
|
+
|
45
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#480
|
46
|
+
def build_generation_prompt(readme_content, output_file); end
|
47
|
+
|
48
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#392
|
49
|
+
def error(message); end
|
50
|
+
|
51
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#465
|
52
|
+
def find_session_path(session_id); end
|
53
|
+
|
54
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#396
|
55
|
+
def restore_session(session_id); end
|
56
|
+
|
57
|
+
class << self
|
58
|
+
# @return [Boolean]
|
59
|
+
#
|
60
|
+
# source://claude_swarm//lib/claude_swarm/cli.rb#12
|
61
|
+
def exit_on_failure?; end
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#10
|
66
|
+
class ClaudeSwarm::ClaudeCodeExecutor
|
67
|
+
# @return [ClaudeCodeExecutor] a new instance of ClaudeCodeExecutor
|
68
|
+
#
|
69
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#13
|
70
|
+
def initialize(working_directory: T.unsafe(nil), model: T.unsafe(nil), mcp_config: T.unsafe(nil), vibe: T.unsafe(nil), instance_name: T.unsafe(nil), instance_id: T.unsafe(nil), calling_instance: T.unsafe(nil), calling_instance_id: T.unsafe(nil), claude_session_id: T.unsafe(nil), additional_directories: T.unsafe(nil)); end
|
71
|
+
|
72
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#32
|
73
|
+
def execute(prompt, options = T.unsafe(nil)); end
|
74
|
+
|
75
|
+
# @return [Boolean]
|
76
|
+
#
|
77
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#97
|
78
|
+
def has_session?; end
|
79
|
+
|
80
|
+
# Returns the value of attribute last_response.
|
81
|
+
#
|
82
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#11
|
83
|
+
def last_response; end
|
84
|
+
|
85
|
+
# Returns the value of attribute logger.
|
86
|
+
#
|
87
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#11
|
88
|
+
def logger; end
|
89
|
+
|
90
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#92
|
91
|
+
def reset_session; end
|
92
|
+
|
93
|
+
# Returns the value of attribute session_id.
|
94
|
+
#
|
95
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#11
|
96
|
+
def session_id; end
|
97
|
+
|
98
|
+
# Returns the value of attribute session_path.
|
99
|
+
#
|
100
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#11
|
101
|
+
def session_path; end
|
102
|
+
|
103
|
+
# Returns the value of attribute working_directory.
|
104
|
+
#
|
105
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#11
|
106
|
+
def working_directory; end
|
107
|
+
|
108
|
+
private
|
109
|
+
|
110
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#227
|
111
|
+
def append_to_session_json(event); end
|
112
|
+
|
113
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#255
|
114
|
+
def build_command_array(prompt, options); end
|
115
|
+
|
116
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#198
|
117
|
+
def log_assistant_message(msg); end
|
118
|
+
|
119
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#147
|
120
|
+
def log_request(prompt); end
|
121
|
+
|
122
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#168
|
123
|
+
def log_response(response); end
|
124
|
+
|
125
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#178
|
126
|
+
def log_streaming_event(event); end
|
127
|
+
|
128
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#194
|
129
|
+
def log_system_message(event); end
|
130
|
+
|
131
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#223
|
132
|
+
def log_user_message(content); end
|
133
|
+
|
134
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#124
|
135
|
+
def setup_logging; end
|
136
|
+
|
137
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#103
|
138
|
+
def write_instance_state; end
|
139
|
+
end
|
140
|
+
|
141
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#312
|
142
|
+
class ClaudeSwarm::ClaudeCodeExecutor::ExecutionError < ::StandardError; end
|
143
|
+
|
144
|
+
# source://claude_swarm//lib/claude_swarm/claude_code_executor.rb#313
|
145
|
+
class ClaudeSwarm::ClaudeCodeExecutor::ParseError < ::StandardError; end
|
146
|
+
|
147
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#12
|
148
|
+
class ClaudeSwarm::ClaudeMcpServer
|
149
|
+
# @return [ClaudeMcpServer] a new instance of ClaudeMcpServer
|
150
|
+
#
|
151
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#18
|
152
|
+
def initialize(instance_config, calling_instance:, calling_instance_id: T.unsafe(nil)); end
|
153
|
+
|
154
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#44
|
155
|
+
def start; end
|
156
|
+
|
157
|
+
class << self
|
158
|
+
# Returns the value of attribute calling_instance.
|
159
|
+
#
|
160
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#15
|
161
|
+
def calling_instance; end
|
162
|
+
|
163
|
+
# Sets the attribute calling_instance
|
164
|
+
#
|
165
|
+
# @param value the value to set the attribute calling_instance to.
|
166
|
+
#
|
167
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#15
|
168
|
+
def calling_instance=(_arg0); end
|
169
|
+
|
170
|
+
# Returns the value of attribute calling_instance_id.
|
171
|
+
#
|
172
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#15
|
173
|
+
def calling_instance_id; end
|
174
|
+
|
175
|
+
# Sets the attribute calling_instance_id
|
176
|
+
#
|
177
|
+
# @param value the value to set the attribute calling_instance_id to.
|
178
|
+
#
|
179
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#15
|
180
|
+
def calling_instance_id=(_arg0); end
|
181
|
+
|
182
|
+
# Returns the value of attribute executor.
|
183
|
+
#
|
184
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#15
|
185
|
+
def executor; end
|
186
|
+
|
187
|
+
# Sets the attribute executor
|
188
|
+
#
|
189
|
+
# @param value the value to set the attribute executor to.
|
190
|
+
#
|
191
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#15
|
192
|
+
def executor=(_arg0); end
|
193
|
+
|
194
|
+
# Returns the value of attribute instance_config.
|
195
|
+
#
|
196
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#15
|
197
|
+
def instance_config; end
|
198
|
+
|
199
|
+
# Sets the attribute instance_config
|
200
|
+
#
|
201
|
+
# @param value the value to set the attribute instance_config to.
|
202
|
+
#
|
203
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#15
|
204
|
+
def instance_config=(_arg0); end
|
205
|
+
|
206
|
+
# Returns the value of attribute logger.
|
207
|
+
#
|
208
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#15
|
209
|
+
def logger; end
|
210
|
+
|
211
|
+
# Sets the attribute logger
|
212
|
+
#
|
213
|
+
# @param value the value to set the attribute logger to.
|
214
|
+
#
|
215
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#15
|
216
|
+
def logger=(_arg0); end
|
217
|
+
|
218
|
+
# Returns the value of attribute session_path.
|
219
|
+
#
|
220
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#15
|
221
|
+
def session_path; end
|
222
|
+
|
223
|
+
# Sets the attribute session_path
|
224
|
+
#
|
225
|
+
# @param value the value to set the attribute session_path to.
|
226
|
+
#
|
227
|
+
# source://claude_swarm//lib/claude_swarm/claude_mcp_server.rb#15
|
228
|
+
def session_path=(_arg0); end
|
229
|
+
end
|
230
|
+
end
|
231
|
+
|
232
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#7
|
233
|
+
class ClaudeSwarm::Configuration
|
234
|
+
# @return [Configuration] a new instance of Configuration
|
235
|
+
#
|
236
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#10
|
237
|
+
def initialize(config_path, base_dir: T.unsafe(nil)); end
|
238
|
+
|
239
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#29
|
240
|
+
def before_commands; end
|
241
|
+
|
242
|
+
# Returns the value of attribute config.
|
243
|
+
#
|
244
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#8
|
245
|
+
def config; end
|
246
|
+
|
247
|
+
# Returns the value of attribute config_path.
|
248
|
+
#
|
249
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#8
|
250
|
+
def config_path; end
|
251
|
+
|
252
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#25
|
253
|
+
def connections_for(instance_name); end
|
254
|
+
|
255
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#21
|
256
|
+
def instance_names; end
|
257
|
+
|
258
|
+
# Returns the value of attribute instances.
|
259
|
+
#
|
260
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#8
|
261
|
+
def instances; end
|
262
|
+
|
263
|
+
# Returns the value of attribute main_instance.
|
264
|
+
#
|
265
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#8
|
266
|
+
def main_instance; end
|
267
|
+
|
268
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#17
|
269
|
+
def main_instance_config; end
|
270
|
+
|
271
|
+
# Returns the value of attribute swarm.
|
272
|
+
#
|
273
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#8
|
274
|
+
def swarm; end
|
275
|
+
|
276
|
+
# Returns the value of attribute swarm_name.
|
277
|
+
#
|
278
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#8
|
279
|
+
def swarm_name; end
|
280
|
+
|
281
|
+
private
|
282
|
+
|
283
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#141
|
284
|
+
def detect_circular_dependencies; end
|
285
|
+
|
286
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#149
|
287
|
+
def detect_cycle_from(instance_name, visited, path); end
|
288
|
+
|
289
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#193
|
290
|
+
def expand_path(path); end
|
291
|
+
|
292
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#35
|
293
|
+
def load_and_validate; end
|
294
|
+
|
295
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#182
|
296
|
+
def parse_directories(directory_config); end
|
297
|
+
|
298
|
+
# @raise [Error]
|
299
|
+
#
|
300
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#79
|
301
|
+
def parse_instance(name, config); end
|
302
|
+
|
303
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#113
|
304
|
+
def parse_mcps(mcps); end
|
305
|
+
|
306
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#67
|
307
|
+
def parse_swarm; end
|
308
|
+
|
309
|
+
# @raise [Error]
|
310
|
+
#
|
311
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#197
|
312
|
+
def parse_worktree_value(value); end
|
313
|
+
|
314
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#133
|
315
|
+
def validate_connections; end
|
316
|
+
|
317
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#166
|
318
|
+
def validate_directories; end
|
319
|
+
|
320
|
+
# @raise [Error]
|
321
|
+
#
|
322
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#120
|
323
|
+
def validate_mcp(mcp); end
|
324
|
+
|
325
|
+
# @raise [Error]
|
326
|
+
#
|
327
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#53
|
328
|
+
def validate_swarm; end
|
329
|
+
|
330
|
+
# @raise [Error]
|
331
|
+
#
|
332
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#175
|
333
|
+
def validate_tool_field(instance_name, config, field_name); end
|
334
|
+
|
335
|
+
# @raise [Error]
|
336
|
+
#
|
337
|
+
# source://claude_swarm//lib/claude_swarm/configuration.rb#47
|
338
|
+
def validate_version; end
|
339
|
+
end
|
340
|
+
|
341
|
+
# source://claude_swarm//lib/claude_swarm.rb#17
|
342
|
+
class ClaudeSwarm::Error < ::StandardError; end
|
343
|
+
|
344
|
+
# source://claude_swarm//lib/claude_swarm/mcp_generator.rb#10
|
345
|
+
class ClaudeSwarm::McpGenerator
|
346
|
+
# @return [McpGenerator] a new instance of McpGenerator
|
347
|
+
#
|
348
|
+
# source://claude_swarm//lib/claude_swarm/mcp_generator.rb#11
|
349
|
+
def initialize(configuration, vibe: T.unsafe(nil), restore_session_path: T.unsafe(nil)); end
|
350
|
+
|
351
|
+
# source://claude_swarm//lib/claude_swarm/mcp_generator.rb#20
|
352
|
+
def generate_all; end
|
353
|
+
|
354
|
+
# source://claude_swarm//lib/claude_swarm/mcp_generator.rb#38
|
355
|
+
def mcp_config_path(instance_name); end
|
356
|
+
|
357
|
+
private
|
358
|
+
|
359
|
+
# source://claude_swarm//lib/claude_swarm/mcp_generator.rb#98
|
360
|
+
def build_instance_mcp_config(name, instance, calling_instance:, calling_instance_id:); end
|
361
|
+
|
362
|
+
# source://claude_swarm//lib/claude_swarm/mcp_generator.rb#80
|
363
|
+
def build_mcp_server_config(mcp); end
|
364
|
+
|
365
|
+
# source://claude_swarm//lib/claude_swarm/mcp_generator.rb#48
|
366
|
+
def ensure_swarm_directory; end
|
367
|
+
|
368
|
+
# source://claude_swarm//lib/claude_swarm/mcp_generator.rb#54
|
369
|
+
def generate_mcp_config(name, instance); end
|
370
|
+
|
371
|
+
# source://claude_swarm//lib/claude_swarm/mcp_generator.rb#147
|
372
|
+
def load_instance_states; end
|
373
|
+
|
374
|
+
# source://claude_swarm//lib/claude_swarm/mcp_generator.rb#44
|
375
|
+
def session_path; end
|
376
|
+
end
|
377
|
+
|
378
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#12
|
379
|
+
class ClaudeSwarm::Orchestrator
|
380
|
+
# @return [Orchestrator] a new instance of Orchestrator
|
381
|
+
#
|
382
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#15
|
383
|
+
def initialize(configuration, mcp_generator, vibe: T.unsafe(nil), prompt: T.unsafe(nil), stream_logs: T.unsafe(nil), debug: T.unsafe(nil), restore_session_path: T.unsafe(nil), worktree: T.unsafe(nil)); end
|
384
|
+
|
385
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#36
|
386
|
+
def start; end
|
387
|
+
|
388
|
+
private
|
389
|
+
|
390
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#365
|
391
|
+
def build_main_command(instance); end
|
392
|
+
|
393
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#295
|
394
|
+
def cleanup_processes; end
|
395
|
+
|
396
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#329
|
397
|
+
def cleanup_run_symlink; end
|
398
|
+
|
399
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#302
|
400
|
+
def cleanup_worktrees; end
|
401
|
+
|
402
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#310
|
403
|
+
def create_run_symlink; end
|
404
|
+
|
405
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#204
|
406
|
+
def execute_before_commands(commands); end
|
407
|
+
|
408
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#445
|
409
|
+
def restore_worktrees_if_needed(session_path); end
|
410
|
+
|
411
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#259
|
412
|
+
def save_swarm_config_path(session_path); end
|
413
|
+
|
414
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#283
|
415
|
+
def setup_signal_handlers; end
|
416
|
+
|
417
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#339
|
418
|
+
def start_log_streaming; end
|
419
|
+
end
|
420
|
+
|
421
|
+
# source://claude_swarm//lib/claude_swarm/orchestrator.rb#13
|
422
|
+
ClaudeSwarm::Orchestrator::RUN_DIR = T.let(T.unsafe(nil), String)
|
423
|
+
|
424
|
+
# source://claude_swarm//lib/claude_swarm/process_tracker.rb#6
|
425
|
+
class ClaudeSwarm::ProcessTracker
|
426
|
+
# @return [ProcessTracker] a new instance of ProcessTracker
|
427
|
+
#
|
428
|
+
# source://claude_swarm//lib/claude_swarm/process_tracker.rb#9
|
429
|
+
def initialize(session_path); end
|
430
|
+
|
431
|
+
# source://claude_swarm//lib/claude_swarm/process_tracker.rb#20
|
432
|
+
def cleanup_all; end
|
433
|
+
|
434
|
+
# source://claude_swarm//lib/claude_swarm/process_tracker.rb#15
|
435
|
+
def track_pid(pid, name); end
|
436
|
+
|
437
|
+
private
|
438
|
+
|
439
|
+
# source://claude_swarm//lib/claude_swarm/process_tracker.rb#74
|
440
|
+
def ensure_pids_directory; end
|
441
|
+
|
442
|
+
class << self
|
443
|
+
# source://claude_swarm//lib/claude_swarm/process_tracker.rb#65
|
444
|
+
def cleanup_session(session_path); end
|
445
|
+
end
|
446
|
+
end
|
447
|
+
|
448
|
+
# source://claude_swarm//lib/claude_swarm/process_tracker.rb#7
|
449
|
+
ClaudeSwarm::ProcessTracker::PIDS_DIR = T.let(T.unsafe(nil), String)
|
450
|
+
|
451
|
+
# source://claude_swarm//lib/claude_swarm/reset_session_tool.rb#4
|
452
|
+
class ClaudeSwarm::ResetSessionTool < ::FastMcp::Tool
|
453
|
+
# source://claude_swarm//lib/claude_swarm/reset_session_tool.rb#12
|
454
|
+
def call; end
|
455
|
+
end
|
456
|
+
|
457
|
+
# source://claude_swarm//lib/claude_swarm/session_info_tool.rb#4
|
458
|
+
class ClaudeSwarm::SessionInfoTool < ::FastMcp::Tool
|
459
|
+
# source://claude_swarm//lib/claude_swarm/session_info_tool.rb#12
|
460
|
+
def call; end
|
461
|
+
end
|
462
|
+
|
463
|
+
# source://claude_swarm//lib/claude_swarm/session_path.rb#6
|
464
|
+
module ClaudeSwarm::SessionPath
|
465
|
+
class << self
|
466
|
+
# Ensure the session directory exists
|
467
|
+
#
|
468
|
+
# source://claude_swarm//lib/claude_swarm/session_path.rb#36
|
469
|
+
def ensure_directory(session_path); end
|
470
|
+
|
471
|
+
# Get the session path from environment (required)
|
472
|
+
#
|
473
|
+
# source://claude_swarm//lib/claude_swarm/session_path.rb#45
|
474
|
+
def from_env; end
|
475
|
+
|
476
|
+
# Generate a full session path for a given directory and timestamp
|
477
|
+
#
|
478
|
+
# source://claude_swarm//lib/claude_swarm/session_path.rb#30
|
479
|
+
def generate(working_dir: T.unsafe(nil), timestamp: T.unsafe(nil)); end
|
480
|
+
|
481
|
+
# Convert a directory path to a safe folder name using + as separator
|
482
|
+
#
|
483
|
+
# source://claude_swarm//lib/claude_swarm/session_path.rb#15
|
484
|
+
def project_folder_name(working_dir = T.unsafe(nil)); end
|
485
|
+
|
486
|
+
# source://claude_swarm//lib/claude_swarm/session_path.rb#10
|
487
|
+
def swarm_home; end
|
488
|
+
end
|
489
|
+
end
|
490
|
+
|
491
|
+
# source://claude_swarm//lib/claude_swarm/session_path.rb#7
|
492
|
+
ClaudeSwarm::SessionPath::SESSIONS_DIR = T.let(T.unsafe(nil), String)
|
493
|
+
|
494
|
+
# source://claude_swarm//lib/claude_swarm/task_tool.rb#4
|
495
|
+
class ClaudeSwarm::TaskTool < ::FastMcp::Tool
|
496
|
+
# source://claude_swarm//lib/claude_swarm/task_tool.rb#15
|
497
|
+
def call(prompt:, new_session: T.unsafe(nil), system_prompt: T.unsafe(nil)); end
|
498
|
+
end
|
499
|
+
|
500
|
+
# source://claude_swarm//lib/claude_swarm/version.rb#4
|
501
|
+
ClaudeSwarm::VERSION = T.let(T.unsafe(nil), String)
|
502
|
+
|
503
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#10
|
504
|
+
class ClaudeSwarm::WorktreeManager
|
505
|
+
# @return [WorktreeManager] a new instance of WorktreeManager
|
506
|
+
#
|
507
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#13
|
508
|
+
def initialize(cli_worktree_option = T.unsafe(nil), session_id: T.unsafe(nil)); end
|
509
|
+
|
510
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#112
|
511
|
+
def cleanup_worktrees; end
|
512
|
+
|
513
|
+
# Returns the value of attribute created_worktrees.
|
514
|
+
#
|
515
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#11
|
516
|
+
def created_worktrees; end
|
517
|
+
|
518
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#71
|
519
|
+
def map_to_worktree_path(original_path, worktree_name); end
|
520
|
+
|
521
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#144
|
522
|
+
def session_metadata; end
|
523
|
+
|
524
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#26
|
525
|
+
def setup_worktrees(instances); end
|
526
|
+
|
527
|
+
# Returns the value of attribute shared_worktree_name.
|
528
|
+
#
|
529
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#11
|
530
|
+
def shared_worktree_name; end
|
531
|
+
|
532
|
+
# Deprecated method for backward compatibility
|
533
|
+
#
|
534
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#154
|
535
|
+
def worktree_name; end
|
536
|
+
|
537
|
+
private
|
538
|
+
|
539
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#196
|
540
|
+
def collect_worktrees_to_create(instances); end
|
541
|
+
|
542
|
+
# @raise [Error]
|
543
|
+
#
|
544
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#241
|
545
|
+
def create_worktree(repo_root, worktree_name); end
|
546
|
+
|
547
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#171
|
548
|
+
def determine_worktree_config(instance); end
|
549
|
+
|
550
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#335
|
551
|
+
def find_base_branch(repo_path); end
|
552
|
+
|
553
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#229
|
554
|
+
def find_git_root(path); end
|
555
|
+
|
556
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#160
|
557
|
+
def generate_worktree_name; end
|
558
|
+
|
559
|
+
# @return [Boolean]
|
560
|
+
#
|
561
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#285
|
562
|
+
def has_uncommitted_changes?(worktree_path); end
|
563
|
+
|
564
|
+
# @return [Boolean]
|
565
|
+
#
|
566
|
+
# source://claude_swarm//lib/claude_swarm/worktree_manager.rb#294
|
567
|
+
def has_unpushed_commits?(worktree_path); end
|
568
|
+
end
|