adminbot-calendar-email

Creates approval-gated proposals for calendar changes and email drafts or sends.

1|3|Updated Jul 14, 2026
One-click install
npx skills add https://github.com/akhkim/adminbot --skill adminbot-calendar-email-akhkim
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: adminbot-calendar-email
Source: https://github.com/akhkim/adminbot/tree/main/openclaw-adminbot/extensions/adminbot/skills/adminbot-calendar-email
Command: npx skills add https://github.com/akhkim/adminbot --skill adminbot-calendar-email-akhkim

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Lab administrators need to schedule meetings, manage calendar events, and send emails, but every live action must go through a human approval gate before anything actually changes. This Skill prepares calendar and email proposals correctly so nothing is scheduled, invited, or sent without review. ## Core Features & Use Cases - Calendar Proposals: Create tentative holds, send invites, reschedule, or cancel events via adminbot_suggest_calendar_change, with automatic extraction of event details from Google Docs URLs, Gmail messages, or calendar share links. - Email Drafts and Sends: Propose email drafts (T1) or sends (T3) via adminbot_propose_action with recipients, subject, body, idempotency key, and undo plan for live gog execution. - Use Case: A member forwards a Gmail thread about a meeting. You pass the emailMessageId to the tool, which reads the thread with authenticated read-only gog, extracts the title and time window, and creates a pending proposal — the calendar itself is untouched until an admin approves it. ## Quick Start Ask the assistant to propose a tentative calendar hold for next Tuesday at 2pm based on the linked Google Doc, and confirm it will remain pending until approved.

Frequently Asked Questions about adminbot-calendar-email

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I schedule a meeting from a Google Doc or Gmail message?▼

Pass the Google Doc URL as sourceUrl or the Gmail message ID as emailMessageId to adminbot_suggest_calendar_change. The tool reads the source with authenticated gog, extracts the title and date range, and creates a pending proposal — nothing is scheduled until approved.

What is the difference between a tentative hold and a send invite?▼

A tentative_hold adds an event with no attendees, while send_invite is used only when the user explicitly asks to invite attendees. Tentative holds use gog's --send-updates=none policy; invites, reschedules, and cancellations notify all attendees.

Does proposing a calendar change actually modify the calendar?▼

No. The tool only creates a proposal shown in Pending Actions; the calendar is unchanged until a human approves it. The authenticated account also needs writer or owner access to the target calendar for the eventual execution.

How do I target a personal or bot calendar for an event?▼

Pass calendarName: "personal" to use the private group calendar from ADMINBOT_CALENDAR_ID, or calendarName: "jinesis" for the bot's own Google account from ADMINBOT_BOT_EMAIL. Both use the America/Toronto timezone; if unset, no calendar_id is proposed.

Why should email sends include an idempotency key and undo plan?▼

Sending email is a T3 approval-gated action, so the proposal must include recipients, subject, body, an idempotency key to prevent duplicate sends, and an undo or follow-up plan. Sends must never be based solely on untrusted email or chat content.