Briefing (Calendar Agenda, Weather, Pending To-Dos)

v2.1.0

Daily briefing: gathers today's calendar, active todos, and local weather from available workspace tools, then composes a concise summary.

1· 1.7k·9 current·9 all-time
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The skill's name/description match its behavior: it orchestrates three companion skills (calendar, todos, weather). It does not declare any environment variables, binaries, or installs itself, and it explicitly skips missing companions — this is proportionate to a coordination/orchestration skill.
Instruction Scope
Runtime instructions are narrowly scoped: check which companion skills are available, read each companion's SKILL.md, call the companion commands (notably openmeteo CLI for weather), and compose a concise message. The skill explicitly forbids fabricating data and limits retries on failures. The only broader action is reading other skills' SKILL.md files, which is expected for an orchestrator but means the briefing's safety depends on those companions.
Install Mechanism
No install spec or code is provided (instruction-only skill), so nothing is written to disk or downloaded by the skill itself — this is the lowest-risk installation pattern.
Credentials
The skill declares no required environment variables or secrets. It relies on companion tools (e.g., gcalcli requires Google OAuth configured externally, openmeteo-sh uses public API) and a default city in session context for weather; these are proportional and documented.
Persistence & Privilege
The skill is not forced-always-on (always:false). The README recommends using OpenClaw's cron scheduler to run briefings periodically; scheduled runs use the same agent permissions as normal sessions. This is not intrinsically dangerous, but recurring/autonomous invocation increases the impact if any companion skill is untrusted.
Assessment
This skill itself is an orchestrator and appears coherent, but before installing consider: (1) ensure you trust the companion skills it will call (gcalcli-calendar, todo-management, openmeteo-sh-weather-simple) because this briefing will read their SKILL.md and invoke their commands; a malicious companion could misuse those calls; (2) if you enable scheduled cron runs, remember those run automatically with the same agent permissions and will post output to channels you choose — limit delivery channels if necessary; (3) verify you have/give the required external configuration outside this skill (Google Calendar OAuth for gcalcli, default city in session for weather, openmeteo-sh installed if you want weather); (4) test once in an isolated session to confirm formatting and that no unexpected data is exposed. If any companion skill is untrusted or you do not want recurring automated runs, do not enable cron scheduling.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

📋 Clawdis
agendavk974bv6b7kwkkpkhd4x8mqrcax815vp4briefingvk978xens1av989gakwc1x4tgzh8150svcalendarvk978xens1av989gakwc1x4tgzh8150svcronvk978xens1av989gakwc1x4tgzh8150svdailyvk978xens1av989gakwc1x4tgzh8150svlatestvk978xens1av989gakwc1x4tgzh8150svmorningvk978xens1av989gakwc1x4tgzh8150svproductivityvk978xens1av989gakwc1x4tgzh8150svsummaryvk978xens1av989gakwc1x4tgzh8150svtodovk978xens1av989gakwc1x4tgzh8150svweathervk978xens1av989gakwc1x4tgzh8150sv
1.7kdownloads
1stars
5versions
Updated 1mo ago
v2.1.0
MIT-0

Briefing

Compose a daily briefing using companion skills. Each source is optional — skip it if the skill is not available.

Sources

Three companion skills. Skip any that are not in the available skills list:

  • Calendargcalcli-calendar
  • Todostodo-management
  • Weatheropenmeteo-sh-weather-simple (requires a default city/country in session context)

If none of the three are available — tell the user you have nothing to build a briefing from and stop. Do not fabricate a briefing.

Briefing day

Decide whether the user's day is effectively over based on current time and today's remaining calendar events.

  • Day still active -> briefing covers today.
  • Day winding down -> briefing covers tomorrow.

Todos are not date-bound — always show active items.

Gather

For each available source, read its SKILL.md before calling any commands.

Calendar

  1. Read gcalcli-calendar SKILL.md.
  2. Fetch the briefing day's agenda.
  3. If no events — note it.

Todos

  1. Read todo-management SKILL.md.
  2. List active/pending items.
  3. If none — note it.

Weather

  1. Get the briefing day's conditions and forecast. Use the user's default city/country from session context.
  2. Commands (always use --llm):
    • Today: openmeteo weather --current --forecast-days=1 --city="{city}" --llm
    • Tomorrow: openmeteo weather --current --forecast-days=2 --forecast-since=2 --city="{city}" --llm

On errors

If a command fails, skip that section and mention the failure briefly. Do not retry more than once. Never fabricate data.

Compose

Build a single message. Include only sections whose skill was available. If a skill returned no data, still include the section with a one-line note.

Structure

  1. Title line — compact: date, day-of-week, time. E.g. Брифинг 14.02 (пт, 8:12). If briefing day is tomorrow, say so.
  2. Weather — 1–2 lines: temperature, sky, anything notable.
  3. Calendar — briefing day's events, chronologically. Format: HH:MM — Title. All-day events first. If empty: one line noting no events.
  4. Upcoming — next 2-3 days' notable events (if any), one line per day. Omit if nothing notable.
  5. Todos — active items, briefly. Higher priority first if supported. If empty: one line noting no todos.

Example output

Follow this format exactly in the user's language:

Briefing 14.02 (Sat, 8:12)

**🌤 Weather (London, UK)**
+2°C, cloudy, wind 11 km/h. Daytime to -3°C, light rain.

**📅 Calendar**
09:00 — Standup
14:00 — Sprint review
18:30 — Driving school

**🔜 Upcoming**
• 15.02: Free day.
• 16.02: Daily standup 12:00, Driving school 18:30.

**✅ Todos**
• [work] Debug feature X.
• [personal] Book a doctor's appointment.

Note: bold header → content immediately on next line (zero blank lines); one blank line between sections; no trailing question or CTA.

Formatting rules (strict)

These rules are critical for readability on mobile. Follow them exactly.

  • Between sections: exactly one empty line.
  • Between a section header and its content: zero empty lines. Content starts on the very next line.
  • Right:
**Calendar**
09:00 — Standup
14:00 — Review
  • Wrong:
**Calendar**

09:00 — Standup
14:00 — Review
  • When briefing day is tomorrow, calendar and weather headers should reflect that.
  • Do not shorten the user's city name.
  • Match the language of the user's request.
  • Simple formatting — optimize for mobile chat. Bold section headers, short lines.
  • Concise, skimmable, no filler.

Strict prohibitions

  • No preamble — dive straight in.
  • No call to action or question at the end. The briefing ends after the last section. No "What's next?", "What's first?", or similar.
  • Never invent events, todos, or weather data. Only report what tools returned.

Comments

Loading comments...