Skip to main content

atm_core/
lib.rs

1//! ATM Core - Shared types for Claude Code monitoring
2//!
3//! This crate provides the core domain types shared between
4//! the daemon (atmd) and TUI (atm).
5//!
6//! All code follows the panic-free policy: no `.unwrap()`, `.expect()`,
7//! `panic!()`, `unreachable!()`, `todo!()`, or direct indexing `[i]`.
8
9pub mod agent;
10pub mod context;
11pub mod cost;
12pub mod error;
13pub mod hook;
14pub mod model;
15pub mod session;
16
17// Re-exports for convenience
18pub use agent::AgentType;
19pub use context::{ContextUsage, TokenCount};
20pub use cost::Money;
21pub use error::{DomainError, DomainResult};
22pub use hook::{is_interactive_tool, HookEventType};
23pub use model::Model;
24pub use session::{
25    DisplayState, LinesChanged, SessionDomain, SessionDuration, SessionId, SessionInfrastructure,
26    SessionStatus, SessionView, ToolUseId, ToolUsageRecord, TranscriptPath,
27};