Nexus Shell

Agent Bridge: your Mac SSH workspace, connected to your coding agent.

Nexus Shell is an MCP server. Your own agent — Claude Code, Codex, anything that speaks the Model Context Protocol — drives your SSH connections, terminals, SFTP and keys through the app. Stored passwords and private keys are not returned by bridge tools. Terminal tools open visible tabs; headless execution opens no tab.

Shipped in v1.5.9 · Updated

Apple Silicon · macOS 14.2+ · Direct-download or Homebrew build

Agent Bridge is off by default. It is available in the direct-download and Homebrew builds; it is compiled out of any Mac App Store variant.

What Agent Bridge adds to your workflow

Keep saved connections, terminal sessions and file operations in one native Mac workspace while using Claude Code, Codex or another MCP client. Agent Bridge exposes those app capabilities to your existing agent, with per-agent approval and an audit trail of tool calls.

Ask the agent to inspect a container, read a selected configuration file or open a terminal, then review the result in the app. You keep your choice of model and coding client. The tool list below explains which actions are available and which sessions you can watch.

How access is controlled

Commands inherit the remote SSH account’s permissions. Agent Bridge is not a command sandbox: a root connection still permits root-level actions. Command output and files can contain sensitive data even when stored credentials are not returned.

  • No network port. The bridge listens on a Unix domain socket at ~/Library/Application Support/NexusShell/agent-bridge.sock, chmod 0600. At the filesystem layer, only your user can reach it.
  • Same-uid enforcement. After accept, getpeereid must report the caller's uid matches the app's own — otherwise the connection is dropped before any protocol logic runs.
  • The app derives the agent's identity itself — LOCAL_PEERPID → parent pid → proc_pidpath. Whatever the client claims about itself is treated as spoofable and used only for display. Consent is keyed on the path the app resolved.
  • Per-agent consent. The first tool call from a given agent raises an approval dialog inside Nexus Shell. Revocable whenever you like.
  • Stored credentials are omitted. Connection-reading tools omit saved passwords and private keys. Create/update tools can accept passwords, so enter credentials in the app rather than supplying them through your agent.
  • Everything is audited. One JSONL record per tool call and connection event. password, passphrase, content, content_base64 and data are replaced with a redaction marker; command and text truncate at 200 characters. Rotates at 5 MB, written 0600. It's a forensic trail, not a second copy of your data.
  • You can watch and take over. Terminals the agent opens are real tabs labeled with the agent's name (Claude Code, Codex, Cursor…). Grab the keyboard at any point.

26 tools

The full Agent Bridge tool surface
Group Tools Notes
Connections list_connections, get_connection, create_connection, update_connection, delete_connection, test_connection Reads omit stored credentials. Create/update inputs can contain passwords.
Terminals open_terminal, list_terminals, run_command, send_text, read_terminal, close_terminal Real, visible tabs labeled with the agent's name. Session-logged when you have logging on.
Headless exec exec_command No tab, not session-logged. Returns stdout, stderr, exit status.
SFTP sftp_list, sftp_read_file, sftp_write_file, sftp_upload, sftp_download, sftp_mkdir, sftp_delete, sftp_rename sftp_write_file is an atomic replace.
Keys list_keys, generate_key, deploy_public_key Private keys are never returned — only referenced by id.
Observability list_monitors, list_session_logs Read-only. Log listing returns metadata only, never recorded terminal content.

What it deliberately can't do

  • No create, edit or delete tools for monitors.
  • No settings-mutation tools of any kind — an agent cannot reconfigure the app, and cannot turn off its own audit trail.
  • list_session_logs returns metadata only: server, title, time, duration, size. Never the recorded terminal content.

Start with a guided server check

The first VPS check with Claude Code or Codex walks through a saved test connection, agent approval and two commands in a visible terminal. It includes a copyable task, expected results and help for setup failures.

Configure credentials in Nexus Shell before starting. After the check succeeds, choose a specific inspection or file task and review its permissions before allowing changes.

Requirements

macOS 14.2 or later on Apple Silicon. The direct-download or Homebrew build — brew install --cask viewer12/tap/nexus-shell. Any MCP client; we test against Claude Code and Codex.

Questions people actually ask

Does the agent get my SSH passwords or private keys?

Connection-reading tools omit stored passwords and private keys. Configure the connection in the app first: passwords supplied to create/update tools have already entered the client. Hostnames, usernames, notes, command output and file content can still reach the agent.

Is there a network port open?

No. It's a Unix domain socket with mode 0600, so only local processes running as you can connect — and the same-uid check happens before any protocol parsing. Nothing is relayed through nexusshell.app; the bridge is local IPC between two processes on your Mac.

Is this just a chatbot bolted onto a terminal?

The opposite. Nexus Shell is the server; you bring the agent. There's no model, no prompt and no vendor lock-in in this feature — if you switch from Claude Code to something else next month, the bridge doesn't care. (Nexus Shell does also have a separate built-in AI assistant on ⌘L / ⌘K that uses your own API key. Different feature.)

What happens if the agent does something dumb?

Terminal tools open visible tabs; headless execution does not. Audit records identify tool calls but do not guarantee that sensitive command text is removed. Commands inherit the SSH account's permissions. Revoking future access does not undo completed work or guarantee termination of remote background processes. Start with a test server and a limited account.

Is it stable?

It ships marked experimental. The security boundary is the part we're most confident in; the ergonomics are still moving. If something behaves badly we want to hear about it — [email protected].

Try it on your own Mac

Free tier is free forever. Register and you get a 7-day full-feature Pro trial — no card, nothing charged when it ends. Pro is $12.88 once, not per month.

Machine-readable spec for agents: /.well-known/agent-skills/agent-bridge.md