INeffort: high · round 1 of 2 · cwd ~/Projects/api
API Error: 500 Internal server error. This is a server-side issue, usually temporary — try again in a moment. If it persists, check status.claude.com.
⌘ Esc to focus or unfocus Claude
+/
Auto
Codex
OPENED
Codex
New chat
billing-service
fitness-app
docs-site
checkout-api
sky-cli
image-editor
YOYou
Voice
billing-service
Retries and the per-key budget now share one clock.
Checks passed: npm run check · git diff --check
Working…
done · 6 files, 31 tests
Edited 6 files+434−21
Undo
Review
src/limiter/bucket.ts+142−3
src/limiter/window.ts+37−8
Show 4 more files
Do anything
Approve for me
5.6 SolExtra High
Claude — canvas
OPENED
Home
Code
NewArtifactsCustomizeMore
canvas
Rate-limit review
Fix the hook setup
api-gateway
Security pass
Rewrite the guide
YYou· Max
Rate-limit reviewcanvas
Review the rate limiter and pick an approach.
1/2Which limiter should we ship?
Token bucketBursty traffic, per-key refill1
Sliding windowExact counts, heavier on Redis2
Leaky bucketSmooth output, queues the rest3
Other4
SkipNext
Type / for commands
PlanOpus 5High
Click the widget
Needs attention
1
1
2
ERRORS1
api-gateway
6m
Service temporarily unavailable
~/Projects/api-gateway
WAITING FOR A RESPONSE1
canvas
2m
is waiting for a response.
~/Projects/canvas
COMPLETED2
billing-service
now
finished working.
~/Projects/billing-service
fitness-app
14m
finished working.
~/Projects/fitness-app
Clear all
“Claude Code, canvas, is waiting for a response.”“Codex, billing service, finished working.”“Claude Code, api gateway, stopped because of an error.”
api-gateway
stopped because of an error.
~/Projects/api-gateway
6m
billing-service
finished working.
~/Projects/billing-service
now
canvas
is waiting for a response.
~/Projects/canvas
2m
PAUSED
01
You can’t watch five agents at once. You don’t have to.
02
That card says which project needs you. Click, you’re there.
03
Another session finishes — it reports in. No checking tabs.
04
It works the same for Claude, Codex, the VS Code extension.
05
A silent 500 in the background. You’d miss it. DingDone won’t.
THE PROBLEM
Close the gap between “done” and “you noticed”.
Without it
it needs you
you happen to look
40 minutes of nothing happening
With it
you hear it
answered in seconds — and it is running again
Same session. The agent spends more of it working.
Nothing about the agent got faster — only the part where it sat waiting for you. Watch it, walk away, or run four sessions at once: you hear the end of that wait.
VOICES
Five things it can tell you. Not one.
Five events, five voices. Real recordings — press play.
Done
“Codex, billing service, finished working.”
The turn is genuinely over.
Voice · Paula
Paula
Waiting
“Claude Code, canvas, is waiting for a response.”
A question or a permission prompt is on screen.
Voice · Crisp Narrator
Crisp Narrator
Still waiting
“Claude Code, canvas, is still waiting for a response.”
You did not answer, so it reminds you once more — 30 seconds to 5 minutes, your call.
Voice · Megan
Megan
Interim update
“Codex, api gateway, interim update.”
The main run reported back while background agents keep going.
Voice · Rocket Visionary
Rocket Visionary
Error
“Claude Code, api gateway, stopped because of an error.”
The run stopped. The card tells you why.
Voice · News Anchor
News Anchor
WHAT’S INSIDE
Set once, then it stays out of your way.
Three looks for the widget.
It parks on the edge of your screen and keeps count. How much of it you see is your call.
Mascot
1
1
0
2
The icon on top, floating off the edge. The default.
With icons
1
1
0
2
The same counters, flush with the edge, one point larger.
With numbers
1102
The quiet one: 28 points wide, digits only.
Every announcement is four slots.
Every slot is yours to rewrite. Only the order is fixed — and the chime is clickable.
chime
Codex
agent
,
billing service
how you say it
,
finished working.
your words
Now the fun part.
135 voices today, and counting. Somebody has to tell you the build is done.
Spoken through our own service, so Pro needs no ElevenLabs key of its own. The free plan speaks in an Apple system voice — those are in Voice samples above.
14 languages — English, Russian, Spanish, French, German, Italian, Portuguese, Dutch, Polish, Ukrainian, Turkish, Japanese, Korean, Chinese — detected automatically or picked by hand.
FREE FOR 14 DAYS, THEN PRO
Every session that needs you, in one panel.
Errors, waiting, updates and completed sessions appear in separate groups, so you can see whether everything works at a glance. Click a card and DingDone takes you there.
Supported VS Code and Claude sessions open at the thread itself.
Everywhere else — terminals, Cursor, other editors — it opens the project folder instead. It never guesses at a window.
A card clears itself once you have actually arrived — not before.
Needs attention
1
1
2
ERRORS1
api-gateway
4m
Context limit exceeded
~/Projects/api-gateway
WAITING FOR A RESPONSE1
canvas
2m
is waiting for a response.
~/Projects/canvas
COMPLETED2
billing-service
now
finished working.
~/Projects/billing-service
fitness-app
12m
finished working.
~/Projects/fitness-app
Clear all
COMPATIBILITY
It speaks wherever your agent already runs.
The notification comes from the agent’s own hook, not from watching your screen — so it works the same in a bare terminal and inside an editor. DingDone recognises where the session was, and that only changes one thing: where a click takes you.
Verified
Claude appCodex appCodex in VS CodeClaude Code in VS CodeClaude Code in ConductorCodex in Conductor
Not tested yet
Terminal.appiTerm2WarpGhosttytmuxCursor
They very likely work — the hook is the same everywhere. Nobody has verified them yet, so nothing is claimed. Two agents are supported: Claude Code and Codex, and both get all five events.
Where a click takes you
The same honest matrix the app shows behind its own “i” button — nothing here promises more than ships.
Codex app
native thread
VS Code + Codex extension
native thread
Claude app
native thread
VS Code + Claude Code
focuses the project · thread in progress
Conductor + Claude Code / Codex
the matching chat · local sessions
Terminal, iTerm, Warp, Ghostty, Cursor
opens the project folder
PRIVACY
Offline by default. Quiet by design.
The free tier speaks in an Apple voice on your Mac. No network, no account, no server in the loop.
This Mac
Your prompts
Your code
The agent’s replies
never leave this Mac
“Codex, billing service, finished working.”
this one line is all that leaves
Our voice service
PRO ONLY
Takes the sentence, hands back the audio.
No prompts, no code, no replies. Nothing else, ever.
The local log keeps the event type, the folder and the phrase spoken — nothing else. The config file holding any key of yours is written 0600.
PRICING
Core features are free — forever.
Voice notifications never expire and never need a license.
Free
The whole job it was built for. No account, no license, no server.
Billed once a year at $39.99 · cancel anytime · USD
Everything in Free, forever
Premium cloud voices — included, no keys of your own
Character personas and per-project voices
Agent Cockpit — the active-sessions widget and jump into the session
Your own ElevenLabs key and voices by Voice ID — optional
Portable settings carried between your Macs
Pro is bought inside the app — DingDone › Subscription.
Secure checkout via Stripe · one license, up to 2 Macs
QUESTIONS
The things people ask first.
Does it read my prompts or the agent’s replies?
No. The agent’s hook hands DingDone an event — what happened, which folder, which session. Message contents are never read and never logged. The local log keeps the event type, the folder and the phrase that was spoken.
Will it talk over every step?
No. It speaks when a session needs you or is done — waiting for a response, finished, an error, an interim update. Tool calls, file edits and background sub-agents pass in silence, and a run that stops only to wake itself later says nothing at all.
What does it change on my Mac?
It adds one small block to each agent’s own config file. A backup is written first and up to three versions are kept; disconnecting removes only the lines DingDone added.
Do I need an API key?
No. The free tier speaks with the Apple voices already on your Mac — offline, no account. Premium cloud voices run through DingDone’s own service, so there is still no key of yours to manage.
Does it work with the VS Code extensions?
Yes, and that is where it earns its keep. For Codex in VS Code a click opens the thread itself. For Claude Code in VS Code, DingDone brings the right window forward on its own — no extra setup, and nothing sensitive is ever touched along the way. Conductor is covered too: for Claude Code and Codex running locally there, a click lands in the matching chat.
It talks over me. Can I make it quieter?
Every phrase is editable, per event, in fourteen languages with auto-detect. Turn off any event you don’t want, or keep only the chime. The repeat reminder for a session still waiting is a separate switch.
How do I buy Pro?
Inside the app — the licence screen handles it. This page never asks for a card. Core features stay free forever; a licence covers up to two Macs.
“Claude Code, api gateway, stopped because of an error.”
THE PROBLEM
Close the gap between “done” and “you noticed”.
Without it
it needs you
you happen to look
40 minutes of nothing happening
With it
you hear it
answered in seconds — and it is running again
Same session. The agent spends more of it working.
Nothing about the agent got faster — only the part where it sat waiting for you. Watch it, walk away, or run four sessions at once: you hear the end of that wait.
VOICES
Five things it can tell you. Not one.
Five events, five voices. Real recordings — press play.
Done
“Codex, billing service, finished working.”
The turn is genuinely over.
Voice · Paula
Paula
Waiting
“Claude Code, canvas, is waiting for a response.”
A question or a permission prompt is on screen.
Voice · Crisp Narrator
Crisp Narrator
Still waiting
“Claude Code, canvas, is still waiting for a response.”
You did not answer, so it reminds you once more — 30 seconds to 5 minutes, your call.
Voice · Megan
Megan
Interim update
“Codex, api gateway, interim update.”
The main run reported back while background agents keep going.
Voice · Rocket Visionary
Rocket Visionary
Error
“Claude Code, api gateway, stopped because of an error.”
The run stopped. The card tells you why.
Voice · News Anchor
News Anchor
WHAT’S INSIDE
Set once, then it stays out of your way.
Three looks for the widget.
It parks on the edge of your screen and keeps count. How much of it you see is your call.
1
1
0
2
Mascot
The icon on top, floating off the edge. The default.
1
1
0
2
With icons
The same counters, flush with the edge, one point larger.
1102
With numbers
The quiet one: 28 points wide, digits only.
Every announcement is four slots.
Every slot is yours to rewrite. Only the order is fixed — and the chime is tappable.
chime
Codex
agent
,
canvas
how you say it
,
finished.
your words
Now the fun part.
135 voices today, and counting. Somebody has to tell you the build is done.
Spoken through our own service, so Pro needs no ElevenLabs key of its own. The free plan speaks in an Apple system voice — those are in Voice samples above.
14 languages — English, Russian, Spanish, French, German, Italian, Portuguese, Dutch, Polish, Ukrainian, Turkish, Japanese, Korean, Chinese — detected automatically or picked by hand.
FREE FOR 14 DAYS, THEN PRO
Every session that needs you, in one panel.
Errors, waiting, updates and completed sessions appear in separate groups, so you can see whether everything works at a glance. Click a card and DingDone takes you there.
Supported VS Code and Claude sessions open at the thread itself.
Everywhere else — terminals, Cursor, other editors — it opens the project folder instead. It never guesses at a window.
A card clears itself once you have actually arrived — not before.
Needs attention
1
1
2
ERRORS1
api-gateway
4m
Context limit exceeded
~/Projects/api-gateway
WAITING FOR A RESPONSE1
canvas
2m
is waiting for a response.
~/Projects/canvas
COMPLETED2
billing-service
now
finished working.
~/Projects/billing-service
fitness-app
12m
finished working.
~/Projects/fitness-app
Clear all
COMPATIBILITY
It speaks wherever your agent already runs.
The notification comes from the agent’s own hook, not from watching your screen — so it works the same in a bare terminal and inside an editor. DingDone recognises where the session was, and that only changes one thing: where a click takes you.
Verified
Claude appCodex appCodex in VS CodeClaude Code in VS CodeClaude Code in ConductorCodex in Conductor
Not tested yet
Terminal.appiTerm2WarpGhosttytmuxCursor
They very likely work — the hook is the same everywhere. Nobody has verified them yet, so nothing is claimed. Two agents are supported: Claude Code and Codex, and both get all five events.
Where a click takes you
The same honest matrix the app shows behind its own “i” button — nothing here promises more than ships.
Codex app
native thread
VS Code + Codex extension
native thread
Claude app
native thread
VS Code + Claude Code
focuses the project · thread in progress
Conductor + Claude Code / Codex
the matching chat · local sessions
Terminal, iTerm, Warp, Ghostty, Cursor
opens the project folder
PRIVACY
Offline by default. Quiet by design.
The free tier speaks in an Apple voice on your Mac. No network, no account, no server in the loop.
This Mac
Your prompts
Your code
The agent’s replies
never leave this Mac
“Codex, billing service, finished working.”
this one line is all that leaves
Our voice service
PRO ONLY
Takes the sentence, hands back the audio.
No prompts, no code, no replies. Nothing else, ever.
The local log keeps the event type, the folder and the phrase spoken — nothing else. The config file holding any key of yours is written 0600.
PRICING
Core features are free — forever.
Voice notifications never expire and never need a license.
Free
The whole job it was built for. No account, no license, no server.
Billed once a year at $39.99 · cancel anytime · USD
Everything in Free, forever
Premium cloud voices — included, no keys of your own
Character personas and per-project voices
Agent Cockpit — the active-sessions widget and jump into the session
Your own ElevenLabs key and voices by Voice ID — optional
Portable settings carried between your Macs
Pro is bought inside the app — DingDone › Subscription.
Secure checkout via Stripe · one license, up to 2 Macs
QUESTIONS
The things people ask first.
Does it read my prompts or the agent’s replies?
No. The agent’s hook hands DingDone an event — what happened, which folder, which session. Message contents are never read and never logged. The local log keeps the event type, the folder and the phrase that was spoken.
Will it talk over every step?
No. It speaks when a session needs you or is done — waiting for a response, finished, an error, an interim update. Tool calls, file edits and background sub-agents pass in silence, and a run that stops only to wake itself later says nothing at all.
What does it change on my Mac?
It adds one small block to each agent’s own config file — ~/.claude/settings.json and ~/.codex/config.toml. A backup is written first and up to three versions are kept; disconnecting removes only the lines DingDone added.
Do I need an API key?
No. The free tier speaks with the Apple voices already on your Mac — offline, no account. Premium cloud voices run through DingDone’s own service, so there is still no key of yours to manage.
It talks over me. Can I make it quieter?
Every phrase is editable, per event, in fourteen languages with auto-detect. Turn off any event you don’t want, or keep only the chime. The repeat reminder for a session still waiting is a separate switch.
Does it work with the VS Code extensions?
Yes, and that is where it earns its keep. For Codex in VS Code a click opens the thread itself. For Claude Code in VS Code, DingDone brings the right window forward on its own — no extra setup, and nothing sensitive is ever touched along the way. Conductor is covered too: for Claude Code and Codex running locally there, a click lands in the matching chat.
How do I buy Pro?
Inside the app — the licence screen handles it. This page never asks for a card. Core features stay free forever; a licence covers up to two Macs.