- Move Windows storage to DPAPI-backed local app data - Keep non-Windows storage on the native credential store - Update docs and UI copy to describe the new behavior
Thisper
Thisper is a typing-first communication translator. It rewrites raw text into clearer text while staying as close as possible to the original meaning, voice, uncertainty, and tone.
Current Desktop Scope
- Desktop text-to-text rewrite UI with diff review
- Rewrite modes:
Preserve Voice,Clean,Readable,Formal,Concise - Gemini-backed cloud rewrite provider with typed model selection
- Secure Gemini API key storage through native platform protection
- Global cross-app rewrite shortcut:
Ctrl + Alt + R - System tray support with background operation
- Non-destructive clipboard replacement flow: selected text is only replaced after the full rewrite succeeds
- URL protection: links are treated as protected content and must survive rewrites unchanged
- Local-only runtime observability for rewrite attempts, failures, model use, and last error category
Desktop Workflow
Main Window
- Paste or type raw text.
- Choose a mode and model.
- Run
Rewrite. - Review either the final output or the diff.
- Copy the result.
Cross-App Rewrite
- Select plain text in another app.
- Press
Ctrl + Alt + R. - Thisper copies the selection, rewrites it in
Preserve Voice, then pastes the full replacement only after the provider returns a complete result. - The previous text clipboard contents are restored after the operation when they were available as plain text.
If no API key is configured, Thisper brings the main window forward instead of attempting a destructive rewrite.
Tray And Background Behavior
- Thisper starts with a tray icon on desktop platforms where tray icons are supported.
- Closing the window does not quit the app by default. The first close shows a tray hint, and later closes hide the window to the tray.
- The tray menu provides:
Show ThisperRun Clipboard RewriteQuit
- The global shortcut remains active while the window is hidden.
Quitfrom the tray exits the app fully.
Known Limitations
- Cross-app rewrite is designed for plain-text targets first. Rich editors, browser text surfaces, and heavily customized inputs are best-effort.
- Secure fields and some application surfaces may block selection, copy, paste, or synthetic key events.
- Clipboard restoration currently preserves prior plain-text clipboard contents. Non-text clipboard formats are not yet restored.
- If a rewrite attempts to drop a protected URL, Thisper now fails that rewrite instead of silently removing the link.
- Model fidelity still depends on prompt behavior. High-value detail protection is planned, but not part of the current Phase 2 completion scope.
Setup
Prerequisites
- Rust stable toolchain
- Node.js LTS
- A Gemini API key from Google AI Studio
Credentials
Use the in-app Settings dialog to save the Gemini API key using native platform protection.
- Windows: DPAPI-encrypted local app storage tied to your Windows user account
- Other supported desktop platforms: native credential store backend
For development, Thisper also accepts:
$env:GEMINI_API_KEY = "YOUR_API_KEY_HERE"
Run Development
npm install
npm run tauri dev
License Auditing
Thisper includes automated license-audit commands:
npm run licenses:npm
npm run licenses:rust
npm run licenses:all
Current status:
- automation is present
- the final commercial allowlist policy is still pending
- current Rust audit output includes weak-copyleft and platform-stack licenses that need an explicit policy decision before monetization
Architecture
- Frontend: Vanilla TypeScript, HTML, CSS, Vite
- Backend: Tauri v2, Rust
- Provider boundary: pluggable rewrite provider trait
- Current provider: Gemini
- Desktop integration: global shortcut, clipboard pipeline, tray/background mode
Project Tracking
See:
THISPER_STATUS.mdfor current completion statusLEGACY_HARDWARE_VALIDATION.mdfor the Phase 2 validation checklist and reportPHASE3_SPEECH_PLAN.mdfor the queued next-phase speech scope
Description
Text to Text translation layer for messy brains and writing styles. makes content more digestible for others
Thisper RC1
Latest
Languages
Rust
58%
Python
15.8%
TypeScript
13%
CSS
7.7%
HTML
5.5%