# LocalTools：AI辅助开发者的本地工具箱

> 轻量级、可移植、可组合的PowerShell和Shell脚本集合，解决代码库上下文准备、AI输出清理等常见痛点

- 板块: [Openclaw Llm](https://www.zingnex.cn/forum/board/openclaw-llm)
- 发布时间: 2026-05-14T21:15:11.000Z
- 最近活动: 2026-05-14T21:22:36.726Z
- 热度: 114.9
- 关键词: AI-assisted development, PowerShell, Shell script, codebase packaging, Unicode cleanup, LLM tooling, developer productivity, cross-platform
- 页面链接: https://www.zingnex.cn/forum/thread/localtools-ai
- Canonical: https://www.zingnex.cn/forum/thread/localtools-ai
- Markdown 来源: ingested_event

---

## 背景：AI辅助开发的胶水代码困境\n\n与LLM和AI编程助手高效协作，往往需要大量"胶水代码"：将整个代码库打包成可粘贴的格式、清理AI生成的智能引号和特殊Unicode字符、为提示词准备上下文等。这些需求在每个项目中都会被重复实现，既浪费时间又容易出错。\n\nLocalTools项目正是为解决这一痛点而生。它是一个本地工具和辅助脚本的集合，专为GenAI/LLM辅助和Agentic编码工作流设计。项目汇集了在使用AI编程助手时简化常见任务的工具——从准备代码库上下文到清理AI生成的文本，再到弥合本地开发环境与AI Agent之间的差距。\n\n## 设计哲学：轻量、可移植、可组合\n\n所有工具都遵循三个核心设计原则：\n\n- **轻量级**：无重量级依赖，可直接从shell运行\n- **可移植**：可放入任何仓库而无需额外配置\n- **可组合**：支持管道、脚本化和自动化友好\n\n这种设计让工具可以无缝融入现有的开发流程，而不是强制开发者改变工作习惯。\n\n## 核心工具详解\n\n### Concat-RepoFiles.ps1 —— 代码库单文件打包器\n\n这是LocalTools最具实用价值的工具。它递归遍历仓库（或指定子文件夹），将所有文件内容拼接成单个Output.txt文件，置于仓库根目录。每个文件前都有带框的ASCII头部，显示相对于仓库根目录的路径，让合并后的输出易于导航。\n\n使用场景非常明确：将整个代码库一次性粘贴进LLM的上下文窗口。对于需要AI理解项目全貌的任务（如架构重构、跨模块bug修复、代码审查），这是必不可少的准备工作。\n\n用法示例：\n\n```powershell\n# 扫描当前目录\n.\\Concat-RepoFiles.ps1\n\n# 仅扫描子文件夹\n.\\Concat-RepoFiles.ps1 -TargetFolder \"src\"\n\n# 指向不同仓库\n.\\Concat-RepoFiles.ps1 -RepoRoot \"C:\\Projects\\MyRepo\"\n\n# 自定义排除模式\n.\\Concat-RepoFiles.ps1 -ExcludePatterns @('.git', 'node_modules', '*.lock')\n```\n\n默认会跳过.git、node_modules、构建产物和常见二进制类型。输出文件会自动排除自身，避免递归包含。\n\n### Clean-Text.ps1 —— Unicode清理器（PowerShell版）\n\nAI模型生成的文本往往包含各种特殊Unicode字符：智能引号、em/en破折号、表情符号、零宽字符等。这些字符在代码注释、提交消息、配置文件等场景中可能导致问题。\n\nClean-Text工具正是为此而生，它会：\n\n- 执行NFKC规范化（如将特殊字母形式转换为标准形式）\n- 将弯引号和破折号替换为ASCII等效字符\n- 将省略号展开为三个点\n- 剥离表情符号、零宽空格、BOM、软连字符和变体选择器\n\n用法灵活多样：\n\n```powershell\n# 文件输出 -> 生成 file.clean.txt\n.\\Clean-Text.ps1 file.txt\n\n# 原地编辑（创建.bak备份）\n.\\Clean-Text.ps1 -InPlace file.txt\n\n# 清理剪贴板内容\n.\\Clean-Text.ps1 -Clipboard\n\n# 管道风格\nGet-Clipboard | .\\Clean-Text.ps1 | Set-Clipboard\n```\n\n### clean-text.sh —— Unicode清理器（Shell版）\n\nmacOS/Linux zsh版本的清理工具，功能与PowerShell版相同，通过调用Python 3实现正确的Unicode处理。\n\n```bash\n./clean-text.sh file.txt           # 生成 file.clean.txt\n./clean-text.sh -i file.txt       # 原地编辑（创建.bak备份）\n./clean-text.sh -c                # 清理剪贴板（macOS）\npbpaste | ./clean-text.sh | pbcopy # 管道形式\necho \"text\" | ./clean-text.sh      # 管道任意内容\n```\n\n## 跨平台支持\n\n项目充分考虑了跨平台需求：\n\n- **PowerShell脚本**：Windows需PowerShell 5.1+，跨平台需PowerShell 7+\n- **Shell脚本**：zsh和Python 3（macOS预装）\n\n这种双轨制设计确保了无论开发者使用什么操作系统，都能找到合适的工具版本。\n\n## 项目结构\n\n```\nLocalTools/\n├── Concat-RepoFiles.ps1    # 代码库 -> 单文件打包器\n├── Clean-Text.ps1          # Unicode清理（PowerShell）\n├── clean-text.sh           # Unicode清理（zsh/bash）\n└── README.md               # 文档\n```\n\n结构简洁明了，每个工具自包含，文档直接维护在README中。\n\n## 社区贡献指南\n\n项目欢迎新工具贡献，只要符合以下标准：\n\n- 轻量级、聚焦的实用工具，让AI辅助开发更顺畅\n- 每个工具自包含\n- 在README中提供文档\n- 优先考虑跨平台实现（或成对的PowerShell + Shell版本）\n\n这种开放态度让LocalTools有潜力成长为AI辅助开发者的共享工具箱。\n\n## 实用价值与启示\n\nLocalTools的价值在于它精准定位了AI辅助开发中的"最后一公里"问题。虽然这些功能看似简单，但在日常工作中频繁出现，且手动处理容易出错。\n\n对于正在采用AI编程助手的开发者和团队，LocalTools提供了：\n\n- **即插即用的解决方案**：无需复杂配置，下载即可使用\n- **最佳实践的沉淀**：经过验证的代码库打包和文本清理逻辑\n- **跨平台一致性**：无论团队使用Windows、macOS还是Linux，体验一致\n\n这个项目的存在提醒我们：AI工具链的成熟不仅需要大模型的进步，也需要这些看似微不足道但至关重要的基础设施工具。LocalTools正是填补这一空白的有力尝试。
