Capture the thinking behind your code
- JavaScript 53.7%
- Python 44.7%
- Batchfile 0.6%
- CSS 0.6%
- PowerShell 0.3%
- Other 0.1%
npm ci fails because the lock file was generated with Node 22 locally but CI runs Node 20, causing dependency resolution mismatches. Using npm install --ignore-scripts avoids the strict lock file check and prevents root package.json preinstall hook recursion. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .forgejo/workflows | ||
| .github | ||
| backend | ||
| docs | ||
| frontend | ||
| src | ||
| web | ||
| .gitignore | ||
| .npmrc | ||
| ARCHITECTURE.md | ||
| CLAUDE.md | ||
| CLAUDE_CLI_INTEGRATION_GUIDE.md | ||
| create_app_icons.py | ||
| create_icon.py | ||
| create_shortcut.bat | ||
| DEV_GUIDE.md | ||
| GITHUB_SETUP.md | ||
| install.bat | ||
| kill-port.ps1 | ||
| MIGRATION_GUIDE.md | ||
| package-lock.json | ||
| package.json | ||
| prd.md | ||
| PROJECT_COMPLETE.md | ||
| rdp.ico | ||
| rdp_icon_16.png | ||
| rdp_icon_32.png | ||
| rdp_icon_48.png | ||
| rdp_icon_64.png | ||
| rdp_icon_128.png | ||
| rdp_icon_256.png | ||
| README.md | ||
| RECOVERY_ROADMAP.md | ||
| requirements.txt | ||
| ROADMAP.md | ||
| run.bat | ||
| run.ps1 | ||
| setup-github.bat | ||
| setup-github.ps1 | ||
| setup.py | ||
| simple_transcript_test.py | ||
| start.bat | ||
| STARTUP_GUIDE.md | ||
| tasks.md | ||
| test_ffmpeg_after_restart.py | ||
| test_transcription.py | ||
Utterscribe
Capture the thinking behind your code.
Record developer discussions, transcribe with AI, and automatically extract decisions, action items, and insights.
Features
- AI Transcription — Local Whisper speech-to-text with optional cloud AI enhancement (Claude, GPT-4, Gemini)
- Decision Extraction — Automatically identifies key decisions, alternatives, and reasoning
- Action Items — Extracts assignees, priorities, due dates, and status from transcripts
- Multi-Provider AI — Claude CLI, Anthropic API, OpenAI, Google Gemini, or local Ollama
- Speaker Identification — Automatic diarization identifies who said what
- Semantic Search — AI-powered search across all transcripts (Ctrl+K)
- Full-Text Search — BM25-scored inverted index with highlighted snippets
- "Ask Your Transcripts" RAG — Ask questions and get AI answers with source citations
- Dev Integrations — Create GitHub issues, Jira tickets, Slack messages, and Linear issues
- Multi-Format Export — Markdown, PDF, JSON, and plain text
- Sprint Summaries — AI-generated summaries across selected sessions
- Webhooks — Notifications on transcription, insights, and session events
- Tags & Favorites — Organize and star important transcripts, decisions, and actions
- Session Templates — Pre-built templates for standups, code reviews, retros, 1:1s, and more
- System Audio Capture — Record microphone, system audio, or both (WASAPI loopback)
- Crash Recovery — Periodic flush saves partial recordings if the app crashes
- Keyboard Shortcuts — Full keyboard navigation with
?shortcut cheat sheet - Privacy First — Local processing by default, cloud AI and telemetry are opt-in
- In-App Feedback — Submit bug reports and feature requests directly from the app
- Auto-Updates — Automatic background updates via electron-updater
- License Management — Free tier + Pro tier with Keygen license validation
Download
| Platform | Download |
|---|---|
| Windows | Utterscribe-Setup.exe |
| macOS | Utterscribe.dmg |
| Linux (AppImage) | Utterscribe.AppImage |
| Linux (deb) | utterscribe.deb |
| Linux (snap) | utterscribe.snap |
Quick Start (Development)
Prerequisites
- Node.js 18+
- Python 3.10+
- FFmpeg (for Whisper)
Backend
cd backend
pip install -r requirements.txt
python main.py
Frontend
cd frontend
npm install
npm start
Electron (after React dev server loads)
cd frontend
npm run electron
Build for distribution
cd frontend
npm run dist
Tech Stack
| Layer | Technology |
|---|---|
| Desktop | Electron + React |
| UI | DaisyUI + Tailwind CSS + Framer Motion |
| Backend | FastAPI (Python) |
| Audio | SoundDevice + PyAudioWPatch (WASAPI) |
| STT | OpenAI Whisper (local) |
| AI | Claude CLI / Anthropic API / OpenAI / Gemini / Ollama |
| Search | Inverted index (BM25) + Embeddings (cosine similarity) |
| State | React Context (useReducer) + localStorage |
| IPC | WebSocket (real-time) + REST API |
Project Structure
utterscribe/
├── frontend/ # Electron + React app
│ ├── electron/ # Main process (window mgmt, IPC, license, telemetry, sentry)
│ ├── src/ # React components, contexts, services
│ └── public/ # Static assets
├── backend/ # FastAPI server
│ └── main.py # All API endpoints
├── src/ # Shared Python modules
│ ├── audio/ # Recording (mic, system, both)
│ ├── transcription/ # Whisper + AI enhancement pipeline
│ ├── providers/ # AI provider abstraction (5 providers)
│ ├── search/ # Full-text + semantic search engines
│ ├── export/ # Multi-format export (MD, PDF, JSON, TXT)
│ ├── integrations/ # GitHub, Slack, Jira, Linear, webhooks
│ ├── project/ # Project/session management
│ └── settings/ # Settings persistence
├── web/ # Marketing website (Vite + React + Express)
│ ├── src/ # SPA components, pages, API routes
│ ├── k8s/ # Kubernetes deployment manifests
│ └── Dockerfile
└── projects/ # User data (gitignored)
License
Proprietary. Free tier available for personal and commercial use. Pro features require a paid license.
See utterscribe.com/pricing for details.