3.7 KiB
3.7 KiB
description, category, tools, model, version, status
| description | category | tools | model | version | status |
|---|---|---|---|---|---|
| Plan work for current or next cycle using Linearis and GitHub | project-task-management | Bash(linearis *), Bash(gh *), Read, Write, TodoWrite | inherit | 1.0.0 | placeholder |
Cycle Planning
Status: Placeholder for v1.0 - Full implementation coming in future release
Planned Functionality
This command will help you plan work for the current or upcoming cycle by:
- Fetching current and next cycle information
- Listing backlog tickets ready for planning
- Interactively assigning tickets to cycles
- Setting milestones and priorities
- Generating cycle plan summary
Current Workaround
Use Linearis CLI directly:
# Get active cycle
linearis cycles list --team TEAM --active
# List backlog tickets (filter with jq - issues list only supports --limit)
linearis issues list --limit 100 | jq '.[] | select(.state.name == "Backlog")'
# Assign ticket to cycle
linearis issues update TICKET-123 --cycle "Sprint 2025-11"
# Set priority
linearis issues update TICKET-123 --priority 2
Example Workflow
# 1. View active cycle
linearis cycles list --team ENG --active | jq '.[] | {name, startsAt, endsAt, progress}'
# 2. View next cycle
linearis cycles list --team ENG --limit 5 | jq '.[1]'
# 3. List backlog tickets ready for planning (filter with jq)
linearis issues list --limit 100 | \
jq '.[] | select(.state.name == "Backlog") | {id, title, priority}'
# 4. Review recent PRs to understand current work
# This helps identify work done but not captured in Linear tickets
gh pr list --state merged --limit 20 --json number,title,author,mergedAt,closedAt
# Filter by date range (e.g., last 2 weeks for planning context)
gh pr list --state merged --search "merged:>=$(date -v-14d +%Y-%m-%d)" \
--json number,title,author,mergedAt --jq '.[] | "\(.author.login): \(.title)"'
# 5. Identify who is working on what
gh pr list --state open --json number,title,author,createdAt | \
jq 'group_by(.author.login) | map({author: .[0].author.login, prs: map({number, title})})'
# 6. Assign high-priority tickets to next cycle
linearis issues update ENG-123 --cycle "Sprint 2025-11" --priority 2
linearis issues update ENG-124 --cycle "Sprint 2025-11" --priority 2
# 7. Generate summary (manual)
# Count tickets by cycle and priority
Future Implementation
When fully implemented, this command will:
- Interactive cycle selection - Choose current or next cycle
- Smart backlog filtering - Show tickets by priority and readiness
- Batch assignment - Select multiple tickets to assign at once
- Capacity planning - Estimate points/hours per ticket
- Milestone tracking - Group tickets by project milestones
- PR-based work tracking - Auto-detect work from merged/open PRs to identify:
- Work completed but not tracked in Linear
- Who is actively working on what
- Team velocity based on PR activity
- Team activity report - Show contribution breakdown by team member
- Summary generation - Create cycle plan document in thoughts/
Track progress at: https://github.com/coalesce-labs/catalyst/issues
Configuration
Uses .claude/config.json:
{
"linear": {
"teamKey": "ENG",
"defaultTeam": "Backend"
}
}
Tips
- Plan cycles before they start - gives team time to review
- Prioritize by user impact and dependencies
- Leave buffer capacity for bugs and urgent tasks
- Use milestones to group related work
- Review cycle plans in team meetings for alignment
- Check PR activity before planning to understand:
- What work has been completed recently
- Who is actively contributing
- Untracked work that should be captured in Linear
- Team velocity and capacity trends