Skip to content

Releases: joel-pcg/todo-tracker-cli

v0.1.2 - Scanner Bugfix

Choose a tag to compare

@joel-pcg joel-pcg released this 15 Mar 18:05

v0.1.2 - Scanner Bugfix

🐛 Fix

Fixed scanner crash on files with very long lines

Issue

todo list and todo tui crashed with error:

Error: failed to scan directory: bufio.Scanner: token too long

This occurred when scanning projects containing:

  • Minified JavaScript files (.min.js)
  • Bundled/compiled files
  • Generated code with very long lines
  • Any file with lines exceeding 64KB

Root Cause

bufio.NewScanner() uses a default 64KB buffer limit. Files with lines longer than this would cause the scanner to fail.

Fix

  • Increased max token size from 64KB to 1MB
  • Allocated larger buffer using scanner.Buffer()
  • Scanner now handles minified/bundled files without crashing

Upgrade

go install github.com/joel-pcg/todo-tracker-cli/cmd/todo@latest

Or rebuild from source:

git pull
go build -o todo ./cmd/todo

Changes

  • fix(scanner): increase buffer size to handle long lines (c804602)

v0.1.1 → v0.1.2

All tests passing ✅

v0.1.1 - Critical Bugfix

Choose a tag to compare

@joel-pcg joel-pcg released this 15 Mar 17:58

v0.1.1 - Critical Bugfix

🐛 Critical Fix

Fixed TUI showing TODOs from all projects instead of current directory

Issue

The todo tui command was loading ALL TODOs from the global database (~/.todo-tracker/todos.db) instead of scanning the current directory first. This meant users would see TODOs from completely different projects.

Example: User in /project-a would see TODOs from /project-b, /project-c, etc.

Root Cause

runTUI() was calling st.List() directly without scanning the current directory, unlike runList() which scans before querying the database.

Fix

  • TUI now scans current directory before launching (same behavior as list command)
  • Enriches TODOs with metadata (parser + git blame)
  • Filters database query to only show TODOs from scanned files
  • TUI behavior now matches list command - shows only TODOs from current project

Upgrade

go install github.com/joel-pcg/todo-tracker-cli/cmd/todo@latest

Or rebuild from source:

git pull
go build -o todo ./cmd/todo

Changes

  • fix(tui): scan current directory instead of showing global DB (bdeb1cc)

v0.1.0 → v0.1.1

All tests passing ✅

v0.1.0 - Initial Release

Choose a tag to compare

@joel-pcg joel-pcg released this 15 Mar 17:48

TODO Tracker CLI v0.1.0

First public release of TODO Tracker CLI — a terminal-native tool for tracking TODO comments across codebases.

Features

Core Functionality

  • Regex-based scanning — Language-agnostic TODO extraction (Go, TypeScript, Python, Rust, etc.)
  • Git integration — Automatic git blame enrichment for author tracking
  • SQLite persistence — Fast local database with indexed queries
  • Branch filtering — Show only TODOs added/modified in a specific branch
  • Zero configuration — Works out-of-the-box on any codebase

Commands

  • todo list — List all TODOs with filters (--branch, --json)
  • todo show <id> — Show TODO details with code context
  • todo done <id> — Mark TODO as completed
  • todo stats — Aggregate statistics (by priority, author)
  • todo tui — Interactive terminal UI (see below)

Interactive TUI

  • Color-coded priorities — Red (critical), Orange (high), Yellow (medium), Green (low)
  • Details panel — Split view showing full TODO context (toggle with `i`)
  • Search & filter — Search with `/`, filter by priority (1-4 keys)
  • Help panel — Press `?` for all keybindings
  • Vim-style navigation — j/k, g/G for movement
  • Dynamic status bar — Shows stats and active filters

Installation

From Source

```bash
go install github.com/joel-pcg/todo-tracker-cli/cmd/todo@latest
```

Build Locally

```bash
git clone https://github.com/joel-pcg/todo-tracker-cli
cd todo-tracker-cli
go build -o todo ./cmd/todo
```

TODO Format

Supports standard TODO formats:
```go
// TODO: Basic task
// TODO(alice): Task with owner
// TODO: [HIGH] Task with priority
// TODO(bob): [CRITICAL] Combined format
```

Keywords: `TODO`, `FIXME`, `HACK`, `XXX`, `BUG`

Technical Stack

Built with:

  • Go 1.23+
  • Cobra (CLI framework)
  • Bubbletea (TUI framework)
  • Lipgloss (terminal styling)
  • SQLite (persistence)

Stats

  • 📁 32 files
  • 📝 4,527 lines of code
  • ✅ 88+ tests passing
  • 📊 90.9% test coverage
  • 🎯 Built with Spec-Driven Development using 7 specialized agent teams

Documentation