Agent skill
calendar-event
Get full details of a specific event including attendees, description, video link, location, and recurrence. Use when user asks about a specific meeting or event details.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/calendar-event
Metadata
Additional technical details for this skill
- openclaw
-
{ "requires": { "bins": [ "sqlite3" ] } }
SKILL.md
Calendar Event โ Full Event Details
Fetch complete details for a specific event: attendees, description, video link, location, recurrence.
Arguments
$ARGUMENTS:
- Event ROWID:
"1234" - Title search:
"weekly sync","standup","1:1 with Alex"
Steps
1. Find the event
DB="$HOME/Library/Group Containers/group.com.apple.calendar/Calendar.sqlitedb"
ARGS="$ARGUMENTS"
# Try as ROWID first, then fall back to title search
if echo "$ARGS" | grep -qE '^[0-9]+$'; then
WHERE="ci.ROWID = $ARGS"
else
WHERE="ci.summary LIKE '%${ARGS}%'"
fi
sqlite3 -separator '|' "$DB" "
SELECT
ci.ROWID,
ci.summary,
COALESCE(
datetime(oc.occurrence_start_date + 978307200, 'unixepoch', 'localtime'),
datetime(oc.occurrence_date + 978307200, 'unixepoch', 'localtime')
) as start_local,
datetime(oc.occurrence_end_date + 978307200, 'unixepoch', 'localtime') as end_local,
ci.all_day,
ci.start_tz,
COALESCE(l.title, '') as location,
COALESCE(l.address, '') as address,
COALESCE(ci.conference_url, '') as conf_url,
COALESCE(ci.url, '') as url,
ci.has_attendees,
ci.has_recurrences,
ci.status,
ci.invitation_status,
c.title as calendar,
s.name as account,
ci.description
FROM CalendarItem ci
LEFT JOIN OccurrenceCache oc ON oc.event_id = ci.ROWID
LEFT JOIN Calendar c ON ci.calendar_id = c.ROWID
LEFT JOIN Store s ON c.store_id = s.ROWID
LEFT JOIN Location l ON ci.location_id = l.ROWID
WHERE $WHERE
AND ci.hidden = 0
AND ci.status != 2
AND s.type != 5
GROUP BY ci.ROWID
ORDER BY COALESCE(oc.occurrence_date, ci.start_date) DESC
LIMIT 1;
"
2. Fetch attendees (if has_attendees = 1)
DB="$HOME/Library/Group Containers/group.com.apple.calendar/Calendar.sqlitedb"
EVENT_ID="$EVENT_ROWID"
sqlite3 -separator '|' "$DB" "
SELECT
CASE entity_type WHEN 8 THEN 'organizer' ELSE 'attendee' END as role,
email,
CASE status
WHEN 0 THEN 'needs-action'
WHEN 1 THEN 'accepted'
WHEN 2 THEN 'declined'
WHEN 3 THEN 'tentative'
END as status,
CASE role WHEN 2 THEN 'optional' ELSE 'required' END as attendance
FROM Participant
WHERE owner_id = $EVENT_ID
ORDER BY entity_type DESC, status;
"
3. Fetch recurrence rule (if has_recurrences = 1)
DB="$HOME/Library/Group Containers/group.com.apple.calendar/Calendar.sqlitedb"
EVENT_ID="$EVENT_ROWID"
sqlite3 -separator '|' "$DB" "
SELECT
CASE frequency
WHEN 1 THEN 'Daily'
WHEN 2 THEN 'Weekly'
WHEN 3 THEN 'Monthly'
WHEN 4 THEN 'Yearly'
END as freq,
interval,
specifier
FROM Recurrence
WHERE owner_id = $EVENT_ID
LIMIT 1;
"
Output Format
Present as a structured event card:
๐
[Title]
Date: Monday, March 3, 2026
Time: 09:00 โ 10:00 (WIB)
Location: [room/address if set]
Video: [Meet/Zoom URL if set]
Calendar: [calendar] ยท [account]
Recurrence: Every week
Attendees (N):
Organizer: [email protected]
โ [email protected]
? [email protected]
โ [email protected]
โ [email protected]
Description:
[first 500 chars of description]
Extract Google Meet links from description if conference_url is empty (pattern: meet.google.com/...).
If search returns multiple events, list them with ROWIDs and ask which one.
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?