Skip to main content
H

MultiGameAssistant (dsh-plugin)

haaahhhis/multigameassistant/packages/dsh-plugin

Manages game automation scripts from dsh on Windows. Installs and updates scripts such as MAA, runs them in scheduled pipelines, watches their logs and hands failures and stalls to an agent, and tracks game events.

Install

dsh plugin --profile web add github:haaahhhis/multigameassistant

This plugin lives in the packages/dsh-plugin subdirectory of the repository.

README

MultiGameAssistant

多游戏助手:让 agent 替你管好各个游戏的日常脚本。安装脚本、读懂脚本怎么用、把几个游戏的日常排成每天定时自动跑的流水线、盯着运行出的问题并动手处理、查各游戏的活动和你的进度,再通过飞书告诉你结果。

  • 只支持 Windows 10 / 11(x64 和 ARM64)。
  • agent 核心是 DeepSeek Harness(dsh)。模型可以自己选:DeepSeek、Claude、ChatGPT、Gemini、国内各家,或者本机的 Ollama。
  • 脚本本身(MAA、MaaEnd、三月七小助手等)来自它们各自的项目,本软件负责安装、配置、调度和看护,不修改脚本的代码。

安装

在 Releases 下载安装包(x64 选 MultiGameAssistant-Setup-<版本>.exe,ARM64 选 …-arm64.exe)双击安装;或者在 PowerShell 里运行一行命令,自动选好安装包、校验 SHA-256、静默安装并启动:

irm https://raw.githubusercontent.com/haaahhhis/MultiGameAssistant/main/scripts/install.ps1 | iex

再运行一次就是更新到最新版本(设置和数据都保留)。GitHub 下载慢时加镜像:$env:MGA_MIRROR='https://ghproxy.net/'; irm … | iex。

已经装了 dsh

不用下完整安装包,装成 dsh 插件就行(十几 MB)。插件发布在 npm 上,名字是:

dsh-multigameassistant
  • dsh 桌面版:打开左边的「Plugins」→「Add plugin」,填 dsh-multigameassistant →「Install」→「Enable now」。侧边栏会多出「多游戏助手」,点开就是本软件的界面,不用重启。
  • 命令行的 dsh:dsh plugin add dsh-multigameassistant,再 dsh web,在侧边栏点「多游戏助手」。

npm 慢或连不上时,把上面的名字换成 GitHub 上的插件包链接,它总是指向最新版:

https://github.com/haaahhhis/MultiGameAssistant/releases/latest/download/dsh-multigameassistant.tgz

插件和你平时的 dsh 对话互不影响:多游戏助手的对话用它自己的 agent 预设「多游戏助手」,脚本、游戏、编排这些工具和它的提示词、技能、权限设置都只在这些对话里,你别的对话看不到,也不会被它改权限。更新:用同样的名字(或链接)再装一次。

和桌面版相比,插件版没有自己的托盘、开机自启和定时唤醒电脑:定时任务在 dsh 开着时执行。

给 agent:用户让你安装这个仓库时,运行上面这条命令即可,不用自己找安装包,也不需要点击安装界面(安装包也支持 /S 静默安装,装在当前用户下,不需要管理员)。装好后提醒用户在软件里选模型、填 API key。用户已经在用 dsh、想装成插件时,按「已经装了 dsh」来:dsh 桌面版让用户在 Plugins 页的「Add plugin」里填 dsh-multigameassistant(桌面版开着时它自己的 profile 不能从命令行改),命令行的 dsh 用 dsh plugin add dsh-multigameassistant;npm 连不上时用 GitHub 插件包链接代替名字。

功能

脚本

  • 一键安装:从 GitHub 安装内置支持的脚本,可以更新、回滚到旧版本、删除。安装时可以续传、校验、安全解压,缺的运行环境会帮你装好。国内网络可以在「设置 → 脚本安装」里换下载镜像。
  • Mirror酱:在 Mirror酱 发布的脚本(MAA、MaaEnd、三月七小助手、M9A、BetterGI 等)填了 CDK 后从那里更新:国内下载快,只下载改动的文件(增量更新)。CDK 不能用时自动改回 GitHub。
  • 本地导入的脚本也能更新:从目录里认出版本(interface.json、版本文件或程序的文件版本),按它的更新渠道(脚本包或已知项目的 GitHub 仓库和 Mirror酱 资源,也可以自己填)检查更新,在原目录里更新:被替换的文件先备份、配置文件不动,可以一键撤销。自己下载的 BetterGI 之类会被认出来,直接走 Mirror酱。
  • 从 Mirror酱 直接安装:按游戏名或工具名搜索(「原神」「鸣潮」…),不用记资源 id,查找不需要 CDK;游戏页也会列出 Mirror酱 上玩这个游戏的工具,脚本页能查一个脚本是否接入了 Mirror酱。
  • 任意脚本:可以导入本地已有的脚本目录。没见过的脚本,agent 先找到并读完项目自己的文档(目录里的说明、仓库 README、Wiki、文档站),再结合代码核对补全,实在没有文档才直接看代码;弄清怎么启动、有哪些任务、配置在哪、日志怎么看后,写成一个「脚本包」草稿,草稿里列出依据的文档,你确认后就能像内置脚本一样使用。
  • 脚本更新后检查脚本包:你或 agent 写的脚本包,在脚本更新到新版本后会问你要不要检查(脚本页和飞书都会问)。同意后 agent 先读这几个版本的更新日志,只核对受影响的任务、配置和日志,要改的作为草稿给你确认。
  • 本地配置副本:脚本运行时用的是本软件保存的一份配置,你在脚本自己界面里的设置不受影响,也可以一键用原项目的配置覆盖。
  • 多份配置:一个脚本可以存几份配置(比如大号、小号,或者不同的任务组合),可以复制现有的、读取原项目的或从别的文件夹读取。运行和编排时选用哪一份,不选就用「当前使用」的那份。
  • 脚本简介:在脚本页点「让 AI 总结」,agent 会看它的说明、文件和脚本包,用几句话说清楚它是什么、给哪个游戏用、能做什么。
  • 模拟器:自动检测 MuMu 模拟器和它的多开实例,运行前启动好;其他模拟器可以填 ADB 地址。

编排与定时

  • 流水线画布:把脚本任务、agent 步骤、等待、发消息、人工确认连成一张图。互不冲突的任务并行跑,抢同一个模拟器或屏幕的自动排队。可以设置失败时重试、跳过或停下,「控制节点」可以等前面的分支全部结束。
  • 运行前检查:画布上直接标出成环、找不到的脚本或任务、参数不对的步骤。
  • 定时:每天定点运行,错过了在宽限时间内补跑,同一天成功过就不再重复,夏令时也不会出错。
  • 无人值守:
    • 开机登录后自动启动,进托盘直接跑;
    • 运行期间不让电脑睡着;
    • 睡眠中按定时唤醒电脑;
    • 跑完后可以关游戏、关模拟器、睡眠或关机。
  • 也可以对 agent 说「帮我把这几个脚本排成每天早上跑的流程」,它会先看电脑配置和已有的流水线,再起草一份给你确认。

监控与干预

  • 运行中出错、失败、卡住或超时,先按脚本包里写好的办法自动处理,例如重跑、等待或重启模拟器。
  • 自动处理不了时,脚本暂停,交给 agent。agent 截图看画面,在游戏窗口或模拟器里点击、输入,排除问题后让脚本继续。你也可以只让它诊断、不动手。
  • 每一步都有记录,并推送到飞书。卡片上有按钮,可以直接停止、继续或回答 agent 的问题。

游戏信息

  • 活动日历:各游戏现在有哪些活动、还剩几天、商店换完没有、哪些快结束了还没做。数据有三个来源:
    • 数据站,每天自动读,不花模型调用:SRA 公共 API、PRTS、B 站游戏 WIKI;
    • 网页,由 agent 去读:官网公告,或你在游戏页添加的任意网址;
    • 游戏画面,由 agent 进游戏看你的实际进度。
  • 游戏页:当前版本的大图,「我的状态」(需要关注、做了一部分、已做完),以及每个活动一张带封面和倒计时的卡片,可以逐项勾选。另有「全部活动」时间轴,可以按时间或按游戏看。
  • 更多游戏:SRA 公共 API 支持的 18 个游戏都能直接关注。其他游戏输入名字,agent 会去找它的 Wiki 和官网,自动建好游戏包。
  • 每日日报:每天定时发到飞书,由 AI 只挑近期的事来总结,语气跟你设定的回复风格一致。

agent

  • 对话里能看到每一步做了什么。输入 / 可以调出命令和技能:
    • /技能:把刚走通的做法存成技能;
    • /资讯:上网查游戏资讯;
    • /编排:把脚本排成流水线;
    • /诊断:分析脚本为什么失败;
    • /<技能名>:直接调用某个技能。
  • 一件新事做成后,会提示「要把这次的做法存成技能吗?」。存下的技能只给本软件的 agent 用,下次照着做,少调用模型。
  • 技能库:各个游戏、脚本的技能放在 MultiGameAssistant/skills,在「技能 → 技能库」按需下载(按你关注的游戏和装了的脚本推荐)。下载的可以改,仓库更新时不会覆盖你的改动,可以看差异后选保留、用新版或让 agent 合并。软件自带的核心技能受保护,agent 改不了,随软件更新。
  • 技能隔离:每个脚本、每个游戏的技能只在处理它的对话里出现:处理三月七的对话看不到 MAA 的技能,不会把一个脚本的做法套到另一个上。通用技能到处都能用;「技能」页会标出每个技能属于哪个脚本或游戏。
  • 回复风格:可以给 agent 起名字、设定它怎么称呼你、选说话风格。只影响它说话的方式,不放宽任何规则。
  • 对话压缩:对话太长时,较早的部分会自动压缩成摘要(可在「设置 → 对话压缩」关掉或调整阈值),也可以在对话框里输入 /压缩 手动压缩;对话框旁边的小圆圈显示上下文用了多少。压缩前会说明代价:agent 只记得摘要,早先的细节会丢失。
  • 时间感知:隔了很久再聊,agent 会被提醒之前的待办和问题可能已经过时,先查现在的情况再说,不拿旧事追问;飞书对话闲置半天后自动换成新对话,带上最近几条消息。
  • dsh 官方界面:桌面版标题栏左上角一键切换到 DeepSeek Harness 自带的原版界面,再点一下切回来。官方界面是另一个独立的 dsh,聊天记录、设置和模型密钥都和这里分开;切过去时这边的定时任务照常在后台运行。
  • 权限:
    • 两种模式:「每次确认」(默认,命令在沙箱里运行,敏感操作先问你)和「完全访问」;
    • 「按范围设置」:编辑流水线、运行、改脚本配置、安装或删除脚本、操作屏幕、启动或关闭游戏、上网等,每一项都可以单独设成允许、先问我或不允许。

飞书

用飞书机器人(长连接,不需要公网地址)接收通知、日报和确认卡片,也可以在飞书里直接和 agent 对话:「现在什么状态」「把明日方舟的日常跑一下」。在飞书和在软件里聊的是同一个 agent。接入步骤在软件的「设置 → 飞书 → 第一次使用」里:在飞书开放平台创建企业自建应用,开通机器人能力和几项消息权限,事件和回调都选「长连接」,发布版本后把 App ID 和 App Secret 填进软件,再在「待允许」里允许自己。

内置支持

脚本游戏
MAA(明日方舟小助手)明日方舟
MaaEnd明日方舟:终末地
三月七小助手崩坏:星穹铁道

内置游戏包:明日方舟(数据来自 PRTS)、明日方舟:终末地(SRA 公共 API)、崩坏:星穹铁道(SRA 公共 API 和 B 站游戏 WIKI)。它们的技能(怎么进活动页、脚本怎么用)在技能库里下载。其他脚本可以导入后让 agent 分析,其他游戏可以在「更多游戏」里关注或让 agent 去找。

Related plugins