这个项目能做什么
Repomix 是一个命令行工具、网页应用和浏览器扩展,可将整个代码库整合为单一文件,专为大型语言模型(LLM)优化。它支持多种输出格式,包括默认的XML、Markdown、JSON和纯文本,每种格式均包含文件摘要、目录结构和文件内容,以增强AI对代码库的理解。
主要功能包括:
- 按文件及整个仓库统计令牌数,帮助管理LLM上下文限制。
- 支持Git感知的文件选择,自动遵循.gitignore、.ignore和.repomixignore规则。
- 通过Secretlint检测并排除包含已知凭证模式的文件,提升安全性。
- 利用Tree-sitter进行代码压缩,提取关键元素(类、函数、接口),在保留结构的同时减少令牌消耗。
- 支持通过URL、GitHub简写、分支、标签或提交哈希打包远程仓库。
- 提供灵活的文件筛选机制,支持通配符模式、标准输入管道及包含/排除过滤器。
- 可选包含git提交日志和差异信息,提供开发上下文。
- 支持按大小分割输出、移除注释与空行、Base64截断及行号前缀。
- 提供Docker支持,实现隔离执行环境。
用户可通过npx直接运行,无需安装;也可通过npm、yarn、bun或Homebrew全局安装;或通过repomix.com网站、Chrome和Firefox浏览器扩展使用,这些扩展会在GitHub仓库页面添加Repomix按钮。此外,社区维护的VSCode扩展Repomix Runner也提供集成支持。
生成的输出文件开头包含面向AI的结构说明,便于模型理解打包内容。用户可将此文件输入AI助手,用于代码审查、文档生成、测试用例生成、代码质量评估或库概览等任务。
评论
0 评分人数达到10人后显示
登录后参与讨论。