Expand description
Agent Checkpoint System
Comprehensive checkpoint and session management for software engineering agents.
This crate provides:
- Session persistence and restoration
- Checkpoint storage with compression
- Retention policies and cleanup
- Project isolation via hash-based directories
- Atomic file operations
All data is stored centrally in ~/.simpaticoder/ to avoid project directory pollution.
§Usage
use agent_checkpoint::{get_storage_manager, CheckpointResult};
use std::path::Path;
async fn example() -> CheckpointResult<()> {
let manager = get_storage_manager()?;
let project_path = Path::new(".");
let project_storage = manager.get_project_storage(project_path).await?;
Ok(())
}Re-exports§
pub use atomic::AtomicFileWriter;pub use atomic::AtomicOps;pub use atomic::FileLock;pub use cleanup::CleanupManager;pub use config::CleanupReport;pub use config::ConfigMigrator;pub use config::GlobalCheckpointConfig;pub use config::MigrationReport;pub use config::ProjectCheckpointConfig;pub use config::ProjectConfigManager;pub use config::ProjectStats;pub use config::RetentionPolicy;pub use config::SessionStats;pub use config::StorageStats;pub use errors::CheckpointError;pub use errors::CheckpointResult;pub use models::AgentStateSnapshot;pub use models::Checkpoint;pub use models::CheckpointMetadata;pub use models::CheckpointSummary;pub use models::ConversationSnapshot;pub use models::EnvironmentSnapshot;pub use models::FileSystemSnapshot;pub use models::ProjectHash;pub use models::SessionMetadata;pub use models::SessionStatus;pub use models::ToolStateSnapshot;pub use restoration::CheckpointRestoration;pub use restoration::RestorationMetadata;pub use restoration::RestorationResult;pub use restoration::RestoredCheckpoint;pub use restoration::ValidationIssue;pub use restoration::ValidationResults;pub use restoration::ValidationSeverity;pub use resume_tracker::ResumeContext;pub use resume_tracker::ResumeTracker;pub use size_calc::SizeCategory;pub use size_calc::SizeInfo;pub use size_calc::SizeUtils;pub use size_calc::StorageSizeCalculator;pub use storage::CheckpointStorageManager;pub use storage::ProjectStorage;pub use storage::SessionStorage;
Modules§
- atomic
- Atomic file operations for safe checkpoint data handling
- cleanup
- Cleanup operations for checkpoint storage management
- config
- Configuration structures for the checkpoint system
- errors
- Error types for the checkpoint system
- models
- Data models for the checkpoint system
- restoration
- Checkpoint restoration functionality
- resume_
tracker - Resume context tracking for checkpoint restoration
- size_
calc - Storage size calculation utilities with caching and performance optimization
- storage
- Storage management for the checkpoint system
Functions§
- calculate_
total_ storage_ usage - Calculate total storage usage across all projects
- cleanup_
expired_ data - Cleanup expired checkpoint data across all projects
- get_
storage_ manager - Get the global checkpoint storage manager
- initialize
- Initialize the checkpoint system