Skip to main content

Crate deepstrike_core

Crate deepstrike_core 

Source
Expand description

§DeepStrike Core

Cross-language agent runtime kernel — pure computation, zero I/O.

This crate provides the core state machines, data structures, and algorithms for the DeepStrike agent framework. It is designed to be embedded via FFI bindings (PyO3, napi-rs, wasm-bindgen) into any language runtime.

§Architecture

┌─────────────┐  ┌─────────────┐  ┌─────────────┐
│ Python SDK  │  │ Node.js SDK │  │  WASM SDK   │
└──────┬──────┘  └──────┬──────┘  └──────┬──────┘
       └────────┬───────┴────────┬───────┘
                │  deepstrike-core │
                └─────────────────┘

§Design Principles

  • Pure computation: No I/O, no async, no network calls
  • State machine driven: SDK feeds events, kernel returns actions
  • Zero-copy where possible: CompactString, borrowed slices
  • Compile-time safety: Ownership, Send+Sync, exhaustive matches

Re-exports§

pub use context::renewal::ContractCheckResult;
pub use context::renewal::HandoffArtifact;
pub use context::snapshot::ContextSnapshotHint;
pub use governance::tool_decision::ToolDecision;
pub use governance::tool_decision::ToolDecisionContext;
pub use governance::tool_decision::ToolDecisionPipeline;
pub use governance::tool_decision::ToolDecisionStage;
pub use governance::sandbox::SandboxProfile;
pub use governance::pipeline::SecurityPolicySnapshot;
pub use governance::quota::ResourceQuota;
pub use mm::plan_eviction;
pub use mm::EvictionOp;
pub use mm::EvictionPlan;
pub use mm::Handle;
pub use mm::HandleId;
pub use mm::HandleKind;
pub use mm::HandleTable;
pub use mm::MemoryTierHint;
pub use mm::PageInEntry;
pub use mm::PageInRequest;
pub use mm::Residency;
pub use proc::AgentProcess;
pub use proc::ProcessState;
pub use scheduler::tcb::BudgetLedger;
pub use scheduler::tcb::BudgetSlice;
pub use scheduler::tcb::ScheduleDecision;
pub use scheduler::tcb::TaskId;
pub use scheduler::tcb::TaskState;
pub use scheduler::tcb::TaskTable;
pub use scheduler::tcb::Tcb;
pub use scheduler::tcb::WaitReason;
pub use syscall::Disposition;
pub use syscall::Syscall;
pub use runtime::session::SessionEvent;
pub use runtime::category_for_kind;
pub use runtime::primitive_for_kind;
pub use runtime::reconstruct_messages_with_fallback;
pub use runtime::rebuild_os_snapshot_from_events;
pub use runtime::session_log_has_required_categories;
pub use runtime::KernelEventCategory;
pub use runtime::Primitive;
pub use runtime::KERNEL_ABI_VERSION;
pub use runtime::KERNEL_OBSERVATION_KINDS;
pub use runtime::KernelAction;
pub use runtime::KernelInput;
pub use runtime::OsSnapshot;
pub use runtime::KernelInputEvent;
pub use runtime::KernelObservation;
pub use runtime::KernelPressureAction;
pub use runtime::KernelRuntime;
pub use runtime::KernelStep;
pub use types::agent::AgentCapabilityFilter;
pub use types::agent::AgentIdentity;
pub use types::agent::AgentIsolation;
pub use types::agent::AgentRole;
pub use types::agent::AgentRunSpec;
pub use types::agent::ContextInheritance;
pub use types::agent::IsolationManifest;
pub use types::capability::CapabilityCommand;
pub use types::capability::CapabilityDescriptor;
pub use types::capability::CapabilityKind;
pub use types::capability::CapabilityLease;
pub use types::capability::CapabilityManifest;
pub use types::contract::AcceptanceCriterion;
pub use types::contract::VerificationContract;
pub use types::error::DeepStrikeError;
pub use types::error::Result;
pub use types::message::Message;
pub use types::message::ToolCall;
pub use types::message::ToolResult;
pub use types::milestone::MilestoneCheckResult;
pub use types::milestone::MilestoneContract;
pub use types::milestone::MilestonePhase;
pub use types::milestone::MilestoneRollbackPolicy;
pub use types::milestone::MilestoneUnlockPolicy;
pub use types::milestone::MilestoneVerifier;
pub use types::milestone::RetryPolicy;
pub use types::signal::RuntimeSignal;
pub use types::task::RuntimeTask;
pub use types::task::TaskLane;

Modules§

context
governance
harness
memory
mm
Memory-management paging decisions (Phase 4) and long-term memory management (Phase 7).
orchestration
proc
runtime
Runtime event types shared across SDK bindings. I/O (append/read) lives in each language SDK — the kernel stays pure.
scheduler
signals
syscall
Primitive P1: the single syscall trap boundary.
types