Token导航 LogoToken导航TokenDH.com
开发敏感数据clawhub未标认证来源可访问clear审计提醒

calcomcalcom 日程管理

Agent Skill

calcom 用于辅助前端页面、组件、样式和交互逻辑开发,适合在 OpenClaw 中需要维护前端项目、生成组件或检查界面实现时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

20,542

周安装

831

GitHub Stars

公开资料未说明

下载量

6,449
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:calcom(calcom 日程管理)
来源仓库:https://github.com/peerrich/calcom
安装命令:
openclaw skills install calcom
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install calcom

简介

calcom 用于辅助前端页面、组件、样式和交互逻辑开发,适合在 OpenClaw 中需要维护前端项目、生成组件或检查界面实现时使用。

  • 与 Cal.com API v2 集成,管理日程安排、预订与日历可用性。
  • 适用于构建预约系统与时间管理工具的前端集成。
  • 安装命令为 openclaw skills install calcom,需配置 API 密钥与回调 URL。
  • 使用前应确认 OAuth 授权范围与事件同步机制的安全性。

SKILL.md

name
calcom-api
description
Interact with the Cal.com API v2 to manage scheduling, bookings, event types, availability, and calendars. Use this skill when building integrations that need to create or manage bookings, check availability, configure event types, or sync calendars with Cal.com's scheduling infrastructure.
license
MIT
metadata
author
calcom
version
1.0.0
api-version
v2

Cal.com API v2

This skill provides guidance for AI agents to interact with the Cal.com API v2, enabling scheduling automation, booking management, and calendar integrations.

Base URL

All API requests should be made to:

https://api.cal.com/v2

Authentication

All API requests require authentication via Bearer token in the Authorization header:

Authorization: Bearer cal_<your_api_key>

API keys must be prefixed with cal_. You can generate API keys from your Cal.com dashboard under Settings > Developer > API Keys.

Core Concepts

Event Types

Event types define bookable meeting configurations (duration, location, availability rules). Each event type has a unique slug used in booking URLs.

Bookings

Bookings are confirmed appointments created when someone books an event type. Each booking has a unique UID for identification.

Schedules

Schedules define when a user is available for bookings. Users can have multiple schedules with different working hours.

Slots

Slots represent available time windows that can be booked based on event type configuration and user availability.

Common Operations

Check Available Slots

Before creating a booking, check available time slots:

GET /v2/slots?startTime=2024-01-15T00:00:00Z&endTime=2024-01-22T00:00:00Z&eventTypeId=123&eventTypeSlug=30min

Query parameters:

  • startTime (required): ISO 8601 start of range
  • endTime (required): ISO 8601 end of range
  • eventTypeId or eventTypeSlug: Identify the event type
  • timeZone: Timezone for slot display (default: UTC)

Response contains available slots grouped by date.

Create a Booking

POST /v2/bookings
Content-Type: application/json

{
  "start": "2024-01-15T10:00:00Z",
  "eventTypeId": 123,
  "attendee": {
    "name": "John Doe",
    "email": "john@example.com",
    "timeZone": "America/New_York"
  },
  "meetingUrl": "https://cal.com/team/meeting",
  "metadata": {}
}

Required fields:

  • start: ISO 8601 booking start time
  • eventTypeId: ID of the event type to book
  • attendee.name: Attendee's full name
  • attendee.email: Attendee's email address
  • attendee.timeZone: Attendee's timezone

Get Bookings

List bookings with optional filters:

GET /v2/bookings?status=upcoming&take=10

Query parameters:

  • status: Filter by status (upcoming, recurring, past, cancelled, unconfirmed)
  • attendeeEmail: Filter by attendee email
  • eventTypeId: Filter by event type
  • take: Number of results (max 250)
  • skip: Pagination offset

Get a Single Booking

GET /v2/bookings/{bookingUid}

Cancel a Booking

POST /v2/bookings/{bookingUid}/cancel
Content-Type: application/json

{
  "cancellationReason": "Schedule conflict"
}

Reschedule a Booking

POST /v2/bookings/{bookingUid}/reschedule
Content-Type: application/json

{
  "start": "2024-01-16T14:00:00Z",
  "reschedulingReason": "Conflict with another meeting"
}

List Event Types

GET /v2/event-types

Returns all event types for the authenticated user.

Get a Single Event Type

GET /v2/event-types/{eventTypeId}

Create an Event Type

POST /v2/event-types
Content-Type: application/json

{
  "title": "30 Minute Meeting",
  "slug": "30min",
  "lengthInMinutes": 30,
  "locations": [
    {
      "type": "integration",
      "integration": "cal-video"
    }
  ]
}

List Schedules

GET /v2/schedules

Get Default Schedule

GET /v2/schedules/default

Create a Schedule

POST /v2/schedules
Content-Type: application/json

{
  "name": "Working Hours",
  "timeZone": "America/New_York",
  "isDefault": true,
  "availability": [
    {
      "days": [1, 2, 3, 4, 5],
      "startTime": "09:00",
      "endTime": "17:00"
    }
  ]
}

Days are 0-indexed (0 = Sunday, 1 = Monday, etc.).

Get Current User

GET /v2/me

Returns the authenticated user's profile information.

Team and Organization Endpoints

For team bookings and organization management, use the organization-scoped endpoints:

List Organization Teams

GET /v2/organizations/{orgId}/teams

Get Team Event Types

GET /v2/organizations/{orgId}/teams/{teamId}/event-types

Create Team Booking

Team event types support different scheduling modes:

  • COLLECTIVE: All team members must attend
  • ROUND_ROBIN: Distributes bookings among team members

Webhooks

Configure webhooks to receive real-time notifications:

List Webhooks

GET /v2/webhooks

Create a Webhook

POST /v2/webhooks
Content-Type: application/json

{
  "subscriberUrl": "https://your-app.com/webhook",
  "triggers": ["BOOKING_CREATED", "BOOKING_CANCELLED"],
  "active": true
}

Available triggers:

  • BOOKING_CREATED
  • BOOKING_CANCELLED
  • BOOKING_RESCHEDULED
  • BOOKING_CONFIRMED
  • MEETING_STARTED
  • MEETING_ENDED

Calendar Integration

List Connected Calendars

GET /v2/calendars

Check Busy Times

GET /v2/calendars/busy-times?startTime=2024-01-15T00:00:00Z&endTime=2024-01-22T00:00:00Z

Error Handling

The API returns standard HTTP status codes:

  • 200: Success
  • 201: Created
  • 400: Bad Request (invalid parameters)
  • 401: Unauthorized (invalid or missing API key)
  • 403: Forbidden (insufficient permissions)
  • 404: Not Found
  • 422: Unprocessable Entity (validation error)
  • 500: Internal Server Error

Error responses include a message field:

{
  "status": "error",
  "message": "Booking not found"
}

Rate Limiting

The API implements rate limiting. If you exceed the limit, you'll receive a 429 Too Many Requests response. Implement exponential backoff for retries.

Pagination

List endpoints support pagination via take and skip parameters:

  • take: Number of items to return (default: 10, max: 250)
  • skip: Number of items to skip

Best Practices

  1. Always check slot availability before creating bookings
  2. Store booking UIDs for future reference (cancel, reschedule)
  3. Handle timezone conversions carefully - always use ISO 8601 format
  4. Implement webhook handlers for real-time booking updates
  5. Cache event type data to reduce API calls
  6. Use appropriate error handling for all API calls

Additional Resources

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

73.14%
按下载量换算4,717

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

未展示

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills