Skip to main content

missiond_core/
lib.rs

1//! missiond-core - Core library for Mission Control daemon
2//!
3//! This crate provides core functionality for missiond, including:
4//! - Core management (SlotManager, ProcessManager, PermissionPolicy, MissionControl)
5//! - Core types (Task, InboxMessage, TaskEvent, etc.)
6//! - Semantic terminal parsing (state detection, confirmation dialogs)
7//! - PTY session management
8//! - Database operations
9//! - WebSocket communication
10//! - Claude Code Tasks monitoring
11
12pub mod cc_tasks;
13pub mod core;
14pub mod db;
15pub mod pty;
16pub mod semantic;
17pub mod types;
18pub mod ws;
19
20// Re-export core management types
21pub use crate::core::{
22    AgentProcess, AgentStatus, ExecuteResult, ExecutionMode, Inbox, MissionControl,
23    MissionControlOptions, PermissionConfig, PermissionDecision as CorePermissionDecision,
24    PermissionPolicy, PermissionRule, ProcessManager, SlotManager, SpawnOptions,
25};
26
27// Re-export core types
28pub use types::{
29    CreateTaskInput, EventType, InboxMessage, Slot, SlotConfig, SlotsConfig, Task, TaskEvent,
30    TaskStatus, TaskUpdate,
31};
32
33// Re-export database
34pub use db::MissionDB;
35
36// Re-export semantic parser types
37pub use semantic::{
38    ClaudeCodeConfirmParser, ClaudeCodeStateParser, ConfirmAction, ConfirmOption,
39    ConfirmParser, ConfirmType, ParserContext, ParserMeta, State,
40    StateDetectionResult, StateParser,
41};
42
43// Re-export PTY types
44pub use pty::{
45    ConfirmInfo, ConfirmResponse, FrameDelta, IncrementalExtractor, LineData, ManagerEvent,
46    ManagerStats, Message, MessageRole, PTYAgentInfo, PTYExecuteResult, PTYManager, PTYSession,
47    PTYSessionOptions, PTYSpawnOptions, PermissionDecision, PermissionPolicy as PTYPermissionPolicy,
48    ScreenSnapshot, ScreenTextEvent, ScreenTextSource, SessionEvent, SessionState, Slot as PTYSlot,
49    StableTextOp, TextAssembler, TextOutputEvent, ToolInfo,
50};
51
52// Re-export CC Tasks types
53pub use cc_tasks::{
54    CCInProgressTask, CCSession, CCSessionIndex, CCSessionIndexEntry, CCTask, CCTaskChangeEvent,
55    CCTaskStatus, CCTasksOverview, CCTasksWatcher, CCTasksWatcherOptions, TasksByStatus,
56    WatcherEvent,
57};
58
59// Re-export WebSocket types
60pub use ws::{PTYWebSocketServer, WSServerOptions};