AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
Docbank은 여러분과 에이전트를 위한 자체 주권 문서 저장소로, 색인 검색·안정적 정체성·검증 가능한 내용·점진 복구·감사 이력을 제공합니다
Docbank is a self-sovereign document storage system for you and your agents, with indexed retrieval, stable identity, verifiable content, incremental recovery, and audited history.
개발 도구Go · TypeScriptGitHub @kenn-io온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
Local-first system of record for documents (PDFs, images, text files, etc.) for you and your agents
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Alpha software. Keep independent copies of irreplaceable material and
verify backups before relying on them.
Keep, find, and recover documents in a vault you control.
Docbank is an open-source document vault for people, applications, and agents.
Import files, organize them in folders, and search their names and extracted
text. Move or rename a document without changing its ID. Save new versions
without overwriting earlier ones, and verify backups before you need them.README 전문 보기 ↗Alpha software. Keep your own copies of anything irreplaceable, and verify a backup before you rely on it.
Agent-native document system of record
Docbank is an open-source document vault for people, applications, and agents. It runs on your own machine. It imports files, email, photos, and recordings, makes their text searchable, and keeps every version you save. When you need to hand records to someone else, it exports the versions you checked.
Use it from the command line, a local web app, a terminal browser, or an
authenticated HTTP API, or connect an agent with docbank mcp. They all talk
to the daemon, a local background process that owns the vault. A Go application
can instead embed a vault of its own.
| Task | Guide |
|---|---|
| Import and organize records | Importing and tagging |
| Find a document | Searching and search by meaning |
| Extract a document's text and read it | Document processing |
| Read email and follow attachments | Web email reader |
| Browse photos and organize albums | Photo assets |
| Export documents and search reports | Verified bundles and search reports |
| Keep earlier content versions | Editing and versions |
| Automate filing and retrieval | Agent integration |
| Recover deleted documents | Trash and recovery |
| Create and verify backups | Backup and restore |
| Keep a permanent record of changes | Audited history |
| Add filesystem or S3-compatible storage | Multi-store storage |
Docbank does not synchronize a working folder across devices or create public share links. The capability guide lists what it does today, and the roadmap lists what is planned.
Linux or macOS:
curl -fsSL https://docbank.ai/install.sh | sh
Windows PowerShell:
irm https://docbank.ai/install.ps1 | iex
The installers pick the native Linux, macOS, or Windows archive for amd64 or
arm64. They refuse to install an archive whose digest does not match the
release's SHA256SUMS. You can also download the archives from
GitHub Releases and verify them
yourself.
To build from source, install Go 1.27+, CGO, a C compiler, Node 24+, and npm:
git clone https://github.com/kenn-io/docbank.git
cd docbank
make install
The setup guide lists the build requirements for each platform. For a stock image configured through environment settings and mounted secrets, see Run in a container.
The first data command creates the vault and starts its daemon:
docbank add ~/Documents --dest /archive
docbank tree /archive
docbank search "tax return"
docbank web
Retrieve a file, list its versions, replace its content, and rename it. Docbank verifies a file before handing it back. Replacing content adds a version and leaves the earlier ones in place, and a rename keeps the document's ID:
docbank get /archive/Documents/receipt.pdf ./receipt.pdf
docbank versions list /archive/Documents/receipt.pdf
docbank put revised-receipt.pdf /archive/Documents/receipt.pdf
docbank mv /archive/Documents/receipt.pdf /archive/Documents/receipt-2026.pdf
docbank verify
Create a backup, verify it, and restore it into a separate directory to check:
docbank backup init --repo ~/Backups/docbank
docbank backup create --repo ~/Backups/docbank --tag first-import
docbank backup verify --repo ~/Backups/docbank
docbank backup restore --repo ~/Backups/docbank --target ~/Restores/docbank-test
The ten-minute quickstart covers versions, tags, search, trash, maintenance, and restore.
docbank backup create
also includes content held only in secondary stores. See the
backup guide for the full rules.Docbank sends anonymous usage events by default:
daemon_active at startup and once per later UTC day while running.app_opened when the web app opens, about once per UTC day per browser and
daemon run.screen_viewed with a fixed screen name, once per vault per UTC day for each interface, browser and terminal, across daemon restarts.session_ended once when a tab closes or stays hidden for 30 minutes, or the
terminal browser exits, with duration grouped into four buckets. Browser
visible time adds up across tab switches. Hidden time is excluded. The
terminal browser counts the time from opening to exit, including idle time.document_added, search_run, and document_opened after completed document actions, with surface of web, tui, or cli. Searches also carry search_type of text, semantic, or hybrid. PostHog counts these events per day. CLI reports require a terminal on stdin, stdout, or stderr and omit --agent runs; CLI and TUI actions omit runs under CLAUDECODE or CODEX_THREAD_ID.search_empty when a submitted search has no results, with surface and search_type as above. It accompanies search_run, except a valid submitted search that ends on an empty source fence, which sends only search_empty. The CLI falls back to text search and sends both.error_shown when a search, add, or open you ran fails, with surface of web, tui, or cli and kind of search, add, or open. Rejected input counts as a failed search or add like any other failure. A failed search or open counts once, and an upload or photo import run with failed items counts once. Sign-in prompts, cancels, passive loads, refreshes, other drawers and dialogs, notices, and CLI usage errors before connecting stay silent. A Photos open whose detail load fails counts as a failed open. The terminal browser sends document_opened on Enter and sends no error_shown with kind of open for a failed detail load. Other previews or detail loads after opening a document are secondary loads and stay silent. Failed Add re-plans, closed CLI output pipes for add, cat, and search, and an existing destination for also stay silent. A missing download destination directory, or one that is not a directory, also stays silent.Asynchronous imports from the CLI or the web mailbox and load-file drawers, and push, send no core actions.
Each event carries a random per-vault install ID, the version and commit, the
operating system and architecture, and the distribution channel, such as
homebrew. Events never include document content,
names, paths, or queries. Set DOCBANK_TELEMETRY_ENABLED=0 or
DO_NOT_TRACK=1 to turn telemetry off. See
anonymous usage telemetry.
Docbank has a sibling, msgvault, which archives communications. Msgvault preserves an immutable record of messages. Docbank manages working documents that people and agents still organize, retrieve, version, and use.
Start with the development guide for the repository layout, package ownership, generated clients, and checks. Follow AGENTS.md and the documentation guide when updating code or documentation.
Copyright 2026 Kenn Software LLC.
Docbank is licensed under the Apache License, Version 2.0. See NOTICE for attribution information.
get