OpenCode 对话分享实战教程
📚 分类: OpenCode 功能配置 ⏱️ 预计耗时: 10 分钟 🎯 难度: 入门 🔧 环境要求: 已安装并配置好 OpenCode
你将学到什么
完成本教程后,你将能够:
- [ ] 理解 OpenCode 分享功能的三种模式及其适用场景
- [ ] 通过配置文件手动启用或禁用分享功能
- [ ] 在聊天中使用命令手动分享或取消分享对话
- [ ] 了解分享时的隐私注意事项,避免数据泄露
最终效果
你将能够熟练地通过分享功能,为你的 OpenCode 对话生成一个公开链接(例如 opncd.ai/s/your-share-id),并可以随时取消分享,控制对话的访问权限。
前置准备
在开始前,请确认你的环境满足以下条件:
| 检查项 | 要求 | 验证方法 |
|---|---|---|
| OpenCode | 已安装并登录 | 在终端输入 opencode 并回车,确保能正常启动 |
| 配置文件 | 已存在 | 检查你的项目根目录或用户主目录下是否存在 opencode.json 文件 |
1. 找到或创建配置文件
📝 操作:
OpenCode 的配置文件名为 opencode.json,通常位于你的项目根目录,或者用户主目录下(例如 ~/.config/opencode.json)。如果没有,你需要手动创建一个。
# 在终端中使用以下命令创建一个空的配置文件(以项目根目录为例)
$ touch opencode.json✅ 验证: 执行 ls -la opencode.json,你应该能看到该文件存在。
第 1 步:理解三种分享模式
🎯 目标:在动手配置前,先理解 OpenCode 提供的三种分享模式,以便你选择最适合自己的方式。
OpenCode 的分享功能允许你创建一个指向对话的公开链接。任何拥有该链接的人都可以访问它。分享功能有三种工作模式:
- 手动模式 (Manual):(默认) 对话不会自动分享。你需要手动输入命令
/share来创建分享链接。这是最安全、最推荐的方式。 - 自动分享 (Auto):每当你开始一个新对话,系统都会自动生成一个分享链接。适合需要频繁协作的场景。
- 禁用 (Disabled):完全关闭分享功能。适合处理高度敏感或机密信息的项目。
🤔 为什么要这样设计? 不同场景对数据共享的需求不同。手动模式 让你拥有完全的控制权,自动分享 方便协作,禁用 则能提供最高级别的安全保障。
第 2 步:配置分享模式
🎯 目标:通过修改 opencode.json 文件,明确指定你想要的分享模式。
📝 操作:
用文本编辑器打开你的 opencode.json 文件,并根据你的需求填入以下配置之一。
选项 A:手动模式(默认,推荐)
如果你希望保持默认行为,即每次手动分享,可以显式地声明它:
{
"$schema": "https://opencode.ai/config.json",
"share": "manual" // 设置为手动模式
}选项 B:自动分享
如果你希望每次新对话都自动生成链接,可以这样设置:
{
"$schema": "https://opencode.ai/config.json",
"share": "auto" // 设置为自动分享模式
}选项 C:禁用分享
如果你处理的是机密项目,请使用此设置完全禁用分享功能:
{
"$schema": "https://opencode.ai/config.json",
"share": "disabled" // 禁用分享功能
}✅ 验证: 保存文件后,重新启动 OpenCode 或在终端中执行 opencode reload(如果支持),配置即生效。你可以通过下一步的操作来验证。
⚠️ 常见错误:
- JSON 格式错误:确保你的 JSON 文件格式正确,比如键名要用双引号
",最后一个属性后面不要有逗号,。你可以使用在线的 JSON 校验工具检查文件。 - 配置文件位置错误:如果你在项目根目录下配置了
disabled,但在用户主目录下配置了auto,OpenCode 可能会加载错误的配置。建议先从项目根目录开始配置。
第 3 步:使用命令分享或取消分享
🎯 目标:在聊天中,使用 /share 和 /unshare 命令来手动控制对话的分享状态。
📝 操作:
分享一个对话: 打开一个你想要分享的对话,在聊天输入框中输入以下命令并回车:
bash/share💡 提示:该命令会生成一个唯一的公开 URL(例如
opncd.ai/s/abc123)并自动复制到你的剪贴板。取消分享一个对话: 如果你不再希望某个对话被公开访问,可以在该对话中输入以下命令并回车:
bash/unshare
✅ 验证:
- 分享成功:你会收到一条系统消息,提示链接已生成并复制到剪贴板。你可以将链接发给同事测试能否访问。
- 取消分享成功:你会收到一条系统消息,提示该对话的分享链接已被移除。再次访问之前的链接将无法打开。
进阶技巧(可选)
- 团队强制执行:如果你是团队负责人,希望在某个项目中强制禁用分享功能,只需将配置写入项目根目录的
opencode.json文件中,并将其提交到 Git。团队成员拉取代码后,该设置将自动生效。 - 企业版限制:如果你使用的是 OpenCode 企业版,管理员可以在服务器端完全禁用分享功能,或者将其限制为仅通过 SSO 身份验证的用户可用。这为企业提供了更高级别的安全合规控制。
常见问题 (FAQ)
Q1: 我设置了 auto 模式,但为什么没有生成链接?A: 请确认你修改的是正确的 opencode.json 文件,并且 JSON 格式正确。修改后需要重启 OpenCode 或重新加载配置才能生效。
Q2: 我取消分享后,数据会立刻删除吗?A: 是的,当你执行 /unshare 命令后,OpenCode 会立即移除分享链接,并删除存储在服务器上的该对话数据。取消分享后,之前的链接将无法再访问。
Q3: 分享的链接会一直有效吗?A: 分享的对话在你明确取消分享之前,将一直保持可访问状态。这包括完整的对话历史、所有消息和回复。
Q4: 分享对话会泄露我的隐私吗?A: 是的,分享的对话对任何拥有链接的人都是公开可访问的。因此,分享前请务必检查对话内容,确保不包含以下信息:
- API 密钥、密码等敏感凭据
- 专有代码或商业机密
- 个人身份信息
建议:
- 仅分享不包含敏感信息的对话。
- 协作完成后请及时取消分享。
- 对于敏感项目,请在配置文件中将分享功能设置为
disabled。
总结
恭喜你完成了本教程!🎉
回顾一下我们今天学到的核心内容:
- 三种分享模式:理解了
manual(手动)、auto(自动)和disabled(禁用)三种模式的区别和适用场景。 - 配置文件修改:学会了如何通过修改
opencode.json文件来全局控制分享行为。 - 命令操作:掌握了在聊天中使用
/share和/unshare命令来手动控制单个对话的分享与取消分享。 - 隐私意识:了解到分享对话的潜在风险,并学会了如何安全地使用此功能。
下一步
如果你想继续深入,建议学习:
- 📖 OpenCode 配置详解:深入了解
opencode.json文件的其他配置项。 - 📖 OpenCode 企业版部署:了解如何为组织部署和管理 OpenCode,包括更高级的安全策略。
💡 练习任务:尝试在本地项目中,将分享模式设置为
auto,然后开始一个新对话,观察是否自动生成了链接。之后,再将其改回manual,并手动执行一次/share命令。这是巩固知识的最佳方式。
## 相关文档
- [OpenCode Web 界面启动与配置教程](/docs/jie-mian-cao-zuo/opencode-web-jie-mian-qi-dong-yu-pei-zhi-jiao-cheng.html)