App Profiles tell Trueears how to format your dictated text depending on which app you’re using. When you dictate in Slack, you get casual chat-style output. When you dictate in VS Code, you get clean technical prose. No configuration needed for the apps Trueears ships with — it just works.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/devv-shayan/Trueears/llms.txt
Use this file to discover all available pages before exploring further.
How App Detection Works
Every time you pressCtrl+Shift+K, the Rust backend (window.rs) calls the OS to identify the foreground window:
- Windows: Win32
GetForegroundWindowreturns the window handle;GetWindowTextretrieves the title; the executable path is resolved from the process ID - Linux (X11):
xdotool getactivewindowretrieves the window ID and properties - Linux (Wayland): XDG Desktop Portal provides window information
app_name, window_title, executable_path, and (for browser windows) the active URL are passed to the frontend. AppProfileService then matches this against your profiles using a priority order:
- URL match — most specific; used for browser-based apps (Gmail, WhatsApp, Google Docs)
- Window title pattern — regex match against the window title
- Executable match — matches the
.exename or process stem
Pre-Configured Profiles
Trueears ships with profiles for the most common apps. These are applied automatically — no setup required.| Application | Executable | Formatting Style |
|---|---|---|
| VS Code | Code.exe | Technical docs, minimal prose, exact filename casing |
| Cursor | Cursor.exe | Technical docs, minimal prose, exact filename casing |
| Slack | slack.exe | Casual, short, friendly, conversational |
| Discord | Discord.exe | Casual, short, friendly, conversational |
| Microsoft Teams | Teams.exe | Business chat, clear and concise |
| Outlook | OUTLOOK.EXE | Professional email tone, concise structure |
| Gmail | chrome.exe + mail.google.com | Professional email, clear paragraphs |
| Notion | Notion.exe | Structured notes, bullets where natural, light Markdown |
| OneNote | ONENOTE.EXE | Structured notes, bullets where helpful |
| Word | WINWORD.EXE | Formal document tone, proper grammar |
| Google Docs | chrome.exe + docs.google.com | Formal document tone, proper grammar |
chrome.exe + web.whatsapp.com | Casual, friendly, emoji-friendly |
Browser-based apps (Gmail, WhatsApp, Google Docs) are matched using the active tab URL, so the same Chrome process can map to different profiles depending on what site is open.
Language Override
Each profile can override the global transcription language. This is ideal for multilingual workflows. Example use cases:- Spanish for WhatsApp chats
- English for VS Code
- French for your email client
- Auto-detect for general use
- Go to Settings > App Profiles
- Create or edit a profile
- Under Language Override, click Change
- Select a language (shown with flag icons) or leave as Default
- Click Save
Custom System Prompts
Each profile has a system prompt — a short instruction that tells the LLM how to format your text for that app. The prompt is appended to a base instruction that always instructs the model to format rather than respond. Examples of effective prompts:Creating a Custom Profile
Add a new profile
Click Add Profile. You can search for the app by name — Trueears scans installed applications and surfaces a list of popular apps.
Enter the executable name
For desktop apps, enter the
exe_name (e.g., notepad.exe). For browser-based apps, select the browser and enter the site URL (e.g., linear.app).Write a system prompt
Describe how you want text formatted in this app. Keep it concise — one or two short sentences is enough.
Set a language override (optional)
If you dictate in a specific language in this app, select it under Language Override.
Reset to Defaults
The Reset to Defaults button in Settings > App Profiles clears all custom profiles and removes cached profile data. Use this if:- The LLM is responding conversationally instead of formatting (common symptom of a corrupted prompt)
- You want to start fresh after experimenting with custom prompts
- Profiles are not matching correctly after an app update
Frequently Asked Questions
What if my app isn't listed?
What if my app isn't listed?
Trueears will fall back to the default formatting prompt, which cleans up transcribed text without any app-specific style. You can create a custom profile at any time to add formatting instructions for any application.
How do I find the exe_name for my app?
How do I find the exe_name for my app?
The quickest way is to open Task Manager (Windows:
Ctrl+Shift+Esc), find your app under the Details tab, and copy the value in the Name column. For most apps this is something like notepad.exe or slack.exe. You can also right-click the app’s taskbar icon and choose Properties to see the executable path.Can I have multiple profiles for the same app?
Can I have multiple profiles for the same app?
For desktop apps, only one profile per executable is supported. For browser-based apps, you can create multiple profiles for the same browser executable as long as each profile targets a different URL (e.g., one for
gmail.com and one for outlook.office.com).Why is the wrong profile being matched?
Why is the wrong profile being matched?
Check that the
exe_name exactly matches what appears in Task Manager. If you’re using a browser-based app, make sure the URL in the profile matches the site (e.g., web.whatsapp.com rather than whatsapp.com). You can open the browser’s developer console and check window.location.href to confirm the exact URL Trueears will see.The LLM is responding instead of formatting — what do I do?
The LLM is responding instead of formatting — what do I do?
Go to Settings > App Profiles and click Reset to Defaults. This clears any corrupted system prompts. You can then recreate your custom profiles with simpler, more directive prompt text.
