DaisiDB
BetaDocuments and tables in one file, with history. The command is ddb. Beta.
A database is a folder
ddb commands take a path. That path is the directory that holds data.ddb and its log — not an id you have to look up.
Look before you change it
ddb info prints geometry and counters. ddb verify walks every page and says what is wrong. A damaged file exits with its own code so a script can tell that apart from a bad command.
Run one statement
ddb sql <path> "<statement>" runs one statement and prints what comes back. Embedded apps can also open the file with a DaisiConnection connection string (Data Source=./app.ddb).
Back it up
ddb backup <path> <archive> writes an archive directory. ddb backups lists it. ddb restore <archive> <path> restores the newest backup into a new database.
Serve it
ddb serve <path> listens until you stop it. The default is port 8080 on 127.0.0.1. Binding any other address requires --insecure or a certificate. --agent-schema creates agent.Memory so an agent can remember and recall. --history 30d keeps old row versions so AS OF works.
Let an agent talk to it
ddb mcp <path> speaks MCP on stdin and stdout, which is what a local agent launches. ddb mcp --connect <url> forwards to a server someone else is already running, which is the shape for several agents at once.
Commands
ddb
ddb verify <path>
ddb info <path>
ddb sql <path> <statement>
ddb backup <path> <archive>
ddb backups <archive>
ddb restore <archive> <path>
ddb serve <path> [--port 8080] [--address 127.0.0.1] [--tokens <file>] [--cert <file.pfx>]
[--agent-schema] [--history 30d] [--statement-timeout 30s]
ddb mcp <path> [--principal <name>] [--agent-schema] [--max-rows 200]
ddb mcp --connect <url>
ddb service install --tokens <file> Windows, elevated
ddb service start
ddb service stop
ddb update check
ddb update apply --yes
Reviewed October 2026.