Fabric:为你的命令行安上 AI 管道

Fabric 是一个命令行 AI 工具框架,它通过"模式(Pattern)+ 管道"的方式,让你将 LLM 能力无缝集成到终端工作流中,本文详解安装、配置、核心概念与自定义模式实践。

阅读原文请转到:jimmysong.io/blog/fabric...

作为开发者,我们对效率近乎偏执,而命令行无疑是效率的圣殿。我们已经习惯了用 grepsedawk 等工具像手术刀一样处理文本。但今天,有一个更强大的工具正等待我们将它纳入终端的工作流中------大型语言模型(LLM)。

很多人已经习惯在浏览器中的 ChatGPT、Claude 或 Google AI Studio 与 LLM 交互。但这种方式始终存在割裂感:复制、粘贴、切换窗口......阻碍了 AI 成为我们日常自动化工作流程的自然一环。

如果我们能像使用原生命令一样,在终端中直接调用最强大的 AI 模型,会发生什么?

这正是知名技术专家 Daniel Miessler[1] 创建的开源项目 Fabric[2] 想要解决的问题。

Fabric 不是另一个 ChatGPT 包装器,而是一个精巧的命令行框架,它的目标是:"使用 AI 增强人类天赋"。它通过一种叫 Pattern 的机制,把高质量 AI 指令模板与你本地的工作流结合起来,让你可以在终端中完成从内容生成到代码审查的一系列复杂任务。

Fabric 是什么?不仅仅是 API 封装

表面上看,Fabric 是一个连接 LLM API 的 Python CLI 工具,但其设计哲学远不止于此。它的核心是围绕"模式"(Pattern)构建的可复用 AI 工作流。

可以将 Pattern 理解为一个精心设计的指令模板(system prompt)。Fabric 内置了一些实用模式,例如:

  • summarize: 总结长文本内容
  • code_review: 对代码进行审查并提出优化建议
  • seo: 提供文本的 SEO 优化建议
  • tldr: 快速生成简洁摘要
  • write_video_script: 生成视频脚本草稿

最有价值的,是你可以自己创建或共享这些模式,把你独特的工作流方法固化成标准指令,供自己或团队反复调用。

快速上手:三步把 AI 融入终端

第 1 步:安装

通过 Homebrew 安装:

复制代码
brew install fabric-ai

当然,你也可以用 pip 或源码安装,详见 项目主页[3]。

第 2 步:配置

执行:

arduino 复制代码
fabric --setup

这是一个交互式配置向导,会引导你完成以下内容:

  • • 选择 AI Provider:如 openai, google, claude
  • • 选择模型:例如 gpt-4o, gemini-2.5-pro
  • • 设置 API Key:手动输入或通过环境变量配置

强烈推荐使用 Google AI Studio[4] 提供的免费 API Key。撰写本文时,Gemini 1.5 Flash 免费版提供每分钟 15 次调用、每天 100 万 token 的额度,不仅可用于网页,还可用于 Fabric 与 Gemini CLI。

null

Gemini CLI

所有配置默认保存在 Linux 或 macOS 的 ~/.config/fabric/ 目录下。

第 3 步:运行你的第一个命令

以总结为例:

arduino 复制代码
fabric -p summarize --text "这里是一段非常非常长的文章内容..."

你将获得一段简洁清晰的摘要。而这只是起点,真正强大的是 Fabric 对"管道"的原生支持。

核心架构解析

Fabric 的关键组成如下:

  • Pattern(模式) :灵魂所在。一个 .md 文件定义 AI 的角色、目标、输出格式等。所有内置命令本质上都是不同的 Pattern。
  • Provider(提供商):底层的 LLM API,比如 OpenAI、Gemini、Claude。
  • Model(模型) :在 setup 阶段选择的具体模型,如 gpt-4ogemini-2.5-pro 等。
  • fabric CLI :命令行接口,支持读取输入(文件、管道、--text)、加载 Pattern 并提交请求。
  • suggest:让 AI 来优化 Pattern 本身,实现"AI 改进 AI Prompt"的元编程体验。

例如:

css 复制代码
fabric -p summarize --suggest "Make the summary more concise and use bullet points."

杀手级特性:让 AI 真正成为你命令行的管道组件

1. 与管道工具无缝集成

Fabric 遵循 Unix 哲学,支持标准输入 / 输出流,能与任意命令组合使用:

bash 复制代码
cat long_article.txt | fabric -p summarize
cat my_script.py | fabric -p code_review
lynx -dump "https://some-website.com" | fabric -p tldr

这才是真正将 AI 变成 CLI 工作流一部分的关键。

2. 自定义模式:把你的方法论变成工具

问题:默认 Pattern 用英文 prompt,处理中文不理想

解决:创建属于你的中文模式

① 找到模式目录:

运行 fabric --list 查看模式列表,路径通常是:

  • • 系统级目录:site-packages/fabric/patterns/
  • • 用户配置目录:~/.config/fabric/patterns/

② 创建中文模式:

javascript 复制代码
vim ~/.config/fabric/patterns/summarize_chinese.md

③ 编写 Prompt:

rust 复制代码
你是一个非常优秀的中文内容总结助手。请使用简洁、流畅的中文,为以下提供的文本内容生成一份核心要点摘要,并以无序列表(bullet points)的形式呈现。

请总结以下文本:

④ 使用自定义模式:

bash 复制代码
cat blog.md | fabric -p summarize_chinese

就这样,你将自己的知识转化成了一个随时可用、可复用的 CLI 工具。

null

在命令行中使用 Fabric

Fabric CLI 速查表

命令 作用 示例
fabric --setup 启动配置向导 fabric --setup
-p <pattern> 使用某个 Pattern fabric -p summarize
--text "..." 直接传入文本 fabric -p tldr --text "..."
--stream 流式输出 fabric -p write_blog_post --stream
--list 查看所有模式 fabric --list
--edit 编辑某个模式 fabric -p summarize --edit
--suggest "..." 改进模式 Prompt fabric -p code_review --suggest "Focus on security."
--model <name> 临时指定模型 fabric -p summarize --model gpt-4o
--copy 将结果复制到剪贴板 fabric -p summarize --copy

总结:AI 管道化,不只是工具,而是一种思维方式

Fabric 实现了它"增强人类天赋"的承诺。它不是另一个 AI 聊天工具,而是一种让你将 LLM 变成标准化流程节点的方式。

它推动我们从"和 AI 聊天"转向"指挥 AI 工作"。

你写一个 Pattern,就是在定义一个微型自动化系统。你把这些系统串成管道,AI 就成了你操作系统的一部分。

如果你是开发者、写作者、研究员,或任何与信息密集打交道的人,试着把 Fabric 接入你已有的命令行工具链,它可能会成为你效率系统中的下一个关键组件。

👉 项目地址:github.com/danielmiess...


本文首发于: jimmysong.io/blog/fabric...

引用链接

[1] Daniel Miessler: github.com/danielmiess...
[2] Fabric: github.com/danielmiess...
[3] 项目主页: github.com/danielmiess...
[4] Google AI Studio: aistudio.google.com/app/apikey

相关推荐
用户1395118811242 分钟前
AI日报 - 2025年07月26日
人工智能
大模型真好玩2 分钟前
深入浅出LangChain AI Agent智能体开发教程(四)—LangChain记忆存储与多轮对话机器人搭建
前端·人工智能·python
双向332 分钟前
多智能体系统设计:协作、竞争与涌现行为
人工智能
Q同学3 分钟前
SciMaster:无需微调,在人类最后考试上刷新 SOTA
人工智能·llm·agent
qiyue774 分钟前
AI编程专栏(七)-什么是上下文工程,与提示工程区别
人工智能·ai编程·cursor
love530love4 分钟前
命令行创建 UV 环境及本地化实战演示—— 基于《Python 多版本与开发环境治理架构设计》的最佳实践
开发语言·人工智能·windows·python·conda·uv
wayne2146 分钟前
不写一行代码,也能做出 App?一文看懂「Vibe Coding」
人工智能·ai编程
洞见新研社8 分钟前
谁将统治AI游戏时代?腾讯、网易、米哈游技术暗战
人工智能
速易达网络27 分钟前
[特殊字符]️ 风暴之眼:AI时代IT从业者的重构与重生
人工智能·重构
Sui_Network38 分钟前
探索 Sui 上 BTCfi 的各类资产
大数据·人工智能·科技·游戏·区块链