Skip to content

Releases: bigbay957-sudo/workbuddy-for-obsidian

0.10.1

Choose a tag to compare

@github-actions github-actions released this 15 Sep 07:42

WorkBuddy for Obsidian 0.10.1

本版本是一次面向 Obsidian 社区目录审核的合规修复:把审核报告里列出的问题逐条清零,并补上发布资产的构建来源证明。功能行为不变。

本次更新

发布合规(审核报告的「发布」区块)

  • 移除 Release 里的多余文件:发布流程原来会额外打包一个 workbuddy-for-obsidian-x.y.z.zip 并上传。Obsidian 只认 main.js / manifest.json / styles.css 三个资产,多余文件会让资产校验不通过。打包步骤已从工作流中删除。
  • 补上 GitHub 构建来源证明:Release 现在会为 main.jsstyles.css 签发 artifact attestation,任何用户都可以加密验证这两个文件确实由本仓库的源码构建得出。

代码规范(审核报告的「源代码」区块)

  • 修复唯一一条硬错误 no-static-styles-assignment:不再直接赋值 element.style.*
    • 模型下拉框的实测宽度改由 CSS 自定义属性 --wb-model-select-width 传递(setCssProps),
      styles.css 里用 width: var(--wb-model-select-width, auto) 消费。
    • 离屏测宽探针的排版样式移入 CSS 类 .workbuddy-measure-probe
  • 正则不再含控制字符:文件名清洗从 /[\\/:*?"<>|#\[\]^\x00-\x1f]/g 改为按码位逐字符判断,
    同时消除了「意外的控制字符」与「不必要的转义字符」两条告警。该实现现由 src/core/local-upload.ts
    统一导出,chat-view.ts 里重复的一份已删除。
  • 去掉多余的类型断言workbuddy-client.ts_metachat-view.tscontainerEl
    replaceRangeto 参数都不需要断言。
  • 修掉 Promise 误用:5 处 addEventListener(..., async () => {}) 改为 () => void fn()
    不再把 Promise 丢给期望 void 的回调。
  • 弹出窗口兼容requestAnimationFramewindow.requestAnimationFrame
    instanceof ElementinstanceOf(Element)(跨窗口安全)。
  • 改用 Obsidian DOM 辅助函数document.createDocumentFragment()createFragment()
    document.createElement("a")createEl("a")document.createElement("span")createSpan()
  • 移除 require("electron"):改为读取 Electron 注入在 window 上的 require,行为一致。
  • 不再用 String(unknown)workbuddy-client.ts 的工具名与 event-normalizer.ts 的兜底
    字符串化都改为显式收敛,避免产出无信息量的 [object Object]

设置面板改为声明式 API

  • 迁移到 Obsidian 1.13.0 起的 getSettingDefinitions()所有设置项现在都能被 Obsidian 的
    设置搜索搜到
    display() 与已弃用的 setWarning() 一并移除。
  • 「检测 CLI 路径」由原来紧贴输入框的按钮改为独立一行操作项;「自定义快捷指令」通过 render
    逃生舱保留原有的多行编辑布局(增删后会调用 update() 重建)。
  • 数值型设置(字号、上下文字符上限)在写回前收敛回 number,不会在 data.json 里存成字符串。

需要留意的变更

  • 最低 Obsidian 版本从 1.7.2 提升到 1.13.0。声明式设置 API 与 ButtonComponent.setDestructive
    都要求 1.13.0+;当前这台机器的 Obsidian 已是 1.13.x,桌面端默认自动更新,正常无需手动处理。
  • 旧版 styles.css 中的 ui-monospace / system-ui 兜底已换成普通等宽/无衬线字体栈
    (审核 CSS LINT 报告 Obsidian 1.6.5 不支持 extended-system-fonts)。前者仅为兜底项,
    插件启动后始终会写入 --wb-body-font,实际观感不变。

安装

在 Obsidian「设置 → 第三方插件 → 浏览」中搜索 WorkBuddy AI 安装并启用。

手动安装:下载 Release 中的 main.jsmanifest.jsonstyles.css,放进
<你的知识库>/.obsidian/plugins/workbuddy-ai/,重启后在第三方插件里启用。已安装旧版本的用户覆盖这三个文件即可,data.json 无需改动。

注意:插件目录名是插件 ID workbuddy-ai(不是仓库名)。从 0.10.0 或更早版本升级时若目录名不同,
请以 Obsidian 实际创建/识别的目录为准。

前置条件

需要 Obsidian 桌面版 1.13.0+,以及已经安装并登录的 WorkBuddy CLI:

npm install -g @tencent-ai/codebuddy-code
codebuddy

校验

  • eslint-plugin-obsidianmd 复核:0 error(仅剩 13 条与品牌大小写有关的 ui/sentence-case
    提示,原审核报告未列出,保持 "WorkBuddy" 品牌写法)。
  • TypeScript 类型检查通过。
  • 自动化测试通过(15 个文件 / 55 个用例)。
  • 生产构建通过;构建产物与发布版本逐字节一致。

Full Changelog: 0.10.0...0.10.1

0.10.0 — 移除自更新(社区目录合规)

Choose a tag to compare

@bigbay957-sudo bigbay957-sudo released this 15 Sep 04:40

0.10.0 — 移除插件自更新功能(Obsidian 社区目录合规)

为什么移除

Obsidian 开发者政策明确禁止社区插件「Install or update themselves or their dependencies」。
插件原有的「检查更新 → 下载 main.js / manifest.json / styles.css → 覆盖插件自身」整条链路
已彻底删除,以避免在社区目录审核中被判定违规。

移除内容

  • 删除模块:src/core/plugin-updater.tssrc/core/version.tssrc/ui/update-modal.ts
    tests/version.test.ts
  • 清理引用:主程序(更新检查命令、启动时定时检查、checkForUpdatesreadPluginError)、
    设置面板(「插件更新」区块:GitHub 更新仓库 / 启动时检查更新)、类型定义、样式
  • 移除后插件自身不再发起任何网络请求,也不再读写 vault 之外的文件

新增合规披露

README 中英文双节新增「合规披露 / Disclosures」,明确说明:
需要 WorkBuddy 账号、网络访问由本机 CLI 发起(插件自身不联网)、
访问 vault 之外文件的原因与边界、无遥测与广告、不自更新。PRIVACY.md 同步更新。

影响

  • 插件更新改由 Obsidian 自带的社区插件更新机制负责(上架后)。
  • 命令 ID 保持 0.9.9 的规范化结果:workbuddy-ai:open / :new-chat
  • 遗留设置键(updateRepository / autoCheckUpdates)会被静默忽略,无需清理 data.json

安装

从本 Release 下载 main.jsmanifest.jsonstyles.css,放入 vault 的
.obsidian/plugins/workbuddy-ai/,重启 Obsidian 后在社区插件中启用。

桌面端插件,需本机已安装并登录 WorkBuddy / codebuddy CLI。

Full Changelog: 0.9.9...0.10.0

0.9.9 — 社区目录提交准备

Choose a tag to compare

@bigbay957-sudo bigbay957-sudo released this 15 Sep 04:35

0.9.9 — 社区目录提交准备

本版

  • 命令 ID 去掉冗余前缀:Obsidian 会自动为命令 ID 加插件 ID 前缀,官方要求命令 ID 中
    不要再包含插件 ID。open-workbuddy / new-workbuddy-chat / check-workbuddy-updates
    改为 open / new-chat / check-updates(注册后为 workbuddy-ai:open 等)。
    ⚠️ 曾给这些命令绑过快捷键的话,需要在「设置 → 快捷键」重新绑定。
  • 合并远程并行的 0.8.x 开发线(社区商店改名合规、CSS lint 修复、README 标题、
    showToolCalls 开关等 20 个提交)—— 逐项核对确认其改动已全部包含在 0.9.x 中,
    故以本地 0.9.x 为准合并,远程提交与 0.8.7/0.8.8/0.8.9 标签保留在历史中。
  • 提交前合规复核:innerHTML 0 处、vault.modify 0 处、示例代码无残留、
    isDesktopOnly: true、description 146 字符且句号结尾、无 fundingUrl

0.9.1 – 0.9.8 累积变化

  • 0.9.8 思考过程流式输出时自动滚到最新文字(pre 内部 + 外层两层跟随)。
  • 0.9.7 思考过程默认展开;修正向 CLI 上报的插件版本号。
  • 0.9.6 思考过程改用简体中文推理(可关闭)。
  • 0.9.5 模型下拉宽度按当前选中项自适应,长模型名不再被裁。
  • 0.9.4 回答正文改为更小更纤细的排版(13px + 无衬线栈,可在设置里调)。
  • 0.9.3 移除「收藏回答」;0.9.2 移除冗余的「复制选中」;0.9.1 修复正文无法拖选复制。

安装

从本 Release 下载 main.jsmanifest.jsonstyles.css,放入 vault 的
.obsidian/plugins/workbuddy-ai/,重启 Obsidian 后在社区插件中启用。

桌面端插件,需本机已安装 WorkBuddy / codebuddy CLI。

Full Changelog: 0.9.8...0.9.9

0.9.8 — 思考过程流式输出时自动跟随滚动

Choose a tag to compare

@bigbay957-sudo bigbay957-sudo released this 15 Sep 04:34

0.9.8 — 思考过程流式输出时自动滚到最新文字

本版

  • 思考过程自动跟随:追加文字后先滚 pre 自身、再滚外层容器。.workbuddy-thought pre
    max-height: 180px,内容超过后外层容器停止长高、新文字落入 pre 内部滚动区 ——
    只滚外层仍有 414px 看不见,两层都滚则为 0(无头 Chromium 实测)。
  • 滚动请求每帧合并:思考 delta 一帧可能来多个,逐个触发平滑滚动会互相打断、位置反而落后。
  • 折叠态跳过滚动;用户拖选时跳过(不抢选区)。

0.9.1 – 0.9.7 累积变化

  • 0.9.7 思考过程默认展开(可在设置里改回折叠);修正向 CLI 上报的插件版本号。
  • 0.9.6 思考过程改用简体中文推理(可关闭,提示词侧约束)。
  • 0.9.5 模型下拉宽度按当前选中项自适应,长模型名不再被裁切。
  • 0.9.4 回答正文改为更小 / 更纤细的排版(13px + 无衬线栈 + antialiased,字号字体可在设置里调)。
  • 0.9.3 移除「收藏回答」功能。
  • 0.9.2 移除冗余的「复制选中」按钮。
  • 0.9.1 修复回答正文无法拖选复制的问题。

安装

下载 main.jsmanifest.jsonstyles.css 放入 vault 的
.obsidian/plugins/workbuddy-ai/,重启 Obsidian 后在社区插件里启用。

本插件需要本机已安装 WorkBuddy / codebuddy CLI。

0.8.9

Choose a tag to compare

@bigbay957-sudo bigbay957-sudo released this 27 Aug 01:58

v0.8.9 — tag points to latest commit with all lint fixes + showToolCalls toggle

Full Changelog: 0.8.8...0.8.9

0.8.8

Choose a tag to compare

@bigbay957-sudo bigbay957-sudo released this 26 Aug 08:22

v0.8.8 — 修复社区商店自动审核问题(描述去掉 Obsidian、settings 用 Setting API、CSS 去掉 !important)

Full Changelog: 0.8.7...0.8.8

0.8.7

Choose a tag to compare

@bigbay957-sudo bigbay957-sudo released this 26 Aug 06:36

v0.8.7 — rename plugin name to 'WorkBuddy AI' (community store rejects names containing 'Obsidian')

Full Changelog: 0.8.6...0.8.7

0.8.6

Choose a tag to compare

@bigbay957-sudo bigbay957-sudo released this 26 Aug 03:20

v0.8.6 — rename plugin ID to workbuddy-ai

Full Changelog: 0.8.5...0.8.6

0.8.5

Choose a tag to compare

@github-actions github-actions released this 26 Aug 02:39

Full Changelog: 0.8.4...0.8.5

0.8.4

Choose a tag to compare

@github-actions github-actions released this 22 Aug 01:32

WorkBuddy for Obsidian 0.8.4

本版本聚焦于模型选择器的细节打磨:让 Auto 默认行为更顺手、显示更稳定;并同步刷新了 README 截图,体现当前真实界面状态。

本次更新

模型选择器常显与默认 Auto

  • 打开任务页即可在左下角看到模型下拉,未取得列表前显示 Auto连接中…连接失败 等占位,悬浮提示说明当前状态。
  • 取得列表后默认仍选中 Auto,与 WorkBuddy 的 auto 模式对齐;用户手动选过的模型会被记住。
  • 首次拉取到列表后,若 CLI 当前值不是 auto,会静默调用 session/setConfigOption 切到 auto;setConfigOption 新增 silent 参数,CLI 不接受 auto 时不打扰会话。

视觉与交互修复

  • 模型下拉固定宽度(112px),不再随选项文字自适应变化而从窄变宽跳动。
  • lowercase value 去重,合并 CLI 偶尔返回的 hy3Hy3 等仅大小写不同的重复条目。
  • 移除模型选择器左侧多余的图标,按钮高度与相邻的 @ 资料关联资料 按钮自然对齐。
  • 选项文案 Auto(自动选择) 简化为 Auto

文档

  • 替换 README.md 截图,反映最新的 0.8.x 界面状态。
  • 同步更新功能亮点与“多任务与聊天记录”段,删除已废弃的资料包/撤销修改描述,新增模型与人设段。

安装

下载 workbuddy-for-obsidian-0.8.4.zip,解压到 <你的知识库>/.obsidian/plugins/workbuddy-for-obsidian/,然后在 Obsidian 的第三方插件设置中启用。已安装旧版本的用户覆盖 main.jsmanifest.jsonstyles.css 三个文件即可,data.json 配置无需改动。

前置条件

需要 Obsidian 桌面版 1.7.2+,以及已经安装并登录的 WorkBuddy CLI:

npm install -g @tencent-ai/codebuddy-code
codebuddy

校验

  • TypeScript 类型检查通过。
  • 自动化测试通过(35 个用例)。
  • 生产构建通过。

Full Changelog: 0.8.3...0.8.4