Open Brain 1.0.1
Open Brain 1.0.1
Patch release over 1.0.0. Five commits since cb590ae (the previous upstream head). Nothing in this release introduces a breaking change to the API, schema, or operator workflow.
What changed
- Docker stack actually works on a fresh clone. 1.0.0's
docker-compose up -d --buildfailed to bring the api up because of CRLF line endings in shell scripts, env-var-ignoringsetup_db.py, and a missing UUID adapter in psycopg2. All three are fixed. A newscripts/quickstart.shbrings the whole stack up idempotently and (with--with-hermes) wires it into a locally-installed Hermes. - NLTK 3.8.2+ rename. Entity extraction silently fell through because the runtime data files were renamed. New names are looked up first; the data is now baked into the api image so cold starts don't have to download.
- Local embeddings by default. The 1.0.0 compose stack pointed at OpenRouter; the key on file had been revoked (HTTP 401 "User not found"). The new stack ships an
ollamaservice runningnomic-embed-textlocally; no API key required. - Default port changed from 8000 to 8765. Windows IP Helper (
iphlpsvc) often holds port 8000, which prevented the api container from binding. Override withAPI_PORTin.envif you need a different port. - Schema migration 015. Alters
memory.embeddingfromvector(1536)tovector(768)to match the new default embedder. Rebuilds the HNSW index. Existing 1536-dim embeddings cannot be converted; the migration is safe on a fresh install or a database where the column is empty. .envremoved from version control. 1.0.0 had a.envwith a real OpenRouter API key checked in. It's gone from the index. Copy.env.exampleto.env(or letopenbrain configure --project-root .generate the secrets) on first run..gitattributesadded so Windows checkouts stop reintroducing CRLF into shell scripts.- E2E test suite at
tests/e2e/test_api.pyexercises every category of route in the OpenAPI schema. Auto-skips when the stack isn't reachable, sopytest tests/still works in CI without docker. 10/10 pytest passing; 39/39 standalone passing.
How to upgrade from 1.0.0
git pull
docker compose down
docker compose up -d --buildThen recreate your .env from the new .env.example (the old .env is no longer tracked):
cp .env.example .env
openbrain configure --project-root . # generates DB_PASSWORD + OPENBRAIN_API_KEYThe openbrain CLI on your PATH will reuse the existing OPENBRAIN_API_KEY from ~/.config/openbrain/.env if present.
How to install from scratch
git clone https://github.com/benclawbot/open-brain.git
cd open-brain
bash scripts/quickstart.sh --with-hermesVerification
$ pytest tests/e2e/ -v
Pytest: 10 passed
$ python tests/e2e/test_api.py --slow 3
=== Summary ===
39 passed, 0 failed
Full change log
See docs/pr-1.0.1-stack-and-nltk.md in the repo and the commit log:
010ded5fix: make the local docker stack actually work end-to-endb05f502fix: bake NLTK data into the api image and handle 3.8.2+ renamesed88338test: add e2e suite + PR description for stack/NLTK fixes5801db0test(e2e): add --slow/--url/--key flags to the standalone runner (#53)e7c5eb7test(e2e): use distinctive content to avoid near-duplicate ranking