Aggregates weather, game updates, and concert data into a daily markdown briefing. Triggered by 'morning briefing', 'daily briefing', 'run my briefing', 'wha...
A pure aggregator skill that reads data produced by other skills, filters and formats it, and writes a composed markdown briefing to data/briefing.md.
Initialize config (first run only):
bash scripts/init_config.sh
Run the briefing:
bash scripts/morning_briefing.sh
The script outputs the path to the generated markdown file.
Read the file and present its contents verbatim to the user. Do not summarize, reformat, paraphrase, add commentary, or editorialize. Output the entire markdown file exactly as written — the markdown IS the briefing. Do not wrap it in a code block. Do not omit sections. Do not change heading levels or link formatting.
Weather is built-in (direct curl to wttr.in). Other sections are driven by external skills that write JSON data files:
Each source has a jq template in assets/templates/<source-id>.jq that formats the raw JSON into markdown.
Edit ~/.openclaw/config/morning-briefing.json to:
weather.enabled to falseweather.locationsources.<id>.enabled"games": ["CS2"] to steam-games-updates preferencescities array in upcoming-metal-concerts preferencesdays_ahead in upcoming-metal-concerts preferencessources in the config with data_path and preferencesassets/templates/<source-id>.jq that accepts the source's JSON schema$preferences (argjson) and $today/$cutoff (arg) variablesZIP package — ready to use