乐于分享
好东西不私藏

VSCode Continue 插件 config.yaml 完全配置指南:从基础语法到生产级最佳实践

VSCode Continue 插件 config.yaml 完全配置指南:从基础语法到生产级最佳实践

VSCode Continue 插件 config.yaml 完全配置指南:从基础语法到生产级最佳实践

本文基于 Continue 官方 v1 Schema 编写,覆盖 YAML 配置全字段语法、核心模块深度解析、多场景实战模板与迁移排错指南,所有示例均可直接复制使用。

文章目录

  • VSCode Continue 插件 config.yaml 完全配置指南:从基础语法到生产级最佳实践
    • 前言
    • 一、配置文件基础
      • 1.1 文件位置与打开方式
      • 1.2 YAML vs JSON 核心优势
    • 二、基础语法强制规范
      • 2.1 缩进规则
      • 2.2 键值与字符串
      • 2.3 列表写法
      • 2.4 头部三必填字段
    • 三、顶层字段全景总览
    • 四、核心模块深度详解
      • 4.1 models:模型配置(最重要)
        • 4.1.1 roles 角色说明
        • 4.1.2 通用模型参数
        • 4.1.3 常用 provider 适配器
      • 4.2 rules:全局行为规则
      • 4.3 prompts:自定义斜杠命令
      • 4.4 context:上下文提供程序
      • 4.5 autocompleteOptions:Tab 补全配置
      • 4.6 mcpServers:MCP 工具服务
    • 五、完整实战配置模板
      • 5.1 模板一:本地 Ollama 全功能配置
      • 5.2 模板二:云端 OpenAI 兼容接口
      • 5.3 模板三:混合部署(推荐)
    • 六、旧版 config.json 迁移指南
      • 6.1 核心字段对照表
      • 6.2 迁移步骤
    • 七、排错与最佳实践
      • 7.1 常见错误排查
      • 7.2 最佳实践建议
    • 八、总结

前言

Continue 是目前 VSCode 生态中最流行的开源 AI 编码助手之一,支持本地大模型、云端 API、代码补全、对话编辑、知识库索引等全链路能力。从 2024 年下半年开始,Continue 正式将 config.yaml 确立为标准配置格式,逐步替代旧版 config.json

相比 JSON 格式,YAML 支持注释、多行字符串、锚点复用,更适合复杂配置的维护;同时新版配置将所有模型(聊天/补全/嵌入/重排)统一收敛到 models 字段,通过 roles 角色区分用途,架构更清晰。

本文将系统讲解 config.yaml 的编写规则、字段含义与实战配置,帮助你从零搭建一套稳定、高效的 Continue 工作环境。

一、配置文件基础

1.1 文件位置与打开方式

配置文件默认位于用户目录下的 .continue 文件夹中:

  • Windows
    C:\Users\<你的用户名>\.continue\config.yaml
  • Mac/Linux
    ~/.continue/config.yaml

在 VSCode 中快速打开:

  1. 按下 Ctrl+Shift+P 调出命令面板
  2. 输入并执行 Continue: Open Config File
  3. 自动打开当前生效的配置文件

优先级说明:若目录中同时存在 config.yaml 和 config.jsonYAML 优先级更高,JSON 文件将被忽略。

1.2 YAML vs JSON 核心优势

特性
config.yaml
config.json
注释支持
支持 # 行注释
完全不支持
多行字符串
原生支持 `
/
>`
配置复用
支持锚点 & / 别名 *
无原生能力
可读性
缩进层级直观
括号嵌套易混乱
官方状态
当前标准格式
已标记废弃

二、基础语法强制规范

YAML 对格式敏感,以下规则必须严格遵守,否则会直接解析失败、配置回退默认值。

2.1 缩进规则

  • 层级缩进必须使用 2 个空格
    ,禁止使用 Tab 制表符
  • 同级字段左对齐,子层级比父层级多 2 空格
  • 列表项  属于当前层级,后续内容与冒号后内容对齐

2.2 键值与字符串

  • 冒号后必须跟一个空格:key: value,禁止 key:value
  • 普通字符串无需引号;包含冒号、#、特殊字符时使用双引号包裹
  • 多行字符串使用 |(保留换行)或 >(折叠换行),常用于系统提示词
# 保留换行,适合代码/提示词rule: |  第一行内容  第二行内容  第三行内容# 折叠换行,适合长段落description: >  这是一段很长的  描述文本,最终会  合并成一行

2.3 列表写法

两种等价写法,短数组推荐行内格式:

# 分行写法roles:  - chat  - edit  - apply# 行内写法roles: [chat, edit, apply]

2.4 头部三必填字段

任何合法的 config.yaml 必须在文件顶部定义以下三个字段,缺一不可:

name: My-Coding-Assistant   # 配置名称,显示在助手下拉菜单version1.0.0              # 配置版本号,自定义维护schema: v1                  # 配置 Schema 版本,固定为 v1

三、顶层字段全景总览

config.yaml 顶层共 9 个核心字段,按重要性排序如下:

字段
类型
作用
是否必填
name
string
配置名称
✅ 必填
version
string
配置版本
✅ 必填
schema
string
Schema 版本,固定 v1
✅ 必填
models
array
全部模型定义(聊天/补全/嵌入/重排)
✅ 核心必填
rules
array
全局 AI 行为规则(替代旧版 systemMessage)
❌ 可选
prompts
array
自定义斜杠命令(/xxx
❌ 可选
context
array
上下文提供程序配置
❌ 可选
autocompleteOptions
object
Tab 自动补全全局参数
❌ 可选
mcpServers
array
MCP 工具服务(Agent 能力)
❌ 可选
docs
object
知识库文档索引配置
❌ 可选
data
object
数据上报与隐私配置
❌ 可选

四、核心模块深度详解

4.1 models:模型配置(最重要)

models 是整个配置的核心,所有大模型能力都在这里定义。每个模型通过 roles 字段声明其承担的任务角色,一套配置可以定义多个模型,分别负责不同工作。

4.1.1 roles 角色说明

一个模型可以同时分配多个角色,常用角色如下:

角色
功能
chat
侧边栏对话聊天,主交互模型
edit
代码内联编辑、重构
apply
自动应用代码修改到文件
autocomplete
Tab 键代码自动补全
embed
向量嵌入,用于知识库检索
rerank
检索结果重排序
summarize
代码、文档摘要生成

4.1.2 通用模型参数

models:  - name: Qwen2.5-Coder-7B      # 显示名称,自定义    provider: ollama             # 模型适配器类型    model: qwen2.5-coder:7b     # 模型标识名    apiBase: http://127.0.0.1:11434/v1  # API 地址    apiKey: sk-xxxxxx           # API 密钥,本地模型可填占位符    roles: [chat, edit, apply]  # 模型承担的角色    defaultCompletionOptions:   # 生成参数      temperature: 0.6      maxTokens: 4096      topP: 0.9    requestOptions:             # HTTP 请求参数      timeout: 60000      headers:        X-Custom-Header: value

4.1.3 常用 provider 适配器

Continue 支持数十种模型提供商,主流场景如下:

provider 值
适用场景
备注
ollama
本地 Ollama 部署模型
最常用本地方案
openai
OpenAI 官方及所有兼容接口
DeepSeek、硅基流动、OneAPI 等均用此
anthropic
Claude 系列官方 API
gemini
Google Gemini 官方 API
mistral
Mistral 官方 API
azure
Azure OpenAI 服务

4.2 rules:全局行为规则

rules 替代了旧版的 systemMessage,支持定义多条全局规则,所有对话都会附加生效。适合统一代码风格、输出规范、安全约束等。

rules:  - name: 代码输出规范    description: 全局代码输出约束    rule: |      1. 所有代码注释使用中文      2. 优先输出简洁、可直接运行的完整代码      3. 关键逻辑必须说明设计思路      4. 不输出无关的客套话和冗余解释  - name: 安全约束    rule: |      禁止生成包含硬编码密钥、密码的代码      涉及删除文件、修改系统配置的操作必须给出警告

4.3 prompts:自定义斜杠命令

通过 prompts 可以定义自己的 /命令,在聊天框输入即可快速触发,支持 {{{ input }}} 占位符代表选中的代码或输入内容。

prompts:  - name: review    description: 代码审查    prompt: |      对以下代码进行严格审查,指出潜在bug、性能问题、可维护性问题,按严重程度排序:      {{{ input }}}  - name: test    description: 生成单元测试    prompt: |      为以下代码编写完整的单元测试用例,覆盖正常、边界、异常场景:      {{{ input }}}  - name: comment    description: 添加中文注释    prompt: |      为以下代码添加清晰的中文关键注释,不要修改原有逻辑:      {{{ input }}}

使用方式:在 Continue 聊天框输入 /review 即可触发。

4.4 context:上下文提供程序

对应旧版的 contextProviders,控制 AI 能获取哪些额外信息,支持代码库、文档、终端输出等上下文源。

context:  - provider: codebase    params:      nRetrieve: 20  - provider: docs    params:      startOnLoad: true  - provider: terminal    params:      maxLines: 100  - provider: diff    params:      includeUnstaged: true

4.5 autocompleteOptions:Tab 补全配置

全局控制代码自动补全的行为,也可以在单个模型下单独配置覆盖全局。

autocompleteOptions:  debounceDelay: 300          # 输入防抖延迟(ms)  maxPromptTokens: 1024       # 补全上下文最大token数  onlyMyCode: true            # 仅使用自有代码作为上下文  disableInFiles: []          # 在指定文件类型禁用补全  multilineCompletions: true  # 允许多行补全  prefixPercentage: 0.3       # 前缀占比

4.6 mcpServers:MCP 工具服务

支持 Model Context Protocol 工具,赋予 AI 执行命令、读取文件、调用外部系统等 Agent 能力。

mcpServers:  - name: shell    command: npx    args: ["@modelcontextprotocol/server-shell"]  - name: filesystem    command: npx    args: ["@modelcontextprotocol/server-filesystem""./"]

五、完整实战配置模板

5.1 模板一:本地 Ollama 全功能配置

适合完全本地部署、无网络环境使用,聊天 + 补全 + 嵌入三模型分工。

name: Local-Ollama-Fullversion: 1.0.0schema: v1models:  # 主对话模型:7B 量化版,负责聊天、编辑、应用  - name: Qwen2.5-Coder-7B    provider: ollama    model: qwen2.5-coder:7b-q4_K_M    roles: [chat, edit, apply, summarize]    defaultCompletionOptions:      temperature: 0.6      maxTokens: 4096  # 补全模型:小参数量,低延迟  - name: Autocomplete-1.5B    provider: ollama    model: qwen2.5-coder:1.5b-q4_K_M    roles: [autocomplete]    autocompleteOptions:      debounceDelay: 250      maxPromptTokens: 768  # 嵌入模型:用于代码库检索  - name: BGE-M3    provider: ollama    model: bge-m3    roles: [embed]rules:  - name: 代码规范    rule: |      输出代码使用中文注释,优先简洁实现;      给出的代码必须可直接运行,不输出冗余废话。prompts:  - name: review    description: 代码审查    prompt: |      审查以下代码,指出bug、性能问题和优化建议:      {{{ input }}}autocompleteOptions:  onlyMyCode: true  multilineCompletions: true

5.2 模板二:云端 OpenAI 兼容接口

适用于 DeepSeek、硅基流动、通义千问等兼容 OpenAI 协议的云端服务。

name: Cloud-API-Configversion: 1.0.0schema: v1models:  - name: DeepSeek-R1    provider: openai    model: deepseek-reasoner    apiBase: https://api.deepseek.com/v1    apiKey: sk-xxxxxxxxxxxx    roles: [chat, edit, apply]    defaultCompletionOptions:      temperature: 0.7      maxTokens: 8192  - name: Qwen2.5-Coder-32B    provider: openai    model: Qwen/Qwen2.5-Coder-32B-Instruct    apiBase: https://api.siliconflow.cn/v1    apiKey: sk-xxxxxxxxxxxx    roles: [autocomplete]

5.3 模板三:混合部署(推荐)

云端大模型负责高质量对话,本地小模型负责低延迟补全,兼顾效果与速度。

name: Hybrid-Configversion: 1.0.0schema: v1# 公共配置锚点,复用OpenAI兼容参数_api_common: &api_common  provider: openai  apiKey: sk-xxxxxxxxxxxxmodels:  # 云端主力模型:高质量对话与重构  - name: GPT-4o-Mini    <<: *api_common    model: gpt-4o-mini    apiBase: https://api.openai.com/v1    roles: [chat, edit, apply]  # 本地补全模型:低延迟、不消耗token  - name: Local-Autocomplete    provider: ollama    model: qwen2.5-coder:1.5b-q4_K_M    roles: [autocomplete]  # 本地嵌入:隐私数据不上云  - name: Local-Embed    provider: ollama    model: nomic-embed-text    roles: [embed]

六、旧版 config.json 迁移指南

6.1 核心字段对照表

config.json(旧)
config.yaml(新版)
说明
modelsmodels
增加 roles 字段
tabAutocompleteModel
移入 models
角色设为 autocomplete
embeddingsProvider
移入 models
角色设为 embed
reranker
移入 models
角色设为 rerank
systemMessagerules
 数组
支持多条规则
temperature
 / maxTokens
defaultCompletionOptions
模型级参数
slashCommandsprompts
 数组
自定义斜杠命令
contextProviderscontext
 数组
name
 改为 provider

6.2 迁移步骤

  1. 在 .continue 目录新建 config.yaml,写入头部三字段
  2. 将所有模型迁移到 models 数组,补充 roles 角色
  3. 将 systemMessage 改写为 rules 条目
  4. 将 slashCommands 改写为 prompts 条目
  5. 保存文件,Continue 会自动重载;验证模型下拉、补全功能正常
  6. 确认无误后可删除旧 config.json

七、排错与最佳实践

7.1 常见错误排查

  1. 配置不生效 / 模型不显示

    • 检查缩进:必须 2 空格,禁用 Tab
    • 检查冒号后是否有空格
    • 查看 VSCode 右下角是否有 YAML 解析报错提示
    • 确认模型配置了对应 roles,聊天模型必须包含 chat
  2. 多行提示词格式错乱

    • 多行文本必须使用 | 或 > 标记
    • 文本内容层级比键名多 2 空格
  3. 同时存在 yaml 和 json

    • YAML 优先级更高,JSON 不会生效;建议只保留一份配置

7.2 最佳实践建议

  1. 角色分离
    :不要让一个模型承担所有角色,对话用高质量大模型,补全用低延迟小模型
  2. 量化优先
    :本地部署优先选择 Q4_K_M 量化,性价比最高
  3. 配置版本化
    :维护 version 字段,修改配置时递增,便于回滚
  4. 使用锚点
    :多模型共用参数时,用 YAML 锚点 & 和别名 * 减少重复
  5. 规则精简
    rules 不宜过多,3-5 条核心规则效果最佳,过多会稀释主指令
  6. 密钥安全
    :不要将配置文件提交到 Git,敏感密钥建议使用环境变量

八、总结

config.yaml 作为 Continue 的新一代配置格式,在可读性、可维护性上相比 JSON 有显著提升。掌握本文的字段规则与配置思路,你可以灵活搭建从纯本地到混合云、从单人到团队的各类 AI 编码环境。

建议从本文的模板出发,根据自己的显卡显存、业务场景、使用习惯逐步调优模型参数与规则,最终打造最适合自己的编码助手。