Pomodoro Timer & Focus Music for VS Code and Cursor
Run a Pomodoro sprint with instrumental focus music, without leaving your editor.
NEDIO is a Pomodoro timer that also plays the music. Pick one goal, choose a work mode and a
duration, start the sprint — the countdown, the audio, the end-of-sprint review, and your weekly
focus stats all live in the editor. No second browser tab, no playlist to curate, no ads.
One task. One sprint. One commit.
Requires a free NEDIO account. Sign-in takes one click from the panel.

Why another Pomodoro timer
Most Pomodoro extensions only count down. Music apps make you pick what to play, then keep a tab
open competing for your attention. NEDIO puts both in one loop: name what you are shipping, start a
bounded sprint, work with instrumental audio, then record what actually happened.
- Coding sprints — ship a feature, fix a bug, finish a PR.
- Deep work — protect a 25–90 minute block for a single goal.
- Debugging — give an investigation a hard time boundary.
- Planning and review — run focused non-coding sessions without switching apps.
What you get
- Pomodoro sprints in the sidebar — Code, Debug, Plan, Review, or AI Agent, at 15, 25, 45, 60,
or 90 minutes, against one goal you type in.
- A finish line for the goal — one optional line on what would settle it, written before the
sprint starts and shown back when the review asks whether you got there.
- Instrumental focus music in the editor — lo-fi and ambient, no lyrics, no ads, no tab to keep
alive.
- Status bar countdown — the running sprint and the time left stay visible while you code.
- Pause, resume, and finish — full control from the panel, no browser round trip.
- Focus and break phases — the panel and status bar follow the current phase, including short
and long breaks.
- End-of-sprint review — mark the goal completed, partly completed, or missed; capture what
changed and what comes next.
- The block that did not land is parked — answer partly or missed and the goal is written where
the next setup screen offers it back, one press to carry on with it.
- Weekly focus statistics — focused minutes, completed sprints, goal completion, work-mode and
duration patterns, and recent sessions.
- Browser to editor sync — a sprint started on nedio.xyz mirrors into the editor and can be
controlled from either side. One surface owns the clock and the sound at a time, and taking it
over moves both together, so two players never count the same minute.
- The clock does not need the editor awake — phase and remainder are worked out from when the
sprint started, so a shut laptop catches up on waking and a dropped connection does not stop the
countdown.
- Optional Do Not Disturb — silence editor notifications while a sprint runs, then restore your
previous setting.

Where to find it
The NEDIO icon sits in the activity bar, the strip of icons down the side. The countdown appears
in the status bar, bottom left. There is no default keyboard shortcut.
Get started
- Install the extension.
- Open the NEDIO icon in the activity bar.
- Choose Sign in to NEDIO and confirm the connection in your browser.
- Pick a work mode and a sprint length.
- Type one concrete goal —
fix auth redirect, ship PR #142.
- Start the sprint.
From the Command Palette:
NEDIO: Start Sprint
NEDIO: Open NEDIO in Browser
NEDIO: Connect This Editor
NEDIO: Disconnect This Editor
NEDIO: Show Logs
NEDIO: Refresh Plan and Usage

FAQ
Is there a Pomodoro timer for VS Code?
Yes. NEDIO runs Pomodoro-style sprints inside VS Code and Cursor, with a countdown in the status bar
and controls in the sidebar. The classic 25-minute interval is the default; 15, 45, 60, and 90
minutes are also available.
Can I play focus music inside VS Code?
Yes. NEDIO streams instrumental focus audio in the editor itself, so you do not need a browser tab
or a separate music app running alongside your editor.
What kind of music does it play?
Instrumental only — lo-fi and ambient tracks selected for coding. No lyrics, no ads, no autoplay
rabbit holes.
Does it work in Cursor?
Yes. NEDIO is a standard UI extension and runs in VS Code, Cursor, and other compatible editors.
Do I need an account?
Yes. Connecting the editor signs you into NEDIO so sprints, reviews, and statistics stay in sync
between the editor and nedio.xyz. Creating an account is free.
Is it free?
There is a free plan with a daily limit on focus audio. Pro removes the cap. See
nedio.xyz/pricing.
Does it read my code?
No. NEDIO reads no workspace content. Source code, file names, and repository names are never sent
anywhere. See Privacy below.
Free and Pro
The free plan has a daily limit of focus-audio minutes; the panel shows how much of it you have
used. Pro removes that cap and unlocks additional controls and analytics on the NEDIO service.
Current plans: nedio.xyz/pricing. Payments and subscription management
happen on the NEDIO website, never inside the extension.
Privacy
NEDIO reads no workspace content. Authentication tokens are stored with VS Code's SecretStorage API
and are never exposed to the webview.
NEDIO always talks to https://nedio.xyz. That address is fixed when the extension is built rather
than exposed as a setting, so no workspace can redirect the extension — and with it your account's
tokens — somewhere else.
Full policy: nedio.xyz/privacy.
Network activity
Once per editor start the extension fetches /api/ide/config from NEDIO to learn where audio and
realtime live. That request happens whether or not an account is connected and is not covered by
nedio.telemetryEnabled; it carries the extension's client type and nothing about you or your code.
Everything else — sprints, statistics, audio — happens only after you connect an account.
Product analytics
When both NEDIO telemetry and the editor-wide telemetry setting are enabled, the extension records
first engagement, account connection, sprint lifecycle, statistics views, web-app opens, and coarse
playback error codes, and coarse playback recovery timings (stalls, recoveries, skips; a track identifier
and durations only). Events are attached to the signed-in NEDIO account and identify the host as
VS Code, VS Code Insiders, Cursor, or another compatible editor. Source code, filenames, repository
names, machine identifiers, sprint goals, and review text are never included. Sprint duration and
completion data come from the same listening-session history that powers your statistics.
Set nedio.telemetryEnabled to false to opt out. The editor-wide telemetry setting is respected
either way.
Settings
| Setting |
Default |
What it does |
nedio.telemetryEnabled |
true |
Sends privacy-preserving product events when the editor-wide telemetry setting is also enabled. Never includes code, filenames, repositories, goals, or review text. |
nedio.showStatusBarTimer |
true |
Shows the countdown after you start a sprint. |
nedio.defaultDuration |
25 |
Sets the sprint duration selected when the panel opens. |
nedio.defaultBreak |
5 |
Sets the break between focus blocks, in minutes: 3, 5, 10, or 15. |
nedio.defaultWorkMode |
code |
Sets the work mode selected when the panel opens. |
nedio.silenceNotifications |
false |
Uses IDE Do Not Disturb during a sprint, then restores the previous state. |
Support
Run NEDIO: Show Logs from the Command Palette first — it usually names the problem. Then write to
support@nedio.xyz with your editor version, the extension version, and what you expected.
Links
Start one sprint. Ship one thing.