Claude Code Plugins

Community-maintained marketplace

Feedback

linear-task-manager

@wayne930242/team-toon-tack
2
0

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.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

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 Status Linear Status Trello List
pending Todo Todo
in-progress In Progress In Progress
completed Done / Testing Done
blocked (configurable) (configurable)

Completion Modes (Linear only)

The ttt done command behaves differently based on configured mode:

Mode Task Action Parent 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

Project Validation

Before starting or completing tasks, run project validation:

  1. Check for validation command/skill: Look for /validate, /check commands or validation skills
  2. Check package.json/Makefile: Look for lint, type-check, test scripts

If no validation exists, suggest running /ttt:write-validate to create a project-specific validation command.

Best Practices

DO

  • Always ttt sync before starting work
  • Run project validation before starting and before completing tasks
  • Use ttt work-on next for auto-prioritization
  • 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 mark tasks done without running validation
  • 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