
### 終端機優先的 Agent 開發環境
[](https://github.com/termio-sh/termio/releases)
[](LICENSE)
[](https://discord.gg/H9DKVwsE5f)
English | 简体中文 | 繁體中文 | 日本語 | 한국어
[**下載 macOS 版**](https://downloads.termio.sh/termio.dmg) • [官方網站](https://termio.sh) • [文件](https://termio.sh/docs) • [更新日誌](https://termio.sh/changelog) • [Discord](https://discord.gg/H9DKVwsE5f)
## 終端機優先的 ADE
程式碼大半改由 Agent 寫之後,開發環境的職責就是把它們跑起來,並告訴你哪一個在等你。Termio 就是這樣一個環境,而它是一個真正的終端機——因為 Agent 本來就住在終端機裡。
它在第一次啟動時自動接好每個 Agent 自帶的 hook。工作階段會回報工作中、閒置,還是*需要你*——側邊欄一個狀態點,選單列的常駐圖示在有 Agent 被擋住時出聲,手機上是同一個訊號。Claude Code、Codex、OpenCode、Pi、Amp、Cursor、Copilot、Kimi、Antigravity、Crush、Grok,以及任何其他 CLI Agent。
更完整的論述:[*From IDE to ADE*](docs/essays/from-ide-to-ade.md)。
### tmux 的替代品
所有人勸你學 tmux 的理由,Termio 讓你不用學。每個工作階段的 shell 都活在常駐程式 `termiod` 裡,結束 app 只是中斷連線。闔上筆電,再打開 Termio,Agent 還在你離開的地方——同一個行程,同一份捲動紀錄。只有「關閉工作階段」(⌘W)會結束它。
### 遠端終端機
任何你能 `ssh` 上去的 Linux VPS。Termio 讀 `~/.ssh/config`,從不改寫它。**設定 ▸ 裝置 ▸ 設定**會透過 SSH 把一個執行檔複製到 `~/.local/bin`,啟動常駐程式,並在那台機器上裝好 Agent 的 hook。本機和遠端的工作階段走的是同一套主機。工作階段活在機器上,不在連線裡。斷線之後 Agent 繼續工作;重新接上,畫面原樣回來。
## 橫向比較
Termio 是 Agent 跑在裡面的環境。工作階段活在機器上的 `termiod` 裡,Mac app 和
iPhone 都只是接上去。
| | Termio | [Ghostty](https://ghostty.org) | [cmux](https://cmux.com) | [herdr](https://herdr.dev) | [Superlogical](https://superlogical.com) | [Otty](https://otty.sh) |
| --- | --- | --- | --- | --- | --- | --- |
| Agent 監控 | ✓ 靠 hook | – | ✓ | ✓ | – | ✓ 分頁標記 |
| Agent 編排 API | ✓ `termio session` | – | ✓ CLI 和 socket API | ✓ socket API | – | – |
| Agent 通知 | ✓ 選單列 | – | ✓ | ✓ toast、系統通知或聲音 | – | – |
| 多工 | ✓ 常駐程式持有 PTY | – | 重啟後復原 | ✓ 伺服器持有 PTY | ✓ 伺服器持有 PTY | 重啟後復原 |
| 遠端 Linux | ✓ 原生支援 | – | ✓ SSH 工作區 | ✓ 透過 SSH 接上 | ✓ 原生支援 | – |
| iOS | ✓ 直接接上主機,包括 VPS | – | ✓ 和 Mac 配對 | 社群外掛 | 已預告 | – |
| 專案、工作區 | ✓ | – | 工作區群組 | worktree 指令 | – | – |
| 檔案樹 | ✓ | – | – | ✓ 外掛 | – | – |
| 編輯器 | ✓ | – | – | – | – | – |
| Diff | ✓ | – | – | ✓ 外掛 | – | – |
| 開源 | ✓ MIT | ✓ MIT | ✓ GPL | ✓ Apache-2.0 | 部分開源,尚未確定 | – |
## 安裝
**[下載 macOS 版 Termio](https://downloads.termio.sh/termio.dmg)** — 免費、
不需帳號,需要 macOS 14 或以上版本。或透過 [Homebrew](https://brew.sh) 安裝:
```sh
brew install --cask termio-sh/tap/termio
```
**iPhone 端**:先到
[TestFlight](https://testflight.apple.com/join/1Arf1UKR) 取得配套應用程式
測試版,再掃 Mac 應用程式「設定 ▸ 手機」裡的 QR code 完成配對。
## 你會得到什麼
 |
專案裝著工作階段
一個 checkout 一個專案,它的終端機和 Agent 都在下面。聊天排在專案上方——不屬於任何專案的一次性 Agent 工作階段。
|
 |
Git worktree
一條分支對應一項並行任務,從側邊欄建立。Worktree 巢狀在它來自的專案下面。
|
 |
分割窗格
⌘D 向右分割,⇧⌘D 向下分割。一個 Agent、一個開發伺服器、一個 shell,同一個視窗。
|
 |
橫向分頁
工作階段排成一列,放在終端機上方。點擊分頁切換,拖曳排序。在 設定 ▸ 外觀 ▸ 分頁 裡開啟。看影片。
|
 |
狀態一眼看清
工作中、閒置、完成,還是需要你——每一列都有標記。同一份清單就是 termio session list。
|
 |
檔案編輯器
在檔案樹裡點一個檔案。語法高亮、自動儲存。提交仍然在終端機裡做。
|
 |
變更
唯讀的 git 面板,顯示目前的統一 diff。提交、推送和開 PR 仍然在終端機裡。
|
 |
搜尋
專案層級的內容搜尋,點一下就跳到編輯器裡符合的那一行。
|
 |
命令面板
⌘⇧P。分割、聚焦,一切你本來要翻選單找的東西。
|
## 從終端機驅動
`termio` 命令列工具驅動正在執行的應用程式。跑在 Termio 裡的 Agent 可以衍生一個同伴,交給它一個任務,再把回覆讀回來:
```sh
termio . # 把目前目錄當作專案開啟
termio session list # 誰在工作、閒置,或在等你
termio session spawn "fix the flaky test" # 用一段提示啟動新的 Agent 工作階段
termio session run "pnpm test --watch" # 用一條命令啟動一般終端機工作階段
termio session send ab12cd34 "1" # 回答同伴的權限確認
termio session read ab12cd34 --lines 40 # 印出某個工作階段目前的畫面
termio session watch # 即時串流狀態變化
termio session focus ab12cd34 # 在應用程式裡把某個工作階段切到前景
termio session close ab12cd34 # 關掉它
termio notify "the migration finished" # 送出一則 macOS 通知
```
`--wait` 一直等到這一輪結束,回來時帶上最終狀態和可以去讀的紀錄行範圍。`--json` 讓任何 `sessions` 命令輸出機器可讀的結果。`--agent` 決定 `spawn` 啟動哪個 Agent。`--direction` / `--ratio` 決定新窗格落在哪、佔多大。
```sh
termio session spawn "run the migration" --agent codex --wait
```
工作階段控制會往每個 Agent 的技能目錄(`~/.claude/skills`、`~/.codex/skills`)裝一個 `termio` [Agent 技能](https://termio.sh/skill.md),並在每次啟動時保持它最新。其他 Agent 也可以直接從這個儲存庫裝同一個技能:
```sh
npx skills add termio-sh/termio --skill termio
```
## 在你的 iPhone 上
Termio iOS 把每個工作階段即時鏡像過來——完整的 TUI。按鍵列把 esc、tab、ctrl 和方向鍵放在鍵盤上方,按住說話把語音直接轉寫進提示詞。公開測試中:[TestFlight](https://testflight.apple.com/join/1Arf1UKR)。