简介
Orbit Toolbox(轨道工具箱) 是一个 uTools 风格的插件化开发者工具箱:把常用小工具封装成可插拔的插件 —— 按需启用 / 禁用,全局热键一键呼出,往插件目录里丢一个文件夹就是安装。
它解决什么问题
开发者日常被大量"小而碎"的工具需求包围:格式化一段 JSON、查端口占用、转一次时间戳、截个图钉在屏幕上、取个屏幕颜色……这些事不值得为每个都装一个常驻软件。
Orbit Toolbox 的答案是一个微核 + 插件的桌面工具箱:
- 宿主只做平台:窗口、热键、插件生命周期、IPC 路由、配置持久化、工作流引擎;
- 一切工具皆插件:截图悬浮、屏幕画板、剪贴板历史、编码转换、色彩工坊、AI 对话……全部以插件形态存在,遵循同一套规范;
- 安装即复制:一个插件就是一个文件夹,复制到用户插件目录、重新扫描即生效;同 id 的用户插件可以覆盖内置插件 —— 升级某个内置工具不需要改主程序。
技术选型
| 决策 | 选择 | 理由 |
|---|---|---|
| 框架 | Electron 33 | 跨平台桌面能力 + Web 技术栈 |
| 前端 | 原生 JS / HTML / CSS | 无框架、无打包器,插件即拷即用,冷启动快 |
| 安全 | contextIsolation: true + sandbox: true | 渲染层无 Node 权限,宿主能力全部走白名单桥 |
| 通信 | ipcRenderer.invoke + contextBridge | 受控 IPC,杜绝直接暴露 ipcRenderer |
| 插件资源 | 自定义 plugin:// 协议 | 静态资源隔离加载,路径越界防护 |
| 持久化 | JSON + 原子写(tmp + rename) | 损坏配置静默重置、插件数据损坏先备份再兜底 |
内置能力一览
- 截图悬浮(
Ctrl+Shift+A):框选截图钉在屏幕上,缩放 / 透明度 / OCR 文字提取 - 屏幕画板(
Ctrl+Shift+D):全屏透明画板,画笔 / 图形 / 撤销重做 / 导出 PNG - 剪贴板历史(
Ctrl+Shift+V):多条历史、置顶收藏、图片预览、一键回填 - JSON 编辑器 / 编码转换 / 色彩工坊 / 端口进程 / 镜像源切换 / 计算器 / 备忘录 等十余个内置插件
- AI 对话:本地 Agent 助手,多轮工具循环、MCP 生态、子代理派生
- 工作流编排:触发器(手动 / 剪贴板)+ 步骤链 + 插件能力节点 + 数据管道
完整列表见 内置插件一览。
文档导航
| 内容 | 适合谁 |
|---|---|
| 快速开始 | 想跑起来、打包发布的人 |
| 架构总览 | 想理解主进程 / 渲染层 / 插件如何协作的人 |
| 插件开发 | 想给自己写工具、或给社区贡献插件的人 |
| 宿主 API 参考 | 需要查通道清单、参数细节的人 |
开源协议
本项目采用双重许可:开源使用遵循 AGPL-3.0(衍生系统须同样开源);商业闭源分发需向版权所有者 Ikaros-521 购买商业授权。