diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 21cfbbd..725b459 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,10 +27,10 @@ jobs: steps: - name: Check out source - uses: actions/checkout@v4 + uses: actions/checkout@v5 - name: Set up Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v5 with: node-version: 24 cache: npm diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 68d8cf5..34fb634 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -20,7 +20,7 @@ jobs: working-directory: toolknit-desktop steps: - name: Checkout - uses: actions/checkout@v4 + uses: actions/checkout@v5 with: fetch-depth: 0 @@ -77,7 +77,7 @@ jobs: } - name: Setup Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v5 with: node-version: 24 cache: npm diff --git a/.gitignore b/.gitignore index 2cf937d..fa32aa5 100644 --- a/.gitignore +++ b/.gitignore @@ -15,9 +15,10 @@ build-log*.txt dev-error.log # 敏感配置 +.npmrc .env -.env.local -.env.*.local +.env.* +!.env.example # 系统文件 .DS_Store diff --git a/CODE_SIGNING_POLICY.md b/CODE_SIGNING_POLICY.md index b760bcd..521dbf3 100644 --- a/CODE_SIGNING_POLICY.md +++ b/CODE_SIGNING_POLICY.md @@ -4,7 +4,7 @@ ToolKnit has applied for the SignPath Foundation open-source code-signing program. This policy becomes operational only after that application is approved and the signing workflow is integrated. -ToolKnit Desktop 2.1.0 is **not** signed through SignPath. Its release integrity is verified with the SHA-256 checksum published alongside the installer. +ToolKnit Desktop 2.1.1 is **not** signed through SignPath. Its release integrity is verified with the SHA-256 checksum published alongside the installer. ## Signing service and scope diff --git a/README.md b/README.md index c511fe9..eb2ffed 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@

- ToolKnit 2.1.0 + ToolKnit 2.1.1 Windows 10/11 Local first Tauri 2.x @@ -45,7 +45,7 @@

Windows desktop 再用桌面端

Windows 本地优先版本,适合长期文件工作、离线处理和可视化编辑。

查看桌面端下载

- 2.1.0 安装包、校验文件和版本说明会同步到 Release。 + 2.1.1 安装包、校验文件和版本说明会同步到 Release。 @@ -67,9 +67,9 @@ ToolKnit Desktop 2.1 是一套面向 Windows 的本地文件工作台。它把 -## 2.1.0 新功能 +## 2.1 系列新功能 -2.1.0 新增 11 项桌面工具,并围绕自定义背景、玻璃拟态交互、依赖复用、任务生命周期和失败恢复完成一轮系统升级。新工具继续遵循本地优先原则,重型编辑器与算法模块按需加载,离开页面后会释放 Worker、Canvas、监听器和临时资源。 +2.1 系列新增 11 项桌面工具,并围绕自定义背景、玻璃拟态交互、依赖复用、任务生命周期和失败恢复完成一轮系统升级。新工具继续遵循本地优先原则,重型编辑器与算法模块按需加载,离开页面后会释放 Worker、Canvas、监听器和临时资源。 @@ -365,11 +365,11 @@ ToolKnit 2.1 采用轻量桌面容器与本地文件引擎组合,网页端、 ### 安装 Windows 桌面端 -从 [GitHub Releases](https://github.com/ZihangDong/toolknit-desktop/releases) 获取安装包。2.1.0 正式发布后,安装包、校验文件和版本说明会在 Release 页面同步提供。 +从 [GitHub Releases](https://github.com/ZihangDong/toolknit-desktop/releases) 获取安装包。2.1.1 正式发布后,安装包、校验文件和版本说明会在 Release 页面同步提供。 正式安装包发布前请以仓库 Release 页面为准,并在运行前核对同页提供的 SHA-256 校验值。 -**代码签名状态:** 2.1.0 尚未使用 SignPath 签名流程。项目已申请 SignPath Foundation 的开源代码签名支持;获批并完成集成后,后续版本将按照[代码签名政策](CODE_SIGNING_POLICY.md)签名。 +**代码签名状态:** 2.1.1 尚未使用 SignPath 签名流程。项目已申请 SignPath Foundation 的开源代码签名支持;获批并完成集成后,后续版本将按照[代码签名政策](CODE_SIGNING_POLICY.md)签名。 ### 从源码运行 diff --git a/README_EN.md b/README_EN.md index fb3e7a0..9167ff5 100644 --- a/README_EN.md +++ b/README_EN.md @@ -18,7 +18,7 @@

Simplified Chinese README - ToolKnit 2.1.0 official release + ToolKnit 2.1.1 official release Windows 10/11 Local-first Tauri 2.x @@ -46,7 +46,7 @@

Windows desktop Use the desktop app

A local-first Windows app for long-running file work, offline processing, and visual editing.

View desktop downloads

- The 2.1.0 installer, checksum, and release notes are published through GitHub Releases. + The 2.1.1 installer, checksum, and release notes are published through GitHub Releases.
@@ -68,9 +68,9 @@ The same local file can be previewed in the desktop app, batch-processed by the -## What's new in 2.1.0 +## What's new in the 2.1 series -Version 2.1.0 adds 11 desktop tools and delivers a broader upgrade across custom backgrounds, glass interactions, local dependency reuse, task lifecycle management, and failure recovery. Heavy editors and algorithm modules load on demand, while Workers, canvases, listeners, and temporary resources are released when a tool closes. +The 2.1 series adds 11 desktop tools and delivers a broader upgrade across custom backgrounds, glass interactions, local dependency reuse, task lifecycle management, and failure recovery. Heavy editors and algorithm modules load on demand, while Workers, canvases, listeners, and temporary resources are released when a tool closes. @@ -366,9 +366,9 @@ Open [ToolKnit.com](https://toolknit.com) to start using the web tools without i ### Install the Windows desktop app -Download the installer from [GitHub Releases](https://github.com/ZihangDong/toolknit-desktop/releases). The 2.1.0 installer, checksum files, and release notes are kept on the Release page. Verify the SHA-256 checksum before running the installer. +Download the installer from [GitHub Releases](https://github.com/ZihangDong/toolknit-desktop/releases). The 2.1.1 installer, checksum files, and release notes are kept on the Release page. Verify the SHA-256 checksum before running the installer. -**Code-signing status:** Version 2.1.0 does not use the SignPath signing workflow. The project has applied for SignPath Foundation open-source code-signing support; once approved and integrated, future versions will follow the [code-signing policy](CODE_SIGNING_POLICY.md). +**Code-signing status:** Version 2.1.1 does not use the SignPath signing workflow. The project has applied for SignPath Foundation open-source code-signing support; once approved and integrated, future versions will follow the [code-signing policy](CODE_SIGNING_POLICY.md). ### Run from source diff --git a/toolknit-desktop/CHANGELOG.md b/toolknit-desktop/CHANGELOG.md index 33fafbd..a23de99 100644 --- a/toolknit-desktop/CHANGELOG.md +++ b/toolknit-desktop/CHANGELOG.md @@ -3,6 +3,15 @@ > 与网页端完整更新历史保持同步: > https://toolknit.com/changelog.html +## v2.1.1 (2026-08-25) + +### 版本与界面标识 + +- 设置页、帮助入口和工具页的当前视觉版本标识统一为 2.1,并修正程序声明与使用规范的适用版本和更新日期。 +- 桌面应用、Tauri、Rust crate 与 `@toolknit/cli` 发布版本统一升级为 `2.1.1`。 +- 新增发布版本一致性测试,并强化工作流依赖与本地敏感配置忽略规则,避免标签、安装包、CLI 和界面版本再次漂移。 +- 保留 v2.1.0 功能记录、贡献归属及 v2.0 历史里程碑,不将依赖版本或历史内容改写为当前版本。 + ## v2.1.0 / v2.1 (2026-08-25) ### 11 项新增桌面工具 diff --git a/toolknit-desktop/README.md b/toolknit-desktop/README.md index 2711b14..14a078a 100644 --- a/toolknit-desktop/README.md +++ b/toolknit-desktop/README.md @@ -84,6 +84,12 @@ ToolKnit Desktop 是 ToolKnit 网页端的开源桌面配套版本。它面向
+### v2.1.1 版本修正 + +- 设置页、帮助入口和工具页的当前视觉版本标识统一为 2.1,与当前系列保持一致。 +- 程序声明与使用规范同步当前适用版本和更新日期,保留许可证、字体及历史发布说明中的原始版本信息。 +- 桌面应用、Tauri、Rust crate 与 `@toolknit/cli` 发布版本统一升级为 `2.1.1`,继续由共享发布契约检查版本一致性。 + ### v2.1.0 重点更新 v2.1 将发布重点放在本地文件安全、PDF 编辑深度和真实失败恢复上: diff --git a/toolknit-desktop/cli/lib/mcp-server.mjs b/toolknit-desktop/cli/lib/mcp-server.mjs index af9c609..c5f11c4 100644 --- a/toolknit-desktop/cli/lib/mcp-server.mjs +++ b/toolknit-desktop/cli/lib/mcp-server.mjs @@ -1,7 +1,7 @@ import { errorPayload, ToolKnitError } from './errors.mjs'; import { executeTool, listTools } from './tool-registry.mjs'; -const SERVER_INFO = Object.freeze({ name: 'toolknit', version: '2.1.0' }); +const SERVER_INFO = Object.freeze({ name: 'toolknit', version: '2.1.1' }); const SUPPORTED_PROTOCOLS = new Set(['2024-11-05', '2025-03-26', '2025-06-18']); function response(id, result) { diff --git a/toolknit-desktop/cli/npm-shrinkwrap.json b/toolknit-desktop/cli/npm-shrinkwrap.json index e355e35..b10cbb9 100644 --- a/toolknit-desktop/cli/npm-shrinkwrap.json +++ b/toolknit-desktop/cli/npm-shrinkwrap.json @@ -1,12 +1,12 @@ { "name": "@toolknit/cli", - "version": "2.1.0", + "version": "2.1.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@toolknit/cli", - "version": "2.1.0", + "version": "2.1.1", "license": "Apache-2.0", "dependencies": { "@napi-rs/canvas": "^1.0.1", diff --git a/toolknit-desktop/cli/package.json b/toolknit-desktop/cli/package.json index 27ffec0..ca58356 100644 --- a/toolknit-desktop/cli/package.json +++ b/toolknit-desktop/cli/package.json @@ -1,6 +1,6 @@ { "name": "@toolknit/cli", - "version": "2.1.0", + "version": "2.1.1", "license": "Apache-2.0", "description": "Local-first file processing CLI and MCP server for ToolKnit", "type": "module", diff --git a/toolknit-desktop/cli/toolknit.mjs b/toolknit-desktop/cli/toolknit.mjs index 2109eff..c9d23d1 100644 --- a/toolknit-desktop/cli/toolknit.mjs +++ b/toolknit-desktop/cli/toolknit.mjs @@ -41,7 +41,7 @@ import { editAiTableProject, generateAiTableProject, inspectAiTableProjectFile, import { installTranscriptionModel, listTranscriptionModels, setCurrentTranscriptionModel, transcribeMedia } from './lib/transcription-runtime.mjs'; import { TaskRunner } from './lib/shared/task-runtime.mjs'; -const VERSION = '2.1.0'; +const VERSION = '2.1.1'; const CLI_ABORT_CONTROLLER = new AbortController(); let CLI_SIGNAL_COUNT = 0; diff --git a/toolknit-desktop/docs/cli-agent.md b/toolknit-desktop/docs/cli-agent.md index 922fcb4..25f006f 100644 --- a/toolknit-desktop/docs/cli-agent.md +++ b/toolknit-desktop/docs/cli-agent.md @@ -21,7 +21,7 @@ For a local release archive, install with npm's optional network checks disabled ```powershell npm pack .\cli -npm install --global --no-audit --no-fund --prefer-offline .\toolknit-cli-2.1.0.tgz +npm install --global --no-audit --no-fund --prefer-offline .\toolknit-cli-2.1.1.tgz ``` ## Command help diff --git a/toolknit-desktop/index.html b/toolknit-desktop/index.html index 11398ad..2cc7d22 100644 --- a/toolknit-desktop/index.html +++ b/toolknit-desktop/index.html @@ -62,7 +62,7 @@ 返回首页 - ToolKnit 2.0 Settings + ToolKnit 2.1 Settings
- AUDIO TOOLS · TOOL PAGE 2.0 + AUDIO TOOLS · TOOL PAGE 2.1
- SYSTEM · TOOL PAGE 2.0 + SYSTEM · TOOL PAGE 2.1
- CPU / MEMORY · TOOL PAGE 2.0 + CPU / MEMORY · TOOL PAGE 2.1
- GPU / DISPLAY · TOOL PAGE 2.0 + GPU / DISPLAY · TOOL PAGE 2.1
- BOARD · TOOL PAGE 2.0 + BOARD · TOOL PAGE 2.1
- STORAGE · TOOL PAGE 2.0 + STORAGE · TOOL PAGE 2.1
- DEVICES · TOOL PAGE 2.0 + DEVICES · TOOL PAGE 2.1
- POWER · TOOL PAGE 2.0 + POWER · TOOL PAGE 2.1
- CLEANUP STUDIO · TOOL PAGE 2.0 + CLEANUP STUDIO · TOOL PAGE 2.1
- TEXT TOOLS · TOOL PAGE 2.0 + TEXT TOOLS · TOOL PAGE 2.1
- IMAGE TOOLS · TOOL PAGE 2.0 + IMAGE TOOLS · TOOL PAGE 2.1
- IMAGE TOOLS · TOOL PAGE 2.0 + IMAGE TOOLS · TOOL PAGE 2.1
- IMAGE TOOLS · TOOL PAGE 2.0 + IMAGE TOOLS · TOOL PAGE 2.1
- VIDEO CONVERTER · TOOL PAGE 2.0 + VIDEO CONVERTER · TOOL PAGE 2.1
- FRAME CAPTURE · TOOL PAGE 2.0 + FRAME CAPTURE · TOOL PAGE 2.1
- IMAGE STITCH · TOOL PAGE 2.0 + IMAGE STITCH · TOOL PAGE 2.1
- GIF STUDIO · TOOL PAGE 2.0 + GIF STUDIO · TOOL PAGE 2.1
- BPM DETECTOR · TOOL PAGE 2.0 + BPM DETECTOR · TOOL PAGE 2.1
- AUDIO CLIP · TOOL PAGE 2.0 + AUDIO CLIP · TOOL PAGE 2.1
- AUDIO EXTRACTOR · TOOL PAGE 2.0 + AUDIO EXTRACTOR · TOOL PAGE 2.1
- PDF MERGER · TOOL PAGE 2.0 + PDF MERGER · TOOL PAGE 2.1
- PDF SPLITTER · TOOL PAGE 2.0 + PDF SPLITTER · TOOL PAGE 2.1
- PDF TO IMAGE · TOOL PAGE 2.0 + PDF TO IMAGE · TOOL PAGE 2.1
- PDF EDITOR · TOOL PAGE 2.0 + PDF EDITOR · TOOL PAGE 2.1
- PDF ROTATOR · TOOL PAGE 2.0 + PDF ROTATOR · TOOL PAGE 2.1
- PDF ENCRYPTOR · TOOL PAGE 2.0 + PDF ENCRYPTOR · TOOL PAGE 2.1
- PDF DECRYPTOR · TOOL PAGE 2.0 + PDF DECRYPTOR · TOOL PAGE 2.1
- PDF ENHANCER · TOOL PAGE 2.0 + PDF ENHANCER · TOOL PAGE 2.1
- AI POLISH · TOOL PAGE 2.0 + AI POLISH · TOOL PAGE 2.1
- AI TRANSLATE · TOOL PAGE 2.0 + AI TRANSLATE · TOOL PAGE 2.1
- AI DOCUMENT · TOOL PAGE 2.0 + AI DOCUMENT · TOOL PAGE 2.1
- AI TABLE · TOOL PAGE 2.0 + AI TABLE · TOOL PAGE 2.1
- COLOR LAB · TOOL PAGE 2.0 + COLOR LAB · TOOL PAGE 2.1
@@ -5447,7 +5447,7 @@

配色提 返回首页 - TEXT STATS · TOOL PAGE 2.0 + TEXT STATS · TOOL PAGE 2.1

- TEXT FORMAT · TOOL PAGE 2.0 + TEXT FORMAT · TOOL PAGE 2.1
@@ -5718,7 +5718,7 @@

处理结果

返回首页 - TYPING · TOOL PAGE 2.0 + TYPING · TOOL PAGE 2.1
- BODY FAT · TOOL PAGE 2.0 + BODY FAT · TOOL PAGE 2.1
- TIMESTAMP · TOOL PAGE 2.0 + TIMESTAMP · TOOL PAGE 2.1
- MORTGAGE · TOOL PAGE 2.0 + MORTGAGE · TOOL PAGE 2.1
- INTEREST · TOOL PAGE 2.0 + INTEREST · TOOL PAGE 2.1
- PASSWORD · TOOL PAGE 2.0 + PASSWORD · TOOL PAGE 2.1
- AI DOCUMENT EDITOR · TOOL PAGE 2.0 + AI DOCUMENT EDITOR · TOOL PAGE 2.1
- PDF COMPRESSOR · TOOL PAGE 2.0 + PDF COMPRESSOR · TOOL PAGE 2.1
- PPT TO PDF · TOOL PAGE 2.0 + PPT TO PDF · TOOL PAGE 2.1
- PPT TO IMAGE · TOOL PAGE 2.0 + PPT TO IMAGE · TOOL PAGE 2.1
- PPT ASSETS · TOOL PAGE 2.0 + PPT ASSETS · TOOL PAGE 2.1
- PPT TEXT AI · TOOL PAGE 2.0 + PPT TEXT AI · TOOL PAGE 2.1
- PPT COMPRESSOR · TOOL PAGE 2.0 + PPT COMPRESSOR · TOOL PAGE 2.1
- PPT OUTLINE AI · TOOL PAGE 2.0 + PPT OUTLINE AI · TOOL PAGE 2.1
- PPT DRAFT AI · TOOL PAGE 2.0 + PPT DRAFT AI · TOOL PAGE 2.1
- PPT DRAFT AI · TOOL PAGE 2.0 + PPT DRAFT AI · TOOL PAGE 2.1
@@ -8418,7 +8418,7 @@

-
v2.1.0
+
v2.1.1
@@ -8579,7 +8579,7 @@

搜索全部工具

@@ -9812,7 +9812,7 @@

需要配 返回首页 - SYSTEM CLEANUP · TOOL PAGE 2.0 + SYSTEM CLEANUP · TOOL PAGE 2.1
` } }; diff --git a/toolknit-desktop/src/locales/en.json b/toolknit-desktop/src/locales/en.json index 1d8e6ac..3899a97 100644 --- a/toolknit-desktop/src/locales/en.json +++ b/toolknit-desktop/src/locales/en.json @@ -30,7 +30,7 @@ "welcomeTitle": "Home", "welcomeDesc": "Welcome to the ToolKnit toolkit.", "homeCategoryDesc": "Welcome to the ToolKnit toolkit.", - "posterKicker": "TOOLKNIT / DESKTOP 2.0", + "posterKicker": "TOOLKNIT / DESKTOP 2.1", "posterDesc": "A workbench for local file processing", "webVersion": "Web version", "supportAuthor": "Support the author", diff --git a/toolknit-desktop/src/locales/zh.json b/toolknit-desktop/src/locales/zh.json index 5adb5bd..3d8a599 100644 --- a/toolknit-desktop/src/locales/zh.json +++ b/toolknit-desktop/src/locales/zh.json @@ -30,7 +30,7 @@ "welcomeTitle": "首页", "welcomeDesc": "欢迎来到 ToolKnit 工具集。", "homeCategoryDesc": "欢迎来到 ToolKnit 工具集。", - "posterKicker": "TOOLKNIT / DESKTOP 2.0", + "posterKicker": "TOOLKNIT / DESKTOP 2.1", "posterDesc": "为本地文件工作准备的处理台", "webVersion": "网页端版本", "supportAuthor": "支持作者", diff --git a/toolknit-desktop/src/main.js b/toolknit-desktop/src/main.js index 8ce5df5..fcd7961 100644 --- a/toolknit-desktop/src/main.js +++ b/toolknit-desktop/src/main.js @@ -2862,7 +2862,7 @@ const versionUpdateStatus = document.getElementById('versionUpdateStatus'); const checkVersionUpdateBtn = document.getElementById('checkVersionUpdateBtn'); const openReleasePageBtn = document.getElementById('openReleasePageBtn'); - const APP_VERSION_FALLBACK = '2.1.0'; + const APP_VERSION_FALLBACK = '2.1.1'; const GITHUB_LATEST_RELEASE_API = 'https://api.github.com/repos/ZihangDong/toolknit-desktop/releases/latest'; const GITHUB_RELEASES_PAGE = 'https://github.com/ZihangDong/toolknit-desktop/releases/latest'; let versionCheckRunning = false; diff --git a/toolknit-desktop/src/markdown-editor-ui.js b/toolknit-desktop/src/markdown-editor-ui.js index e7c5a4a..e88b239 100644 --- a/toolknit-desktop/src/markdown-editor-ui.js +++ b/toolknit-desktop/src/markdown-editor-ui.js @@ -46,7 +46,7 @@ export function initMarkdownEditorTool({ overlay, notify = message => window.sho mermaid.initialize({ startOnLoad: false, securityLevel: 'strict', theme: 'neutral', fontFamily: 'system-ui, sans-serif' }); overlay.innerHTML = `
- ${toolTopbarMarkup({ tag: 'MARKDOWN EDITOR · TOOL PAGE 2.0', title: 'Markdown 文档编辑器', closeAttr: 'data-md-close' })} + ${toolTopbarMarkup({ tag: 'MARKDOWN EDITOR · TOOL PAGE 2.1', title: 'Markdown 文档编辑器', closeAttr: 'data-md-close' })}