fedec65/bettercallmitch
Mike fork rebuilt as a Swiss-jurisdiction legal platform, with MCP server integration, four-language i18n, and a pre-flight privilege scanner.
fedec65's bettercallmitch fork grafts the author's separate BetterCallClaude project into the Mike codebase to produce a product aimed squarely at Swiss law firms. The defining commit adds an MCP HTTP client wired to seven Swiss legal databases (BGE, entscheidsuche, fedlex-sparql, onlinekommentar, and others), nine OpenAI-style tool definitions, and a 356-line Anwaltsgeheimnis scanner that blocks outbound MCP calls when it detects attorney-client privilege markers in DE/FR/IT/EN. The system prompt is completely rewritten with Gutachtenstil reasoning, BGE/ATF/DTF citation standards, and cantonal awareness across all 26 cantons.
Subsequent work hardens the localization layer: a next-intl v4 scaffold across DE/EN/FR/IT, followed by a five-commit cleanup that adds roughly 90 translation keys, fixes namespace collision bugs from regex-driven sweeps, and patches a locale-cookie detection quirk specific to localePrefix: 'never' mode.
The rebrand passes (README overhaul with screenshots, Mitch → BetterCallMitCH) and a snowflake icon swap show the product identity taking shape alongside the technical work.
What's in it
- Swiss legal toolkit A suite of Swiss legal tools and workflows, plus a Gutachtenstil-oriented system prompt, aimed at Swiss practice rather than generic legal Q&A.
- Anwaltsgeheimnis privacy scanner A privacy layer built around Swiss attorney-client privilege expectations, screening content before it leaves the user's session.
- Local LLM via Ollama Run models locally through Ollama with dynamic model discovery - useful when confidentiality rules out hosted inference.
- 20-agent persona system A roster of agent personas users can switch between, shaping how the assistant approaches a given task.
- Per-chat canton selector Pick the canton at the chat level, so jurisdiction-specific behavior travels with the conversation.
- Four-language UI (DE/EN/FR/IT) Full interface coverage for Switzerland's main working languages, with a follow-up pass tightening translations and locale handling.
- BetterCallMitCH rebrand End-to-end rename from Mitch to BetterCallMitCH across the UI, prompts, and docs, paired with a refreshed README and a new snowflake mark.
Direction
compliancei18npersonas
Activity
Threads of work (detailed view)
fedec65 makes the multilingual build actually multilingual
A translation pass closes the gap between a fork that claims four languages and one that delivers them.
Five-commit i18n cleanup: ~90 new keys, namespace fixes, locale cookie fallback
After a next-intl v4 scaffold landed ~112 keys per language, five follow-up commits over roughly 36 hours worked through the bugs it left behind. The most reusable fix addresses a real quirk in `localePrefix: 'never'` mode that anyone using next-intl v4 with that setting will hit.
fedec65 wraps Mitch in a Swiss snowflake
The fork swaps its app icon and favicon for a snowflake and pairs it with a rename to BetterCallMitCH.
12-blade SVG spinner swapped for snowflake PNG
fedec65 replaced the custom MikeIcon SVG with a snowflake PNG, cutting ~290 lines of inline SVG path data. State indication now uses CSS filter tinting on the raster image rather than SVG fill changes.
fedec65 puts the whole fork on the front page
A fork that was opaque from the outside is now fully documented - and what it documents is a privacy-tiered, multilingual legal AI you can run yourself.
fedec65 stamps a Swiss identity on its Mike fork
A sweeping rename turns "Mitch" into "BetterCallMitCH" - and the odd capitalization is a deliberate wink at Switzerland.
Mitch renamed to BetterCallMitCH across 17 files
fedec65 ran a string-only rename pass replacing "Mitch" with "BetterCallMitCH" across UI strings, i18n files, system prompt, and docs. Internal identifiers like `MikeChat` and `mikeApi` were deliberately left unchanged.
fedec65 gives Mike a bench of specialist lawyers - and a private mode to run them on
One fork turns a single chatbot into a roster of legal personas you pick per conversation, with an option to keep the whole thing off the cloud.
Ollama provider, agent registry, canton UX, i18n, and test infrastructure in one commit
fedec65 landed a 6,150-line second-phase commit bundling six independent subsystems: a local Ollama LLM provider with dynamic model discovery, a 20-agent persona registry, per-chat canton context, next-intl i18n scaffolding, Supabase local dev setup, and the first backend test suite. Several pieces have value outside the Swiss legal context; extracting them requires manual splitting.
fedec65 retools Mike for Swiss law, with a privilege tripwire
A fork that plugs into Switzerland's federal and cantonal case law, then refuses to let privileged client detail leave the building.
Mike → Mitch: Swiss legal pivot merges BetterCallClaude in one 1,159-line commit
Commit 6595dfb drops four new modules that reorient the entire Mike codebase toward Swiss jurisdiction: an MCP HTTP client, nine legal tool definitions, an attorney-client privilege scanner, and five prebuilt Swiss workflows. The system prompt is fully replaced with a multi-page Swiss legal identity.