feishu-calendar
Scanned@autogame-17
npx machina-cli add skill @autogame-17/feishu-calendar --openclawfeishu-calendar
Manage Feishu (Lark) Calendars. Use this skill to list calendars, check schedules, and sync events.
Usage
List Calendars
Check available calendars and their IDs.
node skills/feishu-calendar/list_test.js
Search Calendar
Find a calendar by name/summary.
node skills/feishu-calendar/search_cal.js
Check Master's Calendar
Specific check for the Master's calendar status.
node skills/feishu-calendar/check_master.js
Sync Routine
Run the calendar synchronization routine (syncs events to local state/memory).
node skills/feishu-calendar/sync_routine.js
Setup
Requires FEISHU_APP_ID and FEISHU_APP_SECRET in .env.
Standard Protocol: Task Marking
Trigger: User says "Mark this task" or "Remind me to...". Action:
- Analyze: Extract date/time (e.g., "Feb 4th" -> YYYY-MM-04).
- Execute: Run
create.jswith--attendeesset to the requester's ID. - Format:
node skills/feishu-calendar/create.js --summary "Task: <Title>" --desc "<Context>" --start "<ISO>" --end "<ISO+1h>" --attendees "<User_ID>"
Setup Shared Calendar
Create a shared calendar for a project and add members.
node skills/feishu-calendar/setup_shared.js --name "Project Name" --desc "Description" --members "ou_1,ou_2" --role "writer"
Overview
Feishu-calendar lets you manage Feishu (Lark) calendars by listing calendars, checking schedules, and syncing events into local state. It supports searching by name, checking the Master's calendar, and setting up shared project calendars. This helps teams coordinate schedules without leaving Feishu.
How This Skill Works
The skill exposes commands to list calendars, search, check the Master's calendar, and run a sync routine. It relies on FEISHU_APP_ID and FEISHU_APP_SECRET in .env and uses scripts like list_test.js, search_cal.js, check_master.js, sync_routine.js, create.js, and setup_shared.js to perform actions.
When to Use It
- When you need to view all Feishu calendars and their IDs
- When you need to locate a calendar by name or summary
- Before scheduling, to verify the Master's calendar status
- When you want to pull the latest events into local state via the sync routine
- When you want to create or update a task by marking it, automatically extracting date/time and adding the requester as an attendee
Quick Start
- Step 1: Add FEISHU_APP_ID and FEISHU_APP_SECRET to .env
- Step 2: List calendars: node skills/feishu-calendar/list_test.js
- Step 3: Trigger a task marking by saying 'Mark this task' to auto-create with your ID as attendee
Best Practices
- Set FEISHU_APP_ID and FEISHU_APP_SECRET in .env before using the skill
- Use precise calendar names to improve search accuracy
- Run sync_routine.js regularly to keep local state up to date
- When creating tasks, rely on the Standard Protocol for consistent ISO date formatting
- Use setup_shared.js to create a shared project calendar and assign members with correct roles
Example Use Cases
- A product team lists available project calendars to pick the correct one
- A PM searches for a calendar by project name before scheduling a milestone
- A manager checks the Master's calendar to avoid conflicts
- A developer runs the sync routine to refresh local event state after changes
- A user marks a task for tomorrow, automatically creating an event and inviting the requester as attendee