惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Azure Blog
Microsoft Azure Blog
量子位
小众软件
小众软件
C
Cybersecurity and Infrastructure Security Agency CISA
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
T
Tenable Blog
V
Vulnerabilities – Threatpost
Know Your Adversary
Know Your Adversary
T
Threat Research - Cisco Blogs
Latest news
Latest news
Spread Privacy
Spread Privacy
C
Cyber Attacks, Cyber Crime and Cyber Security
NISL@THU
NISL@THU
T
Tor Project blog
Hacker News: Ask HN
Hacker News: Ask HN
V2EX - 技术
V2EX - 技术
T
The Exploit Database - CXSecurity.com
博客园 - 三生石上(FineUI控件)
K
Kaspersky official blog
Cyberwarzone
Cyberwarzone
博客园 - 叶小钗
博客园 - 聂微东
Last Week in AI
Last Week in AI
爱范儿
爱范儿
腾讯CDC
博客园 - Franky
美团技术团队
J
Java Code Geeks
O
OpenAI News
L
Lohrmann on Cybersecurity
Simon Willison's Weblog
Simon Willison's Weblog
有赞技术团队
有赞技术团队
T
Threatpost
G
GRAHAM CLULEY
Hugging Face - Blog
Hugging Face - Blog
博客园 - 【当耐特】
宝玉的分享
宝玉的分享
I
Intezer
N
News and Events Feed by Topic
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
T
The Blog of Author Tim Ferriss
S
Security @ Cisco Blogs
Forbes - Security
Forbes - Security
N
News | PayPal Newsroom
Stack Overflow Blog
Stack Overflow Blog
Scott Helme
Scott Helme
H
Hacker News: Front Page
Cloudbric
Cloudbric

博客园_首页

Linux实操--组管理、权限管理和定时任务 Java + EasyExcel 实现单个接口导出多个Excel Mem0 源码解析系列(二):提示词工程的深度剖析 Openclaw TaskFlow究竟是什么?和普通Skill技能有什么区别 博文阅读密码验证 - 博客园 嘉立创开源:应该是全网MicroPython教程最多的开发板 Hermes Agent 集成实践:从协议到生产 2026年AI编程工具横评:Cursor、Codex、Claude Code、Zed、Windsurf Java程序员必看的RAG入门教程 2026 AI效率神器:Superpowers + Claude Code 保姆级教程 本地大模型部署全攻略:从 0 到 1 玩转 Ollama 【从0到1构建一个ClaudeAgent】内存管理-上下文压缩 .NET 高级开发 | 设计、实现一个事件总线框架 电子小白入门之NE555 3. WorkBuddy:隐藏玩法,一键召唤专家,让 AI 以"专家身份"给你干活 和AI一起搞事情#3:Claude Teammate 游戏开发翻车实录 【OpenClaw】通过 Nanobot 源码学习架构---(7)Memory C# .NET 周刊|2026年3月3期 我在 Debian 11 上把 K8s 单机搭起来了,过程没你想的那么顺(/opt 目录版) 深度学习进阶(七)Data-efficient Image Transformer CLI+Skill搭建浏览器AI自动化框架,告别一切重复枯燥任务 告别Token账单无底洞:OpenClaw本地部署,重塑企业数据主权的唯一解 FastAPI+Vue:文件分片上传+秒传+断点续传,这坑我帮你踩平了! SBTI 爆火后,我做了个程序员版的 CBTI。。已开源 + 附开发过程 多模态检索开始进入工程期:用 Sentence Transformers 搭建可落地的 Multimodal RAG 100多行代码实现一个最简单的Agent(用ReAct) Claude Code 通关手册(八):推荐 5 个 Hooks,代码质量提升 3 倍 老板:“有人截图了!”。安全部门:“收到,马上查暗水印!” - why技术 技术之外,皆是人间 C#/.NET/.NET Core技术前沿周刊 | 第 69 期(2026年4.01-4.12) Snack JSONPath 项目架构分析 Claude Code Buddy 小析:一个非核心功能,如何体现产品的细节完成度 AI新时代下的图床管理方案-Cloudflare图床+MCP+Skills方案指南 化繁为简:顺丰速运App如何通过 HarmonyOS SDK实现专业级空间测量 从零实现富文本编辑器#13-React非编辑节点的内容渲染 AI开发-python-langchain框架(3-23-OpenAI Functions风格Tool Calling智能助手) .NET + AI 进阶实战:基于类的技能开发 - 打造可治理的 Agent 能力模块 【从0到1构建一个ClaudeAgent】规划与协调-技能 上周热点回顾(4.6-4.12) 电子小白的工具三件套:面包板、杜邦线、万能板 单表五亿数据的查询优化 | Mysql、StarRocks 2. WorkBuddy:从“我是谁”到“帮我干活” C# 如何减少代码运行时间:7 个实战技巧 基于HelixToolkit.SharpDX 渲染3D模型 - 笺上知微 从零开始的双臂具身VLA起源及现阶段发展综述 - SkyXZ 记对 xonsh shell 的使用, 脚本编写, 迁移及调优 - pluvium27 受够了Vibe Coding的失控?换个起点,让AI事半功倍 从开始配置漏洞环境到漏洞复现流程 - 難しい 关于10年工作经验的程序员对OpenClaw的实战经验分享以及看法 - 虚无境 Any metadata 的内存布局 C# .NET 周刊|2026年3月2期 - InCerry 我帮你测过了,测试圈排名第二的 Skill 依然很牛逼 Skill Discovery | 无监督技能发现的经典工作总结 - MoonOut PbootCMS 网站内容数量多导致访问慢?这些实用优化方案帮你提速! - 家兴网络技术工作室 上下文工程是什么?过时了么?一文讲明白! - 一枫说码 网站漏洞怎么发现并修复?一篇实用指南(附完整流程) - 家兴网络技术工作室 开了 TUN 模式还是直连?90% 的人都踩过这个坑 Github日报|2026年04月12日 - AI一族 AScript扩展多种脚本语言 - rockey627 AI 学习笔记:Agent 的记忆机制 你能被装进一个文件里吗?——7 万人把同事"蒸馏"成了 AI - 我没有三颗心脏 Claude Code 通关手册(七):给 AI 装上技能包——Skills 完全指南 - 暮色之狐 在浏览器中快速编辑代码:VSCode Web 集成实践 - Newbe36524 蒸馏自己 skill?基于 Deepseek 的蒸馏器,丐版蒸馏方式,简单便捷 - To_Carpe_Diem Spring AI Aliababa和AgentScope,哪个更好? - 苏三说技术 Etsy 把 1000 个 MySQL 分片迁进 Vitess:425TB 数据背后的真正问题不是性能,而是运维规模 MicroPython LVGL基础知识和概念:底层渲染与性能优化 - FreakStudio 数据库草图算法 Python 潮流周刊#146:CPython 引入 Rust 的进展 - 豌豆花下猫 最小生成树 - mofei1116 红日靶场七:从外网入口、容器逃逸到 AD 接管的完整利用链复盘 - YouDiscovered1t 分享四款开源且实用的 Kafka 管理工具 - 追逐时光者 vLLM 权重加载机制全解析:从挑战到理想架构 LCT 学习笔记 - ACehomoxue Avalonia UI 12.0.0 正式发布:架构演进和性能飞跃 - 张善友 当 AI Agent 把调用链拉长,延迟开始成为一门生意 conhost.exe 无法显示 U+2717 - 145a 太秀了,我把自己蒸馏成了 Skill!已开源 - 程序员鱼皮 ASP.NET Core 内存缓存实战:一篇搞懂该怎么配、怎么避坑 基于 Ghostty 带有分割标签页和为 Claude 编程设计的通知终端 - BugShare AI 焊死入口:教育的“操作系统级”重塑 - 郝hai 初级Java开发工程师使用sql脚本编写代码的过程是简单而且不糊涂 - CoderOilStation Claude Code通关手册(六):MCP协议完全指南 - 暮色之狐 边框灯光环绕动画特效实现指南 - Newbe36524 开源:子木蒸馏版的 SEO 审计工具 seo-audit-skill v1.0 我所理解的Python元模型 【从0到1构建一个ClaudeAgent】规划与协调-TodoWrite - 程序员Seven Claude 和 Codex 在审计 Skill 上性能差异探究 - ACai_sec AScript如何实现中文脚本引擎 - rockey627 【渗透测试】HTB Season10 Garfield 全过程wp - dynasty_chenzi Android 开发者为什么必须掌握 AI 能力?端侧视角下的技术变革 树状数组正确性证明 - AC-wyr 你的 AI 焦虑,可能比 AI 本身更危险——ATM 机没有消灭银行柜员,但恐慌消灭了你的判断力 - 我没有三颗心脏 一个拉胯的分库分表方案有多绝望?整个部门都在救火! - 冰河团队 动态规划入门必学之走方格问题 - Ofnoname PostgREST 与 PostgreSQL 角色权限配置全解析(生产级实践) - SheepDog1998 使用 UEFI 图形输出协议 GOP 在屏幕上显示图像的方法 - 阿源- Claude Code通关手册(五):组建你的AI专家团队,子代理系统 - 暮色之狐 一个程序员到架构师的催婚路之感悟(整整10年后的催婚相亲感悟) - MisterLip 用 Agent Skill 自动生成工作周报 - 赵康
CLI 是什么?为什么大厂突然集体卷命令行?
程序员鱼皮 · 2026-04-19 · via 博客园_首页

大家好,我是程序员鱼皮。

最近不知道大家有没有注意到,互联网大厂的风向又变了。

Google 率先开源了 Workspace CLI,紧接着短短一周之内,飞书、钉钉、企业微信不约而同地在 GitHub 上开源了自己的 CLI 工具。

一时间,CLI 这个计算机世界里最古老的交互方式,突然又火了。

奇了怪了,CLI 不就是黑不拉几的命令行窗口吗?都什么年代了,各大厂不去卷更漂亮的界面,反而集体开起了倒车?

这篇文章,我会依次分享:

  • 什么是 CLI?
  • 怎么用 CLI?
  • 为什么大厂都在卷 CLI?
  • 有哪些 CLI 开源项目?
  • 怎么自己做个 CLI?

一次性把 CLI 给你讲明白,建议收藏~

什么是 CLI?

CLI 全称 Command Line Interface,翻译过来就是命令行界面。

说白了,就是你在一个小黑框里敲文字命令来操作电脑。

和它对应的,是我们每天都在用的 GUI(Graphical User Interface),也就是图形界面。你平时在手机上看到的那些图标、在电脑上看到的那些窗口和按钮,这些都是 GUI。

举个例子,假设你想把电脑桌面上的一张图片移动到另一个文件夹。用 GUI 的话,你会打开文件管理器,找到图片,用鼠标拖过去放进目标文件夹。

使用 CLI 的话,你打开终端,敲一行命令就搞定了:

mv ~/yupidog.png ~/Downloads

再比如切视频、批量改文件名、查服务器日志,这些用 GUI 要点好多步的操作,CLI 往往一行命令就搞定了。

显然,CLI 的特点就是 简洁直接,一条命令干一件事,干净利落。

但是,如果想用好 CLI,要求你记住大量命令和参数,这对普通用户来说门槛太高了。

想象一下我那只会用电脑玩斗地主和捕鱼的爸妈,让他们打开终端敲命令?玩呢?

其实 CLI 是计算机最原始的交互方式。在很久以前,电脑压根儿就没有图形界面,所有操作全靠命令行完成。后来 GUI 出现了,普通用户才终于告别了小黑框。从那以后,GUI 一路高歌猛进,成了绝对的主流。厂商们想方设法把界面做得更好看、更好用,按钮越做越大,交互越做越顺滑,一切都是为了让人类用起来更舒服。

但 CLI 从来没有消失,很多程序员朋友们都在用命令行管理服务器、部署项目。而且有些学编程的朋友写的第一行代码 Hello World,可能就是在命令行里跑起来的。

长期以来,CLI 一直是程序员的专属技能,甚至熟不熟悉命令行是区分老手和新手的标志之一。

不过现在 AI 时代来了,技术越来越大众化,CLI 正在重新站到聚光灯下。

上手试试 CLI

使用 CLI 最简单的方式,就是打开你电脑自带的终端。

Mac 用户在应用程序里找到 “终端”,Windows 用户搜索 “PowerShell” 或者 “命令提示符”,打开之后你会看到一个等待输入的光标。

试着敲一行:

date

电脑会直接返回当前的日期和时间。

这就是最简单的 CLI 交互了,你输入一条命令,电脑返回一个结果,没有花里胡哨的界面。

但这只是最基础的用法,现代 CLI 能做的事情远远不止这些。

比如最近飞书刚开源的 Lark CLI,这个工具可以让你在终端里直接操作飞书的消息、日历、文档等功能。

首先输入一行命令安装:

npm install -g @larksuite/cli

装好之后,先配置一下应用信息:

lark-cli config init --new

打开链接配置飞书 CLI 应用:

创建应用成功后,需要登录授权,按需选择你允许通过 CLI 操作的业务:

lark-cli auth login

跟着 CLI 的引导一步步操作就好:

授权过程中,记得要在飞书管理后台审核应用:

审核应用通过后,可以再重新执行登录命令,直到你看到「授权成功」:

之后,你就可以用命令行来操作飞书了。

比如查看今天的日程安排:

lark-cli calendar +agenda

查看我的待办任务:

lark-cli task +get-my-tasks

甚至直接创建一篇文档:

lark-cli docs +create --title "周报" --markdown "# 本周进展"

以前这些操作你要打开飞书 App,点好几下才能完成,现在一行命令就搞定了。

CLI 有这么多命令和参数,使用过程中,如果忘了某个命令怎么用,怎么办呢?

只需要记住一个万能口诀:不会就加 --help

比如:

lark-cli --help
lark-cli calendar --help

相当于随时翻说明书,CLI 会把所有可用的命令和参数列出来给你看。

对了,如果你觉得传统的终端使用起来不方便,可以试试 Warp 这种现代终端工具,内置了 AI 辅助和命令自动补全,对新手友好很多。

为什么大厂都在卷 CLI?

前面我们体验了用 CLI 操作飞书,对程序员来说,用习惯了确实还挺方便的。

但你有没有想过一个问题,大厂们费这么大劲把产品做成 CLI,难道只是为了让我们少点几下鼠标吗?为什么大厂都在卷 CLI?

答案就 2 个字:AI

大厂们不是在给人类做 CLI,而是在给 AI 做 CLI。

AI 大模型从诞生那天起就在学习海量的代码、命令行操作、终端输出。可以说 CLI 就是 AI 的母语,让它读一行命令、执行一个操作,跟喝水一样自然。

反过来,你让 AI 去操作一个图形界面那可就难了。

还是拿飞书举例。假设你想让 AI 帮你搜一下最近同事提到过的 “周报” 相关消息。

假设使用飞书的网页版,AI 需要先打开浏览器,等页面加载完,找到搜索框,输入 “周报”,等结果出来,再一条条翻看消息内容。中间要处理一堆网页元素,导致上下文信息又长又杂,有很多和内容无关的干扰信息。而且万一网页改版了,AI 之前学到的操作方式可能就全废了。

但是飞书提供了 CLI 后,AI 只需要执行一行命令,就能完成任务:

lark-cli im +messages-search --query "周报"

有人做过测试,让 AI 通过浏览器完成真实任务,成功率只有 35.8%;换成 CLI 来完成同样的任务,成功率接近 100%!

所以你会看到一个很有意思的现象。以前大厂做产品,想方设法把 UI 做得好看好用,给人类使用。现在是返璞归真,面向 AI 做产品,给 AI 使用,越简单直接越好。谁先把自己的产品 CLI 化,谁就能先被 AI Agent 接入,谁就能在 AI 时代继续保持竞争力。

国外科技博主 Shawn Yeager 甚至写了一篇文章叫《CLI is the new API》,引起了很大反响。意思是以前产品之间的互通靠 API,现在 AI 时代产品和 AI 之间的互通靠 CLI。

说到 API,你可能会有个疑问:API 接口不也是给程序调用的吗?为什么还需要 CLI 呢?

答案很简单,API 虽然也是程序接口,但调用它需要编写代码。而 CLI 就是一行命令的事,AI 大模型在训练过程中学习了大量命令行语料,理解和生成命令对它来说驾轻就熟,再加上 AI 编程工具可以很方便地执行终端命令,所以 CLI 对 AI 来说几乎是零门槛。

而且 CLI 自带 --help 说明书,AI 用到哪个命令就查一下用法,不需要你提前把整本 API 文档都塞给它,能节省 Token 消耗。

你可能又问了:之前很火的 MCP 不也是连接 AI 和工具的协议吗?为什么还需要 CLI?

MCP 协议要求把所有工具的名称和参数格式全部注入到 AI 的上下文里,工具一多 Token 消耗就很夸张。ScaleKit 做过一组基准测试,同样的任务,MCP 的 Token 消耗可能是 CLI 的几十倍!

而且 MCP 的运行过程对人类来说就像个黑盒,出了问题很难排查;CLI 就不一样了,如果出错了,就直接把命令复制到终端里跑一遍,报错信息一目了然。

知名 AI 搜索引擎 Perplexity 的 CTO 公开宣布放弃 MCP 转向 CLI,可见这个趋势已经很明显了。

当然这不是说 MCP 就过时了,在需要统一权限管控的企业场景下,MCP 的标准化鉴权规范依然很有价值。而且 Cursor 最近就上线了按需加载 MCP 的功能,不再一股脑把所有工具定义塞进上下文,而是等 AI 需要用到某个工具时再加载。

CLI 开源项目

既然 CLI 这么火,GItHub 上必然少不了和 CLI 相关的开源项目。

目前飞书、钉钉、企业微信、Google 等大厂的 CLI 基本都覆盖了消息、日历、文档、通讯录等核心业务,而且都内置了 AI Agent Skills,可以直接被 Claude Code、Cursor 等 AI 工具调用。

除了大厂官方出品,社区里也涌现了很多有意思的项目。

比如 OpenCLI 能把 任意网站、Electron 应用、甚至本地工具 统统变成命令行接口。

开源指路:https://github.com/jackwener/opencli

如果你想让 AI 帮你查 B 站热门、知乎热榜,装上 OpenCLI 后输入一行命令就搞定了。它内置了几十个适配器,覆盖了 B 站、知乎、Twitter、Reddit 等一大堆平台,就像给 AI 装了一个万能遥控器。

还有 CLI-Anything,它能自动分析一个开源软件的源码,找出每个功能背后的 API 逻辑,然后自动生成对应的 CLI 命令。

开源指路:https://github.com/HKUDS/CLI-Anything

怎么自己做一个 CLI?

如果你有自己的产品或工具,其实可以做个 CLI,让用户通过 AI 更方便地使用。

开发 CLI 的技术方案有很多。之前我在 编程导航 带大家做代码生成器项目的时候,就用过 Java 的 Picocli 框架来开发命令行交互。我还做过极客范浏览器主页的 Web 端 CLI,直接在网页里自主实现了命令行界面。对这些方案感兴趣的同学可以去看我之前的教程。

YuIndex Web 终端项目

但下面我要重点介绍一个最近发现的宝藏技术,叫 Ink

这还得感谢前段时间 Claude Code 的源码意外泄露,我扒了一下发现,它是通过一个叫 Ink 的库来开发的。

简单来说,我们平时用 React 写网页,React 会把组件渲染成浏览器里的页面。而 React Ink 做的事情是把同样的 React 组件渲染成终端界面。这个库在 GitHub 上已经有几万 Star,Gatsby CLI、Prisma CLI 等知名项目都在用,非常成熟。

开源指路:https://github.com/vadimdemedes/ink

举个例子,比如编写下面这段代码,就能渲染出一个简易的终端,会显示一个每秒自动加 1 的计数器。

了解了 React Ink 之后,我们用它来做一个 CLI 试试。

以我的 编程导航 为例,这是一个程序员学习交流社区。做成 CLI 工具之后,用户就可以直接在终端里搜索编程教程、查看热门内容,也方便 AI Agent 调用。

我先为这个 CLI 开发 2 个核心功能:搜索编程导航的内容查看热榜

整个开发过程其实就跟写网页差不多,简单的 CLI 工具直接让 AI 一把梭就行。

这里我就用 AI 来开发这个 CLI,先编写给 AI 的提示词:

帮我用 React Ink 开发一个名为 codefather-cli 的命令行工具,实现以下功能:

1)codefather search <关键词>
获取编程导航搜索结果 https://www.codefather.cn/search/all?searchText=<关键词>
在终端中展示搜索结果列表,包括标题、作者、点赞数

2)codefather hot
获取编程导航热榜 https://www.codefather.cn/hot/all_hot
在终端中展示热榜 TOP20,包括排名、标题、作者、热度

要求:支持 --help 查看帮助信息

把这段提示词丢给 Claude Code 或者 Cursor 等 AI 编程工具,AI 就能帮你生成完整的项目代码。

最终运行效果大概长这样,还不错吧~

可以试试让 AI 使用这个工具,AI 通过 --help 就能快速了解这个工具怎么用,准确地给出了回答,嘎嘎快!

这就是 CLI 的魅力,对人类来说是一个好用的效率工具,对 AI 来说更是一个天然的操作接口。

最后哔哔

CLI 的回归不是技术的倒退,恰恰说明产品设计的思路在进化。

以前做个产品,只需要考虑人类用户怎么用,现在还得想想 AI 怎么用。

未来的产品可能会有两套前端,一套给人类看的 GUI,一套给 AI 用的 CLI,殊途同归。

建议正在使用 AI 工具的朋友们,多关注一下 CLI 的生态。不管是用 CLI 工具提升自己的效率,还是给自己的产品做一个 CLI 让 AI 能调用,都很有价值。

我是鱼皮,持续分享 AI 编程干货,这篇文章也会收录到我免费开源的 《AI 编程零基础入门教程》,GitHub Star 数已经破万,从零开始带你学会用 AI 开发上线自己的产品。

开源仓库:https://github.com/liyupi/ai-guide

鱼皮AI导航开源教程

学会的话欢迎点赞收藏关注哦,也欢迎评论区聊聊:你用过哪些 CLI?对 CLI 有什么看法?