Deep Work — Time-Block the Day, Budget the Shallow skill

Use when someone wants to plan a deep work day, time-block their calendar or task list, budget or cut shallow work, protect focus hours, track deep-work sessions and streaks, run an end-of-day shutdown ritual, or says "/deep-work" or "/time-block".

by alirezarezvani·MIT license·★ 26,349 Stars on the repo·GitHub ↗

Use now

Files of Deep Work — Time-Block the Day, Budget the Shallow

alirezarezvani/main1 file shown
SKILL.md
Show the full text101 lines

Deep Work — Time-Block the Day, Budget the Shallow

Portability: Reasoning-led skill with 3 stdlib Python scripts. No external APIs, no LLM calls in scripts. Works in Claude Code CLI and Claude.ai web. The scripts fix the arithmetic; you keep the judgment.

What this does

A calendar full of reactions is not a plan. This skill turns a raw task list into a day where attention is the protected resource: deep tasks get the earliest hours in blocks of at least 90 minutes, shallow work is batched into at most two windows, buffers absorb attention residue, and the schedule flatly refuses more than 4 hours of deep demand — the trained daily ceiling. A local ledger of focus sessions keeps the weekly deep-hours target measured, not felt.

Step 1 — Classify and budget the shallow

Ask for today's task list with rough minutes per task (or take it from $ARGUMENTS). The auditor classifies each task deep vs shallow (keyword heuristics; an explicit :deep/:shallow suffix always wins), computes the shallow share against the budget, and prints the forcing question for every shallow item — how long would it take to train a smart recent graduate to do this?

python scripts/shallow_work_auditor.py \
  --task "Write investor update:60" --task "Email triage:45" \
  --task "Analyze churn cohort:90:deep" --budget 50

OVER-BUDGET (exit 2) means cut, batch, or delegate before any schedule is built.

Step 2 — Block the day

Feed the surviving tasks to the planner with the day's hard start and hard end (fixed-schedule productivity: the end time does not move). Deep first and earliest, 10-minute buffers, shallow in two batches (late morning + end of day), an optional fixed lunch:

python scripts/time_block_planner.py --start 08:30 --end 17:00 --lunch 12:30 \
  --task "Write product spec:120:deep" --task "Email sweep:30:shallow"

Two refusals, both exit 2: deep demand past the 4-hour cap (the planner names what to defer), and shallow overflow past --end (the planner names what to drop — the day never silently extends).

Step 3 — Log the session, keep the streak

After each real focus block, log it. status shows this week's deep hours against the target (default 15); streak counts consecutive days with at least one session:

python scripts/focus_session_logger.py log --minutes 90 --label "Write product spec"
python scripts/focus_session_logger.py status --target 15

Step 4 — Shutdown ritual

End the day with the shutdown checklist (assets/shutdown_checklist.md): capture every open loop, glance at tomorrow, say the closing phrase. An incompletely closed day steals tomorrow's first block.

Scripts

Script Role
scripts/shallow_work_auditor.py Deep/shallow classification + shallow share vs budget → WITHIN-BUDGET / OVER-BUDGET (exit 2) + the recent-graduate forcing question per shallow item.
scripts/time_block_planner.py Energy-first schedule: deep blocks ≥90 min earliest, 4-hour deep cap (refuses, exit 2), ≤2 shallow batches, 10-min buffers, fixed lunch, overflow refusal.
scripts/focus_session_logger.py JSON ledger of focus sessions: log / status (weekly hours vs target) / streak; atomic writes.

References

Assets

Rules

  • Depth first, earliest. Deep blocks take the best hours; shallow work gets what is left, never the reverse.
  • Respect the refusals. More than 4 deep hours is fake depth; overflow past the hard stop is a broken budget, not extra output.
  • Batch, never sprinkle. Shallow work lives in at most two windows; a sprinkled inbox costs a full refocus each time.
  • Revise, don't abandon. A broken block means redraw the rest of the day, not "the plan failed."
  • Close the day. No shutdown ritual, no evening — open loops steal tomorrow's first block.

Distinct From (don't reach for the wrong skill)

  • productivity/andreessen — the 3x5 card picks WHAT matters today. Deep-work plans WHEN and HOW, with attention protected. Run the card first, then block the day here.
  • project-management capacity planning — team-level capacity and sprint math. This is one person's attention across one day and one week.

Version: 1.0.0 Build pattern: Path-B method skill — Newport discipline preserved + deterministic scheduling scripts added.

1---
2name: deep-work
3description: Use when someone wants to plan a deep work day, time-block their calendar or task list, budget or cut shallow work, protect focus hours, track deep-work sessions and streaks, run an end-of-day shutdown ritual, or says "/deep-work" or "/time-block". Classifies tasks deep vs shallow, builds an energy-first time-blocked schedule that refuses deep demand past the 4-hour ceiling, batches shallow work into at most two windows, and logs focus sessions against a weekly target.
4argument-hint: "[today's task list]"
5license: MIT
6metadata:
7 version: 1.0.0
8 build_pattern: "Path-B method skill — Cal Newport time-block discipline preserved + deterministic scheduling scripts added"
9 distinct_from: "andreessen 3x5 card (picks WHAT to do today; deep-work plans WHEN and HOW with attention protected); project-management capacity planning (team capacity; this is one person's attention)"
10---
11 
12# Deep Work — Time-Block the Day, Budget the Shallow
13 
14> **Portability:** Reasoning-led skill with 3 stdlib Python scripts. No external APIs, no LLM calls in scripts. Works in Claude Code CLI and Claude.ai web. The scripts fix the arithmetic; you keep the judgment.
15 
16## What this does
17 
18A calendar full of reactions is not a plan. This skill turns a raw task list into a day where
19attention is the protected resource: deep tasks get the earliest hours in blocks of at least 90
20minutes, shallow work is batched into at most two windows, buffers absorb attention residue, and the
21schedule flatly refuses more than 4 hours of deep demand — the trained daily ceiling. A local ledger
22of focus sessions keeps the weekly deep-hours target measured, not felt.
23 
24## Step 1 — Classify and budget the shallow
25 
26Ask for today's task list with rough minutes per task (or take it from `$ARGUMENTS`). The auditor
27classifies each task deep vs shallow (keyword heuristics; an explicit `:deep`/`:shallow` suffix always
28wins), computes the shallow share against the budget, and prints the forcing question for every
29shallow item — *how long would it take to train a smart recent graduate to do this?*
30 
31```bash
32python scripts/shallow_work_auditor.py \
33 --task "Write investor update:60" --task "Email triage:45" \
34 --task "Analyze churn cohort:90:deep" --budget 50
35```
36 
37`OVER-BUDGET` (exit 2) means cut, batch, or delegate before any schedule is built.
38 
39## Step 2 — Block the day
40 
41Feed the surviving tasks to the planner with the day's hard start and hard end (fixed-schedule
42productivity: the end time does not move). Deep first and earliest, 10-minute buffers, shallow in
43two batches (late morning + end of day), an optional fixed lunch:
44 
45```bash
46python scripts/time_block_planner.py --start 08:30 --end 17:00 --lunch 12:30 \
47 --task "Write product spec:120:deep" --task "Email sweep:30:shallow"
48```
49 
50Two refusals, both exit 2: deep demand past the 4-hour cap (the planner names what to defer), and shallow overflow past `--end` (the planner names what to drop — the day never silently extends).
51 
52## Step 3 — Log the session, keep the streak
53 
54After each real focus block, log it. `status` shows this week's deep hours against the target (default 15); `streak` counts consecutive days with at least one session:
55 
56```bash
57python scripts/focus_session_logger.py log --minutes 90 --label "Write product spec"
58python scripts/focus_session_logger.py status --target 15
59```
60 
61## Step 4 — Shutdown ritual
62 
63End the day with the shutdown checklist (`assets/shutdown_checklist.md`): capture every open loop, glance at tomorrow, say the closing phrase. An incompletely closed day steals tomorrow's first block.
64 
65## Scripts
66 
67| Script | Role |
68|---|---|
69| `scripts/shallow_work_auditor.py` | Deep/shallow classification + shallow share vs budget → WITHIN-BUDGET / OVER-BUDGET (exit 2) + the recent-graduate forcing question per shallow item. |
70| `scripts/time_block_planner.py` | Energy-first schedule: deep blocks ≥90 min earliest, 4-hour deep cap (refuses, exit 2), ≤2 shallow batches, 10-min buffers, fixed lunch, overflow refusal. |
71| `scripts/focus_session_logger.py` | JSON ledger of focus sessions: `log` / `status` (weekly hours vs target) / `streak`; atomic writes. |
72 
73## References
74 
75- [`references/deep_work_canon.md`](references/deep_work_canon.md) — deep vs shallow, the deep work hypothesis, the 4-hour ceiling, attention residue (6 sources)
76- [`references/time_blocking_method.md`](references/time_blocking_method.md) — plan every minute, block sizes, buffers, guilt-free revision, fixed-schedule productivity (6 sources)
77- [`references/shallow_work_budget.md`](references/shallow_work_budget.md) — the 30-50% band, saying no, batching, the recent-graduate heuristic, why the shutdown ritual works (6 sources)
78 
79## Assets
80 
81- [`assets/example_time_block_plan.md`](assets/example_time_block_plan.md) — a full worked day (audit → plan → mid-day revision → shutdown)
82- [`assets/shutdown_checklist.md`](assets/shutdown_checklist.md) — end-of-day shutdown ritual template
83 
84## Rules
85 
86- **Depth first, earliest.** Deep blocks take the best hours; shallow work gets what is left, never the reverse.
87- **Respect the refusals.** More than 4 deep hours is fake depth; overflow past the hard stop is a broken budget, not extra output.
88- **Batch, never sprinkle.** Shallow work lives in at most two windows; a sprinkled inbox costs a full refocus each time.
89- **Revise, don't abandon.** A broken block means redraw the rest of the day, not "the plan failed."
90- **Close the day.** No shutdown ritual, no evening — open loops steal tomorrow's first block.
91 
92## Distinct From (don't reach for the wrong skill)
93 
94- **`productivity/andreessen`** — the 3x5 card picks WHAT matters today. Deep-work plans WHEN and HOW, with attention protected. Run the card first, then block the day here.
95- **`project-management` capacity planning** — team-level capacity and sprint math. This is one person's attention across one day and one week.
96 
97---
98 
99**Version:** 1.0.0
100**Build pattern:** Path-B method skill — Newport discipline preserved + deterministic scheduling scripts added.
101 

Discussion

Alternatives

Ad campaign analyzerAnalyze ad campaign performance data (Google, Meta, LinkedIn) to identify what's working, what's wasting budget, and specific cut/scale/test recommendations. Runs statistical analysis, funnel diagnostics, and multi-channel budget reallocation with specific dollar-amount shift recommendations and scenario modeling.Business & ops · MITStartup financial modelingBuild comprehensive 3-5 year financial models with revenue projections, cost structures, cash flow analysis, and scenario planning for early-stage startups. Use this skill when creating financial projections, calculating burn rate or runway, modeling fundraising scenarios, or preparing investor-ready financials for a seed or Series A raise.Business & ops · MITProject managerUse this agent when you need to establish project plans, track execution progress, manage risks, control budget/schedule, and coordinate stakeholders across complex initiatives. Specifically:\\n\\n<example>\\nContext: A software team is starting a major product release with multiple dependencies and tight deadlines. The stakeholders need a comprehensive project plan with timeline, resource allocation, and risk mitigation strategies.\\nuser: "We're launching a new payment processing platform in Q2. Can you help us plan the project, identify risks, and set up tracking?"\\nassistant: "I'll establish a comprehensive project management plan including scope definition, work breakdown structure, detailed timeline with milestones, resource allocation strategy, risk register with mitigation plans, budget estimates, and communication protocols. I'll also set up progress tracking mechanisms and escalation procedures."\\n<commentary>\\nInvoke project-manager when a project needs comprehensive planning from inception, including scope, timeline, budget, resources, and risk management. This is distinct from scrum-master (which facilitates team execution within sprints) and differs in scope than a single-area task.\\n</commentary>\\n</example>\\n\\n<example>\\nContext: A mid-project review shows the team is running 2 weeks behind schedule, budget is trending 12% over, and there are unresolved dependency issues with another team.\\nuser: "Our project is sliding. We're behind schedule, over budget, and stuck waiting on another team. I need to understand what's happening and how to fix it."\\nassistant: "I'll conduct a project health assessment: analyze schedule variance and critical path to identify what's causing the delay, review budget performance and forecast final costs, identify blocking dependencies and propose resolution strategies, assess risk mitigation effectiveness, and develop a corrective action plan with stakeholder communication strategy."\\n<commentary>\\nUse project-manager when a project is in execution phase and you need to address performance issues (schedule, budget, scope, quality) or resolve cross-team dependencies and blockers. Project-manager handles systemic project problems, not just individual team execution.\\n</commentary>\\n</example>\\n\\n<example>\\nContext: A project is nearing completion with deliverables ready for handoff. The team needs to verify all objectives were met, document lessons learned, and properly close the project.\\nuser: "We're wrapping up the mobile app redesign. Everything seems done but I want to make sure we're closing this properly. Need to document what we learned and ensure all deliverables are signed off."\\nassistant: "I'll manage project closure: verify all deliverables against acceptance criteria, confirm stakeholder sign-off, facilitate lessons learned session to capture what worked well and areas for improvement, ensure complete documentation, conduct team retrospective, and create archive for future reference. I'll also compile final metrics on schedule, budget, quality, and team satisfaction."\\n<commentary>\\nInvoke project-manager at the end of a project lifecycle to ensure proper closure, stakeholder handoff, documentation completion, and organizational learning. This captures the full project management cycle from planning through closure.\\n</commentary>\\n</example>Business & ops · MIT/cs:cfo-review — CFO Forcing Questions/cs:cfo-review <plan> — Numerate-skeptic interrogation of any plan that touches money. Unit economics, runway, dilution, capital allocation. Use when a plan commits meaningful spend — e.g. a hiring wave, a fundraise decision, or a new channel budget. · MIT