Toolipie —— 代码片段工具箱

Toolipie —— 代码片段工具箱

Toolipie 是一个本地优先的代码片段工具箱,用插件化的 CLI/TUI 把分散的脚本统一本地管理,让它们像瑞士军刀一样可复用、可扩展。

2025-11-12 更新

Toolipie 是我给自己写的“脚本收纳盒”。

它解决的其实是一个很生活化的问题:
当你写脚本写到一定数量之后,会突然发现——

  • 有些脚本明明很好用,但你已经忘了它们藏在哪个仓库
  • 同一个需求,隔几个月又从头写了一次
  • 换电脑或换环境时,总要挨个复制粘贴这些零散小文件

我不太想把它们全塞进一个“大项目”里,那样维护成本太高。
所以我反过来想:能不能做一个干净的“工具箱”,
让每个脚本变成一个小插件,统一通过一套 CLI/TUI 被调用?

这就是 Toolipie。

从使用者视角,它长得大概是这样:

  • 在命令行里,你可以用统一的入口去调用不同的小工具
  • 在终端 UI 里,你能看到有哪些插件、它们能做什么、需要哪些参数
  • 新写的脚本,只要按约定的方式包一层,就能变成一个新的“工具”加入进来

对我自己来说,Toolipie 带来的最大好处不是“功能强”,
而是把之前那种“到处找脚本”的焦虑彻底挪走了。

它现在已经开源,也在慢慢长成一个可以被别人拿去改造的项目。
如果你也有不少“只用过一次,但舍不得删掉”的脚本,也许可以从给它们找一个固定的家开始。


想法(The Idea)

在英文版的介绍里,我给 Toolipie 定义了三个核心原则:

  1. 本地优先:所有东西都在本地跑,你知道你的数据在哪。
  2. 可组合:每个工具保持小而清晰,但可以像积木一样拼在一起。
  3. 透明:代码和日志都尽量简单,让未来的自己也看得懂。

中文这边,我会用一句更直白的话来概括:
这是一个帮我把“临时脚本”升级成“长期工具”的地方。


能做什么(What It Can Do)

对标英文版里列出的功能,现在的 Toolipie 大概可以帮我解决这些事:

  • 文件与文件夹相关:批量重命名、提取元数据、校验哈希等
  • 数据处理:清洗 CSV/JSON、做简单的匹配和合并、跑一些统计或摘要
  • 文本与文档:预处理 OCR 结果、分段、清理噪声、做轻量总结
  • 自动化辅助:批量请求接口、对数据集做 enrichment、整理联系人信息等

这些工具很多本来就存在于我零散的脚本里,
Toolipie 做的事情,是帮它们有序地“住在一起”,而不是散落在各个项目缝隙之间。


底层结构(Under the Hood)

实现上,它和英文版描述的一样,核心就是一个“插件系统”:

  • 每个插件都是一个独立的小目录,里面有代码和一个简单的 manifest
  • manifest 里写清楚:这个工具叫什么、要哪些参数、输入输出是什么
  • CLI 由 Typer 驱动,TUI 基于 Textual,方便在终端里浏览和操作

这套设计的好处在于:
当我想加一个新工具时,只需要复制一个插件模板,填上自己的逻辑即可,不必担心“会不会破坏现有结构”。


当前状态(Current Status)

目前 Toolipie 已经是一个能在自己工作流里稳定使用的项目:

  • 有一批我日常会用到的插件
  • CLI 和 TUI 对我来说都足够顺手
  • 代码也保持在一个“随时可以小改几笔”的程度

后面我会继续按照英文 Roadmap 里提到的方向探索:
比如 MCP 集成、更多插件脚手架、更友好的新手体验等等。