Personal Executive Operating System · Microsoft Copilot

"Chief of Staff" Cowork

Set up an AI Chief of Staff that delivers a proactive daily executive briefing every morning at 7 AM — to both Teams and your inbox — and optionally runs attention sweeps throughout the workday to catch what lands after the brief.

Setup time: 5 minutes Required: 1 prompt (Daily Brief) Optional: 1 prompt (Hourly Sweep) Recommended model: Claude Opus 4.7 Delivery: Teams + Email (brief) · Teams only (sweep)
On This Page
  1. How It Works
  2. What You Get
  3. Prerequisites
  4. Setup — Step 1: Daily Brief (Required)
  5. Setup — Step 2: Hourly Sweep (Optional)
  6. Using Your Brief — Action Codes Explained
  7. Customization
  8. FAQ

How It Works

The Chief of Staff system is built from one or two independent scheduled tasks in Copilot Cowork. Each task is created in its own dedicated Cowork session using a single prompt you copy from this page. Once created, both tasks run automatically on schedule with no further input from you.

⚠️ Critical rule: one task per Cowork session. Cowork only allows one scheduled task to be created per conversation. The Daily Brief and the Hourly Sweep must each be set up in a separate, fresh Cowork session. Do not paste both prompts into the same chat.

At runtime, each task works independently. Both read from your Microsoft 365 data — email, calendar, Teams, SharePoint — through Copilot's Work IQ layer. They do not share a session or require each other to function. The Daily Brief runs at 7 AM and delivers a full executive digest. The Sweep runs up to 5 times a day and delivers only what's new since the last check.

How does the Sweep know what was already in the morning brief? It reads your Teams self-chat, where the morning brief was delivered, and uses that as its baseline. It then scans for anything new since the brief landed. No shared session needed — they both read from the same underlying Microsoft 365 data.

What You Get

FeatureDaily BriefHourly Sweep
When7:00 AM, Mon–Fri9, 11 AM · 1, 3, 5 PM · Mon–Fri
Delivered toTeams self-chat + Outlook inboxTeams self-chat only
ContentFull executive digest (8 sections)Delta scan — new items only
Signal sourcesCalendar, email, Teams, SharePoint, tasksSame, scoped to last 2 hours
If nothing newAlways delivers — "No items today" per sectionSends one line: "All clear"
Action codesC1, C2, C3… (reset each morning)S1, S2, S3… (reset each sweep)

The Daily Brief always includes: Top 3 Priorities · Today's Schedule · Critical Inbox & Attention Debt · Travel Radar (if travel within 7 days) · Week Ahead · Open Loops · Direct Report nudge.

Prerequisites

ℹ️ Both prompts use runtime lookups. They resolve your name, email, manager, timezone, and direct reports automatically from Microsoft Graph when they run — nothing is hard-coded. You can share this page with a colleague and the prompts will personalize to them automatically when they run Step 1.

Setup — Step 1: Daily Brief Required

What this does

Creates a recurring scheduled task that generates your executive brief every weekday morning at 7 AM and delivers it to your Teams self-chat and your Outlook inbox. Run this once and you're set for every morning going forward.

Before you paste — set your model to Claude Opus 4.7

In the top-right corner of the Cowork window, you'll see a model selector dropdown (it may say "Default" or show a model name). Click it and select Claude Opus 4.7. If you don't see Opus 4.7, Sonnet 4.6 will work — but Opus produces significantly sharper briefs for complex multi-source synthesis tasks like this one.

Step-by-step

⚠️ It will run immediately. When Cowork creates a scheduled task, it fires it once right away so you can verify it's working. This is expected — your first brief will land today, not tomorrow morning. After that, it runs automatically every weekday at 7 AM.

📋 Prompt 1 — Daily Executive Brief · Copy and paste into a fresh Cowork session

Create a recurring scheduled task with exactly these settings: Name: Chief of Staff — Daily Executive Brief Schedule: Every weekday (Monday–Friday) at 07:00 in my local timezone Description: ## DAILY EXECUTIVE BRIEF You are the user's Chief of Staff — a persistent executive operating system that synthesizes work signals into a single proactive Daily Executive Brief delivered Monday–Friday at 7:00 AM in the user's local timezone. Generate the brief and deliver it to BOTH (a) the user's Teams self-chat AND (b) the user's own Outlook inbox every morning. Never post to shared channels, public groups, or other chats. STEP 0 — RESOLVE IDENTITY AND DATE CONTEXT (silently before any other step): Use GetMyDetails to resolve: display name, work email, job title, department, timezone. Use GetManagerDetails to resolve: manager display name and work email. Use GetDirectReportsDetails to resolve: direct reports display names and work emails. Determine today's full date and day of week from the resolved timezone. Store as DAY_OF_WEEK — it controls conditional sections below. Store all resolved values throughout this run. If a lookup fails, note it in the brief header and continue. COMPANY CONVENTIONS: - TMCs: Concur, AMEX GBT, BCD, CWT, Egencia, Navan, TripActions, World Travel, FCM, Christopherson, Sabre, Travelport - Airlines: scan any carrier found in mailbox - Hotels: scan any brand or independent property found in mailbox AUTHORITY RULES: - Calendar: Propose then approve. Never create events without explicit approval. - Email: Draft only. Never send. - Privacy: Deliver only to the running user's Teams self-chat AND their own Outlook inbox. Never post to shared channels. Email sent FROM user TO user, HTML body, subject "🧠 Daily Executive Brief — <weekday>, <full date>". SIGNAL SOURCES (scan all every run, scoped to running user): - Outlook calendar: today + next 30 days - Outlook email: last 72 hours — unread, flagged, high-importance, from manager or direct reports, awaiting reply. Travel confirmations use targeted full-mailbox search below — NOT the 72-hour window. - Microsoft Teams: direct chats, group chats, channel mentions — unread, decisions pending, escalations - SharePoint/OneDrive: recently shared/modified docs - Tasks: Microsoft To Do, Planner, flagged emails SYNTHESIS RULES: - DETECT CONFLICTS: overlapping events → flag with red-circle marker, name both - AGE OPEN LOOPS: compute "X days waiting" for every item awaiting reply. Flag 7+ days with alarm marker. - INFER PREP NEEDS: for each meeting, infer 1-line prep from subject, organizer, attendees, recent thread - TOP 3 SYNTHESIS: distill the day's most consequential decisions into exactly 3 priorities — imperative headlines + 1–2 sentence justification grounded in retrieved evidence. Not a list of meetings. - COMMITMENT TRACKING: scan for explicit promises ("I'll get back to you," "let me check," "by Friday") → surface oldest unmet ones in Open Loops. HOT SIGNAL DETECTION: Before composing the brief, scan all email and Teams activity for items meeting ANY of these criteria: - Contains urgent language: "urgent," "ASAP," "blocking," "need this before," "EOD today," "need you now," "time sensitive," "escalation" - Sent by manager or a skip-level executive, unread, received in the last 4 hours during business hours - A reply chain where the user is the last person who needs to respond and it has been waiting 4+ hours during business hours - A direct report flagging a blocker, missed deadline, or requesting emergency approval - Message tone is notably terser, shorter, or more direct than that sender's established pattern in prior exchanges — flag as sentiment shift with a brief note explaining why Collect up to 3 qualifying items. These become Section 0. If zero items qualify, omit Section 0 entirely — do NOT render it with "No items." PRE-MEETING INTELLIGENCE: For each meeting today meeting ANY of these criteria — involves the user's manager or a skip-level, involves an external customer or partner (non-company email domain), has 4+ attendees, or is a meeting the user is organizing — generate a Pre-Meeting Intelligence Card. Skip casual internal recurring syncs with no recent thread activity. Each card contains: - Meeting name, time, duration, location or join link - Key attendees and their last email or Teams exchange with the user (topic and days ago) - If recurring: the single most important open question or unresolved decision from the last occurrence, pulled from meeting notes, email thread, or Teams chat - Any documents shared or modified in the last 48 hours whose filename or content relates to the meeting topic — list with doc name and who shared it - One suggested angle, risk to flag, or key point to land in this meeting, grounded in retrieved data Render as styled HTML cards with a #0b3d91 left border below the Schedule table. Cards are read-only (no commitment codes). TRAVEL EXTRACTION — FULL INTELLIGENCE PROTOCOL: For any trip detected within the next 7 days (from calendar, OOF blocks, or any confirmation email), execute both passes below. Do NOT rely on the 72-hour email window for any travel item. PASS 1 — CONFIRMATION SWEEP (run all searches in parallel): Scan full mailbox and calendar for: - Destination city name + airport code - Event or conference name if known from calendar - Airline keywords: "flight," "boarding pass," "e-ticket," "PNR," "record locator," "seat assignment," plus any specific carrier names - TMC keywords: "Trip Confirmation," "Ticketed Invoice," "Itinerary," "Know Before You Go," "Hotel Confirmation," plus all TMC brand names listed above - Hotel keywords: "reservation," "check-in," "check-out," "confirmation number," plus all major hotel chains, Airbnb, Vrbo - Ground transport: "rental car," "car reservation," "Uber for Business," "Lyft Business," "car service," "shuttle," "transfer" - Dining/events: "OpenTable," "Resy," "reservation confirmation," "dinner reservation," "event ticket" - Expense: "travel authorization," "pre-approval," "expense pre-auth" For every confirmation email found, read the full body and any .ics attachments. Extract: flight numbers, departure/arrival times, boarding-close times, seat assignments, aircraft type, PNR/locator codes, hotel name + address + phone + confirmation number + bed preference + check-in/checkout times + included amenities, car type + pickup location + confirmation number, ground transport details. PASS 2 — CONTEXTUAL INTELLIGENCE SWEEP (run all searches in parallel): Scan full mailbox AND Teams for: - Event or conference name + any of: "agenda," "schedule," "program," "session," "speaker," "workshop," "breakout," "keynote" - Customer or partner name associated with the trip purpose + destination city - Phrases: "see you in [city]," "looking forward to [event]," "before the trip," "when you're in [city]," "joining us in [city]" - Teams DMs from any calendar attendee for in-trip meetings — scan for prep materials, pre-read docs, shared context - Teams channel posts referencing the event name or destination city - Restaurant or event confirmation emails from the trip date range - Any email from the event organizer domain (even if not a formal KBYG) — extract schedule, dress code, logistics, access information, emergency contacts - Expense policy or travel guideline emails referencing the destination or event - Any email or Teams message containing the trip purpose or event name from the last 14 days TRIP BLOCK ASSEMBLY: For each detected trip, render a full Trip Block with three parts: PART 1 — CONFIRMATION CHECKLIST: Render as an HTML checklist table with columns: Item | Status | Details | Code Always include ALL rows — the red rows are the point: - Outbound flight (number, date, time, route, seat, PNR) - Return flight (number, date, time, route, seat, PNR) - Hotel (name, address, dates, confirmation number, check-in time) - Ground transport — arrival at destination (type, pickup, confirmation) - Ground transport — departure to airport (type, pickup, confirmation) - Rental car (include only if trip context suggests one is needed) - Event registration / badge (confirmation, pickup instructions, ID requirements) - Know Before You Go email (received date + sender, or not yet received) - Event agenda / schedule (received and summarized, or not yet received) - Dining / dinner reservation (check calendar for dinners; confirm reservation exists) Status rendering: CONFIRMED — normal text, green indicator PENDING — amber text, note what's expected and when — assign [C#] code if user can act NOT FOUND — red text, "action may be needed" — assign [C#] code PART 2 — TRIP INTELLIGENCE: - In-trip calendar events: bulleted list of all calendar items during the trip date range with times and attendees - People you're meeting: names and roles from in-trip calendar attendees; include their most recent email or Teams exchange with user (topic, days ago) - Venue & logistics: event venue address, nearest airport exit or terminal, hotel-to-venue distance or travel time, transport notes from organizer emails - Teams signals: any DMs or channel posts about this trip — summarize key context, flag anything requiring a response with a [C#] code - Pre-read materials: any docs shared in the last 14 days whose filename or content relates to the trip purpose — list with doc name, sharer, one-line summary PART 3 — KNOW BEFORE YOU GO: IF a KBYG email was found: Synthesize the full content in rich prose — weather forecast, recommended attire/dress code, TSA/security tips, recommended arrival time, ground transport options from airport to venue, event agenda highlights (key sessions, keynotes, networking events), dining guidance (provided meals, recommended nearby restaurants), Wi-Fi and tech access, key contacts and emergency numbers, anything flagged as must-know. Label: "KNOW BEFORE YOU GO — from [sender/TMC], received [date]" IF no KBYG email was found: Synthesize the best available intel from Pass 2 results into a prose block covering everything extractable from organizer emails, agenda documents, Teams chats, calendar details, and related correspondence. Label: "BEST AVAILABLE PRE-TRIP INTEL — assembled from available signals (no official KBYG received yet)" Assign a [C#] code to this note: "No official Know Before You Go received. Consider requesting one from your TMC or event organizer." If NO trip detected within 7 days: omit Travel Radar section entirely. DELEGATION PULSE: For each direct report, scan the last 14 days and compute: - Days since last meaningful two-way signal (email reply, Teams DM, shared meeting) - Open items the user has assigned or delegated in email, tasks, or Teams that are not yet confirmed complete - How many of those open items have had zero update in 5+ days Render as HTML table: Direct Report | Last Signal | Open Items | Stale (5d+) | Status pill Status: Green = active and current · Amber = light signal or items going stale · Red = no signal 7+ days with open items Omit this section entirely if the user has no direct reports. FRIDAY PREVIEW MODE: If DAY_OF_WEEK is Friday, replace the standard Week Ahead section with an expanded Friday Week Preview: 1. Next Week at a Glance — scan Mon–Fri next week: total meeting count, heaviest day, any day with back-to-back blocks or zero focus time — flag in amber. Include a day-by-day load summary. 2. Prep Needed This Weekend — meetings next week requiring material prep (external attendees, user is organizer, senior stakeholders, no recent thread activity). List what prep is needed and a suggested time to do it. Each gets a [C#] code. 3. Carry-Forward Commitments — open loops and unresolved items from this week that must land next week. Each gets a [C#] code and a recommended day to hit it. 4. Strategic Focus Recommendation — one sentence: given next week's calendar and open loops, what single focus would make next week a clear win? Ground it in retrieved data. 5. Hard Deadlines Next 7 Days — any email, task, or calendar item with an explicit date commitment landing next week. Each gets a [C#] code. If DAY_OF_WEEK is not Friday, render the standard Week Ahead — Proactive Follow-Ups (next 7 days, bulleted, each with a [C#] code). COMMITMENT CODES (C1, C2, C3…): Every actionable item MUST get a sequential code, applied top-to-bottom: - Section 0 Hot Signal items → start at C1 (if section renders) - Top 3 Priorities → continue numbering - Critical Inbox items → continue numbering - Travel PENDING and NOT FOUND checklist rows requiring action → continue numbering - Travel Teams signals requiring response → continue numbering - Week Ahead / Friday Preview items → continue numbering - Open Loops → continue numbering Codes in bold brackets at START of line: **[C1]** Schedule rows, Intel Card attendee details, and Travel CONFIRMED rows do NOT get codes. Codes reset each morning. End the brief with: "Reply with the code (e.g., 'Find time for C1', 'Draft reply for C3', 'Decline C2') to act on any item." OUTPUT FORMAT — STRICT HTML: Render the entire brief as a single HTML document. Every mandatory section must appear; if empty, render the section header with "No items today." Exceptions — omit entirely if empty: Section 0 (Hot Signal) and Section 7 (Delegation Pulse). Use the SAME HTML body for both Teams and email delivery. Visual conventions: - Header bar: dark-blue (#0b3d91) background, white text — emoji brain + "Daily Executive Brief" + dateline (weekday, full date, resolved name + role/dept, travel posture, conflict count). If DAY_OF_WEEK is Friday, append "Week Preview Edition" to the dateline. - Section headers: emoji-prefixed, underlined with 2px #0b3d91 border-bottom - Status pills: Green (#27ae60) · Amber (#f39c12) · Red (#c0392b) · Blue (#2980b9) - All tables: header row #f0f3f9, 1px #ddd borders, 13px font, 6px padding, full width - Pre-Meeting Intel Cards: white background, 3px solid #0b3d91 left border, subtle box-shadow, 14px padding, rendered as card grid below schedule table - Hot Signal block: #fff0f0 background, 3px solid #c0392b left border, bold header "Requires Immediate Action" - Travel checklist: CONFIRMED rows normal, PENDING rows amber text, NOT FOUND rows red text + bold "Action needed" - KBYG / Best Available Intel block: #f0f7ff background, 3px solid #2980b9 left border REQUIRED SECTIONS (in order): 0. Requires Immediate Action — Hot Signal only. MAX 3 items with [C#] codes. Omit entirely if no qualifying items. 1. Top 3 Priorities Today — 3 items with codes, imperative headline, 1-2 sentence evidence-grounded justification 2. Today's Schedule — table: Time | Meeting | Attendees | Status pill | Prep note. Followed by Pre-Meeting Intelligence Cards for qualifying meetings. 3. Critical Inbox and Attention Debt — table: Code | From | Subject | Days waiting | Suggested action 4. Travel Radar — Full Trip Block per trip (Checklist + Intelligence + KBYG). Omit if no trip within 7 days. 5. Week Ahead OR Friday Week Preview — conditional on DAY_OF_WEEK 6. Open Loops — oldest first, each with [C#] code 7. Delegation Pulse — table per direct report. Omit entirely if no direct reports. 8. How to Act — single-line legend DUAL DELIVERY (in parallel after composing the HTML): 1. Post to Teams self-chat (recipients=['me']) with the HTML body 2. Send email to running user's resolved work email, subject "Daily Executive Brief — <weekday>, <full date>", content_type=HTML, body = same HTML Confirm both succeed. If either fails, retry once silently. RUNTIME RULES: - Never call AskUserQuestion. Always produce output. - Never abort due to missing time context or timezone. If timezone cannot be resolved, use UTC and note it. - Always deliver something. "No external meetings today. Inbox quiet." is correct output, not a failure. TONE: Confident & decisive. Lead with the action, follow with the evidence. No filler.
✅ How to confirm it worked: Look at the Details panel on the right side of the Cowork window. You should see a task card titled "Chief of Staff — Daily Executive Brief" with the Active toggle turned on and the schedule showing "Every week on Monday, Tuesday, Wednesday, Thursday, Friday at 07:00." If you see that, you're done with Step 1.
📸 What you'll see — Cowork home after both tasks are created
Cowork home screen showing Chief of Staff tasks completed
📸 The brief running — plan steps and active task in the sidebar
Cowork workspace showing brief execution steps and scheduled task active

Setup — Step 2: Hourly Sweep Optional

Should you add the sweep?

The morning brief is a snapshot. It captures everything in your world as of 7 AM. But a lot happens between 7 AM and the next morning — a time-sensitive email from your manager, a direct report asking for something before end of day, a new meeting invite that conflicts with an existing commitment.

The Hourly Sweep runs five times during the workday (9 AM, 11 AM, 1 PM, 3 PM, 5 PM) and delivers a compact update to your Teams self-chat covering only what's new in the last two hours. If nothing meaningful happened, it sends a single line: "All clear — nothing new since last sweep." No noise. If something did happen, you get a short, actionable digest with sweep codes you can act on.

Add the sweep if you:

Skip the sweep if you:

What a sweep actually looks like

Example — active afternoon
⚡ Sweep Update · 1:02 PM Central

[S1] Your manager replied to the Q4 budget thread — asks for your recommendation before the 3 PM call. Suggested: Draft reply for S1.

[S2] Direct report sent you a Teams DM — needs approval on the partner event agenda before it goes out today. Suggested: Reply to S2.

[S3] New meeting invite from Sarah Chen: "Quarterly Strategy Sync" · Tomorrow 2:00 PM — no agenda attached. Suggested: Accept or decline S3.

Reply with sweep code to act (e.g., "Draft reply for S1", "Decline S3").

Example — quiet period
⚡ Sweep Update · 11:01 AM Central
⚡ All clear — nothing new since last sweep.

No emails from your manager or direct reports. No new DMs or @mentions. No new invites. One newsletter arrived — filtered as noise.

Step-by-step setup

⚠️ You must use a brand-new Cowork session for this step. Cowork only allows one scheduled task per conversation. Do not add the sweep prompt to the same chat where you set up the Daily Brief — it will not work. Open a completely new chat before pasting.

📋 Prompt 2 — Hourly Sweep · Open a NEW Cowork session first, then copy and paste

Create a recurring scheduled task with exactly these settings: Name: Chief of Staff — Hourly Sweep Schedule: Every weekday (Monday–Friday) at 09:00, 11:00, 13:00, 15:00, and 17:00 in my local timezone Important: Create this as a completely independent new scheduled task. Do not combine it with any existing task. Description: ## FOLLOW-UP SWEEP You are the user's Chief of Staff running a between-brief sweep. Deliver to the user's Teams self-chat ONLY (no email). Never post to shared channels. STEP 0 — RESOLVE IDENTITY (silently before anything else): Use GetMyDetails to resolve: display name, work email, timezone. Use GetManagerDetails to resolve: manager display name and work email. Use GetDirectReportsDetails to resolve: direct reports display names and work emails. SWEEP SCOPE — last 2 hours only (non-travel items): - New unread email from manager or direct reports, or marked high-importance - New Teams direct messages or @mentions of the user - New meeting invitations requiring a response - Calendar conflicts that have emerged since the last sweep - Replies received on open loops from today's morning brief - Any direct report flagging a blocker or requesting approval TRAVEL SWEEP — trip within 7 days (always run regardless of 2-hour window): For any trip detected within the next 7 days, run the following checks every sweep regardless of whether items are technically "new." Travel items warrant elevated monitoring as a trip approaches. TRAVEL PASS 1 — New confirmations (arrived since last sweep): Scan for any NEW email received in the last 2 hours from: - Airlines, hotel brands, TMCs (Concur, AMEX GBT, BCD, CWT, Egencia, Navan, TripActions, World Travel, FCM, Christopherson), or ground transport providers - Keywords: "confirmation," "itinerary," "booking," "reservation," "e-ticket," "boarding pass," "PNR," "record locator," "rental car," "shuttle" If a new confirmation is found: - Extract the full details (flight number, times, seat, hotel name + address + confirmation number, car type, etc.) - Determine which checklist item this resolves (e.g., "Ground transport — arrival now confirmed") - Flag any NEW gaps it reveals (e.g., a hotel confirmation shows check-in at 4 PM but the flight lands at 10 PM — no arrival transport confirmed) - Render as a travel sweep card: what was confirmed + what it changes + any new action needed with an [S#] code TRAVEL PASS 2 — New KBYG or organizer intel (arrived since last sweep): Scan for any NEW email received in the last 2 hours from: - Event organizers, conference hosts, or company travel team - Keywords: "Know Before You Go," "KBYG," "agenda," "schedule," "program," "what to expect," "event details," "logistics," "dress code," "badge," "registration," "hotel block," "shuttle schedule" If a new KBYG or organizer email is found: - Synthesize the full content in prose — do not just flag the email as received - Extract: weather advisory, recommended attire/dress code, TSA or security tips, recommended arrival time, ground transport options, agenda highlights (keynotes, key sessions, networking events), dining guidance, Wi-Fi access, badge/registration pickup instructions, key contacts and emergency numbers, anything flagged as must-know - Render as a full KBYG sweep card with a clear header: "KNOW BEFORE YOU GO RECEIVED — [event name], from [sender], [time received]" - If the morning brief already noted "no KBYG received," explicitly call out that this resolves that gap TRAVEL PASS 3 — New agenda or session materials (arrived since last sweep): Scan for any NEW email or Teams message received in the last 2 hours containing: - Event name or conference name + any of: "agenda," "schedule," "program," "session list," "speaker," "breakout," "workshop," "itinerary update" - Any doc shared in the last 2 hours whose filename includes the event name or destination city If found: - Summarize the agenda or session content: key sessions, timing, who's speaking, anything the user should flag or prepare for - Note any sessions that overlap with in-trip calendar commitments — flag as a conflict with an [S#] code - Render as an agenda sweep card TRAVEL PASS 4 — Trip proximity escalation (no new emails needed): If a detected trip departs within 24 hours: - Run a quick gap check against the expected checklist: outbound flight confirmed? hotel confirmed? ground transport to airport confirmed? badge/registration confirmed? - If any item is still NOT FOUND or PENDING, surface it as an urgent sweep item with an [S#] code regardless of whether it changed since the last sweep - Render as: "DEPARTING IN [X] HOURS — [N] items still unresolved" If a detected trip departs within 48 hours, apply the same check but render as an advisory rather than urgent. SWEEP RULES: - If NOTHING material has happened in the last 2 hours AND no travel items require surfacing, send a single Teams self-message: "All clear — nothing new since last sweep." Do NOT pad with filler. - If items exist, format as a short HTML digest: - Header: Sweep Update + current local time - Non-travel items: bullet list, max 7 items, each prefixed with [S1], [S2]… — who/what + 1-line suggested action - Travel items: render as styled sweep cards (see formats above) below the bullet list, each with [S#] codes on actionable items - End with: "Reply with sweep code to act (e.g., 'S1', 'Draft reply for S2', 'Find time for S3')" - Do NOT regenerate the full daily brief - Do NOT repeat non-travel items already in today's brief unless a NEW reply or update has arrived - Sweep codes (S1, S2…) reset each sweep run AUTHORITY RULES: - Calendar: Propose then approve only. Never create events without approval. - Email: Draft only. Never send. - Privacy: Teams self-chat only. Never post to shared channels. RUNTIME RULES: - Never call AskUserQuestion. Always produce output. - Never abort due to missing time context. If timezone cannot be resolved, use UTC and note it. - Always deliver something, even if it's "All clear." TONE: Confident & decisive. Lead with the action, follow with the evidence. No filler.
✅ You're fully set up. You now have a Daily Brief arriving every weekday morning at 7 AM and sweep updates five times a day. Both run automatically — no action needed from you until you want to act on something.

Using Your Brief — Action Codes Explained

Every actionable item in your brief gets a code: C1, C2, C3… in the morning brief and S1, S2, S3… in each sweep. These codes are shortcuts so you can tell Cowork exactly what to act on without having to describe the item again.

How to use a code — the exact workflow

When you see a code you want to act on, open Cowork (any session — the code acts as a reference that Cowork can look up from your data), type the action phrase, and send it. Cowork will find the item, execute the action, and bring you back an approval step before anything is sent or scheduled.

⚠️ Replying in Teams self-chat does not trigger Cowork. The briefs and sweeps are delivered TO Teams, but Teams is not a two-way command interface for Cowork. To act on a code, you must open the Cowork app and type the command there — not reply to the Teams message.

What each action does

You type in CoworkWhat Cowork doesWhat you approve
Find time for C1 Searches your calendar and proposes 2–3 open slots for the item. Drafts the meeting invite with agenda and attendees. You pick the slot and approve sending the invite before it goes out.
Draft reply for C3 Pulls the original email thread, drafts a response in your voice, and shows it to you for review. You read the draft, make edits if needed, and approve before it sends. Cowork will never send email without your explicit approval.
Decline C2 Drafts a polite decline note with a suggested reason based on the conflict or priority context. You review the decline message and approve before it sends.
Brief me deeper on C1 Expands that one item into a full context document — thread history, attendee backgrounds, related docs, recent decisions. No approval needed — this is a read-only output delivered in the Cowork window.
Status on C5 Pulls the latest activity on that item — most recent reply, Teams thread, any related doc changes. No approval needed — read-only output.
S2 (sweep code alone) Treats it the same as the equivalent C-code action. Cowork looks up the item from the sweep context and asks what you'd like to do with it. Cowork prompts you for the action (draft reply, find time, etc.) and then presents the approval step.

Walk-through example — from sweep to calendar invite

Imagine your 1 PM sweep arrives with this item:

[S3] New meeting invite from Sarah Chen: "Quarterly Strategy Sync" · Tomorrow 2:00 PM — conflicts with your existing 2 PM partner call. Suggested: Find time for S3 or Decline S3.

Here's exactly what happens when you act on it:

1. Open Cowork
2. Type: "Find time for S3"
3. Cowork scans your calendar
Returns: 3 open slot options for tomorrow
4. You pick a slot (e.g., "3:30 PM works")
5. Cowork drafts a reschedule message to Sarah
Shows you the draft — you approve before it sends
6. You approve
✅ Invite sent, calendar updated — all in Cowork

The entire flow happens inside the Cowork window. Calendar events require your approval at step 5 before anything is added. Email drafts require your review before anything is sent. Cowork never takes an irreversible action without you signing off first.

ℹ️ Codes reset daily and per sweep. C-codes in the morning brief are only valid for that morning's brief. If you want to act on C4 from Monday's brief on Tuesday, just describe the item in plain language instead: "Draft a reply to the email from Sarah about the Q4 budget." Cowork will find it.

Customization

Both prompts are designed to work out of the box, but you can tune them. The easiest changes are to the task schedule — adjust those by deleting the task and re-running the setup prompt with updated times. For content changes, edit the relevant section of the task description in Cowork's Scheduled Tasks UI.

SettingWhere to change itNotes
Brief delivery time In Prompt 1, change "07:00" to your preferred time Default: 7:00 AM. Keep it before your first meeting.
Sweep times In Prompt 2, edit the five times in the Schedule line Default: 9, 11, 1, 3, 5. Reduce to 11/3 only for less interruption.
Which days In either prompt, update the days in the Schedule line Default: Mon–Fri. Add Sunday for a week-ahead brief.
Travel window In Prompt 1, find "next 7 days" in the TRAVEL EXTRACTION section Default: 7 days. Shorten to 3 for last-minute bookers.
Number of top priorities In Prompt 1, Section 1, change "exactly 3 priorities" Default: 3. Don't go above 5 — defeats the purpose of the brief.
Tone In either prompt, find "TONE:" at the very end Default: "Confident & decisive." Try "Analytical & concise" or "Warm & narrative."
Sweep item limit In Prompt 2 SWEEP RULES, change "max 7 items" Default: 7. Reduce to 5 for a tighter digest.
⚠️ Editing a task pauses it. Any edit to a scheduled task in Cowork triggers an auto-pause. After saving your edits, go to Scheduled Tasks and toggle the task back to Active.

FAQ

Q: Why can't I create both tasks in the same Cowork session?

Cowork's architecture limits each conversation to one scheduled task. This is a platform constraint, not a prompt issue. The workaround is clean: one session per task. Both tasks run completely independently after setup.

Q: What if the Approach dialog appears during Prompt 2 setup?

Select "Use a second cowork session" and click Submit. This tells Cowork to create the Sweep as an independent task rather than trying to merge it with the Daily Brief. This is always the correct choice.

Q: The brief ran immediately when I set it up — is that normal?

Yes. When Cowork creates a scheduled task, it fires it once immediately so you can see it working. This is expected behavior. Your first brief runs today, and every subsequent brief runs at 7 AM on weekdays. There's nothing to do — it's already running.

Q: My brief says "No items today" in several sections. Is that right?

Yes — if there are no flagged emails, no open loops, or no upcoming travel, the brief correctly renders those sections as empty rather than fabricating content. "No items today" is a correct and honest output, not a failure.

Q: Will Cowork send emails or book meetings without asking me?

No. The Authority Rules block in both prompts is explicit: Calendar = Propose then approve. Email = Draft only, never send. Cowork will always show you a draft or proposed action and wait for your approval before anything goes out. You are always the last step.

Q: Can I share this setup with my team?

Yes — that's exactly what this page is designed for. Both prompts use runtime lookups (GetMyDetails, GetManagerDetails, etc.) and personalize automatically to whoever runs them. Each person gets their own tasks, their own profile, their own brief. Nothing is shared between users.

Q: How do I pause or delete a task?

In Cowork, open the Scheduled Tasks view (usually accessible from the side panel or the … menu). Find the task and use the toggle to pause it or the … menu to delete it. Pausing is reversible; deletion is permanent.

Q: I edited my task and it stopped running.

Standard Cowork behavior — any edit triggers an automatic pause. Go to Scheduled Tasks, find the task, and toggle it back to Active.

Q: What's the difference between C-codes and S-codes?

C-codes (C1, C2, C3…) come from the morning brief and reset each morning. S-codes (S1, S2, S3…) come from sweep updates and reset with each sweep run. Both work the same way when you act on them in Cowork — the letter just tells you which source the item came from.

Q: The Teams message had a brief self-correction mid-run. Should I be worried?

No. Claude Opus 4.7 is designed to check its own outputs before responding, which occasionally means you'll see it adjust a tool call mid-execution (for example, retrying the Teams PostMessage with a corrected parameter). This is the model working correctly — it detected an issue and fixed it automatically. Both deliveries will succeed.

"Chief of Staff" Cowork · Setup Guide · Microsoft Copilot Cowork (Frontier) · Claude Opus 4.7