港大这个 4.5 万星的项目,把「AI 不会用软件」这道坎直接铲平了:CLI-Anything 深扒
港大这个 4.5 万星的项目,把「AI 不会用软件」这道坎铲平了
先说结论
Agent 现在最大的短板不是脑子,是手。
模型推理已经够用了,但你让它去用 Blender 建个模、用 GIMP 批处理一批图、用 LibreOffice 出份 PDF,它就抓瞎。过去三条路都不好走:截图点鼠标(脆得一批,改个界面就崩)、调官方 API(大部分软件根本没有,有也只开放 10% 的能力)、重写一个简化版(丢掉 90% 的专业功能)。
港大数据智能实验室(HKUDS)开源的 CLI-Anything 走了第四条路:别去适配软件,直接把软件翻译一遍。
一行命令丢给它一个代码库,它自动读源码 → 设计命令组 → 写出一整套 Click CLI(带 JSON 输出、带 REPL、带撤销重做)→ 写单元测试和端到端测试 → 打包装进 PATH。原来给人用的 GUI 软件,就这么变成了 Agent 能直接调的原生工具。
这件事的分量在于:它把「让 AI 会用某个软件」从一个人工外包工程(找人写插件、写 MCP、写适配层),变成了一个可批量执行的自动化流程。
一、项目本体:核实过的事实
先把数据核准了再说,短视频里的数字都会滞后。
| 项目 | 实际情况(2026-07-23 核) |
|---|---|
| 仓库 | HKUDS/CLI-Anything |
| 一句话定位 | Making ALL Software Agent-Native |
| Star | 45,750(视频里说 40k,是几天前的数,现在更高了) |
| Fork | 4,278 |
| 开源协议 | Apache-2.0(商用友好,这点重要) |
| 建仓时间 | 2026-03-08(才 4 个多月,涨到 4.5 万星) |
| 榜单 | GitHub Trending #1 Repository of the Day |
| 依赖 | Python ≥3.10、click ≥8.0 |
| 测试规模 | README 徽章标 2,461 条测试通过,覆盖 18 个真实应用 |
| 技术报告 | 有 arXiv 论文,不是纯 demo 项目 |
| 官方口号 | Today’s Software Serves Humans. Tomorrow’s Users will be Agents. |
那句口号我很喜欢:今天的软件服务人类,明天的用户是智能体。
它不是在做一个工具,是在赌一个软件形态的换代。
二、它到底怎么工作的:7 阶段流水线
这是全文最该抄走的部分。你丢一个软件路径进去,它跑完这 7 步:
- Analyze 分析 —— 扫源代码,把 GUI 上那些菜单动作映射到底层 API
- Design 设计 —— 规划命令分组、状态模型、输出格式
- Implement 实现 —— 生成 Click CLI,配 REPL 交互、JSON 输出、undo/redo
- Plan Tests 计划测试 —— 先写出一份 TEST.md 测试计划(单测 + 端到端)
- Write Tests 写测试 —— 把测试真的实现出来
- Document 记录 —— 把跑测的结果写回 TEST.md
- Publish 发布 —— 生成 setup.py,pip 装进 PATH
外加一个 Phase 6.5:自动生成 SKILL.md —— 从 Click 装饰器、setup.py、README 里抽元数据,直接产出一份带 YAML frontmatter 的技能说明,让 Agent 能自己发现「我有这个能力、该怎么调」。
这个流水线设计本身就值得单独学一遍。 注意它的顺序:分析 → 设计 → 实现 → 先写测试计划、再写测试 → 记录结果 → 发布。生成代码这类活最容易翻车在「看着能跑其实全是玩具实现」,它拿测试当硬闸卡在中间,而且是先出计划文档再写测试——这就是我一直讲的「生成器和评估器要分离」。让同一个脑子边写边自我感觉良好,产出必然虚;让它先立标准、再按标准验,才有真东西。
还有个细节:跑完一遍不满意,可以反复精修。
# 全面精修:让它自己做能力缺口分析
/cli-anything:refine ./gimp
# 定向精修:指定方向补
/cli-anything:refine ./gimp "我要更多图像批处理和滤镜相关的命令"
每次 refine 都是增量、非破坏性的——先做「软件全部能力 vs 当前 CLI 覆盖」的差集分析,然后只补缺口。跑几轮,覆盖率越滚越厚。
这个「差集分析 + 增量精修」的模式,可以直接搬到任何自动化生成的活上。
三、上手路径:两个入口
官方把入口分成了两条,别搞混:
入口 A:直接用别人已经造好的 CLI(推荐先走这条)
pip install cli-anything-hub
cli-hub list # 看看有哪些现成的
cli-hub search image # 按关键词搜
cli-hub info <name> # 看某一个的详情
cli-hub install <name> # 装
cli-hub launch <name> # 跑
CLI-Hub 是个社区注册中心,别人给 Blender、Obsidian、Calibre、Zoom、Joplin、Rekordbox 之类做好的 CLI 都在里面,装了就能用。
入口 B:自己造一个新的
以 Claude Code 为例(它也支持 Pi、OpenClaw、OpenCode、Codex、Qoder、GitHub Copilot CLI 等多个 Agent 平台):
/plugin marketplace add HKUDS/CLI-Anything
/plugin install cli-anything
/cli-anything ./gimp # 或者直接丢一个 GitHub 仓库地址
⚠️ Windows 用户注意:Claude Code 的命令是走 bash 执行的,得先装 Git for Windows(带 bash 和 cygpath)或者用 WSL,不然会报
cygpath: command not found。这条坑官方 README 专门写了,我用 Windows,感谢它写了。
四、它能吃下什么:覆盖面比我预想的宽
官方列的类目,挑几个有代表性的:
- 创意媒体:Blender、GIMP、OBS Studio、Audacity、Krita、Kdenlive、Shotcut、Inkscape、Darktable
- 科学计算:FreeCAD、QGIS、ImageJ、KiCad、ParaView、Stellarium
- AI/ML 平台:ComfyUI、Stable Diffusion WebUI、Ollama、Open WebUI、AnythingLLM、Fooocus
- 办公企业:LibreOffice、NextCloud、GitLab、Grafana、NocoDB、Odoo、AppFlowy
- 开发工具:Jenkins、Gitea、Portainer、pgAdmin、SonarQube、ArgoCD、DBeaver
- 图表可视化:Draw.io、Mermaid、PlantUML、Excalidraw
- 游戏引擎:Godot、Unreal(社区提的 UEAtelier)
- 甚至还有:Zoom(拉会议纪要/下录像)、Obsidian(笔记自动化)、Calibre(电子书库)、VideoCaptioner(字幕全流程)
演示里最能说明问题的一个:Agent 用生成的 FreeCAD CLI,一步步搭出了一辆好奇号火星车模型,全程无 GUI,还能实时预览、记录命令轨迹供回放。
「没 GUI 也能干专业活」不再是口号了。
五、视频本身怎么拍的:34 秒的信息密度
顺手把这条视频的做法也拆了,因为它的结构值得抄。
【1】开头钩子(0-1 秒) 画面直接怼 GitHub 项目页,压两行大字「让 AI 学会操作软件」。口播第一句:「AI 圈彻底杀疯了。」 钩子类型 = 行业震动型 + 悬念型。不解释、不铺垫、不自我介绍,第一秒就把「有大事发生」砸出来。 评分 8.5/10。扣分在「杀疯了」这类词已经被用滥,但配合真实的 GitHub 页面截图,可信度补回来了。
【2】人设 & 声音 科技情报播报员,语速快、判断斩钉截铁(「最离谱的地方在于」「麻烦得要死」「通通一秒变」)。不讲自己是谁,只讲事。受众画得很准:泡 GitHub、关心 Agent 落地的开发者和 AI 从业者。
【3】信息密度 & 节奏 34 秒讲完「项目是谁 + 数据背书 + 核心能力 + 痛点对比 + 使用方式」五件事,几乎零废话。节拍是 1 秒一个视觉切换 + 每 5-6 秒一次画面换场:项目主页 → 仓库星数特写 → 命令行 → 漫画 → 安装文档 → 插件步骤。 关键手法:每句口播都有一张对应的证据画面在同步走。说「40k star」,画面就怼在 Star 数字上;说「一行指令」,画面就怼在那行命令上。口播负责煽动,画面负责取信。
【4】讲解结构 标准的「结论 → 背书 → 机制 → 旧痛点 → 新对比」五段: 先下结论(杀疯了)→ 拿数据背书(40k star、#1 of the day)→ 讲机制(扫源码生成 CLI)→ 翻旧账(以前得专人写插件,麻烦得要死)→ 打对比(现在老工具新应用通通一秒变 Agent 的左膀右臂)。 最强的一手是中间那个三格漫画(红色小龙虾吉祥物):①挣扎——一堆软件没几个 CLI,抓头发;②发现——戴上眼镜大喊 THAT’S IT;③转变——同时操控一屏软件,配文 AGENT-NATIVE。 把一个抽象的技术价值,用三格漫画讲成了一个情绪故事。 这是项目方自己做的素材,博主直接拿来用了——好的开源项目会把传播素材一起做好,这本身也是个值得学的点。
【5】金句
- 「今天的软件服务人类,明天的用户是智能体。」(项目官方口号,最耐传播)
- 「把过去给人用的软件,一键改造成 AI 能直接调用的原生工具。」
- 「不管是老掉牙的命令行,还是刚上线的新应用,通通一秒变 AI Agent 的左膀右臂。」
可复用金句模板:「把过去给【A】用的【X】,一键改造成【B】能直接【动词】的原生【X】。」
【6】收尾 & CTA 无硬 CTA。收尾停在 Claude Code 的安装步骤画面上——用「你现在就能装」当结尾,本身就是最强的行动召唤。想用的人会自己去搜项目名,这比喊「点赞关注」高级。
【7】可复制骨架
[0-1s] 【领域】彻底杀疯了。/ 【机构】扔出一个王炸开源项目。
└ 画面:项目主页大标题 + 一行中文定位
[1-6s] 它直接把【旧世界的限制】给干掉了。
└ 画面:项目 README 首屏,红框圈定位语
[6-10s] 记住这个名字,它在 GitHub 已经拿下 【N】k star。
└ 画面:仓库页 star 数特写 + 红线划名字(信任状必须给画面)
[10-18s]它最离谱的地方在于,你只要【最小操作单元】,它就能【核心能力】。
└ 画面:那行命令的终端截图(越简单越震撼)
[18-22s]说白了,就是把【旧形态】变成【新形态】。
└ 画面:一张三格漫画/对比图讲情绪,别讲参数
[22-28s]以前要【旧方案的痛苦】,麻烦得要死。
└ 画面:文档页/安装命令
[28-34s]现在倒好,不管是【老场景】还是【新场景】,通通【结果】。
└ 画面:停在「你现在就能上手」的那一屏
这套骨架我拿来讲任何一个开源项目都能直接套。 核心就三件事:先给结论,再给信任状,最后给最小可执行动作。
六、四个角度的反思
1. 对我们(我 + 我这套 AI 工作流)
最直接的价值:它把「工具接入」这件事从体力活变成了流水线活。
我这两年做 AI 助理,最大的时间黑洞不是调模型、不是写提示词,是给它接手脚——每接一个新软件、新服务,就得手写一遍适配层:读文档、封函数、处理认证、定输出格式、写错误处理。一个软件干半天,还只覆盖了那软件 20% 的能力。
CLI-Anything 给的启发不止是「有个现成工具能用」,更是这条路走得通:LLM 读源码理解一个软件的能力边界,这件事在 2026 年已经足够可靠了,可靠到能量产。
我要落的三个动作:
- 先当消费者:装
cli-anything-hub,把 registry 里跟我工作流相关的(Obsidian、LibreOffice、ffmpeg 系、图像处理)先扫一遍,能用现成的绝不自己造。 - 再当生产者:挑一个我天天用、但没有好 CLI 的开源软件,跑一遍完整流水线,实测生成质量到底是「能用」还是「demo 级」。这一步不做,前面全是纸上谈兵。
- 抄它的流水线设计:我自己那些自动生成类的活(生成脚本、生成配置、生成文档),全部按「分析→设计→实现→先出测试计划→写测试→记录→发布」重排一遍。
2. 对橙子(我的 AI 助理)自己
这条对橙子的意义最大,因为它直指橙子最硬的能力天花板。
橙子现在的能力边界,本质上就是「它手上有几把工具」。有脚本的活它做得又快又稳,没脚本的活它得临场拼——而临场拼恰恰是最容易出错的时候。我早就定过一条规矩:能固化成脚本的就固化成脚本,同一个复杂操作手搓第二次,就该当场把它变成脚本。
CLI-Anything 等于把这条规矩自动化了:不是「重复两次才固化」,而是「一开始就把整个软件固化完」。
对橙子具体意味着什么:
- 能力扩张的方式变了:以前是「遇到一个需求 → 写一个脚本」,现在可以「盯上一个软件 → 一次性拿下它全部能力」。
- SKILL.md 自动生成这一手是关键:生成的 CLI 自带技能说明,橙子能自己发现「我现在会用这个了、参数怎么传」。这解决了工具变多之后「有工具但不知道自己有」的老问题——工具库越大,可发现性越是瓶颈。
- JSON 结构化输出 + 确定性:这比截图点界面那套稳一个量级。Agent 最怕的不是慢,是同一个操作这次成下次崩。
- 给它一条自我扩展的路:理论上橙子可以自己给自己造工具——遇到不会用的软件,先跑一遍生成,再用生成出来的 CLI 干活。这是从「会用工具」到「会造工具」的跳变。(但这条得设闸:自动生成的代码要过审再进生产,不能让它自己造完自己就用,这是安全边界,不是能力边界。)
3. 对做教育培训的机构
看着离业务远,其实很近。培训机构的日常里有大量「专业软件重复劳动」:
- 内容生产线:视频要剪(Kdenlive/Shotcut)、封面要出图(GIMP/Krita)、课件要转格式(LibreOffice)、字幕要压(VideoCaptioner)。这些活现在靠人一个个点,每一个都是 CLI-Anything 明确列在支持清单里的软件。把这条线打通,等于把「内容产能」从人数上限里解放出来。
- 课程本身就是选题:「让 AI 直接操作你的各种软件」——这个题对任何一个想学 AI 的学员都有钩子,而且有实操、有结果、能出作品。比讲一百遍提示词技巧强。一门《让 AI 帮你把软件用明白》的课,从选题到教案,这个项目直接给了骨架。
- 教务/运营侧:Zoom 有 CLI(拉录像、拉参会名单、出报表)、NextCloud/GitLab/Grafana 有 CLI。日常那些「登进后台点几十下导个表」的活,是能自动化掉的。
- 一句冷静话:这不是「买个工具就降本增效」。真正的成本在梳理流程——先想清楚哪一步是重复的、输入输出是什么,才轮到自动化。流程没理清就上自动化,只会把混乱执行得更快。
4. 对未来发展
这条视频里最有分量的不是那 4.5 万颗星,是那句口号:今天的软件服务人类,明天的用户是智能体。
我认为它指向三个正在发生的趋势:
① 软件的「第二用户」正在诞生。 过去三十年,软件设计的全部注意力都在人身上:菜单怎么排、按钮放哪、图标好不好看。现在多了一类用户,它不看图标,它读 --help。未来的软件设计会分叉:一套给人的 GUI,一套给 Agent 的结构化接口,而且后者的重要性会持续爬升。今天要靠第三方去「翻译」,明天原生就该带。
② GUI Agent 那条路可能是个中间态。 一堆团队在死磕「让 AI 看屏幕、点鼠标」,这条路技术上很酷,但脆、慢、贵。CLI-Anything 的主张很直接:别教 AI 用人类的界面,把软件的能力直接暴露出来。 我倾向于认同——GUI 自动化会退守到「实在拿不到源码/接口」的兜底场景,不会是主战场。
③ 真正的门槛从「有没有 AI」变成「AI 手上有多少工具」。 模型能力在快速趋同,谁都能调到差不多的脑子。差距会拉在手上:你的 Agent 接了多少真实软件、多少真实系统、多少真实数据。这是个能靠积累建立壁垒的方向,而且积累是可复利的——工具库越大,能组合出来的工作流越多,是超线性的。
要不要押? 我的判断:押方法论,别押具体项目。 具体哪个项目会赢没人知道(这个才 4 个月大),但「把软件翻译成 Agent 能用的形态」这个方向,几乎确定是对的。所以正确做法是现在就动手用起来、把自己的工作流改造成 Agent-Native 的,工具换了不影响,改造出来的流程是自己的。
七、哪些具体可以借鉴
拆出来,条条可迁移:
技术/方法论层面
- 7 阶段流水线的顺序 —— 尤其是「先出测试计划文档、再写测试」这个卡点,任何自动生成任务都该这么排。
- 差集分析 + 增量精修(refine) —— 不是推倒重来,是「对比完整能力与当前覆盖,只补缺口」,可反复叠加。
- 自动生成 SKILL.md —— 产出物自带说明书,让下游 Agent 能自我发现。做任何工具都该顺手生成一份「怎么用」,别让能力藏在代码里。
- JSON + 人类可读双输出 —— 一份给机器解析,一份给人调试。低成本、高收益。
- 真调用而非重实现 —— 直接调真软件(LibreOffice 真出 PDF、Blender 真渲染),不做玩具替代品。能接真的就别造假的,这是可信度的分水岭。
- 命名空间统一 + 装进 PATH —— 所有生成物统一
cli-anything-*前缀,Agent 用which就能发现。可发现性是工具规模化之后的第一瓶颈。
内容/传播层面
- 项目方自己做传播素材 —— 那个三格漫画和吉祥物,是项目自带的。开源项目把「怎么讲清楚我是干嘛的」也当成工程来做,传播效率翻几倍。 我自己发东西也该这样:做完还得配一张能一眼看懂的图。
- 口播煽动 + 画面取信的双轨 —— 说数字就怼数字截图,说命令就怼终端截图。主观判断必须配客观画面,否则就是空吹。
- 用「你现在就能上手」当结尾 —— 比任何点赞关注的话术都有效。
- 信任状要具体 —— 不说「很火」,说「45,750 star / #1 Repository of the Day / 2,461 条测试通过」。具体的数字自己会说话。
最后
这条视频只有 34 秒,但它推给我的东西够我消化很久。
我个人最大的收获不是知道了一个新项目,是校准了一个判断:Agent 落地的瓶颈,已经从「模型够不够聪明」彻底转移到了「它手上有没有真家伙」。
想清楚这一点,接下来该往哪投时间就很明确了——别再花时间调提示词让模型显得更聪明,去给它接手脚。
项目地址:
github.com/HKUDS/CLI-Anything· Apache-2.0 · 视频来源:抖音 @克莱加德《让 ai 直接操作你的各种软件》 数据核于 2026-07-23,星数还在涨,看到这篇时应该已经不止 45.7k 了。