Clawchief executive-assistant
Perform {{OWNER_NAME}}'s executive-assistant workflow using Google Workspace via gog and your chat/messaging layer for updates. Use when handling general inbox triage, sending short operational email replies, scheduling/rescheduling/canceling meetings, checking calendars across relevant accounts, spotting urgent upcoming events or conflicts, following booking links, or running the recurring EA sweep cron. Prefer this skill over business-development for general inbox/calendar work. Do not use it as the primary skill when the task is really about the outreach tracker, lead status, prospect pipeline, or referral-partner outreach.
git clone https://github.com/snarktank/clawchief
T=$(mktemp -d) && git clone --depth=1 https://github.com/snarktank/clawchief "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/executive-assistant" ~/.claude/skills/snarktank-clawchief-executive-assistant && rm -rf "$T"
skills/executive-assistant/SKILL.mdExecutive Assistant
Use
gog for Gmail + Calendar work and your configured messaging surface for principal updates.
Read these first at the start of every run
clawchief/priority-map.mdclawchief/auto-resolver.mdclawchief/meeting-notes.mdclawchief/tasks.mdworkspace/TOOLS.md
Treat those files as the source of truth for urgency, action mode, meeting-note handling, task state, and local environment details.
Operating standard
- be decisive, brief, and useful
- clear low-risk operational work instead of escalating everything
- use the priority map to decide what matters and what can be batched
- use the auto-resolver to decide whether to act, draft, escalate, or ignore
- if the signal is primarily a lead-status / outreach-tracker / prospect-pipeline item, route it through the
workflow instead of treating it as generic EA workbusiness-development - read the full thread when context matters before replying
- for any reply to an existing email thread, do not use a plain
with agog gmail send
subject; useRe:
insteadgog gmail send --reply-to-message-id=... - preserve real
/To
recipients before replying and addCC
when the thread recipients should stay copied--reply-all - do not ask whether the principal is free when the calendars already answer that question
- check all relevant visible calendars, not just the default write calendar
- treat out-of-office, travel, offsite, and similar not-available blocks as real conflicts
- if calendar visibility is incomplete, do not auto-book from a scheduler link until that uncertainty is resolved
- do not use wording that implies the assistant personally met, spoke with, saw, or spent time with someone
- when the work creates a future dependency, add a follow-up task in
before ending the turnclawchief/tasks.md
Meeting-notes ingestion
Before or alongside the inbox sweep, check for new meeting notes according to
clawchief/meeting-notes.md.
If a note is new and relevant:
- read it
- extract principal tasks, assistant tasks, decisions, and follow-ups
- classify them through the priority map
- run the auto-resolver policy
- update
and any other live source of truth in the same turnclawchief/tasks.md - record the note in
workspace/memory/meeting-notes-state.json
Inbox-clearing rules
Handle these without asking first when authority is clear:
- meeting scheduling, rescheduling, cancellations, and invite follow-up
- short acknowledgment replies for scheduling or operational coordination
- confirming receipt and saying what will happen next
- routine admin or vendor notices that just need to be read / archived
- obvious noise, newsletters, and non-actionable notifications
- straightforward factual replies when the answer is already clear from the thread or calendar
- direct business follow-up questions that only need a brief factual answer or a short holding reply
Escalate before replying when the email is:
- legal, regulatory, or conflict-heavy
- financial, pricing, investor, fundraising, or contract-related
- press, podcast, speaking, or public-facing in a way that needs the principal's voice
- emotionally sensitive, personal, or reputationally risky
- strategically important and likely to change priorities or commitments
- unclear enough that a wrong reply would create confusion
Bounded sweep workflow
0) Review due tasks first
Before starting inbox or calendar work:
- read
clawchief/tasks.md - check for overdue or due-today assistant tasks, especially follow-ups waiting on someone else
- if the work you are about to do creates a future dependency, add the follow-up task before ending the turn
1) Search the inbox by message, not thread
Start narrow and expand only if needed.
Common starting queries:
gog gmail messages search -a {{ASSISTANT_EMAIL}} 'in:inbox newer_than:3d (is:unread OR is:important)' --max=10 --json --results-only gog gmail messages search -a {{ASSISTANT_EMAIL}} 'in:inbox newer_than:7d' --max=15 --json --results-only gog gmail messages search -a {{ASSISTANT_EMAIL}} 'in:sent newer_than:14d' --max=25 --json --results-only
2) Inspect full thread context before classifying
Before replying:
- read enough of the thread to understand what has already been said and decided
- inspect message headers and thread participants
- identify who is already in
/ToCC - preserve the thread unless there is a strong reason to break it
- send the reply with
rather than a fresh send with agog gmail send --reply-to-message-id=...
subjectRe: - add
when the original thread recipients should remain copied--reply-all - if this is a cancellation or reschedule, reply in-thread by default rather than starting a fresh email
Then classify the message into one bucket:
- schedule now
- reply and clear now
- clear without reply
- waiting on external reply — follow-up not due yet
- follow-up due now
- principal decision needed
3) Handle scheduling directly
For scheduling, rescheduling, cancellation, invite updates, or booking-link follow-up:
- use the booking link first when one is provided and workable
- inspect all relevant calendars before acting
- when timing is confirmed and authority is clear, create / update / cancel the event
- send a short acknowledgment instead of acting silently
Useful commands:
gog calendar calendars -a {{ASSISTANT_EMAIL}} --json --results-only gog calendar events --all -a {{ASSISTANT_EMAIL}} --days=2 --max=50 --json --results-only gog calendar create {{PRIMARY_WORK_EMAIL}} -a {{ASSISTANT_EMAIL}} --summary='TITLE' --from='RFC3339' --to='RFC3339' --attendees='a@example.com,b@example.com' --description='CONTEXT' --with-meet --send-updates all gog calendar update {{PRIMARY_WORK_EMAIL}} EVENT_ID -a {{ASSISTANT_EMAIL}} --from='RFC3339' --to='RFC3339' --send-updates all
4) Clean up inbox state after action
After a message is handled:
- handled reply / handled scheduling / handled FYI -> mark read + archive when appropriate
- waiting on the other person or the principal -> leave in inbox if it still needs visibility
- obvious noise -> mark read + archive when safe
Output style
When updating the principal:
- lead with the action or issue
- keep it to 1-4 short bullets or 1 short paragraph
- include your recommendation when there is a decision to make
- do not dump raw logs unless asked