OpenCode 完全指南:高级实战与效率技巧

掌握了配置、模型、工具之后,真正的差距在日常使用习惯。本章聚集两大实战方向——框架特定开发(以 Laravel 为例)和通用效率提升技巧。

框架实战:OpenCode × Laravel

生成完整模块

opencode "在 Laravel 项目中创建一个完整的文章管理模块:
  - Model: Article (title, content, status, user_id)
  - Migration: 包含索引和外键
  - Controller: Resource Controller,含 index/store/update/destroy
  - Form Request: StoreArticleRequest, UpdateArticleRequest(验证规则)
  - Policy: ArticlePolicy
  - API Resource: ArticleResource
  - 路由: apiResource 注册
  - 测试: Feature Test 覆盖 CRUD"

OpenCode 理解 Laravel 约定,一次性生成符合最佳实践的完整模块。

自动迁移与种子数据

opencode "根据以下需求设计数据库 Schema:
  - 电商系统:用户、商品、订单、订单项
  - 生成 Migration 和 Factory + Seeder
  - 订单状态用 enum,商品价格用 decimal(10,2)
  - 所有表包含 timestamps 和 softDeletes"

Eloquent 查询优化

opencode "审查这个 Controller 的查询,找出 N+1 问题并修复:
  - 使用 eager loading
  - 添加必要的 select 限制字段
  - 对频繁查询的字段建议添加索引"

中间件与策略

opencode "创建 API 认证中间件:
  - 从 Header 提取 Bearer Token
  - 验证 JWT 有效性
  - 将用户信息注入 Request
  - 对无效 Token 返回 401
  遵循 Laravel 11 中间件写法"

测试生成

opencode "为以下场景生成 Pest 测试:
  - 用户注册成功 → 201 + 返回 token
  - 重复邮箱注册 → 422
  - 未登录访问受保护路由 → 401
  - 并发下单库存扣减 → 使用 RefreshDatabase + assertDatabaseCount"

通用效率技巧

技巧 1:用 @ 符号精确引用

> @src/services/user.ts 把这个文件的错误处理统一为 AppError
> @AGENTS.md 按文档中的日志规范修改所有 service

@ 符号让 OpenCode 精确知道你要操作哪个文件或参考哪个规范。

技巧 2:模板化提示词

把常用的提示词模板存在文件中,随时复用:

# templates/new-feature.md
请实现以下功能:
**需求**:{ DESCRIPTION }
**涉及文件**:{ FILES }
**约束**:
- 遵循项目现有模式
- 添加完整测试
- 更新相关文档

使用:

cat templates/new-feature.md | sed 's/{DESCRIPTION}/用户点赞功能/' | opencode

技巧 3:管道组合

# 找代码→分析→修复,一气呵成
grep -rn "TODO" src/ | opencode "分析这些 TODO 注释,按优先级修复"

# diff→审查→格式化输出
git diff HEAD~3 | opencode "生成发布说明,按 feat/fix/chore 分类"

技巧 4:自定义命令加速重复操作

{
  "commands": {
    "fix-lint": {
      "description": "自动修复 ESLint 错误",
      "prompt": "修复项目中所有 ESLint 报错,保持逻辑不变"
    },
    "cr": {
      "description": "快速代码审查",
      "prompt": "快速审查 git diff,只报告严重问题和安全漏洞"
    },
    "migrate": {
      "description": "生成数据库迁移",
      "prompt": "根据最新的 Model 变更生成 Prisma 迁移并审查"
    }
  }
}

使用:

opencode run fix-lint
opencode run cr
opencode run migrate

技巧 5:多任务并行

打开多个终端窗口,同时进行多个独立任务:

# 终端1:让 OpenCode 重构后端
opencode "重构 src/services/ 下的所有 service,提取公共逻辑"

# 终端2:让 OpenCode 优化前端
opencode "为 src/components/ 下的组件添加 loading 和 error 状态"

# 终端3:让 OpenCode 写测试
opencode "为本周新增的所有 API 端点编写集成测试"

技巧 6:Plan 模式先规划再执行

> /plan 实现用户权限系统

OpenCode(Plan 模式):
1. 数据库:新增 roles 表,users 表加 role_id
2. 中间件:创建 CheckRole 中间件
3. 策略:更新已有 Policy
4. 测试:权限测试覆盖
5. 预计影响:3 个新建文件,2 个修改文件

确认后,切换到 Build 模式 → /build

Plan 模式不做任何修改,只输出分析——让你在执行前审查方案。

技巧 7:自动生成 Commit Message

git add .
git diff --cached | opencode "生成 Conventional Commits 提交信息" | xargs git commit -m

技巧 8:项目文档自动维护

opencode "扫描 src/ 目录,自动更新 README.md 中的项目结构说明和 API 端点列表"

技巧 9:迁移脚本编写

opencode "编写数据迁移脚本:
  - 将旧表 old_orders 的数据映射到新表 orders
  - 处理字段名变化、枚举值转换
  - 记录迁移失败的记录到 migration_errors 表
  - 支持断点续传"

技巧 10:日报周报生成

git log --since="last monday" --author="$(git config user.name)" --oneline | \
  opencode "根据这些提交记录生成周报,格式:
  ## 本周完成
  ## 进行中
  ## 下周计划"

效率时间对比

| 任务 | 纯手写 | OpenCode | 效率提升 |
|------|--------|----------|---------|
| CRUD 模块 | 2-4h | 5min | 95% |
| 单元测试 | 1-2h | 2min | 95% |
| API 文档 | 1h | 1min | 98% |
| 代码审查 | 30min | 1min | 97% |
| 数据库迁移 | 30min | 2min | 93% |
| 项目初始化 | 1-2h | 5min | 95% |
| 依赖升级 | 1h | 2min | 97% |
| Bug 定位 | 30min | 1min | 97% |

小结

框架实战让 OpenCode 在特定技术栈中如鱼得水——它理解 Laravel 的约定、Eloquent 的写法、Pest 的测试风格。效率技巧则帮你建立高效的日常工作习惯——从模板化提示词到多任务并行,从 Plan 模式到自动化提交,每一点优化都在日积月累中释放巨大价值。

OpenCode 完整指南体系(20 大章)

| # | 章节 | 核心内容 |
|---|------|----------|
| 1 | 安装入门与基础概览 | 安装、登录、首次使用 |
| 2 | 配置文件 opencode.json | 完整配置项详解 |
| 3 | 主题、界面与快捷键 | TUI、主题、键位 |
| 4 | Agent 与 Sub-Agent 系统 | Plan/Build、多 Agent |
| 5 | Skills 技能系统 | 可复用技能模块 |
| 6 | Rules 规则与指令系统 | AGENTS.md 配置 |
| 7 | MCP 服务器 | 模型上下文协议集成 |
| 8 | Provider 与模型配置 | 75+ 模型接入 |
| 9 | 自定义命令 Commands | 快捷指令系统 |
| 10 | CLI 命令行与自动化 | 非交互模式、脚本 |
| 11 | 权限与安全 | 权限规则、沙箱 |
| 12 | 工具、插件与扩展系统 | Custom Tools、Plugins |
| 13 | 项目协作与工作流集成 | Git、GitHub、团队协作 |
| 14 | 调试、网络与故障排除 | 日志、代理、常见问题 |
| 15 | LSP 代码智能与引用系统 | Language Server、跨项目引用 |
| 16 | 上下文管理与会话优化 | compact、Token 优化 |
| 17 | 代码质量自动化 | Formatters、Code Review |
| 18 | IDE 集成与 Client/Server | VS Code、远程模式 |
| 19 | 高级实战与效率技巧 | Laravel 实战、10大技巧 |
| 20 | 完全指南总目录 | 导航索引 |