v0.0.1 — Alpha
The first public release of Grover: a Python toolkit that gives AI agents safe, versioned file operations over codebases and documents.
Versioned Filesystem
- Two storage backends:
LocalFileSystem(disk + SQLite) for local dev,DatabaseFileSystem(pure SQL) for web apps and shared knowledge bases - Mount-based VFS routes operations to the right backend by path prefix — mount multiple backends side by side
- Automatic versioning with diff-based storage (snapshots + forward diffs) and SHA-256 integrity checks
- Soft-delete trash with restore, plus permanent delete
- File operations: read, write, edit, delete, move, copy, mkdir, list_dir, exists
- Search operations: glob (pattern matching), grep (regex search with context lines), tree (directory listing with depth limits)
- Capability protocols: backends declare what they support (
SupportsVersions,SupportsTrash,SupportsReconcile) — checked at runtime - Dialect-aware SQL: works with SQLite, PostgreSQL, and MSSQL
- Reconciliation: sync disk state with database for
LocalFileSystem
API
- Sync (
Grover) and async (GroverAsync) facades - Everything-is-a-file identity model
- Event-driven architecture via EventBus
- Result types for all operations (no raw exceptions in the public API)
Infrastructure
- Python 3.12+ (tested on 3.12, 3.13, 3.14)
- CI with GitHub Actions (lint, format, type check, tests)
- Documentation site via MkDocs Material
Coming Soon
- Knowledge graph — dependency and impact analysis powered by rustworkx with automatic code analyzers (Python, JS/TS, Go)
- Semantic search — HNSW vector index with pluggable embedding providers
- MCP server — expose Grover as a Model Context Protocol server for Claude Code, Cursor, and other MCP-compatible agents
- CLI —
grover init,grover status,grover search,grover rollback