Repomix 安装指南:npx、包管理器、Docker 与浏览器扩展的完整部署方案
【免费下载链接】repomix📦 Repomix is a powerful tool that packs your entire repository into a single, AI-friendly file. Perfect for when you need to feed your codebase to Large Language Models (LLMs) or other AI tools like Claude, ChatGPT, DeepSeek, Perplexity, Gemini, Gemma, Llama, Grok, and more.项目地址: https://gitcode.com/GitHub_Trending/rep/repomix
导读
Repomix 是一款将整个代码仓库打包为单一 AI 友好文件(XML / Markdown / Plain Text / JSON)的命令行工具,便于将代码库直接投喂给 Claude、ChatGPT、DeepSeek、Gemini 等大语言模型。本指南以官方安装文档为主体,结合仓库源码,系统讲解 npx 免安装体验、npm/Yarn/pnpm/Bun/Homebrew 全局安装、项目级依赖安装、Docker 容器化运行、VS Code 与浏览器扩展,以及安装后的版本验证方法。读完本文,你将掌握在本地、CI 与容器环境中正确部署 Repomix 的全部途径,并能验证安装是否生效。
环境要求
在安装之前,请先确认运行环境满足以下前提:
| 依赖 | 版本要求 | 用途 |
|---|---|---|
| Node.js | ≥ 22.0.0 | 运行 Repomix CLI 的运行时 |
| Git | 必需(处理远程仓库时) | 远程仓库处理(--remote等) |
以上要求直接来源于仓库 package.json 的engines字段("node": ">=22.0.0")。需要说明的是,CLI 启动脚本 bin/repomix.cjs 对 Node.js 版本低于 20 的环境仅输出警告(“Repomix recommends Node.js version 20 or higher”),仍会尝试继续运行,但部分特性可能异常,因此建议严格使用 22 及以上版本。
使用 npx:免安装即刻体验
如果只是想尝试 Repomix,或只需在某个项目上运行一次,无需任何全局安装,直接执行:
npx repomix@latestnpx 会临时拉取repomix的最新发布版本并立即执行,不会污染全局环境。这种方式非常适合:
- 首次体验,验证 Repomix 是否满足需求;
- 临时处理一个仓库,不想安装任何依赖;
- 在 CI 流水线中按需调用(详见后文 GitHub Actions 一节)。
全局安装:将 repomix 变为系统命令
全局安装后,即可在任意目录直接执行repomix命令。官方文档提供了五种包管理方式的等价命令:
# npm npm install -g repomix # Yarn yarn global add repomix # pnpm pnpm add -g repomix # Bun bun add -g repomix # Homebrew(macOS / Linux) brew install repomix从源码结构看,全局安装后系统会通过 bin/repomix.cjs 这个可执行入口注册repomix命令(package.json 的"bin": "./bin/repomix.cjs"即声明了这一点)。该入口启用 Node.js 编译缓存(enableCompileCache)以加速 ESM 模块加载,并注册了uncaughtException、unhandledRejection、SIGINT、SIGTERM等错误与退出处理,最后动态导入lib/cli/cliRun.js的run()启动 CLI。
项目级安装:作为项目依赖使用
把 Repomix 安装为项目的本地依赖,便于团队统一版本、配合package.json脚本使用:
# npm npm install --save-dev repomix # Yarn yarn add --dev repomix # pnpm pnpm add -D repomix三个命令均将 Repomix 安装为devDependencies(开发依赖),适合在构建、代码生成或 CI 场景中通过npx repomix或项目脚本调用。安装后可在项目的package.json中通过"scripts"定义快捷命令,例如"pack": "repomix",再以npm run pack触发。
使用 Docker:容器化运行
Repomix 官方提供了容器镜像ghcr.io/yamadashy/repomix,适合需要隔离环境、避免污染本机 Node 环境的场景。基础用法为:
# 处理当前目录 docker run -v .:/app -it --rm ghcr.io/yamadashy/repomix其中:
-v .:/app:把当前目录挂载为容器内的/app工作目录;-it:开启交互式终端;--rm:容器退出后自动删除。
官方英文文档还补充了两种实用变体:
# 处理指定子目录 docker run -v .:/app -it --rm ghcr.io/yamadashy/repomix path/to/directory # 处理远程仓库,并将输出写到本机 ./output 目录 docker run -v ./output:/app -it --rm ghcr.io/yamadashy/repomix --remote yamadashy/repomix仓库根目录的 Dockerfile 展示了镜像的构建要点:基于node:22-slim,额外安装git与ca-certificates(git 用于远程仓库处理,证书用于 HTTPS 下载),通过npm ci安装依赖后用npm link将 Repomix 全局链接,再执行npm prune --omit=dev精简体积;镜像以ENTRYPOINT ["repomix"]直接作为命令入口,并在构建期执行repomix --version与repomix --help自检。
VS Code 扩展
社区维护的Repomix Runner扩展可让开发者直接在 VS Code 内运行 Repomix,无需切换到终端。其主要特性包括:
- 点击几下即可打包任意文件夹;
- 可选“文件模式 / 内容模式”两种复制方式;
- 输出文件的自动清理;
- 原生支持读取
repomix.config.json配置。
可前往 VS Code Marketplace 搜索 “Repomix Runner”(扩展 ID:DorianMassoulier.repomix-runner)安装。
浏览器扩展:在 GitHub 页面一键直达
安装浏览器扩展后,访问任意 GitHub 仓库页面时,页面导航栏会多出一个 “Repomix” 按钮,点击即可直达该仓库的 Repomix 处理页面,实现“零复制、零命令”的极速打包体验。
安装方式
- Chrome:在 Chrome Web Store 中搜索 “Repomix” 并安装;
- Firefox:在 Firefox Add-ons 中搜索 “Repomix” 并安装。
扩展的实现原理
该扩展的源码位于仓库的 browser 目录,基于 WXT 框架构建。其核心逻辑在 browser/entrypoints/content.ts 中:
- 内容脚本(Content Script)仅匹配
https://github.com/*页面(wxt.config.ts 中的host_permissions与matches配置); - 通过解析
window.location.pathname提取仓库的owner与repo信息; - 借助 browser/utils/github-navigation.ts 定位 GitHub 页面导航容器,把 “Repomix” 按钮插入导航栏最左侧;
- 按钮链接指向
https://repomix.com/?repo=<仓库URL>,从而实现一键跳转打包; - 使用
MutationObserver监听 GitHub 动态渲染的 DOM 变化(GitHub 是 SPA 风格页面),并监听popstate事件处理前进/后退导航,确保按钮始终存在。
扩展特性
- 任意 GitHub 仓库的 One-Click(一键)Repomix 访问;
- 官方表示更多功能正在规划中(coming soon)。
与 GitHub Actions 集成
Repomix 也可作为 GitHub Actions 中的 Action 使用,实现 CI/CD 流水线内的自动化打包。官方印地语文档提供了完整的工作流示例(详见 website/client/src/hi/guide/github-actions.md),核心要点如下:
- 基于
actions/checkout@v7(需fetch-depth: 0以获取完整历史)与actions/setup-node@v6(Node.js 22)搭建基础环境; - 核心执行命令为
npx repomix --output-file repomix-output.xml,无需预先全局安装; - 可组合
--style markdown、--include "src/**/*.ts,docs/**/*.md"、--ignore "**/*.test.ts,**/node_modules/**"、--remove-comments、--compress等高级参数; - 通过
actions/upload-artifact上传产物,并可结合schedule定时触发、matrix 矩阵构建、GITHUB_TOKEN私有仓库认证、PR 评论展示摘要等进阶玩法。
验证安装
安装完成后,建议执行以下命令确认 CLI 工作正常:
repomix --version repomix --helprepomix --version输出当前版本号(当前仓库版本为 1.18.0);repomix --help输出完整的 CLI 帮助信息与全部可用选项。
从源码看,版本输出的实现链路是 src/cli/actions/versionAction.ts 调用 src/core/file/packageJsonParse.ts 的getVersion()——后者读取发布包内package.json的version字段并打印;若读取失败会回退返回'unknown'并输出警告日志。因此,若此处无法显示版本号,多半说明安装未完成或环境变量 PATH 未正确包含 Repomix 的可执行路径。
相关资源
- 基本用法指南:学习 Repomix 的基础使用方式
- 配置指南:按需定制 Repomix 的打包行为
- 命令行选项参考:完整的 CLI 参数手册
- GitHub Actions 指南:在 CI/CD 中自动化运行 Repomix
【免费下载链接】repomix📦 Repomix is a powerful tool that packs your entire repository into a single, AI-friendly file. Perfect for when you need to feed your codebase to Large Language Models (LLMs) or other AI tools like Claude, ChatGPT, DeepSeek, Perplexity, Gemini, Gemma, Llama, Grok, and more.项目地址: https://gitcode.com/GitHub_Trending/rep/repomix
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考