mufeedvh/code2prompt

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

解决的问题

Code2Prompt 消除了手动从代码库中复制和格式化多个文件以提供大型语言模型(LLMs)上下文的繁琐工作。它自动化了收集相关代码、遵守项目规则,并将数据结构化为单一 LLM 就绪提示的过程。

工作原理

该工具使用 Rust 构建以实现高性能,遍历您的项目目录并根据指定的过滤器读取文件。它尊重 .gitignore 规则,并支持自定义 glob 模式来包含或排除特定文件。收集到的代码随后通过 Handlebars 模板进行处理,根据提示工程层面的具体情况格式化提示内容。同时,它还会跟踪令牌使用情况,确保生成的提示符合 LLM 的上下文窗口限制。

适用人群

  • 开发者:需要手动向 ChatGPT 等 LLM 提供代码库上下文的用户。
  • AI Agent 开发者:使用 Python SDK 构建自动化脚本或 RAG 流水线的开发者。
  • 智能应用:使用 MCP 服务器高效读取本地代码库的代理应用。

主要亮点

  • 交互式 TUI:提供终端用户界面,便于配置提示。
  • 智能过滤:自动尊重 .gitignore 并支持 glob 模式。
  • 灵活模板:支持自定义 Handlebars 模板,实现定制化提示结构。
  • Git 集成:可包含 Git diff、日志和分支对比。
  • 令牌追踪:实时监控令牌数量,避免上下文溢出。
  • 高性能:核心逻辑使用 Rust 实现,确保快速且低资源消耗。

相关

  • 项目
  • 项目
  • 项目
  • 项目