promptgarten 🌱

扩展与集成 · 上下文

Repomix

27.334

把你的整个仓库打包成一个对 AI 友好的单一文件——非常适合一次性把整套代码库交给某个 LLM 或聊天模型。

Repomix 会遍历你的仓库,并将其写入一个便于 AI 阅读的单一文件(XML、Markdown 或纯文本)。它遵守 .gitignore,统计每个文件及总计的 token,并可选地通过 Tree-sitter 压缩代码以节省空间。内置的密钥检查(Secretlint)会对误打包进去的凭据发出警告。除了本地文件夹,它还能处理远程仓库,通过 npx 免安装运行,在 repomix.com 上提供网页工具,并可作为 MCP 服务器接入智能体。

🔧 SETUP

  1. 免安装:在项目文件夹中运行 `npx repomix@latest`
  2. 全局安装:`npm install -g repomix`(或 `yarn global add repomix`)
  3. 结果:一个文件(如 `repomix-output.xml`)——整份粘贴进 ChatGPT/Claude/Gemini
  4. 在线免配置:repomix.com;也可作为面向智能体的 MCP 服务器

什么时候用?

把整套代码库交给聊天模型

一条 `npx repomix` 就能生成一个文件,整份粘贴进 Claude/ChatGPT——不必逐个文件复制。

盯住 token 预算

Repomix 会统计每个文件及总计的 token,并遵守 .gitignore,只纳入相关内容。

什么时候不该用?

自带文件搜索的智能体

编码智能体(Claude Code、Cursor)会按需读取文件——打包成的单一大文件往往没必要且过大。

更好的选择: 让智能体直接在仓库里工作;需要精准上下文时用 Serena 或 Graphify。

超大型 monorepo

整个仓库即便压缩也可能超出上下文窗口。

更好的选择: 用包含/忽略过滤器只打包相关文件夹。

来源