第 3 / 5 节10 分钟
💬

基础对话

与 AI 对话,让它帮你解释和修改代码

🎬

视频教程即将上线

基础对话

学习如何与 OpenCode 进行有效的对话和交互。

# 启动会话#

在项目目录下启动 OpenCode:

bash
cd your-project
opencode

你会看到类似这样的界面:

OpenCode v1.0.0
Model: gpt-4
Project: your-project

❯

# 发送消息#

直接输入你的问题或请求:

❯ 这个项目是做什么的?

OpenCode 会分析项目结构并回答你的问题。

# 多轮对话#

OpenCode 会记住对话上下文,你可以进行连续的对话:

❯ 这个项目用了什么技术栈?

OpenCode: 这个项目使用了 React + TypeScript...

❯ 帮我解释一下 src/components/Button.tsx

OpenCode: 这个文件定义了一个 Button 组件...

❯ 能否添加一个 loading 状态?

OpenCode: 当然,我来修改这个组件...

# 常用对话模式#

## 1. 代码解释#

❯ 解释一下这段代码的作用
❯ 这个函数是怎么工作的?
❯ 为什么这里要用 useMemo?

## 2. 代码生成#

❯ 创建一个用户登录表单组件
❯ 写一个计算斐波那契数列的函数
❯ 帮我实现一个分页功能

## 3. 代码修改#

❯ 给这个函数添加错误处理
❯ 重构这段代码,提高可读性
❯ 把这个类组件转换成函数组件

## 4. 问题排查#

❯ 这段代码为什么报错?
❯ 帮我找出这个 bug 的原因
❯ 为什么这个测试失败了?

# 提供上下文#

## 引用文件#

使用 @ 符号引用特定文件:

❯ @src/utils/api.ts 这个文件有什么问题?

## 引用代码片段#

可以直接粘贴代码:

❯ 这段代码有什么问题?
function add(a, b) {
  return a + c;
}

# 对话技巧#

## 1. 具体明确#

❌ 不好的提问:

❯ 帮我改代码

✅ 好的提问:

❯ 帮我给 src/api/user.ts 中的 getUser 函数添加错误处理

## 2. 提供背景#

❯ 我正在开发一个电商网站,需要实现购物车功能。
❯ 帮我创建一个购物车组件,要求:
❯ 1. 显示商品列表
❯ 2. 支持修改数量
❯ 3. 计算总价

## 3. 分步进行#

对于复杂任务,建议分步完成:

❯ 第一步,先帮我设计数据结构
❯ 好的,接下来帮我实现 API 接口
❯ 最后,帮我创建前端组件

# 快捷键#

快捷键功能
Ctrl + C中断当前操作
Ctrl + L清屏
↑ / ↓浏览历史消息
Tab自动补全

# 下一步#

学会基础对话后,继续了解如何进行文件操作。