连接 GXWorks 服务,检查并生成三菱 PLC 工程
30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/24 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Arienax/dsh-gxworks该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · dev
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 8 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件
查看扫描证据(共 7 处,展示前 7 条)
- 读取本地文件index.mjs:26
const missing = required.filter(relative => !existsSync(join(packageRoot, relative))) - 读取本地文件launch/mcp-launch.mjs:48
return statSync(path).isFile() - 读取本地文件launch/mcp-launch.mjs:56
return statSync(path).isDirectory() - 写入本地文件launch/mcp-launch.mjs:87
mkdirSync(dirname(path), { recursive: true }) - 写入本地文件launch/mcp-launch.mjs:88
writeFileSync(path, `${JSON.stringify({ agentRoot: root }, null, 2)}\n`, 'utf8') - 读取本地文件launch/mcp-launch.mjs:104
return readFileSync(path, 'utf8') - 执行外部命令来自配置/变量launch/mcp-launch.mjs:352
const child = spawn(plan.command, plan.args, {
扫描于 2026/10/31(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
DeepSeek Harness 插件包:接入 GXWorks 智能体 MCP 服务器,并自带 PLC 任务路由技能。
README
由 DeepSeek 最新模型翻译生成dsh-gxworks
仓库:<https://github.com/Arienax/dsh-gxworks> · 市场索引:<https://arienax.github.io/dsh-gxworks/index.json>
把 GXWorks Agent 的 MCP 服务和路由技能打包成 DeepSeek Harness 插件。安装一次,Harness 里的智能体就能对三菱 PLC 工程做只读检查、程序生成、离线 .gxw 编辑、后台原生编译检查和 Simulator2 观察。
English: README.en.md
插件做了什么
这一层 bundle patch 插入两行插件,两者互相独立、可分别停用:
| 行 | 插件 | 作用 |
| gxworks-mcp | @deepseek-ai/dsh-mcp-client | 以 stdio 启动本机 GXWorks Agent MCP,工具在会话里呈现为 mcp__gxworks__<原始工具名> |
| gxworks-skills | @deepseek-ai/dsh-skill-filesystem | 注册一个独立技能源,只扫描本包 skills/(providerName: gxworks),带进 gxworks-mcp-router 技能 |
展开完整文档(README 剩余 1 节)
dsh-gxworks
仓库:<https://github.com/Arienax/dsh-gxworks> · 市场索引:<https://arienax.github.io/dsh-gxworks/index.json>
把 GXWorks Agent 的 MCP 服务和路由技能打包成 DeepSeek Harness 插件。安装一次,Harness 里的智能体就能对三菱 PLC 工程做只读检查、程序生成、离线 .gxw 编辑、后台原生编译检查和 Simulator2 观察。
English: README.en.md
插件做了什么
这一层 bundle patch 插入两行插件,两者互相独立、可分别停用:
| 行 | 插件 | 作用 |
| gxworks-mcp | @deepseek-ai/dsh-mcp-client | 以 stdio 启动本机 GXWorks Agent MCP,工具在会话里呈现为 mcp__gxworks__<原始工具名> |
| gxworks-skills | @deepseek-ai/dsh-skill-filesystem | 注册一个独立技能源,只扫描本包 skills/(providerName: gxworks),带进 gxworks-mcp-router 技能 |
launch/mcp-launch.mjs 负责把 Windows 上的安装形态收敛成一个命令:它先找安装根(--agent-root → GXWORKS_AGENT_ROOT → 从工作目录向上找),再依次尝试 GXWorks-Agent-MCP.exe、.venv-mcp、.venv、py -3、python,并在调用方没有指定模式时补上 --local。
它的 stdout 只承载 MCP 协议数据,诊断一律写 stderr。
目录结构
dsh-gxworks/
├── package.json bundle 清单(dsh.bundle.patch、locale/icon 导出) ├── cordis.patch.yml 插件行:MCP 连接 + 技能源 ├── launch/mcp-launch.mjs stdio 启动器(安装根解析、模式默认值、arg 透传) ├── skills/ │ └── gxworks-mcp-router/ 上游技能原样副本(SKILL.md + references/) ├── locale/{en,zh}.json 插件管理页的标题与说明 ├── icon.svg 插件图标 ├── scripts/sync-skill.mjs 从 GXWorks Agent 检出重新同步技能 └── tests/launch.test.mjs 启动器解析顺序的单元测试
前置条件
- Windows。原生编译、GX Works2 界面交互与 Simulator2 采样依赖本机安装的三菱软件;纯 Python Core 的读取、生成与静态检查不需要它们。
- 本机存在 GXWorks Agent:源码检出(含 .venv 与 scripts/mcp_entry.py)或 MCP 独立发布包(含 GXWorks-Agent-MCP.exe)。
- DeepSeek Harness 配置档(Web 或命令行),Node.js ≥ 22.12。
安装
先在命令行里登记本机安装根。Harness 的工作目录通常在自身源码或其他工程里,不一定紧邻 GXWorks Agent,所以这一步只需做一次,跨会话生效。下方 <..._DIR> 均为目录占位符,请替换成自己的实际安装或检出目录:
node launch/mcp-launch.mjs --set-root "<GXWORKS_AGENT_DIR>"
node launch/mcp-launch.mjs --print-plan # 核对解析结果
它把路径写入 %USERPROFILE%\.dsh\dsh-gxworks\settings.json;目录里必须存在 GXWorks-Agent-MCP.exe 或 scripts\mcp_entry.py,否则直接拒绝。也可以用环境变量 GXWORKS_AGENT_ROOT 代替,或把工作目录放在安装目录之内。
然后在 Harness 里装这个包(--profile 换成你自己在用的配置档):
dsh plugin --profile web add dsh-gxworks
想跟源码走、不用 npm 版本时,用源码安装形式:
dsh plugin --profile web add github:Arienax/dsh-gxworks
也可以在本机源码检出目录里用插件管理器按绝对路径链装:
plugin_manager(action: install_bundle, target: "<DSH_GXWORKS_DIR>")
或者手动把本包加入配置档:在配置档的 package.json 里把它登记到 dsh.profile.bundles,让 cordis.patch.yml 进入层栈。安装后确认三件事:
1. 插件列表里 gxworks-mcp、gxworks-skills、dsh-gxworks 三行都是 active;
2. 工具列表出现 mcp__gxworks__*,例如 mcp__gxworks__list_projects;
3. 技能目录出现 gxworks-mcp-router。
安装失败时先看 Harness 日志里 dsh-gxworks / mcp-client(gxworks) 的输出,再按下文排错。
配置
启动器读取的环境变量:
| 变量 | 含义 |
| GXWORKS_AGENT_ROOT | GXWorks Agent 安装根,优先于已记住的路径 |
| GXWORKS_AGENT_HOME | 同上,兼容旧名 |
| GXWORKS_MCP_EXE | 直接指定 GXWorks-Agent-MCP.exe,跳过安装根解析 |
| GXWORKS_MCP_WORKSPACE_DIR | local 模式的工程工作区;不设时用 GXWorks Agent 的默认 MCP 工作区 |
| GXWORKS_AGENT_SERVICE_URL | service 模式的本地 Web 源,默认 http://127.0.0.1:8765 |
| PLC_WEB_AGENT_TOKEN | service 模式的 Agent 令牌(通常由 GXWorks Agent 写入 Credential Manager) |
安装根的完整解析顺序:--agent-root → GXWORKS_AGENT_ROOT / GXWORKS_AGENT_HOME → %USERPROFILE%\.dsh\dsh-gxworks\settings.json → 工作目录及其上级 → PATH 上的 GXWorks-Agent-MCP.exe。--print-plan 会打印最终命令与 agentRootSource。
除环境变量外,其余参数直接写进 cordis.patch.yml 的 args。args 是一个表达式返回的数组,在数组里追加参数即可,例如连接已启动的 Web 工作台:
args: !!js "(() => { const p = process.getBuiltinModule('node:path'); const u = process.getBuiltinModule('node:url'); return [p.join(u.fileURLToPath(baseUrl), 'launch', 'mcp-launch.mjs'), '--service']; })()"
常用的透传参数:
| 参数 | 用途 |
| --local | 独立工程运行时,编辑直接保存为版本(默认) |
| --service | 连接已启动的 Web 工作台,按工作台审批策略出提案 |
| --workspace <dir> | 指定工程工作区 |
| --project <id> / --version <id> | 固定选中的工程与版本 |
| --state-dir <dir> | 独立运行时的状态目录(必须在工作区之外) |
| --approval-mode ask\|auto\|full | 操作者显式给出的外部操作许可;full 还需 --confirm-full-access |
此外还有本插件自己的三个参数,只在命令行上使用,不会传给 MCP 服务: --set-root <dir>(记住安装根)、--agent-root <dir>(本次使用指定安装根)、--print-plan(只打印解析结果)。
toolCallTimeoutMs 在 patch 里设为 10 分钟,因为原生编译、冷重开和波形采样都会超过默认的 60 秒;连接中断由 reconnect 自动重试,failOnStartupError: false 保证本机没装三菱软件时 Harness 仍能启动。
工具与技能
- MCP 工具覆盖工程选择与结果、源码发现与静态分析、生成与离线编辑、FBD/ST/SFC、原生工程与编译分析、 Simulator2 观察。完整清单与参数以连接后的 tools/list 为准。
- gxworks-mcp-router 技能记录按任务意图选入口工具、参数要点与调用顺序,覆盖 local / service / context 三种接入模式的回执判读。它只在需要时加载,不占常驻上下文。
原生写操作、界面交互与 PLC 运行语义分别取证:编译通过不等于运行正确,local 模式保存版本也不等于已经过工作台复核。
验证与排错
登记安装根,并看启动器为当前机器解析出的命令
node launch/mcp-launch.mjs --set-root "<GXWORKS_AGENT_DIR>"
node launch/mcp-launch.mjs --print-plan
在 GXWorks Agent 目录里验证 Python 侧运行时 .venv\Scripts\python.exe scripts\mcp_entry.py --local --check
| 现象 | 处理 |
| 日志提示“未找到本机 GXWorks Agent 安装目录” | 运行 --set-root,或设置 GXWORKS_AGENT_ROOT |
| 日志提示 Python 运行时不可用 | 在安装目录创建 .venv 并 pip install -r requirements/mcp.txt,或改用独立发布包 |
| 日志提示 serverName "gxworks" is already in use | profile 里还有另一个 mcp-client 行用了同名 serverName,改成唯一名字 |
| 工具调用超时 | 原生编译等慢操作调大 toolCallTimeoutMs;写入状态不明时先用 get_operation_status 核对 |
| 技能目录里没有 gxworks-mcp-router | 确认 gxworks-skills 行处于启用状态,且 <包目录>/skills/gxworks-mcp-router/SKILL.md 存在 |
卸载
plugin_manager(action: remove_bundle, target: "dsh-gxworks")
或从 profile 的 dsh.profile.bundles 移除本包。卸载只影响 Harness 侧的连接与技能,不改动 GXWorks Agent 的工程、状态目录或 GX Works2 安装。
插件市场
本仓库同时是一份自建插件市场索引,托管在 GitHub Pages:
https://arienax.github.io/dsh-gxworks/index.json
在 Harness 里打开「插件」页 → 实验性插件里开启 Custom plugin markets → 在「发现」的索引源里加上这个 URL,就能看到并安装 dsh-gxworks。索引只描述本仓库,安装仍走 plugin_manager 并需要你确认;条目里的版本固定到具体 Git 提交,DSH 兼容性由 engines.dsh 声明(当前 >=0.2.0-0 <0.3.0)。
索引是生成物:market/plugins.txt 是来源列表,docs/index.json 由 DSH 自带的生成器写出,并已通过其校验器。
在 dsh-gxworks 仓库根目录执行 $bundleDir = (Get-Location).Path Push-Location "<DEEPSEEK_HARNESS_DIR>"
pnpm --filter @deepseek-ai/dsh-plugin-market-generator start
--input (Join-Path $bundleDir 'market/plugins.txt')
--output (Join-Path $bundleDir 'docs/index.json')
--title "GXWorks Agent Plugins"
--description "GXWorks Agent 的 MCP 服务与 PLC 任务路由技能,供 DeepSeek Harness 使用。"
Pop-Location
发版顺序是:改 package.json 的 version → 提交并推送 → 重新生成索引 → 提交 docs/index.json。
生成器只读已推送的提交,未推送的改动不会进入索引。
开发
npm test # 启动器解析顺序的单元测试
npm run check # 语法检查 + 测试
npm run sync-skill -- --source "<GXWORKS_AGENT_DIR>"
skills/gxworks-mcp-router/ 是上游技能的原样副本,由 scripts/sync-skill.mjs 重新同步并写入来源说明;上游技能是唯一事实来源,本仓库不在此处改写技能内容。
同步源须为 Git 检出,且技能目录没有未提交改动;COPYING.md 记录该检出的实际 HEAD,技能元数据中的 source-commit 仍表示其对应的产品源码版本。
许可与来源
本仓库中由本项目作者编写的源码、文档与配置采用 Apache License 2.0。
skills/gxworks-mcp-router/ 来自 Arienax/gxworks-agent(Apache-2.0),来源与同步提交记录在 COPYING.md。
本插件不分发 GX Works2、Mitsubishi Electric 软件、厂商手册或商标内容;原生功能依赖用户自备的合法安装。预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
Arienax/dsh-gxworks
连接 GXWorks 服务,检查并生成三菱 PLC 工程
相关插件 · 开发 / 工程
隐私简历生成器reactive-resume/reactive-resume
Reactive Resume 已迁至 GitHub 上的…
★ 45,125已汉化MCP
71.7
AI 架构文档生成器sopaco/deepwiki-rs
🚀 Litho 已进化为 Terrain —— 给你的 AI 智能体一张会呼吸的代码库地图。
★ 3,157已汉化DSH
70.8
长时任务执行闭环AMAP-ML/LongHorizon-Harness
面向 Computer-Use Agent 的 Loop Engineering
★ 1,764已汉化DSH
70.5
AI 编程纪律方法包GanyuanRan/Aegis
让 AI 编程 agent 变得可信:少返工、更安全、说“完成”前先给证据。
★ 1,384已汉化DSH
69.6
多代理编排运行时Enderfga/claw-orchestrator
面向编程智能体的运行时。把 Claude Code、Codex、Antigravity、Grok…
★ 586已汉化MCP
69.4
记忆进化插件csyangwen/dsh-memory-evolve
dsh-memory-evolve 使用场景指南
★ 461已汉化DSH
67.9