mufeedvh/code2prompt

A CLI tool to convert your codebase into a single LLM prompt with source tree, prompt templating, and token counting.

解决的问题

它消除了在向大型语言模型 (LLMs) 提供上下文时,手动复制和格式化多个代码文件的繁琐过程。它通过自动化将本地代码库提取并结构化为单一、LLM 就绪的提示词,解决了“上下文工程”的问题。

运作方式

该工具使用 Rust 构建以实现高性能,它会遍历目录并读取文件,同时遵守 .gitignore 规则。它使用 Handlebars 模板将收集到的代码和元数据格式化为结构化提示词。它提供多种接口:用于快速使用的 CLI、用于交互式配置的 TUI、用于集成到代理或 RAG 管线的 Python SDK,以及用于代理应用程序高效访问本地代码库的 MCP 服务器。

目标用户

它专为手动向 AI 聊天界面(如 ChatGPT)提供代码上下文的开发者、构建 AI 代理的开发者,以及实现需要代码库提取的 RAG (检索增强生成) 管线的工程师而设计。

特色亮点

  • 智能过滤:支持 glob 模式并自动遵守 .gitignore 设置。
  • Git 集成:可以在生成的提示词中包含 Git diff、日志和分支比较。
  • Token 估算:提供并行的每个文件 Token 计数,以估算提示词大小。
  • 灵活输出:支持输出到 stdout、保存到文件或直接复制到剪贴板。
  • 多语言支持:包含针对 CSV、Notebooks 和 JSONL 等格式的专门读取功能。

相关

  • 项目
  • 项目
  • 项目
  • Dispatch
  • 项目