个性化定制

wescode 继承了 VSCode 丰富的可定制性,并在此基础上增加了 AI 相关的配置项。本指南帮助你按照个人习惯定制 wescode。


快捷键配置

AI 相关快捷键

wescode 预设了以下 AI 快捷键,你可以在「设置 → 键盘快捷方式」中修改:

快捷键功能命令 ID
Ctrl+L / Cmd+L打开 Chat 面板wescode.openChat
Ctrl+K / Cmd+KInline Commandwescode.inlineCommand
Tab接受 AI 补全wescode.acceptCompletion
Escape取消 AI 操作wescode.cancelOperation
Ctrl+Enter接受 AI 编辑wescode.acceptEdit
Ctrl+Shift+Enter接受所有编辑wescode.acceptAllEdits
Ctrl+Shift+G打开项目概览wescode.projectOverview

自定义快捷键

在 keybindings.json 中添加自定义绑定:

[
  {
    "key": "ctrl+shift+a",
    "command": "wescode.openChat",
    "when": "editorTextFocus"
  },
  {
    "key": "ctrl+shift+i",
    "command": "wescode.inlineCommand",
    "when": "editorTextFocus && editorHasSelection"
  }
]

快捷键冲突

如果 AI 快捷键与其他扩展冲突,可以在快捷键设置中搜索对应的命令 ID 并重新绑定。


主题与外观

内置主题

wescode 内置了多种主题,在「设置 → 颜色主题」中切换:

AI 面板主题

Chat 面板和项目概览面板会自动跟随编辑器的主题。AI 消息中的代码块使用与编辑器一致的语法高亮配色。

字体配置

// settings.json
{
  "editor.fontFamily": "'JetBrains Mono', 'Fira Code', monospace",
  "editor.fontSize": 14,
  "editor.lineHeight": 1.6,
  "editor.fontLigatures": true,
  
  // Chat 面板字体
  "wescode.chat.fontSize": 14,
  "wescode.chat.fontFamily": "inherit"
}

图标主题

推荐使用以下图标主题,它们与 wescode 的 AI 图标风格协调:


Agent 自定义

预装 Agent

wescode 预装了多种编程 Agent,每个 Agent 针对特定场景优化:

Agent用途特点
通用助手日常编码全功能,均衡配置
代码审查员代码审查注重安全和最佳实践
测试工程师测试生成专注测试覆盖和边界情况
架构师设计决策关注整体架构和可维护性
文档撰写者文档生成专注代码注释和技术文档

创建自定义 Agent

你可以创建自己的 Agent 配置:

  1. 打开设置 → 「Agent 配置」
  2. 点击「新建 Agent」
  3. 配置以下信息:
name: "my-code-reviewer"
display_name: "我的代码审查员"
description: "专注于 Go 后端代码的安全审查"
system_prompt: |
  你是一个专业的 Go 代码审查员。
  审查时请特别关注:
  1. 并发安全(goroutine 泄漏、竞态条件)
  2. 错误处理(是否遗漏 error return)
  3. 资源泄漏(连接、文件句柄)
  4. SQL 注入风险
skills:
  - code-review
  - security-audit
allowed_tools:
  - read_file
  - grep
  - search_files

Agent 切换

在 Chat 面板顶部可以切换当前使用的 Agent。不同的 Agent 有不同的系统提示词和技能配置,但共享同一个模型。


工具启用 / 禁用

工具管理

wescode 的 AI 可以使用多种工具。你可以按需启用或禁用:

  1. 打开设置 → 「工具与配额」
  2. 查看可用工具列表
  3. 切换每个工具的启用状态

常用工具列表

工具默认说明
read_file✅ 启用读取文件内容
write_file✅ 启用写入新文件
edit✅ 启用编辑已有文件
exec✅ 启用执行终端命令
grep✅ 启用搜索文件内容
search_files✅ 启用按名搜索文件
delegate_task✅ 启用委派子任务
memory✅ 启用记忆读写
web_search❌ 禁用Web 搜索(需配置)
browser_navigate❌ 禁用浏览器自动化(需配置)

安全考虑

禁用 exec 工具可以防止 AI 在终端中执行命令。这在某些安全敏感的环境中可能是必要的。

禁用 write_file 和 edit 工具可以将 AI 限制为只读模式,仅用于代码分析和问答。


工作区特定配置

工作区设置

每个工作区可以有自己的设置(.vscode/settings.json):

{
  // 为这个项目指定默认模型
  "wescode.defaultModel": "claude-sonnet",
  
  // 项目特定的 AI 行为
  "wescode.ai.maxIterations": 50,
  "wescode.ai.thinkingLevel": "medium",
  
  // 项目特定的工具配置
  "wescode.tools.exec.enabled": true,
  "wescode.tools.exec.timeout": 30,
  
  // CKG 索引排除
  "wescode.ckg.exclude": [
    "vendor/**",
    "node_modules/**",
    "*.generated.go"
  ]
}

AGENTS.md 项目指令

在项目根目录创建 AGENTS.md(或 CLAUDE.md)文件,AI 会自动读取并遵循其中的指令:

# 项目 AI 指令

## 代码风格
- 使用 4 空格缩进
- 函数注释使用中文
- 错误处理使用 fmt.Errorf 而非 errors.New

## 测试规范
- 使用表驱动测试
- Mock 使用 gomock
- 测试文件与源文件同目录

## 禁止操作
- 不要修改 vendor/ 目录
- 不要使用 reflect 包
- 不要引入新的第三方依赖

这个文件会在每次打开工作区时被加载,AI 在生成代码时会遵守这些约定。

多工作区配置

如果你同时打开多个工作区(VS Code 的多根工作区),每个工作区对应一个独立的 Cell,配置完全隔离:


治理策略配置

治理模式

wescode 支持配置工作区的治理策略:

模式说明适用场景
编程模式(open)默认,AI 可以自由操作日常开发
锁定模式(locked)限制危险操作生产环境调试

路径保护

你可以配置受保护的路径,AI 不能修改这些目录下的文件:

{
  "wescode.governance.denyPaths": [
    "/etc/",
    "~/.ssh/",
    ".env"
  ]
}

配置文件位置

配置类型位置
用户级设置~/.config/wescode/config.yaml
工作区设置.vscode/settings.json
项目 AI 指令AGENTS.md 或 CLAUDE.md
键盘快捷方式keybindings.json
代码片段.vscode/*.code-snippets

恢复默认设置

如果配置出现问题,你可以:

  1. 重置单项设置:在设置界面右键点击配置项 → 「重置设置」
  2. 重置所有设置:删除 settings.json 文件
  3. 重置 AI 配置:在命令面板中执行 wescode: Reset AI Configuration
  4. 清除工作区数据:删除 $WESCODE_DATA_DIR/cells/ws-{hash}/ 目录

相关文档