Morning Briefing
Daily synthetic prompt that asks the session to compose a Trello + Calendar briefing and post it to Slack.
- License 许可
- MIT
- 最近更新
- 2026-11-07
- Stars
- ★ 1
- Forks
- 0
01 前言 Front Matter
- name
- Morning Briefing
- description
- Daily synthetic prompt that asks the session to compose a Trello + Calendar briefing and post it to Slack.
03 SKILL.md 正文
Morning Briefing
Once a day (default 08:00 weekdays, configurable) the scheduler
fires a synthetic prompt at the gateway. The gateway formats it as
Heartbeat job: morning-briefing\n\nPayload:\n{...} and routes it
to the session the same way /jobs heartbeat ticks are routed.
What the session does on receipt
- Treat the prompt like any other inbound message — same tier classifier, same orchestrator routing.
- Read today's calendar (the
data/calendar.mdmirror kept fresh by thegoogle-calendarFitting's sync, or the calendar.py CLI for ad-hoc lookups). Skip if the Calendar Fitting isn't selected. - Read open Trello tasks (the trello data source's "A Fazer" list). Skip if the Trello Fitting isn't selected.
- Compose a Slack message — events first (chronological), then up to two task suggestions with one-sentence reasons each. Skip any section whose data source is empty. Skip a "blocking" section unless a real blocker exists (no fabrication).
- Post via
mcp__claude_ai_Slack__slack_send_messageto the orchestrator'sreport_channel. Ifreport_channelis empty, log to stdout and stop — don't search Slack for a channel. - If both calendar and tasks are empty, post a one-line acknowledgement ("Quiet day.") rather than staying silent — briefings have a fixed cadence and the principal expects proof-of-life.
Hard rules
- Under 200 words. No filler ("Good morning!", "Have a great day!").
- Informational only. Do not offer to do work autonomously here. If the principal wants to act, they reply in Slack and the existing heartbeat approval flow (Phase 2 T4) takes it from there.
- Don't post anywhere except the configured Slack target.
Configuration knobs
GARRISON_BRIEFING_TIME(default08:00) — local fire time.GARRISON_BRIEFING_WEEKDAYS_ONLY(defaulttrue) — Mon–Fri.- Re-running setup with new env values replaces the cron entry by
id (
morning-briefing). No need to remove the old job manually.
Manual trigger
node apm_modules/_local/scheduler/scripts/scheduler.mjs run-now morning-briefing
Useful for empty-state tests and same-day re-fires.
04 同仓库更多 Skills
pinned-helper
An owned skill the human has pinned so the Improver must not touch it.
legacy-helper
A rarely used helper kept around from an earlier workflow.
human-notes
A human-authored skill not deployed by APM (loose, not in the lock).
garrison-helper
Helps compose and station Garrison Fittings into Faculty role slots.
walkthrough
Record a short, narrated, captioned video walkthrough that proves a finished coding task and shows how it behaves, then self-verify the video via vision on extracted frames and publish it as one scrubbable Tailscale link. Use after completing a change/fix/feature on a web project (Next.js/React etc.) when the user wants visual proof of work, a demo of a user flow, or to avoid manually retesting and watching a long raw screen recording. Triggers on requests like "record a walkthrough", "show me it working", "make a demo video of this", "prove the feature", or finishing a UI/route/form/API change worth demonstrating. Not for walking through a full from-scratch project build.
Trello
Manage tasks via Trello REST API.