计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
scheduled-summary【效率与协作】Use when a recurring cross-session digest should be produced and delivered via Hermes cron — aggregates session activity, cron job outputs, memory changes, and tool usage stats into a compact summary for delivery via messaging platforms. Surfaces outstanding tasks and cross-session context that's invisible on chat platforms.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Messaging platforms are excellent for one active conversation, but they hide the activity that happened elsewhere: other sessions, scheduled jobs, saved memory, and unresolved items from earlier work. This skill creates a periodic digest that surfaces that cross-session activity in a compact format suitable for chat messaging platforms or any notification channel that accepts Markdown or plain text.
The digest is designed for a cron scheduler. It reads optional local data sources (session store, cron output directory, memory JSON files, and log file), filters activity to a configurable time window, and emits Markdown, JSON, or plain text. When no data sources are configured, it emits a template digest that an agent can fill by querying its own platform-specific session history, scheduler status, and memory tools.
From this skill directory:
python scripts/summarize.py generate --since 24h
With explicit data sources:
python scripts/summarize.py generate \
--since 24h \
--sessions-db /path/to/sessions.sqlite \
--cron-dir /path/to/cron-output \
--memory-dir /path/to/memory-json \
--log-file /path/to/agent.log
Show current configuration and skipped sources:
python scripts/summarize.py config
Create a config template to fill in:
python scripts/summarize.py init --output .summary-config.json
--since (24h, 7d, 2w,
etc.) unless the source explicitly marks an item overdue.generate --since 24h and inspect the result
for length, sensitive fields, and duplicate items.--sections sessions,cron,outstanding to keep the
first scheduled digest short. Add memory and tools if they are useful.Completion criterion: the scheduled command produces a digest with a generated timestamp, the requested sections, and no unexpected secrets or full transcripts.
Generic daily cron scheduler entry:
0 8 * * * cd /path/to/scheduled-summary && python scripts/summarize.py generate --since 24h --output /tmp/activity-digest.md
Example with environment variables instead of flags:
0 8 * * * SESSIONS_DB=/data/sessions.sqlite CRON_OUTPUT_DIR=/data/cron MEMORY_DIR=/data/memory LOG_FILE=/data/agent.log python /path/to/scheduled-summary/scripts/summarize.py generate --since 24h
To deliver to a messaging platform, pipe or post the generated file using your own notifier:
python scripts/summarize.py generate --since 24h --output /tmp/digest.md
python /path/to/send_notification.py /tmp/digest.md
Keep the notifier separate from the digest generator so the script remains portable across platforms.
Markdown output is optimized for chat platforms:
## / ### headings.Supported formats:
python scripts/summarize.py generate --format markdown
python scripts/summarize.py generate --format json
python scripts/summarize.py generate --format text
Write to a file:
python scripts/summarize.py generate --since 7d --output weekly-digest.md
Include only specific sections:
python scripts/summarize.py generate --sections sessions,cron,outstanding
Common section sets:
sessions,cron,outstandingsessions,cron,memory,tools,outstandingcron,toolsConfigure paths with flags, environment variables, or a generated config file:
| Source | Flag | Environment variable |
|---|---|---|
| Session SQLite database | --sessions-db | SESSIONS_DB |
| Cron output directory | --cron-dir | CRON_OUTPUT_DIR |
| Memory JSON directory | --memory-dir | MEMORY_DIR |
| Tool/log file | --log-file | LOG_FILE |
| Decision records | --decisions-dir | DECISIONS_DIR |
See references/data-sources.md for expected formats and schema notes.
If a decision record directory is available, pass it with --decisions-dir or
DECISIONS_DIR. The digest scans Markdown decision records for accepted or
proposed decisions whose Next review: YYYY-MM-DD is due, then reports the count
and titles in the Outstanding section.
News monitoring jobs usually write a scheduled output file. Point --cron-dir at
the directory containing those outputs. The digest will report whether monitoring
ran, succeeded, failed, or marked itself overdue. Keep the full news summary in
its own file; the scheduled summary should only mention that monitoring ran and
whether action is required.
references/digest-format.md — section contract, output variants, daily and
weekly examples.references/data-sources.md — source configuration, expected formats, and
schema examples.templates/digest-template.md — blank Markdown template for agent-filled or
manually curated digests.scripts/summarize.py — stdlib CLI for generating, configuring, and
bootstrapping summary files.python scripts/summarize.py --help shows generate, config, and init.python scripts/summarize.py generate --since 24h works without sources
and emits template mode output.--sections excludes omitted sections from Markdown, JSON, and text.--format json returns parseable JSON.