跳转到内容

下载 Termii · v0.4.5

三分钟,装进你的 Dock

原生构建,包体仅数 MB。应用内自动更新,始终新鲜。

安装说明

macOS:若提示「无法打开」,在终端执行 xattr -dr com.apple.quarantine /Applications/Termii.app。Windows:首次运行可能触发 SmartScreen,选择「仍要运行」即可。

调试与排错

  • 开发宿主:npm run tauri dev 启动宿主。插件加载 / 激活的报错打在 webview 控制台(带 插件 <id> … 前缀)。
  • 插件自身日志:console.log / console.error 同样出现在 webview 控制台;activate(ctx) 里第一行打 ctx.apiVersion 可确认契约版本。
  • 构建报错:npx termii-plugin-sdk build … 的 esbuild 错误会指明 文件与行列;esbuild 缺失时脚手架给出友好提示(先在插件项目 npm install)。
  • manifest 校验:写插件时用 validateManifest 提前校验清单,错误为 中文、逐条收集。
症状 原因 处理
toast「插件 X 需要更新的 Termii 版本」 声明 apiVersion > 3 降低声明值,见 apiVersion 契约
插件加载失败(无具体信息) manifest.id 与目录名不一致 / bundle 缺 default export / bundle 内 manifest 缺失 检查 plugin.json 与 src/manifest.js 一致;确认构建产物是最新的 main.js
设置页显示「缺少前置依赖」 dependencies 中的插件未安装 / 未启用 / 未信任 先启用并信任依赖插件;检查依赖 id 拼写(kebab-case)
提示未获授权(进程 / sidecar) L1 能力未在信任弹窗确认 「设置 → 插件」重新确认能力声明(卸载重装会要求重新信任)
ctx.sidecar.call 报「当前平台无对应二进制」 sidecar.binaries 缺少当前平台键 补上 <os>-<arch> 键(如 darwin-aarch64)
注册贡献点后界面没有出现 贡献点 id 未加 <pluginId>. 前缀被拒绝 显式写全前缀 id,见 贡献点
  • CSP 允许 script-src blob:——外部插件经 Blob URL 加载,插件内不允许 远程脚本 / 样式。
  • 网络请求走页面级 fetch(connect-src 只放行 https: 与宿主 IPC); 需要访问远程 API 时在插件内直接 fetch,或经 ctx.hosts.exec 在远端 主机执行。

官方插件与第三方完全等同,也是从磁盘加载的外部插件:改 plugins/official/<id>/src/ 后运行 npm run build:plugins(或单独构建某个插件)重新生成 main.js, 再到应用内「设置 → 插件」重新启用即可生效。发布流程见 官方插件开发与发布。