分享會話
說明 OpenCode 會話分享的用途、公開邊界、撤銷方式和團隊預設策略。
OpenCode 的 /share 不是“發一段截圖”,而是把當前會話同步到 OpenCode 的分享服務,並生成一個任何拿到連結的人都能開啟的公開 URL。它適合求助、覆盤和團隊協作,不適合未經檢查地分享真實專案上下文。
這一篇用 8 分鐘換什麼:你會知道 /share 到底分享了什麼、什麼時候用 manual / auto / disabled、分享前要檢查哪些敏感內容,以及團隊專案為什麼應該先把預設值收緊。
先給結論:分享前先當公開頁面處理
分享連結形如:
opncd.ai/s/<share-id>只要別人拿到連結,就能訪問對應會話。不要把它理解成“只有團隊成員可見”的私密連結。
| 場景 | 建議 |
|---|---|
| 非敏感問題求助 | 手動 /share,發給需要的人 |
| 團隊覆盤一次 OpenCode 輸出 | 手動分享,結束後 /unshare |
| 公開儲存庫 CI 自動化 | 明確檢查 share 配置和日誌內容 |
| 私有客戶專案、商業策略、未公開原始碼 | share: "disabled" |
| 企業試用期 | 預設停用,再按合規要求評估 |
不要在包含 API key、cookie、客戶資料、內部路徑、未公開原始碼、私有服務地址或商業策略的會話裡直接 /share。先脫敏,脫敏不確定就停用分享。
分享的資料流
當你分享當前會話時,OpenCode 會建立唯一公開 URL,並把會話歷史同步到 OpenCode 伺服器。官方文件明確說明,分享後的會話在取消分享前會保持可訪問狀態。
flowchart LR
Local["本地 OpenCode 會話"] --> Share["/share"]
Share --> Server["同步到 OpenCode 分享服務"]
Server --> URL["opncd.ai/s/<share-id>"]
URL --> Viewer["任何擁有連結的人"]
Server --> Unshare["/unshare 移除連結並刪除相關資料"]
style Share fill:#dbeafe,stroke:#3b82f6,stroke-width:2px
style Server fill:#fef3c7,stroke:#f59e0b
style Viewer fill:#fee2e2,stroke:#ef4444
style Unshare fill:#dcfce7,stroke:#22c55e
通常會被分享的內容包括:
- 完整對話歷史。
- 使用者訊息和 OpenCode 回覆。
- 與該會話相關的後設資料。
- 對話裡出現的檔案片段、命令輸出、錯誤日誌或路徑資訊。
所以真正的安全判斷不是“有沒有貼金鑰”,而是“這段會話公開後,陌生人能不能推斷出不該公開的資訊”。
三種分享模式怎麼選
OpenCode 的 share 配置有三種模式。
| 模式 | 行為 | 適合場景 |
|---|---|---|
manual | 預設模式;只有執行 /share 才生成連結 | 個人日常使用、臨時求助 |
auto | 新會話自動分享 | 極少數公開演示或固定公開協作環境 |
disabled | 完全停用分享 | 私有儲存庫、客戶專案、企業試用、敏感團隊 |
專案裡可以顯式寫入:
{
"$schema": "https://opencode.ai/config.json",
"share": "disabled"
}团队项目不要靠口头约定“大家别点分享”。把 share: "disabled" 写进项目配置,提交到 Git,才能让默认行为稳定。
手动分享和取消分享
手动分享当前会话:
/share这会生成一个唯一 URL,并复制到剪贴板。
取消分享当前会话:
/unshare官方文件說明,/unshare 會移除分享連結,並刪除與該對話相關的資料。實際協作裡建議把 /unshare 當作收尾動作:問題解決、覆盤結束、連結不再需要,就撤銷。
分享前檢查清單
點 /share 前,至少掃一遍這些內容:
- 會話裡有沒有 API key、token、cookie、SSH key、OAuth 回撥資訊。
- 命令輸出裡有沒有
.env、CI secrets、資料庫連線串、私有 registry token。 - 檔案片段裡有沒有客戶名稱、郵箱、訂單、賬號、內部專案代號。
- 錯誤日誌裡有沒有內網域名、私有 IP、伺服器路徑、使用者目錄。
- 對話裡有沒有未公開產品策略、報價、路線圖或漏洞細節。
- 公開後是否會暴露團隊使用的 provider、模型、閘道器或安全策略。
如果只是要別人幫你看一個報錯,更穩的做法是先匯出或複製最小必要資訊,脫敏後再分享,而不是把整個會話直接公開。
團隊預設策略
個人學習可以保留 manual。團隊專案建議分層處理:
| 專案型別 | 預設策略 |
|---|---|
| 教程示例、公開 demo | manual,必要時分享 |
| 開源專案 | manual,CI 整合單獨檢查分享預設值 |
| 私有業務專案 | disabled |
| 客戶交付專案 | disabled |
| 企業統一環境 | 透過集中配置停用或限制分享 |
企業版可以把分享功能完全停用、限制給透過 SSO(Single Sign-On,單點登入——員工只在公司身份系統登入一次,訪問所有內部應用都自動透過)的使用者,或在自有基礎設施中託管分享頁面。即使具備這些能力,敏感組織也應該先預設關閉,再按用例開放。
什麼時候適合分享
適合分享的情況:
- 你要向同事展示一次 OpenCode 的推理過程。
- 你要讓別人覆盤一個非敏感 bug 的定位過程。
- 你要給社群提問,且已經確認會話裡沒有私密上下文。
- 你要把一次公開儲存庫的修復過程作為教程素材。
不適合分享的情況:
- 會話接觸了真實客戶、真實賬號或真實生產日誌。
- agent 讀過私有原始碼、商業計劃、報價、合同或內部文件。
- 你不確定命令輸出裡有沒有 secret。
- 專案所在組織沒有明確的資料分享政策。
接下來去哪
安全、分享與團隊使用
把 `/share` 放進許可權、金鑰、團隊配置和 CI 自動化的大邊界裡看。
企業版
團隊 rollout 前先確認資料邊界、SSO、內部 AI gateway 和分享策略。
GitHub 整合
公開儲存庫自動化尤其要檢查 share、日誌和 secrets。
TUI 工作流
從終端裡理解 `/share`、`/unshare` 和其他會話控制命令。
官方資料
- OpenCode Share:https://opencode.ai/docs/share
- OpenCode Enterprise:https://opencode.ai/docs/enterprise
- OpenCode GitHub Integration:https://opencode.ai/docs/github