autobyteus 1.0.5__tar.gz → 1.0.6__tar.gz
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.
- {autobyteus-1.0.5 → autobyteus-1.0.6}/PKG-INFO +2 -2
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus.egg-info/PKG-INFO +2 -2
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus.egg-info/SOURCES.txt +0 -6
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus.egg-info/requires.txt +1 -1
- {autobyteus-1.0.5 → autobyteus-1.0.6}/setup.py +2 -2
- autobyteus-1.0.5/autobyteus/agent/factory/agent_factory.py +0 -94
- autobyteus-1.0.5/autobyteus/agent/registry/__init__.py +0 -11
- autobyteus-1.0.5/autobyteus/agent/registry/agent_definition.py +0 -94
- autobyteus-1.0.5/autobyteus/agent/registry/agent_registry.py +0 -114
- autobyteus-1.0.5/autobyteus/agent/remote_agent.py +0 -9
- autobyteus-1.0.5/autobyteus/tools/mcp_remote_tool.py +0 -82
- {autobyteus-1.0.5 → autobyteus-1.0.6}/LICENSE +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/README.md +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/agent.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/async_agent.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/async_group_aware_agent.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/exceptions.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/factory/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/group/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/group/async_group_aware_agent.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/group/coordinator_agent.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/group/group_aware_agent.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/message/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/message/message.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/message/message_types.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/message/send_message_to.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/orchestrator/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/orchestrator/base_agent_orchestrator.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/orchestrator/multi_replica_agent_orchestrator.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/orchestrator/single_replica_agent_orchestrator.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/response_parser/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/response_parser/tool_usage_command_parser.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/status.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/tool_invocation.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/check_requirements.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/conversation/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/conversation/conversation.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/conversation/user_message.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/events/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/events/decorators.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/events/event_emitter.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/events/event_manager.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/events/event_types.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/api/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/api/autobyteus_llm.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/api/bedrock_llm.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/api/claude_llm.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/api/deepseek_llm.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/api/gemini_llm.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/api/grok_llm.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/api/groq_llm.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/api/mistral_llm.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/api/nvidia_llm.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/api/ollama_llm.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/api/openai_llm.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/autobyteus_provider.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/base_llm.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/extensions/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/extensions/base_extension.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/extensions/extension_registry.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/extensions/token_usage_tracking_extension.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/llm_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/models.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/ollama_provider.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/providers.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/token_counter/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/token_counter/base_token_counter.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/token_counter/claude_token_counter.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/token_counter/deepseek_token_counter.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/token_counter/mistral_token_counter.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/token_counter/openai_token_counter.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/token_counter/token_counter_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/utils/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/utils/image_payload_formatter.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/utils/llm_config.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/utils/messages.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/utils/rate_limiter.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/utils/response_types.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/utils/token_pricing_config.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/utils/token_usage.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/utils/token_usage_tracker.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/person/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/person/examples/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/person/examples/sample_persons.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/person/examples/sample_roles.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/person/person.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/person/role.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/prompt/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/prompt/prompt_builder.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/prompt/prompt_template.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/prompt/prompt_version_manager.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/prompt/storage/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/prompt/storage/prompt_version_model.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/prompt/storage/prompt_version_repository.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/ask_user_input.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/base_tool.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/bash/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/bash/bash_executor.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/bash/factory/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/bash/factory/bash_executor_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/browser_session_aware_navigate_to.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/browser_session_aware_tool.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/browser_session_aware_web_element_trigger.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/browser_session_aware_webpage_reader.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/browser_session_aware_webpage_screenshot_taker.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/factory/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/factory/browser_session_aware_web_element_trigger_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/factory/browser_session_aware_webpage_reader_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/factory/browser_session_aware_webpage_screenshot_taker_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/shared_browser_session.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/shared_browser_session_manager.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/web_element_action.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/standalone/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/standalone/factory/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/standalone/factory/google_search_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/standalone/factory/webpage_reader_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/standalone/factory/webpage_screenshot_taker_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/standalone/google_search_ui.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/standalone/navigate_to.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/standalone/webpage_image_downloader.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/standalone/webpage_reader.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/standalone/webpage_screenshot_taker.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/factory/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/factory/ask_user_input_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/factory/image_downloader_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/factory/pdf_downloader_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/factory/tool_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/factory/webpage_image_downloader_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/file/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/file/factory/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/file/factory/file_reader_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/file/factory/file_writer_factory.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/file/file_reader.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/file/file_writer.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/handlers/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/handlers/shell_handler.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/image_downloader.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/operation/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/operation/file_operation.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/operation/file_rename_operation.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/operation/operation.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/operation/shell_operation.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/pdf_downloader.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/registry/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/registry/tool_definition.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/registry/tool_registry.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/timer.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/tool_meta.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/utils.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/web_page_pdf_generator.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/utils/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/utils/dynamic_enum.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/utils/file_utils.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/utils/html_cleaner.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/utils/singleton.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/workflow/__init__.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/workflow/simple_task.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/workflow/task.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/workflow/workflow.py +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus.egg-info/dependency_links.txt +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus.egg-info/top_level.txt +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/pyproject.toml +0 -0
- {autobyteus-1.0.5 → autobyteus-1.0.6}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: autobyteus
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.6
|
|
4
4
|
Summary: Multi-Agent framework
|
|
5
5
|
Home-page: https://github.com/AutoByteus/autobyteus
|
|
6
6
|
Author: Ryan Zheng
|
|
@@ -28,7 +28,7 @@ Requires-Dist: Jinja2
|
|
|
28
28
|
Requires-Dist: ollama==0.4.5
|
|
29
29
|
Requires-Dist: mistral_common
|
|
30
30
|
Requires-Dist: aiohttp
|
|
31
|
-
Requires-Dist: autobyteus-llm-client==1.0
|
|
31
|
+
Requires-Dist: autobyteus-llm-client==1.1.0
|
|
32
32
|
Requires-Dist: brui-core==1.0.8
|
|
33
33
|
Provides-Extra: dev
|
|
34
34
|
Requires-Dist: coverage; extra == "dev"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: autobyteus
|
|
3
|
-
Version: 1.0.
|
|
3
|
+
Version: 1.0.6
|
|
4
4
|
Summary: Multi-Agent framework
|
|
5
5
|
Home-page: https://github.com/AutoByteus/autobyteus
|
|
6
6
|
Author: Ryan Zheng
|
|
@@ -28,7 +28,7 @@ Requires-Dist: Jinja2
|
|
|
28
28
|
Requires-Dist: ollama==0.4.5
|
|
29
29
|
Requires-Dist: mistral_common
|
|
30
30
|
Requires-Dist: aiohttp
|
|
31
|
-
Requires-Dist: autobyteus-llm-client==1.0
|
|
31
|
+
Requires-Dist: autobyteus-llm-client==1.1.0
|
|
32
32
|
Requires-Dist: brui-core==1.0.8
|
|
33
33
|
Provides-Extra: dev
|
|
34
34
|
Requires-Dist: coverage; extra == "dev"
|
|
@@ -14,11 +14,9 @@ autobyteus/agent/agent.py
|
|
|
14
14
|
autobyteus/agent/async_agent.py
|
|
15
15
|
autobyteus/agent/async_group_aware_agent.py
|
|
16
16
|
autobyteus/agent/exceptions.py
|
|
17
|
-
autobyteus/agent/remote_agent.py
|
|
18
17
|
autobyteus/agent/status.py
|
|
19
18
|
autobyteus/agent/tool_invocation.py
|
|
20
19
|
autobyteus/agent/factory/__init__.py
|
|
21
|
-
autobyteus/agent/factory/agent_factory.py
|
|
22
20
|
autobyteus/agent/group/__init__.py
|
|
23
21
|
autobyteus/agent/group/async_group_aware_agent.py
|
|
24
22
|
autobyteus/agent/group/coordinator_agent.py
|
|
@@ -31,9 +29,6 @@ autobyteus/agent/orchestrator/__init__.py
|
|
|
31
29
|
autobyteus/agent/orchestrator/base_agent_orchestrator.py
|
|
32
30
|
autobyteus/agent/orchestrator/multi_replica_agent_orchestrator.py
|
|
33
31
|
autobyteus/agent/orchestrator/single_replica_agent_orchestrator.py
|
|
34
|
-
autobyteus/agent/registry/__init__.py
|
|
35
|
-
autobyteus/agent/registry/agent_definition.py
|
|
36
|
-
autobyteus/agent/registry/agent_registry.py
|
|
37
32
|
autobyteus/agent/response_parser/__init__.py
|
|
38
33
|
autobyteus/agent/response_parser/tool_usage_command_parser.py
|
|
39
34
|
autobyteus/conversation/__init__.py
|
|
@@ -100,7 +95,6 @@ autobyteus/tools/__init__.py
|
|
|
100
95
|
autobyteus/tools/ask_user_input.py
|
|
101
96
|
autobyteus/tools/base_tool.py
|
|
102
97
|
autobyteus/tools/image_downloader.py
|
|
103
|
-
autobyteus/tools/mcp_remote_tool.py
|
|
104
98
|
autobyteus/tools/pdf_downloader.py
|
|
105
99
|
autobyteus/tools/timer.py
|
|
106
100
|
autobyteus/tools/tool_meta.py
|
|
@@ -16,13 +16,13 @@ common_dependencies = [
|
|
|
16
16
|
"ollama==0.4.5",
|
|
17
17
|
"mistral_common",
|
|
18
18
|
"aiohttp",
|
|
19
|
-
"autobyteus-llm-client==1.0
|
|
19
|
+
"autobyteus-llm-client==1.1.0",
|
|
20
20
|
"brui-core==1.0.8",
|
|
21
21
|
]
|
|
22
22
|
|
|
23
23
|
setup(
|
|
24
24
|
name="autobyteus",
|
|
25
|
-
version="1.0.
|
|
25
|
+
version="1.0.6",
|
|
26
26
|
packages=find_packages(exclude=["tests", "tests.*"]),
|
|
27
27
|
include_package_data=True,
|
|
28
28
|
install_requires=[
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
# file: autobyteus/agent/factory/agent_factory.py
|
|
2
|
-
import logging
|
|
3
|
-
from autobyteus.agent.agent import Agent
|
|
4
|
-
from autobyteus.agent.group.group_aware_agent import GroupAwareAgent
|
|
5
|
-
from autobyteus.llm.llm_factory import LLMFactory
|
|
6
|
-
from autobyteus.tools.factory.tool_factory import ToolFactory
|
|
7
|
-
from autobyteus.prompt.prompt_builder import PromptBuilder
|
|
8
|
-
from autobyteus.llm.models import LLMModel
|
|
9
|
-
from typing import List, Union
|
|
10
|
-
|
|
11
|
-
logger = logging.getLogger(__name__)
|
|
12
|
-
|
|
13
|
-
class AgentFactory:
|
|
14
|
-
"""
|
|
15
|
-
Factory class for creating different types of agents.
|
|
16
|
-
|
|
17
|
-
This factory simplifies the creation of Agent instances by encapsulating
|
|
18
|
-
the necessary dependencies and configurations.
|
|
19
|
-
"""
|
|
20
|
-
def __init__(self,
|
|
21
|
-
role: str,
|
|
22
|
-
agent_type: str,
|
|
23
|
-
tool_factory: ToolFactory,
|
|
24
|
-
llm_factory: LLMFactory,
|
|
25
|
-
prompt_builder: PromptBuilder, # Agent requires prompt_builder or initial_user_message
|
|
26
|
-
llm_model: LLMModel,
|
|
27
|
-
tool_names: List[str]):
|
|
28
|
-
"""
|
|
29
|
-
Initializes the AgentFactory.
|
|
30
|
-
|
|
31
|
-
Args:
|
|
32
|
-
role: The role the created agents will fulfill.
|
|
33
|
-
agent_type: The type of agent to create ("standalone" or "group_aware").
|
|
34
|
-
tool_factory: A factory to create tool instances.
|
|
35
|
-
llm_factory: A factory to create LLM instances.
|
|
36
|
-
prompt_builder: The PromptBuilder instance to configure the agent's system prompt.
|
|
37
|
-
llm_model: The specific LLM model configuration to use.
|
|
38
|
-
tool_names: A list of tool names the agent should be equipped with.
|
|
39
|
-
"""
|
|
40
|
-
self.role = role
|
|
41
|
-
self.agent_type = agent_type
|
|
42
|
-
self.tool_factory = tool_factory
|
|
43
|
-
self.llm_factory = llm_factory
|
|
44
|
-
self.prompt_builder = prompt_builder
|
|
45
|
-
self.llm_model = llm_model
|
|
46
|
-
self.tool_names = tool_names
|
|
47
|
-
logger.info(f"AgentFactory initialized for role '{role}' and type '{agent_type}'")
|
|
48
|
-
|
|
49
|
-
def create_agent(self, agent_id: str) -> Union[Agent, GroupAwareAgent]:
|
|
50
|
-
"""
|
|
51
|
-
Creates an agent instance based on the factory's configuration.
|
|
52
|
-
|
|
53
|
-
Args:
|
|
54
|
-
agent_id: The unique identifier for the agent being created.
|
|
55
|
-
|
|
56
|
-
Returns:
|
|
57
|
-
An instance of Agent or GroupAwareAgent.
|
|
58
|
-
|
|
59
|
-
Raises:
|
|
60
|
-
ValueError: If the configured agent_type is unsupported.
|
|
61
|
-
"""
|
|
62
|
-
logger.info(f"Creating agent with id '{agent_id}' for role '{self.role}' and type '{self.agent_type}'")
|
|
63
|
-
try:
|
|
64
|
-
tools = [self.tool_factory.create_tool(name) for name in self.tool_names]
|
|
65
|
-
logger.debug(f"Tools created for agent '{agent_id}': {[tool.get_name() for tool in tools]}")
|
|
66
|
-
except Exception as e:
|
|
67
|
-
logger.error(f"Error creating tools for agent '{agent_id}': {e}")
|
|
68
|
-
raise ValueError(f"Failed to create tools for agent {agent_id}: {e}") from e
|
|
69
|
-
|
|
70
|
-
try:
|
|
71
|
-
llm = self.llm_factory.create_llm(self.llm_model)
|
|
72
|
-
logger.debug(f"LLM instance created for agent '{agent_id}' using model '{self.llm_model.model_name}'")
|
|
73
|
-
except Exception as e:
|
|
74
|
-
logger.error(f"Error creating LLM for agent '{agent_id}': {e}")
|
|
75
|
-
raise ValueError(f"Failed to create LLM for agent {agent_id}: {e}") from e
|
|
76
|
-
|
|
77
|
-
agent_args = {
|
|
78
|
-
"agent_id": agent_id,
|
|
79
|
-
"role": self.role,
|
|
80
|
-
"prompt_builder": self.prompt_builder,
|
|
81
|
-
"llm": llm,
|
|
82
|
-
"tools": tools
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
if self.agent_type == "standalone":
|
|
86
|
-
logger.debug(f"Instantiating Agent with args: {agent_args}")
|
|
87
|
-
return Agent(**agent_args)
|
|
88
|
-
elif self.agent_type == "group_aware":
|
|
89
|
-
logger.debug(f"Instantiating GroupAwareAgent with args: {agent_args}")
|
|
90
|
-
return GroupAwareAgent(**agent_args)
|
|
91
|
-
else:
|
|
92
|
-
logger.error(f"Unsupported agent type specified in factory: {self.agent_type}")
|
|
93
|
-
raise ValueError(f"Unsupported agent type: {self.agent_type}")
|
|
94
|
-
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
# file: autobyteus/autobyteus/agent/registry/__init__.py
|
|
2
|
-
from .agent_definition import AgentDefinition
|
|
3
|
-
from .agent_registry import AgentRegistry, default_agent_registry
|
|
4
|
-
from autobyteus.agent.factory.agent_factory import AgentFactory
|
|
5
|
-
|
|
6
|
-
__all__ = [
|
|
7
|
-
"AgentDefinition",
|
|
8
|
-
"AgentRegistry",
|
|
9
|
-
"default_agent_registry",
|
|
10
|
-
"AgentFactory"
|
|
11
|
-
]
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import logging
|
|
2
|
-
from typing import Dict, List, Any, Optional
|
|
3
|
-
|
|
4
|
-
logger = logging.getLogger(__name__)
|
|
5
|
-
|
|
6
|
-
class AgentDefinition:
|
|
7
|
-
"""
|
|
8
|
-
Represents the static definition of an agent, containing its role, description,
|
|
9
|
-
tools, optional system prompt, and optional initial user message.
|
|
10
|
-
"""
|
|
11
|
-
def __init__(self,
|
|
12
|
-
role: str,
|
|
13
|
-
description: str,
|
|
14
|
-
tools: List[str],
|
|
15
|
-
system_prompt: Optional[str] = None,
|
|
16
|
-
initial_user_message: Optional[str] = None):
|
|
17
|
-
"""
|
|
18
|
-
Initializes the AgentDefinition.
|
|
19
|
-
|
|
20
|
-
Args:
|
|
21
|
-
role: The unique role identifier of the agent (e.g., 'coordinator', 'worker').
|
|
22
|
-
description: A human-readable description of the agent's purpose.
|
|
23
|
-
tools: A list of tool names the agent can use.
|
|
24
|
-
system_prompt: An optional system prompt to configure the LLM's behavior.
|
|
25
|
-
initial_user_message: An optional initial user message to start the agent's conversation.
|
|
26
|
-
|
|
27
|
-
Raises:
|
|
28
|
-
ValueError: If role, description, or tools are invalid, or if system_prompt or
|
|
29
|
-
initial_user_message are not strings when provided.
|
|
30
|
-
"""
|
|
31
|
-
if not role or not isinstance(role, str):
|
|
32
|
-
raise ValueError("AgentDefinition requires a non-empty string 'role'.")
|
|
33
|
-
if not description or not isinstance(description, str):
|
|
34
|
-
raise ValueError(f"AgentDefinition '{role}' requires a non-empty string 'description'.")
|
|
35
|
-
if not isinstance(tools, list) or not all(isinstance(t, str) and t for t in tools):
|
|
36
|
-
raise ValueError(f"AgentDefinition '{role}' requires a non-empty list of tool name strings.")
|
|
37
|
-
if system_prompt is not None and not isinstance(system_prompt, str):
|
|
38
|
-
raise ValueError(f"AgentDefinition '{role}' system_prompt must be a string or None.")
|
|
39
|
-
if initial_user_message is not None and not isinstance(initial_user_message, str):
|
|
40
|
-
raise ValueError(f"AgentDefinition '{role}' initial_user_message must be a string or None.")
|
|
41
|
-
|
|
42
|
-
self._role = role
|
|
43
|
-
self._description = description
|
|
44
|
-
self._tools = tools
|
|
45
|
-
self._system_prompt = system_prompt
|
|
46
|
-
self._initial_user_message = initial_user_message
|
|
47
|
-
|
|
48
|
-
logger.debug(f"AgentDefinition created for role '{self.role}'.")
|
|
49
|
-
|
|
50
|
-
@property
|
|
51
|
-
def role(self) -> str:
|
|
52
|
-
"""The unique role identifier of the agent."""
|
|
53
|
-
return self._role
|
|
54
|
-
|
|
55
|
-
@property
|
|
56
|
-
def description(self) -> str:
|
|
57
|
-
"""The human-readable description of the agent's purpose."""
|
|
58
|
-
return self._description
|
|
59
|
-
|
|
60
|
-
@property
|
|
61
|
-
def tools(self) -> List[str]:
|
|
62
|
-
"""The list of tool names the agent can use."""
|
|
63
|
-
return self._tools
|
|
64
|
-
|
|
65
|
-
@property
|
|
66
|
-
def system_prompt(self) -> Optional[str]:
|
|
67
|
-
"""The optional system prompt for the agent."""
|
|
68
|
-
return self._system_prompt
|
|
69
|
-
|
|
70
|
-
@property
|
|
71
|
-
def initial_user_message(self) -> Optional[str]:
|
|
72
|
-
"""The optional initial user message for the agent."""
|
|
73
|
-
return self._initial_user_message
|
|
74
|
-
|
|
75
|
-
def __repr__(self) -> str:
|
|
76
|
-
"""Provides a developer-friendly string representation."""
|
|
77
|
-
desc_repr = self.description
|
|
78
|
-
if len(desc_repr) > 70:
|
|
79
|
-
desc_repr = desc_repr[:67] + "..."
|
|
80
|
-
# Remove newlines/tabs for cleaner logging
|
|
81
|
-
desc_repr = desc_repr.replace('\n', '\\n').replace('\t', '\\t')
|
|
82
|
-
return (f"AgentDefinition(role='{self.role}', description='{desc_repr}', "
|
|
83
|
-
f"tools={self.tools}, system_prompt='{self.system_prompt}', "
|
|
84
|
-
f"initial_user_message='{self.initial_user_message}')")
|
|
85
|
-
|
|
86
|
-
def to_dict(self) -> Dict[str, Any]:
|
|
87
|
-
"""Returns a dictionary representation of the agent definition."""
|
|
88
|
-
return {
|
|
89
|
-
"role": self.role,
|
|
90
|
-
"description": self.description,
|
|
91
|
-
"tools": self.tools,
|
|
92
|
-
"system_prompt": self.system_prompt,
|
|
93
|
-
"initial_user_message": self.initial_user_message
|
|
94
|
-
}
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
# file: autobyteus/autobyteus/agent/registry/agent_registry.py
|
|
2
|
-
import logging
|
|
3
|
-
from typing import Dict, List, Optional
|
|
4
|
-
|
|
5
|
-
from autobyteus.utils.singleton import SingletonMeta
|
|
6
|
-
from autobyteus.agent.factory.agent_factory import AgentFactory
|
|
7
|
-
from .agent_definition import AgentDefinition
|
|
8
|
-
|
|
9
|
-
logger = logging.getLogger(__name__)
|
|
10
|
-
|
|
11
|
-
class AgentRegistry(metaclass=SingletonMeta):
|
|
12
|
-
"""
|
|
13
|
-
Manages AgentDefinitions (role, description, tools, initial_user_message, agent_class),
|
|
14
|
-
populated exclusively via programmatic registration. Uses AgentFactory to create agent instances.
|
|
15
|
-
"""
|
|
16
|
-
_definitions: Dict[str, AgentDefinition] = {}
|
|
17
|
-
|
|
18
|
-
def __init__(self, agent_factory: AgentFactory):
|
|
19
|
-
"""
|
|
20
|
-
Initializes the AgentRegistry with an AgentFactory.
|
|
21
|
-
|
|
22
|
-
Args:
|
|
23
|
-
agent_factory: The AgentFactory instance used to create agent instances.
|
|
24
|
-
"""
|
|
25
|
-
self.agent_factory = agent_factory
|
|
26
|
-
logger.info("AgentRegistry initialized with AgentFactory.")
|
|
27
|
-
|
|
28
|
-
def register_agent(self, definition: AgentDefinition):
|
|
29
|
-
"""
|
|
30
|
-
Registers an agent definition (role, description, tools, initial_user_message, agent_class) programmatically.
|
|
31
|
-
|
|
32
|
-
Args:
|
|
33
|
-
definition: The AgentDefinition object to register.
|
|
34
|
-
|
|
35
|
-
Raises:
|
|
36
|
-
ValueError: If the definition is invalid. Overwrites existing definitions with the same role.
|
|
37
|
-
"""
|
|
38
|
-
if not isinstance(definition, AgentDefinition):
|
|
39
|
-
raise ValueError("Attempted to register an object that is not an AgentDefinition.")
|
|
40
|
-
|
|
41
|
-
role = definition.role
|
|
42
|
-
if role in self._definitions:
|
|
43
|
-
logger.warning(f"Overwriting existing agent definition for role: '{role}'")
|
|
44
|
-
AgentRegistry._definitions[role] = definition
|
|
45
|
-
logger.info(f"Successfully registered agent definition: '{role}'")
|
|
46
|
-
|
|
47
|
-
def get_agent_definition(self, role: str) -> Optional[AgentDefinition]:
|
|
48
|
-
"""
|
|
49
|
-
Retrieves the definition for a specific agent role.
|
|
50
|
-
|
|
51
|
-
Args:
|
|
52
|
-
role: The unique role of the agent definition to retrieve.
|
|
53
|
-
|
|
54
|
-
Returns:
|
|
55
|
-
The AgentDefinition object if found, otherwise None.
|
|
56
|
-
"""
|
|
57
|
-
definition = self._definitions.get(role)
|
|
58
|
-
if not definition:
|
|
59
|
-
logger.debug(f"Agent definition not found for role: '{role}'")
|
|
60
|
-
return definition
|
|
61
|
-
|
|
62
|
-
def create_agent(self, role: str, agent_id: str):
|
|
63
|
-
"""
|
|
64
|
-
Creates an agent instance using the AgentFactory based on the agent definition.
|
|
65
|
-
|
|
66
|
-
Args:
|
|
67
|
-
role: The role of the agent to create.
|
|
68
|
-
agent_id: The unique identifier for the agent instance.
|
|
69
|
-
|
|
70
|
-
Returns:
|
|
71
|
-
The agent instance if the definition exists, otherwise None.
|
|
72
|
-
|
|
73
|
-
Raises:
|
|
74
|
-
ValueError: If the agent definition is not found.
|
|
75
|
-
"""
|
|
76
|
-
definition = self.get_agent_definition(role)
|
|
77
|
-
if not definition:
|
|
78
|
-
logger.error(f"Cannot create agent: No definition found for role '{role}'")
|
|
79
|
-
raise ValueError(f"No agent definition found for role '{role}'")
|
|
80
|
-
|
|
81
|
-
logger.info(f"Creating agent instance for role '{role}' with id '{agent_id}' using AgentFactory")
|
|
82
|
-
return self.agent_factory.create_agent(agent_id)
|
|
83
|
-
|
|
84
|
-
def list_agents(self) -> List[AgentDefinition]:
|
|
85
|
-
"""
|
|
86
|
-
Returns a list of all registered agent definitions.
|
|
87
|
-
|
|
88
|
-
Returns:
|
|
89
|
-
A list of AgentDefinition objects.
|
|
90
|
-
"""
|
|
91
|
-
return list(self._definitions.values())
|
|
92
|
-
|
|
93
|
-
def list_agent_roles(self) -> List[str]:
|
|
94
|
-
"""
|
|
95
|
-
Returns a list of the roles of all registered agents.
|
|
96
|
-
|
|
97
|
-
Returns:
|
|
98
|
-
A list of agent role strings.
|
|
99
|
-
"""
|
|
100
|
-
return list(self._definitions.keys())
|
|
101
|
-
|
|
102
|
-
def get_all_definitions(self) -> Dict[str, AgentDefinition]:
|
|
103
|
-
"""Returns the internal dictionary of definitions."""
|
|
104
|
-
return dict(AgentRegistry._definitions)
|
|
105
|
-
|
|
106
|
-
default_agent_registry = AgentRegistry(agent_factory=AgentFactory(
|
|
107
|
-
role="default",
|
|
108
|
-
agent_type="group_aware",
|
|
109
|
-
tool_factory=ToolFactory(),
|
|
110
|
-
llm_factory=LLMFactory(),
|
|
111
|
-
prompt_builder=PromptBuilder(),
|
|
112
|
-
llm_model=LLMModel(),
|
|
113
|
-
tool_names=[]
|
|
114
|
-
))
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
# file: autobyteus/autobyteus/agent/remote_agent.py
|
|
2
|
-
from autobyteus.agent.agent import Agent
|
|
3
|
-
|
|
4
|
-
class RemoteAgent(Agent):
|
|
5
|
-
"""
|
|
6
|
-
A placeholder class for remote agents that will interact with external systems
|
|
7
|
-
(e.g., via MCP or HTTP protocols). To be implemented in the future.
|
|
8
|
-
"""
|
|
9
|
-
pass
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
# file: autobyteus/autobyteus/tools/mcp_remote_tool.py
|
|
2
|
-
import logging
|
|
3
|
-
from typing import Any, Dict
|
|
4
|
-
|
|
5
|
-
from autobyteus.tools.base_tool import BaseTool
|
|
6
|
-
import mcp
|
|
7
|
-
|
|
8
|
-
logger = logging.getLogger(__name__)
|
|
9
|
-
|
|
10
|
-
class McpRemoteTool(BaseTool):
|
|
11
|
-
"""
|
|
12
|
-
A tool that executes remote tool calls on an MCP (Model Context Protocol) server.
|
|
13
|
-
"""
|
|
14
|
-
def __init__(self, name: str, description: str, connection_params: Dict[str, Any]):
|
|
15
|
-
"""
|
|
16
|
-
Initializes the McpRemoteTool.
|
|
17
|
-
|
|
18
|
-
Args:
|
|
19
|
-
name: The unique name/identifier of the tool (e.g., 'McpRemoteTool').
|
|
20
|
-
description: A human-readable description of the tool's purpose.
|
|
21
|
-
connection_params: A dictionary containing MCP server connection details
|
|
22
|
-
(e.g., {'host': 'localhost', 'port': 5000}).
|
|
23
|
-
|
|
24
|
-
Raises:
|
|
25
|
-
ValueError: If name, description, or connection_params are invalid.
|
|
26
|
-
"""
|
|
27
|
-
if not name or not isinstance(name, str):
|
|
28
|
-
raise ValueError("McpRemoteTool requires a non-empty string 'name'.")
|
|
29
|
-
if not description or not isinstance(description, str):
|
|
30
|
-
raise ValueError(f"McpRemoteTool '{name}' requires a non-empty string 'description'.")
|
|
31
|
-
if not isinstance(connection_params, dict) or not connection_params:
|
|
32
|
-
raise ValueError(f"McpRemoteTool '{name}' requires a non-empty dictionary for 'connection_params'.")
|
|
33
|
-
|
|
34
|
-
super().__init__(name, description)
|
|
35
|
-
self.connection_params = connection_params
|
|
36
|
-
logger.debug(f"McpRemoteTool initialized with name '{self.name}' and connection_params: {self.connection_params}")
|
|
37
|
-
|
|
38
|
-
def execute(self, args: Dict[str, Any]) -> Any:
|
|
39
|
-
"""
|
|
40
|
-
Executes the remote tool call on the MCP server.
|
|
41
|
-
|
|
42
|
-
Args:
|
|
43
|
-
args: A dictionary containing the tool name and parameters to pass to the MCP server
|
|
44
|
-
(e.g., {'tool_name': 'do_mcp_analysis', 'params': {...}}).
|
|
45
|
-
|
|
46
|
-
Returns:
|
|
47
|
-
The result of the tool execution, typically a dictionary or string.
|
|
48
|
-
|
|
49
|
-
Raises:
|
|
50
|
-
ValueError: If args is invalid or missing required fields.
|
|
51
|
-
RuntimeError: If the MCP server connection or tool execution fails.
|
|
52
|
-
"""
|
|
53
|
-
if not isinstance(args, dict) or 'tool_name' not in args:
|
|
54
|
-
logger.error(f"Invalid arguments for McpRemoteTool '{self.name}': 'tool_name' is required.")
|
|
55
|
-
raise ValueError("McpRemoteTool requires a dictionary with a 'tool_name' key.")
|
|
56
|
-
|
|
57
|
-
tool_name = args['tool_name']
|
|
58
|
-
params = args.get('params', {})
|
|
59
|
-
logger.info(f"Executing McpRemoteTool '{self.name}' with tool_name '{tool_name}' and params: {params}")
|
|
60
|
-
|
|
61
|
-
try:
|
|
62
|
-
# Step 17: Establish connection to MCP server
|
|
63
|
-
client = mcp.stdio_client(self.connection_params)
|
|
64
|
-
logger.debug(f"Connected to MCP server with connection_params: {self.connection_params}")
|
|
65
|
-
|
|
66
|
-
# Step 19: Create client session
|
|
67
|
-
session = client.ClientSession()
|
|
68
|
-
logger.debug(f"Created MCP client session for tool '{tool_name}'")
|
|
69
|
-
|
|
70
|
-
# Step 20: Initialize session
|
|
71
|
-
session.initialize()
|
|
72
|
-
logger.debug(f"Initialized MCP session for tool '{tool_name}'")
|
|
73
|
-
|
|
74
|
-
# Step 21: Call the remote tool
|
|
75
|
-
result = session.call_tool(tool_name, params)
|
|
76
|
-
logger.info(f"Successfully executed MCP tool '{tool_name}' with result: {result}")
|
|
77
|
-
|
|
78
|
-
return result
|
|
79
|
-
|
|
80
|
-
except Exception as e:
|
|
81
|
-
logger.error(f"Failed to execute McpRemoteTool '{self.name}' for tool '{tool_name}': {str(e)}")
|
|
82
|
-
raise RuntimeError(f"McpRemoteTool execution failed: {str(e)}")
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/orchestrator/base_agent_orchestrator.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/agent/response_parser/tool_usage_command_parser.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/extensions/token_usage_tracking_extension.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/llm/token_counter/deepseek_token_counter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/prompt/storage/prompt_version_repository.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/bash/factory/bash_executor_factory.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/factory/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/session_aware/web_element_action.py
RENAMED
|
File without changes
|
|
File without changes
|
{autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/standalone/factory/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/browser/standalone/google_search_ui.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{autobyteus-1.0.5 → autobyteus-1.0.6}/autobyteus/tools/factory/webpage_image_downloader_factory.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|