AgentSkillsCN

itack

基于Git的多智能体协作问题跟踪器。适用于使用itack问题时: (1) 查看项目看板并列出问题 (2) 创建带有标题和描述的新问题 (3) 领取问题以便开展工作 (4) 完成后将问题标记为已完成 (5) 将问题标记为“不予修复” (6) 如有需要,释放已领取的问题 (7) 使用doctor命令检查数据库健康状况 (8) 按查询搜索问题。

SKILL.md
--- frontmatter
name: itack
description: >
  Git-backed issue tracker for multi-agent coordination.
  Use when working with itack issues to:
    (1) View the project board and list issues
    (2) Create new issues with titles and descriptions
    (3) Claim issues to work on them
    (4) Mark issues as done when completed
    (5) Mark issues as wont-fix
    (6) Release claimed issues if needed
    (7) Check database health with doctor command
    (8) Search issues by query.
allowed-tools: Bash(itack *)

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

  1. Run itack board to see available issues
  2. Run itack show <id> to view issue details
  3. Run itack claim <id> <name> to claim an issue
  4. Work on the issue
  5. 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 done commits 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/itack branch, 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