Skip to content

Comments

fix: rename Hyprnote to Char in user-facing text#4108

Merged
yujonglee merged 8 commits intomainfrom
devin/1771546818-rename-hyprnote-to-char
Feb 20, 2026
Merged

fix: rename Hyprnote to Char in user-facing text#4108
yujonglee merged 8 commits intomainfrom
devin/1771546818-rename-hyprnote-to-char

Conversation

@devin-ai-integration
Copy link
Contributor

@devin-ai-integration devin-ai-integration bot commented Feb 20, 2026

Rename Hyprnote to Char in user-facing text

Summary

Targeted rename of user-visible "Hyprnote" references to "Char" across ~30 files. Addresses #4104.

This is a conservative first pass focusing on safe, user-facing text only: window titles, tray menu labels, MCP server descriptions, Flatpak metadata, PDF export footer, OpenAPI title, monitoring names, doc comments, and image alt text. Infrastructure, provider IDs, and code identifiers are intentionally untouched.

What changed:

  • Window title: "Hyprnote" → "Char"
  • Tray menu: "Open Hyprnote" → "Open Char"
  • Settings: "Start Hyprnote at login" → "Start Char at login"
  • MCP server descriptions and prompt names
  • Flatpak display name and description text
  • Flatpak GitHub URLs: fastrepl/hyprnotefastrepl/char
  • README GitHub/DeepWiki URLs: fastrepl/hyprnotefastrepl/char
  • PDF export footer, gitignore comment, OpenAPI title
  • OpenStatus monitoring names
  • Importer display names, eval crate description
  • Image alt text updates, doc comment updates

Intentionally preserved:

  • Bundle identifiers (com.hyprnote.*)
  • Domain URLs (hyprnote.com, api.hyprnote.com)
  • Homebrew tap (fastrepl/hyprnote/hyprnote@nightly)
  • Provider IDs and display names (id: "hyprnote", providerName: "Hyprnote" — must match backend)
  • Rust type/adapter names, serde renames
  • File/directory names, image paths
  • Twitter handle (@tryhyprnote)
  • URL schemes, env vars, S3 buckets, CrabNebula project, sidecar names
  • Stripe entitlement keys, data directories

Review & Testing Checklist for Human

  • Importer names say "Char v0": Changed "Hyprnote v0 - Stable""Char v0 - Stable" (and Nightly). Since these refer to importing from the old app version, users with the old "Hyprnote" installed may find "Char v0" confusing. Verify this is the desired label.
  • "Hyprnote AI" label still appears in chat: chat/body/empty.tsx has the alt text updated to "Char" but the visible label Hyprnote AI was left unchanged. Confirm whether this should also be renamed.
  • "Hyprnote Cloud (Beta)" unchanged in STT settings: The cloud provider label and description in stt/configure.tsx still say "Hyprnote Cloud". Confirm whether these should be renamed to "Char Cloud".
  • Provider cards show "Hyprnote": The providerName="Hyprnote" props are preserved in LLM/STT settings. This is intentional (matches backend), but verify this is the desired UX.

Test plan:

  1. Build desktop app and verify window title shows "Char"
  2. Check tray menu shows "Open Char"
  3. Verify settings show "Start Char at login"
  4. Test PDF export footer says "Exported from Char"
  5. Check Flatpak metadata displays "Char" correctly
  6. Verify importer shows correct labels for old data sources

Notes

Link to Devin run: https://app.devin.ai/sessions/19d84ea418574953857fe7dcd5b4efc2
Requested by: @ComputelessComputer

This is a conservative first pass. Additional renames (blog content, scripts, etc.) can be done in follow-up PRs once infrastructure dependencies are confirmed.

Addresses #4104 - Updates user-visible references from 'Hyprnote' to 'Char'
across 225 files including:

- README.md, AGENTS.md, CONTRIBUTING.md, LICENSE
- Web/marketing content and documentation
- Desktop app UI text (settings, onboarding, toasts)
- CI workflow artifact names
- Flatpak metadata user-visible fields
- API descriptions and openapi docs
- Blog articles and changelog entries
- Scripts and configuration files

Preserved:
- Domain URLs (hyprnote.com still active)
- App bundle identifiers (com.hyprnote.*)
- URL schemes (hyprnote://)
- Provider IDs (technical identifiers matching backend)
- Rust adapter types (AdapterKind::Hyprnote)
- User testimonials/quotes
- Generated files, lock files, migration files

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
@devin-ai-integration
Copy link
Contributor Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR that start with 'DevinAI' or '@devin'.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

@netlify
Copy link

netlify bot commented Feb 20, 2026

Deploy Preview for hyprnote-storybook canceled.

Name Link
🔨 Latest commit 91a1211
🔍 Latest deploy log https://app.netlify.com/projects/hyprnote-storybook/deploys/6997b3b41ad8d60008062766

@netlify
Copy link

netlify bot commented Feb 20, 2026

Deploy Preview for hyprnote canceled.

Name Link
🔨 Latest commit 91a1211
🔍 Latest deploy log https://app.netlify.com/projects/hyprnote/deploys/6997b3b434413400083e15b0

devin-ai-integration bot and others added 7 commits February 20, 2026 00:36
Reverts changes that would break compilation or depend on
infrastructure being renamed:
- owhisper-client: HyprnoteAdapter type name (Rust compilation fix)
- listener plugins: HyprnoteAdapter references
- fs-db: .hyprnote data directory (needs migration)
- windows events: hyprnote:// URL scheme in tests
- scripts: S3 bucket names, process names, CLI flags
- supabase test: entitlement lookup key
- info.sh: fallback paths for old installations

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
Reverts all Rust file changes that renamed type names, enum variants,
and code identifiers. Will re-apply only safe doc comment and
user-facing string changes in next commit.

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
Changes only user-facing strings, doc comments, and descriptions:
- OpenAPI title: Hyprnote AI API → Char AI API
- Window title: Hyprnote → Char
- Tray menu: Open Hyprnote → Open Char
- MCP server descriptions
- PDF export footer
- Gitignore comment
- LLM model description

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
Previous bulk rename was too aggressive - changed domains, emails,
file paths, Rust types, and infrastructure references. Starting over
with a careful, targeted approach.

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
Targeted rename of product name in:
- UI display text (window titles, menu items, settings labels)
- OpenAPI title and MCP server descriptions
- Doc comments and code descriptions
- PDF export footer, gitignore comment
- Openstatus monitoring names
- Flatpak desktop/yml display names

Preserves all infrastructure references (domains, emails, bundle IDs,
URL schemes, Rust type names, provider IDs, etc.)

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
- GitHub URLs: fastrepl/hyprnote -> fastrepl/char
- DeepWiki URL: fastrepl/hyprnote -> fastrepl/char
- Flatpak: user-visible name and description
- Preserves homebrew tap, domain URLs, bundle IDs

Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
Co-Authored-By: john@hyprnote.com <john@hyprnote.com>
@devin-ai-integration devin-ai-integration bot changed the title fix: rename Hyprnote to Char across codebase fix: rename Hyprnote to Char in user-facing text Feb 20, 2026
@yujonglee yujonglee merged commit 2886fe4 into main Feb 20, 2026
16 of 17 checks passed
@yujonglee yujonglee deleted the devin/1771546818-rename-hyprnote-to-char branch February 20, 2026 01:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants