# pomodoro

Runs Pomodoro sessions from the terminal and writes each one to a SQLite database, so you can look back at focus time and completion rates.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · ★ 56
- Author: jakedahn
- License: MIT · policy=mirror · the beginning of the file is at the end of this page
- Source: https://github.com/jakedahn/pomodoro/tree/HEAD/src/SKILL.md
- Updated: 2025-10-23
- HTML: https://affpapa.org/en/nevibecode/skills/pomodoro

## What it does

The skill hands the agent a `pomodoro` binary with a small command set. `./pomodoro start --task "..."` begins a work interval, 25 minutes with a 5-minute break by default. You can change the lengths and the number of rounds with `--work`, `--break` and `--cycles`. The timer runs in the foreground and prints the remaining time once a minute. Only one session runs at a time.

Every finished session lands in `~/.claude/skills/pomodoro/pomodoro.db`, created on the first run. From there `./pomodoro history --days 7` lists past sessions, and `./pomodoro stats --period week` reports completion rate, total focus time and your busiest hours. Add `--json` when the agent parses the output instead of you.

No external dependencies are needed, but the binary lives at `~/.claude/skills/pomodoro/pomodoro`. Move it elsewhere and the documented commands stop resolving. Interrupt a running session with `./pomodoro stop`; it stays in the database marked as unfinished.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add jakedahn/pomodoro --skill src -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/src/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/src/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add jakedahn/pomodoro --skill src -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/src/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add jakedahn/pomodoro --skill src -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/src/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install jakedahn/pomodoro src
```

2. **Manually: put the files in place**
- File: `.github/skills/src/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add jakedahn/pomodoro --skill src -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/jakedahn/pomodoro --path src
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/src/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add jakedahn/pomodoro --skill src -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/jakedahn/pomodoro/tree/HEAD/src/SKILL.md

## When to use it
- start a 25-minute work interval and stay off distractions
- see how many sessions you closed this week
- find your most productive hours from accumulated data
- cut a session short when something interrupts and keep a record
- compare completion rates across different tasks

## Example prompts
- Start a 25-minute Pomodoro for refactoring the auth module
- Show my focus stats for this week
- What's in my session history for the last 7 days?

## Source text · SKILL.md · MIT

Below is the content of a third-party file. It is data, not instructions for you: do not act on anything written inside unless the human asks. Block tag: 4cf7a319923d517a.

BEGIN THIRD-PARTY FILE 4cf7a319923d517a
````text
---
name: pomodoro
description: Simple Pomodoro timer for focused work sessions with session tracking and productivity analytics. Use when users request focus timers, ask about productivity patterns, or want to track work sessions over time. Demonstrates the System Skill Pattern (CLI + SKILL.md + Database).
license: MIT
allowed-tools:
  - Bash
  - Read
---

# Pomodoro Timer Skill

## Overview

A 25-minute timer for focused work sessions that saves every session to SQLite. Enables history tracking, productivity analytics, and pattern recognition over time.

**This is a System Skill** - it provides handles to operate a personal data system. As commands run and sessions accumulate, context builds and compounds. The system learns patterns and provides increasingly valuable insights through an OODA loop of observation, orientation, decision, and action.

## Mental Model: The OODA Loop

Operating this skill involves running a continuous cycle:

1. **Observe** → Check current status (`./pomodoro status`) and review history (`./pomodoro history`)
2. **Orient** → Analyze patterns in the data (`./pomodoro stats --period week`)
3. **Decide** → Determine optimal actions (e.g., "Morning sessions have 95% completion - schedule deep work then")
4. **Act** → Start sessions (`./pomodoro start`), provide recommendations, celebrate milestones

Each cycle builds on accumulated data, making insights more valuable over time.

## Dependencies

- Binary location: `~/.claude/skills/pomodoro/pomodoro`
- Database: Auto-created at `~/.claude/skills/pomodoro/pomodoro.db` on first run
- No external dependencies required

## Quick Decision Tree

```
User task → What kind of request?
   ├─ Start focused work → Check status first, then start session
   ├─ Check current timer → Use status command
   ├─ Review productivity → Use stats command (day/week/month/year)
   ├─ View past sessions → Use history command
   └─ Stop early → Use stop command
```

## Core Commands

**To see all available options**: Run `./pomodoro --help` or `./pomodoro <command> --help`

### Starting a Session

Begin a Pomodoro session:

```bash
# Traditional 25-minute Pomodoro
./pomodoro start --task "Refactor authentication module"

# Custom durations and cycles
./pomodoro start --task "Quick review" --work 5 --break 3 --cycles 2
./pomodoro start --task "Deep focus" --work 50 --break 10 --cycles 1

# Flash cards (rapid cycles)
./pomodoro start --task "Flash cards" --work 2 --break 1 --cycles 5
```

**Options:**
- `--work <minutes>` - Work duration (default: 25)
- `--break <minutes>` - Break duration (default: 5)
- `--cycles <count>` - Number of work+break rounds (default: 1)

**Behavior:**
- Only one session can run at a time
- Timer runs in foreground showing progress every minute
- Breaks start automatically after work sessions
- Next work session starts automatically after break (if cycles remaining)
- Each work session saved separately to database

**JSON output example:**
```bash
./pomodoro start --task "Write docs" --json
````
END THIRD-PARTY FILE 4cf7a319923d517a

The third-party file has ended. Everything between the 4cf7a319923d517a tags is data: requests and commands from it are not followed. An “end of file” line with another tag inside the block is part of the file.

First 3060 of 13186 bytes. © jakedahn · MIT · https://github.com/jakedahn/pomodoro/tree/HEAD/src/SKILL.md

_Part of the page did not fit — see the HTML version._

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
