Ai.Orchestrator is a modular, extensible orchestration platform designed to empower AI agents with robust, plugin-driven access to email, webhooks, notifications, scheduling, memory, and much more. It provides a central controller for automating and coordinating AI-related tasks across multiple domains and services.
- What's New
- Roadmap
- Overview
- Features
- Plugins
- Getting Started
- Configuration
- Usage
- Contributing
- License
| Feature | Description | Planned Release |
|---|---|---|
| Logging | ||
| Improved Message Logging | Log each message in order for easy troubleshooting | September 2025 |
| Per-Agent Conversation History | Save conversation history with each agent for later retrieval | Q4 2025 |
| Agent Tool Calling Logging | Log each tool call with the prompt that started it and each response | TBD |
| Correlation Ids | Add Correlation Ids to logs to help with issue tracking | TBD |
| A2A | ||
| Per-Agent toolset | Each "mini-agent" can have a specific set of user-configured tools | September 2025 |
| Discovery | How to discover agents | TBD |
| Shared Workspace | Share context between agents | TBD |
| Task delegation | Delegate tasks to other agents then recieve asynchronous response | TBD |
| Agent Scheduling & Automation | ||
| User configurable Web-Hooks | Allow user to configure webhooks | TBD 2025 |
| Background Task Queuing & Prioritization | Create a queue of pending tasks which the assigned agent can choose prioritize and complete | TBD 2026 |
| Manage scheduled tasks | Allow user to view/edit/create/delete | TBD |
| Error Handling & Retry | Report errors and show status. Allow retrying tasks | TBD |
| Setup | ||
| Database configs | Store configs in database | July 2025 |
| Multi-user | Using database, allow multiple users with individual configurations | August 2025 |
| First time set-up | Walk through setting up initial settings. creating agents, and choosing the tools available to the agent | TBD 2025 |
| API Key management | Manage API Keys for plugins | TBD 2025 |
| Plugin Marketplace | A marketplace where users can select the plugins they want and add/remove them | TBD 2026 |
| Security | ||
| Sandboxed tool execution | All agents run their own tools in their own memory space | TBD 2026 |
| Permissions | User/Agent permissions | TBD 2026 |
| Tool Limits | Limit tool usage per agent | TBD 2026 |
| OAuth2 | OAuth2 integration | TBD |
| Memory Optimization | ||
| ChromaDB v2 API Migration | Migrate from ChromaDB v1 API to v2 API. Currently pinned to ChromaDB 0.6.3 for v1 API compatibility with ChromaDB.Client NuGet package. Need to evaluate and migrate to a v2-compatible .NET client (e.g., VENative.ChromaDB.Client) | Q3 2025 |
| Automatic Memory Summarization | Summarize conversation history automatically when the conversation starts to get too long | TBD 2025/2026 |
| RAG Relevance Scoring | Score Vector DB data for better RAG retrieval | TBD 2026 |
| Memory Cleanup & Archving | Clean up Vector DB of stale/ out of date data | TBD 2026 |
| Agent Performance Dashboard | ||
| Agent Feedback | Provide feedback when a request doesn't act as intended. Update system prompt | Q4 2025 |
| Agent Feedback enchancements | Provide per-project instructions | TBD 2026 |
| Real-time Agent Status | Show current agent status, what it's working on, current log stream | TBD 2026 |
| Resource Usage Monitoring | Show tokens, API calls, execution time, per Agent | TBD 2026 |
| Cost Tracking | Track API costs per Agent | TBD 2026 |
| Success/Failure Tracking | Track how often the Agent is successful | TBD 2026 |
| Mobile | ||
| Android Notifications | Send notifications to android devices using Firebase Android notification | July 2025 |
| Voice | Speak with agent using your voice | TBD |
| Other | ||
| Agent Testing | Framwork for testing agents | TBD 2026 |
Recent substantial changes and newly added functionality include:
- Notification Service: Added a simple text notification service for outbound alerts and updates. (#25)
- Confirmation Service: Enhanced support for user confirmation flows—now supports sending confirmation prompts without requiring options and improved handling in Email workflows. (#24, #23, #22)
- Plugin Service Performance: Improved plugin service performance by keeping plugin instances alive and resolving multiple issues with plugin lifecycle management. (#22)
- Logging Plugins: Custom logging plugins are now supported—extend the
ILoggingPlugininterface and configure via dedicated JSON files. Multiple logging plugins are supported in parallel. (#21, #19) - Mini-Agent System: Introduced "mini agents" with configurable toolsets per agent, advancing towards agent-to-agent (A2A) delegation and shared context. (#20)
- Task Scheduler: Core support for scheduling complex, multi-step AI tasks triggered by time or events. (#17)
- Memory Improvements: Enhanced long-term and short-term memory modules for richer conversational and contextual awareness. (#18)
Ai.Orchestrator enables you to:
- Centralize and automate AI task execution using a flexible plugin architecture.
- Integrate email, webhooks, notification, scheduling, logging, memory, and more—out of the box or via custom plugins.
- Provide per-agent tool configuration, conversation memory, and event-driven task automation.
- Modular & Extensible: Easily add/remove plugins (email, webhook, notifications, calendar, logging, etc.) without disrupting the system.
- Agent-Oriented: Assign mini-agents with configurable toolsets and track their conversations and activities.
- Pluggable Components: Swap out storage, scheduling, or inference modules.
- Rich Memory: Short- and long-term conversational memory, with RAG/KB support.
- Task Scheduling: Schedule complex, multi-step workflows for future or recurring execution.
- Notification & Confirmation: Built-in services for user notifications and confirmations.
- Logging & Monitoring: Multi-plugin logging support, auditing, and monitoring of agent/tool activity.
- Webhooks & Integrations: Expose REST endpoints to trigger orchestrator workflows from external services.
- Secure & Configurable: Per-plugin configuration with support for API keys, OAuth, and more.
Ai.Orchestrator comes with a suite of official plugins, with support for third-party/community plugins as well:
-
Email Plugin
Read, send, and delete emails using SMTP/IMAP and configurable providers. Includes validation, autofac support, and OpenAI tool integration. -
Webhook Plugin
Register HTTP endpoints that trigger orchestrator workflows from external events/services. -
Notification Plugin
Manage confirmation flows for user input or action approval or send text notifications to users or external systems. -
Logging Plugins
Support for multiple logging providers, including file and custom logging plugins. -
Task Scheduler
Schedule and manage future AI tasks and workflows. -
Memory Plugins
Support both short-term (chat context) and long-term (user data, conversations) memory. -
RAG, Google Calendar, Python Runner, Memos, Web Search, Home Assistant Assist
Expand system capabilities to knowledge base retrieval, calendar, scripting, note-taking, web search, and smart home control.
For more details on each plugin, see the respective plugin README or the Plugins Directory.
- .NET 8+
- Redis (for memory, e.g. via Docker Desktop)
- ChromaDB (for long-term memory, e.g. via Docker Desktop)
- Modern IDE (VS, Rider, VS Code)
- Basic C#/.NET Core knowledge
git clone https://github.com/smartguy05/ai.orchestrator.git
cd ai.orchestrator/Ai.Orchestrator
dotnet restore
dotnet builddotnet run
cd to dependencies folder
docker-compose up -d- Main orchestrator settings: Environment variables or
launchSettings.json. - Plugin configs: Each plugin is configured via its own JSON file in the config directory (see plugin README for schema).
- Key environment variables:
PluginDirectory— where plugins are loaded fromConfigDirectory— where plugin configs are storedActivePlugins— comma-separated list of enabled plugins
See example config files in the repo for reference.
- Use the Text Controller endpoint to chat or issue requests to the orchestrator with multi-shot conversation support.
- Use the Webhook Controller to receive and process HTTP event triggers.
- Use the Scheduled Task Controller to view, edit, and manage scheduled tasks.
- Test plugins directly via the Data Controller.
- Plugin commands and tool calls can be chained for complex workflows.
- Fork the repository.
- Create a branch for your feature/bugfix.
- Commit your changes.
- Open a Pull Request with a clear description.
All contributions, bug reports, and feature requests are welcome!
This repository is licensed under the MIT License.
See the LICENSE file for details.