v1.0.0 — General Availability ✅
The framework is ready for production use.
Status: Complete
| Feature | Status | Module |
|---|---|---|
| Versioned REST API (27 endpoints) | ✅ | core/api.py |
| OpenAPI 3.0 spec export | ✅ | core/api.py |
| pip installable (v1.0.0) | ✅ | pyproject.toml |
| Web-based config (JSON, validation) | ✅ | core/config_manager.py |
| Config rollback history | ✅ | core/config_manager.py |
| Multi-project support | ✅ | core/project.py |
| User management with RBAC | ✅ | core/users.py |
| Provider presets (4 built-in) | ✅ | core/provider_presets.py |
| Migration wizard (3 formats) | ✅ | core/migration.py |
| 87 tests | ✅ | tests/test_v1.py |
Key APIs
ConfigManager
Load, validate, and rollback orchestrator configuration:
from agent_orchestrator.core.config_manager import (
ConfigManager, AgentConfigEntry, ProviderConfigEntry,
)
mgr = ConfigManager()
mgr.add_provider(ProviderConfigEntry("ollama", "ollama", "qwen2.5-coder:7b"))
mgr.add_agent(AgentConfigEntry("backend", "Backend developer", "ollama"))
errors = mgr.validate() # [] = valid
json_str = mgr.export_json()
mgr.rollback() # undo last change
UserManager
Multi-user RBAC with API key authentication:
from agent_orchestrator.core.users import UserManager, UserRole
um = UserManager()
user = um.create_user("u1", "alice", "password", role=UserRole.ADMIN)
# user.api_key = auto-generated 64-char hex token
authed = um.authenticate("alice", "password") # returns User or None
um.has_permission("u1", "config.write") # True for admin
um.check_permission("u1", "users.write") # raises PermissionError if denied
ProviderPresetManager
One-click provider setup:
from agent_orchestrator.core.provider_presets import ProviderPresetManager
pm = ProviderPresetManager()
pm.activate("hybrid") # local-first with cloud fallback
configs = pm.get_provider_configs()
# [{"key": "ollama", ...}, {"key": "openrouter", ...}]
Built-in presets:
- local_only — Ollama only, offline mode
- cloud_only — OpenRouter, cost-optimized
- hybrid — Local-first with cloud fallback
- high_quality — Anthropic + OpenAI, capability-based routing
MigrationManager
Import from other frameworks:
from agent_orchestrator.core.migration import MigrationManager
mm = MigrationManager()
result = mm.import_config({
"agents": [{"name": "Researcher", "goal": "Find info"}],
"tasks": [{"description": "Research topic"}],
})
# result.source_format == "crewai"
# result.agents_imported == 1
APIRegistry
Versioned REST API with OpenAPI export:
from agent_orchestrator.core.api import APIRegistry
reg = APIRegistry()
spec = reg.export_openapi_spec()
# Full OpenAPI 3.0 spec with 27 endpoints across 9 tag groups
Test Coverage
365 total tests across all versions:
- v0.1.0–v0.4.0: 158 tests (core, graph, dashboard, cooperation)
- v0.5.0: 55 tests (routing, usage, health, benchmarks)
- v0.6.0: 42 tests (rate limiter, audit, queue, metrics, alerts)
- v0.7.0: 40 tests (graph patterns, templates)
- v0.8.0: 37 tests (plugins, webhooks, MCP, offline)
- v1.0.0: 87 tests (config, projects, users, presets, migration, API)