Skip to main content

Crate atm_core

Crate atm_core 

Source
Expand description

ATM Core - Shared types for coding-agent management

This crate provides the core domain types shared between the daemon (atmd) and TUI (atm).

All code follows the panic-free policy: no .unwrap(), .expect(), panic!(), unreachable!(), todo!(), or direct indexing [i].

Re-exports§

pub use agent::AgentType;
pub use context::ContextUsage;
pub use context::TokenCount;
pub use cost::Money;
pub use error::DomainError;
pub use error::DomainResult;
pub use harness::Harness;
pub use harness_registry::builtin_harness_ids_display;
pub use harness_registry::builtin_harnesses;
pub use harness_registry::default_harness_definition;
pub use harness_registry::find_harness_definition;
pub use harness_registry::HarnessDefinition;
pub use harness_registry::ProcessMatcher;
pub use harness_registry::PromptMode;
pub use lifecycle::LifecycleEvent;
pub use lifecycle::NeedsInputReason;
pub use lifecycle::NotificationKind;
pub use model::derive_display_name;
pub use model::Model;
pub use project::resolve_project_root;
pub use project::resolve_worktree_info;
pub use session::ActivityDetail;
pub use session::LinesChanged;
pub use session::SessionDomain;
pub use session::SessionDuration;
pub use session::SessionId;
pub use session::SessionInfrastructure;
pub use session::SessionStatus;
pub use session::SessionView;
pub use session::StatusLineData;
pub use session::ToolUsageRecord;
pub use session::ToolUseId;
pub use session::TranscriptPath;
pub use tool::Tool;
pub use tree::all_node_ids;
pub use tree::build_tree;
pub use tree::flatten_tree;
pub use tree::TreeNode;
pub use tree::TreeNodeId;
pub use tree::TreeRow;
pub use tree::TreeRowKind;

Modules§

agent
Agent type identification.
beads
Beads task lookup for preview pane integration.
context
Context window and token tracking.
cost
Money and cost tracking value objects.
error
Domain-specific error types following panic-free policy.
harness
Coding-agent harness identification.
harness_registry
Built-in coding-agent harness registry.
lifecycle
Vendor-neutral agent lifecycle events.
model
Model identification and metadata.
project
Project and worktree resolution utilities.
session
Session domain entities and value objects.
tool
Vendor-neutral identity for tools an agent can invoke.
tree
Tree model for grouping sessions by project, worktree, and team.