Skip to main content

Crate dasein_agentic_core

Crate dasein_agentic_core 

Source
Expand description

§agentic-core

Core components for the Agentic Framework.

This crate provides:

  • Agent - The autonomous entity that processes tasks
  • Supervisor - Orchestrates executors for distributed systems
  • Executor - Worker that processes tasks with LLM
  • Validator - Rule-based output validation (fast, heuristic)
  • SandboxValidator - Ground truth validation via real execution (for code)
  • Protocol types for inter-agent communication

§Two Validation Strategies

StrategyUse CaseHow it Works
ValidatorText, JSON, quick checksRule-based heuristics
SandboxValidatorCode generationReal 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.