Skip to main content

atman_runtime/
lib.rs

1pub mod activity;
2pub mod approval;
3pub mod attachment_store;
4pub mod auth_store;
5pub mod compaction;
6pub mod config_hub;
7pub mod config_migration;
8pub mod config_provider;
9pub mod context_plan;
10pub mod cost;
11pub mod env;
12pub mod error;
13pub mod eval;
14pub mod event;
15pub mod event_log;
16pub mod event_writer;
17pub mod exec;
18pub mod executor;
19pub mod flow_authority;
20pub mod flow_lint;
21pub mod flow_meta;
22pub mod flow_registry;
23pub mod flow_workspace;
24pub mod form;
25pub mod fs_access;
26pub mod git;
27pub mod git_workspace;
28pub mod help;
29pub mod history_store;
30pub mod humanize;
31pub mod hunk;
32pub mod index;
33pub mod injection;
34pub mod injection_classifier;
35pub mod invocation_env;
36pub mod known_models;
37pub mod lifecycle;
38pub mod mcp;
39pub mod mcp_config;
40pub mod memory;
41pub mod message;
42pub mod message_stream;
43pub mod meta_commands;
44pub mod migration;
45pub mod model_registry;
46pub mod nodegraph;
47pub mod notify;
48pub mod oauth;
49pub mod oauth_server;
50mod panic_capture;
51
52/// Reports whether the current thread is inside an active panic-capture
53/// boundary. Panic hooks can use this to skip side effects for a panic that
54/// will be caught.
55#[doc(hidden)]
56pub fn is_panic_capture_active() -> bool {
57    panic_capture::is_active()
58}
59
60pub mod permission;
61pub mod permission_audit;
62pub mod project_catalog;
63pub mod projection;
64pub mod provider;
65pub mod provider_lifecycle;
66pub mod providers;
67pub mod redact;
68pub mod rendezvous;
69pub mod routing;
70pub mod safety;
71pub mod sandbox;
72pub mod session;
73pub mod session_meta;
74pub mod session_naming;
75pub mod settings_catalog;
76pub mod storage;
77pub mod stream;
78pub(crate) mod streaming;
79pub mod submission_queue;
80pub mod task_registry;
81pub mod templates;
82pub mod tool;
83pub mod tool_naming;
84pub mod tools;
85pub mod trust;
86pub mod validate;
87pub mod value;
88pub use watch::WatchHub;
89pub mod watch;
90pub mod workflow;
91
92pub use attachment_store::AttachmentStore;
93pub use context_plan::{
94    ContentDigest, ContextCacheObservation, ContextCachePlan, ContextCacheResetReason,
95    ContextCallIdentity, ContextCallPurpose, ContextCallScope, ContextEpoch, ContextPlanId,
96    ContextPrefixLane, ContextPrefixProfile, ContextPrefixSnapshot, ContextRecord,
97    ContextRecordAuthority, ContextRecordBody, ContextRecordRetention, ContextRecordSpec,
98    ContextTokenLanes, ContextUsageKey, ContextUsageRecord, ModelContextPlan, TokenUsageSource,
99};
100pub use cost::{CostSummary, summarize_by_model, summarize_by_provider, total};
101pub use env::Env;
102pub use error::RuntimeError;
103pub use eval::{EvalCtx, eval_expr};
104pub use event::{
105    Event, EventSink, FlowRunId, FlowStatus, LlmCallStatus, NodeEvent, Observable, TurnId,
106};
107pub use executor::{Executor, ProviderLifecycleAlreadyAttached, RootInvocation};
108pub use hunk::{ApplyError, EditProposal, Hunk, HunkLine};
109pub use injection::{Injection, InjectionId, InjectionSource, InjectionState};
110pub use invocation_env::InvocationEnv;
111pub use message::{ImageData, ImageSource, Message, MessagePart, MessageRole};
112pub use projection::message_window::{TranscriptEntry, replay_transcript_from};
113pub use provider::{LlmRequest, Provider, ProviderCapabilities, ProviderRegistry, TokenUsage};
114pub use provider_lifecycle::{
115    ProviderCatalogRefreshOutcome, ProviderLifecycle, ProviderLifecycleError,
116    ProviderLifecycleOutcome, ProviderReconcileOutcome, ProviderStateChange,
117};
118pub use session::{
119    CompactReviewDecision, CompactReviewMode, CompactReviewRegistry, ContextSnapshot,
120    ContextUsageBucket, PendingCompactReview, Session, SessionId,
121};
122pub use submission_queue::{
123    QueuedSubmission, QueuedSubmissionView, SubmissionId, SubmissionMove, SubmissionQueueError,
124};
125pub use task_registry::{
126    TaskDisplay, TaskEvent, TaskFilter, TaskId, TaskKind, TaskRegistry, TaskSnapshot, TaskStatus,
127};
128pub use tool::{CancelBehavior, Tier, Tool, ToolArgs, ToolCtx, ToolRegistry, ToolResult};
129pub use tool_naming::{ToolNaming, from_wire, to_wire};
130pub use validate::{ValidationError, validate};
131pub use value::Value;
132pub use workflow::{NodeStatus, Parallelism, WorkflowGraph, WorkflowNode, WorkflowNodeKind};