Docs
Operator notes
Five focused pages for setup, GitHub access, CLI usage, trace inspection, and the JWT contract.
Quickstart
Install the GitHub App at https://github.com/apps/perseus-console and pick the repositories Perseus should index. Indexing kicks off the moment the first push event lands.
GitHub App
Perseus requests repository contents (read), metadata (read), pull-request write (for inline citations), commit statuses, and checks. No write access to code.
CLI
Two commands ship in the `perseus` PyPI package: `perseus` (user surface) and `pctl` (operator surface). Both share the auth token from `~/.config/perseus/`.
Playground
The playground POSTs to `/api/perseus/query` (which proxies to the backend `POST /v1/query`). Each query returns a `run_id`, the final answer, the ranked snippets used as evidence, and MCTS diagnostics.
Security
NextAuth (GitHub OAuth) issues RS256 JWTs with a `tenant_id` claim, signed with `NEXTAUTH_JWT_PRIVATE_KEY`. Backend verifies every request via `/.well-known/jwks.json` against `NEXTAUTH_JWT_PUBLIC_KEY`; missing or bad signatures return 401.