From letterdog
Find practical ways to open time in Letterdog — the user's personal self-hosted mail/calendar/contacts (JMAP), not Google Calendar. Use when the user wants to clear a day, make a focus block, identify movable meetings, create holds, or draft safe reschedules.
How this skill is triggered — by the user, by Claude, or both
Slash command
/letterdog:letterdog-calendar-free-up-timeThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Tool mechanics, confirmation flow, recurrence/occurrence addressing, and CLI routing live in the
Tool mechanics, confirmation flow, recurrence/occurrence addressing, and CLI routing live in the
letterdog-calendar skill. This skill covers only the free-up-time workflow.
Resolve the target date or range to concrete local times. Read the window with search_events
(after/before LocalDateTime + time_zone, expand: true so recurring events show their actual
occurrences with synthetic instance ids). Use read_events for participant/organizer detail before
judging what can move, and get_availability when other people or candidate replacement slots are
involved.
Classify events conservatively:
Do not propose moving or deleting externally organized meetings as the main plan unless the user explicitly asks for aggressive changes.
Prefer the smallest set of changes that creates the requested free block. Show before/after timing, affected event ids, whether each change hits one occurrence (synthetic instance id) or the whole series (base id), attendee-visible effects, and whether scheduling messages will be sent.
create_events with send_invitations: false (the default) — runs directly.update_event with a minimal patch; target the synthetic instance id to move just
one occurrence. Set send_updates: true whenever attendees must learn of the change.delete_events with explicit ids (instance id = skip one occurrence); always
two-phase — present the preview, then repeat with confirm_token. send_cancellations notifies
attendees.Never run broad query-based deletion: search/read first, then pass explicit ids. If server state changed between read and write, reread and rebuild the plan rather than forcing stale changes.
npx claudepluginhub solastrius/letterdog --plugin letterdogCreates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.