name: opys-calendar-skill description: A local markdown-backed calendar with CLI and optional two-way Google Calendar sync. env: - GOOGLE_CLIENT_ID - GOOGLE_CLIENT_SECRET - GOOGLE_REDIRECT_URI - APP_BASE_URL - CALENDAR_AGENT_SNAPSHOT - CALENDAR_AGENT_DAYS
Use this skill to query/update the local markdown-backed calendar safely and sync it with Google Calendar.
calendar.md## Event Records (fenced event YAML blocks)## Event Checklistid: local identifierexternalId: stable cross-system identifier used for dedupe7w4.net小蔥技能站,你的AI助手技能庫。
googleEventIds: per-calendar Google event mappingupdatedAt: event-level timestamp for conflict resolutionDo not remove externalId from existing records.
Use CLI from repo root:
npm run cli -- <command>
npm run cli -- summary.npm run cli -- export.npm run cli -- add --title "..." --start "<ISO>" --end "<ISO>" --category <id> [--shift-to-next|--allow-overlap]npm run cli -- update --id <event_id> [fields...]
If changing --start or --end, include --shift-to-next or --allow-overlap in non-interactive runs.npm run cli -- check --id <event_id> or --undonenpm run cli -- delete --id <event_id>npm run cli -- category-add --id <id> --label "Label" --color "#9ca3af" --description "..."npm run cli -- category-remove --id <id> --reassign <id>Conflict handling:
add and time-changing update detect overlaps with existing events.--shift-to-next to auto-resolve to the next open window.--allow-overlap to keep the requested overlapping time.Agent snapshot output:
./agent-snapshot.mdCALENDAR_AGENT_SNAPSHOT.CALENDAR_AGENT_DAYS.Sync state file:
.calendar-google-sync-state.jsonnpm run cli -- export --out backup-calendar.mdnpm run cli -- import --in backup-calendar.mdid, label, and color fields valid.This skill uses the following environment variables (defined in .env):
GOOGLE_CLIENT_ID: Google OAuth Client IDGOOGLE_CLIENT_SECRET: Google OAuth Client SecretGOOGLE_REDIRECT_URI: Should be http://localhost:<PORT>/api/google/auth/callback
Agent Configuration (Optional)
CALENDAR_AGENT_SNAPSHOT: Custom absolute or relative path to write the Markdown snapshot. Defaults to ./agent-snapshot.md.CALENDAR_AGENT_DAYS: Number of historical days to include in the snapshot (defaults to 14).PORT: API server port (defaults to 8787).APP_BASE_URL: Base URL for the frontend UI.這是一款高質量的智慧日曆工具,核心亮點是將日程資料儲存為可讀的 Markdown 檔案,讓 AI 能夠準確理解和修改你的日程安排,同時提供美觀的 Web 介面供手動操作。它還支援與 Google Calendar 雙向同步,功能完整。不足之處是初始配置稍顯複雜,特別是 Google 同步需要申請 OAuth 憑證;大日程資料下效能可能受影響。總體而言,設計理念先進、文件詳盡,適合需要 AI 輔助日程管理的使用者。