Agent frameworks#Device control#Containers

terminal-mac: a whole separate macOS in your terminal, built for computer-use agents

terminal-mac runs a real macOS guest under Apple Virtualization, streams it into your terminal, and exposes screenshot-click-type MCP tools. MIT.

Project facts

GitHub Ecosystem
Repositorygithub.com/govijr/terminal-mac
License
MIT
Language
Swift
Stars
1,556
Data checked
2026-11-05

Snapshot figures reflect the check date and may change over time.

Giving a computer-use agent a clean environment is a real need: let it drive your physical Mac and your pointer, clipboard and logged-in sessions are all exposed. terminal-mac, open-sourced by govijr on November 3, 2026 (MIT, Swift, 1,556 stars in two days), takes another route: Apple Virtualization runs a real macOS guest, a bundled helper inside that guest captures its screen and posts input events, and your terminal streams the desktop via Kitty, iTerm2 or Ghostty graphics. Agents act through MCP tools (screenshot, click, type, key and more) without ever moving the physical Mac’s pointer or touching its clipboard. The guest is a separate Mac — its own apps, files, accounts and permissions, inheriting nothing from the host.

Core features

  • Terminal as the display: the virtual Mac’s desktop streams inline into your terminal window using Kitty/iTerm2/Ghostty graphics protocols.
  • An MCP toolset: seven tools — screenshot, click, drag, scroll, type, key, status — plus a skill that teaches the observe → act → verify loop.
  • Real isolation: the guest is an independent macOS; it inherits no host apps or sign-in sessions, so installs, scraping and experiments all stay contained.
  • One-command setup: the installer verifies SHA-256 and lands in ~/.local/bin without admin rights or shell edits; first run downloads the macOS restore image straight from Apple.
  • A sibling: terminal-phone applies the same isolation idea to iOS simulators and real iPhones.

Typical use cases

  • A safe proving ground for computer-use agents: install, click and break things while the host stays untouched.
  • Parallel clean environments: spin up disposable Macs for automation runs.
  • Repros and teaching: hand students or collaborators a throwaway macOS.

Quick start

curl -fsSL https://github.com/govijr/terminal-mac/releases/latest/download/get.sh | bash
terminal-mac up

Requires an Apple silicon Mac on macOS 14+; first run downloads the restore image from Apple and the default VM disk grows from a 64 GiB logical size. Unsupported terminals fall back to the native VM window. Hand the repo to your coding agent and it can take over the virtual Mac through the MCP tools.

Summary

terminal-mac fits Mac users who need a safe sandbox for computer-use agents; Windows/Linux hosts and GPU-passthrough-heavy workloads are out of scope. Facts and limits: MIT, Swift, Apple silicon only; it is an early release candidate — releases are self-signed (no notarization) and guest acceptance on clean machines is still pending, so hold production reliance for now. It pairs naturally with vercel-agent-desktop from this site: that one lets agents drive your existing desktop, this one builds them a disposable new desktop — pick the isolation strategy by scenario.