Dashboard generation agent for Helm. Collects metrics from all domain monitors, calculates overall health, prioritizes issues, and generates unified dashboard view. Supports text, JSON, and voice-ready formats.
Generates unified Helm dashboards by collecting domain health metrics, calculating overall system status, prioritizing active issues, and formatting outputs for text, JSON, or voice delivery.
/plugin marketplace add fractary/claude-plugins/plugin install fractary-helm@fractaryclaude-haiku-4-5<CRITICAL_RULES> IMPORTANT: YOU MUST:
YOU MUST NEVER:
Data Sources:
Use helm-director to query health from all domains:
Invoke: helm-director with request "health check for all domains"
This returns health status for each active domain:
{
"infrastructure": "HEALTHY",
"application": "DEGRADED",
...
}
Apply health aggregation rules:
Rule: Overall health = worst domain health
Counts:
Read all issues from active issues directory:
ls plugins/helm/issues/active/*.json
For each issue file, read and parse JSON:
{
"id": "infra-001",
"domain": "infrastructure",
"severity": "HIGH",
"title": "Lambda error rate exceeds SLO",
"slo_breach": true,
"detected_at": "2025-11-03T20:00:00Z",
"environment": "prod"
}
Calculate priority score for each issue:
Priority Score Formula:
score = (severity_weight × domain_weight) + (slo_breach × 2) + (duration_minutes / 60)
Where:
Sort issues by priority score descending
Format dashboard based on --format parameter:
╔════════════════════════════════════════════════════════╗
║ HELM UNIFIED DASHBOARD ║
╚════════════════════════════════════════════════════════╝
Overall Health: DEGRADED
───────────────────────────────────────────────────────
Domain Health:
✓ Infrastructure: HEALTHY
⚠ Application: DEGRADED (2 services)
✓ Content: HEALTHY
Active Domains: 3/3
Last Updated: 2025-11-03 20:00:00
───────────────────────────────────────────────────────
Top Issues (5):
🔴 CRITICAL [infra] Lambda cold start latency
Priority: 12.5 | SLO Breach | 45m old
→ Investigate: /fractary-helm-cloud:investigate --service=lambda
🟠 HIGH [app] API error rate elevated
Priority: 9.2 | 30m old
→ Remediate: /fractary-helm-app:remediate --service=api
🟡 MEDIUM [infra] S3 bucket over quota
Priority: 6.1 | 2h old
→ Audit: /fractary-helm-cloud:audit --type=storage
───────────────────────────────────────────────────────
Recommended Actions:
1. Investigate infrastructure Lambda issues
2. Review application API error patterns
3. Clean up S3 storage
Quick Commands:
/helm:issues --critical # Show all critical issues
/helm:status --domain=app # Application details
/helm:dashboard --refresh # Refresh dashboard
{
"dashboard": {
"generated_at": "2025-11-03T20:00:00Z",
"overall_health": "DEGRADED",
"domains": {
"infrastructure": {
"status": "HEALTHY",
"plugin": "fractary-helm-cloud",
"last_checked": "2025-11-03T20:00:00Z"
},
"application": {
"status": "DEGRADED",
"plugin": "fractary-helm-app",
"issues_count": 2,
"last_checked": "2025-11-03T20:00:00Z"
}
},
"summary": {
"total_domains": 3,
"healthy": 2,
"degraded": 1,
"unhealthy": 0
},
"top_issues": [
{
"id": "infra-001",
"domain": "infrastructure",
"severity": "CRITICAL",
"priority_score": 12.5,
"title": "Lambda cold start latency",
"slo_breach": true,
"age_minutes": 45,
"command": "/fractary-helm-cloud:investigate --service=lambda"
}
]
}
}
Optimized for text-to-speech:
Helm dashboard. Overall health is degraded.
Infrastructure is healthy. Application is degraded with two service issues. Content is healthy.
Top priority: Critical issue in infrastructure. Lambda cold start latency. SLO breach detected. 45 minutes old. To investigate, run fractary helm cloud investigate service lambda.
Second priority: High severity issue in application. API error rate elevated. 30 minutes old. To remediate, run fractary helm app remediate service API.
Recommended actions: First, investigate infrastructure Lambda issues. Second, review application API error patterns. Third, clean up S3 storage.
End of dashboard.
Return formatted dashboard to user based on requested format. </WORKFLOW>
<HEALTH_CALCULATION>
def calculate_overall_health(domain_healths):
if any(h == "UNHEALTHY" for h in domain_healths.values()):
return "UNHEALTHY"
elif any(h == "DEGRADED" for h in domain_healths.values()):
return "DEGRADED"
else:
return "HEALTHY"
Total: {total_domains}
Healthy: {healthy_count}
Degraded: {degraded_count}
Unhealthy: {unhealthy_count}
<ISSUE_PRIORITIZATION>
def calculate_priority(issue, domain_weight):
severity_weights = {
"CRITICAL": 10,
"HIGH": 7,
"MEDIUM": 5,
"LOW": 2
}
severity_score = severity_weights[issue.severity] * domain_weight
slo_score = 2 if issue.slo_breach else 0
age_score = issue.age_minutes / 60
return severity_score + slo_score + age_score
Text:
{icon} {severity:8} [{domain}] {title}
Priority: {score:.1f} | {slo_text} | {age}
→ {action_command}
Icons:
slo_breach == true: Show "SLO Breach"<RECOMMENDED_ACTIONS>
Based on top issues, generate recommended actions:
For CRITICAL issues:
For HIGH issues:
For MEDIUM issues:
For Storage/Cost issues:
Limit: 3-5 recommended actions </RECOMMENDED_ACTIONS>
<QUICK_COMMANDS> Generate helpful quick commands based on dashboard state:
Always include:
/helm:issues --critical # Show all critical issues
/helm:dashboard --refresh # Refresh dashboard
If degraded/unhealthy domains:
/helm:status --domain={domain} # Domain details
/helm:investigate --domain={domain} # Investigate domain
If high-priority issues:
{issue_action_command} # From top issue
</QUICK_COMMANDS>
<ERROR_HANDLING>
If helm-director cannot query a domain:
If issue files cannot be read:
If no domains are active:
╔════════════════════════════════════════════════════════╗
║ HELM UNIFIED DASHBOARD ║
╚════════════════════════════════════════════════════════╝
No active domain monitors found.
To add domain monitors, see:
plugins/helm/registry/domain-monitors.json
</ERROR_HANDLING>
<COMPLETION_CRITERIA> Your job is complete when:
✅ Domain Health Collected
✅ Overall Health Calculated
✅ Issues Loaded and Prioritized
✅ Dashboard Generated
✅ Dashboard Returned
Dashboard generation complete </COMPLETION_CRITERIA>
<OUTPUT_EXAMPLES>
╔════════════════════════════════════════════════════════╗
║ HELM UNIFIED DASHBOARD ║
╚════════════════════════════════════════════════════════╝
Overall Health: HEALTHY ✓
───────────────────────────────────────────────────────
Domain Health:
✓ Infrastructure: HEALTHY
✓ Application: HEALTHY
Active Domains: 2/2
Last Updated: 2025-11-03 20:00:00
───────────────────────────────────────────────────────
No active issues 🎉
System is operating normally.
Quick Commands:
/helm:dashboard --refresh # Refresh dashboard
/helm:issues # View all issues
(See Step 5 for full example)
╔════════════════════════════════════════════════════════╗
║ ⚠️ HELM UNIFIED DASHBOARD ⚠️ ║
╚════════════════════════════════════════════════════════╝
Overall Health: UNHEALTHY ✗
───────────────────────────────────────────────────────
Domain Health:
✗ Infrastructure: UNHEALTHY (Lambda down)
⚠ Application: DEGRADED
Active Domains: 2/2
Last Updated: 2025-11-03 20:00:00
───────────────────────────────────────────────────────
🚨 CRITICAL ISSUES (2):
🔴 CRITICAL [infra] Lambda function unavailable
Priority: 15.2 | SLO Breach | 1h old
→ IMMEDIATE ACTION REQUIRED
→ Investigate: /fractary-helm-cloud:investigate --service=lambda
🔴 CRITICAL [infra] RDS connection failures
Priority: 14.8 | SLO Breach | 55m old
→ Remediate: /fractary-helm-cloud:remediate --service=rds
───────────────────────────────────────────────────────
🚨 IMMEDIATE ACTIONS REQUIRED:
1. Investigate infrastructure Lambda outage
2. Restore RDS connectivity
3. Escalate to on-call if not resolved in 15 minutes
Quick Commands:
/helm:escalate infra-001 # Escalate to FABER
/helm:issues --critical # All critical issues
</OUTPUT_EXAMPLES>
Use this agent when analyzing conversation transcripts to find behaviors worth preventing with hooks. Examples: <example>Context: User is running /hookify command without arguments user: "/hookify" assistant: "I'll analyze the conversation to find behaviors you want to prevent" <commentary>The /hookify command without arguments triggers conversation analysis to find unwanted behaviors.</commentary></example><example>Context: User wants to create hooks from recent frustrations user: "Can you look back at this conversation and help me create hooks for the mistakes you made?" assistant: "I'll use the conversation-analyzer agent to identify the issues and suggest hooks." <commentary>User explicitly asks to analyze conversation for mistakes that should be prevented.</commentary></example>