Skip to content

OpenCode 对话分享实战教程

📚 分类: OpenCode 功能配置 ⏱️ 预计耗时: 10 分钟 🎯 难度: 入门 🔧 环境要求: 已安装并配置好 OpenCode


你将学到什么

完成本教程后,你将能够:

  • [ ] 理解 OpenCode 分享功能的三种模式及其适用场景
  • [ ] 通过配置文件手动启用或禁用分享功能
  • [ ] 在聊天中使用命令手动分享或取消分享对话
  • [ ] 了解分享时的隐私注意事项,避免数据泄露

最终效果

你将能够熟练地通过分享功能,为你的 OpenCode 对话生成一个公开链接(例如 opncd.ai/s/your-share-id),并可以随时取消分享,控制对话的访问权限。


前置准备

在开始前,请确认你的环境满足以下条件:

检查项要求验证方法
OpenCode已安装并登录在终端输入 opencode 并回车,确保能正常启动
配置文件已存在检查你的项目根目录或用户主目录下是否存在 opencode.json 文件

1. 找到或创建配置文件

📝 操作

OpenCode 的配置文件名为 opencode.json,通常位于你的项目根目录,或者用户主目录下(例如 ~/.config/opencode.json)。如果没有,你需要手动创建一个。

bash
# 在终端中使用以下命令创建一个空的配置文件(以项目根目录为例)
$ touch opencode.json

验证: 执行 ls -la opencode.json,你应该能看到该文件存在。


第 1 步:理解三种分享模式

🎯 目标:在动手配置前,先理解 OpenCode 提供的三种分享模式,以便你选择最适合自己的方式。

OpenCode 的分享功能允许你创建一个指向对话的公开链接。任何拥有该链接的人都可以访问它。分享功能有三种工作模式:

  1. 手动模式 (Manual)(默认) 对话不会自动分享。你需要手动输入命令 /share 来创建分享链接。这是最安全、最推荐的方式。
  2. 自动分享 (Auto):每当你开始一个新对话,系统都会自动生成一个分享链接。适合需要频繁协作的场景。
  3. 禁用 (Disabled):完全关闭分享功能。适合处理高度敏感或机密信息的项目。

🤔 为什么要这样设计? 不同场景对数据共享的需求不同。手动模式 让你拥有完全的控制权,自动分享 方便协作,禁用 则能提供最高级别的安全保障。


第 2 步:配置分享模式

🎯 目标:通过修改 opencode.json 文件,明确指定你想要的分享模式。

📝 操作

用文本编辑器打开你的 opencode.json 文件,并根据你的需求填入以下配置之一。

选项 A:手动模式(默认,推荐)

如果你希望保持默认行为,即每次手动分享,可以显式地声明它:

json
{
  "$schema": "https://opencode.ai/config.json",
  "share": "manual"          // 设置为手动模式
}

选项 B:自动分享

如果你希望每次新对话都自动生成链接,可以这样设置:

json
{
  "$schema": "https://opencode.ai/config.json",
  "share": "auto"            // 设置为自动分享模式
}

选项 C:禁用分享

如果你处理的是机密项目,请使用此设置完全禁用分享功能:

json
{
  "$schema": "https://opencode.ai/config.json",
  "share": "disabled"        // 禁用分享功能
}

验证: 保存文件后,重新启动 OpenCode 或在终端中执行 opencode reload(如果支持),配置即生效。你可以通过下一步的操作来验证。

⚠️ 常见错误

  • JSON 格式错误:确保你的 JSON 文件格式正确,比如键名要用双引号 ",最后一个属性后面不要有逗号 ,。你可以使用在线的 JSON 校验工具检查文件。
  • 配置文件位置错误:如果你在项目根目录下配置了 disabled,但在用户主目录下配置了 auto,OpenCode 可能会加载错误的配置。建议先从项目根目录开始配置。

第 3 步:使用命令分享或取消分享

🎯 目标:在聊天中,使用 /share/unshare 命令来手动控制对话的分享状态。

📝 操作

  1. 分享一个对话: 打开一个你想要分享的对话,在聊天输入框中输入以下命令并回车:

    bash
    /share

    💡 提示:该命令会生成一个唯一的公开 URL(例如 opncd.ai/s/abc123)并自动复制到你的剪贴板。

  2. 取消分享一个对话: 如果你不再希望某个对话被公开访问,可以在该对话中输入以下命令并回车:

    bash
    /unshare

验证

  • 分享成功:你会收到一条系统消息,提示链接已生成并复制到剪贴板。你可以将链接发给同事测试能否访问。
  • 取消分享成功:你会收到一条系统消息,提示该对话的分享链接已被移除。再次访问之前的链接将无法打开。

进阶技巧(可选)

  1. 团队强制执行:如果你是团队负责人,希望在某个项目中强制禁用分享功能,只需将配置写入项目根目录的 opencode.json 文件中,并将其提交到 Git。团队成员拉取代码后,该设置将自动生效。
  2. 企业版限制:如果你使用的是 OpenCode 企业版,管理员可以在服务器端完全禁用分享功能,或者将其限制为仅通过 SSO 身份验证的用户可用。这为企业提供了更高级别的安全合规控制。

常见问题 (FAQ)

Q1: 我设置了 auto 模式,但为什么没有生成链接?A: 请确认你修改的是正确的 opencode.json 文件,并且 JSON 格式正确。修改后需要重启 OpenCode 或重新加载配置才能生效。

Q2: 我取消分享后,数据会立刻删除吗?A: 是的,当你执行 /unshare 命令后,OpenCode 会立即移除分享链接,并删除存储在服务器上的该对话数据。取消分享后,之前的链接将无法再访问。

Q3: 分享的链接会一直有效吗?A: 分享的对话在你明确取消分享之前,将一直保持可访问状态。这包括完整的对话历史、所有消息和回复。

Q4: 分享对话会泄露我的隐私吗?A: 是的,分享的对话对任何拥有链接的人都是公开可访问的。因此,分享前请务必检查对话内容,确保不包含以下信息:

  • API 密钥、密码等敏感凭据
  • 专有代码或商业机密
  • 个人身份信息

建议

  • 仅分享不包含敏感信息的对话。
  • 协作完成后请及时取消分享。
  • 对于敏感项目,请在配置文件中将分享功能设置为 disabled

总结

恭喜你完成了本教程!🎉

回顾一下我们今天学到的核心内容:

  1. 三种分享模式:理解了 manual(手动)、auto(自动)和 disabled(禁用)三种模式的区别和适用场景。
  2. 配置文件修改:学会了如何通过修改 opencode.json 文件来全局控制分享行为。
  3. 命令操作:掌握了在聊天中使用 /share/unshare 命令来手动控制单个对话的分享与取消分享。
  4. 隐私意识:了解到分享对话的潜在风险,并学会了如何安全地使用此功能。

下一步

如果你想继续深入,建议学习:

💡 练习任务:尝试在本地项目中,将分享模式设置为 auto,然后开始一个新对话,观察是否自动生成了链接。之后,再将其改回 manual,并手动执行一次 /share 命令。这是巩固知识的最佳方式。


yaml

## 相关文档

- [OpenCode Web 界面启动与配置教程](/docs/jie-mian-cao-zuo/opencode-web-jie-mian-qi-dong-yu-pei-zhi-jiao-cheng.html)

Open Code 文档社区