---
name: code-it-later
description: Scan codebase comments to find development crumbs, TODOs, and backlog items using the `codeitlater` CLI tool, and clean or restore them after implementation.
---
# code-it-later Skill
Use this skill when you need to scan the codebase for developer flags, TODOs, bugs, or refactoring points (referred to as **crumbs**), or when you need to clean up/restore those flags after completing tasks.
## Crumb Syntax
Crumbs are comments in source code marked with the `:=` symbol (e.g., `//:= TODO: fix logic`).
- **Multi-line**: A crumb line ending with `...` appends the next line to the same crumb (e.g., `//:= step1... \n //:= step2`).
- **Ignored/Backlog**: Crumbs starting with `!` (e.g., `//:= !TODO: ...`) are ignored by default.
- **Keywords**: Custom prefixes followed by a colon (e.g., `TODO:`, `MARK:`, `BUG:`, `JIRA-123:`).
## How to Run the Tool
The `codeitlater` binary is installed locally and can be executed via terminal command execution.
### Common CLI Recipes
1. **Scan all active crumbs in the repository**:
```bash
codeitlater
```
2. **Retrieve crumbs with code context** (Highly recommended for LLM reasoning):
To view `N` lines of surrounding context above and below the crumb:
```bash
codeitlater -r 3
```
3. **Parse crumbs programmatically as JSON**:
```bash
codeitlater -O json
```
4. **Filter by a specific keyword or query ignored items**:
```bash
codeitlater -k TODO
codeitlater --show-ignored
```
5. **Interact and clean up crumbs**:
After resolving a crumb's task, you can clean it up (delete) or restore it to a normal comment:
```bash
codeitlater -D
codeitlater -R
```
## Agent Guidelines
1. **Context Gathering**: When assigned a refactoring or implementation task, first run `codeitlater -r 5` to search for any relevant crumbs that the developer left.
2. **Implementation**: Address the code comments flagged by the crumbs.
3. **Clean-up**: Once the code changes are complete and verified, **always ask the user for permission** before cleaning up the crumbs (using `codeitlater -D` or `codeitlater -R`), unless the user explicitly ordered you to do so in their request.