Install · Usage · How it works
Plan the work, iterate through each item, fix, verify, commit, repeat.
Process a backlog of codebase tasks autonomously: deprecated API removal, test fixes, lint rule cleanup, and more. The agent scans your codebase, builds a backlog, then works through each item one by one — fixing, verifying, and committing as it goes.
| Extension | log_item tool + live widget + /autobacklog command |
| Skill | Guides the agent through planning and processing the backlog |
| Tool | Description |
|---|---|
log_item |
Records item result, updates autobacklog.json, auto-commits or auto-reverts |
| Subcommand | Description |
|---|---|
/autobacklog <text> |
Enter autobacklog mode. If autobacklog.json exists, resumes. Otherwise, sets up a new session. |
/autobacklog off |
Leave autobacklog mode. |
/autobacklog clear |
Delete autobacklog files and turn off. |
Examples:
/autobacklog find all tests calling deprecated create_record() and update them to use new_create()
/autobacklog fix all files with eslint no-unused-vars violations
/autobacklog update all imports from old-package to new-package
/autobacklog off
| Shortcut | Description |
|---|---|
Ctrl+B |
Toggle dashboard expand/collapse |
- Status widget — always visible:
📋 5/23 done 1 failed │ 17 remaining - Expanded dashboard —
Ctrl+Bshows full item list with statuses, progress bar, and verification config
pi install github.com/andrewn617/autobacklog/autobacklog find all tests calling deprecated create_record() and update them
The agent will:
- Scan the codebase to discover all affected files
- Create
autobacklog.md(problem description, fix approach, verification) - Create
autobacklog.json(item list with verification config) - Start processing items immediately
For each pending item, the agent:
- Reads the relevant code
- Implements the fix
- Runs the verification command (scoped to the item)
- Calls
log_item— which auto-commits on success or auto-reverts on failure - Moves to the next item
- Widget — always visible above the editor
Ctrl+B— expand to see full item list- Escape — interrupt anytime
| File | Purpose |
|---|---|
autobacklog.md |
Problem description, fix approach, verification, constraints |
autobacklog.json |
Config + item list with statuses |
{
"name": "Fix deprecated create_record() calls",
"verifyCommand": "bin/rails test",
"maxAttempts": 3,
"items": [
{"item": "test/models/user_test.rb:45", "status": "pending"},
{"item": "test/models/post_test.rb:12", "status": "complete", "attempts": 1, "commit": "abc1234"},
{"item": "test/controllers/api_test.rb:78", "status": "failed", "attempts": 3}
]
}The agent handles both planning (scanning the codebase, building the backlog) and execution (fixing each item). The extension provides infrastructure: the log_item tool for git management, the widget for progress tracking, and system prompt injection for loop rules.
┌──────────────────────┐ ┌──────────────────────────┐
│ Extension (global) │ │ Skill (per-session) │
│ │ │ │
│ log_item tool │◄────│ how to plan the backlog │
│ widget + dashboard │ │ how to fix each item │
│ /autobacklog cmd │ │ loop rules + recovery │
│ auto-resume │ │ │
└──────────────────────┘ └──────────────────────────┘
Two files keep the session alive across context resets:
autobacklog.json — item list with statuses, verification config
autobacklog.md — problem description, fix approach, notes on what's been tried
A fresh agent with no memory can read these two files and continue exactly where the previous session left off.
MIT