Skip to main content

argentor_orchestrator/
lib.rs

1//! Multi-agent orchestration engine with task queue, monitoring, and scheduling.
2//!
3//! Implements the Orchestrator-Workers pattern for decomposing complex tasks
4//! into sub-tasks, dispatching them to specialized worker agents, and
5//! aggregating results with progress tracking and compliance hooks.
6//!
7//! # Main types
8//!
9//! - [`Orchestrator`] — Top-level engine that decomposes and executes multi-agent pipelines.
10//! - [`TaskQueue`] — Priority queue for distributing tasks to worker agents.
11//! - [`AgentMonitor`] — Tracks agent health, metrics, and lifecycle.
12//! - [`Scheduler`] — Cron-based job scheduler for recurring tasks.
13//! - [`AgentProfile`] — Configuration profile defining an agent's role and capabilities.
14
15/// Agent version management with deploy, rollback, and A/B traffic split.
16pub mod agent_versioning;
17/// Token and resource budgeting per agent.
18pub mod budget;
19/// Agent deployment lifecycle management.
20pub mod deployment;
21/// Pre-configured development team orchestration with workflows and quality gates.
22pub mod dev_team;
23/// Orchestration engine and pipeline execution.
24pub mod engine;
25/// Agent handoff protocol for sequential control transfer between specialized agents.
26pub mod handoff;
27/// Agent health monitoring with state machine transitions.
28pub mod health;
29/// Inter-agent message bus for A2A communication.
30pub mod message_bus;
31/// Agent health and metrics monitoring.
32pub mod monitor;
33/// Advanced multi-agent collaboration patterns (Pipeline, Debate, Ensemble, etc.).
34pub mod patterns;
35/// Default agent profiles and role definitions.
36pub mod profiles;
37/// Agent registry with catalog management.
38pub mod registry;
39/// Dynamic re-planning and failure recovery strategies.
40pub mod replanner;
41/// Cron-based job scheduler.
42pub mod scheduler;
43/// Sub-agent spawning utilities.
44pub mod spawner;
45/// Priority task queue.
46pub mod task_queue;
47/// Shared orchestration types (Task, AgentProfile, Artifact, etc.).
48pub mod types;
49/// Configurable workflow engine for automating business pipelines.
50pub mod workflow;
51/// TOML-based Workflow DSL for declarative pipeline definitions.
52pub mod workflow_dsl;
53
54pub use budget::{
55    default_budget, AgentUsage, AgentUsageEntry, BudgetStatus, BudgetSummary, BudgetTracker,
56    TokenBudget,
57};
58pub use deployment::{
59    DeploymentConfig, DeploymentManager, DeploymentStatus, IssueSeverity, ResourceLimits,
60};
61pub use dev_team::{
62    DevRole, DevTeam, DevTeamConfig, DevWorkflow, QualityGate, WorkflowArtifact, WorkflowResult,
63    WorkflowStatus, WorkflowStep,
64};
65pub use engine::{BackendFactory, Orchestrator, OrchestratorResult};
66pub use health::{HealthCheckConfig, HealthChecker, HealthEvent};
67pub use message_bus::{AgentMessage, BroadcastTarget, MessageBus, MessageType};
68pub use monitor::AgentMonitor;
69pub use patterns::{
70    describe_pattern, estimate_cost, validate_pattern, AggregationStrategy, CollaborationPattern,
71    PatternConfig, PatternConfigBuilder, PatternResult, PipelineStage, ReviewPolicy,
72};
73pub use profiles::default_profiles;
74pub use registry::{default_agent_definitions, AgentRegistry};
75pub use replanner::{
76    FailureContext, RecoveryStrategy, RecoveryTask, ReplanEntry, ReplanHistory, Replanner,
77};
78pub use scheduler::{ScheduledJob, Scheduler};
79pub use spawner::{SpawnRequest, SubAgentSpawner};
80pub use task_queue::TaskQueue;
81pub use types::{
82    AgentMetrics, AgentProfile, AgentRole, AgentState, Artifact, ArtifactKind, Task, TaskStatus,
83    WorkerStatus,
84};
85pub use workflow::{
86    lead_qualification_workflow, support_ticket_workflow, FailureAction, RunStatus, StepCondition,
87    StepResult, StepStatus, StepType, WorkflowDefinition, WorkflowEngine, WorkflowRun,
88    WorkflowStepDef, WorkflowTrigger,
89};
90pub use workflow_dsl::{
91    StepToml, TemplateContext, TriggerConfig, ValidationError, ValidationSeverity, WorkflowDsl,
92    WorkflowMeta, WorkflowToml,
93};