diff --git a/README.md b/README.md index 48bff01..d6b6b49 100644 --- a/README.md +++ b/README.md @@ -92,9 +92,11 @@ Magnotia is a Tauri 2 desktop app with three layers: │ Stores, i18n, Tailwind CSS │ ├─────────────────────────────────────────────────────────────────┤ │ Tauri 2 runtime (src-tauri/) │ -│ Commands: audio, clipboard, diagnostics, hotkey, live, llm, │ -│ meeting, models, paste, power, profiles, tasks, │ -│ transcription, transcripts, update, windows │ +│ Commands: audio, clipboard, diagnostics, feedback, fs, │ +│ hardware, hotkey, intentions, live, llm, meeting, │ +│ models, nudges, paste, profiles, rituals, tasks, │ +│ transcription, transcripts, tts, update, windows │ +│ Utility modules (no commands): mod, power, security │ │ Plugins: global-shortcut, dialog, opener, updater, │ │ window-state │ ├─────────────────────────────────────────────────────────────────┤ @@ -114,7 +116,7 @@ magnotia/ ├── Cargo.toml # workspace root ├── src-tauri/ # Tauri app (main binary + commands) │ ├── src/ -│ │ ├── commands/ # 18 Tauri command modules +│ │ ├── commands/ # 22 Tauri command modules + 3 utility modules (`mod`, `power`, `security`) │ │ ├── lib.rs # app entry, setup, command registration │ │ ├── tray.rs │ │ └── main.rs @@ -179,21 +181,28 @@ magnotia/ | `audio` | Device enumeration, native capture start/stop, audio-samples persistence | | `clipboard` | Cross-platform clipboard write (arboard) | | `diagnostics` | Panic hook, frontend error log, crash file listing, diagnostic report bundler | +| `feedback` | Thumbs / correction capture on AI-generated output; few-shot example store for prompt conditioning | +| `fs` | Thin filesystem write for the OS save-dialog path (UTF-8 text, dialog-constrained) | | `hardware` | `probe_system`, `rank_models` | | `hotkey` | `start_evdev_hotkey`, `update_evdev_hotkey`, `stop_evdev_hotkey`, `check_hotkey_access`, `is_wayland_session` | +| `intentions` | Implementation-intention rule CRUD (if-then automation: time-of-day, task-completed, morning-triage triggers) | | `live` | Live streaming transcription session lifecycle + speech-gate tuning | | `llm` | Tier recommend, model check / download / load / unload / delete, status, `cleanup_transcript_text_cmd`, `extract_tasks_from_transcript_cmd` | | `meeting` | `detect_meeting_processes` (process-list poll) | | `models` | Whisper + Parakeet model download / load / check / default-id resolution, runtime capabilities API, pre-warm | +| `nudges` | Margot soft-touch nudge delivery via `tauri-plugin-notification`; main-window-only guard | | `paste` | `paste_text` (copy + keystroke), `detect_paste_backends`, Wayland focus-race mitigation against the preview overlay | -| `power` | macOS `PowerAssertion` guard during long sessions (blocks App Nap) | | `profiles` | Profile CRUD, profile-terms CRUD, learn-terms-from-edit | +| `rituals` | Start- and shutdown-ritual sentinels (last-shown date for the morning-triage modal) | | `tasks` | Task CRUD, subtask CRUD, `decompose_and_store`, `extract_tasks_from_transcript_cmd` | | `transcription` | `transcribe_pcm`, `transcribe_file`, `transcribe_pcm_parakeet` | | `transcripts` | Transcript CRUD + FTS5 search | +| `tts` | Platform-native Read Page Aloud (`spd-say` / `say` / PowerShell), with cancellable child-process tracking | | `update` | Tauri-plugin-updater check / install | | `windows` | `open_task_window`, `open_viewer_window`, `open_preview_window`, `close_preview_window` | +Utility modules in the same directory (no `#[tauri::command]` attributes; helpers consumed by the command modules above): `mod` (registry), `power` (macOS `PowerAssertion` guard against App Nap during long sessions), `security` (`ensure_main_window` guard). + ### Frontend (src/) - **SvelteKit + Svelte 5 runes** (`$state`, `$derived`, `$effect`).