Expand description
§agentic-core
Core components for the Agentic Framework.
This crate provides:
Agent- The autonomous entity that processes tasksSupervisor- Orchestrates executors for distributed systemsExecutor- Worker that processes tasks with LLMValidator- Rule-based output validation (fast, heuristic)SandboxValidator- Ground truth validation via real execution (for code)- Protocol types for inter-agent communication
§Two Validation Strategies
| Strategy | Use Case | How it Works |
|---|---|---|
Validator | Text, JSON, quick checks | Rule-based heuristics |
SandboxValidator | Code generation | Real cargo test execution |
§Quick Start (Distributed Mode)
use dasein_agentic_core::distributed::{Supervisor, Executor, Validator};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
// Create a supervisor with 4 executors
let sup = Supervisor::new("sup-code")
.domain("code")
.executors(4)
.llm_gemini("gemini-2.0-flash")
.allow_lending(true)
.build_async()
.await;
println!("Pool size: {}", sup.pool_size().await);
println!("Idle: {}", sup.idle_count().await);
Ok(())
}§Even Simpler
use dasein_agentic_core::distributed::Supervisor;
// One-liner
let config = Supervisor::quick("my-sup", 4).build();Re-exports§
pub use agent::Agent;pub use error::AgentError;pub use types::AgentConfig;pub use types::AgentMetrics;pub use types::AgentState;pub use types::AgentStatus;pub use types::Artifact;pub use types::ArtifactType;pub use types::ExecutionMode;pub use types::ResultMetrics;pub use types::ResultPayload;pub use types::ResultStatus;pub use types::TaskPayload;pub use distributed::AllocationGrant;pub use distributed::AllocationManager;pub use distributed::AllocationRequest;pub use distributed::Capability;pub use distributed::Executor;pub use distributed::ExecutorBuilder;pub use distributed::ExecutorPool;pub use distributed::ExecutorState;pub use distributed::LLMConfig;pub use distributed::Language;pub use distributed::PoolConfig;pub use distributed::SandboxConfig;pub use distributed::SandboxValidationResult;pub use distributed::SandboxValidator;pub use distributed::Supervisor;pub use distributed::SupervisorBuilder;pub use distributed::SupervisorHandle;pub use distributed::ValidationAction;pub use distributed::ValidationResult;pub use distributed::ValidationRule;pub use distributed::Validator;pub use distributed::ValidatorBuilder;
Modules§
- agent
- Agent implementation.
- distributed
- Distributed agent architecture - Supervisor/Executor/Validator pattern.
- error
- Agent error types.
- patterns
- Orchestration Patterns - High-level workflow construction patterns.
- prelude
- Prelude - Import everything you need with one line.
- protocol
- Protocol definitions for inter-agent communication.
- types
- Core type definitions for the Agentic Framework.
Macros§
- create_
supervisor - Create multiple supervisors quickly.