Repomix

Repomix

Repomix MCP 服务器通过将本地或远程代码仓库打包成优化的单个文件,使 AI 模型能够高效地分析代码库。它利用 Tree-sitter 进行智能压缩,在保留代码结构和关键签名的同时,显著减少 token 的使用。

数字笔记管理
内容获取
Git管理工具
访问服务器

README

将你的代码库打包成 AI 友好的格式

<hr />

在线使用 Repomix!👉 repomix.com

需要讨论?加入我们的 Discord!<br> 分享你的经验和技巧<br> 及时了解新功能<br> 获取配置和使用方面的帮助<br>

<hr />

📦 Repomix 是一个强大的工具,可以将你的整个代码仓库打包成一个 AI 友好的文件。 当你需要将你的代码库提供给大型语言模型(LLM)或其他 AI 工具(如 Claude、 ChatGPT、DeepSeek、Perplexity、Gemini、Gemma、Llama、Grok 等)时,它非常有用。

🎉 新功能:Repomix 网站和 Discord 社区!

我们期待在那里见到你!

🌟 功能

  • AI 优化:以 AI 易于理解和处理的方式格式化你的代码库。
  • Token 计数:提供每个文件和整个代码仓库的 token 计数,对于 LLM 上下文限制非常有用。
  • 易于使用:你只需要一个命令即可打包你的整个代码仓库。
  • 可定制:轻松配置要包含或排除的内容。
  • Git 感知:自动遵循你的 .gitignore 文件和 .git/info/exclude
  • 安全至上:整合 Secretlint 以进行强大的安全检查,从而检测和防止包含敏感信息。
  • 代码压缩--compress 选项使用 Tree-sitter 提取关键代码元素,从而减少 token 计数,同时保留结构。

🚀 快速开始

使用 CLI 工具 >_

你可以在你的项目目录中立即尝试 Repomix,无需安装:

npx repomix

或者全局安装以供重复使用:

# 使用 npm 安装
npm install -g repomix

# 或者使用 yarn
yarn global add repomix

# 或者使用 Homebrew (macOS/Linux)
brew install repomix

# 然后在任何项目目录中运行
repomix

就是这样!Repomix 将在你的当前目录中生成一个 repomix-output.xml 文件,其中包含你的整个 代码仓库,采用 AI 友好的格式。

然后,你可以将此文件发送给 AI 助手,并使用如下提示:

此文件包含代码仓库中的所有文件,合并为一个文件。
我想重构代码,所以请先审查它。

Repomix 文件用法 1

当你提出具体的更改时,AI 可能会相应地生成代码。借助 Claude 的 Artifacts 等功能,你可能会输出多个文件,从而可以生成多个相互依赖的代码片段。

Repomix 文件用法 2

祝你编码愉快!🚀

使用网站 🌐

想快速尝试一下吗?请访问官方网站 repomix.com。只需输入你的代码仓库 名称,填写任何可选的详细信息,然后单击“打包”按钮即可查看生成的输出。

可用选项

该网站提供多种便捷功能:

  • 可自定义的输出格式(XML、Markdown 或纯文本)
  • 即时 token 计数估算
  • 还有更多!

使用 VSCode 扩展 ⚡️

一个由社区维护的 VSCode 扩展,名为 Repomix Runner(由 massdo 创建),让你只需点击几下即可在编辑器中运行 Repomix。在任何文件夹上运行它,无缝管理输出,并通过 VSCode 的直观界面控制一切。

想要将你的输出作为文件还是仅作为内容?需要自动清理吗?此扩展程序可以满足你的需求。此外,它还可以与你现有的 repomix.config.json 顺利配合使用。

立即在 VSCode Marketplace 上试用它! 源代码可在 GitHub 上找到。

替代工具 🛠️

如果你正在使用 Python,你可能需要查看 Gitingest,它更适合 Python 生态系统和数据 科学工作流程: https://github.com/cyclotruc/gitingest

📊 用法

要打包你的整个代码仓库:

repomix

要打包特定目录:

repomix path/to/directory

要打包特定文件或目录, 使用 glob 模式

repomix --include "src/**/*.ts,**/*.md"

要排除特定文件或目录:

repomix --ignore "**/*.log,tmp/"

要打包远程代码仓库:

repomix --remote https://github.com/yamadashy/repomix

# 你也可以使用 GitHub 简写:
repomix --remote yamadashy/repomix

# 你可以指定分支名称、标签或提交哈希值:
repomix --remote https://github.com/yamadashy/repomix --remote-branch main

# 或者使用特定的提交哈希值:
repomix --remote https://github.com/yamadashy/repomix --remote-branch 935b695

# 另一种便捷的方法是指定分支的 URL
repomix --remote https://github.com/yamadashy/repomix/tree/main

# 也支持提交的 URL
repomix --remote https://github.com/yamadashy/repomix/commit/836abcd7335137228ad77feb28655d85712680f1

要压缩输出:

repomix --compress

# 你也可以将其与远程代码仓库一起使用:
repomix --remote yamadashy/repomix --compress

要初始化新的配置文件 (repomix.config.json):

repomix --init

生成打包文件后,你可以将其与 ChatGPT、DeepSeek、Perplexity、Gemini、Gemma、Llama、Grok 等生成式 AI 工具一起使用。

Docker 用法 🐳

你也可以使用 Docker 运行 Repomix。 如果你想在隔离的环境中运行 Repomix 或更喜欢使用容器,这将非常有用。

基本用法(当前目录):

docker run -v .:/app -it --rm ghcr.io/yamadashy/repomix

要打包特定目录:

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 https://github.com/yamadashy/repomix

提示示例

使用 Repomix 生成打包文件后,你可以将其与 ChatGPT、DeepSeek、Perplexity、Gemini、Gemma、Llama、Grok 等 AI 工具一起使用。 以下是一些入门提示示例:

代码审查和重构

对于全面的代码审查和重构建议:

此文件包含我的整个代码库。请审查总体结构,并提出任何改进或重构机会,重点关注可维护性和可扩展性。

文档生成

要生成项目文档:

根据此文件中的代码库,请生成详细的 README.md,其中包含项目概述、其主要功能、设置说明和用法示例。

测试用例生成

用于生成测试用例:

分析此文件中的代码,并为主要函数和类建议一套全面的单元测试。包括边缘情况和潜在的错误场景。

代码质量评估

评估代码质量并遵守最佳实践:

审查代码库是否符合编码最佳实践和行业标准。确定可以在可读性、可维护性和效率方面改进代码的区域。建议进行具体更改,以使代码与最佳实践保持一致。

库概述

获得对库的高级理解

此文件包含库的整个代码库。请提供库的全面概述,包括其主要目的、关键功能和总体架构。

请根据你的具体需求和你正在使用的 AI 工具的功能随意修改这些提示。

社区讨论

查看我们的 社区讨论,用户在其中分享:

  • 他们正在使用 Repomix 的哪些 AI 工具
  • 他们发现的有效提示
  • Repomix 如何帮助他们
  • 充分利用 AI 代码分析的技巧和窍门

欢迎加入讨论并分享你自己的经验!你的见解可以帮助其他人更好地利用 Repomix。

输出文件格式

Repomix 生成一个文件,其中代码库的不同部分之间有清晰的分隔符。 为了增强 AI 的理解能力,输出文件以面向 AI 的解释开头,使 AI 模型更容易 理解打包代码仓库的上下文和结构。

XML 格式(默认)

XML 格式以分层方式构建内容:

此文件是整个代码库的合并表示形式,将所有代码仓库文件合并到一个文档中。

<file_summary>
  (元数据和用法 AI 说明)
</file_summary>

<directory_structure>
src/
cli/
cliOutput.ts
index.ts

(...其余目录)
</directory_structure>

<files>
<file path="src/index.js">
  // 此处为文件内容
</file>

(...其余文件)
</files>

<instruction>
(来自 `output.instructionFilePath` 的自定义说明)
</instruction>

对于那些对 AI 上下文中 XML 标签的潜力感兴趣的人: https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/use-xml-tags

当你的提示涉及多个组件(如上下文、说明和示例)时,XML 标签可以改变游戏规则。它们可以帮助 Claude 更准确地解析你的提示,从而产生更高质量的输出。

这意味着来自 Repomix 的 XML 输出不仅仅是一种不同的格式,而且可能是一种更有效的方式,可以将你的代码库提供给 AI 系统进行分析、代码审查或其他任务。

Markdown 格式

要以 Markdown 格式生成输出,请使用 --style markdown 选项:

repomix --style markdown

Markdown 格式以分层方式构建内容:

此文件是整个代码库的合并表示形式,将所有代码仓库文件合并到一个文档中。

# 文件摘要

(元数据和用法 AI 说明)

# 代码仓库结构

```
src/
  cli/
    cliOutput.ts
    index.ts
```

(...其余目录)

# 代码仓库文件

## 文件:src/index.js

```
// 此处为文件内容
```

(...其余文件)

# 说明

(来自 `output.instructionFilePath` 的自定义说明)

此格式提供了一种干净、可读的结构,既对人类友好,又易于 AI 系统解析。

纯文本格式

要以纯文本格式生成输出,请使用 --style plain 选项:

repomix --style plain
此文件是整个代码库的合并表示形式,将所有代码仓库文件合并到一个文档中。

================================================================
文件摘要
================================================================
(元数据和用法 AI 说明)

================================================================
目录结构
================================================================
src/
  cli/
    cliOutput.ts
    index.ts
  config/
    configLoader.ts

(...其余目录)

================================================================
文件
================================================================

================
文件:src/index.js
================
// 此处为文件内容

================
文件:src/utils.js
================
// 此处为文件内容

(...其余文件)

================================================================
说明
================================================================
(来自 `output.instructionFilePath` 的自定义说明)

命令行选项

基本选项

  • -v, --version:显示工具版本

输出选项

  • -o, --output <file>:指定输出文件名
  • --style <style>:指定输出样式 (xmlmarkdownplain)
  • --parsable-style:启用基于所选样式架构的可解析输出。请注意,这会增加 token 计数。
  • --compress:执行智能代码提取,重点关注基本函数和类签名以减少 token 计数
  • --output-show-line-numbers:在输出中显示行号
  • --copy:此外,将生成的输出复制到系统剪贴板
  • --no-file-summary:禁用文件摘要部分输出
  • --no-directory-structure:禁用目录结构部分输出
  • --remove-comments:从支持的文件类型中删除注释
  • --remove-empty-lines:从输出中删除空行
  • --header-text <text>:要包含在文件标头中的自定义文本
  • --instruction-file-path <path>:包含详细自定义说明的文件的路径
  • --include-empty-directories:在输出中包含空目录
  • --no-git-sort-by-changes:禁用按 git 更改计数对文件进行排序(默认启用)

筛选选项

  • --include <patterns>:包含模式列表(逗号分隔)
  • -i, --ignore <patterns>:其他忽略模式(逗号分隔)
  • --no-gitignore:禁用 .gitignore 文件用法
  • --no-default-patterns:禁用默认模式

远程代码仓库选项

  • --remote <url>:处理远程 Git 代码仓库
  • --remote-branch <name>:指定远程分支名称、标签或提交哈希值(默认为代码仓库默认分支)

配置选项

  • -c, --config <path>:自定义配置文件的路径
  • --init:创建配置文件
  • --global:使用全局配置

安全选项

  • --no-security-check:禁用安全检查

Token 计数选项

  • --token-count-encoding <encoding>:指定 OpenAI 的 tiktoken tokenizer 使用的 token 计数编码(例如,GPT-4o 的 o200k_base,GPT-4/3.5 的 cl100k_base)。有关编码详细信息,请参阅 tiktoken model.py

MCP

其他选项

  • --top-files-len <number>:摘要中要显示的顶部文件数
  • --verbose:启用详细日志记录
  • --quiet:禁用所有到 stdout 的输出

示例:

repomix -o custom-output.txt
repomix -i "*.log,tmp" -v
repomix -c ./custom-config.json
repomix --style xml
repomix --remote https://github.com/user/repo
npx repomix src

更新 Repomix

要更新全局安装的 Repomix:

# 使用 npm
npm update -g repomix

# 使用 yarn
yarn global upgrade repomix

使用 npx repomix 通常更方便,因为它始终使用最新版本。

远程代码仓库处理

Repomix 支持处理远程 Git 代码仓库,而无需手动克隆。此功能允许你 使用单个命令快速分析任何公共 Git 代码仓库。

要处理远程代码仓库,请使用 --remote 选项,后跟代码仓库 URL:

repomix --remote https://github.com/yamadashy/repomix

你也可以使用 GitHub 的简写格式:

repomix --remote yamadashy/repomix

你可以指定分支名称、标签或提交哈希值:

# 使用 --remote-branch 选项
repomix --remote https://github.com/yamadashy/repomix --remote-branch main

# 使用分支的 URL
repomix --remote https://github.com/yamadashy/repomix/tree/main

或者使用特定的提交哈希值:

# 使用 --remote-branch 选项
repomix --remote https://github.com/yamadashy/repomix --remote-branch 935b695

# 使用提交的 URL
repomix --remote https://github.com/yamadashy/repomix/commit/836abcd7335137228ad77feb28655d85712680f1

代码压缩

--compress 选项利用 Tree-sitter 执行智能代码提取,重点关注基本函数和类签名,同时删除实现细节。这可以帮助减少 token 计数,同时保留重要的结构信息。

repomix --compress

例如,以下代码:

import { ShoppingItem } from './shopping-item';

/**
 * 计算购物商品的总价
 */
const calculateTotal = (
  items: ShoppingItem[]
) => {
  let total = 0;
  for (const item of items) {
    total += item.price * item.quantity;
  }
  return total;
}

// 购物商品接口
interface Item {
  name: string;
  price: number;
  quantity: number;
}

将被压缩为:

import { ShoppingItem } from './shopping-item';
⋮----
/**
 * 计算购物商品的总价
 */
const calculateTotal = (
  items: ShoppingItem[]
) => {
⋮----
// 购物商品接口
interface Item {
  name: string;
  price: number;
  quantity: number;
}

[!NOTE] 这是一个实验性功能,我们将根据用户反馈和实际使用情况积极改进它

MCP 服务器集成

Repomix 支持 模型上下文协议 (MCP),允许 AI 助手直接与你的代码库交互。当作为 MCP 服务器运行时,Repomix 提供的工具使 AI 助手能够打包本地或远程代码仓库以进行分析,而无需手动准备文件。

repomix --mcp

配置 MCP 服务器

要将 Repomix 用作 Claude 等 AI 助手的 MCP 服务器,你需要配置 MCP 设置:

对于 VS Code:

你可以使用以下方法之一在 VS Code 中安装 Repomix MCP 服务器:

  1. 使用安装徽章:

    在 VS Code 中安装 在 VS Code Insiders 中安装

  2. 使用命令行:

    code --add-mcp '{"name":"repomix","command":"npx","args":["-y","repomix","--mcp"]}'
    

    对于 VS Code Insiders:

    code-insiders --add-mcp '{"name":"repomix","command":"npx","args":["-y","repomix","--mcp"]}'
    

对于 Cline(VS Code 扩展):

编辑 cline_mcp_settings.json 文件:

{
  "mcpServers": {
    "repomix": {
      "command": "npx",
      "args": [
        "-y",
        "repomix",
        "--mcp"
      ]
    }
  }
}

对于 Cursor:

在 Cursor 中,从“Cursor 设置”>“MCP”>“+ 添加新的全局 MCP 服务器”添加一个新的 MCP 服务器,其配置类似于 Cline。

对于 Claude Desktop:

使用与 Cline 的配置类似的配置编辑 claude_desktop_config.json 文件。

配置完成后,你的 AI 助手可以直接使用 Repomix 的功能来分析代码库,而无需手动准备文件,从而使代码分析工作流程更加高效。

可用的 MCP 工具

当作为 MCP 服务器运行时,Repomix 提供以下工具:

  1. pack_codebase:将本地代码目录打包成一个用于 AI 分析的合并文件
  • 参数:
    • directory:要打包的目录的绝对路径
    • compress:(可选,默认值:true)是否执行智能代码提取
    • includePatterns:(可选)包含模式的逗号分隔列表
    • ignorePatterns:(可选)忽略模式的逗号分隔列表
  1. pack_remote_repository:获取、克隆和打包 GitHub 代码仓库
  • 参数:
    • remote:GitHub 代码仓库 URL 或 user/repo 格式(例如,yamadashy/repomix)
    • compress:(可选,默认值:true)是否执行智能代码提取
    • includePatterns:(可选)包含模式的逗号分隔列表
    • ignorePatterns:(可选)忽略模式的逗号分隔列表
  1. read_repomix_output:在无法直接访问文件的环境中读取 Repomix 输出文件的内容
  • 参数:
    • outputId:要读取的 Repomix 输出文件的 ID
  • 功能:
    • 专门为基于 Web 的环境或沙盒应用程序设计
    • 使用其 ID 检索先前生成的输出的内容
    • 提供对打包代码库的安全访问,而无需访问文件系统
  1. file_system_read_file:使用绝对路径读取文件,并进行安全验证
  • 参数:
    • path:要读取的文件的绝对路径
  • 安全功能:
    • 使用 Secretlint 实施安全验证
    • 阻止访问包含敏感信息的文件
    • 验证绝对路径以防止目录遍历攻击
  1. file_system_read_directory:使用绝对路径列出目录的内容
  • 参数:
    • path:要列出的目录的绝对路径
  • 功能:
    • 显示带有清晰指示符([FILE][DIR])的文件和目录
    • 提供安全的目录遍历,并进行适当的错误处理
    • 验证路径并确保它们是绝对路径

⚙️ 配置

在你的项目根目录中创建一个 repomix.config.json 文件以进行自定义配置。

repomix --init

以下是配置选项的说明:

选项 说明 默认值
output.filePath 输出文件的名称 "repomix-output.xml"
output.style 输出的样式 (xmlmarkdownplain) "xml"
output.parsableStyle 是否基于所选样式架构转义输出。请注意,这会增加 token 计数。 false
output.compress 是否执行智能代码提取以减少 token 计数 false
output.headerText 要包含在文件标头中的自定义文本 null
output.instructionFilePath 包含详细自定义说明的文件的路径 null
output.fileSummary 是否在输出的开头包含摘要部分 true
output.directoryStructure 是否在输出中包含目录结构 true
output.removeComments 是否从支持的文件类型中删除注释 false
output.removeEmptyLines 是否从输出中删除空行 false
output.showLineNumbers 是否向输出中的每一行添加行号 false
output.copyToClipboard 除了保存文件之外,是否将输出复制到系统剪贴板 false
output.topFilesLength 摘要中要显示的顶部文件数。如果设置为 0,则不会显示摘要 5
output.includeEmptyDirectories 是否在代码仓库结构中包含空目录 false
output.git.sortByChanges 是否按 git 更改计数对文件进行排序(更改较多的文件显示在底部) true
output.git.sortByChangesMaxCommits 要分析 git 更改的最大提交数 100
include 要包含的文件的模式(使用 glob 模式 []
ignore.useGitignore 是否使用项目 .gitignore 文件中的模式 true
ignore.useDefaultPatterns 是否使用默认忽略模式 true
ignore.customPatterns 要忽略的其他模式(使用 glob 模式 []
security.enableSecurityCheck 是否对文件执行安全检查 true
tokenCount.encoding OpenAI 的 tiktoken tokenizer 使用的 Token 计数编码(例如,GPT-4o 的 o200k_base,GPT-4/3.5 的 cl100k_base)。有关编码详细信息,请参阅 tiktoken model.py "o200k_base"

配置文件支持 JSON5 语法,它允许:

  • 注释(单行和多行)
  • 对象和数组中的尾随逗号
  • 未加引号的属性名称
  • 更宽松的字符串语法

示例配置:

{
  "output": {
    "filePath": "repomix-output.xml",
    "style": "xml",
    "parsableStyle": true,
    "compress": false,
    "headerText": "打包文件的自定义标头信息。",
    "fileSummary": true,
    "directoryStructure": true,
    "removeComments": false,
    "removeEmptyLines": false,
    "showLineNumbers": false,
    "copyToClipboard": true,
    "topFilesLength": 5,
    "includeEmptyDirectories": false,
    "git": {
      "sortByChanges": true,
      "sortByChangesMaxCommits": 100
    }
  },
  "include": [
    "**/*"
  ],
  "ignore": {
    "useGitignore": true,
    "useDefaultPatterns": true,
    // 模式也可以在 .repomixignore 中指定
    "customPatterns": [
      "additional-folder",
      "**/*.log"
    ],
  },
  "security": {
    "enableSecurityCheck": true
  },
  "tokenCount": {
    "encoding": "o200k_base"
  },
}

全局配置

要创建全局配置文件:

repomix --init --global

全局配置文件将在以下位置创建:

  • Windows:%LOCALAPPDATA%\Repomix\repomix.config.json
  • macOS/Linux:$XDG_CONFIG_HOME/repomix/repomix.config.json~/.config/repomix/repomix.config.json

注意:本地配置(如果存在)优先于全局配置。

包含和忽略

包含模式

Repomix 现在支持指定要包含的文件, 使用 glob 模式。这允许更 灵活和强大的文件选择:

  • 使用 **/*.js 包含任何目录中的所有 JavaScript 文件
  • 使用 src/**/* 包含 src 目录及其子目录中的所有文件
  • 组合多个模式,如 ["src/**/*.js", "**/*.md"],以包含 src 中的 JavaScript 文件和所有 Markdown 文件

忽略模式

Repomix 提供了多种方法来设置忽略模式,以在打包过程中排除特定文件或目录:

  • .gitignore:默认情况下,使用项目 .gitignore 文件和 .git/info/exclude 中列出的模式。可以使用 ignore.useGitignore 设置或 --no-gitignore cli 选项控制此行为。
  • 默认模式:Repomix 包含一个默认的常用排除文件和目录列表(例如,node_modules、 .git、二进制文件)。可以使用 ignore.useDefaultPatterns 设置或 --no-default-patterns cli 选项控制此功能。请 参阅 defaultIgnore.ts 了解更多详细信息。
  • .repomixignore:你可以在项目根目录中创建一个 .repomixignore 文件来定义 Repomix 特定的忽略 模式。此文件遵循与 .gitignore 相同的格式。
  • 自定义模式:可以使用配置文件中的 ignore.customPatterns 选项指定其他忽略模式。你可以使用 -i, --ignore 命令行选项覆盖此设置。

优先级顺序(从最高到最低):

  1. 自定义模式 ignore.customPatterns
  2. .repomixignore
  3. .gitignore.git/info/exclude(如果 ignore.useGitignore 为 true 且未使用 --no-gitignore
  4. 默认模式(如果 ignore.useDefaultPatterns 为 true 且未使用 --no-default-patterns

此方法允许基于你的项目需求进行灵活的文件排除配置。它有助于优化 生成的打包文件的大小,方法是确保排除安全敏感文件和大型二进制文件,同时 防止泄露机密信息。

注意:默认情况下,二进制文件不包含在打包的输出中,但它们的路径列在输出文件的“代码仓库 结构”部分中。这提供了代码仓库结构的完整概述,同时保持 打包文件的效率和基于文本。

自定义说明

output.instructionFilePath 选项允许你指定一个单独的文件,其中包含有关你的项目的详细说明或 上下文。这允许 AI 系统了解你的项目的特定上下文和要求, 从而可能产生更相关和量身定制的分析或建议。

以下是如何使用此功能的一个示例:

  1. 在你的项目根目录中创建一个名为 repomix-instruction.md 的文件:
# 编码准则

- 遵循 Airbnb JavaScript 样式指南
- 建议在适当的时候将文件拆分为更小、更集中的单元
- 为不明显的逻辑添加注释。所有文本都用英语
- 所有新功能都应具有相应的单元测试

# 生成全面的输出

- 除非另有说明,否则包含所有内容,不缩写
- 优化以处理大型代码库,同时保持输出质量
  1. 在你的 repomix.config.json 中,添加 instructionFilePath 选项:
{
  "output": {
    "instructionFilePath": "repomix-instruction.md",
    // 其他选项...
  }
}

当 Repomix 生成输出时,它将在专用部分中包含 repomix-instruction.md 的内容。

注意:说明内容附加在输出文件的末尾。这种放置对于 AI 系统来说可能特别有效。对于那些有兴趣了解为什么这可能是有益的人,Anthropic 在 他们的文档中提供了一些见解: https://docs.anthropic.com/en/docs/build-with-claude/prompt-engineering/long-context-tips

将长格式数据放在顶部:将你的长文档和输入(~20K+ token)放在提示的顶部附近,高于 你的查询、说明和示例。这可以显着提高 Claude 在所有模型中的性能。 在测试中,末尾的查询可以将响应质量提高多达 30%,尤其是在处理复杂的、多文档输入时。

注释删除

output.removeComments 设置为 true 时,Repomix 将尝试从支持的文件类型中删除注释。此 功能可以帮助减小输出文件的大小,并专注于基本代码内容。

支持的语言包括: HTML、CSS、JavaScript、TypeScript、Vue、Svelte、Python、PHP、Ruby、C、C#、Java、Go、Rust、Swift、Kotlin、Dart、Shell、 和 YAML。

注意:注释删除过程是保守的,以避免意外删除代码。在复杂情况下,可能会保留一些注释。

🔍 安全检查

Repomix 包含一个安全检查功能,该功能使用 Secretlint 来检测 你的文件中潜在的敏感信息。此功能可帮助你在共享 打包的代码仓库之前识别可能的安全风险。

安全检查结果将在打包过程完成后显示在 CLI 输出中。如果检测到任何可疑 文件,你将看到这些文件的列表以及警告消息。

示例输出:

🔍 安全检查:
──────────────────
检测到 2 个可疑文件:
1. src/utils/test

推荐服务器

mult-fetch-mcp-server

mult-fetch-mcp-server

一个多功能的、符合 MCP 规范的网页内容抓取工具,支持多种模式(浏览器/Node)、格式(HTML/JSON/Markdown/文本)和智能代理检测,并提供双语界面(英语/中文)。

精选
本地
AIO-MCP Server

AIO-MCP Server

🚀 集成了 AI 搜索、RAG 和多服务(GitLab/Jira/Confluence/YouTube)的一体化 MCP 服务器,旨在增强 AI 驱动的开发工作流程。来自 Folk。

精选
本地
Knowledge Graph Memory Server

Knowledge Graph Memory Server

为 Claude 实现持久性记忆,使用本地知识图谱,允许 AI 记住用户的信息,并可在自定义位置存储,跨对话保持记忆。

精选
本地
Hyperbrowser

Hyperbrowser

欢迎来到 Hyperbrowser,人工智能的互联网。Hyperbrowser 是下一代平台,旨在增强人工智能代理的能力,并实现轻松、可扩展的浏览器自动化。它专为人工智能开发者打造,消除了本地基础设施和性能瓶颈带来的麻烦,让您能够:

精选
本地
https://github.com/Streen9/react-mcp

https://github.com/Streen9/react-mcp

react-mcp 与 Claude Desktop 集成,能够根据用户提示创建和修改 React 应用程序。

精选
本地
Exa MCP Server

Exa MCP Server

一个模型上下文协议服务器,它使像 Claude 这样的人工智能助手能够以安全和受控的方式,使用 Exa AI 搜索 API 执行实时网络搜索。

精选
mcp-perplexity

mcp-perplexity

Perplexity API 的 MCP 服务器。

精选
MCP Web Research Server

MCP Web Research Server

一个模型上下文协议服务器,使 Claude 能够通过集成 Google 搜索、提取网页内容和捕获屏幕截图来进行网络研究。

精选
PubMedSearch MCP Server

PubMedSearch MCP Server

一个模型内容协议(Model Content Protocol)服务器,提供从 PubMed 数据库搜索和检索学术论文的工具。

精选
YouTube Translate MCP

YouTube Translate MCP

一个模型上下文协议服务器,可以通过文字稿、翻译、摘要和各种语言的字幕生成来访问 YouTube 视频内容。

精选