dsh-we-wallpaper-sync:批量管理 Wallpaper Engine 壁纸并接入 DSH 皮肤中心

DSH 智能体开发中,桌面壁纸的动态切换是常见需求。手动从 Wallpaper Engine 创意工坊挑选并下载壁纸效率较低,且国内网络环境对 Steam 访问有诸多限制。这个插件旨在解决上述问题,将 Steam Web API 与 steamcmd 集成到 DSH 中,实现壁纸的自动化管理。

插件介绍

dsh-we-wallpaper-sync 是由 tiger0012 维护的一个联网工具类插件(MIT 许可证)。它是一个可复用技能,主要功能是批量浏览、搜索、下载 Wallpaper Engine(Steam 应用 431960)的创意工坊壁纸,并将下载好的文件接入 DSH 皮肤中心,使其成为智能体的 GUI 背景。

核心功能

  1. 搜索与预览
    插件支持通过 Steam Web API Key 进行搜索或浏览创意工坊。用户可以按订阅数、趋势、最新发布或关键词进行筛选。插件会抓取作品的标题、订阅数和预览图,并生成网格列表供用户选择。

  2. 批量下载
    使用 steamcmd 配合 Docker 执行批量下载。这种方式无需安装 Steam 客户端,也不依赖系统级的 32 位库,直接在容器环境中运行。

  3. 网络突破
    针对国内网络环境,插件支持通过代理配置绕过对 Steam HTTP 的封锁,以及解决异地登录拦截问题。这需要出口 IP 与账号常住地保持一致,并配置相应的代理策略。

  4. 落盘与接入
    下载完成后,壁纸会落盘到 ~/Steam/steamapps 目录。用户需要在 ~/.dsh/settings.yaml 中配置 skin-wallpaper.weLibraryDirs,DSH 皮肤中心的 Wallpaper Engine 桥(WE 桥)扫描到该目录下的 workshop/content/431960 文件夹后,即可应用为 GUI 背景。

使用方式

安装插件后,在 DSH 中调用技能 dsh-we-wallpaper-sync,按照步骤执行即可。也可以直接读取插件包内的 SKILL.md 文件查看具体命令。

注意事项

该插件以当前 DSH 进程的权限运行,安装前应检查源码与许可证。以下是使用过程中需要注意的关键点:

  • 勿硬编码凭证:技能内用 <账号>/<KEY>/<密码> 占位,请勿在配置中硬编码 Steam API Key 或密码。
  • 网络与代理:国内封禁 Steam 的 HTTP 域名,但 steamcmd 走 Steam CM 网络(不看 HTTP),直连往往能通。然而,Steam 会比对登录 IP 与账号常住地;不匹配会拦截登录。需使用出口 IP 与账号一致的代理,并在 steam.cfg 中使用 SocksProxy 解决。
  • 容器路径:容器内 steamcmd 目录是 /root/.local/share/Steam/steamcmd,请勿用空目录挂载覆盖(会导致 steamcmd.sh not found),需使用 +force_install_dir 指定落盘路径。
  • 第三方站点:不建议依赖第三方下载站(如 steamworkshopdownloader.io),其后端常报 500 错误。
  • 扫描路径:皮肤中心 WE 桥扫描路径为 <库根>/steamapps/workshop/content/431960。

总结

该插件为 DSH 开发者提供了一个标准化的入口来管理 Wallpaper Engine 资源,省去了手动操作和配置网络代理的繁琐步骤。相关目录与源码见下:

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜