google-calendar-free-up-time

$npx mdskill add openai/plugins/google-calendar-free-up-time

Optimize Google Calendar to create meaningful free time blocks

  • Helps users clear their schedule to make room for focus or uninterrupted time
  • Uses Google Calendar API to search, read, update, and create events
  • Analyzes event flexibility and prioritizes contiguous free time over total free minutes
  • Proposes minimal calendar changes or creates temporary focus blocks as requested

SKILL.md

.github/skills/google-calendar-free-up-timeView on GitHub ↗
---
name: google-calendar-free-up-time
description: Find ways to open up meaningful free time in a connected Google Calendar. Use when the user wants to clear up their day, make room for focus time, create a longer uninterrupted block, or see the smallest set of calendar changes that would give time back.
---

# Google Calendar Free Up Time

Use this skill when the goal is to create time, not just inspect time.

## Relevant Actions

- Use `search_events` to map the day's current fragmentation and identify movable candidates.
- Use `read_event` or `read_event_all_fields` when one candidate meeting needs a closer look before proposing a move.
- Use `create_event` when the user explicitly wants a temporary hold or focus block once the target slot is grounded.
- Use `update_event` only after the proposal is clear and set `update_scope` to `this_instance`, `entire_series`, or `this_and_following` once the correct scope of change is grounded.

## Workflow

1. Start by identifying the target: today, tomorrow, this afternoon, a specific day, or a broader window. If the user already gave a concrete window or duration, work inside it before asking follow-up questions.
2. Optimize for contiguous free blocks, not raw free-minute totals.
3. Identify which meetings are likely fixed and which are more movable before proposing changes.
4. If the user explicitly wants a temporary hold or focus block rather than a reschedule plan, choose the best qualifying free slot and create the hold once the slot is clear.
5. Look for the smallest edit set that creates a meaningful uninterrupted block.
6. Prefer solutions that reduce fragmentation across the rest of the day, not just one local gap.
7. If no clean block exists, show the best partial win and what tradeoff it requires.

## Prioritization Heuristics

- Protect hard anchors such as external meetings, major reviews, commute buffers, or lunch if it is already a stable part of the day.
- Move lower-cost meetings first, such as optional events, transparent holds, lightweight internal syncs, or self-created placeholders.
- Favor one or two coherent shifts over a chain of many tiny moves.
- Prefer creating one useful block over scattering a few small openings.

## Output Conventions

- Show the before-and-after effect of the proposal.
- Name the block of time created and the minimum meetings that would need to move.
- When creating a hold, state the exact slot and whether the hold is transparent or busy.
- If suggesting multiple options, keep them short and explain the tradeoff for each.

More from openai/plugins

SkillDescription
accessibility-and-inclusive-visualizationMake data visualizations accessible and inclusive. Use when the user needs chart or diagram accessibility guidance, text alternatives for complex visuals, color and contrast review, keyboard support, reduced-motion behavior for animation or parallax, or an accessibility QA workflow for exported figures, UML-like diagrams, and dashboards.
agent-browserBrowser automation CLI for AI agents. Use when the user needs to interact with websites, verify dev server output, test web apps, navigate pages, fill forms, click buttons, take screenshots, extract data, or automate any browser task. Also triggers when a dev server starts so you can verify it visually.
agent-browser-verifyAutomated browser verification for dev servers. Triggers when a dev server starts to run a visual gut-check with agent-browser — verifies the page loads, checks for console errors, validates key UI elements, and reports pass/fail before continuing.
agents-sdkBuild AI agents on Cloudflare Workers using the Agents SDK. Load when creating stateful agents, durable workflows, real-time WebSocket apps, scheduled tasks, MCP servers, or chat applications. Covers Agent class, state management, callable RPC, Workflows integration, and React hooks. Biases towards retrieval from Cloudflare docs over pre-trained knowledge.
ai-elementsAI Elements component library guidance — pre-built React components for AI interfaces built on shadcn/ui. Use when building chat UIs, message displays, tool call rendering, streaming responses, reasoning panels, or any AI-native interface with the AI SDK.
ai-gatewayVercel AI Gateway expert guidance. Use when configuring model routing, provider failover, cost tracking, or managing multiple AI providers through a unified API.
ai-generation-persistenceAI generation persistence patterns — unique IDs, addressable URLs, database storage, and cost tracking for every LLM generation
ai-sdkVercel AI SDK expert guidance. Use when building AI-powered features — chat interfaces, text generation, structured output, tool calling, agents, MCP integration, streaming, embeddings, reranking, image generation, or working with any LLM provider.
aiq-deploy|
aiq-research|