Every agent on deck.
One cockpit.

Watch every coding agent on your Mac. Steer by voice. Know why things died. Keep the Claude Code or Codex plan you already use.

Native macOS app · local-first

Claude Code + Codex

The live deck

Watch them all work without hunting through tabs.

Portside sees every agent, whoever spawned it. The moment one needs you, it lands on your desk with the branch, last action, and current state already attached.

  • Claude Code and Codex in the same view
  • Live, idle, waiting, and failed states
  • The exact file, command, and branch in context
Then steer one by voice
Agent activity3 running · 1 waiting
Portside overviewHEALTHY

4 agents

3active
1waiting
0failed

Live activity

claude · ledger-indexer

editing src/backfill/worker.rs

LIVE

codex · web-dashboard

waiting on your review · 12 min

IDLE

claude · portside

ran cargo test reconcile · 47s ago

LIVE

last completed

cargo test reconcile

47s · all 128 tests passed

The app, at a glance.

The same names you'll see when you open Portside.

Workdesk

Dashboard

Agents

Build

Project workspace

Store

Operations

Incidents

System

The cockpit

Chat, context, changes, and activity. All open.

Portside keeps the conversation beside the files and evidence that produced it. No tab hunt, no lost thread.

ledger-indexer

main · Claude

Ask
Check the TTL in ClickHouse, restart the worker, then bump Tokio to 1.40.
I found the expired TTL path. I'm updating the worker and will run cargo check next.
cargo check

Finished dev profile · 0 errors

Guide the agent…

Portside Signal

Say the messy version. Signal types what you meant.

Portside's code-aware dictation pipeline runs speech recognition locally with Whisper.cpp, biases toward your technical vocabulary, and can optionally polish the result with Claude or Codex.

Download Portside

Local speech model

Accurate · on device

⌘D

raw transcript

uh check the click house tee tee ell restart the worker then bump tokio to one forty

Signal

Check the ClickHouse TTL, restart the worker, then bump Tokio to 1.40.

~148 MB

Fast model

~488 MB

Accurate model

0 bytes

audio retained

Talk naturally. Recover precisely. Keep everything local.

The controls, recorder, and receipts live together, so each claim is visible in the product instead of buried in marketing copy.

Voice control

Hold ⌘D, speak, and let your agent clean the line.

~5% WER
What are we shipping?
holding ⌘D…

Flight log

ledger-indexer · 02:14

SILENT DEATH

OOM-killed. Memory climbed for 40 minutes while batch size doubled on every retry.

rss 512 MB → 7.9 GB · 01:34 to 02:14

02:13:58 worker · retrying batch 4096 → 8192

02:14:07 worker · allocating slab for 8192 rows

02:14:11 kernel · killing ledger-indexer

Private audio

01

0 bytes

of audio leave the Mac

Lightweight

02

under 2%

CPU while capture runs

Storage control

03

you decide

how much local history stays

macOS 14 or later

Bring your copilot. Portside adds the cockpit.

Use the Claude Code or Codex subscription you already pay for. No Portside cloud, account, or second AI bill.

Review the product ↑

Portside for macOS

Apple silicon and Intel

Download DMG
or install with Homebrew
brew install --cask portside-app/portside/portside

Free for early adopters. Signed and notarized by Apple — download, open, done.