Install

Sheaf runs entirely on your machine: Node 22 or newer, plus a way to talk to a model backend. Nothing else.

Access

Sheaf is in a private pilot while the first cohort works through real papers. The repository is invite-only for now: write to [email protected] and say roughly what you'd want to read with it. An invite adds your GitHub account to the repository, after which every command below works as written.

Quickstart

git clone https://github.com/grsmith44/sheaf.git
cd sheaf/web
npm install
npm start

Then open http://localhost:8787. The terminal names the model backend it found and which account it bills.

To update later: git pull, then npm install && npm start again. If port 8787 is taken: PORT=9000 npm start.

Packaged run

cd sheaf/web
npm pack

Builds a tarball whose sheaf command starts the app from anywhere, keeping data in a per-user folder (SHEAF_DATA_DIR overrides it). Nothing is published to a registry yet, so there is no npx sheaf rung today — the tarball is the packaged path.

Model backends

Model calls go through one of four interchangeable backends, chosen at startup and announced in the terminal banner — never silently, since the choice decides which account is charged. Only the two Claude backends are auto-detected; the two OpenAI-dialect backends are explicit opt-ins.

BackendSelecting itSetup
claude-code Automatic when a Claude Code login is present None — uses your existing Claude Code login; no API credit is spent
claude-api Automatic when an Anthropic API key is set export ANTHROPIC_API_KEY=sk-ant-… before npm start; billed as API usage
openai-api SHEAF_PROVIDER=openai-api OPENAI_API_KEY=… and SHEAF_MODEL=<model-id> — the model id is required; no default is shipped
codex SHEAF_PROVIDER=codex npm i --no-save @openai/codex-sdk in web/, then codex login

Full backend documentation, including what each backend will and will not do: web/README.md in the repository.