1pub mod approval;
9pub mod atomic;
10pub mod checkpoint;
11pub mod daemon;
12mod pathguard;
13pub mod plugin;
14pub mod policy;
15pub mod storage;
16
17pub use atomic::write_atomic;
18
19pub use approval::{ApprovalReplayResult, approve_and_replay, deny_approval};
20pub use checkpoint::{
21 CheckpointFile, CheckpointManifest, create_checkpoint, create_checkpoint_for_task,
22 gc_old_checkpoint_dirs, restore_checkpoint,
23};
24pub use daemon::{
25 DEFAULT_PAIRING_TTL_DAYS, clamp_pairing_ttl_days, daemon_socket_path, generate_pairing_token,
26 hash_pairing_token, pairing_expiry_from_now, request_daemon_json, request_daemon_text,
27 snapshot_field_from_daemon,
28};
29pub use pathguard::{
30 OpenIntent, create_dir_all_beneath, open_beneath, remove_file_beneath, write_atomic_beneath,
31};
32pub use plugin::{
33 PluginCapabilityPreview, PluginManifest, install_plugin_from_path, plugin_capability_preview,
34 run_plugin_hooks, validate_plugin_manifest, write_plugin_lockfile,
35};
36pub use policy::{
37 ActionRequest, PolicyDecision, PolicyEngine, PolicyOverride, PolicyOverrideDecision, RiskClass,
38 SafetyMode, ToolCategory, is_destructive_command,
39};
40pub use storage::{
41 ApprovalRecord, ApprovalsRepo, CheckpointRecord, CheckpointsRepo, CompactionRecord,
42 CompactionsRepo, MessageRecord, MessagesRepo, NewApproval, NewCheckpoint, NewCompaction,
43 NewMessage, NewPluginInstall, NewProcess, NewProviderProbe, NewSession, NewTask, NewToolRun,
44 PairingTokenRecord, PairingTokensRepo, PluginInstallRecord, PluginsRepo, ProcessRecord,
45 ProcessStatus, ProcessesRepo, ProviderProbeRecord, ProviderProbesRepo, RuntimeStore,
46 SessionRecord, SessionsRepo, TaskPriority, TaskRecord, TaskStatus, TaskTimelineEvent,
47 TasksRepo, ToolRunRecord, ToolRunsRepo, data_dir,
48};
49#[cfg(unix)]
51pub use storage::try_exclusive_lock;