https://github.com/technickai/otter-download
Download all your otter transcripts
https://github.com/technickai/otter-download
Last synced: 16 days ago
JSON representation
Download all your otter transcripts
- Host: GitHub
- URL: https://github.com/technickai/otter-download
- Owner: TechNickAI
- License: mit
- Created: 2025-09-08T02:03:21.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-09-16T16:54:46.000Z (10 months ago)
- Last Synced: 2025-09-27T07:21:00.048Z (10 months ago)
- Language: Python
- Size: 30.3 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# đĻĢ Otter AI Transcript Downloader
A beautiful command-line tool for downloading and organizing your Otter.ai transcripts. Perfect for syncing with Dropbox, feeding into LLMs, or creating local transcript archives.
## ⨠Features
- đ **Secure Authentication**: Safe login with Otter.ai credentials
- đ¨ **Beautiful CLI**: Rich terminal interface with progress bars and status updates
- đ **Smart Organization**: Downloads to `~/Dropbox/Otter-Export` by default
- đ§ **LLM-Optimized Format**: Clean transcripts without timestamps, merged speaker segments
- đˇī¸ **Clean Filenames**: Human-readable titles with unique IDs: `Meeting-Name_2CAQZKX4X5V5YILZ.txt`
- â° **File Timestamps**: Set to actual speech creation time for chronological sorting
- đ **Smart Resume**: Skip already downloaded transcripts automatically
- đ **Content Filtering**: Skip transcripts shorter than 200 characters
- ⥠**Rate Limited**: Configurable delays to be respectful to Otter.ai servers
## đ Installation
```bash
# Clone the repository
git clone
cd otter-download
# Create virtual environment
python3 -m venv env
source env/bin/activate # On Windows: env\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Install the CLI tool
pip install -e .
```
## đ¯ Usage
### Basic Download
```bash
# Download all transcripts to default location (~/Dropbox/Otter-Export)
otter-cli download
# Provide credentials inline (optional)
otter-cli download --username your@email.com --password your_password
```
### Advanced Options
```bash
# Custom folder
otter-cli download --folder ~/Documents/Transcripts
# Different format (txt, pdf, srt, docx)
otter-cli download --format pdf
# Faster downloads (reduce sleep between requests)
otter-cli download --sleep 0.1
# Filter out very short transcripts
otter-cli download --min-length 500
# Testing with limited downloads
otter-cli download --max-count 10
```
### List Available Speeches
```bash
# View your speeches without downloading
otter-cli login
```
## đ§ Configuration
| Option | Default | Description |
|--------|---------|-------------|
| `--folder` | `~/Dropbox/Otter-Export` | Download directory |
| `--format` | `txt` | File format (txt, pdf, srt, docx) |
| `--sleep` | `0.5` | Seconds between downloads |
| `--min-length` | `200` | Minimum transcript length (chars) |
| `--overwrite` | `false` | Overwrite existing files |
| `--max-count` | `unlimited` | Limit downloads (for testing) |
## đ File Organization
**Filename Format**: `{Title}_{SpeechID}.{format}`
- **Example**: `Team-Meeting_2CAQZKX4X5V5YILZ.txt`
- **Benefits**: Human-readable, unique IDs, filesystem-safe
**File Timestamps**: Set to actual speech creation time
- **Benefit**: `ls -t` shows chronological order
- **Benefit**: Finder "Date Modified" sorting works perfectly
**Content Format**: LLM-optimized
```
Speaker Name
Longer paragraphs of merged content from same speaker...
Next Speaker
More merged content without timestamp clutter...
```
## đ Smart Resume Logic
The tool automatically handles interrupted and incremental downloads:
1. **First Run**: Downloads all available transcripts
2. **Subsequent Runs**: Only downloads new transcripts (by checking existing speech IDs)
3. **Interrupted Downloads**: Resume from where left off automatically
## đ Development
Built with:
- **[Click](https://click.palletsprojects.com/)**: CLI framework
- **[Rich](https://rich.readthedocs.io/)**: Beautiful terminal output
- **[Requests](https://docs.python-requests.org/)**: HTTP requests
- **[otterai](https://github.com/gmchad/otterai-api)**: Unofficial Otter.ai API wrapper
## â ī¸ Important Notes
- Uses the **unofficial Otter.ai API** - may break if Otter.ai changes their internal APIs
- **Rate limited** by default to be respectful to Otter.ai servers
- **Requires valid Otter.ai credentials** - this tool cannot work without a legitimate account
- **No warranty** - this is an unofficial tool for personal use
## đ¤ Contributing
This is a personal project, but improvements are welcome! Please:
- Keep it simple and focused
- Maintain the beautiful CLI experience
- Test thoroughly with small `--max-count` before submitting
## đ License
MIT License - Use freely for personal transcript organization.
---
*Built with â¤ī¸ for organizing AI-ready transcripts*