Overview
Version 1 ships with a single database provider: sqlite. The public API is provider-agnostic so PostgreSQL / pgvector / Qdrant can be added later without breaking callers.
SQLite provider
typescripttypescript
database: {
provider: "sqlite",
connectionString: "./memory.db",
}On init, agentOrc opens the file, enables WAL mode, runs migrations, prepares statements, and creates the vector index for your embedding dimensions.
Paths and :memory:
- Relative paths resolve from
process.cwd() - Absolute paths are used as-is
:memory:creates an in-memory database (useful for tests)
WAL and durability
agentOrc enables Write-Ahead Logging, sets a busy timeout, and wraps writes in ACID transactions. Concurrent agents can read while writes commit safely.
Future providers
Planned providers include PostgreSQL with pgvector and Qdrant. Your init() shape will stay the same — only the database block changes.