Skip to content

How to open Claude Code from Finder on a Mac

· Xinyao

Claude Code has one rule that is easy to forget and expensive to live with: it only sees the folder you start it in. A session launched in project A knows nothing about project B. The documented loop is Open Terminal, cd into the repo, type claude. It works. It is also three steps you repeat every time you glance at a folder in Finder and think “ask the agent about this.”

This post is how I open Claude Code from Finder on a Mac instead. The CLI stays the CLI. The folder you are looking at becomes the working directory. The files you have selected come along.

The folder is the session

That working-directory rule is not a quirk. Claude Code reads CLAUDE.md from the folder you launched it in, scopes file tools to that tree, and treats a different repo as a different world. Start in the wrong place and you spend the first minute teaching it where it is — or worse, watching it edit the wrong tree.

So people build launchers. A Finder Quick Action named “Open with Claude.” A toolbar button that means “open Claude Code here.” A Raycast extension that jumps to a saved project and fires claude in your terminal. All of them collapse the same three steps into one click, and all of them stop at launching the CLI. They do not take the files you had selected. They do not ask you what to do. They just open a terminal in a folder.

That is a real fix for a real tax. I wanted a slightly different shape: stay in Finder, attach the folder and the selection, type one sentence, and only then decide whether Claude Code should answer in place or take over in the terminal.

Type @@ in Finder

With a Finder window in front — and without a rename or search field focused — type @@. A small input opens. Two kinds of context arrive with it:

  • The current folder becomes a working-directory tile. Delete the tile and the session will not start in that folder; AtAt never guesses a path you cannot see.
  • Each selected file or folder becomes its own tile. A folder is one tile, not an expansion of everything inside it. Nothing selected? You get just the folder, which is the right setup for “organise this.”

On the Desktop with no window open, the folder is ~/Desktop. Views without a stable folder — Recents, search results, Smart Folders — contribute the selected items only.

Add a sentence. Then choose, explicitly:

  • Return — a one-shot run of the claude CLI you already have. The final text lands in a preview card. Tab copies it. Built-in templates can change files they can access; this is not a read-only peek.
  • ⌘Return — an interactive Claude Code session opens in that folder, in the terminal or desktop app you picked under Settings → Agent. Watch it, interrupt it, keep talking. AtAt gets out of the way.

The @@ you typed never lands in Finder as a search. If you are renaming a file or typing in Finder’s search box, @@ behaves like it does in any other text field — see using Claude Code outside the terminal. The Finder-specific path only runs when there is nothing to type into.

The full behaviour is in the Finder section of the manual.

Right-click is a different door

There is a second Finder entry: select files, right-click, choose Ask @@ at the bottom of the menu — the same neighbourhood as “New iTerm2 Tab Here.” The paths become tiles and the input opens by your mouse. That route needs no macOS permissions at all, because Finder hands the paths over directly.

It also does not set a working directory. ⌘Return from a right-click starts in AtAt’s scratch workspace, not in the folder you clicked. Use typed @@ when the job is “work in this folder.” Use the right-click when the job is “look at these files.” Mixing the two up is the one mistake this post is here to prevent.

You can hide the menu item under System Settings → Keyboard → Keyboard Shortcuts → Services.

Hand it back when you want to stay in the loop

A preview card is the wrong interface for “organise this folder while I watch” or “fix this repo and keep talking.” Those need Claude Code’s own TUI: streaming, approvals, a session you can interrupt.

⌘Return does that. It opens Terminal, iTerm2, Ghostty, Warp, WezTerm, kitty, or Alacritty — or Claude, ChatGPT, or Cursor as a desktop app — with your prompt loaded and the working directory set to the Finder folder you triggered from. Then AtAt stops tracking the process. No output parsing, no task centre. The terminal you already trust is the interface. Handoff covers the details.

The same keystroke works if the agent in the dropdown is Codex, Grok, Cursor, or a CLI you added yourself. AtAt ships no model. It drives whichever binary you already pay for.

Permissions and privacy, honestly

The typed-@@ route asks once for Automation access to Finder, so AtAt can read the front window’s folder and selection at the moment you trigger. Decline and that entry stays dormant; everything else in the app keeps working. AtAt never infers a path from the window title.

The rest of the boundary is the same as the rest of AtAt. The keyboard listener is observe-only, and its detection buffer holds the last two characters — nothing you type before or after the trigger is collected. Secure input disables the listener before it reads the trigger. Your files stay at their real paths; AtAt does not copy or delete them, though an agent running with the built-in full-access template can modify what it can access. Prompts never pass through AtAt servers — they go from AtAt to the CLI on your Mac, and from there according to that CLI and provider’s configuration. History stays on your Mac by default, with optional iCloud Sync you control. Every permission is optional. The complete boundary is in the privacy policy.

Try it

AtAt works with Claude Code, Codex, Grok, Cursor, and other CLI agents — it drives whichever you already have. It is a native Apple silicon Mac app with no Electron. Download it for macOS.

Use every feature for 7 days without an account or payment card; after that, choose monthly, yearly, or Lifetime.

If you take one idea from this post, take the working directory seriously. Open Claude Code from Finder when you are already looking at the folder. Type @@, keep the folder tile, press ⌘Return. The three-step cd tax does not have to be part of the agent. There is more on why the rest of AtAt is shaped that way in Introducing AtAt.

All posts