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 实现,确保快速且低资源消耗。
相关
- 项目
- 项目
- 项目
- 项目