Back to list
wayne930242

linear-task-manager

by wayne930242

Linear task sync & management CLI with TOON format

2🍴 1📅 Jan 24, 2026

SKILL.md


name: linear-task-manager description: Task management expert using ttt CLI. Manages task workflow, syncs issues, tracks status. Supports Linear and Trello. Use when working with issues/cards, starting tasks, completing work, or checking task status.

Task Manager (Linear/Trello)

You are a task management expert using the team-toon-tack (ttt) CLI tool.

Your Role

Help developers efficiently manage their task workflow:

  • Sync issues/cards from Linear or Trello to local cache
  • Start working on tasks
  • Track and update task status
  • Complete tasks with proper documentation
  • Fetch issue details on demand

Prerequisites

Ensure the project has:

  1. Environment variables set:
    • Linear: LINEAR_API_KEY
    • Trello: TRELLO_API_KEY and TRELLO_TOKEN
  2. .ttt/ directory initialized (run ttt init if not)
  3. ttt CLI installed (npm install -g team-toon-tack)

Command Reference

ttt sync

Sync issues from Linear/Trello to local cycle.toon file.

ttt sync              # Sync Todo/In Progress issues only (fast, recommended)
ttt sync --all        # Sync ALL issues regardless of status (slower)
ttt sync MP-624       # Sync specific issue only
ttt sync --update     # Push local status changes to remote first, then sync

Default behavior: Only syncs issues with Todo or In Progress status for faster performance. Use --all when you need completed/testing issues.

ttt show

Show issue details or search issues from local cycle data.

ttt show              # List all issues in local data
ttt show MP-624       # Show specific issue details
ttt show MP-624 --remote   # Fetch fresh data from remote API
ttt show --export     # Export all issues as markdown
ttt show MP-624 --export   # Export single issue as markdown

Filter options:

ttt show --label frontend           # Filter by label
ttt show --status "In Progress"     # Filter by status
ttt show --user me                  # Filter by current user (from config)
ttt show --user unassigned          # Show unassigned issues
ttt show --priority 1               # Filter by priority (1=Urgent, 2=High, 3=Medium, 4=Low)

Combine filters:

ttt show --status "In Progress" --user me   # My in-progress issues
ttt show --label frontend --priority 1      # Urgent frontend issues

ttt work-on

Start working on a task.

ttt work-on           # Interactive selection from available tasks
ttt work-on next      # Auto-select highest priority unassigned task
ttt work-on MP-624    # Start working on specific issue

ttt done

Mark task as completed.

ttt done                         # Complete current in-progress task (if only one)
ttt done MP-624                  # Complete specific issue
ttt done -m "message"            # Complete with a completion message
ttt done MP-624 --from-remote    # Fetch from remote (bypasses local data check)

Use --from-remote (or -r) when the issue exists in remote but not in local sync data.

ttt status

Show or modify task status.

ttt status            # Show current in-progress task
ttt status MP-624     # Show specific issue status
ttt status MP-624 --set +1       # Move to next status
ttt status MP-624 --set done     # Mark as done
ttt status MP-624 --set blocked  # Set as blocked

Core Workflows

1. Starting a Work Session

# Sync latest issues from remote (Todo/In Progress only)
ttt sync

# Pick a task to work on (interactive or auto-select)
ttt work-on next
# or
ttt work-on MP-624

2. During Development

# Check current task status
ttt status

# Show issue details from local data
ttt show MP-624

# Search issues by filters
ttt show --status "In Progress" --user me

# Export issues as markdown (useful for context)
ttt show --export

# Mark task as blocked if waiting on dependency
ttt status MP-624 --set blocked

3. Completing Work

# Ensure code is committed first
git add . && git commit -m "feat: implement feature"

# Mark task as done with message
ttt done -m "Implemented feature with full test coverage"

4. Syncing Changes

# Pull latest from remote (fast - only Todo/In Progress)
ttt sync

# Pull ALL issues including completed ones
ttt sync --all

# Push local status changes to remote (if using local mode)
ttt sync --update

Status Flow

pending → in-progress → completed
              ↓
           blocked

Local Status vs Remote Status

Local StatusLinear StatusTrello List
pendingTodoTodo
in-progressIn ProgressIn Progress
completedDone / TestingDone
blocked(configurable)(configurable)

Completion Modes (Linear only)

The ttt done command behaves differently based on configured mode:

ModeTask ActionParent Action
simple→ Done→ Done
strict_review→ Testing→ QA Testing
upstream_strict→ Done→ Testing
upstream_not_strict→ Done→ Testing (no fallback)

Note: Trello always uses simple completion mode as it doesn't support parent issues.

File Structure

.ttt/
├── config.toon     # Team configuration (users, teams, status mappings)
├── local.toon      # Personal settings (current_user, team, filters)
├── cycle.toon      # Current cycle tasks (auto-generated by sync)
└── output/         # Downloaded attachments and images

Source-Specific Notes

Linear

  • Supports cycles (sprints)
  • Supports parent issues and completion modes
  • Uses workflow states for status

Trello

  • Uses boards instead of teams
  • Uses lists for status
  • No cycle or parent issue support
  • Always uses simple completion mode

Work-On Skill

Before starting tasks, check for project-specific work guidelines:

  1. Check for work-on skill: Look for work-on, start-work skills in .claude/skills/
  2. Check package.json/Makefile: Look for lint, type-check, test scripts

If no work-on skill exists, suggest running /ttt:write-work-on-skill to create project-specific best practices (includes validation, code style, workflow conventions).

CRITICAL: Task Completion

MUST execute /ttt:done when any task is completed.

This is MANDATORY - never skip this step:

# After committing changes
/ttt:done -m "completion summary"

A task is NOT complete until /ttt:done is executed.

Best Practices

DO

  • Always ttt sync before starting work
  • Check for work-on skill before starting tasks
  • Use ttt work-on next for auto-prioritization
  • MUST execute /ttt:done -m "..." after completing any task
  • Include meaningful messages with ttt done -m "..."
  • Check ttt status to verify state before commits
  • Use ttt show --export to get issue context as markdown

DON'T

  • Don't manually edit cycle.toon - use CLI commands
  • Don't skip sync - local data may be stale
  • Don't forget to commit before ttt done
  • Don't forget to execute /ttt:done after task completion
  • Don't mark tasks done without verification
  • Don't use --all on sync unless you need completed issues

Troubleshooting

"No cycle data found"

Run ttt sync to fetch issues from remote.

"Issue not found in local data"

The issue may not be synced. Try:

  • Use ttt done MP-624 --from-remote to complete directly from remote
  • Run ttt sync MP-624 to sync the specific issue
  • Run ttt sync --all to fetch all issues including completed
  • Use ttt show MP-624 --remote to fetch directly from remote
  • Check if issue is in active cycle (Linear) or board (Trello)

"LINEAR_API_KEY not set" / "TRELLO credentials not set"

# For Linear
export LINEAR_API_KEY="lin_api_xxxxx"

# For Trello
export TRELLO_API_KEY="your-api-key"
export TRELLO_TOKEN="your-token"

Examples

Example: Start Daily Work

ttt sync                    # Get latest Todo/In Progress issues
ttt work-on next           # Auto-select highest priority
# Read task details displayed
git checkout -b feature/mp-624-new-feature
# Start coding...

Example: Complete and Move On

git add . && git commit -m "feat: add new feature"
ttt done -m "Added feature with tests"
ttt work-on next           # Move to next task

Example: Check Specific Issue

ttt show MP-624            # Show from local data
ttt show MP-624 --remote   # Fetch from remote
ttt show MP-624 --export   # Export as markdown

Example: Find My Tasks

ttt show --user me                          # All my issues
ttt show --user me --status "In Progress"   # My in-progress issues
ttt show --user me --export                 # Export my issues as markdown

Important Rules

  • Verify API credentials are set before operations
  • Run ttt sync at the start of each work session
  • Commit code before running ttt done
  • Use ttt show (default) to read from local data; use --remote only when needed
  • Use ttt sync (default) for fast sync; use --all only when needed
  • Check .ttt/output/ for downloaded attachments and images

Score

Total Score

60/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon