我花了三天学 CodeBuddy CLI,发现 90% 的人根本不会用

“他们用 AI 编程,AI 也用他们——因为 AI 知道这些人只会点按钮。”

前两篇说了 WorkBuddy 和 CodeBuddy 的区别,又说了 8 个上手技巧。有人问我:CLI 值得专门写一篇吗?

值得。

因为大抵只有 10% 的人真的会用 CLI。剩下的 90%,大概还在 IDE 里点来点去。


先说安装

一行命令:

npm install -g @tencent-ai/codebuddy-code

装完之后,终端里就有了两个命令:codebuddy 和 cbc。

验证:

cbc --version

能打印版本号,就说明装好了。

踩坑提示:如果你用 nvm 管理 Node 版本,记得切到 Node 18+。低于 18 会报错。我当初就踩了这个坑——装完了死活跑不起来,查了半天才发现是 Node 版本问题。气笑了。


两种用法

第一种:问完就走。

cbc "帮我优化这个正则表达式"

第二种:交互模式。

cbc

直接敲 cbc,进入一个 REPL 界面。你可以跟它来回对话,逐步细化。

两种用法没有优劣。看场景。


管道:CLI 的杀手锏

这才是 CLI 真正厉害的地方。

它支持 Unix 管道——把别的命令的输出,直接喂给它分析。

例子一:分析 Git 提交历史

git log --oneline -20 | cbc "分析这些提交,找出可能的问题"

例子二:分析错误日志

cat error.log | cbc "分析这些错误,找出根本原因"

例子三:代码审查

git diff main | cbc "审查这些改动,检查安全和性能问题"

为什么管道重要?

因为管道意味着可编程调用。

你可以把这条命令写进脚本:

#!/bin/bash
# 每日代码审查脚本

TODAY=$(git log --since="midnight" --oneline)

if [ -n "$TODAY" ]; then
    echo "$TODAY" | cbc "审查今天的提交,列出潜在问题"
fi

把这个脚本加到 crontab,每天下班前自动跑一遍。

IDE 插件做不到这个。

我试过在 IDE 里搞自动化——基本上不可能。你得先打开 IDE,再打开对话窗口,再输入指令。CLI 呢?一条命令的事。

这大约就是”终端党”的优势罢——你不觉得麻烦,别人觉得麻烦。


四个常用场景

场景一:提交前审查

git diff --cached | cbc "审查这些改动,如果有明显问题就告诉我"

场景二:读陌生代码

cat some_module.py | cbc "解释这个模块的作用和关键函数"

场景三:跑测试分析结果

pytest tests/ 2>&1 | cbc "分析测试结果,定位失败的测试"

场景四:生成提交信息

git diff --cached | cbc "根据这些改动生成一段 commit message"

三个坑

坑一:上下文会爆。

CLI 的上下文窗口有限。聊了 50 轮之后,它开始”前说后忘”。

解法:定期开新会话。

坑二:大文件要小心。

把 1 万行的文件直接丢给它:

cat big_file.py | cbc "重构这个文件"

它会返回一堆东西,但大概率不是你想要的。

解法:只给它需要的部分。

head -100 big_file.py | cbc "重构这个函数"

坑三:有时候会卡住。

你输入问题,它半天不响应,报超时错误。

大约是网络问题。腾讯的服务器偶尔会抖。

解法:重试。或者换个时间用。


CLI vs IDE 插件

场景 选什么
写代码时需要补全 IDE 插件
需要在脚本里调用 CLI
需要处理管道输入 CLI
需要 CI/CD 集成 CLI
需要交互式对话 都行

它们是互补的,不是互斥的。


小结

CLI 的核心优势就一句话:它是可以被编程调用的。

你可以把它塞进管道、写进脚本、加到 CI/CD。它不是”对话窗口”,它是”工具”——跟 grep、awk、jq 一样,只是它能理解你说的话。

真正会用 AI 编程的人,大约都不会只在 IDE 里跟它聊天。

他们会把它变成工作流的一部分。

这便是 CLI 的价值罢。


关于码孖AI

码孖AI,专注 AI 工程化落地。我们相信:AI 不是来替代程序员的,是来帮程序员省时间的——前提是,你得会用。

关注我,持续更新实战踩坑指南。

觉得有用? 点个「在看」,分享给同样在 AI 落地路上挣扎的朋友。