|
25 | 25 | ## ✨ Features |
26 | 26 |
|
27 | 27 | - 🧠 **Simplified Daily Reflections**: Single free-form text entry to capture your thoughts |
| 28 | +- 📝 **Quick Capture**: Save notes instantly without AI processing for raw thoughts and meeting notes |
28 | 29 | - 🎤 **Voice Entry**: Record audio notes with local-first speech-to-text transcription |
29 | 30 | - 📊 **Weekly Reviews**: AI-generated summaries of your week with themes and patterns |
30 | 31 | - 🔍 **Searchable Archive**: Full-text search across all your memories (including voice transcripts) |
@@ -80,46 +81,105 @@ Perfect for sensitive work, offline environments, or privacy-conscious users. |
80 | 81 |
|
81 | 82 | ## 📋 Command Reference |
82 | 83 |
|
| 84 | +### note Command |
| 85 | +
|
| 86 | +Capture quick notes without AI processing. Perfect for raw thoughts, meeting notes, or anything you want to save immediately without LLM summarization. |
| 87 | +
|
| 88 | +``` |
| 89 | +tom note [content] [options] |
| 90 | +
|
| 91 | +Arguments: |
| 92 | + content Note content (optional). If omitted, opens interactive editor. |
| 93 | +
|
| 94 | +Options: |
| 95 | + --voice Record voice note (wav) with automatic speech-to-text transcription |
| 96 | + --stt <engine> STT engine: auto (default), local, or openai (only used with --voice) |
| 97 | + --no-edit Skip interactive editor, use content from command line |
| 98 | + --output-json Output results in JSON format |
| 99 | +
|
| 100 | +Examples: |
| 101 | + tom note # Interactive mode (opens editor) |
| 102 | + tom note --voice # Voice note with auto STT |
| 103 | + tom note --voice --stt local # Voice note with local whisper.cpp |
| 104 | + tom note --voice --stt openai # Voice note with OpenAI Whisper API |
| 105 | + tom note "Quick thought" --no-edit # Quick capture mode |
| 106 | +``` |
| 107 | +
|
| 108 | +**Storage**: Notes are saved to `<memory-dir>/note/` directory with filename `MM-DD-YYYY_N.md` where N is an incremental counter for that day. |
| 109 | +
|
| 110 | +**Use Cases**: |
| 111 | +- Quick capture without waiting for AI processing |
| 112 | +- Meeting notes that don't need summarization |
| 113 | +- Raw thoughts you want to preserve exactly as written |
| 114 | +- Voice notes with transcription (no AI summary) |
| 115 | + |
| 116 | +**Difference from `/today`**: The `/note` command saves your input immediately without AI processing, while `/today` also generates an AI-powered summary using prompt templates. |
| 117 | + |
83 | 118 | ### today Command |
84 | 119 |
|
| 120 | +Capture daily reflections with AI-powered summarization. Opens an interactive editor, then processes your input using a prompt template to generate structured summaries. |
| 121 | + |
85 | 122 | ``` |
86 | 123 | tom today [notes] [options] |
87 | 124 |
|
88 | 125 | Arguments: |
89 | 126 | notes Notes for today (optional). If omitted, opens interactive editor. |
90 | 127 |
|
91 | 128 | Options: |
| 129 | + --voice Record voice note (wav) with automatic speech-to-text transcription |
| 130 | + --stt <engine> STT engine: auto (default), local, or openai (only used with --voice) |
92 | 131 | --no-edit Skip interactive editor, use notes from command line |
93 | 132 | --use-default-template Automatically use default template (no prompt) |
94 | 133 | --template <name> Use specific template by name (without .md) |
95 | 134 | --provider <provider> Override LLM provider (OpenAI or Anthropic) |
96 | 135 | --output-json Output results in JSON format |
97 | 136 |
|
98 | 137 | Examples: |
99 | | - tom today # Interactive mode (opens editor) |
100 | | - tom today "Quick note" --no-edit # Quick entry mode |
101 | | - tom today "Note" --no-edit --use-default-template # Fastest mode (< 3 seconds) |
| 138 | + tom today # Interactive mode with AI processing |
| 139 | + tom today --voice # Voice entry with auto STT + AI summary |
| 140 | + tom today --voice --stt local # Voice with local whisper.cpp + AI summary |
| 141 | + tom today "Quick note" --no-edit # Quick entry with AI summary |
| 142 | + tom today "Note" --no-edit --use-default-template # Fastest AI mode (< 3 seconds) |
102 | 143 | tom today "Note" --no-edit --template "standup" # Use specific template |
103 | 144 | ``` |
104 | 145 |
|
105 | | -### Voice Entry (NEW) |
| 146 | +**Storage**: Creates two files in `<memory-dir>/note/`: |
| 147 | +- `MM-DD-YYYY_N.md` - Your raw input (same format as `/note` command) |
| 148 | +- `MM-DD-YYYY_N_generated.md` - AI-generated summary using selected template |
106 | 149 |
|
107 | | -Capture daily reflections using voice instead of typing: |
| 150 | +**Available Templates**: |
| 151 | +- `daily-summary` - Retrospective reflection (Key Events, Themes, To-Do Items) |
| 152 | +- `daily-standup` - Forward-looking planning (Priorities, Blockers, Success Criteria) |
| 153 | +- `journal` - Emotional reflection and insights |
| 154 | +- `organize` - Task extraction and action items |
| 155 | +- `weekly-review` - Weekly retrospective |
| 156 | +- `business-meeting` - Meeting summaries |
108 | 157 |
|
109 | | -``` |
110 | | -tom today --voice [options] |
| 158 | +### Voice Entry |
111 | 159 |
|
112 | | -Options: |
113 | | - --voice Record audio and transcribe to text |
114 | | - --stt <engine> STT engine: auto (default), local, or openai |
115 | | - --output-json Output results in JSON format |
| 160 | +Both `/note` and `/today` commands support voice recording with automatic speech-to-text transcription: |
116 | 161 |
|
117 | | -Examples: |
118 | | - tom today --voice # Record voice note (auto STT) |
119 | | - tom today --voice --stt local # Force local whisper.cpp |
120 | | - tom today --voice --stt openai # Force OpenAI Whisper API |
| 162 | +```bash |
| 163 | +# Voice note (no AI processing) |
| 164 | +tom note --voice # Auto STT selection |
| 165 | +tom note --voice --stt local # Force local whisper.cpp |
| 166 | +tom note --voice --stt openai # Force OpenAI Whisper API |
| 167 | +
|
| 168 | +# Voice + AI summary |
| 169 | +tom today --voice # Auto STT + AI processing |
| 170 | +tom today --voice --stt local # Force local + AI summary |
| 171 | +tom today --voice --stt openai # Force OpenAI + AI summary |
121 | 172 | ``` |
122 | 173 |
|
| 174 | +**STT Engine Selection:** |
| 175 | +- `auto` (default): Tries local whisper.cpp first, falls back to OpenAI if enabled |
| 176 | +- `local`: Forces local whisper.cpp (privacy-focused, no API calls) |
| 177 | +- `openai`: Forces OpenAI Whisper API (cloud-based, higher accuracy) |
| 178 | + |
| 179 | +**Key Difference:** |
| 180 | +- `/note --voice`: Saves transcript directly (no LLM processing) |
| 181 | +- `/today --voice`: Transcript + AI-generated summary |
| 182 | + |
123 | 183 | **Prerequisites:** |
124 | 184 | - **FFmpeg** for audio recording ([Download](https://ffmpeg.org/)) |
125 | 185 | - **whisper.cpp** for local transcription ([Download](https://github.com/ggerganov/whisper.cpp)) OR **OpenAI API key** for cloud transcription |
@@ -473,7 +533,7 @@ Ten Second Tom supports **multiple storage providers** to fit your workflow. Cho |
473 | 533 |
|
474 | 534 | **Default File System** (Recommended for new users) |
475 | 535 | - TST-native hierarchical structure optimized for organization |
476 | | -- Stores entries in: `today/`, `thisweek/`, `templates/`, `config/` |
| 536 | +- Stores entries in: `note/`, `thisweek/`, `templates/`, `config/` |
477 | 537 | - Perfect for standalone use |
478 | 538 |
|
479 | 539 | **Obsidian Vault Integration** |
@@ -524,7 +584,7 @@ By default, memories and configuration are stored in `~/ten-second-tom/` in your |
524 | 584 | ├── config/ |
525 | 585 | │ └── config.json # Your configuration (from setup wizard) |
526 | 586 | ├── templates/ # Prompt templates |
527 | | -├── today/ # Daily entries (Default provider) |
| 587 | +├── note/ # Quick notes and daily entries (Default provider) |
528 | 588 | ├── thisweek/ # Weekly reviews (Default provider) |
529 | 589 | └── recording/ # Voice recordings |
530 | 590 | ``` |
@@ -638,7 +698,7 @@ $ tom today |
638 | 698 | - [ ] Finalize architecture design |
639 | 699 | - [ ] Start implementation tomorrow |
640 | 700 |
|
641 | | -✅ Daily entry saved: ~/ten-second-tom/today/10-03-2025_1.md |
| 701 | +✅ Daily entry saved: ~/ten-second-tom/note/10-03-2025_1_generated.md |
642 | 702 | ``` |
643 | 703 |
|
644 | 704 | ### Quick Entry Mode |
@@ -756,7 +816,8 @@ All commands in shell mode use a slash prefix: |
756 | 816 |
|
757 | 817 | | Command | Description | Example | |
758 | 818 | |---------|-------------|---------| |
759 | | -| `/today` | Capture today's reflection (single prompt) | `/today` | |
| 819 | +| `/note` | Capture quick note without AI processing | `/note` | |
| 820 | +| `/today` | Capture today's reflection with AI summary | `/today` | |
760 | 821 | | `/thisweek` | Generate weekly review | `/thisweek` | |
761 | 822 | | `/search` | Search memory entries | `/search meeting` | |
762 | 823 | | `/login` | Authenticate with SSH key | `/login` | |
@@ -817,18 +878,20 @@ Your memories are stored as plain markdown files in your configured memory direc |
817 | 878 | │ ├── daily-summary.md # Default daily template |
818 | 879 | │ ├── weekly-review.md # Default weekly template |
819 | 880 | │ └── my-custom.md # Your custom templates |
820 | | -├── today/ |
821 | | -│ ├── 10-01-2025_1.md |
822 | | -│ ├── 10-01-2025_2.md # Multiple entries per day supported |
823 | | -│ ├── 10-02-2025_1.md |
824 | | -│ └── 10-03-2025_1.md |
| 881 | +├── note/ |
| 882 | +│ ├── 10-01-2025_1.md # Quick note (no AI processing) |
| 883 | +│ ├── 10-01-2025_2.md # Raw input from /today command |
| 884 | +│ ├── 10-01-2025_2_generated.md # AI-processed from /today command |
| 885 | +│ ├── 10-02-2025_1.md # Quick note |
| 886 | +│ └── 10-03-2025_1_generated.md # AI-processed daily entry |
825 | 887 | ├── thisweek/ |
826 | | -│ ├── 2025-40-Mon-1.md # Week 40 of 2025, Monday, entry 1 |
827 | | -│ └── 2025-41-Fri-1.md # Week 41 of 2025, Friday, entry 1 |
828 | | -└── recording/ # Voice recordings (if using --voice or record) |
829 | | - ├── 10-21-2025_1.wav # Audio file |
830 | | - ├── 10-21-2025_1.txt # Transcription with metadata |
831 | | - └── 10-21-2025_2.wav # Multiple recordings per day supported |
| 888 | +│ ├── 2025-40-Mon-1.md # Week 40 of 2025, Monday, entry 1 |
| 889 | +│ └── 2025-41-Fri-1.md # Week 41 of 2025, Friday, entry 1 |
| 890 | +└── recording/ # Voice recordings (if using --voice or record) |
| 891 | + ├── 10-21-2025_1.wav # Audio file |
| 892 | + ├── 10-21-2025_1.txt # Transcription with metadata |
| 893 | + ├── 10-21-2025_1_generated.md # AI-processed from /generate command |
| 894 | + └── 10-21-2025_2.wav # Multiple recordings per day supported |
832 | 895 | ``` |
833 | 896 |
|
834 | 897 | **File Format:** |
|
0 commit comments