标签归档:ClaudeCode

我的 AI Coding Guide

首发于白宦成的 Blog

最新更新于 2026 年 6 月 24 日

这个指南是我自己的 AI Coding 的经验总结,我认为在实际使用 AI Coding 的过程中,应该注意和遵循的规则。

精力管理

当你开始使用 AI Agent 来辅助编程后,你很快会发现,最大的瓶颈是你自己的管理范畴和你的精力管理。

1. Attention Is All You Need

AI 时代,信息的生产变得无比简单,这导致我们看到的信息、要处理的信息进一步爆炸。因此,如何更好地利用 AI Agent,降低我们的决策成本、提升我们的信息信噪比,让我们可以少做决策,做正确的决策。

2. Use the Strongest Model Where It Matters

使用你能接触到的最贵的模型来进行开发;能用 Claude Opus ,就不要用 GPT 5.5 XHigh;能用 GPT 5.5 XHigh,就不要使用 GLM 5.2 。

更贵的模型意味着对于你来说,可以更少的干预和决策,降低你对于 Agent 的管理成本。除非,某个任务对你来说,真的就是一句话任务,或者让他执行一个极其简单的任务。

对于格式化、批量替换、简单脚本、低风险机械任务,可以使用更便宜、更快的模型。

3. Prompt is Spec

你写给 Agent 的 Prompt,本质上就是临时规格说明。模糊的 Prompt 会生产模糊的实现。一个好的任务应该包含:背景、目标、非目标、修改范围、验收标准、验证命令和风险边界。

不要害怕给 Agent 长的 Prompt,相反,你应该尽可能榨干自己的脑子当中的想法,把和你的需求相关的事情全部写下来,即使只是很简单的个人倾向性的描述,也可以有助于帮你更快的完成自己的目标。

4. Plan Before Your Build

所有的工作,除了简单的日常动作(就是那种你觉得丢给随便哪个模型都能干的事情),只要是正常的工程工作(Feat / Bug / CI),都要使用 Plan Mode 先聊一轮。目标是在过程中澄清你的需求,避免似是而非的需求进入到研发队列,浪费你的时间和精力。

把主要精力放在 Review Plan、Review Diff、Review Test Result 和风险项上,而不是逐行 Review Agent 写的每一行代码。你的精力终将不足以支撑传统意义上的全量 Code Review。

对低风险、可逆、影响面小的细节,可以降低审查强度;对数据、权限、计费、迁移、鉴权、删除、生产发布等高风险改动,必须重点审查。

5. Keep YOLO, But in a Reversible Sandbox

作为 AI Agent 的管理者(Manager),你要做的是抓大放小,何为大?架构设计、方案设计;何为小?具体的细节操作的命令。保持使用 YOLO 模式(Codex 的 dangerously skip permissions 模式),可以帮助你减少微操。

但是,不是无脑 YOLO。你需要确保即使是 Agent 在 YOLO 模式下发挥所造成的最灾难的状态,你是可接受的。

可逆沙盒至少意味着:代码已经进入版本控制;Agent 工作在独立 branch 或 worktree;没有生产密钥;没有生产数据库写权限;危险操作有备份或 dry run;部署、数据迁移、删除类操作需要人工确认。

工程管理

和 Vibe Coder 不同,作为工程师,我需要交付的是有价值的产品。所以,还是要让工作尽可能的 Under Control,避免 Coding Agent 帮你办离职。

6. Always Use Version Control and Remote Backup

无论你的项目大还是小,都要上一个版本控制工具。可以是 Git ,可以是 SVN,也可以是 hg,但一定要有。你需要让 Agent 始终工作在版本控制工具的范畴内,即使出现了问题,你也能快速回滚。

此外,一定要放在云上,这样即使是最极端的灾难情况 —— AI Agent 删除了你的所有代码,你也可以从云端找回一个历史的版本。

此外,用好 worktree 之类的功能。

7. Small Batches

让 Agent 以功能 、特性为维度小步快跑,而不是一次性憋个大的。这对于要确认的你不友好;对于 Agent 也不友好。模型的注意力也会涣散,也会出现遗漏重点的问题。

小的步骤配合着版本管理工具,可以帮助你更快的迭代,同时,更稳。

8. Protect Production

除非你知道你在让 Agent 做什么,不然不要试图让 Agent 直接操作你的生产环境;如果实在不知道怎么操作,最好的办法是让 Agent 给你一个操作手册,你跟着操作手册去执行,并要求 Agent 解释每个行为的意义和价值。

我猜你不会想删库跑路的吧?

快速反馈

9. Fail Fast & Feedback Fast

尽可能早的报错,不管是代码,还是逻辑;尽早报错可以帮助 AI Agent 更快的发现问题,从而更快的解决问题。而不是到线上才暴露问题。

从这个视角来看,Typed Lang is better than non-typed lang。Golang、Rust、TypeScript 这类有强静态反馈的技术栈,更适合 AI Agent 协作;纯 JavaScript 这种反馈更晚、更依赖运行时和人工约束的方案,会显著增加 Agent 协作成本。

除此之外,为你的 Coding Agent 构建尽可能多的反馈回路,让他除了写代码之外,还可以通过反馈回路来获得反馈,优化自己的代码和实现。这些反馈回路包括:

  • Type Check
  • Lint
  • Format
  • Testing
  • Cyclomatic Complexity

让你的 Agent 在完成工作后,执行这些工具,尽快获得反馈,并自我修复,避免 Bad code smell 进入你的代码仓库。

git hook 就是一个不错的选择:pre-commit 搞定 type check、lint、format;pre-push 搞定 testing 和 Cyclomatic Complexity。

10. Work With CI/CD

尽可能构建你自己的项目的 CI/CD流程,除了本地的 hook 和检查,你还需要更加强制的校验,确保符合要求的代码才能进入你的代码仓库主分支。

确保你的 CI/CD 流程包含测试、e2e、复杂度、覆盖率分析、安全扫描,让你的代码尽可能的安全。

CI 负责阻止不合格代码进入主分支;CD 负责让可发布版本以可审计、可回滚的方式进入环境。

代码是你的,不是 Agent 的。

11. KISS(Keep it Simple Stupid)

AI Agent 在写代码时,会很容易出现复杂,你无法理解的写法,导致代码对你而言,彻底无法维护。这个是一定要避免的,你需要学着控制你的项目的复杂度,让 Agent 写完后跑 Cyclomatic Complexity 检查,超标必须重构,避免项目过于复杂,导致你无法维护。

即使你的代码是 Agent 写的,更加简单易于理解的逻辑,也会让你获得更好的结果。毕竟,你可能绝大多数的时候都能借助 AI Agent 搞定工作,但最终还是要确保自己有救济途径;可以接管 Agent 的工作。

总结

使用 AI Agent 编程,本质上是一次角色转变:你不再是那个逐行写代码的人,而是那个定义目标、划定边界、审查结果的 Manager。

Agent 的能力上限,取决于你给它的上下文质量;你的精力上限,取决于你把注意力放在哪里。

把决策权留给自己,把执行权交给 Agent,把验证权交给工具链。这三件事做对了,你的生产力才真正被放大——而不是被 Agent 带着跑。

代码是你的,不是 Agent 的。

一日一技:使用 Claude Code Usage Monitor 做个用量大屏

你的 Claude Code 中 CCUsage 来检测当前对话用量 中,我介绍了如何在 Claude Code 中加入一个统计 UI,实现展示内容。

但他的分析主要还是一边修改代码一边看。如果你和我一样,平时会开多个窗口来干活,这个时候看每个窗口的统计就有点累了,而 ccusage 展示的表格的方式又不够有趣,这个时候,你就可以考虑使用 Claude Code Usage Monitor 来做个监控大屏。

安装

如果你和我一样,使用 uv 来管理你的 Python 环境,那么你可以执行如下代码,来安装,并启动 Claude Code Usage Monitor。

# Install directly from PyPI with uv (easiest)
uv tool install claude-monitor

# Run from anywhere
claude-monitor  # or cmonitor, ccmonitor for short

或者,如果你喜欢用 pip,则可以执行如下命令

# Install from PyPI
pip install claude-monitor

# If claude-monitor command is not found, add ~/.local/bin to PATH:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc  # or restart your terminal

# Run from anywhere
claude-monitor  # or cmonitor, ccmonitor for short

用法

安装完成后,你就可以直接执行 claude-monitor 来启动 Claude Code Usage Monitor 了。不过,为了让他更精准的使用,我推荐你可以执行一些简单的命令,来优化其展示。

界面参数说明

Claude Code Usage Monitor 有一个很好的点是,他提供了很多监控和预测的能力,特别是现在 Anorthic 限制了每日的用量,并设定了重置时间, 你可以基于监控大盘,评估你大概什么时候会用量限制,就可以休息休息,等他重置后再干啦~

plan 设置监控额度

你可以在启动的时候,设置 --plan max20 来将你的账号监控设置为你的监控额度为 20x 的 Max,从而方便根据你的账号的额度,监控用量,避免超量;

claude-monitor --plan max20

这个选项除了支持 max20 还支持 pro,max5custom,你可以根据自己的实际情况选择。

一日一技:在你的 Claude Code 中引入 CCUsage,统计你的每日 ClaudeCode 消耗

在使用 Claude Code 时,如果你使用的是自己的 Claude 订阅登录的,那么大部分时候,你不太需要关心你的使用成本;但除了使用 Claude 订阅,还有不少人是使用 Claude API 或者是 Claude 中转站点来使用订阅的,使用不同的模型的成本不同,很有可能会让你发现,一下子跑完了自己的所有余额和预算,因此,你需要更加关注自己的使用情况。

安装

你可以直接执行 npm install -g ccusage 来安装 CCUsage,或者可以选择使用 npx 来执行,比如直接执行 npx ccusage 就可以执行了。

用法

用法 1 :直接在命令行中查看

直接在命令行中执行 npx ccusage,会自动为你展示出最近几天的消耗量,并按日进行展示。比如,你可以看到我最近已经消耗了 90 美元的模型。

用法 2 :基于项目查看

如果你和我一样,同时使用 CC 开发多个项目,那么你可能也会有像我这样按项目统计成本消耗的需求。你可以执行 npx ccusage -i 来展示 by 项目查看。这样就可以快速的统计不同的项目的成本消耗了。

用法3 : 将 CCUsage 配置到 Claude Code 的状态栏中实时观测

如果你希望在使用 Claude Code Vibe Coding 的时候,可以随时查看你的消耗状态,则可以考虑将 CCUsage 配置到你的 Claude Code 当中。

使用编辑器打开 ~/.claude/settings.json ,在其中添加如下代码,即可实现在状态栏中实时展示消耗情况。

"statusLine": {
  "type": "command",
  "command": "npx ccusage statusline"
}

添加后的完整效果是这样的

配置完成后,重启你的 Claude Code,你会看到如下这样的输出。

原理解释

CCUsage 是通过读取你本地的 ~/.claude/projects 下的文件来完成分析的。

在每个 JSONL 文件中记录了你的对话时间,以及具体的消耗,就可以据此,计算出 TOKEN 消耗。再配合 LiteLLM 所记录的不同模型的 Token Price,计算出你的具体 Token 用量。

不过也因为是本地文件统计,它只能统计你在当前设备上的消耗,而不能统计你在别的设备上的消耗。

如果你需要更进一步的统计你所有设备上的消耗,则需要通过在云端建设中转节点来完成。

纯本地分析,可以让你更加放心的使用 CCUsage 来进行分析。

源项目

源项目地址:https://github.com/ryoppippi/ccusage