admin-meeting-prep · git:20260609.fb3d951 · 2026-06-09 · sha256 ce10371d378c1548
admin-meeting-prep git:20260609.fb3d951A
Immutable. This exact content never changes and is served at /api/v1/blob/ce10371d378c1548.
--- name: admin-meeting-prep sheetId: "3.03" description: "A scheduled, auto-running admin-meeting-prep assistant: every day at 9 AM it scans meetings within the next 7 days and sends action reminders; every day at 3 PM it sends a full briefing for the next day's meetings. Notifications are sent to yourself via Google Chat. No manual trigger needed; does not handle post-meeting follow-up." category: operations project: admin-meeting-prep platform: claude status: WIP author: Jane Liao input: "None (scheduled auto-trigger; reads Google Calendar and Gmail)" process: "9am cron: scan the 7-day calendar → send action reminders to Google Chat | 3pm cron: scan Gmail for attendee background → send briefing to Google Chat" output: "Google Chat self-message: an action checklist in the morning, a structured briefing in the afternoon" synergy: [] --- # Meeting Prep ```bash npx skills add https://github.com/peter-tu-zynkr/zynkr-skill-builder --skill admin-meeting-prep ``` A admin-meeting-prep assistant that runs automatically twice a day: at 9 AM it tells you which meetings in the coming week need advance preparation, and at 3 PM it sends a full briefing for the next day's meetings — including attendee background, a summary of recent email exchanges, and suggested prep items. Notifications go straight into Google Chat, no manual trigger required. --- ## Two Scheduled Modes | Schedule | Time | Function | |------|------|------| | **Morning Scan** | Daily 09:00 | Scan meetings in the next 7 days → send action reminders | | **Afternoon Briefing** | Daily 15:00 | Scan the next day's meetings → send a full briefing | --- ## Mode A — Morning Scan (triggered at 09:00) ### Step A1 — Scan Google Calendar Read all calendar events within the next 7 days. Use `mcp__google_workspace__get_events`: - `user_google_email`: the user's email - `time_min`: today 00:00 - `time_max`: today + 7 days 23:59 Filter criteria: - Keep only events that have other attendees (not personal block time) - Exclude all-day events - Exclude cancelled events ### Step A2 — Send Action Reminders to Google Chat For each qualifying meeting, list the actions that need to be taken. Decision logic: - Within 1 day from now → `🔴 明天!請確認是否有準備` - 2–3 days out → `🟡 本週內,建議開始準備` - 4–7 days out → `🟢 本週末前留意` Output format (Google Chat self-message): ``` 📅 本週會議 Action 清單|[日期] 🔴 明天 • [會議名稱] [時間] — 與會者:[人名] → 動作:確認議程 / 回顧相關 email 🟡 2–3 天內 • [會議名稱] [時間] — 與會者:[人名] → 動作:預先準備資料 🟢 4–7 天內 • [會議名稱] [時間] → 動作:備查 如無特定會議 → 發送「📅 本週無多人會議,保持待命。」 ``` Use `mcp__google_workspace__google_chat_send_self_message` (requires Peter to wire up the Google Chat API on his end). --- ## Mode B — Afternoon Briefing (triggered at 15:00) ### Step B1 — Get the Next Day's Meetings Use `mcp__google_workspace__get_events`: - `time_min`: tomorrow 00:00 - `time_max`: tomorrow 23:59 Apply the same filtering as Mode A to obtain `TOMORROW_MEETINGS[]`. If there are no meetings → send "✅ 明天沒有多人會議,無需準備。" and stop. ### Step B2 — Gather Gmail Background For each attendee of each meeting, search recent email exchanges. Use `mcp__google_workspace__search_gmail_messages`: - query: `from:[attendee_email] OR to:[attendee_email]` - time range: the past 30 days Compile for each attendee: - Subjects of the most recent 3–5 emails + a one-line summary each - Whether there are any unanswered to-dos (detect keywords like 「請確認」, 「麻煩回覆」, "waiting for", etc.) ### Step B3 — Generate and Send the Briefing Generate one Google Chat message per meeting: ``` 📋 明日會議 Briefing|[會議名稱] 時間:[start_time] 與會者:[人名清單] 🎯 會議目的 [從 description 或 title 推斷;無法判斷則標「未知,建議確認」] 👥 與會者背景 • [名字]:[近期互動摘要 / 職稱(若已知)] 📧 近期相關 Email(最多 5 筆) • [日期] [主旨] — [一句話摘要] ⚠️ 待確認事項 • [未回覆 / 懸而未決的項目] ✅ 建議進場前確認 1. [問題或資料] 2. [問題或資料] ``` Send one independent message per meeting. --- ## Inputs | Parameter | Default | Description | |------|--------|------| | `SCAN_DAYS` | 7 | How many days ahead the morning scan covers | | `EMAIL_LOOKBACK_DAYS` | 30 | How many days back to search Gmail | --- ## Outputs | Schedule | Output | |------|------| | 09:00 | Google Chat self-message: a 7-day action checklist | | 15:00 | Google Chat self-message: one briefing per meeting for the next day | --- ## Limitations - **Google Chat MCP not yet wired up**: currently the google_workspace MCP supports Gmail / Drive / Calendar; Google Chat requires Peter to separately integrate the Chat API on his end - Does not support LINE / Slack or other chat tools - If an attendee has no Gmail exchange history, the background field shows "無歷史記錄" - Scheduled triggering requires implementation via a cron job or the Claude Code schedule skill