---
title: "Monitor AI coding agents on your Mac from the Dock with Moor"
url: https://moorapp.com/blog/monitor-ai-coding-agents-mac-dock
publisher: Moor by Bayou Applications LLC (https://moorapp.com/)
published: 2026-10-10
updated: 2026-10-10
---

# Monitor AI coding agents on your Mac from the Dock with Moor

To monitor AI coding agents on a Mac from the Dock, add Moor's Agents widget to a Moor dock (Control-Option-E, then Add). It reads the session files Claude Code, Codex, Cursor, Windsurf, Gemini CLI and Aider keep on your Mac and lists each project as working, needs you, or gone quiet, as far as each agent's files allow. It also badges the app the agent runs in, and one click jumps to that agent's window. Nothing is sent anywhere.

## Why checking on agents eats your day

Run three or four coding agents across different projects and you end up spending your time checking on them. Is the Claude Code session in the terminal still editing? Did Codex stop to ask a question 10 minutes ago? Is Cursor done? You find out by tabbing through every terminal and editor window, one at a time.

A Dock icon looks the same whether the agent inside that app is busy or stuck. Widgets are another option, and on a Mac you can [Control-click a widget and choose Edit](https://support.apple.com/guide/mac-help/add-and-customize-widgets-mchl52be5da5/mac) followed by the widget's name to change what it shows.

Moor's Agents widget puts one status line per project right in the dock, next to your apps, where you're already looking.

### Other apps that watch agents

Moor isn't the only option. Each tool's own page lists a different set of agents and a different place on screen, so check a project's current page before you install it.

- [AgentBar](https://github.com/aliyar/AgentBar) shows agent activity and remaining quota in the menu bar, the Dock and a macOS widget. Its project-status note says these are implemented for Claude Code, Codex and Cursor.
- [Hum](https://vibedock.online/) watches Codex, Claude, Cursor, Antigravity, Gemini and custom agents, turning their states into one Dock light (the most urgent state wins), with a floating panel that has a row per agent.
- [Dock Agent](https://dockagent.app/) says it currently supports only Claude Code, with more agents and tools planned. It lets you review and approve bash commands, file edits and tool calls before they run, and it's available on macOS and Windows.
- [AgentPeek](https://agentpeek.app/) monitors supported coding agents from the notch and the menu bar, showing live sessions, available usage, local dev servers and terminal workspaces.
- [Coucou](https://github.com/Louis-CFM/coucou) shows sessions live in the notch, with Allow, Deny and Always buttons for Claude Code permission requests and Allow or Deny for Codex.
- [CodeIsland](https://github.com/wxtsky/CodeIsland) is a notch app that describes approving tool calls, answering questions, and jumping to the exact terminal tab.
- [One](https://getone.one/) uses a side toolbar with a colored dot per agent and an Inbox of questions and finished work.

If you want to approve tool calls outside the terminal, look at the tools that describe doing that. If you want agent status inside a dock that also holds your apps and other widgets, read on.

## Set up the Agents widget

There's nothing to connect and no API key. Moor reads the files each agent already writes on your Mac. It only reads them, and nothing is sent anywhere.

1. Press Control-Option-E (or choose **Edit Docks** from Moor's menu bar icon). The icons wiggle and a toolbar appears above the dock.
2. Choose **Add** in the toolbar and pick **Agents**.
3. Drag the widget where you want it. Most widgets come in several sizes (icon, wide, extra wide).
4. While you're still editing, click the widget to choose which agents it shows and whether you get a notification when an agent finishes.
5. Press **Done**, or Control-Option-E again.

If you haven't granted Accessibility yet, turn it on in **Settings → Permissions → Accessibility → Turn On**, then switch Moor on in **System Settings → Privacy & Security → Accessibility**. Moor needs it to badge host apps and to pick the right window when you jump. Full details are in the [Agents docs](/docs/agents/).

## What Moor can detect for each agent

Moor only reports what an agent's own files show. When those files can't tell "busy" apart from "waiting for you," the session says **Active 3m ago** (or **Open**) and never gets a badge or a notification.

| Agent | Read from | Working | Needs you |
|---|---|---|---|
| Claude Code | `~/.claude/projects` | Yes | Yes |
| Codex | `~/.codex/sessions` | Yes | Yes |
| Gemini CLI | `~/.gemini/tmp/…/chats` | Yes, while it thinks or runs tools | After an error or a cancelled tool. A finished reply shows as Active |
| Cursor | `~/.cursor/projects/…/agent-transcripts` | No, shows Active | Only when the transcript marks the turn ended (newer versions) |
| Windsurf | `~/.codeium/windsurf/cascade` | No, shows Active | No. Conversations are encrypted, so Moor sees only when it was last active |
| Aider | `.aider.chat.history.md` in the project, found through the running `aider` | Yes, from your message until its reply is written | Yes, once it has replied |

A few details are worth knowing:

- **Claude Code and Codex** are watched in the terminal, in VS Code, and in the Claude and ChatGPT apps.
- **Gemini CLI** records a tool call only once it ends, so a reply waiting on your approval looks the same as a finished one. Older versions keep only your typed prompts (`logs.json`), and those sessions show as Active.
- **Windsurf**: Moor names the project only when a single Windsurf workspace is in use.
- **Aider** shows as **Open** if it has sat idle for more than 30 minutes.

The agent tools themselves keep changing. A [September 2026 roundup](https://www.morphllm.com/comparisons/claude-code-alternatives) says Gemini CLI stopped serving Google AI Pro, Ultra and free individual accounts on June 18, 2026 in favor of Antigravity CLI, and that Windsurf now ships as Devin Desktop under Cognition. The table above covers the agents and file locations Moor's documentation lists, so check which tool and version you actually run.

### Badges, bounces and jumping to the right window

- **Badges** on the host app (your terminal, VS Code, Claude) count the agents waiting for you there.
- **A bounce** of that app's icon when an agent finishes, plus an optional notification.
- **One click** on a session in the widget brings its window forward.

To jump, Moor finds the agent's process, follows it up to the app it runs in, and raises the window titled for that session or folder. VS Code, Cursor and Windsurf focus the window with that folder open. Picking the right window needs Accessibility.

## Tips and tricks

**Add the Project widget next to it.** It shows the project your agents are in (or one you pin), one click from its editor (Xcode for Xcode projects), a terminal in that folder, Finder, GitHub, or the agent itself.

**Track spend, pull requests and builds.** The **Claude Code Usage** widget shows tokens and cost. The **GitHub** widget shows open pull requests, CI state and reviews requested, and needs a GitHub token. The separate **CI Status** widget shows the latest run per repo or workflow (green, red or running) and adds a badge when the newest run on the main branch fails. It needs a GitHub token for GitHub Actions, an App Store Connect API key for Xcode Cloud, or a CircleCI token. Keys go in **Settings → Accounts & Keys**. See [Widgets](/docs/widgets/).

**Find a session by name.** Press Control-Option-F and type a project name. Search finds agent sessions by project, alongside apps and files.

**Ask Siri or a Shortcut.** The Shortcuts action **Agents Waiting for Me** returns the sessions that need you.

**Keep calls quiet.** On a call, Moor holds agent sounds and bounces until it ends (**Settings → Automation → During calls**).

**Give agents their own dock.** Put a slim vertical dock on the left of a second monitor with just the Agents and Project widgets in it. Status stays visible while the main display stays on code. If you want it to follow you, choose **Display with the pointer** or **Display with the active window** in **Placement**.

**Make a coding profile.** Save that layout as a profile and switch with Control-Option-1 to 9, or let it switch when you plug into your desk monitors (**Settings → Automation → Monitor setups**). More in [Profiles](/docs/profiles/).

## Troubleshooting

| Problem | Fix |
|---|---|
| No badges, or clicking a session doesn't raise the right window | Turn on Accessibility: **Settings → Permissions → Accessibility → Turn On** |
| A Cursor or Windsurf session never says "needs you" | Expected. Their files don't show it, so they display Active |
| A Gemini CLI session always shows Active | Older versions keep only your prompts. A finished reply also shows as Active |
| An Aider session shows Open | It has been idle for more than 30 minutes |
| No notification when an agent finishes | Click the widget in edit mode, turn notifications on, then allow them when macOS asks |

## Next steps

1. Add the Agents widget with Control-Option-E → **Add**.
2. Turn on Accessibility so badges and window jumping work.
3. Put the Project and Claude Code Usage widgets beside it, and save the layout as a profile.

Moor has a free 14-day trial at [moorapp.com](https://moorapp.com/).

## Common questions

### Which coding agents does Moor's Agents widget support?

The Agents widget follows Claude Code, Codex, Cursor, Windsurf, Gemini CLI and Aider by reading the files each one keeps on your Mac. There's nothing to connect. Claude Code and Codex are watched in the terminal, in VS Code, and in the Claude and ChatGPT apps. How much status Moor can show differs by agent, because it only reports what each agent's own files record.

### Why does a Cursor or Windsurf session show Active instead of needs you?

Moor only reports what an agent's own files show. Cursor's transcripts can't show whether it's working, and only newer versions mark when a turn has ended. Windsurf's conversations are encrypted, so Moor sees only when it was last active. When the files can't tell busy from waiting, the session shows Active or Open and never gets a badge or a notification.

### Does Moor send my agent transcripts anywhere?

No. Moor reads the files Claude Code, Codex, Cursor, Windsurf, Gemini CLI and Aider keep on your Mac, and nothing is sent anywhere. The app has no analytics, accounts or tracking. The Agents widget needs no key or login. It only needs Accessibility permission if you want host-app badges and jumping to the right window.

### How does Moor jump to the right agent window?

Moor finds the agent's process, follows it up to the app it runs in, and raises the window titled for that session or folder. In VS Code, Cursor and Windsurf, it focuses the window with that folder open. Picking the right window needs Accessibility, which you turn on in Moor's Settings → Permissions and then in System Settings → Privacy & Security.

### Can I check waiting agents without looking at the dock?

Yes. The Shortcuts action Agents Waiting for Me returns the sessions that need you, so you can run it from Siri or a menu bar Shortcut. Moor's search (Control-Option-F) also finds agent sessions by project. If you turn on notifications in the widget's settings, you get a notification when an agent finishes, along with a bounce of the host app's icon.

## Sources

1. [Add and customize widgets on Mac - Apple Support](https://support.apple.com/guide/mac-help/add-and-customize-widgets-mchl52be5da5/mac)
2. [AgentBar (GitHub)](https://github.com/aliyar/AgentBar)
3. [Vibe Dock / Hum](https://vibedock.online/)
4. [Dock Agent](https://dockagent.app/)
5. [AgentPeek](https://agentpeek.app/)
6. [Coucou (GitHub)](https://github.com/Louis-CFM/coucou)
7. [CodeIsland (GitHub)](https://github.com/wxtsky/CodeIsland)
8. [One](https://getone.one/)
9. [Claude Code Alternatives (2026) - morphllm](https://www.morphllm.com/comparisons/claude-code-alternatives)
