<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>CLI on CAO ZUOHUA</title><link>https://caozuohua.github.io/tags/cli/</link><description>Recent content in CLI on CAO ZUOHUA</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Sun, 05 Jul 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://caozuohua.github.io/tags/cli/index.xml" rel="self" type="application/rss+xml"/><item><title>AI Agent 的 CLI 超能力：组合工具的思维与实践</title><link>https://caozuohua.github.io/posts/2026-07-05-ai-agent-cli-combo/</link><pubDate>Sun, 05 Jul 2026 00:00:00 +0000</pubDate><guid>https://caozuohua.github.io/posts/2026-07-05-ai-agent-cli-combo/</guid><description>&lt;blockquote&gt;
&lt;p&gt;真正的『AI 原生』不是只会调用模型 API，而是&lt;strong&gt;学会借 cmdline 能力反过来驾驭模型&lt;/strong&gt;。—— 来自 QPC 实践笔记&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2 id="引子原地踩坑与破局"&gt;引子：原地踩坑与破局&lt;/h2&gt;
&lt;p&gt;写 Agent 项目半年，发现两个现象：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;生产坑&lt;/strong&gt; ——&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;代码库 2k 文件，怎么快速撤离所有第三方 key？&lt;/li&gt;
&lt;li&gt;日活跃 agent 实例上百，如何一眼看清谁在泄露内存？&lt;/li&gt;
&lt;li&gt;高频需求：提取出所有对话里的意图标注。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;AI 间歇性失能&lt;/strong&gt; ——&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;模型擅长创造，不擅长精确执行。&lt;/li&gt;
&lt;li&gt;一次 agent 调用动辄 50k token，代价高昂。&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;真正的破局，不是让模型变聪明，而是&lt;strong&gt;把操作系统现成的精确能力用起来&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;下面展示 10 个实例，每个都是agent项目中频繁踩坑后找到的确定性答案。&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id="工具清单让你恍然大悟的不需要python场景"&gt;工具清单：让你恍然大悟的『不需要Python』场景&lt;/h2&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;命令&lt;/th&gt;
					&lt;th&gt;干嘛用&lt;/th&gt;
					&lt;th&gt;代替的 Python 操作&lt;/th&gt;
					&lt;th&gt;节省 token 效果&lt;/th&gt;
					&lt;th&gt;AI 友好度&lt;/th&gt;
					&lt;th&gt;成本效益&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;rg&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;搜代码 / 搜日志&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;open(file)&lt;/code&gt; + &lt;code&gt;re.findall&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;★★★★★&lt;/td&gt;
					&lt;td&gt;★★★★★&lt;/td&gt;
					&lt;td&gt;极高&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;fd&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;搜文件 / 批量处理&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;glob.glob&lt;/code&gt; + &lt;code&gt;os.path&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;★★★★☆&lt;/td&gt;
					&lt;td&gt;★★★★★&lt;/td&gt;
					&lt;td&gt;极高&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;jq&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;JSON 解析与过滤&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;json.load&lt;/code&gt; + &lt;code&gt;遍历提取&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;★★★★★&lt;/td&gt;
					&lt;td&gt;★★★★★&lt;/td&gt;
					&lt;td&gt;极高&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;bat&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;高亮代码查看&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;open&lt;/code&gt;, &lt;code&gt;syntax highlight&lt;/code&gt; 滚轮&lt;/td&gt;
					&lt;td&gt;★★★☆☆&lt;/td&gt;
					&lt;td&gt;★★★★☆&lt;/td&gt;
					&lt;td&gt;高&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;htop&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;系统进程监控&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;psutil&lt;/code&gt; + 表格输出&lt;/td&gt;
					&lt;td&gt;★★★★★&lt;/td&gt;
					&lt;td&gt;★★★★☆&lt;/td&gt;
					&lt;td&gt;中&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;fzf&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;模糊搜索交互&lt;/td&gt;
					&lt;td&gt;无&lt;/td&gt;
					&lt;td&gt;★★★☆☆&lt;/td&gt;
					&lt;td&gt;★★★☆☆&lt;/td&gt;
					&lt;td&gt;中&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;awk&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;结构化聚合&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;pandas&lt;/code&gt; 等价加载&lt;/td&gt;
					&lt;td&gt;★★★★★&lt;/td&gt;
					&lt;td&gt;★★★★☆&lt;/td&gt;
					&lt;td&gt;高&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;code&gt;sed -i&lt;/code&gt;&lt;/td&gt;
					&lt;td&gt;文件批量编辑&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;open()&lt;/code&gt;+写回+临时文件&lt;/td&gt;
					&lt;td&gt;★★★★★&lt;/td&gt;
					&lt;td&gt;★★★☆☆&lt;/td&gt;
					&lt;td&gt;高&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;blockquote&gt;
&lt;p&gt;✅ &lt;strong&gt;AI 友好度&lt;/strong&gt; 指的是工具的输出格式是否易于 agent 解析。&lt;code&gt;jq&lt;/code&gt; 和 &lt;code&gt;rg&lt;/code&gt; 的输出最干净，agent 直接接受一行不需要再清洗。&lt;/p&gt;</description></item></channel></rss>