towl 🦉

A fast command-line tool that scans your codebase for TODO comments and outputs them in various formats (JSON, CSV, Markdown, TOML, and more).
Features
- 🔍 Smart Detection: Finds TODO, FIXME, HACK, NOTE, and BUG comments
- 📁 Multiple Output Formats: JSON, CSV, Markdown, TOML, Terminal table
- 🎯 Filtering: Filter by TODO type
- ⚡ Fast: Built with Rust for maximum performance
- 🔧 Configurable: Customize file extensions, patterns, and exclusions
- 📍 Context-Aware: Shows surrounding code and function context
Installation
Quick Start
# Scan current directory
# Output to JSON file
# Filter by type
# Initialize config
# Show current config
Usage
)
Configuration
Create a .towl.toml file in your project root (or run towl init):
[]
= ["rs", "toml", "json", "yaml", "yml", "sh", "bash"]
= ["target/*", ".git/*"]
= 3
[]
= "your-github-username"
= "your-repo-name"
The GitHub token can be set via the TOWL_GITHUB_TOKEN environment variable. Owner and repo are auto-detected from the git remote on towl init.
License
MIT