Getting started¶
Install¶
CorpusOS needs Python 3.11 or later. With uv:
git clone https://github.com/YarlisAISolutions/corpusos.git && cd corpusos
uv sync # core, SQL, API, web app, MCP, Office readers and tests
uv run corpusos --help
With pip: pip install "corpusos[web]". Heavier parsers are optional extras: docling (PDF, Word and image layout), ocr, media (Whisper transcripts), tika, pii (Presidio), tokenizers and embed (sentence-transformers). corpusos parsers shows what is installed.
A first corpus from the command line¶
uv run corpusos inventory ~/Documents/projects # read-only look: writes nothing
uv run corpusos init corpus --name "My Knowledge" --owner me@example.com
cd corpus
uv run corpusos ingest ~/Documents/projects --source projects
uv run corpusos review list # documents held before indexing
uv run corpusos search "leave policy" -p me@example.com
uv run corpusos sql 'SELECT * FROM personal_projects_finance_budget_budget' -p me@example.com
uv run corpusos scorecard # quality and release gates
--owner sets the default access list of new documents. Change it, and add per-source rules, in config/security.yaml.
A first corpus in the browser¶
uv run corpusos web --init --name "My Knowledge" --owner me@example.com -C corpus
Open http://127.0.0.1:8080 and sign in as me@example.com. In this local development mode the server trusts the name you type, so it only listens on loopback. Upload files on the Storage tab, or copy them into corpus/storage/<source>/ and press Sync.
To serve other people, choose a real sign-in method. See Web app and API.