How to Build an AI Executive Briefing Agent with OpenClaw
Step-by-step guide to configuring an OpenClaw agent that scans your inbox, calendar, Slack, and CRM every morning and delivers a prioritized daily briefing.
What Is an Executive Briefing Agent — and Why Build One?
It’s the single agent configuration we deploy more than any other. An executive briefing agent connects to your inbox, calendar, Slack, and CRM, then delivers a prioritized summary to your phone every morning before you’ve had coffee.

The problem it solves is real. According to McKinsey’s 2025 research on executive productivity, C-suite leaders spend 23% of their working hours just processing information — reading emails, scanning Slack, checking dashboards, and mentally assembling context for the day ahead. That’s roughly 11 hours per week spent on intake, not decisions.
We’ve configured this agent for over 40 executives since launching beeeowl. This guide walks through exactly how we build it — the same YAML configs, prompt structure, and priority logic we use in production deployments.
If you’re technical, you can follow along and build this yourself on an existing OpenClaw instance. If you’d rather have it done in a day, that’s what our deployment packages are for.
What Data Sources Should the Briefing Agent Connect To?
Four sources cover 90% of what a CEO needs every morning: email, calendar, team chat, and CRM. Here’s how we configure each one.
Gmail is the highest-signal source. We don’t pull every email — we filter for VIP senders (board members, investors, direct reports, key clients) and anything flagged or starred. According to a 2024 Forrester study on enterprise communication patterns, executives receive an average of 147 emails per day but only 12-15 require same-day action. The agent finds those 12-15.
Google Calendar gives the agent context for your day. It pulls today’s meetings, attendee names and titles (cross-referenced with your CRM), prep notes from linked documents, and any scheduling conflicts.
Slack is filtered to priority channels only. Most CEOs we work with monitor 3-5 channels — executive team, board, revenue, and maybe one product channel. The agent scans for messages mentioning you, threads with high reply counts, and messages from specific people.
Salesforce or HubSpot feeds pipeline alerts. Deals above a threshold that changed stage, contracts expiring this week, and any revenue anomalies. For HubSpot users, we also pull marketing metrics if the CEO tracks those.
Here’s the Composio connection config we use: For more, see connecting to tools via Composio.
# agent-config/data-sources.yaml
data_sources:
gmail:
provider: composio
app: gmail
scopes:
- gmail.readonly
filters:
vip_senders:
- "board@company.com"
- "investor-updates@sequoia.com"
- "cfo@company.com"
- "cto@company.com"
- "vp-sales@company.com"
include_starred: true
include_flagged: true
max_age_hours: 14 # since last briefing
exclude_labels:
- "newsletters"
- "automated"
google_calendar:
provider: composio
app: google_calendar
scopes:
- calendar.readonly
filters:
calendars:
- "primary"
- "board-meetings"
lookahead_hours: 14
include_attendee_context: true
slack:
provider: composio
app: slack
scopes:
- channels:read
- channels:history
filters:
priority_channels:
- "#executive-team"
- "#revenue"
- "#board"
- "#product-launches"
mention_scan: true
high_engagement_threshold: 8 # replies
max_age_hours: 14
salesforce:
provider: composio
app: salesforce
scopes:
- api
filters:
pipeline_minimum: 100000
stage_changes: true
expiring_contracts_days: 7
anomaly_detection: true
Every connection goes through Composio’s OAuth flow. The agent never sees raw credentials — that’s one of the security guarantees we build into every beeeowl deployment.
How Does the Priority Scoring Logic Work?
Raw data isn’t useful. A CEO doesn’t want 47 items dumped into a message — they want the 7 things that actually matter, ranked. That’s where priority scoring comes in.
We assign a numerical score to every item the agent collects, then sort descending. Harvard Business Review’s 2025 analysis of executive decision-making found that leaders who receive pre-prioritized information make 34% faster decisions in morning meetings compared to those who self-triage.
Here’s the scoring config:
# agent-config/priority-scoring.yaml
priority_scoring:
weights:
sender_tier:
board_member: 95
investor: 90
direct_report: 85
key_client: 80
vip_custom: 75
other: 30
channel_importance:
revenue: 90
executive_team: 85
board: 95
product: 60
urgency_signals:
contains_deadline: +20
mentions_you_directly: +25
flagged_or_starred: +15
reply_count_above_threshold: +15
negative_sentiment: +10
revenue_anomaly: +30
deal_stage_regression: +25
time_decay:
halflife_hours: 6 # older items score lower
thresholds:
include_minimum: 40
highlight_minimum: 75
critical_minimum: 90
max_items: 12
critical_items_always_included: true
The time_decay setting is important. An email from your CFO sent at 11 PM last night scores higher than one from a VP sent two days ago. The halflife_hours: 6 parameter means an item loses half its time-based weight every 6 hours.
Items scoring above 90 are marked critical and always appear first. Items between 75-90 get a highlight marker. Anything below 40 gets dropped entirely.
In our experience, it takes about a week of tuning these weights before a CEO says “yes, this is exactly what I’d want to see.” We handle that tuning during deployment and the first week of follow-up.
What Should the Agent’s System Prompt Look Like?
The system prompt is where most DIY attempts fail. A vague prompt produces vague briefings. We’ve iterated on this across dozens of deployments, and the structure below consistently produces the best output.
According to Gartner’s 2025 report on AI agent deployment patterns, 62% of failed agent projects cite “poor prompt engineering” as the primary cause. The fix isn’t complicated — it’s just specific.
# agent-config/system-prompt.yaml
agent:
name: "Morning Briefing Agent"
model: "claude-sonnet-4-20250514"
system_prompt: |
You are an executive briefing agent for a CEO. Your job is to
produce a concise, prioritized daily briefing every morning.
RULES:
- Lead with the single most important thing. No preamble.
- Use bullet points. Maximum 3 lines per item.
- Group items: CRITICAL, NEEDS ATTENTION, FYI.
- For calendar items: include attendee names, their titles,
and one line of context (why this meeting matters today).
- For email items: include sender name, subject, and a
one-sentence summary of what they need from you.
- For Slack items: include channel, thread topic, and why
it surfaced (mentions you, high engagement, or keyword match).
- For CRM items: include deal name, dollar amount, what changed,
and recommended action.
- End with a "Today's Schedule" section — chronological list
of meetings with times and one line of context each.
- Total briefing length: 400-600 words. Never exceed 600.
- Tone: direct, no fluff, no greetings, no sign-offs.
- If nothing is critical, say so. Don't inflate importance.
temperature: 0.2
max_tokens: 1200
A few things to note. We use temperature: 0.2 because you want consistency, not creativity. The briefing should read the same way every morning — like a reliable chief of staff, not a different intern each day.
The max_tokens: 1200 cap prevents the agent from rambling. Anthropic’s Claude Sonnet 4 is our default model for briefing agents because it follows structured instructions precisely without over-explaining. For executives who’ve added the Private On-Device LLM option, we configure a local model instead — nothing leaves the machine.
How Do You Schedule the Morning Briefing?
The agent needs to run on a schedule. OpenClaw uses standard cron syntax for this, and the typical configuration triggers the briefing at 6:30 AM in the executive’s local timezone.
# agent-config/schedule.yaml
schedule:
briefing:
cron: "30 6 * * 1-5" # 6:30 AM, Monday through Friday
timezone: "America/New_York"
task: "morning_briefing"
retry:
max_attempts: 3
delay_minutes: 5
timeout_minutes: 10
weekend_briefing:
cron: "0 8 * * 0,6" # 8:00 AM, Saturday and Sunday
timezone: "America/New_York"
task: "morning_briefing"
config_override:
max_items: 5
include_calendar: false
critical_only: true
We configure a separate weekend schedule for most clients. Saturdays and Sundays use critical_only: true — the agent only surfaces items scoring above 90. No calendar context (most CEOs don’t want meeting prep on a Sunday), and a reduced item count.
The retry block handles intermittent API failures. If Gmail’s API is slow at 6:30 AM, the agent tries again at 6:35 and 6:40 before marking the run as failed and alerting you.
According to a 2024 Deloitte survey on executive morning routines, 68% of C-suite leaders check their phone within 10 minutes of waking. The 6:30 AM default ensures the briefing is waiting when they do.
How Does Delivery Work?
The briefing needs to arrive where you’ll actually read it. We support four delivery channels: Slack DM, WhatsApp, Telegram, and email digest. Here’s the config:
{
"delivery": {
"primary_channel": "slack_dm",
"fallback_channel": "email",
"channels": {
"slack_dm": {
"workspace": "your-company",
"user_id": "U04ABC123",
"format": "mrkdwn"
},
"whatsapp": {
"phone": "+1XXXXXXXXXX",
"via": "twilio",
"format": "plain_text"
},
"telegram": {
"chat_id": "123456789",
"bot_token_ref": "composio:telegram_bot",
"format": "markdown"
},
"email": {
"to": "ceo@company.com",
"subject_template": "Daily Briefing — {date}",
"format": "html"
}
},
"confirmation": {
"send_delivery_receipt": true,
"alert_on_failure": "email"
}
}
}
Slack DM is the most popular choice — about 60% of our clients use it. WhatsApp is second, especially for founders who aren’t in Slack all day. The fallback_channel ensures that if Slack delivery fails, the briefing still reaches you via email.
One detail we always configure: send_delivery_receipt: true. This logs a confirmation that the briefing was delivered successfully. If the agent runs but delivery fails silently, you’d never know you missed something critical.
What Does the Final Briefing Actually Look Like?
Here’s a real example (anonymized) of what a CEO receives at 6:32 AM on a Tuesday:
CRITICAL
- Board member David Chen emailed at 11:47 PM re: Q2 revenue
forecast. Wants revised numbers before Thursday's board call.
→ Action: Reply with updated forecast or delegate to CFO.
- Salesforce: Meridian Health deal ($420K) moved from
Negotiation to Stalled. Last activity was 6 days ago.
→ Action: Ask VP Sales for status before your 2 PM pipeline review.
NEEDS ATTENTION
- #revenue Slack: Thread on enterprise tier churn (14 replies).
VP Customer Success flagged 3 accounts at risk — $180K ARR
combined. You were mentioned twice.
- Email from Sarah Kim (Series A lead, Greylock Partners):
Requesting intro to your CTO for technical diligence.
→ Action: Make intro or delegate to EA.
- Google Calendar conflict: 10 AM product review overlaps
with investor check-in. Both confirmed.
→ Action: Move one or send delegate to product review.
FYI
- HubSpot: Marketing qualified leads up 23% week-over-week.
No action needed — tracking for board deck.
- Slack #executive-team: COO shared updated org chart draft.
3 reactions, no discussion yet.
TODAY'S SCHEDULE
8:00 AM — Leadership standup (15 min) — weekly sync, no prep
9:00 AM — 1:1 with CFO Lisa Park — Q2 forecast revision
10:00 AM — Product review [CONFLICT] — v2.1 launch timeline
10:00 AM — Investor check-in (Greylock) [CONFLICT] — Series A follow-up
12:30 PM — Lunch with CTO — recruiting pipeline discussion
2:00 PM — Pipeline review — weekly Salesforce walkthrough
4:00 PM — Board prep session — Thursday deck finalization
That’s 280 words. Takes about 90 seconds to read. The CEO now knows exactly what to focus on, what to delegate, and what’s coming today — before they’ve left the house.
According to McKinsey’s 2024 analysis of executive productivity tools, leaders who use pre-built briefing systems save an average of 47 minutes per day on information synthesis. Over a year, that’s roughly 195 hours — almost five full work weeks reclaimed.
How Do You Handle Data Security for the Briefing Agent?
This is where self-hosted infrastructure matters. The briefing agent accesses your most sensitive data: investor emails, board communications, revenue numbers, HR discussions. That data can’t flow through a third-party AI provider.
On a beeeowl deployment, the agent runs entirely on your hardware — a Mac Mini sitting in your office or a private VPS that only you control. Data is pulled from Gmail, Slack, and Salesforce via Composio’s OAuth connections, processed locally by the LLM, and the briefing is pushed to your delivery channel. Nothing is stored after the briefing is sent.
Forrester’s 2025 Enterprise AI Security report found that 78% of enterprises cite data residency as their top concern when deploying AI agents. Running on your own infrastructure eliminates that concern entirely.
The Docker sandboxing from NemoClaw adds another layer. The agent runs inside an isolated container with no access to your host filesystem. If something goes wrong, the blast radius is contained to that container.
Every action the agent takes is logged in an audit trail — which emails it read, which Slack messages it accessed, which CRM records it queried. That audit trail lives on your infrastructure too.
What If You Don’t Want to Build This Yourself?
Most executives we work with don’t configure their own agents. That’s expected — you wouldn’t ask a CEO to set up their own email server, either.
Every beeeowl deployment package includes one fully configured agent, and the morning briefing is the one clients request most. We handle the Composio OAuth connections, the system prompt tuning, the priority scoring calibration, the scheduling, and the delivery channel setup. The whole thing is done in a single day.
Our Hosted Setup starts at $2,000 — that includes the briefing agent running on a private VPS. The Mac Mini package at $5,000 puts it on dedicated hardware shipped to your door. Either way, you’re reading your first real briefing within a week of placing the order.
For executives who want multiple agents — say, a briefing agent plus a CRM update agent plus an email draft agent — additional agents are $1,000 each. Every agent runs on the same secured infrastructure.
The morning briefing agent is the starting point. Once executives see what it does, they almost always come back for a second agent within 30 days. It changes how you think about what should require your direct attention versus what a machine can pre-process for you.
Request your deployment here and we’ll have your briefing agent configured and running within a week.


