AI Command Center for macOS
icc is a native macOS command center for serious AI work. It brings Ghostty-grade terminal rendering, local and remote explorers, in-app file editing, browser-assisted execution, and a supervisor layer into one focused workspace so you can move from idea to execution without losing context.
Repository: https://github.com/miounet11/icc
Language docs: English | 简体中文 | 繁體中文 | 日本語 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe | ភាសាខ្មែរ | Tiếng Việt
Brand guide: docs/brand-guidelines.md
- One cockpit for terminal execution, files, remote hosts, browser workflows, and supervision.
- Native macOS feel, low-latency rendering, and a layout built for long working sessions.
- Fast path from a few user turns to a real execution plan instead of another setup ritual.
- Stronger operational visibility than a plain terminal, without giving up terminal-first speed.
- The terminal stays first-class.
- Files and remote hosts stay visible beside the active conversation.
- The supervisor can turn fragmented context into a concrete next move.
- Local work and remote work use the same mental model.
icc is for operators, founders, engineers, and power users who are already running multiple tools to get AI-assisted work done and want one sharper control surface instead of more window sprawl.
- Native Swift/AppKit macOS app built on
libghostty, with low-latency terminal rendering and Ghostty-compatible theme and font behavior. - Workspace-first UI with a compact left rail and the main work surface centered on terminal conversations and split panes.
- Right-side local file explorer for the current project, with tree navigation, drag-to-terminal path insertion, and in-app file open, edit, and save.
- Right-side remote SSH explorer that reads
~/.ssh/config, supports interactive login, remembers remote passwords in the macOS Keychain, and exposes remote files after connection. - Remote file open, edit, and save flow from the same explorer panel used for local work.
- Built-in browser surface and socket/CLI automation for browser-assisted agent workflows.
- Workspace supervisor panel that can infer project state from the current workspace, recent interaction notes, visited directories, remote status, and panel history.
- LLM-backed supervisor mode: configure endpoint, model, and API key, then generate a startup plan, execution brief, panel handoffs, and looped reviews.
- Notification and task-follow-up workflow for Claude Code, Codex, OpenCode, and other agent-driven terminal sessions.
- WeChat channel settings for binding inbound conversations to a specific window or workspace.
Release artifacts should be published on the GitHub Releases page:
https://github.com/miounet11/icc/releases
If you are validating the app before the first public release, build from source instead.
Prerequisites:
- macOS 14 or later
- Xcode 15 or later
- Zig (
brew install zig)
Clone with submodules and run setup:
git clone --recursive https://github.com/miounet11/icc.git
cd icc
./scripts/setup.shBuild and launch a tagged debug app:
./scripts/reload.sh --tag local-devBuild and launch the release app:
./scripts/reloadp.sh- Launch
icc. - Open a local folder from the window toolbar or the file explorer action.
- Open the remote explorer to import hosts from
~/.ssh/config. - Connect to a host, then browse and edit remote files in the right-side panel.
- Open Settings and configure Automation if you want supervisor and LLM-assisted orchestration.
- Install the bundled CLI into
PATHfrom the in-app shell command action if you wanticccommands in Terminal.
- Replace the usual split between terminal app, SFTP client, scratch notes, and remote SSH helper with one workspace.
- Keep execution context visible while an agent or operator is working.
- Reduce friction when moving between local repos, remote machines, and browser-backed flows.
- Give every active workspace a control layer that can summarize status and propose the next action.
The bundled executable is icc.
Common examples:
icc --help
icc notify --title "Build complete" --body "Tests passed"
icc list-notifications
icc clear-notificationsCompatibility note:
- Some internal protocol names, environment variables, sockets, and daemon binaries still use legacy
iccorICC_*names. That is intentional for compatibility during the transition. - The user-facing app name and shipped CLI name are
icc.
icc supports two complementary remote paths:
- UI-driven remote explorer: reads OpenSSH and VS Code-compatible host entries from
~/.ssh/config, prompts for missing credentials, stores passwords in the local macOS Keychain, and reveals the remote file tree after connection. - CLI-driven SSH workspaces:
icc ssh ...creates a managed remote workspace, bootstraps the remote helper, and reconnects browser and terminal state through the app.
Remote compatibility details:
- Managed SSH sessions can prefer
TERM=xterm-256colorfor compatibility or keep Ghostty's TERM when the remote host has matching terminfo support. - Remote file interactions shown in the explorer are the remote host contents, not a local mirror.
The supervisor panel is designed for fast startup after only a few user turns:
- capture the workspace goal, done definition, constraints, and scope
- track visited directories and current working context
- infer a startup plan from recent interaction notes
- generate an execution brief for the active terminal window
- optionally call a configured LLM endpoint for deeper reviews and iteration loops
Open Settings → Automation to configure:
- LLM endpoint
- model
- API key
- socket control mode
- Claude Code integration
- CONTRIBUTING.md: local development workflow
- CHANGELOG.md: release history and rename note
- docs/brand-guidelines.md: ICC naming, positioning, and voice
- docs/notifications.md: notification hooks and CLI usage
- docs/remote-daemon-spec.md: managed SSH architecture and status
- docs/agent-browser-port-spec.md: browser automation contract
- docs/v2-api-migration.md: v2 socket API notes
- docs/ghostty-fork.md: Ghostty fork delta carried by this repo
- docs/release-update-rules.md: release tags, appcast URLs, and upgrade rules
- The repository name is now
icc, and the product being released isicc. - Some Xcode target names, scripts, package identifiers, and helper binaries still use legacy
iccnaming. Do not mass-rename those blindly; several are still part of the working build and protocol surface. - The Homebrew tap submodule is still legacy-named and should be treated as migration work, not the primary install path for this release.
icc is licensed under AGPL-3.0-or-later. See LICENSE.