我的 AI 编程工作台:工具、模型与基础配置

开篇

开始使用 AI 编程后,很多人的桌面会迅速变成这样:

  • 浏览器里开着多个 AI 对话窗口。
  • 编辑器里装了好几个代码助手。
  • 终端里偶尔运行一个自动化 Agent。
  • 收藏夹里保存了很多模型、插件和 Prompt。

工具越来越多,真正的问题却没有减少:

  • 写需求时,不知道该打开哪个工具。
  • 让 AI 改代码时,担心它不了解项目上下文。
  • 遇到复杂问题时,不知道该优先使用快速模型还是深度推理模型。
  • 配置换了一次又一次,最终还是回到临时复制、临时提问。
  • 密钥、日志和代码片段散落在不同地方,既不高效也不安全。

我后来意识到,AI 编程最重要的不是"拥有多少工具",而是建立一个稳定的工作台。

这里的工作台不是某一个软件,而是一套能够重复使用的配置:

text 复制代码
任务入口
  ↓
项目上下文
  ↓
模型分工
  ↓
代码执行与验证
  ↓
知识沉淀

本文分享的是一套面向中级开发者的最小 AI 编程工作台。

它不依赖某个具体品牌,也不要求一次配置很多工具。你可以用现有工具替换其中的任意一层。

本文不会讨论什么

为了避免把"工作台"写成一份工具广告,先说明本文不会讨论的内容:

  • 不做工具或模型的能力排名。
  • 不要求同时安装多个编辑器插件。
  • 不把 Agent 自动改代码当作默认工作方式。
  • 不把生产环境密钥、用户隐私数据或未脱敏日志发给 AI。
  • 不认为更贵、更慢的模型一定适合所有任务。

这篇文章的目标是:

用最少的层次,搭一套能够持续使用、容易验证、方便迁移的 AI 编程工作台。

一、为什么需要"工作台",而不只是一个 AI 工具

单个 AI 工具通常只能解决一个局部问题。

例如:

  • 对话窗口适合讨论需求、方案和报错。
  • IDE 助手适合阅读当前文件、修改小范围代码。
  • 终端型 Agent 适合执行多文件修改、运行命令和生成脚手架。
  • 文档库适合保存项目背景、规范和可复用 Prompt。

如果这些工具之间没有明确分工,就很容易出现两种情况:

text 复制代码
情况一:所有问题都丢进对话窗口
  ↓
上下文越来越长
  ↓
答案越来越泛
  ↓
最终仍然要自己重新整理
text 复制代码
情况二:所有改动都交给 IDE 或 Agent
  ↓
修改范围越来越大
  ↓
项目规则没有说清
  ↓
测试和审查压力反而增加

稳定的工作台应该让不同工具各自做擅长的事:

工作层 主要职责 适合的任务
对话层 思考、澄清、比较方案 需求拆解、技术方案、排障假设
IDE 层 阅读、局部编辑、即时反馈 当前模块理解、小范围修改、代码解释
终端层 执行、批处理、验证 运行测试、生成文件、跨文件修改
模型层 按任务复杂度分工 快速问答、代码阅读、深度设计
项目上下文层 提供规则和可复用信息 架构、规范、接口、测试与安全边界

工作台的价值,不是让 AI 自动完成一切。

而是让每一次协作都有明确入口、足够上下文和验证出口。

二、我的工作台遵循的 4 个原则

1. 一个任务,只保留一个主要入口

一个任务开始时,先决定它最适合从哪里进入:

  • 需求不清晰,先进入对话层。
  • 需要理解当前模块,先进入 IDE 层。
  • 需要多文件执行和测试,先进入终端层。
  • 需要整理规范或复盘,先进入文档层。

不要在多个工具中同时开始同一个任务。

否则很容易产生多个版本的结论、代码和待办事项。

2. 默认使用最小权限和最小上下文

AI 不需要知道整个项目,才能帮助你解决一个函数级问题。

提供上下文时,建议从小到大逐步增加:

text 复制代码
任务描述
  ↓
相关文件和类型定义
  ↓
已有规则与测试
  ↓
必要的调用链和日志

这样既能减少无关信息干扰,也能降低敏感信息泄露的风险。

3. 模型按任务分工,不按"谁最强"分工

可以把模型简单分成三类用途:

模型类型 更适合的任务 使用重点
快速模型 代码解释、摘要、简单脚本、格式整理 追求反馈速度
主力模型 模块实现、测试设计、常规排障 追求稳定和性价比
深度推理模型 架构比较、复杂 Bug、跨模块设计 追求思考质量和风险分析

不需要为每一类任务准备多个模型。

先明确一个默认模型,再为复杂设计或高风险排障保留一个深度模型,通常就足够了。

4. 所有 AI 输出都要回到代码和测试中验证

无论输出来自对话窗口、IDE 还是终端 Agent,都不要把它当作最终交付。

你的工作台必须保留这条闭环:

text 复制代码
AI 提供建议或代码草稿
  ↓
开发者审查改动范围
  ↓
运行格式化、静态检查和测试
  ↓
查看差异并确认业务逻辑
  ↓
提交或继续迭代

没有验证出口的工作台,只是一个更快的内容生成器。

三、搭建工作台时,先配置这 5 个核心组件

1. 任务对话区:用于澄清,而不是长期存放所有信息

对话区适合处理还没有进入代码编辑阶段的问题,例如:

  • 把模糊需求整理成待确认问题。
  • 比较两个技术方案的利弊。
  • 根据日志整理排障假设。
  • 为一次代码修改设计测试矩阵。

每次开启对话,建议先给出固定的任务卡:

text 复制代码
任务目标:
[要实现、排查或重构什么]

当前阶段:
[需求澄清 / 代码阅读 / 方案设计 / 实现 / 测试 / 排障]

已知事实:
[已经确认的业务规则、错误现象、相关模块]

待确认问题:
[目前还不清楚的地方]

本轮希望得到的结果:
[问题清单 / 方案对比 / 测试矩阵 / 代码草稿]

这比直接问"怎么做"更容易得到可审查的结果。

2. IDE 协作区:用于理解当前上下文和完成小范围修改

IDE 是代码修改的主阵地。

在这里使用 AI 时,建议遵守两个边界:

  1. 先阅读相关文件,再请求修改。
  2. 优先让 AI 处理小范围、可验证的改动。

例如,与其说:

text 复制代码
帮我重构整个订单模块。

不如说:

text 复制代码
请只审查当前 Service 中的 cancelOrder 方法。

要求:
1. 不修改其他文件。
2. 列出输入校验、状态流转和异常处理问题。
3. 区分必须修改和建议优化。
4. 给出最小修改方案。

范围越清楚,审查和回滚就越容易。

3. 终端执行区:用于把建议变成可验证结果

终端型工具最适合执行固定、重复、可检查的动作:

  • 创建规范的文件和目录。
  • 运行测试、静态检查和格式化。
  • 搜索调用链和配置项。
  • 批量修改明确模式的文本。
  • 输出改动摘要和待验证项。

但终端自动化不应该跳过测试。

建议把常用验证命令整理为项目脚本,并要求 AI 在执行后报告:

text 复制代码
1. 修改了哪些文件。
2. 每处修改的目的。
3. 执行了哪些检查。
4. 哪些检查通过,哪些没有执行。
5. 还需要人工确认什么。

只要保留这份报告,即使工具自动化程度提高,开发者也不会失去对改动的掌控。

4. 模型分工区:为速度、成本和复杂度留出选择

"所有任务都使用同一个模型"并非一定错误,但容易造成两种浪费:

  • 简单工作使用了过度复杂的推理,等待时间太长。
  • 高风险问题使用了过快的回答,遗漏关键约束。

可以用一个简单策略管理模型:

text 复制代码
简单、重复、结果容易检查
  → 使用快速模型

常规开发、测试设计、代码审查
  → 使用主力模型

跨模块设计、复杂排障、重要技术决策
  → 使用深度推理模型,并要求列出假设和风险

模型不是越多越好。

关键是每次使用前,知道自己需要的是"更快得到草稿",还是"更仔细地分析问题"。

5. 项目上下文区:让 AI 每次都能拿到正确的规则

这是最容易被忽略、但最值得优先配置的一层。

建议在项目里维护一份 AI 也容易阅读的上下文目录:

text 复制代码
docs/
  ai/
    project-overview.md
    architecture.md
    coding-conventions.md
    testing-guide.md
    security-boundaries.md
    task-template.md

这些文件不需要写得很长。

最重要的是回答常见问题:

文件 至少应包含什么
project-overview.md 项目目标、技术栈、启动方式、目录说明
architecture.md 模块职责、分层边界、核心调用链
coding-conventions.md 命名、异常、日志、依赖和提交规范
testing-guide.md 测试命令、测试类型、关键覆盖要求
security-boundaries.md 脱敏规则、权限边界、禁止暴露的信息
task-template.md 任务背景、规则、验收和输出要求模板

例如,project-overview.md 可以从最小版本开始:

md 复制代码
# 项目概览

## 技术栈
- 后端:Java + Spring Boot
- 数据库:MySQL
- 测试:JUnit

## 目录职责
- controller:HTTP 请求和参数校验
- service:业务编排
- repository:数据访问

## 本地验证
- 运行单测:[填写命令]
- 运行静态检查:[填写命令]

## 注意事项
- 金额统一以分存储
- 业务错误统一使用领域异常
- 不要在日志中打印用户隐私字段

这类上下文文件既服务于 AI,也服务于新同事和未来的自己。

四、基础配置中最容易忽略的安全边界

AI 编程工作台必须从一开始就把安全边界配置进去。

以下信息默认不应直接发送到外部模型或第三方工具:

  • 生产环境密钥、Token、Cookie 和私钥。
  • 用户手机号、身份证、地址等隐私数据。
  • 未脱敏的线上日志和数据库导出。
  • 客户合同、内部财务信息和未公开业务策略。
  • 包含敏感地址、账号和权限信息的配置文件。

建议保留以下习惯:

text 复制代码
提交代码前
  → 检查 .env、密钥和本地配置是否被忽略

发送日志前
  → 删除用户标识、Token、完整请求体和内部地址

提供代码前
  → 只提供与问题相关的最小片段

使用自动化工具前
  → 确认它能访问哪些目录、能执行哪些命令

安全不是在出现问题后再补的功能。

它应该是工作台的默认配置。

五、30 分钟搭建你的最小 AI 编程工作台

不需要等到换电脑或新项目。

你可以用半小时完成下面这套最小配置:

  1. 确定一个主入口。 选择你最常用的对话工具或 IDE 助手,不同时维护多个主要入口。
  2. 准备两个模型档位。 一个用于日常快速协作,一个用于复杂设计和排障。
  3. 写一份项目概览。 先完成 project-overview.md,把技术栈、目录和验证方式写清楚。
  4. 保存一个任务模板。 每次提问前写清任务目标、上下文、规则和验收标准。
  5. 固定验证动作。 找出项目中的测试、静态检查和格式化命令。
  6. 建立复盘位置。 每周记录一次有效 Prompt、失败案例和可复用清单。

可以用这份清单检查自己的工作台是否已经可用:

text 复制代码
[ ] 我知道每类任务应该从对话、IDE 还是终端进入。
[ ] 我有一个默认模型和一个处理复杂任务的模型。
[ ] 我能向 AI 提供项目概览、规范和测试方式。
[ ] 我不会在对话中暴露密钥、隐私数据和未脱敏日志。
[ ] 我会检查 AI 修改的文件和差异。
[ ] 我有固定的测试、静态检查或格式化验证命令。
[ ] 我会保存有效的 Prompt、检查清单和复盘记录。

这套配置的目标不是追求"全自动"。

而是让你在每一次真实任务中,都能更快进入状态、更少重复解释项目背景,并更容易验证 AI 的输出。

六、总结

我的 AI 编程工作台,不是一张工具清单,而是一套五层结构:

  1. 用对话层澄清问题和比较方案。
  2. 用 IDE 层理解当前代码并完成小范围修改。
  3. 用终端层执行可验证的自动化动作。
  4. 用模型分工匹配任务复杂度。
  5. 用项目上下文层提供规则、规范和安全边界。

当这五层逐渐稳定后,即使你更换工具或模型,核心工作方式也不会被打乱。

真正可持续的 AI 编程效率,来自清晰的任务入口、干净的项目上下文、可靠的验证闭环和不断积累的工程资产。

下一篇文章,我们来解决一个更具体的问题:

一条高质量编程 Prompt,应该包含什么?


如果这篇文章对你有帮助,欢迎点赞、收藏、关注专栏。

也欢迎在评论区留言:你的 AI 编程工作台里,最常用的是对话、IDE 还是终端?


✍坚持原创,求关注,点赞,收藏

相关推荐
CHAM_GJ1 小时前
提交之间——当代码由对话生成,版本控制的对象变了
ai编程·双向可追溯·意图留存
Web3_Basketball2 小时前
多模态 RAG 图文混合检索实战:把日调用 10 亿次的 WeMM-Embedding 搬进自己项目
ai编程
wangruofeng2 小时前
iPhone 18 系列全解读:折叠屏 Duo、A20 Pro,和一份最高 2.65 万的账单
aigc·apple
happyness443 小时前
AI时代的软件工程:软件开发正在进入一个全新的时代
大数据·ai编程
leeyi3 小时前
命令行里的平台:df_cli 都会什么(第108篇)
后端·aigc·agent
七牛云行业应用3 小时前
OpenCode 跑本地 Llama:编程 Agent 接入本地大模型的完整思路
人工智能·ai编程·llama
云雀衔光4 小时前
MCP + 应用生成:让 AI 直接产出可交互的应用
java·人工智能·测试工具·microsoft·交互·ai编程
必须会一定会4 小时前
DeepSeek-V4.1-Flash 内测 API 接入:模型 ID、OpenAI 兼容调用、图片格式与价格边界
人工智能·ai编程
蓝星空20004 小时前
GPT Image 2.5 生图模型已上线,支持 Flare 与 Sunburst 型号选择
前端·gpt·aigc·image2·imagen