Skip to main content

jamjet_worker/
lib.rs

1//! JamJet Worker
2//!
3//! Workers are separate processes (or tasks) that:
4//! - Pull work items from the queue
5//! - Acquire leases (preventing duplicate execution)
6//! - Execute node logic (model calls, tool calls, Python functions, MCP, A2A)
7//! - Emit heartbeats to renew leases
8//! - Report results back via the state backend
9
10pub mod executor;
11pub mod executors;
12pub mod heartbeat;
13pub mod pool;
14pub mod worker;
15
16pub use executor::{ExecutionResult, NodeExecutor};
17pub use executors::{
18    A2aTaskExecutor, AgentDiscoveryExecutor, EvalExecutor, McpToolExecutor, ModelNodeExecutor,
19};
20pub use pool::{default_pool, WorkerGroupConfig, WorkerPool};
21pub use worker::Worker;