Rebrand user-facing copy from Mike/MikeOSS to Gary/GaryOSS
From the PR description
Summary
Minimal, behavior-preserving rebrand from Mike/MikeOSS to Gary/GaryOSS. No changes to auth, database schema, AI provider logic, document processing, or API routes. No new dependencies. AGPL-3.0-only license preserved.
What changed (24 files)
README - replaced with the GaryOSS title and the requested one-line description ("A private, hosted legal AI workspace for one lawyer or small firm..."). Setup and license sections preserved.
Package names
frontend/package.json:mike→garybackend/package.json:mike-backend→gary-backend- Lockfile
namefields updated to match.
Env / storage defaults
backend/.env.example:R2_BUCKET_NAME=mike→garybackend/src/lib/storage.tsandfrontend/src/lib/storage.ts: default fallback?? "mike"→?? "gary"; doc comments updated.
User-facing UI copy
frontend/src/app/layout.tsx-<title>metadata:Mike - AI Legal Platform→GaryOSS - AI Legal Platformfrontend/src/app/global-error.tsx-<title>Something went wrong - Mike</title>→... - GaryOSSfrontend/src/components/site-logo.tsx- visible<span>Mike</span>→Gary; landing URLhttps://mikeoss.com→https://garyoss.comfrontend/src/app/components/shared/AppSidebar.tsx- sidebar brand textMike→Garyfrontend/src/app/components/workflows/WorkflowList.tsx- system-workflow tagMike→Garyfrontend/src/app/components/tabular/AddColumnModal.tsxandWFEditColumnModal.tsx- column-prompt placeholder copy...describe what Mike should extract...→...what Gary should extract...frontend/src/app/(pages)/account/models/page.tsx- "running your own instance of Mike" → "...of GaryOSS"frontend/src/app/signup/page.tsx- terms/privacy linksmikeoss.com→garyoss.com
AI persona / DOCX author (visible to users)
backend/src/lib/chatTools.ts- system prompt:You are Mike, an AI legal assistant...→You are Gary, ...;applyTrackedEditsauthor argument"Mike"→"Gary"backend/src/routes/tabular.ts- tabular system promptYou are Mike, ...→You are Gary, ...backend/src/lib/docxTrackedChanges.ts- default tracked-changes author"Mike"→"Gary"(this is what shows up in Word's Review pane)backend/src/index.ts- startup logMike backend running on port ...→Gary backend running...
Cosmetic comments / headers (no behavior)
frontend/src/app/components/shared/types.ts,PeopleModal.tsxdoc comment,backend/migrations/000_one_shot_schema.sqlheader comment.
What was intentionally NOT changed
To keep the PR small and avoid touching ~50+ files, internal-only symbols are left alone:
- TypeScript type names:
MikeDocument,MikeProject,MikeChat,MikeFolder,MikeMessage,MikeWorkflow,MikeCitationAnnotation,MikeEditAnnotation,MikeChatDetailOut,MikeDocumentVersion - Module/file names:
frontend/src/app/lib/mikeApi.ts,frontend/src/components/chat/mike-icon.tsx - React component name:
MikeIcon(and its no-opmikeboolean prop) - Function name:
MikeLayoutin(pages)/layout.tsx - Drag-and-drop MIME types:
application/mike-doc,application/mike-folder(purely internal data-transfer keys) - localStorage key:
mike.selectedModel(changing it would invalidate every existing user's saved model) - Internal change-id prefix:
mike-${editIdx}-...indocxTrackedChanges.ts
These are all internal identifiers with no user visibility. They can be renamed in a follow-up "internal rename" PR.
Out of scope (not touched, per request)
- Auth, Supabase schema, AI provider clients, document processing pipeline, API route shapes
- API key management or Cloudflare architecture changes
- AGPL license notice (preserved verbatim in
LICENSEandpackage.jsonfiles)
Test plan
-
npm run build --prefix backend- passes (tsc clean) -
npm run build --prefix frontend- passes (Next 16 / Turbopack; requiredNEXT_TURBOPACK_EXPERIMENTAL_USE_SYSTEM_TLS_CERTS=1and placeholder Supabase env vars in this sandbox to satisfy prerendering, neither related to the rebrand) -
npm run lint --prefix frontend- same 108 pre-existing problems asmain; no new lint issues introduced by this branch (verified by linting only the files I touched) - Manual UI smoke (couldn't run dev server in sandbox): visit
/,/account/models,/signup, sidebar - confirm "Gary" / "GaryOSS" replaces all visible "Mike" copy and the title bar shows "GaryOSS - AI Legal Platform" - Send a chat message - confirm the assistant introduces itself as "Gary" rather than "Mike"
- Apply tracked-changes edit to a DOCX, open in Word - confirm the change author shows "Gary"
https://claude.ai/code/session_01McEfVnpbGdMs5TgeTM7P3R
Generated by Claude Code
Our analysis
Rebrand Mike to Gary across user-facing surfaces — read the full analysis →
Think the analysis missed something the PR description covers?
Commits in this PR (1)
| SHA | Subject | Author | Date | |
|---|---|---|---|---|
dae6f594 | Rebrand user-facing copy from Mike/MikeOSS to Gary/GaryOSS | Claude | 2026-05-07 | ↗ GitHub |
commit bodyUpdates user-visible branding (HTML titles, sidebar/logo text, AI system prompts, DOCX tracked-changes author, signup links, placeholder copy) and renames the frontend/backend npm packages to gary and gary-backend. Default R2 bucket name in env example and storage.ts fallbacks changes from "mike" to "gary". Internal type names (MikeDocument, MikeIcon, mikeApi module, drag/drop MIME types, localStorage key, change-id prefix) are intentionally left unchanged to keep this PR small; they can be renamed in a follow-up. https://claude.ai/code/session_01McEfVnpbGdMs5TgeTM7P3R | ||||
Capture this PR into my fork
Download a Markdown prompt that tells Claude how to port every
commit in this PR into your working tree. Run it via
claude -p < capture-pull-1.md from
inside the repo you want the changes in.