docketGitHub

docket

A Claude Code mod that keeps Claude's open questions, confirmations and hand-offs in numbered lists beside the chat, so you can answer in a word or a click and nothing gets missed.

/plugin marketplace add StoneCypher/docket
/plugin install docket@docket

Run them one at a time at the prompt of a Claude Code session, then pick a scope.

If your docket is closed, type /docket to show it.

Claude Code in VS Code: a working session on the left, and the docket pane on the right with requests, a question offering a and b, and the Later list
docket beside a real session in VS Code. Select the image for full size.
John, who made docket

Hi. I'm John. I love working with Claude, but it moves very fast, and I tend to miss questions. /docket is my way to help Claude persist decisions and questions that need to be handled, so that we can work together more fluidly. I find that working with a docket speeds me up sometimes by triple or more, and makes the process easier and more fun for me. I hope that it works for you too.

The point is to make things easier.

Docket
From the docket plugin
Requests ↑1βœ•
R6. πŸš€ Push the three local commits to StoneCypher/docket? (new)βœ”βœ—πŸ—‘οΈ
Questions +0βœ•
Q12. πŸ”“ Should docket's repository be public or private?πŸ—‘οΈ
Lean: Public. The point is for others to install it.βœ”βœ—
Verify ↑1βœ•
V17. βš™οΈ Look at your new config: ~/.claude/docket/config.json. Every setting is there at its default. (new)πŸ‘οΈπŸ—‘οΈ
Later +0βœ•
L1. πŸ’Ύ Build persistent todos, kept across sessions.πŸ—‘οΈ
L5. πŸš€ Deploy the site to GitHub Pages.πŸ—‘οΈ
Pinned ↑1βœ•
P8 πŸ’¬ self-expression mod: its own session Β· P11 βš–οΈ Site: rework to be less gimmicky
GitHubβš™οΈ
The pane docked beside the chat in VS Code.

Claude's open threads, in one pane

docket keeps everything open between you and Claude in a pane beside the chat: what it wants to do, what it needs you to decide, what it is working on, what comes later, and what is parked.

Each item has a letter and a number that never changes meaning, so Q12 is the same question ten turns from now. The most important list is on top. Items that changed this turn are bright and marked (new); everything you have already seen is dimmed.

Docket
From the docket plugin
Questions ↑2Accept all leansβœ•
Q14. πŸ“œ Which license? (new)πŸ—‘οΈ
Lean: MIT. Permissive, and the plugin directory accepts it.βœ”βœ—
Q15. πŸ“ Where should the kept copy live? The current folder belongs to this session. (new)πŸ—‘οΈ
Lean: In your projects folder, next to your other projects. It is not inside any git repo.βœ”βœ—
Two new questions, each with Claude’s lean.

Questions come with a lean

Every question carries a lean: the answer Claude would pick if you left it up to it. When the lean is right, press βœ”. When it is wrong, press βœ— and Claude asks what you want instead.

When every lean on screen is right, Accept all leans settles them all in one press.

Docket
From the docket plugin
Questions +0βœ•
Q14. πŸ“œ Which license?πŸ—‘οΈ
Lean: MIT. Permissive, and the plugin directory accepts it.βœ”
Q15. πŸ“ Where should the kept copy live? The current folder belongs to this session.πŸ—‘οΈ
Lean: In your projects folder, next to your other projects.βœ”βœ—
Q14 answered with βœ”, before Claude has acted on it.

Your answer shows at once

Pressing a button sends your answer as a prompt, and the row changes immediately: dimmed, struck through, its buttons replaced by a plain mark of what you sent. You can stop thinking about it.

Claude then settles it on its next turn: the row goes away, comes back changed, or its work moves to Underway. If that takes a while, the row hides itself about 20 seconds after you answered.

Docket
From the docket plugin
Questions ↑1βœ•
Q17. 🎨 Which direction for the site: (a) court docket, (b) calm instrument, (c) your call? (new)πŸ—‘οΈ
Lean: (a), with the live pane as the centerpiece.abc
A question with three lettered choices.

Choices get their own buttons

When a question offers up to three choices, each one gets a button in place of βœ” and βœ—. Labels are a single letter or a single emoji, and each appears in the question text beside the choice it picks.

Pressing b sends β€œQ17 (b).”

Docket
From the docket plugin
Requests ↑1βœ•
R5. πŸš€ Push the option-buttons commit to StoneCypher/docket? It is one ahead of origin. (new)βœ”βœ—πŸ—‘οΈ
Confirm ↑1βœ•
C1. πŸ” I read "switch them out" as: use 🚨 and πŸ”Ά on the terminal only, and keep 🧨 and ⚠ everywhere else. Right? (new)βœ”βœ—πŸ—‘οΈ
A request and a confirmation, each with βœ” and βœ— on its line.

Requests and confirmations

Requests are things Claude wants to do on its own initiative. It waits for your βœ”, so nothing happens behind your back.

Confirmations are Claude checking that it read you right, or making sure you know something risky is coming. It states its reading, so a βœ” settles it.

Docket
From the docket plugin
Underway ↓1βœ•
U4. πŸ”§ Building the settings view.
U5. πŸ“¦ Prepping docket for publishing: README, license, marketplace files. (new)πŸ—‘οΈ
Needs you +0βœ•
N2. 🟒 Upgrade Node to 23.6 or later so npm test runs locally.πŸ—‘οΈ
U4, closed by Claude on its own, stays up struck through for a few minutes.

Clearing, and nothing vanishing unseen

πŸ—‘οΈ clears one item and βœ• on a heading clears the whole list. Clearing only empties the display: it never cancels work, answers a question or approves a request.

When Claude closes something you did not resolve yourself, it stays up struck through in gray for a few minutes, and Claude says so in chat. Nothing disappears without your seeing it.

The lists

Most of them won't show at any given time: a list only appears when it has something in it.

LetterListWhat's in it
RRequestsThings Claude wants to do on its own initiative. It waits for your βœ”.
QQuestionsDecisions only you can make, each with Claude's lean.
CConfirmClaude checking it read you right, or warning of something risky.
NNeeds youThings only you can do: consoles, accounts, sign-ins.
VVerifyThings for you to check: that a change works, reads right or looks right.
UUnderwayClaude's work in progress.
LLaterClaude's work that's decided but not started, in order.
WWaitingStalled on something other than you.
PPinnedParked for later, on one line.

Answering by label

You can also answer in the chat, by label. Ranges work, and so does answering everything at once.

q18 no, let's do this other thing; accept all other leans
c23-c25 confirmed
approve r4

Settings

Settings live in ~/.claude/docket/config.json, with every setting written out. A project can have its own .claude/docket/config.json, which wins. The first time it runs, docket offers to create yours with the defaults. Edit the file directly, or use βš™ at the bottom of the pane.