feat: CJK word count, pipeline timing, history modal, auto-mute, auto-dictionary#1
Merged
WEIFENG2333 merged 2 commits intomainfrom Feb 28, 2026
Merged
Conversation
…-dictionary - Add universal word count utility supporting mixed CJK + Latin text - Record STT/LLM call durations and display in history detail view - Redesign history detail as modal overlay instead of full-page navigation - Add auto-mute system audio during recording (macOS/Linux) - Add auto-dictionary learning from transcription output - Redesign OCR prompt to extract structured context (key terms, app, task) - Add auto-mute toggle in Audio settings - Add auto-learn dictionary toggle in Context settings - Update i18n translations (en/zh) for new features - Comprehensive CLAUDE.md rewrite with conventions and pitfalls Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering>
- Capture 6 new macOS AX attributes: AXRoleDescription, AXDescription/ AXTitle, AXPlaceholderValue, AXSelectedTextRange, AXNumberOfCharacters, AXInsertionPointLineNumber - Show cursor position to LLM with "|" marker in field text - Show selected text with [SELECTED: ...] marker for replacement context - Add cursor-centered truncation for long field text (keeps context around cursor) - Include field placeholder and label in LLM prompt for input purpose hints - Enhance Windows UI Automation: capture Element.Name, HelpText, caret position - Display new metadata in history detail: role description, field label, placeholder, cursor position, selection range - Update all type declarations and i18n translations Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
countWords()utility supporting mixed CJK + Latin text (CJK characters count individually, Latin words by whitespace)Changed files (20 files, +1463/-374)
src/utils/wordCount.ts— New CJK-aware word counting utilityelectron/main.ts— Auto-mute, auto-dictionary extraction, pipeline timingelectron/llm-service.ts— Redesigned OCR promptelectron/preload.ts— NewonDictionaryAutoAddedeventelectron/config-store.ts— New config defaultssrc/types/config.ts— Added timing, auto-learn fields to typessrc/types/electron.d.ts— Updated PipelineResult + new event typesrc/services/pipeline.ts— Pass through timing + auto-learned termssrc/hooks/useRecorder.ts— Use countWords, save timing to historysrc/pages/HistoryPage.tsx— Modal overlay + timing display + auto-learned termssrc/pages/settings/AudioSettings.tsx— Auto-mute togglesrc/pages/settings/ContextSettings.tsx— Auto-learn dictionary togglesrc/i18n/locales/{en,zh}.json— New translation keysTest plan
🤖 Generated with Claude Code