Skip to content

LumiDesk/tool-pilot

Repository files navigation

🧰 ToolPilot

25 款纯浏览器在线工具集 · 文件不上传 · 本地处理保护隐私

面向英文 SEO 市场的工具站,所有工具均在浏览器本地完成处理,数据永不离开你的设备。

Next.js React TypeScript Tailwind CSS pnpm License

在线体验 · 简体中文 · 反馈问题


✨ 特性

  • 🔒 隐私优先 — 全部 25 款工具在浏览器本地处理,文件 / 数据零上传,无服务端依赖。
  • 即开即用 — 无需注册、无需安装,打开网页即可使用。
  • 🌍 中英双语 — 内置 i18n 语言切换(English / 简体中文),偏好持久化。
  • 🎨 极简设计 — Vercel 风格黑白主题,自动适配深色模式。
  • 🔍 SEO 友好 — 每个工具页均带独立 metadata、JSON-LD 结构化数据与站点地图。

🛠️ 工具清单

🖼️ 图片工具

  • 图片压缩
  • 尺寸调整
  • 格式转换
  • 图片裁剪
  • 背景移除

📄 PDF 工具

  • PDF 合并
  • PDF 压缩
  • PDF 转图片
  • PDF 拆分
  • 图片转 PDF

🔧 开发者工具

  • JSON 格式化
  • Base64 编解码
  • URL 编解码
  • 正则测试
  • 哈希生成
  • JWT 解码
  • 时间戳转换
  • 文本对比

📝 文本 / 生成器

  • 字数统计
  • 大小写转换
  • Lorem Ipsum 生成
  • 二维码生成
  • 取色器
  • UUID 生成
  • 密码生成

🧱 技术栈

分类 技术
框架 Next.js 16(App Router)· React 19
语言 TypeScript 5(strict 模式)
样式 Tailwind CSS v4@theme inline)· Geist 字体
图标 lucide-react
图片处理 browser-image-compression · react-image-crop · @imgly/background-removal(WASM)· Canvas API
PDF 处理 pdf-lib(合并 / 拆分 / 压缩)· pdfjs-dist(渲染为图片)
其他 qrcode(二维码)· Web Crypto API(哈希 / UUID / 密码)
工具链 pnpm · ESLint 9

🚀 快速开始

本项目使用 pnpm 作为包管理器。

# 安装依赖
pnpm install

# 启动开发服务器(http://localhost:3000)
pnpm dev

# 生产构建(含完整 TypeScript 校验与静态页生成)
pnpm build

# 本地运行生产构建
pnpm start

# 代码检查
pnpm lint

📁 项目结构

src/
├── app/                    # Next.js App Router 路由
│   ├── tools/[slug]/       # 各工具页(page.tsx 服务端 + Client 组件)
│   ├── globals.css         # Tailwind v4 主题 + 语义化 CSS 变量
│   └── sitemap.ts          # 自动生成站点地图
├── components/
│   ├── layout/             # Header · Footer · Breadcrumb · LanguageSwitcher
│   ├── tools/              # ToolLayout · FileUploader · CopyButton · FAQ ...
│   └── seo/                # JsonLd 结构化数据
└── lib/
    ├── seo/toolsData.ts    # ⭐ 所有工具元数据的唯一数据源
    └── i18n/               # 国际化(Context + en/zh 翻译)

cli/                        # 命令行版本 @lumidesk/toolpilot(独立 npm 包)
├── src/core.js             # 纯逻辑工具实现(CLI 与本地网页版共用)
├── src/cli.js              # 命令路由(bin: toolpilot)
└── src/web/                # toolpilot serve 的本地网页 UI
skill/toolpilot/SKILL.md    # Claude Agent Skill(封装 CLI,供 AI marketplace 收录)

核心约定

  • 单一数据源src/lib/seo/toolsData.ts 集中管理全部工具元数据,驱动首页、导航与各工具页。
  • 工具页双文件模式 — 每个工具由 page.tsx(服务端组件,负责 metadata 与 SEO)+ [ToolName]Client.tsx(客户端组件,负责交互逻辑)组成。
  • 新增工具 — 在 toolsData.ts 增加条目,再按既有模式创建对应目录与两个文件即可。

⌨️ 命令行版本 & AI 接入

除了网页版,常用的纯逻辑工具还提供命令行版本 @lumidesk/toolpilot,同样在本地处理、零上传。

npm install -g @lumidesk/toolpilot

toolpilot hash sha256 "hello world"      # 哈希
echo '{"b":1,"a":2}' | toolpilot json    # 格式化 JSON
toolpilot password --length 24           # 生成密码
toolpilot qr "https://tool.talyra42.top" # 二维码
toolpilot serve                          # 在浏览器打开本地网页版(离线)
toolpilot mcp                            # 作为 MCP Server 运行,供 AI 客户端调用

覆盖工具:JSON、Base64、URL 编解码、哈希、UUID、密码、字数统计、大小写转换、Lorem Ipsum、颜色转换、正则测试、二维码、PDF 合并 / 拆分。完整用法见 cli/README.md

AI 接入:提供两种方式 ——

  • MCP Servertoolpilot mcpModel Context Protocol 形式(stdio)暴露上述纯逻辑工具,Claude Desktop / Claude Code / Cursor 等客户端可原生调用,全程本地、无网络访问。配置示例见 cli/README.md
  • Claude Agent Skillskill/toolpilot 封装了 CLI,可发布到 GitHub 后被各 AI Skill marketplace 收录。

🌐 部署

已部署在 Vercel 上,正式地址:https://tool.talyra42.top。如需部署自己的实例,请将 toolsData.ts 中的 SITE_URL 替换为你的域名(sitemap、robots、OG 图均从该常量派生)。

📄 许可证

本项目采用 GNU AGPL-3.0 许可证 © LumiDesk。

这是一个强 copyleft 许可证:你可以自由使用、修改本项目,但任何衍生作品——包括将修改后的版本部署为网络服务对外提供——都必须以 AGPL-3.0 同等条款开放完整源代码。如需用于闭源 / 商业用途,请联系作者获取商业授权。


用 ❤️ 构建 · 所有工具在你的浏览器中本地运行

About

面向英文 SEO 市场的浏览器工具站,集成图片 / PDF / 开发者 / 文本共 20 款工具,全部本地处理零上传。Next.js 16 · React 19 · Tailwind v4 · 中英双语。

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Contributors