yudshj
9df26413ee
refactor(office): Office 技能统一读取包内 assets,移除包外 office-skills 拷贝与 DSH_BUNDLED_OFFICE_SKILLS
...
- web-app、sdk-app 的 skill-office 不再覆盖 assetRoot;pythonEnvironment 不变
- Desktop 与 Python SDK 打包不再生成 office-skills 资源目录,删除 prepareOfficeSkillAssets 与 skillSource
- Desktop 打包 smoke 校验 4 个 Office 技能可从运行时归档列出并加载
- 同步测试、README、Agent Note,新增升级指南 office-skill-resources
2026-11-04 13:25:24 +00:00
yudshj
3f6cd80c9d
feat(office): Office 技能在 Web、SDK 均可加载
...
- web-app profile 不再限定 Desktop 才加载 skill-office;非 Desktop 时可用 DSH_BUNDLED_OFFICE_SKILLS 指定技能目录,否则使用随包技能,并指引模型使用用户自己的 Python
- sdk-app profile 不再要求 DSH_PRIMARY_RUNTIME 才加载 skill-office;没有 primary runtime 时使用随包技能和用户自己的 Python
- 相应刷新 SDK / Web snapshot 与 golden(首轮注入 Office 技能目录),并更新 README、Agent Note、升级指南和测试
2026-11-04 13:25:24 +00:00
yudshj
63e99a1f56
refactor(office): Office 技能在 Web 仅随 Desktop 加载、SDK 仅在有 primary runtime 时加载,开放加载移至后续 PR
2026-11-04 18:18:03 +08:00
yudshj
e90954631e
refactor(desktop): primaryRuntime 保持 Host argv 传入,由 desktop-host 写入 DSH_PRIMARY_RUNTIME,不再升级 Host 协议版本
...
- main.ts / host-process.ts / host-protocol.ts 恢复 master 的 argv 布局与协议版本 4
- desktop-host 在环境快照和 profile 求值前把 argv[4] 写入 DSH_PRIMARY_RUNTIME
- 相关测试、smoke 脚本与 fixture 恢复按构造参数传入 primaryRuntime
- 删除 README 与升级指南中「内置终端继承 DSH_PRIMARY_RUNTIME」的不实说明(子进程会清除 DSH_* 变量)
2026-11-04 18:18:02 +08:00
yudshj
c93d021286
fix(ci): isolate compiler scans and verify Office render results
2026-11-04 18:18:00 +08:00
yudshj
9d01969217
fix(office): 清理 /locate 残留文档,收窄 office 工具输出 schema
...
- 打包、document 分组、office-kit 子系统页与 Agent Note 改为提供方内部解析 Kit,不再引用已删除的 /locate 入口
- office_recalculate 输出 format 收窄为 xlsx/ods;office_render 图片 mediaType 去掉 GIF,存储返回 GIF 时明确报错
- 修正 office-kit 输出位置、技能数量、token 预算说明,补充 /office 直接调用的激活时机限制
- 升级指南说明继承的 DSH_PRIMARY_RUNTIME 优先于 SDK 下载缓存,刷新 office-progressive-ptc 系统提示快照
2026-11-04 18:17:59 +08:00
yudshj
edd38f1d66
refactor(office): office 工具拆成 office_render/office_convert/office_recalculate,加载 Office 技能后按需声明
...
- tool-office 注册三个工具,参数规则由各自 schema 表达,运行时拒绝其他工具的参数
- 三个工具共用 when:本 agent 成功加载过 activationSkills 中的技能(内存标记),或上一次请求头已声明 office_*;加载后下一步声明,之后不移除
- Office 技能改用新工具名,加入工具不可用时重新加载 office 的说明和旧格式先转换的说明
- Client 卡片按工具名分派,图片子槽改为 tool.call.office_render.images
- 删除未发布 office 工具的两份升级指南,新增 office-operation-tools 指南,只记录已发布版本的变化
- 刷新 catalog、snapshot、SDK expected 与 Agent Note
2026-11-04 18:17:59 +08:00
yudshj
012088543a
fix(office): PDF 导出后不再渲染,合并 DSH_BUNDLED_PRIMARY_RUNTIME 到 DSH_PRIMARY_RUNTIME
...
- office 路由技能:PDF 导出写明验收(复制的文件非空且以 `%PDF-` 开头)并在此停止;保留排版类任务主动渲染。office 工具让渲染只差一次调用后,模型常在导出后渲染 result.pdf 验收,e2e「exports PDF」因此失败。
- office-pptx / office-xlsx 删去不提供操作的免责句。
- Desktop、SDK 与 web-app 配置只读 DSH_PRIMARY_RUNTIME,空值视为未设置;SDK 启动器在用户未设置时才填入下载缓存路径。
- e2e 断言附带工具调用诊断;render 检测改用记录的 office 调用,新增 render-context.spec.ts。
- 同步 office 快照、README 与升级指南。
2026-11-04 18:17:58 +08:00
yudshj
50ba635949
feat(office): Office 操作改为常驻的原生 office 工具
...
- 新包 @deepseek-ai/dsh-tool-office 提供常驻的 office 工具(render / convert / recalculate),由 office-kit 在 Host 中直接调用 Kit 的 JS API;标准模式与 PTC 通过同一个工具调用
- render 的页面图片直接进入工具结果(有数量、像素与字节上限);convert / recalculate 的结果写入 office-kit 按 Session 划分的私有输出目录,由模型用 shell 复制到工作区,fs 与 Host 代码不写用户工作区
- 删除为 shell 执行 Kit CLI 而存在的代码:skill-office 的 node / cli / kitRoot、resolveKitCli、DSH_BUNDLED_OFFICE_CLI / DSH_BUNDLED_OFFICE_NODE / DSH_BUNDLED_RUNTIME_ROOT 与 Electron 下的独立 Node 检查;打包 smoke 改为经 office-kit 真实渲染、转换与重算
- office 由 web-app 的 standard / ptc 预设与 sdk-app 挂载,minimal 不挂载;操作技能正文与目录描述指向 office 工具
- 新增 Agent Note,部分取代 progressive-office-skills 的 shell 执行决定;同步 README、子系统页、catalog 与升级指南(含已保存预设的迁移步骤)
本 PR 的 snapshot 统一在这个提交里重新生成,前 4 个提交中的 snapshot 不一定和那一步的代码对应。
2026-11-04 18:17:58 +08:00
yudshj
a220e017b5
refactor(office): 合并为 office-kit,Kit 缺失时降级而非加载失败
...
- Kit CLI 由 office-kit/locate 在 Host 中定位(含 ASAR 映射与可选 root 越界检查),删除 Desktop 壳的 office-cli 与诊断文件;生产版 Desktop 由壳通过 DSH_BUNDLED_RUNTIME_ROOT 显式传入 Kit 根目录,开发版与 Web 不检查
- office-to-pdf 与 office-kit-resolver 合并为 @deepseek-ai/dsh-office-kit,由同一包定位 Kit 并提供转换服务
- Kit 缺失时 provider 照常注册,转换请求以 OfficeKitError unavailable 拒绝,之后安装 Kit 无需重载
- 类型统一使用 OfficeKit 前缀(OfficeKitRequest/Result/Priority/Key),同步消费方、文档、升级指南与 catalog
- 处理 ds-review-bot 意见,并更新 unknown 断言基线
本 PR 的 snapshot 统一在这个提交里用 keyless refresh 重新生成,前 3 个提交中的 snapshot 不一定和那一步的代码对应。
2026-11-04 18:17:57 +08:00
yudshj
4a41d3ad1f
feat(office): Office 技能在 Desktop、Web、SDK 均可用
...
- Office 技能从 Desktop 专属改为在 Web、SDK 与 Desktop profile 中均可挂载
- skill-office 新增 pythonEnvironment 配置,按部署显式选择内置依赖或用户已有的 Python
- Python 类技能末尾追加固定的 Python 环境说明,技能正文不再写死 load_workspace_dependencies
- 去掉 node:sea 探测,避免 Web 预览镜像依赖 webworker stub
2026-11-04 18:17:57 +08:00
yudshj
ee06bf3f9b
fix(office): 升级 LibreOffice Kit 到 0.2.3,Kit CLI 定位失败时隔离并保留技能
...
- 将 Kit 引擎包解析提取为 office-engine-resolver,并与 master 的发布配置对齐
- LibreOffice Kit 升级到 0.2.3 正式版
- Desktop 的 Office CLI 改由 skill-office 解析 Kit,去掉 desktop-host 对 Kit 的依赖
- Kit 缺失时给出可操作错误;Office CLI 定位失败时隔离错误并保留 Office 技能
- 按 Kit 0.2.3 的 helper 授予 macOS JIT 权限,并按新 Host 签名转发夹具参数
2026-11-04 18:17:57 +08:00
winewill
08afd883d7
docs(desktop): scope build numbering to its version mode
2026-11-04 15:14:58 +08:00
winewill
69db579d7a
docs(desktop): distinguish version mode and manual version
2026-11-04 15:04:24 +08:00
winewill
6fe4c14f1e
Merge branch 'codex/desktop-artifact-parent-refresh' into fix/desktop-channel-version-policy
...
# Conflicts:
# apps/desktop/packaging/README.i18n.yaml
2026-11-04 14:56:27 +08:00
winewill
3a51d53966
docs(desktop): centralize and clarify archival diagnostics
2026-11-04 14:55:06 +08:00
winewill
1ffe1a71db
Merge branch 'codex/desktop-artifact-parent-refresh' into fix/desktop-channel-version-policy
...
# Conflicts:
# apps/desktop/packaging/README.i18n.yaml
2026-11-04 14:42:06 +08:00
winewill
16743ca088
docs(desktop): document archive tool failure diagnostics
2026-11-04 14:38:26 +08:00
winewill
6bdaebb3ea
Merge branch 'codex/desktop-artifact-parent-refresh' into fix/desktop-channel-version-policy
2026-11-04 14:29:02 +08:00
winewill
6447accb5f
docs(desktop): clarify retained archive naming and timestamps
2026-11-04 14:28:46 +08:00
winewill
e0e2c63a9c
fix(desktop): bridge workflow modes for older sources
2026-11-04 13:57:19 +08:00
winewill
d65fd521b5
fix(desktop): clarify workflow version mode names
2026-11-04 13:51:39 +08:00
winewill
4656d7bf5a
Merge branch 'codex/desktop-artifact-parent-refresh' into fix/desktop-channel-version-policy
2026-11-04 13:38:31 +08:00
winewill
c5219dcfb2
fix(desktop): validate archive settings before retained files
2026-11-04 13:38:16 +08:00
winewill
83e1d6bcc4
Merge archive review fixes into channel version policy
2026-11-04 12:58:55 +08:00
winewill
e2e7264585
fix(desktop): isolate archive tests and clarify retained timestamps
2026-11-04 12:58:15 +08:00
winewill
152d0294c2
fix(desktop): decouple update channels from version suffixes
2026-11-04 11:06:11 +08:00
winewill
6ad048912e
Merge current publication recovery into artifact timestamp fix
...
# Conflicts:
# apps/desktop/packaging/README.i18n.yaml
# apps/desktop/packaging/README.md
# apps/desktop/packaging/README.zh.md
# scripts/macos-package-workflow.spec.ts
# scripts/windows-package-workflow.spec.ts
2026-11-04 11:05:13 +08:00
winewill
b941eded7c
Retain completion evidence and refresh repaired website metadata
2026-11-03 15:39:11 +08:00
winewill
797b8b4455
Preserve installer filenames in fixed website downloads
2026-11-03 15:27:24 +08:00
winewill
3c46127816
Merge remote-tracking branch 'origin/master' into feat/desktop-update-channels
2026-11-03 13:20:42 +08:00
winewill
6a3c52c92b
docs(desktop): record the updated archive download instructions
2026-11-03 12:55:07 +08:00
winewill
912e0383fb
fix(desktop): preserve modification times in installer artifacts
2026-11-03 12:54:24 +08:00
winewill
f387930ebe
docs(desktop): align channel guidance with saved settings
2026-11-02 15:17:46 +08:00
winewill
d2bd3f3893
feat(desktop): rename stable update channel consistently
2026-11-02 14:27:21 +08:00
creatixchu
d9e89b3b37
fix(cua): retain redacted notarization failure diagnostics
2026-10-30 16:47:49 +08:00
creatixchu
fc1ed8c1cd
fix(desktop): verify only the Computer Use helper bundle and stage it only when shipped
...
Limit the no-resign exemption to the staged helper so LibreOffice's
unsigned bundle keeps per-file signing, verify the helper's ticket and
Gatekeeper acceptance, stage it after the configuration check only for
sources that ship the bundle, and report a missing helper by path.
Refs #7514
2026-10-29 13:27:42 +08:00
creatixchu
6137225576
fix(desktop): ship the notarized Computer Use helper in macOS packages
...
Build and stage the helper before packaging, keep its bundle unpacked
outside app.asar, verify it instead of re-signing its files, and let the
provider open the unpacked copy.
Refs #7514
2026-10-29 12:56:32 +08:00
winewill
c5fe7d30dc
docs(packaging): remove stale workspace option references
2026-10-28 14:56:58 +08:00
winewill
b2a7d2ec95
ci(windows): remove optional packaging build root
2026-10-28 14:33:13 +08:00
winewill
58cae53057
docs(desktop): match Windows packaging Action title
2026-10-26 14:26:40 +08:00
winewill
a578ca435f
feat(desktop): add Intel Mac packaging workflow and align forms
2026-10-26 14:17:58 +08:00
winewill
a4aab8ec61
docs(desktop): consolidate cache lifecycle guidance
2026-10-23 17:18:48 +08:00
winewill
cb60c52cea
docs(desktop): clarify shared packaging cache maintenance
2026-10-23 16:48:11 +08:00
winewill
5a407d497f
fix(build): order bundlers before shared client output writes
2026-10-22 20:08:53 +08:00
winewill
5a45e0a448
fix(desktop): clarify signing prerequisites and portable fixtures
2026-10-22 19:37:19 +08:00
winewill
6c5d7c918a
fix(desktop): address packaging review follow-ups
2026-10-22 19:08:45 +08:00
winewill
0f21742b25
fix(macos): apply ZIP compression when skipping notarization
2026-10-22 13:51:49 +08:00
winewill
59b24da527
fix(ci): pin Windows packaging helpers to workflow revision
2026-10-22 13:08:12 +08:00
winewill
5110ca9153
perf(desktop): integrate Windows packaging and align compression defaults
2026-10-22 11:21:41 +08:00