itack CLI
Git-backed issue tracker for multi-agent coordination.
Commands
View Issues
bash
# Show project board overview itack board # List all issues itack list # List issues filtered by status itack list --status open itack list --status in-progress itack list --status done itack list --status wont-fix # Show details of a specific issue itack show <id> # Search issues by title or body itack search <query> # Search across all git branches itack search <query> --all-branches
Create Issues
Issues are automatically committed to git when created.
bash
# Create a new issue itack create "Issue title" # Create with an epic/category itack create "Issue title" --epic "epic-name" # Create with a body/description itack create "Issue title" --body "Detailed description" # Create with a custom commit message itack create "Issue title" --message "Custom commit message" # Create with dependencies on other issues itack create "Issue title" --depends-on 1,2,3
Work on Issues
bash
# Claim an issue (marks as in-progress) itack claim <id> <assignee-name> # Claim with a session ID (e.g., Claude Code session) itack claim <id> <assignee-name> --session <session-id> # Mark an issue as done itack done <id> # Mark an issue as wont-fix itack wont-fix <id> # Release a claimed issue without completing itack release <id>
Edit Issues
Issues are automatically committed to git after editing.
bash
# Open issue in editor itack edit <id> # Set the issue body directly (skips editor) itack edit <id> --body "New description" # Edit with a custom commit message itack edit <id> --message "Custom commit message"
Manage Dependencies
bash
# Add dependencies to an issue itack depend <id> <dep-id> # issue depends on dep-id itack depend <id> <dep1> <dep2> # issue depends on dep1 and dep2 # Remove dependencies from an issue itack undepend <id> <dep-id>
Diagnose Issues
bash
# Check database health and issue synchronization itack doctor
Workflow
- •Run
itack boardto see available issues - •Run
itack show <id>to view issue details - •Run
itack claim <id> <name>to claim an issue - •Work on the issue
- •Run
itack done <id>when complete (commit separately with your implementation changes)
Important: One Issue at a Time
Only claim and work on one issue at a time. If an issue is not claimed, assume someone else is working on it or will pick it up. Do not claim multiple issues simultaneously.
Configuration
Global configuration is stored in ~/.itack/config.toml:
toml
# Default assignee name for claims default_assignee = "my-name" # Editor command (defaults to $EDITOR or vi) editor = "code --wait" # Branch where itack stores issue data (default: "data/itack") data_branch = "data/itack"
Data Branch Behavior
- •Issue changes are committed to
data_branch(default:data/itack) - •Only
itack donecommits to your current HEAD branch - other commands only commit to the data branch - •When viewing/editing an issue, the latest version is always read from the
data/itackbranch, ensuring you see all edits regardless of which working branch you're on - •This minimizes merge conflicts: feature branches only get issue commits when marking issues as "done", right before merging