Custos wires Grok into legalos and lets users bring their own xAI keys

The legalos fork adds Elon Musk's Grok to the model menu and lets each user plug in their own xAI billing.

integrationmulti-tenant

Custos has rebranded its fork of Mike as "legalos" and used the opening commits to widen the model bench. The headline move is a new provider for xAI's Grok - the chatbot from Musk's xAI lab - which now sits alongside Claude and Gemini in the model picker. A reviewer working inside a tabular review screen can pick which model handles that specific job, and the choice sticks.

The second piece is quieter but matters more for firms: each user can store their own xAI API key on their profile, mirroring how the fork already handles Claude and Gemini keys. The org-wide key is still there as a fallback. A handful of smaller fixes ride along - storage tweaks for Supabase-hosted deployments and a bug fix on the projects list - but the through-line is model choice and billing isolation per user.

So what Worth a look for any legal team that wants to A/B Grok against Claude on review tasks without commingling spend across users.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

2 commits from Custos/legalos, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
6ee8547e Fork as legalos: xAI Grok support, Supabase S3, and bugfixes Custos 2026-05-04 ↗ GitHub
commit body
- Add xAI provider (grok-4.3) with OpenAI-compatible streaming + tool calling
- Add model dropdown to TabularReviewView header (persists tabular_model preference)
- Patch storage.ts for Supabase S3 (region from env, forcePathStyle)
- Fix GET /projects 500: jsonb contains needs JSON-stringified array
- Update README with attribution to upstream willchen96/mike under AGPL-3.0
d9295771 Per-user xAI API keys Custos 2026-05-04 ↗ GitHub
commit body
- New user_profiles.xai_api_key column.
- userSettings reads/returns xai key alongside claude + gemini.
- UserProfileContext exposes xaiApiKey + updateApiKey('xai', ...).
- Account → Models page renders an xAI key field.
- Tabular review xAI dropdown stays available without a per-user key
  (env XAI_API_KEY remains the fallback) but a user key takes precedence.

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-45.md from inside the repo you want the changes in.

⬇ Download capture-thread-45.md