An interactive REPL for monitoring CrowdStrike Falcon API alerts in real-time with persistent storage and advanced investigation capabilities.
- 🔄 Real-time alert monitoring with customizable polling intervals
- 🎨 Rich terminal UI with colors and interactive navigation
- 🔍 Advanced filtering by severity, product, hostname, status, and keywords
- 📊 Daily statistics with severity and product breakdowns
- 💾 Persistent SQLite database for alert storage across sessions
- 🔍 Detailed alert investigation with comprehensive information display
- 📝 Export capabilities (CSV/JSON) for stored alerts
- 🔐 Secure credential storage and token management
- ⚡ Optimized API usage with rate limiting and error handling
- 🗂️ Database management with purge and export functions
pipx install git+https://github.com/Mercury0/talongit clone https://github.com/Mercury0/talon.git
cd talon
uv sync-
Run Talon:
uv run talon
-
Create a connection:
> keys keys> create Enter Falcon ClientID: your_client_id Enter Secret: your_secret Enter Base URL: https://api.crowdstrike.com -
Connect and start monitoring:
keys> back > connect
Root Menu:
keys- Manage API connectionsconnect- Initial authentication to Falcon APIrun- Resume alert monitoring on existing Falcon connectionconfig- Configure polling, filters, and lookback settingsstats- View daily alert statistics with severity breakdownsdetail- View detailed alert information (with or without alert ID)db- Database management menuhelp- Show help informationexit- Exit the application
Keys Menu:
create- Add new API connection profilelist- View and select from saved connection profilesremove- Delete connection profiles
Config Menu:
polling- Set polling interval in seconds (default: 15s)filter- Configure alert filterslookback- Set lookback time for prior alerts in minutes (default: 10 minutes)
detections- View stored alerts from databasepurge- Clear all stored alertsexport- Export alerts to CSV or JSON format
Configure filters to focus on specific alerts:
config> filter
Configure [s]everity/[p]roduct/[h]ostname/s[t]atus/[k]eywords/[c]lear/[q]uit: s
Minimum severity (empty to clear): 30
Talon stores connections and settings in ~/.talon/config.json.
You'll need CrowdStrike Falcon API credentials with the following scopes:
- Alerts: Read access to query and fetch alert data
git clone https://github.com/Mercury0/talon.git
cd talon
uv sync --dev --all-extrasThis installs:
- Runtime + dev dependencies
- ruff, mypy, pytest
- pre-commit hooks
# check
uv run ruff check .
# autofix
uv run ruff check . --fixuv run mypy src/talonMIT License - see LICENSE file for details.
Contributions welcome! Please feel free to submit a Pull Request.