К основному содержанию
скилл CX Codex

calendar-automation — скилл для Claude Code: что делает и установка

Автоматизирует работу с Google Calendar и Outlook: выделяет слоты под фокусную работу, собирает утренние сводки в Slack и готовит данные к встречам.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add claude-office-skills/skills --skill calendar-automation -a claude-code
Открыть на GitHub

Что делает calendar-automation

Скилл переносит логику шаблонов n8n в интерфейс ассистента. Он рассчитывает статистику дня и отправляет утренний дайджест в Slack. При бронировании через Calendly сценарий передаёт данные в HubSpot CRM и сразу добавляет событие в календарь.

Подготовка к встречам запускается за час до созвона. Скилл собирает контекст по участникам через email и CRM, после чего генерирует план разговора. Для планирования недели он распределяет задачи из Todoist или Asana по свободным слотам, ограничивая число звонков до 5 в день.

Для вызова инструментов требуется MCP-сервер google-workspace-mcp. Без настроенных прав на calendar_create_event и slack_notify автоматические действия со встречами и уведомлениями работать не будут. Рекомендуемая модель — claude-sonnet-4.

Какие задачи решает

  • составить утреннюю сводку встреч в канале Slack
  • заблокировать время в календаре под задачи из трекера
  • собрать контекст и план разговора перед созвоном
  • синхронизировать бронирования из Calendly с CRM HubSpot

Примеры запросов агенту

  • Собери утренний дайджест встреч на сегодня и отправь в Slack
  • Заблокируй слоты для фокусной работы на следующую неделю с учётом задач из Todoist
  • Подготовь материалы и тезисы к встрече через час

Как установить calendar-automation

1Через Skills CLI (Vercel)

npx skills add claude-office-skills/skills --skill calendar-automation -a claude-code

2Вручную: положить файлы

~/.claude/skills/calendar-automation/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/calendar-automation/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Вопросы о calendar-automation

Как установить calendar-automation в Claude Code?

Выполните команду npx skills add claude-office-skills/skills --skill calendar-automation -a claude-code. Также файл скилла можно сохранить вручную по пути ~/.claude/skills/calendar-automation/SKILL.md.

Что делает скилл calendar-automation?

Он автоматизирует сценарии для Google Calendar и Outlook на базе шаблонов n8n. Скилл управляет бронированием встреч, формирует сводки в Slack и защищает слоты для глубокой работы.

Какие инструменты нужны для работы скилла?

Скиллу требуется сервер google-workspace-mcp со средствами calendar_create_event, calendar_list_events, calendar_update и slack_notify. В сценариях также задействованы интеграции с Calendly, HubSpot, Asana и Todoist.

Исходный текст

SKILL.md · MIT
---
name: calendar-automation
description: "Google Calendar and Outlook automation - scheduling optimization, meeting workflows, time blocking, and Slack/Sheets integration"
version: "1.0.0"
author: claude-office-skills
license: MIT

category: productivity
tags:
  - calendar
  - scheduling
  - google-calendar
  - outlook
  - automation
department: Operations

models:
  recommended:
    - claude-sonnet-4

mcp:
  server: google-workspace-mcp
  tools:
    - calendar_create_event
    - calendar_list_events
    - calendar_update
    - slack_notify

capabilities:
  - meeting_scheduling
  - time_blocking
  - calendar_sync
  - meeting_prep
  - daily_digest

languages:
  - en
  - zh

related_skills:
  - gmail-workflows
  - meeting-notes
  - task-management
---

# Calendar Automation

Automate Google Calendar and Outlook workflows for meeting management, time blocking, daily digests, and cross-platform synchronization. Based on n8n workflow templates.

## Overview

This skill covers:
- Meeting scheduling automation
- Time blocking strategies
- Daily calendar digests to Slack
- Meeting prep reminders
- Calendar analytics

---

## Core Workflows

### 1. Daily Calendar Digest to Slack

```yaml
workflow: "Morning Calendar Briefing"

schedule: "6:00 AM daily"

steps:
  1. get_today_events:
      calendar: primary
      time_min: today_start
      time_max: today_end
      
  2. categorize_events:
      categories:
        meetings: has_attendees == true
        focus_time: title contains "Focus" OR "Deep Work"
        one_on_ones: title contains "1:1" OR "1-on-1"
        interviews: title contains "Interview"
        
  3. calculate_stats:
      total_meetings: count(meetings)
      total_hours: sum(duration)
      free_time: 8 - total_hours
      back_to_back: count(gap < 15min)
      
  4. format_message:
      template: |
        ☀️ *Good morning! Here's your day:*
        
        📅 *{date}*
        
        *Schedule Overview:*
        • {total_meetings} meetings ({total_hours}h)
        • {free_time}h of free time
        • {back_to_back} back-to-back slots ⚠️
        
        *Today's Events:*
        {event_list}
        
        💡 *Tip:* {daily_tip}
        
  5. send_to_slack:
      channel: "#daily-schedule" or DM
      
  6. log_to_sheets:
      spreadsheet: "Calendar Analytics"
      data: [date, meetings, hours, categories]
```

**Event List Format**:
```
• 9:00 AM - Team Standup (15m) 📞 Zoom
• 10:00 AM - 1:1 with Sarah (30m) 👥
• 11:00 AM - Focus Time (2h) 🧠
• 2:00 PM - Client Call (1h) 🤝 Google Meet
• 4:00 PM - Interview - PM Role (45m) 🎯
```

---

### 2. Meeting Prep Automation

```yaml
workflow: "Meeting Preparation"

trigger:
  type: calendar_event
  time: 1_hour_before_meeting
  filter: has_attendees AND duration >= 30min

steps:
  1. get_meeting_details:
      extract: [title, attendees, description, meeting_link]
      
  2. research_attendees:
      for_each: attendee
      actions:
        - linkedin_lookup: get_title_company
        - crm_lookup: get_past_interactions
        - email_search: recent_threads
        
  3. generate_prep_doc:
      template: |
        # Meeting Prep: {title}
        
        **Time:** {start_time}
        **Duration:** {duration}
        **Link:** {meeting_link}
        
        ## Attendees
        {attendee_profiles}
        
        ## Context
        - Last interaction: {last_meeting_date}
        - Open items: {open_tasks}
        - Recent emails: {email_summary}
        
        ## Suggested Agenda
        {ai_suggested_agenda}
        
        ## Talking Points
        {ai_talking_points}
        
  4. send_reminder:
      slack_dm:
        message: |
          ⏰ Meeting in 1 hour: *{title}*
          
          📋 [Prep Doc]({prep_doc_link})
          🔗 [Join Meeting]({meeting_link})
          
          Quick context: {one_line_summary}
```

---

### 3. Smart Time Blocking

```yaml
workflow: "Auto Time Blocking"

schedule: "Sunday 8pm" # Plan for next week

steps:
  1. analyze_calendar:
      range: next_7_days
      identify:
        - existing_meetings
        - recurring_meetings
        - available_slots
        
  2. get_priorities:
      source: [todoist, asana, notion]
      filter: due_this_week AND high_priority
      
  3. allocate_focus_time:
      rules:
        - morning_block: 9-11am (deep work)
        - afternoon_block: 2-4pm (collaborative)
        - minimum_gap: 15min between meetings
        - max_meetings_per_day: 5
        
  4. create_blocks:
      types:
        deep_work:
          duration: 2h
          frequency: daily
          preferred_time: 9-11am
          color: blue
          
        admin_time:
          duration: 1h
          frequency: daily
          preferred_time: 4-5pm
          color: gray
          
        buffer:
          duration: 15min
          after: external_meetings
          color: yellow
          
  5. notify:
      slack: "✅ Weekly time blocks created. {x} hours of focus time protected."
```

---

### 4. Calendly → Calendar + CRM

```yaml
workflow: "Calendly Booking Handler"

trigger:
  type: calendly
  event: booking_created

steps:
  1. get_booking_details:
      extract: [invitee, event_type, scheduled_time, answers]
      
  2. enrich_contact:
      clearbit: lookup_by_email
      linkedin: get_profile
      
  3. create_calendar_event:
      google_calendar:
        title: "{event_type} with {invitee_name}"
        time: scheduled_time
        description: |
          **Booked via Calendly**
          
          Name: {invitee_name}
          Email: {invitee_email}
          Company: {company}
          
          **Pre-meeting questions:**
          {calendly_answers}
        attendees: [invitee_email, owner_email]
        reminders: [1_day, 1_hour, 15_min]
        
  4. update_crm:
      hubspot:
        create_or_update_contact:
          email: invitee_email
          properties:
            last_meeting_booked: scheduled_time
            meeting_type: event_type
        create_engagement:
          type: MEETING
          timestamp: scheduled_time
          
  5. send_confirmation:
      email:
        to: invitee_email
        template: meeting_confirmation
        include: [calendar_invite, prep_questions]
        
  6. notify_slack:
      channel: "#meetings"
      message: "📅 New booking: {event_type} with {invitee_name} on {date}"
```

---

### 5. Calendar Analytics

```yaml
analytics_workflow:
  name: "Weekly Calendar Report"
  schedule: "Friday 5pm"
  
  metrics:
    time_distribution:
      - meetings_total_hours
      - focus_time_hours
      - admin_time_hours
      - 1on1_time_hours
      
    meeting_quality:
      - avg_meeting_length
      - back_to_back_count
      - meetings_with_agenda
      - external_vs_internal
      
    productivity:
      - longest_focus_block
      - fragmentation_score
      - after_hours_meetings
      
  output:
    format: markdown
    destinations: [slack, google_sheets]
    
  report_template: |
    # 📊 Weekly Calendar Analytics
    
    ## Time Distribution
    | Category | Hours | % of Week |
    |----------|-------|-----------|
    | Meetings | {meetings_hours} | {meetings_pct}% |
    | Focus Time | {focus_hours} | {focus_pct}% |
    | Admin | {admin_hours} | {admin_pct}% |
    | Available | {available_hours} | {available_pct}% |
    
    ## Meeting Insights
    - Total meetings: {total_meetings}
    - Average length: {avg_length} min
    - Back-to-back: {b2b_count} ({b2b_pct}%)
    - With agenda: {agenda_pct}%
    
    ## Productivity Score
    🎯 **{productivity_score}/100**
    
    - Longest focus block: {longest_focus}
    - Meeting fragmentation: {fragmentation}
    - After-hours: {after_hours_count}
    
    ## Recommendations
    {ai_recommendations}
```

---

## Time Blocking Templates

### Maker Schedule (Individual Contributor)
```
┌─────────────────────────────────────┐
│ 9:00 - 11:00  │ Deep Work Block 1  │
├─────────────────────────────────────┤
│ 11:00 - 11:30 │ Email/Slack        │
├─────────────────────────────────────┤
│ 11:30 - 12:30 │ Meetings Window    │
├─────────────────────────────────────┤
│ 12:30 - 1:30  │ Lunch              │
├─────────────────────────────────────┤
│ 1:30 - 3:30   │ Deep Work Block 2  │
├─────────────────────────────────────┤
│ 3:30 - 4:00   │ Buffer/Admin       │
├─────────────────────────────────────┤
│ 4:00 - 5:00   │ Meetings Window    │
├─────────────────────────────────────┤
│ 5:00 - 5:30   │ Daily Wrap-up      │
└─────────────────────────────────────┘
```

### Manager Schedule
```
┌─────────────────────────────────────┐
│ 8:00 - 8:30   │ Daily Planning     │
├─────────────────────────────────────┤
│ 8:30 - 9:00   │ Team Standup       │
├─────────────────────────────────────┤
│ 9:00 - 12:00  │ 1:1s / Meetings    │
├─────────────────────────────────────┤
│ 12:00 - 1:00  │ Lunch              │
├─────────────────────────────────────┤
│ 1:00 - 2:00   │ Focus Time         │
├─────────────────────────────────────┤
│ 2:00 - 5:00   │ Meetings           │
├─────────────────────────────────────┤
│ 5:00 - 5:30   │ Email/Wrap-up      │
└─────────────────────────────────────┘
```

---

## Output Example

**Request**: "Set up daily calendar digest for my Slack"

**Output**:

```markdown
# Daily Calendar Digest Setup

## Workflow Configuration

```yaml
name: "Morning Calendar Briefing"
schedule: "6:00 AM weekdays"
timezone: "Asia/Shanghai"

trigger:
  type: cron
  expression: "0 6 * * 1-5"

actions:
  1. fetch_events:
      calendar: primary
      date: today
      
  2. send_slack:
      channel: "@you" # or #your-channel
```

## Sample Output

```
☀️ Good morning! Here's your Thursday:

📅 January 30, 2026

━━━━━━━━━━━━━━━━━━━━━━

📊 Overview:
• 5 meetings (4.5h)
• 3.5h free time
• 1 back-to-back warning ⚠️

━━━━━━━━━━━━━━━━━━━━━━

🗓️ Schedule:

9:00 AM │ Team Standup (15m)
        │ 📞 Google Meet
        │
10:00 AM │ 1:1 with Sarah (30m)
         │ 👥 Conference Room B
         │
11:00 AM │ 🧠 Focus Time (2h)
         │ 
1:00 PM │ Lunch
        │
2:00 PM │ Client Call - Acme (1h)
        │ 🤝 Zoom (link attached)
        │
3:30 PM │ Product Review (1h)
        │ 📋 Agenda attached
        │
5:00 PM │ ✅ Day ends

━━━━━━━━━━━━━━━━━━━━━━

💡 Tip: You have 2h of focus time - tackle your highest priority task!
```

## n8n Setup Instructions

1. Create new workflow
2. Add Schedule Trigger node (6am weekdays)
3. Add Google Calendar node (Get Events)
4. Add Code node (format message)
5. Add Slack node (send message)
6. Activate workflow

Would you like me to generate the full n8n workflow JSON?
```

---

*Calendar Automation Skill - Part of Claude Office Skills*

© claude-office-skills · MIT · claude-office-skills/skills

Похожие скиллы

Всё по теме «Заметки, задачи и проекты» →
gws-calendar официальный googleworkspace Скилл помогает управлять событиями и календарями Google Calendar прямо через утилиту gws. CX Codex +1 61 200установок recipe-plan-weekly-schedule официальный googleworkspace Скилл проверяет расписание недели в Google Calendar, находит свободные окна и вносит туда новые события. CX Codex +1 30 800установок google-calendar sanjay3290 Скилл даёт агенту доступ к Google Календарю: посмотреть события, создать встречу, найти свободное окно. Работает через OAuth, без MCP-сервера. CX Codex +1 536установок daily-prep официальный github Собирает расписание из Outlook через WorkIQ, подтягивает открытые задачи и контекст проекта, а на выходе даёт HTML-файл с планом на следующий рабочий день. 1 300установок extension-email-calendar-events caffeinelabs Скилл добавляет в приложение календарные события и рассылку iCalendar-приглашений по почте. Пригодится, если нужны встречи с гостями без ручной сборки ICS. CX Codex +1 28 400установок content-calendar OpenClaudia Скилл выстраивает сетку публикаций для соцсетей, рассылок и блога на неделю, месяц или квартал. Помогает распределить темы по правилу 80/20 и подобрать время выходов. CX Codex +1 676установок

Из того же набора109

airtable-automation Помогает агенту проектировать базы Airtable, настраивать представления, формулы и сценарии автоматизации. Пригодится для задач, проектов и связок с n8n. CX Codex +1 6 200установок telegram-bot Скилл для разработки Telegram-ботов: чат-боты, уведомления, ИИ-ассистенты и автоматизация групп. Пригодится, когда нужно быстро собрать обработчики сообщений и сценарии. CX Codex +1 6 200установок academic-search Помогает составить стратегию поиска научных работ, разобрать аннотации и собрать обзор литературы. Пригодится для исследования, диплома или проверки методики. CX Codex +1 6 100установок docx-manipulation Скилл собирает и правит документы Word через python-docx: заголовки, таблицы, картинки, колонтитулы. Пригодится, когда отчёт или договор нужно сгенерировать кодом. CX Codex +1 6 100установок pdf-to-docx Конвертирует PDF в редактируемый Word через библиотеку pdf2docx. Пригодится, когда отчёт или договор нужно править, а не читать. CX Codex +1 6 000установок proposal-writer Скилл генерирует коммерческие предложения, сметы и заявки на партнёрство по готовым шаблонам. Пригодится при оформлении сделок и подготовке ответов на RFP. CX Codex +1 5 900установок PDF OCR Extraction Достаёт текст из сканированных и картинных PDF через OCR. Пригодится, когда документ нельзя выделить курсором, а искать по нему нужно. CX Codex +1 5 700установок image-generation Помогает писать промпты для генераторов картинок: разбирает замысел на детали и подгоняет формулировки под конкретный инструмент. CX Codex +1 5 600установок

Спонсоры проекта

Компании, которые помогают держать аналитику открытой