如何手搓一个 CLI:只需 80 行代码,彻底看清 AI 的底层逻辑¶
Ch01.1140 如何手搓一个 CLI:只需 80 行代码,彻底看清 AI 的底层逻辑¶
📊 Level ⭐⭐ | 5.4KB |
entities/如何手搓一个-cli只需-80-行代码彻底看清-ai-的底层逻辑.md
如何手搓一个 CLI:只需 80 行代码,彻底看清 AI 的底层逻辑¶
来源: 高可用架构
发布日期: 2026-03-09
原文链接: https://mp.weixin.qq.com/s/vw8UrflhcAOBJs-l7EQ8GA
导读 :文章介绍了通过构建简单AI命令行工具(CLI)来学习 AI 底层机制的教程,强调“做中学”比阅读更有效,并分享了一个仅80行代码的GitHub仓库,无需框架,直接使用 Anthropic 的 Claude API。
作者:Morgan Linton,Bold Metrics联合创始人兼CTO,早年加入Sonos,曾就读卡内基梅隆大学工程系。现居Tahoe,热衷AI开源项目(Zen Open Source)、域名投资与持续学习。
我认为我们正进入一个非常酷的历史时期:人们的学习方式正在从“读博看片”(看书和看 YouTube 视频)转向“直接开搞”(动手构建)。这也意味着,任何人都能比以前更深入地掌握知识。因为我始终认为, 实践出真知 ,这比单纯的阅读或观看要高效得多。
最近,我一直在深挖 CLI(命令行界面) 。因为我相信,随着我们进入一个“智能体(Agent)多于人类”的软件交互时代,CLI 将变得越来越重要,尤其是在对速度和性能有极致要求的情况下。
大多数 AI 教程在让你理解底层逻辑之前,都会先扔给你一个框架(比如 LangChain 等)。但我感觉, 从原始的 API 调用开始 ,能让你真正理解以后那些框架到底在封装什么。
就我个人而言,我经常思考“ 智能体商业(Agentic Commerce) ”。当涉及到帮助 AI 智能体做出购买决策或向购物者展示内容时,每一秒钟的速度差异都至关重要。
所以,考虑到 CLI 正在变得(或者说已经)如此重要,我想随手写一个简单的 AI CLI 。它不仅人人都能上手构建和使用,还能帮你理解 AI CLI 的底层运作原理。在这个示例中,它由 Claude 驱动。
你不需要精通编程也能理解并运行它。我已经把 GitHub 仓库公开了,你甚至可以先去瞄一眼:
🔗 SimpleCLI [1]
好了,现在让我们通过亲手构建一个简单的 CLI 来学习它。
核心亮点¶
首先你会注意到,所有的东西都在一个文件里: index.js 。只有大约 80 行代码,仅此而已。 没有框架,没有抽象层 ,只有原始的 SDK 和 Node.js 自带的功能。
通过亲手构建、克隆仓库或阅读代码,你会了解到 LLM(大语言模型)在 API 层面是如何工作的,以及构建一个 CLI 是多么简单——这也能解释为什么它们运行得如此之快。
9 个核心组成部分详解¶
-
导入 (Imports) :三样东西: dotenv (读取环境变量)、Node 自带的 readline (终端输入输出)、Anthropic SDK(内置流式传输的 HTTP 客户端)。
-
客户端设置 :使用 new Anthropic() 。SDK 会自动寻找环境变量中的 ANTHROPIC_API_KEY ,如果找不到就会报错。
-
对话历史 (Conversation history) :这是我希望大家产生 “原来如此!”(Aha moment) 的地方。Claude API 完全是 无状态 的——它不记得任何事情。你需要自己维护一个包含
{
→ 原文存档
关联¶
- 相关概念: Harness Engineering