Skip to main content

apollo/
lib.rs

1//! apollo — Lightweight agent runtime
2//! Successor to OpenClaw. Best-of-breed from ZeroClaw, NanoClaw, HiClaw.
3//!
4//! Core traits (all swappable):
5//! - `Provider` — LLM backend (Anthropic, OpenAI, Gemini, Ollama, OpenRouter, Groq)
6//! - `Channel` — Communication (CLI, Telegram, Discord, Matrix, WebSocket)
7//! - `Tool` — Agent capability (Shell, File I/O, Vibemania, custom)
8//! - `MemoryBackend` — Persistent SurrealDB state, vector embeddings, file-based tooling
9//!
10//! Embeddings — Vector search for semantic memory
11//! Swarms — Manager/Worker pattern for parallel execution
12//! Plugins — JSON-RPC 2.0 extensibility
13//! Cost — Token counting and billing (Phase 4)
14//! Scheduler — Cron-based task automation (Phase 4)
15
16pub mod agent;
17pub mod agent_http;
18pub mod autonomous;
19pub mod bootstrap;
20pub mod channels;
21pub mod claw_adapter;
22pub mod config;
23pub mod context;
24pub mod cost;
25pub mod cron_scheduler;
26pub mod diagnostics;
27pub mod embeddings;
28pub mod escape;
29pub mod fs_secure;
30pub mod heartbeat;
31pub mod http;
32pub mod mcp;
33pub mod mcp_server;
34pub mod memory;
35pub mod plugin;
36pub mod plugin_hosts;
37pub mod plugins;
38pub mod policy;
39pub mod process_cmd;
40pub mod prompt;
41pub mod providers;
42pub mod redaction;
43pub mod scheduler;
44pub mod self_update;
45pub mod skills;
46pub mod streaming_parser;
47#[cfg(feature = "swarm")]
48pub mod swarm;
49pub mod telegram_runtime;
50pub mod text;
51pub mod tools;
52pub mod trajectory;
53pub mod workspace_init;
54
55pub use agent::{AgentMode, AgentRunner};
56pub use channels::Channel;
57pub use cost::CostTracker;
58pub use scheduler::Scheduler;
59#[cfg(feature = "swarm")]
60pub use swarm::SwarmCoordinator;
61#[cfg(feature = "swarm")]
62pub use swarm::{ConcurrencyScheduler, DelegationManager, HandoffManager, TeamManager};