similar-files

基于TF-IDF的代码库文件相似性搜索工具

安装使用

复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:

帮我安装这个 AI Skill:similar-files。
它的用途是:基于TF-IDF的代码库文件相似性搜索工具
完整的 Skill 内容见:https://321skill.com/skills/similar-files/raw/index.md
请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。

提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。

使用示例

“我刚加入这个TypeScript项目,想快速了解与用户认证相关的所有代码和文档。” 你可以先运行`similar-index`为项目建立索引,然后使用`similar-find --text 'user authentication'`来查找所有涉及认证概念的文件,它会返回源代码、测试文件和相关文档,帮助你快速建立上下文。

介绍

当开发者面对一个陌生或庞大的代码库时,快速找到功能或概念相关的文件是一项挑战。similar-files通过构建TF-IDF索引并计算余弦相似度,帮助用户根据文件内容或文本查询,发现代码库中语义相近的文件,从而加速代码理解和探索过程。

使用方式非常直接:首先在项目根目录运行similar-index命令为工作区建立索引,该工具会自动扫描并处理支持的源代码和文档文件。之后,便可通过similar-find命令,指定一个文件路径或一段文本描述,来查找与之最相似的文件列表,结果会按相似度分数排序。

该工具非常适合需要快速熟悉新项目代码结构的前后端开发、全栈开发人员,以及需要梳理代码依赖关系或查找重复文档的文档工程师和项目经理。它通过内容相似性而非文件名或路径来建立联系,为代码考古和知识发现提供了新维度。

建议在初次接触大型开源项目或遗留系统时使用本工具建立全局认知。注意,索引过程会读取文件内容,请确保在受信任的项目内使用。对于二进制文件或未在支持列表中的语言,工具不会进行索引。

核心特点

与基于文件名或路径搜索的工具不同,它深入分析文件内容语义,使用TF-IDF和余弦相似度进行匹配;与通用代码搜索工具相比,它专注于“找相似”而非“找关键词”,能发现跨目录、跨文件类型的概念关联。

注意事项

不适合搜索代码中的具体函数名或变量名,也不支持对二进制文件或未列出扩展名的文件进行索引和搜索。

常见问题

similar-files支持搜索哪些编程语言的文件?

支持主流语言如TypeScript/JavaScript、Python、Rust、Go的源代码文件,以及Markdown文档。

索引会包含`node_modules`这样的目录吗?

不会,工具默认排除了`node_modules`、`.git`、`dist`等常见依赖和构建输出目录。

给 AI 助手的安装指引

如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:

请访问 https://321skill.com/skills/similar-files/raw/index.md 读取 similar-files 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。