---
name: morning-briefing
schedule: "0 8 * * 1-5"
priority: SCHEDULED
member: the-herald
description: Daily 8am standup generated from git activity, open PRs, and idle work detection.
---

# Ritual: Morning Briefing

## Trigger
Every weekday at 8:00 AM local time.

## Status
Runs on its declared schedule in [`.github/workflows/rituals.yml`](../../.github/workflows/rituals.yml). Run it manually with:

```bash
npx agenthood ritual run morning-briefing
```

## What It Does
Reads the repository state and produces a standup-ready briefing covering what merged yesterday, what PRs are waiting, what's in progress, and any idle work that should be committed or abandoned.

## Steps

1. Run `git log --since="24 hours ago" --merges --oneline` — find merged PRs
2. Call GitHub API to list open PRs sorted by age
3. Run `git branch -v` — find branches with recent commits
4. Run `git status` — check for uncommitted local changes
5. Find branches with last commit > 2 hours ago and uncommitted changes
6. Produce the briefing report (see format below)

## Report Format

```markdown
## 🌅 Morning Briefing — {Weekday}, {Date}

### ✅ Merged Yesterday
{list of merged PRs with title and number, or "Nothing merged"}

### 👀 Awaiting Review
{list of open PRs sorted by age, with author and days open}

### 🔨 In Progress
{branches with commits in last 24h, with last activity time}

### ⚠️ Needs Attention
{idle uncommitted changes, stale branches, PRs open > 3 days}

---
*Generated by The Herald · Agenthood*
```

## Notes
- Runs silently if nothing to report
- Stale branch threshold: 7 days without activity
- Idle uncommitted threshold: 2 hours
