架構與源碼倉庫
EvoX 的桌面交互、核心運行時、經驗引擎與公開網站分別擁有自己的源碼和發佈產物。先確定修改對象及接口歸屬,再選擇倉庫,避免把文檔、客户端和協議變更混成一次無法獨立驗收的交付。
系統如何協作
Desktop 提供界面、項目工作區與系統集成,通過受管理的核心運行時承接 Agent 執行。Evolver 負責經驗資產、複用與進化流程,Proxy 將對應工具暴露給 Agent;Hub 承接網絡身份、資產和任務協議。網站提供產品説明、文檔與下載入口。
| 層級 | 源碼或集成入口 | 修改對象 | 驗收依據 |
|---|---|---|---|
| Desktop | EvoMap/evox-desktop | React 界面、Go/Wails 綁定、工作區、終端、系統集成、安裝與更新 | 前後端契約、桌面交互、平台構建和安裝產物 |
| 核心運行時 | EvoMap/evox | 核心 Agent 運行時及 evox-cli | 所屬倉庫的接口契約、測試與發佈產物 |
| Evolver | EvoMap/evolver | CLI、Proxy、MCP、Gene/Capsule/Recipe 與本地記錄 | 包入口、schema、單元與集成測試、npm 產物 |
| 網站 | EvoMap/evomap-website | 產品頁、文檔、下載清單消費和網站交互 | 內容與路由校驗、瀏覽器驗收和站點發布 |
| Hub 協議 | A2A 接入指南 | 節點認證、資產提交與任務請求 | 服務端契約、響應、操作狀態和接收回執 |
從源碼找到實際行為
在 Desktop 中,從 frontend/src 的頁面與組件追蹤用户操作,再查看 backend/bindings 對應的 Go 綁定與服務調用。界面顯示一個開關,只能證明存在交互入口;保存、作用域、執行與恢復需沿調用鏈分別確認。
開發 Evolver 集成時,從 CLI 命令或 Proxy 工具的 schema 開始,追蹤本地寫入、遠端請求和結果記錄。讀取源碼中的內部函數不代表該函數是對外穩定接口。桌面內部綁定和 sidecar 調用也不能直接當作通用 HTTP API。
跨倉變更的交付順序
- 在接口擁有方定義輸入、輸出、錯誤及兼容行為,並完成測試。
- 發佈可驗證的包或運行產物,記錄消費方使用的依賴座標。
- 在 Desktop 或 Agent 集成中驗證連接、真實操作與失敗恢復。
- 最後更新網站説明與下載入口,核對實際交付行為。
代碼合併、桌面安裝包發佈、npm 發佈與網站上線分別驗收。一個倉庫的綠燈不能替代另一交付物的構建與運行驗證。
Desktop 交付按各支持平台分別檢查安裝啓動與更新行為、產物摘要、簽名、macOS 公證或 Windows 簽名與時間戳要求,並核對發佈清單與更新、下載消費者的一致性。受管理 sidecar 的生命週期、前後端接口契約與安裝成功分別驗收。
Evolver 變更保留運行時與包入口、聲明的 Node engines、schema、已有本地數據及憑證邊界。網站下載入口消費已發佈的元數據;清單缺失、不一致或無法核驗時停止該發佈入口,不編造產物地址或標記發佈就緒。各源碼倉庫定義自己的發佈門禁;網站部署不發佈 Desktop 安裝包或 npm 包。
保持修改範圍清晰
代碼審閲需包含變更接口的調用方、持久化和失敗路徑。提交前確認沒有混入其他工作區、憑證、緩存或構建輸出。對外能力以實現和發佈產物為證據,不以截圖、mock 或計劃説明推斷。