Display a quick overview dashboard for your configured Initiative.
Displays a health dashboard for your configured initiative with sprint progress and issue metrics.
/plugin marketplace add wuyuxiangX/yux-claude-hub/plugin install yux-linear-pm@yux-claude-hubDisplay a quick overview dashboard for your configured Initiative.
Usage: /yux-pm-overview
/yux-pm-init.claude/pm-config.jsonRead .claude/pm-config.json
If config doesn't exist:
Error: PM workspace not initialized.
Run /yux-pm-init first to select an Initiative and configure sub-projects.
Fetch data in parallel for all projects in the Initiative:
# Get current cycle
mcp__linear__list_cycles(teamId: "<team_id>", type: "current")
# Get issues across all Initiative projects
For each project in config.projects:
mcp__linear__list_issues(
project: "<project_id>",
limit: 50,
includeArchived: false
)
# Get inbox/triage items
mcp__linear__list_issues(
team: "<team_id>",
state: "Triage",
limit: 20
)
Health Score (0-100):
health = 100
# Overdue issues penalty
overdue_count = issues where due_date < today
health -= overdue_count * 10
# Blocked issues penalty
blocked_count = issues where is_blocked == true
health -= blocked_count * 15
# Large inbox penalty
inbox_count = triage_issues.length
if inbox_count > 5: health -= 10
if inbox_count > 10: health -= 10
# Sprint progress bonus
if current_cycle:
progress = completed_in_cycle / total_in_cycle
if progress >= 0.8: health += 10
elif progress < 0.3 and days_remaining < 3: health -= 20
health = clamp(health, 0, 100)
Health Labels:
Output language follows
.claude/yux-config.jsonsetting
=== <Initiative Name> Overview ===
Health: <score>/100 (<label>)
┌─ Current Sprint (<cycle_name>) ──────────────┐
│ Progress: ████████░░ <percent>% │
│ <completed>/<total> completed | <days> days remaining │
└──────────────────────────────────────────────┘
┌─ Issues by Project ──────────────────────────┐
│ <project-1>: <count> (<in_progress> in progress) │
│ <project-2>: <count> (<in_progress> in progress) │
│ <project-3>: <count> (<in_progress> in progress) │
└──────────────────────────────────────────────┘
┌─ Needs Attention ────────────────────────────┐
│ 📥 <inbox_count> inbox items → /yux-pm-triage │
│ ⚠️ <blocked_count> blocked | ⚠️ <overdue_count> overdue │
└──────────────────────────────────────────────┘
Next actions:
/yux-pm-triage - Process inbox
/yux-pm-plan - Plan next sprint
/yux-pm-prd - Create new feature PRD
If there are critical items, highlight them:
⚠️ Alerts:
1. [OVERDUE] WYX-123: Login feature - 2 days overdue
2. [BLOCKED] WYX-456: API refactor - blocked by WYX-789
3. [STALE] WYX-101: Dark mode - no updates in 14 days
def render_progress(percent):
filled = round(percent / 10)
empty = 10 - filled
return "█" * filled + "░" * empty
If the team doesn't use cycles:
=== <Initiative Name> Overview ===
Health: <score>/100 (<label>)
┌─ Active Work ────────────────────────────────┐
│ In Progress: <count> issues │
│ Todo: <count> issues │
│ Backlog: <count> issues │
└──────────────────────────────────────────────┘
┌─ Issues by Project ──────────────────────────┐
│ ... │
└──────────────────────────────────────────────┘
┌─ Needs Attention ────────────────────────────┐
│ ... │
└──────────────────────────────────────────────┘
User: /yux-pm-overview
Claude: === Subloom Overview ===
Health: 78/100 (Good)
┌─ Current Sprint (Sprint 24) ─────────────────┐
│ Progress: ████████░░ 80% │
│ 8/10 completed | 3 days remaining │
└──────────────────────────────────────────────┘
┌─ Issues by Project ──────────────────────────┐
│ subloom-api: 12 (3 in progress) │
│ subloom-web: 8 (2 in progress) │
│ subloom-extension: 5 (1 in progress) │
│ subloom-ml: 3 (0 in progress) │
└──────────────────────────────────────────────┘
┌─ Needs Attention ────────────────────────────┐
│ 📥 3 inbox items → /yux-pm-triage │
│ ⚠️ 1 blocked | ⚠️ 2 overdue │
└──────────────────────────────────────────────┘
Next actions:
/yux-pm-triage - Process inbox
/yux-pm-plan - Plan next sprint
/yux-pm-prd - Create new feature PRD
User: /yux-pm-overview
Claude: === Subloom Overview ===
Health: 45/100 (Needs Attention)
...
⚠️ Alerts:
1. [OVERDUE] WYX-123: User authentication - 3 days overdue
2. [BLOCKED] WYX-456: Payment integration - blocked by WYX-123
PM workspace not initialized.
Run /yux-pm-init to configure your Initiative and sub-projects.
Failed to connect to Linear.
Please check your Linear MCP configuration and try again.
=== <Initiative Name> Overview ===
Health: 100/100 (Excellent)
No active issues in your Initiative.
Your backlog is empty! Time to plan new work:
/yux-pm-prd - Create a new feature PRD