Hand off to agents.
Keep your focus.

Brief your coding agent like an engineer and stay in your work. It takes the list one Item at a time and reports back on each.

The loop

01

Capture the work

Drop in whatever frames the change best — a screenshot, a sentence, a Figma link, a full PRD. Pile on as much context as you want; the why gets captured now, not reconstructed later.

02

Hand off the list

Say “work this Space” in your agent. It takes the whole queue over MCP — one Item at a time so context stays lean — and you choose per Item whether it plans first or just builds.

03

It reports back

Each reply lands inside the Item it's about — a note on what changed, a screenshot for sign-off when it matters. Follow-ups happen where the context already is, and the last word stays yours.

Your list grows. Claude's context doesn't.

Paste everything into one prompt and the whole queue rides along, worked or not. Punchlist hands Claude one Item at a time, so context stays flat.

WORKED NOW YOUR WHOLE LIST WAITS ITS TURN

We measured it: growing the queue from 5 to 15 Items pushed a pasted prompt's peak context from 48k to 65k tokens. Punchlist held flat at about 49k.

Simple on purpose.

Capture in seconds

Drag in a screenshot, jot a sentence, or write a Markdown note — whatever's fastest the moment you spot a fix, filed before you lose the thread.

Screenshot Watcher

Take a screenshot anywhere with ⌘⇧4 and Punchlist quietly offers to file it into a Space. No window to switch to, nothing to upload.

Web Capture for Chrome

Annotate any web page and send it straight into a Space with the free Web Capture extension.

Local-first & private

Everything lives in ~/.punchlist on your Mac. No account, no cloud, no telemetry beyond anonymous usage counts you can switch off.

Works with any MCP agent

One-click connect for Claude Code, Codex, Cursor, and VS Code — no Terminal. Anything else that speaks MCP takes a few lines of config.

Light on tokens by design

Claude opens an Item's screenshots only while working it. A thirty-Item list won't overload Claude or eat through your usage limits.

Up and running in two minutes.

1

Download & install

Grab Punchlist.dmg, open it, and drag Punchlist into your Applications folder.

2

Open it

Launch Punchlist. Because it's notarized by Apple, you'll see a friendly “macOS verified this app” prompt — click Open. No scary warnings, no right-click tricks.

3

Connect your agent

The setup screen opens automatically. One click wires up the MCP server for Claude Code, and the same screen connects Codex, Cursor, and VS Code. Using something else? Two lines of config.

4

Restart your agent session

Quit and reopen your agent session so it picks up Punchlist. (Just this once.)

5

Create a Space & go

Make your first Space, capture a few Items, then tell Claude Code to “work this Space.” That's the loop.

Questions, answered.

What exactly is Punchlist?
A tiny macOS app that catches your screenshots and notes as a running to-do list, then hands the list to your coding agent to work through one Item at a time. The clean hand-off between spotting a fix and shipping it.
Which coding agents work with it?
Any agent that connects over MCP, the standard coding agents use to talk to tools. Claude Code, Codex, Cursor, and VS Code connect in one click from the setup screen; anything else (Windsurf, Cline, Gemini CLI, and more) connects with a few lines of config. Capturing and organizing Items works without an agent, but the payoff is letting one clear the queue.
Is it really free?
Yes. Punchlist is free while it's early. It's a focused tool made by one person, shared with friends to learn what's useful. If that ever changes, the local capture you rely on won't be yanked out from under you.
Where does my data live? Is it private?
Your Punchlist data lives entirely on your Mac, in a folder at ~/.punchlist. There's no account, and nothing you capture ever leaves your machine. The only thing the app sends is anonymous usage counts (app opened, item created, tied to a random ID) to our own server, so we can tell whether Punchlist is being used. No third parties, no IP addresses stored, never your content. You can turn it off any time in Settings. This website keeps the same kind of anonymous count — a visit and a download click, tied to a random ID, nothing more.
Does it work on Intel Macs?
Yes. Punchlist is a universal app, so it runs natively on both Apple Silicon (M1 and later) and Intel Macs, on macOS 14 Sonoma and up.
How do updates work?
Punchlist updates automatically. It checks for new versions in the background and offers them with a one-click install, so you stay current without re-downloading anything.
Does a big list eat my Claude usage?
No, and that's much of the point. Screenshots live on your disk as file paths, and Claude loads an Item's images only when it starts working that Item. Items it hasn't reached cost just their one-line title, images are read once instead of pasted into one giant prompt up front, and nothing gets re-sent to remind Claude what you meant. Capture as much context as you like: tokens go to the Item being worked, not the queue behind it.
How is this different from Linear or a to-do app?
Linear plans work across a team. Punchlist plans work with one agent, and it's built for the hand-off itself: your agent takes Items one at a time so context stays lean, you choose per Item whether it plans first or just builds, and its replies land inside the Item they're about. No assignees, boards, or ceremony, just you and your agent.
How do I send feedback?
Please do. That's the whole point right now. Email tylerhathaway09@gmail.com with anything that's confusing, broken, or missing.

Hand off the list. Keep your focus.

Free, private, and about two minutes to set up.

Download for Mac