Orchestr8 is a versatile collection of independent components crafted to simplify task automation, particularly for AI workflows.
It offers a suite of simple, self-documenting components, providing functionalities like code/command execution across host and isolated environments, version control integration, authentication management and schema/definition generation & input validation from types. Each component is independent and incrementally adoptable, so you can use them on their own or in combination with any other library.
These components can also be utilised in AI agent workflows for file system tracking, seamless third-party service authentication, function-calling automation, and code/command/function-call execution in host or isolated environments.
Orchestr8 is open source, free to use, and made with 🧡 by synacktra.
Documentation is available at synacktra.is-a.dev/orchestr8.
pip install -U orchestr8
For more on optional dependencies, refer the installation guide.
Collection of cookbooks showcasing the power of orchestr8 library in Language Model workflows.
- Running LLM-generated code: Executing LLM-generated code in a controlled, isolated virtual environments.
- Function-Calling automation: Automated approach to working with function-calling workflows.
- Version Control & Function-Calling: Safe and controlled file system interactions through function-calling.
- Authentication & Function-Calling: OAuth Flow and connecting with APIs through function-calling.
- Execution Runtime: Flexibly run projects and scripts across host and isolated environments
- Directory Tracker: Automate version control and file system change monitoring
- OAuth Flow: Simplify third-party service authentication processes
- Adapter: Generate code definition, schema in both standard and function-calling formats and validate inputs from different types
- Sandbox Client: Pull/build images, run containers and copy files from host to container.
- Shell: Execute commands across host machines and containers
Most of the components are inspired by the GoEX arXiv paper, where the authors discuss "post-facto validation"—verifying the correctness of a proposed action after seeing the output—as significantly more straightforward compared to the "pre-facto validation" setting.
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.