Spiga

AI 辅助编程3:OpenCode、Cursor、Trae

2026-05-16 15:33:03

上一篇介绍了Claude Code,本篇介绍再介绍一款开源的终端平台,以及2款编辑器集成工具。

一、OpenCode

1. OpenCode 核心特性解析

传统 CLI 模式 OpenCode TUI 模式
流式输出,信息瀑布般滚动 多面板分区,各司其职
代码、命令、解释混杂一团 对话、上下文、终端独立展示
回顾历史需拼命向上滚动 空间记忆,一目了然
认知负担是“线性记忆” 体验如同“现代化公寓 vs 简陋单间”

三大核心面板

  • 对话区:与 AI 自然语言交流,界面清爽,脉络清晰。
  • 上下文管理区:展示 Tokens 消耗、LSP 状态、待办事项及文件变更。
  • 终端执行区:AI 执行命令、安装依赖、运行测试的地方。

开源优势:OpenCode 完全开源、本地运行。无强制遥测或数据收集,对数据安全要求严格的企业和个人是“定心丸”。

核心工作模式剖析:OpenCode 强制将 AI 工作状态分为“动脑”和“动手”,按 Tab 键切换。

Plan Mode · 规划模式 Build Mode · 构建模式
只动口,不动手 最高级别执行权限
深度分析需求,输出步骤清单 可读、写、增、删文件
无权修改文件或执行命令 可自动运行终端命令
相当于给 AI 戴上“安全锁” 执行从编写到测试的闭环
适合复杂架构变更前期 适合方案确认后的落地执行

最佳实践:养成**“先谋后动”**的习惯,复杂任务先切规划模式理清思路,确认无误后再切构建模式执行。

2. OpenCode 安装

  • 标准化安装与初始化:前置条件 Node.js (推荐 LTS 版本)。
# 1. 全局安装 OpenCode
npm i -g opencode-ai@latest 

# 2. 验证版本
opencode --version

# 3. 启动
mkdir OpenCodeDemo && cd OpenCodeDemo
opencode
  • DeepSeek-V4 接入,OpenCode 不绑定闭源模型,DeepSeek-V4 因强悍推理能力和低成本成为首选。
前往 DeepSeek 开放平台 → 生成 API Key → 在 OpenCode 中输入 /connect → 选择 DeepSeek V4 Pro

提示:简单任务用轻量模型省钱,复杂推理用强模型保质量。

  • 基础功能验证:构建密码生成器
请帮我编写一个 .net 程序,需要实现以下功能:
1. 随机生成一个包含大小写字母、数字和特殊字符的 16 位密码。
2. 运行应用时,直接在终端打印出生成的密码。
3. 代码需要包含中文注释,解释核心逻辑。
完成代码编写后,请直接在终端中运行它,让我看到生成的结果。

AI 执行流程:意图解析与规划 → 文件操作与代码写入 → 终端自主执行 → 结果验证与反馈

3. 工作流控制与会话管理

  1. 建立项目级 AI 规范,在项目根目录创建 AGENTS.md,作为项目的“AI 宪法”。
# 核心编码规范

1. **语言要求**:所有的代码注释、函数文档说明必须使用标准的**中文**编写。
2. **命名约定**:所有的 Python 变量名和函数名必须严格遵循**下划线命名法(snake_case)**。
3. **架构约束**:优先考虑代码的**模块化拆分**,不要把所有逻辑塞进一个文件。

效果:即使对话中不强调,AI 也会自动遵循上述规则生成代码。

  1. 协作排障与会话共享,使用 /share 指令生成会话链接,打破信息孤岛。

共享内容包括:

  • 完整聊天记录
  • 文件快照(含 Diff)
  • 终端命令及完整日志

全息式共享:同事打开链接能看到高度还原的 OpenCode 交互界面,彻底消除协作排障时的信息不对称。

4. 高阶技巧:自定义指令

自定义指令机制解析:无需代码,只需 Markdown 和自然语言提示词。保存 .md 文件即生效。

构建代码审查指令,文件路径:.opencode/commands/review-it.md

# 目标
你现在的角色是一位极其严苛的资深系统架构师。
对用户当前工作区中所有未提交的更改(Git Diff)进行深度代码审查。

# 审查重点
1. **逻辑漏洞**:数组越界、空指针、边界条件。
2. **代码异味**:重复代码、函数过长、命名不清。
3. **性能隐患**:循环中的重查询或计算。

# 输出格式
- 无问题 → "✅ 代码审查通过,未发现明显问题。"
- 有问题 → "所在文件 → 问题描述 → 修改建议"

5. 实战:自动生成专属 Skill

  • 需求拆解与提示设定,利用“元编程”(用 AI 写 AI 工具)自动生成 Skill。
你现在的任务是作为一个“Agent Skill 创造者”,帮我编写一个名为
“Git 规范化提交”的专属技能,保存在 .opencode/skills/ 文件夹中。

功能要求:
1. 自动分析所有 Git 变更。
2. 生成符合 Conventional Commits 规范的提交信息。
3. 包含简短的英文标题和详细的中文描述。
4. 必须先输出供用户确认,不要自动执行提交。
  • 自动生成与装配实战,OpenCode 会自动创建目录和 Skill.md 文件。

如果不满意,直接在对话框中反馈:

“刚才生成的 Skill 不错,但中文描述太简单了。请在规则里增加:描述必须详细生动,可以使用无序列表和 emoji。”

AI 会自动读取并修改文件,实现工具的自我进化。

6. 综合案例 — 从零构建 CLI 工具

  1. 方案设计(规划模式)
我们要开发一个基于 .NET 的命令行天气查询工具。
核心需求:
1. 用户输入 `weather-cli 城市名` 获取天气。
2. 展示温度、湿度和天气状况。
3. 请设计技术方案(API 选型、文件结构、依赖库)。
注意:目前只是设计阶段,请只输出方案,不要写代码。
  1. 代码构建(构建模式),确认方案后,按 Tab 切换到 Build Mode,输入:
方案确认无误,请开始构建。

AI 全自动流程:创建 ToDo 列表 → 创建项目结构 → 安装依赖 → 实现逻辑 → 编写测试 → 自动修复

通常几分钟内即可完成原本需要数小时的手动开发。

  1. 专题总结
场景 推荐工具
庞大存量企业级工程 (需跳转、重构、静态分析) Cursor 等编辑器集成工具
快速原型 / 自动化脚本 / CLI (重度命令行开发者) OpenCode 终端工具
隐私优先 / 预算有限 (需接入 DeepSeek 等高性价比模型) OpenCode 开源方案

最终寄语:没有任何一个工具是万能的银弹。优秀的工程师,永远是根据具体的环境,选择最趁手的工具。

二、Cursor

1. Cursor 架构与智能体心智模型

  • 架构对比:IDE 智能体 vs 终端智能体
终端智能体(Claude Code / OpenCode) IDE 智能体(Cursor 3.0)
运行在命令行环境中 自带编辑器,直接调用编辑器能力
通过读取文件和执行命令交互 准确认出光标位置与选中代码
受限于命令行的线性操作 理解代码在整个项目中的位置
难以直观感受全局代码上下文 同时打开并控制多个文件窗口
一次只能处理一个文件 多文件并行处理,打破串行限制

核心优势:Cursor 可以利用编辑器的原生操作能力,比纯终端工具更精细地接管代码库。在处理跨文件的大范围重构或复杂功能开发时,效率大幅提升。

  • 编辑器窗口与代理窗口,Cursor 3.0 引入了独特的双轨界面设计:
    • 编辑器窗口:保留多标签页、分屏操作和丰富的插件生态,适合专门查看代码或进行细微修改。
    • 代理窗口:专为智能体打造的控制台,可以同时跨项目跟多个智能体一起工作,支持并行代理。

并行代理:打破了传统终端排队执行的限制,真正做到了多线程高效开发。Cursor 3.0 也支持将任务交给云端智能体运行(付费功能)。

  • 核心交互:Agent 模式与 Plan 模式

工作流程

输入复杂任务 → Plan 模式搜索代码库 → 主动反问确认需求 → 输出实现方案草稿 → 用户确认后执行
默认模式:Agent 模式 规划模式:Plan 模式
适用于日常写代码任务 适用于跨模块的复杂开发
按要求自动搜代码、改文件、跑终端命令 先大范围搜索代码库背景信息
结合系统提示词和工具直接执行 主动反问确认需求细节
快速响应,即发即做 输出可审查修改的方案草稿
确认后严格按计划执行

工作流理念:“先规划、再调度、后执行”的工作流程,能拦住智能体在还没摸清全貌时就瞎改代码,大大减少因理解偏差造成的代码越改越乱和反复重试的麻烦。

2. Cursor 智能体的深度应用

  • 任务排队与即时消息控制:当智能体正在执行耗时较长的任务时,可通过两种方式控制节奏:
    • 任务排队:智能体工作时,直接在对话框输入新指令,按 Enter。指令自动加入等待队列,可拖动调整顺序。
    • 即时发送:按 Ctrl + Enter跳过排队,强行插入并立刻发送给智能体,适合精确干预工作节奏。

任务队列示例

[执行中] 帮我写一个基础的 HTML 计算器页面,包含加减乘除功能。
[排队]   再创建一个 style.css 文件,把计算器美化一下 (Enter 排队)
[插队]   把所有的数字按钮背景色都改成亮蓝色 (Ctrl+Enter 即时)
  • 检查点机制与版本回滚,Cursor 内置独立于 Git 之外的“检查点”机制:
    1. 自动快照:修改重要文件前,后台自动给代码库拍快照。
    2. 一键还原:发现方案不行,点击“还原”按钮,一键恢复到快照状态。
    3. 撤销还原:还原错了?支持“Undo”,代码回到修改后状态。

这套独立于 Git 之外的安全保护网,给了我们大胆试错的底气,全程无需敲一行 Git 命令。

  • 工作树:隔离的执行环境,工作树功能让智能体在完全隔离的 Git 检出副本里干活,不影响主干代码。
    1. 初始化 Git:让 Agent 完成仓库初始化。
    2. 启动隔离任务:新建会话并切换到工作室环境。
    3. 观察隔离效果:Cursor 创建单独检出副本,主干代码不受影响。
    4. 合并与提交:通过 Diff 视图确认后,让 Agent 完成合并。
初始化 Git 仓库 → 新建智能体会话 → 切换到工作室环境 → 隔离开发 → 确认后合并

物理级别隔离:是并行开发多个复杂特性的最佳拍档。可以一边修紧急 Bug,一边测试新功能,两者互不干扰。

3. 上下文控制与工作流定制

  • 多层级规则约束体系
规则类型 说明
用户规则 跟随个人账号的全局喜好,如“永远使用单引号”。
项目规则(最实用) 存放在 .cursor/rules/下的 .mdc 文件,通过元数据精确控制生效时机。
团队规则 企业版管理员在后台配置的强制规范。

实操:创建项目规则文件,路径: .cursor/rules/frontend.mdc

---
description: 针对所有前端 HTML 文件的标准要求
globs: **/*.html
alwaysApply: false
---

所有的 HTML 文件必须包含 viewport 的 meta 标签,
并且 lang 属性必须设置为 zh-CN。
  • 子代理的编排与调用,子代理是主智能体手下的专门“外包团队”,拥有独立的上下文窗口,不污染主 Agent 上下文。
    • 自动触发:主 Agent 根据上下文自动召唤合适的子代理。
    • 显式调用:使用 /子代理名称 强制派发任务。

实操:定义代码审查子代理,路径: .cursor/agents/reviewer.md

---
name: reviewer
description: 专门负责审查代码并提出优化建议的高级工程师。
---

我们的唯一任务是阅读传递给我们的代码,
找出潜在的性能问题、边界情况,并以列表的形式
输出审查意见。不要直接修改代码,只输出意见。

调用方式:/reviewer 请帮我审查一下当前打开的代码文件

  • 技能与 MCP 的集成应用
技能 (Skills) MCP (Model Context Protocol)
解决“怎么做” 解决“拿数据”
受版本控制的技能包 连接外部世界的数据管道
教 Agent 学习特定任务流程 支持本地数据库、云端 API 等
存放于 .cursor/skills/ 配置 .cursor/mcp.json 接入
可附带脚本和文档 Cursor 当作本地工具调用

演示 A:创建专属打招呼技能,路径: .cursor/skills/greeting/SKILL.md

---
name: greeting
description: 当用户要求打招呼、问好或测试回复时必须调用的技能。
---

# 专属打招呼规范
1. 必须以“报告长官:”开头。
2. 紧接着汇报当前工作区目录名称。
3. 态度必须极其正式和严肃。

演示 B:配置 MCP 获取外部记忆,路径: .cursor/mcp.json

{
  "mcpServers": {
    "memory-server": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"]
    }
  }
}

配置完成后,务必重启一次 Cursor。确保勾选开启 memory-server 服务,且需 Node.js 环境。

4. 综合案例演练:从零构建纯前端任务管理应用

从一个没有任何初始代码的空目录开始,运用 Plan 模式做架构、用规则约束代码风格、用代理窗口编排任务、用子代理完成质量验收。

  1. 架构规划与基建设定
  • 建立初始规则:创建 .cursor/rules/react.mdc,设定 React 规范(globs: **/*.jsx, **/*.tsx)。
  • 唤起 Plan 模式:切换到高性能推理模型(如 Opus 深度思考模式)。
  • 输入初步需求:描述要开发纯前端 Todo App,数据存 LocalStorage,技术栈 React。
  • 交互澄清细节:模型反问 UI 风格、过滤功能等,确认后输出架构计划。
  • 切换执行模型:确认计划后,切换为低成本执行模型,点击 Build 开始干活。
  1. 核心实现与任务调度
  • 开始构建:Agent 按计划创建文件并编写代码。
  • 验证规则生效:生成的 JSX 采用函数式写法,未引入外部 UI 库。
  • 使用任务排队:写代码时补充样式需求,按 Enter 排队,队列任务自动执行。
  • 预览成果:打开 index.html,全功能 Todo App 运行。

双模型策略:

  • 规划阶段:用高智商推理模型做架构设计
  • 执行阶段:用普通模型快速编写代码。兼顾质量与成本。
  1. 子代理测试与代码验收
  • 编写验收子代理:创建 .cursor/agents/verifier.md。
  • 调用验收:输入 /verifier 请帮我验收一下刚才写的应用代码。
  • 获取验收报告:子代理返回精简审查意见,实现上下文隔离。

5. 智能体辅助编程的通用法则

  1. 破除迷信:正视大模型的“乐观偏见”大模型是极度自信的“高级实习生”,常假设网络永不超时、数据必有结果。

应对策略:强迫其进行防御性编程。指令追加异常约束,如:“请考虑密码错误锁定、数据库超时、请求体缺失字段。”

  1. 任务拆解与分治的进阶艺术,避免“庞大且模糊”的任务(如“写一个电商后台”)。

分步示例:

1. 先写后端接口框架(返回假数据)。
2. 再写前端上传按钮和预览框的静态样式。
3. 最后连接前后端真实逻辑,原则:小步快跑、层层递进,每步验收。
  1. 面向代码的精准表达

避免业务黑话(如“优化得更顺滑”)。

策略:Show, Don't Just Tell。直接给出输入输出样本:

输入:[{ "user": "A", "items": [1, 2] }]
输出:[{ "userId": "A", "itemId": 1 }, { "userId": "A", "itemId": 2 }]
  1. 角色重塑:从码农到技术负责人
  • 以前:80% 时间敲代码,20% 时间找 Bug。

  • 现在:智能体秒写代码,你需要 80% 精力审查代码。

    审查重点:是否引入未安装库?是否有死循环?是否忽略竞态条件?

    定位:你是把关人,AI 是高级外包。

6. Cursor 专属效能优化

  1. 精准投喂:掌握 @符号的上下文引入艺术

避免滥用 @Codebase。信息越聚焦,答案越犀利。修改具体组件就只 @该组件及其 CSS 文件。

  1. Token 的隐形消耗陷阱与长对话管理

长对话会导致“上下文污染”(每次需重读历史)。

策略:一个功能模块开发完毕,果断新建对话,重新引入文件,保持敏锐。

  1. 规则的微观调优与模块化隔离

避免单一庞大的 global.mdc。按文件类型拆分规则:

  • frontend-style.mdc(globs: src/frontend/**/*.css)
  • backend-api.mdc(globs: src/backend/controllers/**/*.js)
  • testing.mdc(globs: **/*.test.js)
  1. 外部知识库的私有化构建

对于小众库或私有框架,使用 @Docs 功能。在 Cursor 设置中添加官方文档网址,后台建立向量索引,智能体依据最新 API 编写代码,消除幻觉。

  1. 本地并行开发流的终极形态

大脑作为“中央调度器”:

  • 主线任务:主逻辑写完后,开新会话让后台补全单元测试。

  • 并行操作:回到编辑器窗口调整 UI 或审查其他模块。

  • 异常处理:测试用例报错时,开子代理分析堆栈。

    目标:成为指挥多个高智商助理并线作战的架构总监。

三、Trae

1. 认识 TRAE SOLO

  • 产品定位与多端体验
特性 说明
AI 原生工作台 在单一工作台完成从构思到交付,减少工具切换成本
多端同步 桌面端、网页端、移动端共享项目状态与配置

多端任务接续示例:

桌面端发起测试 → 移动端查看进度 → 网页端下达修复指令 → 团队成员接手云端任务
  • 核心特性:Code 模式 vs MTC 模式
模式 定位 典型场景
Code 开发任务 跨文件生成、调试、重构代码
MTC (More Than Coding) 通用办公任务 调研、文档、数据分析、演示材料

模式选择建议:

项目阶段 推荐模式 典型产出
项目启动 MTC 技术调研、需求文档、架构方案
核心开发 Code 功能代码、单元测试、调试记录
发布后期 MTC 测试报告、用户手册、部署文档
  • 从 Copilot 到 Agent:自动化执行流,TRAE SOLO 更接近智能执行系统,而非被动响应工具。

    自动化链路:

    1. 接收复杂任务目标
    2. 分析需求并拆解为可执行计划
    3. 安排子任务顺序、工具与预期结果
    4. 并行或串行调度执行
    5. 展示结构化进度,等待人工验收

2. 快速上手:环境准备与界面导航

  • 多端登录
适用场景
桌面端 高强度开发
网页端 随开随用、轻量修改
移动端 进度查看与确认
  • 工作台核心界面解析
区域 功能
左侧 任务与文件管理:新建/切换任务、项目文件树
中间 聊天与编辑交互:自然语言输入、对话历史、代码/文档编辑
右侧 结构化信息展示:执行计划、任务状态、参考文件
  • 云端协同与环境配置,云端环境准备流程:
    1. 创建项目 → 分配独立运行容器
    2. 自动识别 package.json/ requirements.txt
    3. 自动安装依赖
    4. 加密保存环境变量
    5. 多端共享同一运行环境

3. Code 模式实战:打造个人效率工具

  1. 案例:极简天气查询工具(Python),任务定义:
请使用 Python 编写一个简单的天气查询脚本,要求:
1. 使用 wttr.in 接口(无需 API Key,返回 JSON)
2. 终端提示用户输入城市名
3. 调用接口并提取当前温度与天气状况
4. 以友好格式打印结果
5. 开始前先给出详细执行计划

操作提示:确认处于 Code 模式,并在聊天区切换至 Plan 模式。

  1. 观察 AI 的任务拆解,天气工具执行计划:
  • 确认需求与接口(wttr.in 数据结构)
  • 创建 weather_tool.py
  • 实现用户输入逻辑
  • 实现网络请求与 JSON 解析
  • 格式化输出结果
  1. 代码生成、调试与多文件协同
  • 自动创建文件
  • 写入核心逻辑(输入处理、请求、解析、循环)
  • 云端终端运行测试
  • 异常分析与自动修复(接口结构、超时、解析错误)

4. MTC 模式实战:超越代码的通用任务

  1. MTC 模式实战:超越代码的通用任务,任务定义
请生成一份上位机开发框架技术调研报告,包含:
1. 调研对象:WinForms、WPF、Electron、Avalonia
2. 各框架核心设计理念与原理简述
3. 对比表格:学习曲线、代码量、性能、适用场景
4. 输出为 Markdown 文件并自动保存
5. 开始前先展示调研步骤
  1. 文件处理与素材解析,素材融入执行上下文:
上传 PDF 规范 → 提取团队偏好 → 融合公开资料 → 输出定制化报告
  1. 官方精选 Skills 市场
Skill 能力说明
代码审查 静态检查 + 修改建议
文本转换 硬编码文本 → 国际化变量
接口文档生成 根据项目结构自动整理接口说明

5. 最佳实践与人机协作哲学

  1. 透明与可控:何时放权,何时介入。

适合交给系统:

  • 逻辑清晰、边界明确的任务
  • 大量重复性整理工作
  • 公开资料搜集与对比

需要人工介入:

  • 需求解析明显偏离目标
  • 架构选型、安全机制等关键决策
  • 系统反复报错并陷入循环
  1. 编写高质量的「任务定义」,四步法:
  • 提供充分且具体的上下文
  • 明确输入与输出格式
  • 将大任务拆分为阶段性目标
  • 写明必须遵守的约束条件
  1. AI 辅助开发的未来思考
能力 说明
系统思维 从宏观业务角度把握系统结构
问题定位 面对未知异常时的排查与推理
业务理解 将真实需求转化为可执行架构