AI编码工具选择
AI 编程工具
AI 编程工具共有几种形态, 分别是: IDE+ AI 插件、原生AI IDE工具、原生AI Agent工具、ADE工具。
aicoderscope 有很多ai coding的review文章 https://aicoderscope.com/blog/
https://www.bitdoze.com/ai-coding-tools/
https://www.bitdoze.com/ai-programming-beginners-guide/
https://www.bitdoze.com/best-open-source-llms-claude-alternative/
ADE工具
https://github.com/stablyai/orca
https://github.com/getpaseo/paseo
原生AI IDE工具
Jetbrains 开源的 thinkrail 值得期待, 底层是pi agent+ monica editor, 同时支持 SDD.
zed 也内置了 agent。
https://aicoderscope.com/blog/zed-ollama-local-model-setup-2026/
https://aicoderscope.com/blog/continue-dev-cursor-acquisition-2026/
原生AI Agent工具
原生 AI Agent工具目前可选择的太多了, claude code、codex、T3 Code、PI Agent。
我选择PI agent, 搭配 herdr。
https://www.bitdoze.com/pi-coding-agent-setup-guide/
推荐: 可以使用 herdr 来管理多个 agent 和 命令窗口 https://github.com/joeseesun/herdr-guide/blob/main/Herdr_软件全面调研与使用教程.md
herdr 的几个概念
- space, 对应左上角的清单
- tab, 对于右边工作区的tab page, tab 从属于一个space中
- pane, 是tab page 下方的一个操作区, 一个tab 可以平铺多个pane.
也可以使用 pi专用的 desktop:
https://github.com/minghinmatthewlam/pi-gui
https://github.com/Jaxton07/percho
VS Code + AI coding agent 插件
vscode中有非常多的AI coding agent插件, 比如:
- Github copilot插件, vs code内置插件, 使用太复杂了, 我直接禁用了.
- Qwen Code Companion 插件, 也挺好的.
- Continue 插件, 我最喜欢的插件, 提供最佳的FIM(fill in middle) 代码补全功能(语义级的代码补全, 比LSP语法级更智能一些), 还有很多其他功能, 该公司已被cursor收购, 并且停止开发, 好在代码补全功能已经非常稳定.
- cline 插件: 这个是下载量最多的, 对标 claude code风格的, 我没有实际用过.
- pendant 插件: 基于pi agent, 我没有实际用过
- kilo code 插件: 官方说自己支持FIM(fill in middle) 代码补全功能, 据说不太好用.
vscode 中在使用AI coding agent如果某个动作执行时间过长, vscode 会碰到弹窗, 弹窗内容为: you can reopen or close the window or keep waiting.

抑制该窗口的弹出方法是:
Help → Developer: Toggle Developer Tools, 这要开发工具处于打开状态, 就不会有弹窗了. 如果嫌该工具占用屏幕, 可将开发工具的视图切成为dock模式, 这时就可以最小化开发工具窗体了.
另外如果碰到了vscode某个功能不work, 除了观察vs code的 output 底部页签, 也可以在开发者工具中查看console页签是否有深层的报错信息.
VS Code 的 Continue 插件
Continue (AI助手类, 对标 cursor工具, 该公司已被cursor收购, 并且停止开发), 特点有:
- 配置简单, 一个 config.yaml 搞定
- 支持语义级的代码补全, 使用 tab 键盘补全, 不仅是代码补全, markdown 文档也能补全, 要求模型支持FIM(fill-in-middle)自动补全功能
- 可以将编辑器选中选中区域使用 inline edit 方式进行编辑, 和 inline chat方式进行对话
- 支持自定义 prompt(使用@作为前缀), 自定义slash命令(使用/作为前缀)
- 支持chat/plan/agent三种模式, plan会启用mcp tool(只读), agent会启动mcp tool+ builtin tool(读写)
- 文档网站 https://docs.continue.org.cn/customize/overview
- 提供 continue 侧边栏, 用于下达chat/plan/agent任务
- 提供 continue log 底边栏, 能看出每一次和大模型交互的内容/消耗的token等信息
- 关于 Continue 的 auto complete ghost text功能: https://aicoderscope.com/blog/continue-dev-autocomplete-not-working-fix-2026/
vscode的 settings.json 增加如下配置, 主要是禁用 copilot 插件, 启用 continue的一些特性.
"files.watcherExclude": {
"**/node_modules/**": true,
"**/.git/objects/**": true,
"**/.git/subtree-cache/**": true,
"**/dist/**": true,
"**/build/**": true,
"**/coverage/**": true,
"**/.next/**": true,
"**/.cache/**": true,
"**/.venv/**": true,
"**/__pycache__/**": true,
"**/*.log": true,
},
"editor.minimap.enabled": false,
"chat.disableAIFeatures": true,
"editor.inlineSuggest.enabled": true,
"editor.tabCompletion": "on",
"continue.enableNextEdit": false,
"continue.enableTabAutocomplete": true,
"continue.showInlineTip": true,
"continue.enableConsole": true,
"continue.disableQuickFix": false,
"continue.pauseCodebaseIndexOnStart": true,
deepSeek 4.1 是一个全功能的模型, 无需额外配置即支持FIM自动补全, 下面是 config.yaml 的配置, 更多信息, 可查看官方文档 https://docs.continue.dev/reference
其实一些特制的 coder 小模型对于代码补全来说已经非常够用, 比如 continue 官方推荐的 qwen2.5-coder:7b 或 qwen2.5-coder:1.5b , 本地使用 ollama 就可以跑起来, 不需要消耗deepseek API额度.
continue 不同功能推荐的模型清单:
https://docs.continue.dev/customize/models#recommended-models
Continue 的模型支持多种工作模式:
- Agent 工作模式对应的模型至少需要开启 chat + apply + edit
- Chat 工作模式对应的模型至少需要开启 chat
- Plan 工作模式对应的模型至少需要开启 chat + apply
Chat / Plan / Agent 的思考核心都高度依赖 chat role 的模型质量。Agent 在修改代码时,如果配置了独立的 apply role,能够显著提升大文件修改效率。
使用 deepSeek 4.1 作为全能模型的配置 config.yaml:
name: Main Config
version: 1.0.0
schema: v1
models:
- name: DeepSeek flash
provider: deepseek
model: deepseek-flash
apiKey: sk-xxxxxxxxx
roles:
- autocomplete # 用于行内实时 Tab 自动补全
- chat # 用于侧边栏日常对话与问答
- edit # 用于行内代码重构与修改 (Ctrl/Cmd + I)
- apply # 用于自动将代码应用到文件中
defaultCompletionOptions:
contextLength: 128000 #模型全局支持的最大上下文长度, 128K
maxTokens: 12800 #最多生成的token, 如果仅用于补全, token 还可以设置的更小一些
temperature: 0.1 #温度, 区间0~1
reasoning: false # 是否启用推理
autocompleteOptions: #针对 autocomplete 的额外设置
maxPromptTokens: 1024 # 最大提示词长度, 自动补全没有必要使用太多token
disable: false # 是否禁用该模型的autocomplete功能
modelTimeout: 300 # 模型响应超时时间(关键数字),减少卡顿
debounceDelay: 250 # 输入停顿多少毫秒后才允许触发补全,可减少卡顿
prefixPercentage: 0.3 # 前缀文本占比(关键数字)
maxSuffixPercentage: 0.3 # 允许补全时读取光标后30%的代码作为后缀
# Custom template for autocomplete using Mustache syntax
#template: |
# <|fim_prefix|>{{{prefix}}}<|fim_suffix|>{{{suffix}}}<|fim_middle|>
onlyMyCode: true # 是否仅基于用户自己的代码生成补全
useRecentlyEdited: true #includes recently edited files in context.
useRecentlyOpened: true #includes recently opened files in context.
#https://docs.continue.dev/reference
使用 ollama 下载并配置模型 qwen2.5-coder:1.5b
# windows上配置 OLLAMA_MODELS 环境变量为 D:\ollama\models
D:\my_workspace\OLLAMA_MODELS\
ollama pull qwen2.5-coder:1.5b
ollama list
ollama run qwen2.5-coder:1.5b
使用 deepSeek 4.1 作为主模型, 本地qwen2.5-coder作为自动补全模型的配置 config.yaml:
name: Main Config
version: 1.0.0
schema: v1
models:
# 专用于 chat 等高级功能
- name: DeepSeek flash
provider: deepseek
model: deepseek-flash
apiKey: sk-
roles:
# - autocomplete # 用于行内实时 Tab 自动补全
- chat # 用于侧边栏日常对话与问答
- edit # 用于行内代码重构与修改 (Ctrl/Cmd + I)
- apply # 用于自动将代码应用到文件中
defaultCompletionOptions:
contextLength: 128000 #模型全局支持的最大上下文长度, 128K
maxTokens: 12800 #最多生成的token, 如果仅用于补全, token 还可以设置的更小一些
temperature: 0.1 #温度, 区间0~1
reasoning: false # 是否启用推理
autocompleteOptions: #针对 autocomplete 的额外设置
maxPromptTokens: 1024 # 最大提示词长度, 自动补全没有必要使用太多token
disable: false # 是否禁用该模型的autocomplete功能
modelTimeout: 300 # 模型响应超时时间(关键数字),减少卡顿
debounceDelay: 250 # 输入停顿多少毫秒后才允许触发补全,可减少卡顿
prefixPercentage: 0.3 # 前缀文本占比(关键数字)
maxSuffixPercentage: 0.3 # 允许补全时读取光标后30%的代码作为后缀
# Custom template for autocomplete using Mustache syntax
#template: |
# <|fim_prefix|>{{{prefix}}}<|fim_suffix|>{{{suffix}}}<|fim_middle|>
onlyMyCode: true # 是否仅基于用户自己的代码生成补全
useRecentlyEdited: true #includes recently edited files in context.
useRecentlyOpened: true #includes recently opened files in context.
#https://docs.continue.dev/reference
# 专用于tab 自动补全的模型
- name: qwen2.5 coder
provider: ollama
model: qwen2.5-coder-1.5b
roles:
- autocomplete # 用于行内实时 Tab 自动补全
defaultCompletionOptions:
contextLength: 1280 #模型全局支持的最大上下文长度, 1280
maxTokens: 256 #最多生成的token, 如果仅用于补全, token 还可以设置的更小一些
temperature: 0.1 #温度, 区间0~1
reasoning: false # 是否启用推理
autocompleteOptions: #针对 autocomplete 的额外设置
maxPromptTokens: 1024 # 最大提示词长度, 自动补全没有必要使用太多token
disable: false # 是否禁用该模型的autocomplete功能
modelTimeout: 500 # 模型响应超时时间(关键数字),减少卡顿
debounceDelay: 250 # 输入停顿多少毫秒后才允许触发补全,可减少卡顿
prefixPercentage: 0.3 # 前缀文本占比(关键数字)
maxSuffixPercentage: 0.3 # 允许补全时读取光标后30%的代码作为后缀
# Custom template for autocomplete using Mustache syntax
# template: |
# <|fim_prefix|>{{{prefix}}}<|fim_suffix|>{{{suffix}}}<|fim_middle|>
onlyMyCode: false # 是否仅基于用户自己的代码生成补全
useRecentlyEdited: false #includes recently edited files in context.
useRecentlyOpened: false #includes recently opened files in context.
#https://docs.continue.dev/reference
Autocomplete不工作:如何修复?
https://aicoderscope.com/blog/continue-dev-autocomplete-not-working-fix-2026/
按以下步骤排查,确保所有配置正确:
- 检查“Enable Tab Autocomplete”设置是否勾选(VS Code:状态栏Continue按钮;JetBrains:Settings→Tools→Continue);
- 确认已下载Ollama,且执行ollama run qwen2.5-coder:1.5b验证模型已成功下载;
- 关闭其他代码补全工具(如Copilot),避免冲突;
- 查看日志定位错误:
- VS Code:cmd/ctrl + shift + P → “Toggle Developer Tools” → “Console” tab;
- JetBrains:查看 ~/.continue/logs/core.log;
- 检查VS Code设置:确保"editor.inlineSuggest.enabled"设为true(通过cmd/ctrl + ,搜索设置)。
OpenSpec/superpowers/SpecKit
SDD 对于AI编码来说至关重要, 防止AI跑偏.
实战项目的参考规范
https://github.com/OliverAAAAA/ai-coding-java-springboot-skills/blob/main/README.md
https://github.com/forztf/open-skilled-sdd

浙公网安备 33010602011771号