面向 iPhone 的 Relay + Codex 工作流程

完成一次配對, 把執行緒帶在身邊。

Irisbrige 是一個基於 SwiftUI 的 iOS 用戶端,用於連接由 Relay 承載的 Codex App Server 工作流程。它把安全配對、即時執行緒、審批處理與行動端繼續對話整合在同一個應用中。

Relay 已連線
$ thread/group/list
目前執行緒
turn/start • turn/steer • turn/interrupt
即時活動
fileChange • commandExecution • requestUserInput
待處理請求
在手機上審批並繼續

圍繞行動端 Relay 閉環而設計。

目前 Irisbrige 倉庫聚焦於安全配對、執行緒控制、審批流程,以及從 iPhone 繼續 Codex 工作流程的核心路徑。

安全 Relay 配對

支援掃描配對 QR Code 或手動輸入 token,並使用目前裝置身份完成與 Relay 的配對握手。

持久化裝置身份

透過 Keychain 與 CryptoKit 在本機保存穩定的 device ID 與 Ed25519 金鑰對,用於 challenge 簽章。

多伺服器歷史

已知 Relay 伺服器可在同一個控制介面中完成選擇、連線、斷線、重新命名、查看詳情與刪除。

即時執行緒工作區

按工作目錄瀏覽執行緒分組、恢復本機快取,並在 iPhone 上持續與助手執行緒互動。

審批流程處理

支援命令執行、檔案變更、權限申請,以及基礎的 requestUserInput 表單處理。

具目錄感知的新執行緒

透過 RPC 目錄瀏覽能力建立專案資料夾,並直接在目標工作目錄下啟動新執行緒。

Challenge + WebSocket 傳輸

覆蓋 challenge 驗證、已認證 WebSocket 建連、連線生命週期管理與斷線重連。

APNs Token 同步

當 iOS 取得 APNs device token 後,Irisbrige 可以將它同步進 Relay 的裝置流程。

外觀與傳輸設定

支援外觀切換、系統設定跳轉、裝置資訊檢視、日誌清理,以及自簽憑證 Relay 所需的不安全 TLS 開關。

三個主要介面。 一個行動端操作視角。

目前應用結構直接對應真實的 iOS 使用流程:先配對並管理端點,再進入執行緒工作區,最後在需要時查看詳情與請求狀態。

01

控制中心

完成 Relay 配對、管理已知伺服器、快速重連,並在進入執行緒前明確目前啟用端點。

QR pairing Ed25519 /v1/pairing/complete
02

執行緒工作區

打開分組歷史、在目錄中建立執行緒、發送新 turn,並對活動 turn 執行 steer 或 interrupt。

thread/group/list turn/steer fs/createDirectory
03

詳情與請求帳本

查看執行緒中繼資料、待處理審批、請求狀態與原始事件帳本,方便定位問題與追蹤上下文。

requestApproval requestUserInput event ledger

目前已實作的能力面

這個倉庫已覆蓋 Relay 承載 Codex 工作流程的主要行動端閉環,同時也明確保留了尚未支援的邊界。

HTTP 配對與驗證

目前應用流程已包含 pairing complete、auth challenge、APNs token 上報,以及已認證的 WebSocket 建連。

RPC 執行緒流程

已支援 initialize、thread start/list/read/resume、turn start/steer/interrupt、分組歷史,以及目錄相關 RPC。

互動式伺服端請求

客戶端已處理命令審批、檔案審批、權限審批,以及基礎的 item/tool/requestUserInput 表單輸入。

常見問題

什麼是 Irisbrige?
Irisbrige 是一個基於 SwiftUI 的 iOS 用戶端,用於連接由 Relay 承載的 Codex App Server 工作流程。它的目標是讓 iPhone 也能安全配對、建立連線,並持續操作 Codex 執行緒。
它如何完成配對?
應用會讀取 Irisbrige 私有配對 QR 載荷或手動 token,提交配對請求並上傳裝置公鑰,接著向 Relay 請求 challenge,在本機簽章後建立已認證的 WebSocket 連線。
現在已經能做什麼?
目前可以管理 Relay 伺服器、瀏覽按目錄分組的執行緒歷史、在目錄下建立執行緒、繼續對話、steer 或 interrupt turn、查看執行緒詳情,並處理主要審批流程。
iPhone 會直接連到 Mac 嗎?
不會。現行設計是 relay + edge 架構:iOS 只透過 HTTPS/WSS 連到 Relay,而 macOS 上的 edge 會自行向 Relay 發起連線,並在本機對接 Codex App Server。
還有哪些部分沒覆蓋?
目前程式碼還沒有獨立的 Relay 健康檢查頁,沒有完整支援 mcpServer/elicitation/request 與 item/tool/call,而且 UI 自動化測試覆蓋仍較基礎。