Skill

autonomous-briefing

Assemble a dated briefing from external research and dataset scripts, labeling unavailable sections instead of inventing content. Use when you want a repeatable morning scan rather than an open-ended research session.

Category
optional
Version
1.0.0
License
MIT
Status
active
Length
84 lines
Source
skills/optional/autonomous-briefing/SKILL.md

Install and discovery

npx --yes --package @youcisla/agent-foundry agent-foundry-install

After the installer runs, this record is available as autonomous-briefing. See the docs for harness roots and verification steps.

Contents

Autonomous Briefing

A scaffold that runs two external scripts, renders a dated Markdown briefing, and labels what it could not get. It is not a self-directed agent and it does not synthesize new analysis.

Procedure

What ships

skills/optional/autonomous-briefing/scripts/autonomous_briefing.py.

The script calls two external programs through HERMES_SKILLS_ROOT:

  • research/last30days/scripts/last30days.py for trending research
  • huggingface-dataset-intel/scripts/hf-top-datasets.py for dataset changes

Those skills are not shipped here. If either is absent, the corresponding section is marked unavailable.

What it produces

  1. Trending research (condensed from last30days clusters, up to five)
  2. Dataset movement (from hf-top-datasets, up to the requested limit)
  3. Memory delta (a placeholder: previous briefing found or not found)
  4. A fixed list of three suggested actions

The action list is hardcoded. Modify the script or write your own actions; do not present them as model-derived recommendations.

Usage

python skills/optional/autonomous-briefing/scripts/autonomous_briefing.py \
  --topic="AI news" --sources=reddit,hackernews --days=1 --output=briefing.md

Without --output, the briefing prints to stdout. The --save-to-memory argument exists but the current script does not persist the briefing.

Cron example

0 8 * * * cd "$HOME/agent" && \
  python skills/optional/autonomous-briefing/scripts/autonomous_briefing.py \
    --topic="AI news" --output="$HOME/briefings/$(date +%F).md"

Set a timeout and a log destination in your scheduler. Network calls are made by the external scripts, not by this one.

Prerequisites and limits

  • HERMES_SKILLS_ROOT must point at a tree containing the two scripts above.
  • The external scripts need their own dependencies and network access.
  • Subprocess timeouts are 180 seconds for research and 60 seconds for datasets.
  • An unavailable source produces a labeled empty section, not fabricated items.

Anti-patterns

  • Summarizing stale feeds without a timestamp.
  • Reporting more than three actions; the list stops being actionable.
  • Presenting the fixed action list as personalized analysis.
  • Running without a cost budget, timeout, or stop condition.

Verification Checklist

  • [ ] The briefing carries today's date and a timestamp for each source.
  • [ ] A missing external script produces an "unavailable" line, not invented data.
  • [ ] The output names the source skill beside each section.
  • [ ] The run stops within the configured timeouts.