Skip to content

项目初始化与工程护栏

全局安装完成后,当你进入一个具体的代码仓库时,强烈建议执行的“黄金第一步”就是运行 /project init


为什么必须运行 /project init?

OpenCode 是一套生产级工程化体系。仅靠全局配置,智能体无法深度理解当前项目的特定代码拓扑与规范约束。通过 /project init,系统会在当前项目内自动完成 环境初始化与护栏装配

┌─────────────────────────────────────────────────────────────┐
│                 /project init 执行流                         │
│                                                             │
│  1. 探查项目语言与架构 (Java/TS/Go/Rust/Python/C++...)       │
│  2. 自动构建本地代码知识图谱 (CodeGraph AST / Serena 索引)     │
│  3. 脚手架生成 .opencode/ 工程规范骨架                       │
│  4. 唤出 Project Wizard 可视化开关弹窗                       │
└─────────────────────────────────────────────────────────────┘

核心赋能清单

1. 自动构建本地代码知识图谱

  • 精准代码分析:自动检测项目类型并建立 AST 代码图谱与语义符号索引;
  • 告别 Token 盲目浪费:模型不再需要通过 grep 盲读几十个文件,而是通过 Serena LSP 与 CodeGraph 毫秒级锁定多跳调用链路与代码变更影响面(Blast Radius)。

2. 脚手架生成项目级工程护栏

执行后会在项目根目录生成轻量级 .opencode/ 目录结构:

  • ADR 架构决策记录目录docs/adr/):强约束大型架构变更必须有据可查;
  • SDD 规范驱动开发骨架docs/specs/):为复杂需求建立自顶向下的规范化开发基准;
  • 敏感信息防护:激活 env-guard,防止 .env 或 API Token 意外被读入上下文或提交至 Git。

3. 可视化 Project Wizard(项目级开关)

初始化过程中会自动弹出交互式向导,支持用键盘方向键秒级开启或关闭当前项目的专属护栏:

护栏开关作用推荐场景
ADR Guard强制架构决策记录门控,防止架构漂移中大型微服务、核心业务系统
Env Guard拦截对敏感凭证和密钥文件的读取与泄露包含生产密钥、.env 文件的项目
E2E Guard代码修改后必须通过端到端集成测试方可交付有严格自动化测试套件的项目
Project Manager规范化 Commit 提交与 SDD 闭环跟踪团队协作、主干分支开发

实操演示

在任意项目根目录下启动 opencode 并执行 /project init

bash
# 1. 启动 OpenCode
opencode

# 2. 在对话框中执行项目初始化
> /project init

OpenCode 会输出索引构建进度并自动唤出 Project Wizard 项目级交互向导

Project Wizard 交互向导

💡 操作指南

  • / 移动光标选择护栏项
  • Space(空格键)或 Enter(回车键)循环切换状态(🟢 ON / 🔴 OFF / ⚪ default
  • 选择 💾 保存并应用项目配置 即可将设置持久化到本地 .opencode/opencode.jsonc

下一步

基于 MIT 协议发布。