Chris-o-O bolts on a model buffet and legal-tuned semantic search

One fork, two upgrades: pick from a wider menu of AI models, and find documents by meaning instead of keywords.

searchinfrastructure

Chris-o-O's fork plugs in OpenRouter - a single gateway that gives users access to a half-dozen frontier models from different vendors (OpenAI, Mistral, Meta, Google) behind one API key. The toggle sits alongside the existing model picker, so end users can shop around without the team rewiring anything.

The second move is more legal-specific. Documents uploaded to the platform are now sliced up and embedded using Voyage AI's legal-tuned model, then stored as vectors so users can search by concept rather than exact wording - and results come back with page numbers attached. There's a dedicated search box on each project, and the chat assistant can pull from it too. A couple of rough edges to watch: indexing fires once on upload with no retry, and old documents won't be searchable until they're re-uploaded.

So what If you've been waiting for a Mike fork to treat document search as more than ctrl-F, this is the one to study.

View this fork on GitHub →

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

Commits in this thread

1 commit from Chris-o-O/mike-explor, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
3279a584 Add OpenRouter multi-model support and Voyage AI semantic search Claude 2026-05-07 ↗ GitHub
commit body
OpenRouter: extends the LLM provider abstraction to support GPT-4o,
GPT-4 Turbo, Mistral Large, Llama 3.3 70B, and Gemma 3 27B via a
single OpenRouter API key. Follows the same provider pattern as Claude
and Gemini - new openrouter.ts adapter, model routing by prefix, per-user
API key stored in user_profiles, and full UI integration (model toggle,
availability checks, account settings key field).

Semantic search: adds Voyage AI embeddings (voyage-law-2, optimised for
legal documents) to index document chunks at upload time (fire-and-forget,
controlled by VOYAGE_API_KEY env var). Chunks are stored in a new
document_chunks pgvector table. A /search/semantic endpoint and a
semantic_search LLM tool enable concept-level retrieval. A new
SemanticSearchWidget in ProjectPage exposes document search by meaning.

https://claude.ai/code/session_01NJxa5NasJ9qhaMkzEyqr2u

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-210.md from inside the repo you want the changes in.

⬇ Download capture-thread-210.md