ea-time-block

Generates a Cal Newport time-block plan for today as a linked Excalidraw diagram.

108|11|Updated Jun 26, 2026
One-click install
npx skills add https://github.com/db-aeon/joshu-oss --skill ea-time-block-db-aeon
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ea-time-block
Source: https://github.com/db-aeon/joshu-oss/tree/main/integrations/hermes/skills/executive-assistant/ea-time-block
Command: npx skills add https://github.com/db-aeon/joshu-oss --skill ea-time-block-db-aeon

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Planning a workday across meetings, projects, and loose tasks is manual and quickly goes stale. This Skill builds today's intentional schedule as a linked Excalidraw diagram, combining live calendar events, carryover tasks, and project priorities into one visual plan. ## Core Features & Use Cases - Deterministic input gathering: A script collects today's meetings from the live calendar API or mirrors, active projects, recent journals, and yesterday's plan into a plan JSON file. - LLM plan synthesis: Fills gaps between fixed meetings with deep work, shallow task batches, numbered task groups, carryover items, and capture notes, each linked to canonical files. - Excalidraw rendering: Renders the plan JSON into a time-block diagram with an hour grid, task group column, and clickable joshu:// links that open in the Joshu desktop. - Use Case: After your morning review, ask for today's time block and receive a regenerated diagram where every meeting links to its calendar event and every deep work block links to its project charter. ## Quick Start Ask the assistant to time block today and generate the linked Excalidraw schedule in the Planning folder.

Frequently Asked Questions about ea-time-block

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a time-block schedule for today?

Ask the assistant to time block today. It runs a gather script to pull today's meetings from the live calendar, synthesizes deep work and shallow task blocks around them, and renders a linked Excalidraw diagram in the Planning folder.

How does time blocking work with Google Calendar events?

Meetings come from the live calendar API via google_calendar_list_events or the Joshu events endpoint, never from invented data. Each meeting becomes a fixed block linked to its event mirror file, and the LLM only fills unscheduled gaps between them.

Can I regenerate the plan after my schedule changes?

Yes. Rerun the skill after major calendar changes or after the morning review confirms carryover items. It rewrites the same-day Excalidraw file with updated meetings, carryover tasks, and rebalanced blocks.

Why does globbing calendar mirror files by date fail?

Mirror files are named by event UUID, not by calendar date, so filename globbing cannot find today's events. Use the gather script or the live list_events API to discover events, then resolve mirror paths by event ID for links.

What are the limitations of this time blocking approach?

Blocks have a 30 minute minimum, so tiny tasks must be batched into shallow blocks or numbered task groups. It does not replace email triage or meeting booking flows, and diagrams stay local rather than syncing to excalidraw.com.