AI工具箱
Repomix

Repomix 使用教程

从入门到精通的完整指南

Repomix 简介

Repomix是一款开源代码仓库打包工具,可将整个代码库一键合并为单个AI友好的文件(支持XML、Markdown、纯文本格式),便于喂给Claude、ChatGPT等大语言模型进行代码审查、重构建议和文档生成。内置Token计数、安全扫描和代码压缩功能,支持CLI、网页版和浏览器扩展等多种使用方式。

详细功能介绍

【工具简介】

Repomix是一款将整个代码仓库打包为单个AI友好文件的开源工具,帮助开发者高效地将代码库提供给大语言模型分析。

【核心功能】

①一键打包:一条命令将整个仓库合并为XML、Markdown或纯文本格式的单一文件,直接供LLM消费。

②Token统计:按文件和仓库维度统计Token数量,帮助管理LLM上下文窗口限制。

③安全扫描:集成Secretlint自动检测并阻止包含密钥、敏感数据的文件被纳入输出。

④代码压缩:通过Tree-sitter提取关键代码元素,在保留结构的同时大幅减少Token消耗。

⑤灵活输入:支持本地目录、远程GitHub仓库URL、glob模式和stdin管道输入。

【适用场景】

①AI辅助代码审查:将完整代码库喂给LLM进行代码质量分析和重构建议。

②项目文档生成:让LLM基于全量代码自动生成架构文档和API说明。

③代码库理解:快速向AI展示项目全貌,加速理解和上手陌生项目。

【快速入门】

①在项目目录中运行 npx repomix@latest 即可快速打包(无需全局安装)。

②如需全局安装,执行 npm install -g repomix 后使用 repomix 命令。

③打包完成后将生成的文件直接粘贴到ChatGPT、Claude等对话界面中。

④也可访问repomix.com网页版,或安装Chrome/Firefox扩展和VS Code插件使用。

【优缺点分析】

优点:

①使用极简,一条命令完成打包,上手门槛低。

②安全默认,自动扫描敏感信息防止泄露。

③高度可配置,支持自定义包含/排除规则和多种输出格式。

缺点:

①超大仓库打包后可能超出LLM上下文窗口,即使压缩也难以完全解决。

②工具链偏向Node.js生态,Python项目用户可能更适合Gitingest等替代方案。

③输出质量依赖合理的.gitignore配置,忽略规则不当会影响结果。

【适合人群】

①AI辅助开发者:日常使用LLM进行代码审查、重构和文档编写的程序员。

②技术团队:希望将AI集成到开发工作流中的工程团队。

③开源贡献者:需要快速理解陌生代码库结构和逻辑的贡献者。

1Repomix入门教程:一键打包代码库喂给AI分析

入门10分钟
Repomix是一款开源代码仓库打包工具,能将整个代码库合并为单个AI友好的文件,内置Token计数和安全扫描,便于用Claude、ChatGPT等模型进行代码审查。 一、快速开始 1. 全局安装Repomix:npm install -g repomix 2. 进入你的项目目录:cd your-project 3. 直接运行repomix命令,会在当前目录生成repomix-output.xml文件 4. 将生成的文件直接粘贴或上传到ChatGPT、Claude等AI对话界面即可开始分析 二、核心功能演示 功能1:一键打包代码库 在项目根目录执行repomix,工具会自动扫描所有源代码文件,按照合理的顺序将它们合并为一个文件。支持XML、Markdown和纯文本三种输出格式,XML格式最适合AI理解,Markdown格式便于人类阅读。 功能2:Token计数与估算 执行打包时会自动统计代码库的总Token数量,并显示在输出摘要中。这让你在喂给AI之前就能判断是否会超出上下文窗口限制,避免提交后才发现信息丢失的问题。 功能3:安全敏感信息扫描 内置安全扫描功能,会自动检测代码中的API密钥、密码、私钥等敏感信息并进行标记或排除。在配置文件中可以自定义忽略规则,防止敏感数据泄露到AI对话中。 三、实际使用案例 案例1:大型项目代码审查 接手一个陌生的代码库需要快速了解架构,用Repomix打包后提交给Claude,可以请求生成项目架构概览、模块依赖关系、代码质量分析等报告,比人工逐文件阅读效率高出数倍。 案例2:代码重构方案生成 计划对某个老旧模块进行重构,将相关代码打包给AI分析,请求生成重构方案、设计模式建议和具体的代码改写示例。AI基于完整上下文给出的建议比片段分析更准确。 四、常见问题 Q1:代码库太大超出AI上下文限制怎么办? A:使用--ignore参数排除不需要的目录,如node_modules、测试文件、自动生成代码等。也可以用--include参数只打包核心模块,优先分析最重要的部分。 Q2:支持哪些编程语言? A:支持所有主流编程语言,包括JavaScript、TypeScript、Python、Java、Go、Rust等。工具会根据文件扩展名自动识别语言类型并做相应处理。 Q3:生成的文件可以直接分享给别人吗? A:可以,但建议先启用安全扫描功能检查是否包含敏感信息。生成的文件本质是代码的合并版本,分享前确认不包含密钥、内部URL等隐私内容。 五、小贴士 1. 善用ignore配置:在项目根目录创建repomix.config.json文件,配置忽略规则排除测试文件、构建产物、依赖目录等,既能减小文件体积,又能让AI聚焦核心业务代码 2. 搭配分步提问使用:不要把打包文件丢给AI后只问一个笼统的问题,可以分步骤提问,先问架构概览,再问某个模块的细节,最后问优化建议,层层深入效果更好 3. 结合Git差异分析:用repomix打包特定分支或最近修改的文件,让AI专注于分析变更部分的代码质量和潜在问题,在代码审查场景中特别实用