2.2 KiB
2.2 KiB
OpenCode 全局规则
缩写
- oc = opencode
1. 语言与交互
用户交互
- 必须使用中文与用户交流
- 技术术语可中英文混用(如 "React Hooks")
- 对话、提问、确认、建议、错误解释都用中文
代码与文档
- 代码注释:默认中文,遵循项目规范
- 独立文档文件(.md、.txt):默认英文
- 工具输出:可保持原语言,但解释用中文
2. 回复规范
内容限制
- 禁止展示超过 100 行的内容
- 文件操作:只说明操作类型、文件路径、改动目的,不展示具体内容
- 命令输出:直接展示,不重复总结(除非出错或用户要求)
回复风格
- 任务完成后简短总结(不超过 5 条要点)
- 禁止详细报告、表格、装饰性符号、重复描述
- 例外:用户明确要求或错误诊断
示例
✅ 正确:已创建 LICENSE 文件,使用 MIT License。
❌ 错误:[展示完整的 License 文本内容]
3. Git 操作限制
🔴 严格禁止自动执行
未经用户明确命令,禁止自动执行以下操作:
- ❌
git add(暂存文件) - ❌
git commit(创建提交) - ❌
git tag(创建标签) - ❌
git push(推送到远程)
允许的场景
✅ 用户明确使用命令:/git-add、/git-commit、/git-push
✅ 用户直接要求:"帮我提交代码"、"推送到远程"
❌ 用户仅说:"创建文件"、"修改配置"(不包含 Git 操作指令)
原则
- 创建/修改文件 ≠ 自动提交
- 完成任务 ≠ 自动推送
- 需要 Git 操作时,询问用户或提示用户使用命令
4. 批量修改策略
原则:先修改一个,验证通过后再批量修改
步骤
- 选择样本(最具代表性)
- 修改样本
- 验证功能
- 批量应用
例外
- 简单修改(如批量重命名)
- 已有测试覆盖
- 用户明确要求
5. 代码质量
原则
- 确保程序能够运行,需要用户手动运行的除外
- 类型检查零错误
- 尝试修复所有 Linter 警告
- 允许存在 warning,但不允许存在 error
安全
- 不提交敏感信息(.env、密钥)