Skip to main content

ops digest

Daily digest generation, reporting, and task management. The digest system tracks project health over time and generates AI-powered summaries for standups and stakeholder communication.

Two-Sided Surface

ops digest is both a human reporting tool (standup, executive, weekly) and a dashboard data source (the api-* subcommands power the portfolio dashboard).

When to Use

☀️

Morning Standup

Run ops digest standup to get a 3-5 bullet AI summary of yesterday's commits — paste straight into Slack or speak it aloud with --voice.

📊

Stakeholder Reporting

ops digest executive and ops digest weekly produce polished summaries that translate engineering work into business outcomes.

Planned-Work Tracking

Add tasks with add-task, dispatch them to ADO or Claude with dispatch, and let the runner poll for new work overnight.

Subcommands

Reporting

SubcommandDescription
standupGenerate daily standup summary (3-5 AI bullet points)
dailyGenerate daily digest for all projects
showShow a specific day's digest
historyShow digest history and trends
compareCompare two days' digests
trendShow trend data for the portfolio
executiveGenerate executive summary for stakeholders
weeklyGenerate weekly accomplishments + plans summary

Task Management

SubcommandDescription
add-taskAdd a planned task
tasksShow tasks (defaults to open only)
complete-taskMark a task as completed
delete-taskDelete a task permanently
dispatchDispatch a task to ADO work item or local Claude Code CLI
runnerRun overnight agent runner to poll and dispatch digest tasks
sync-adoSync ADO work item statuses back to digest tasks

API Endpoints (Dashboard)

These commands emit JSON for the portfolio dashboard. You usually do not invoke them directly — the dashboard does.

SubcommandDescription
api-statusGet portfolio status as JSON
api-refreshForce-refresh portfolio data
poll-refreshPoll for pending refresh requests
api-trendGet historical trend data as JSON
api-latestGet most recent digest with AI summary as JSON
api-projectGet historical data for a specific project as JSON

ops digest standup

Generate a daily standup summary. By default it grabs your commits from the last 24 hours (72 hours on Mondays to cover the weekend) and asks an LLM to produce 3-5 concise bullet points.

My commits across the portfolio, summarized by AI
Terminal
$ops digest standup

Flags

FlagTypeDescriptionDefault
--hours-hINTEGERTime period in hoursauto (72h Mon, 24h otherwise)
--author-aTEXTAuthor email filterkgray@wasteologygroup.com
--save / --no-saveflagSave digest to docs/digests/save
--no-aiflagSkip AI summarization — just list raw commits
--tasks-tTEXTSemicolon-separated planned tasks to include
--jsonflagOutput as JSON
--voice / --no-voiceflagSpeak the AI summary aloudno-voice
--supportflagOnly support project commits
--ownedflagOnly owned project commits

Examples

My commits, AI summary, saved to docs/digests/
Terminal
$ops digest standup
Restrict to owned-portfolio projects (skip support repos)
Terminal
$ops digest standup --owned
Just list commits — no LLM call, instant output
Terminal
$ops digest standup --no-ai
Custom time period — useful after a long weekend or holiday
Terminal
$ops digest standup --hours 48
Owned vs Support

--owned and --support are mutually exclusive lenses on the portfolio. Without either flag, both are included. Use ops project list to see how each project is categorized.


Daily and Historical Digests

Full daily digest for every project — health, pipelines, commits
Terminal
$ops digest daily
Replay a specific day's digest
Terminal
$ops digest show 2026-06-03
Browse recent digests and trends
Terminal
$ops digest history
Diff two days — what changed, what failed, what shipped
Terminal
$ops digest compare 2026-06-03 2026-06-04
Portfolio-wide trend data over time
Terminal
$ops digest trend

Stakeholder Reports

Stakeholder-friendly summary translating engineering into business outcomes
Terminal
$ops digest executive
Last week's accomplishments plus next week's plan
Terminal
$ops digest weekly
Weekly Cadence

ops digest weekly is designed to be run Friday afternoon or Monday morning. It reads the last 7 days of digests and any open tasks, then drafts a Mon-Fri narrative.


Task Management

The digest task system is a lightweight planning tool — every task has an integer ID, an open/done status, and an optional ADO work item link.

Show open tasks (default filter)
Terminal
$ops digest tasks
Create a new planned task — returns the assigned task ID
Terminal
$ops digest add-task "Deploy new flow"
Mark task #42 done
Terminal
$ops digest complete-task 42
Hard-delete task #42 (use sparingly — prefer complete)
Terminal
$ops digest delete-task 42

Dispatching Tasks

dispatch is the bridge between the digest's lightweight task list and where work actually happens — either an ADO work item or a local Claude Code session.

Create an ADO work item from task #42 and link it back
Terminal
$ops digest dispatch 42
Overnight runner — polls for new tasks and dispatches them automatically
Terminal
$ops digest runner
Pull ADO status changes back into the digest task list
Terminal
$ops digest sync-ado
Task IDs vs ADO Work Item IDs

Digest task IDs (from ops digest tasks) and ADO work item IDs are separate numbering systems. They share no overlap. Use the human-style dispatch <task-id> to create the link.


Dashboard API Endpoints

These are machine-consumption endpoints that emit JSON. The portfolio dashboard polls them on a schedule; you generally invoke them by hand only when debugging.

api-status      # Portfolio status as JSON
api-refresh # Force-refresh portfolio data
poll-refresh # Poll for pending refresh requests
api-trend # Historical trend data as JSON
api-latest # Most recent digest with AI summary as JSON
api-project # Historical data for a specific project as JSON
Subprocess vs Direct DB

In production, the dashboard reads digest data straight from PostgreSQL (DIGEST_USE_DIRECT_DB=true). Locally it spawns these api-* commands as subprocesses. Either path returns identical JSON.