Project Health
Produce a compact health snapshot of active projects.
Data sources
GET /api/plugins/pm-essentials/readonly-data/open_projects— active projects with task counts and due datesGET /api/plugins/pm-essentials/readonly-data/sprint_tasks— tasks in the active sprint
Output shape
### Project health — <YYYY-MM-DD>
**<Project name>** — <N tasks>, due <date>
- ✓ <count_done> done · ⟳ <count_in_progress> in progress · ◯ <count_todo> todo
- 🚩 <blocker_summary or "no blockers">
**<Next project>** …
Instructions
- Pull
open_projectsandsprint_tasks. - If
$ARGUMENTSnames a project, filter to that one (case-insensitive contains match). - For each project, show task counts by status and flag anything that looks stuck:
- Tasks in
in_progressfor more than 7 days → "stuck" - Tasks past their
due_datewith status ≠done→ "overdue" - Sprints past their
started_at + 14 dayswith tasks still intodo→ "slipping"
- Tasks in
- Keep the output scannable. No prose. No summary paragraph at the end — the table is the summary.
- If no blockers, say "no blockers" explicitly per project so the absence is visible.
Edge cases
- Empty
open_projects→ reply "No active projects. Create one via the chat with pm-nova." sprint_tasksempty but projects exist → note "no active sprint" under each project.