Skip to content

Overview

The awaken crate is the public facade for the Awaken agent framework. It re-exports runtime contracts, server contracts, runtime APIs, stores, and extensions so downstream code can start with one dependency.

Facade pathSource crateContents
awaken::contractawaken-runtime-contractRuntime-facing tools, events, messages, suspension, lifecycle, commit coordinator
awaken::server_contractawaken-server-contractServer/store-facing storage queries, scoped stores, staged commits
awaken::modelawaken-runtime-contractPhase, EffectSpec, ScheduledActionSpec, JsonValue
awaken::registry_specawaken-runtime-contractAgentSpec, ModelSpec, ProviderSpec, McpServerSpec, PluginConfigKey
awaken::stateawaken-runtime-contract + awaken-runtimeStateKey, StateMap, Snapshot, StateStore, MutationBatch
awaken::agentawaken-runtimeAgent configuration and state
awaken::builderawaken-runtimeAgentRuntimeBuilder, BuildError
awaken::contextawaken-runtimePhaseContext
awaken::engineawaken-runtimeLLM engine abstraction
awaken::executionawaken-runtimeExecutionEnv
awaken::extensionsawaken-runtimeBuilt-in extension infrastructure
awaken::loop_runnerawaken-runtimeAgent loop runner
awaken::phaseawaken-runtimePhaseRuntime, PhaseHook
awaken::pluginsawaken-runtimePlugin, PluginDescriptor, PluginRegistrar
awaken::policiesawaken-runtimeContext window and retry policies
awaken::registryawaken-runtimeAgentResolver, ResolvedAgent, ResolvedBackendAgent
awaken::runtimeawaken-runtimeAgentRuntime
awaken::storesawaken-storesMemory, file, PostgreSQL, and SQLite-backed store implementations
Facade pathFeature flagSource crate
awaken::ext_permissionpermissionawaken-ext-permission
awaken::ext_observabilityobservabilityawaken-ext-observability
awaken::ext_mcpmcpawaken-ext-mcp
awaken::ext_skillsskillsawaken-ext-skills
awaken::ext_generative_uigenerative-uiawaken-ext-generative-ui
awaken::ext_reminderreminderawaken-ext-reminder
awaken::serverserverawaken-server

The following types are re-exported at the crate root for convenience:

From awaken-runtime-contract: AgentSpec, EffectSpec, FailedScheduledActions, JsonValue, KeyScope, MergeStrategy, PendingScheduledActions, PersistedState, Phase, PluginConfigKey, ScheduledActionSpec, Snapshot, StateError, StateKey, StateKeyOptions, StateMap, TypedEffect, UnknownKeyPolicy

From awaken-runtime: AgentResolver, AgentRuntime, AgentRuntimeBuilder, BuildError, CancellationToken, CommitEvent, CommitHook, DEFAULT_MAX_PHASE_ROUNDS, ExecutionEnv, MutationBatch, PhaseContext, PhaseHook, PhaseRuntime, Plugin, PluginDescriptor, PluginRegistrar, ResolvedAgent, RunActivation, RuntimeError, StateCommand, StateStore, ToolGateHook, TypedEffectHandler, TypedScheduledActionHandler

FlagDefaultDescription
permissionyesTool-level permission gating (HITL)
observabilityyesTracing and metrics integration
mcpyesMCP (Model Context Protocol) tool bridge
skillsyesSkills subsystem for reusable agent capabilities
reminderyesReminder extension for injecting context messages
serveryesHTTP server with SSE streaming and protocol adapters
generative-uiyesGenerative UI component streaming
fullyesEnables all of the above

Workspace extension crates can exist outside the facade feature set. The current one is awaken-ext-deferred-tools; add it as a direct dependency when you need deferred tool loading.