Releases: mainframecomputer/orchestra
v1.0.0
Release v1.0.0: Major Architecture Refactor & Dependency Cleanup
Overview
Major architectural improvements with LLM provider unification, dependency cleanup, and security enhancements.
Key Changes
LLM Provider Unification
- Replaced 2000+ lines of custom provider code with unified LiteLLM interface
- Removed direct dependencies: anthropic, openai, cohere, groq, ollama, huggingface-hub, google-generativeai, halo
- Added litellm as single dependency for all LLM providers
- Enhanced fallback support with model lists for automatic failover
Task Execution Architecture
- Split Task.create and Task.create_async for better sync/async separation
- Added max_iterations parameter for configurable tool loop limits (default: 50)
- Improved task execution stability and predictability
- Enhanced control over task lifecycle and resource management
Dependency Management
- Deprecated yahoo_finance_tools due to instability (removed yfinance, yahoofinance dependencies)
- Streamlined core dependencies and improved optional tool separation
- Added Python 3.13 support
- Fixed f-string backslash issues for Python 3.11 compatibility
Security Fixes
- requests >= 2.32.0 (credential leak)
- mcp >= 1.7.0 (SQL injection, validation errors)
- fastmcp >= 2.3.0 (server vulnerabilities)
- pillow >= 11.0.0 (buffer overflow)
- protobuf >= 5.29.0 (DoS vulnerability)
- urllib3 >= 2.2.3 (redirect control)
- aiohttp >= 3.11.20 (parsing vulnerability)
Architecture Improvements
- Enhanced MCP adapter integration
- Improved task execution and message handling
- Unified error handling across all providers
- Better resource cleanup and thread management
Breaking Changes
- Yahoo Finance tools no longer available
- Task.create now properly separated from Task.create_async
- Some internal LLM provider methods changed (public API stable)
- Updated minimum dependency versions
Migration
Users of Yahoo Finance tools should migrate to FRED tools or alternative financial APIs. Update any code using Task.create to specify sync vs async execution patterns explicitly. Code using Task.create in asynchronous environments need to explicitly define it as create_async.
v0.0.34
v0.0.34
Minor updates:
- Tool use loop now accepts tool calls made without
paramsfield altogether, assuming it to be blank params to improve reliability in accepting tool calls without arguments - Adds a close method for connections to the MCP Orchestra adapter
v0.0.33
v0.0.33
Update to MCP Adapter:
- Adds HTTP/SSE support for MCP Adapter
- Now supports connections to remote hosted MCP servers
v0.0.32
Release v0.0.32
Improvements:
- Context propagation: Tasks delegated through the conduct_tool now automatically inherit the context field from their parent task
- Improved multi-agent workflows: Agents in a delegation chain now share the same background context
v0.0.31
v0.0.31
Minor update to context field content placement:
- Moved context placement from an independent user message to appending to system prompt
- Context content maintained through tool loop and final response phases
- Avoids any duplications of context field content
v0.0.30
v0.0.30
Minor update:
- pre-execute added to tool loop to send before tool calls
- minor adjustments to initial response prompt
v0.0.29
v0.0.29
Fixed
- Improved JSON output handling in Anthropic models for more reliable results
- Updated
conduct_toolto return a dictionary of results instead of raw string output - Added support for parsing JSON responses that contain preceding comments
- Centralized JSON parsing logic into utils module
Changed
- Centralized logging across orchestration and conduct tool (removed print statements)
- Standardized JSON parsing across LLM and task modules
- Applied Ruff formatting to improve code consistency
Technical
- Centralized JSON parsing logic into single
parse_json_response.pyutility - Discouraged comments in Anthropic provider responses for better JSON parsing
- Refactored task module to use centralized JSON parser
v0.0.28
v0.0.28
Minor fix: regenerated poetry.lock
v0.0.27
Release v0.0.27
Minor patches and refactoring
Improved image support
Centralized logic for OpenAI compatible providers
Centralized logging configuration moved to utils directory
v0.0.26
v0.0.26
This update introduces the MCPOrchestra adapter:
- Orchestra agents can now use tools from any MCP-compatible server
- Connect to multiple MCP servers simultaneously
- Automatically discover and use tools from connected MCP servers
Allows you to integrate your workflows and agent teams with the developing ecosystem of MCP servers!