章节 01
pack-my-code:为LLM上下文窗口量身打造的代码打包工具导读
在与大语言模型协作开发时,手动复制粘贴代码库上下文繁琐且易遗漏或包含冗余文件。pack-my-code(pmc)是一款极简二进制工具,专为解决此痛点设计,核心目标是将项目代码打包成适合LLM处理的格式,支持多种输出模式、智能过滤,零依赖分发且原生集成Git。
正文
一款极简的二进制工具,专为将项目代码打包成适合大语言模型处理的格式而设计,支持多种输出模式和智能过滤。
章节 01
在与大语言模型协作开发时,手动复制粘贴代码库上下文繁琐且易遗漏或包含冗余文件。pack-my-code(pmc)是一款极简二进制工具,专为解决此痛点设计,核心目标是将项目代码打包成适合LLM处理的格式,支持多种输出模式、智能过滤,零依赖分发且原生集成Git。
章节 02
pack-my-code是基于Lua编写的极简二进制工具,核心目标仅为将项目代码打包成适合LLM处理的格式,摒弃复杂配置与冗余功能。其设计理念包括:零依赖分发(独立二进制,无需运行时)、Git原生集成(自动遵循.gitignore规则)、多模式输出(Markdown/YAML/纯文本等)、跨平台支持(Windows/Linux/macOS预编译版本)。
章节 03
基础用法简单,如pmc <目标目录>默认遵循.gitignore、输出到终端(Markdown格式)。智能过滤支持排除(-x)和包含(-m)模式(排除优先级更高)。输出格式可通过-w(md/nil/block)和-p(relative/name/absolute)调整。YAML模式(-y)提供结构化输出,需定向到文件或剪贴板。输出目标支持写入文件(-o)和复制到剪贴板(-c)。
章节 04
场景一:快速代码审查(pmc . -t -s -c生成目录树+统计并复制到剪贴板);场景二:非Git项目处理(pmc . -r -w block启用直接文件扫描);场景三:精确定位关键代码(pmc . -m "src/,*.md" -x "*.test.js" -o core-code.md)。
章节 05
内置多重安全保护:跳过超1MB文件、检测二进制格式与空字节文件、默认假设UTF-8编码、支持基础通配符(*、**、?)但不支持高级glob表达式,避免误打包大型资源或二进制产物。
章节 06
相比通用方案,pack-my-code优势在于:体积极小(单一二进制)、零依赖、原生Git集成、学习成本极低、适度定制性。适合追求"开箱即用"的开发者。
章节 07
AI辅助编程普及下,高效传递代码上下文是关键环节。pack-my-code以极简设计和实用功能提供优雅解决方案,适用于代码审查、问题排查、AI架构建议等场景。建议经常与LLM协作处理代码的开发者将其加入工具箱。