em-planning-assistance v0.4.0 Planning

Getting you ready to execute the day - daily meeting cheat-sheets and the AM-readable signal digest that feeds the daily planner.

Problem it solves: walk into every meeting prepared, and surface account expansion / scope signals for AM & Sales - without manually digging through transcripts, email and tasks each morning.

daily-briefingUser skillMedium · ~20-80k

Generates a meeting cheat-sheet for every event on today's calendar - context, attendees, goal, questions to address, expected outcomes and carried-over pending items - sourced from Fireflies, email, Notion tasks and Teams. Acts as a chief-of-staff prepping a briefing folder.

When to use it
plan my daybrief me for todayprep my daytoday's meetingsmeeting prep
How it works
  1. Load config and timezoneReads the manifest to resolve the task DB, timezone, Risk Matrix, and the per-account meeting DBs.
  2. Pull today's calendarFetches the day's meetings, filtering out cancellations and all-day reminders.
  3. Gather context per meetingSearches Fireflies, email, Notion tasks, and Teams for topic-specific context for each meeting.
  4. Pull prior recordsFetches the prior 1:1 Sessions, Conversation Log, and Risk Matrix rows for each counterpart to carry over commitments and risks.
  5. Render the cheat sheetsBuilds each meeting card with current state, pending items, informed questions, the goal, and the expected outcomes.
Example
You say
"brief me for today" - four meetings, including a 1:1 with Sam and a sync with an Acme Robotics stakeholder.
You get back
An interactive daily planner: four chronological meeting cards, each with a cheat sheet (current state, pending items, 2-4 informed questions, goal, expected outcomes), the prior 1:1 focus, prior Conversation Log asks, and flagged risks.

Gotcha: It never fabricates context - if a meeting has no Fireflies / email / Notion data, the gap is flagged.

Gotcha: Task search is scoped to the manifest's task DB, not a blind workspace search.

Reference - what it brings, its process, and what it needs
BringsWalk into every call today informed and prepared; cross-references all sources so nothing pending falls through.
Process
  1. Pull today's calendar; filter declined / cancelled.
  2. Gather context per topic across all sources.
  3. Classify pending items (you owe / they owe).
  4. Render an interactive daily-planner artifact.
NeedsMicrosoft 365FirefliesNotion
em-am-signal-emitterWorkerLight · ~5-20k

A pure markdown formatter. Takes expansion / strategic / scope-creep signals surfaced during the daily sweep and renders the AM-readable digest section. No I/O, deterministic - and never writes to sales-owned data.

Reference - what it brings, its process, and what it needs
BringsSurfaces account-growth and scope-creep mentions for AM / Sales discretion inside the planner briefing - safely, read-only.
Process
  1. Group signals by account, then engagement.
  2. Render bullets (quote · source · confidence).
  3. Drop signals below 0.50 confidence; tag low ones.
NeedsNo I/O (formatter)
em-artifact-drafterUser skillMedium · ~20-80k

Given an open, actionable task, pre-produces a ready-to-use draft artifact and writes it into the task's Notion page body under a "## Draft (review before sending)" section. Notion-only: it never sends anything and never creates Outlook / email drafts. Classifies each task (Email / Doc-or-plan / Scheduling / Decision / Hands-on) and drafts accordingly.

Reference - what it brings, its process, and what it needs
BringsAugments the EM's capacity - the easy work is pre-written to ~80% done and left on the task to review, finish and act on; idempotent, skips tasks already drafted.
Process
  1. Read the open task; classify its artifact type.
  2. Resolve recipients from counterpart + org-directory.
  3. Draft the email / outline / agenda / memo.
  4. Write the Draft section into the task body only.
NeedsNotion MCPorg-directory
em-meeting-load-snapshotUser skillLight · ~5-20k

Snapshots one ISO week of the EM's own meeting load - reads the M365 calendar when available (degrades to manual counts otherwise, never invents metrics), computes meeting hours, load % against the manifest threshold, fragmentation and focus blocks with reproducible rules.

Reference - what it brings, its process, and what it needs
BringsA grounded, owner-gated read on whether the EM's own week is overloaded, feeding a persisted signal instead of a gut feel.
Process
  1. Read the M365 calendar week (or manual counts).
  2. Compute meeting hours, load %, fragmentation, focus blocks.
  3. Preview; write only after an explicit yes via em_db.meeting_load.snapshot.
  4. Above threshold, emit a 'meeting_load' signal via em_db.signals.emit.
NeedsBashReadMicrosoft 365em_db.meeting_load