--- description: Plan work for current or next cycle using Linearis and GitHub category: project-task-management tools: Bash(linearis *), Bash(gh *), Read, Write, TodoWrite model: inherit version: 1.0.0 status: 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: 1. Fetching current and next cycle information 2. Listing backlog tickets ready for planning 3. Interactively assigning tickets to cycles 4. Setting milestones and priorities 5. Generating cycle plan summary ## Current Workaround Use Linearis CLI directly: ```bash # 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 ```bash # 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`: ```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