Skip to main content

ag_session/
lib.rs

1//! Frontend-neutral session management API and shared session models.
2//!
3//! Host applications implement [`SessionBackend`] to connect the stable
4//! programmatic API to their persistence, agent, Git, and forge workflows.
5//! Callers such as future orchestrator sessions use [`SessionService`] without
6//! depending on terminal UI state.
7
8mod error;
9mod message;
10mod model;
11mod service;
12
13pub use error::SessionError;
14pub use message::{
15    SessionMessage, SessionMessageKind, SessionMessageKindParseError, SessionTranscript,
16    normalized_message_content, stored_message_content,
17};
18pub use model::{
19    ForgeKind, ReviewRequest, ReviewRequestState, ReviewRequestSummary, Session, SessionId,
20    SessionRole, SessionSettings, SessionStatus, SpeedMode, activity_day_key_with_offset,
21};
22pub use service::{
23    AnswerQuestionsRequest, CoordinatorMessageRequest, CreateSessionMode, CreateSessionRequest,
24    QuestionAnswer, SessionBackend, SessionService,
25};