Skip to content

Releases

v0.5.0 preview

v0.5.0 preview Pre-release
Pre-release

Choose a tag to compare

@asckye asckye released this 05 Nov 12:18

v0.5.0 预览版

这是预览版。写操作只应在 scratch 项目上试用,不要直接用在真实项目上。

升级前必读

  • 写工具默认只预览。 38 个写工具省略 dry_run 时不再执行,只返回预览和执行提示;要执行必须显式传 dry_run: false。已有的提示词和脚本要相应修改,下面有逐个工具的对照表。eplan_plan_apply 是例外,语义不变。
  • Host 和插件要一起升级。 两边现在都会拒绝协议信封里的重复成员和未知成员,不要只升级一边。

本版重点

  • 从部件库画图: eplan_device_place 支持带宏或功能模板的部件、端子、模板符号替换;join_device 会把未放置的功能分配到符号上;eplan_device_update 可以分配部件和设置数量。
  • 符号变量和属性排列: 放置时可选,放好后也能改(eplan_placement_edit 的 set_variant、set_arrangement)。
  • 插入菜单的更多对象: 折线、圆弧、椭圆、路径功能文本和图片,以及新工具 eplan_annotation_create(超链接、二维码、样条曲线、扇形、尺寸标注);eplan_placement_delete 删除独立图形和自由文字。
  • 连接和宏: 电位定义点、中断点变量和显示名、先放节点最后统一生成连接;宏可以按总览表达插入,可以不带宏框。
  • 报表: 新增 eplan_report_create,eplan_page_get 能读回报表设置和方案数据。
  • 工程包插件库: eplan_pack_library_list、eplan_pack_install、eplan_pack_enable。
  • action 目录: eplan_action_catalog_search 现在读本机 EPLAN 的注册表,能查到全部注册名称和所属模块;名称能查到不代表能调用,未验证的 action 仍然只能通过默认关闭的 eplan_action_try 在 scratch 上试。

还做不到

  • 不能完整画出一个项目。 以 16 页的样例项目做逐对象对比,目前一致率 65.77%;完全一致是 v0.6.0 的验收目标。
  • action 还差很多。 EPLAN 2026.0.3 注册了 2498 个名称,Electric P8 按名称能找到 2266 个,目前只普查了 310 个。
  • 功能区 339 个入口(按用途判断,未逐个实测): 有工具 70、部分有 28、只影响显示 36、还要做 55,另有 3D 91、预规划和编辑器 16、做不了或不自动做 8、标题或云入口 34、待判断 1。
  • Pro Panel 3D 专用工具还没做。

[0.5.0] - 2026-11-05

破坏性变化

0.5.0 按 ADR-0049 / MIG-02 完成下表 38 个工具的默认值迁移;省略或传 dry_run: true 均只预览,不请求审批、不修改项目或文件,返回 execution: not_started 与执行提示。执行须显式传 dry_run: false,审批、读回和撤销规则不变;eplan_plan_apply 输入已审阅计划,作为例外,保持现有执行语义。

工具 旧:省略 dry_run 新:省略 dry_run 执行方式
eplan_device_place 执行 预览 dry_run: false
eplan_connection_create 执行 预览 dry_run: false
eplan_placement_create 执行 预览 dry_run: false
eplan_placement_update 执行 预览 dry_run: false
eplan_placement_edit 执行 预览 dry_run: false
eplan_macro_insert 执行 预览 dry_run: false
eplan_page_create 执行 预览 dry_run: false
eplan_page_update 执行 预览 dry_run: false
eplan_page_text_replace 执行 预览 dry_run: false
eplan_page_delete 执行 预览 dry_run: false
eplan_page_renumber 执行 预览 dry_run: false
eplan_device_update 执行 预览 dry_run: false
eplan_property_set 执行 预览 dry_run: false
eplan_device_renumber 执行 预览 dry_run: false
eplan_cable_renumber 执行 预览 dry_run: false
eplan_terminal_renumber 执行 预览 dry_run: false
eplan_connection_number 执行 预览 dry_run: false
eplan_connection_generate 执行 预览 dry_run: false
eplan_cable_generate 执行 预览 dry_run: false
eplan_report_update 执行 预览 dry_run: false
eplan_check_run 执行 预览 dry_run: false
eplan_import_dxf 执行 预览 dry_run: false
eplan_import_pdf_comments 执行 预览 dry_run: false
eplan_import_list 执行 预览 dry_run: false
eplan_import_plc 执行 预览 dry_run: false
eplan_import_pxf 执行 预览 dry_run: false
eplan_language_set 执行 预览 dry_run: false
eplan_language_remove 执行 预览 dry_run: false
eplan_project_translate 执行 预览 dry_run: false
eplan_part_import 执行 预览 dry_run: false
eplan_part_sync 执行 预览 dry_run: false
eplan_translation_import 执行 预览 dry_run: false
eplan_placeholder_apply 执行 预览 dry_run: false
eplan_action_run 执行 预览 dry_run: false
eplan_action_try 执行 预览 dry_run: false
eplan_api_try 执行(含读取 API) 预览 dry_run: false
eplan_project_create 执行 预览 dry_run: false
eplan_cabinet_bind 执行 预览 dry_run: false
eplan_plan_apply 申请执行已审计划 保持申请执行已审计划(例外) 省略或 dry_run: false;true 仅重核预览

新增与改进

  • eplan_device_place 的 join_device:true 自动分配同类未放置功能,显式引脚名按序精确匹配;结果返回 assignedFunction、分配后的 pins 和未放置数量,读回偏差提交并警告。

  • eplan_device_place 的提示、工具说明和用法改为以同一标识配合 join_device 放置其余未放置功能。

  • 新增 eplan_annotation_create(full):批量插入超链接、二维码、样条曲线和扇形,默认预览,复用布局护栏、审批、读回与一次撤销。

  • 注释创建支持线性、角度、基线、递增、连续和圆尺寸标注;尺寸文字由 EPLAN 计算,写前拒绝重合的角度点与非整圆引用。

  • 注释创建支持占位符及宏框,可设置名称、记录和变量。

  • eplan_page_get、eplan_object_find 补齐注释的位置与关键字段;eplan_placement_delete 支持删除这些对象,并在执行事务内重新取得原生对象。

  • action 目录新增本机注册表来源及类别、模块信息,支持 source:"registry" 和 registry_kind 筛选;同名合并,交互项标为不可按名调用,缺失文件报告缺口。

  • 同步 action 目录工具规格与用法,说明注册元数据、筛选和交互项排除;目录总数以本机安装注册表为准,完整名单不入库(ADR-0030)。

  • eplan_symbol_search 每行增加 variantLabel:变量编号 0–7 对应 A–H,其他编号返回空字符串。

  • eplan_device_place 的部件路线可只传 symbol_variant,使用部件模板提供的库和符号;变量不存在时回滚。

  • eplan_device_place 两条放置路线及 eplan_connection_create.interruption_point 支持可选 property_arrangement,在放置事务内设置并读回;省略时沿用原行为。

  • eplan_placement_edit 新增 set_arrangement:精确匹配符号提供的本地化属性排列名,读回排列与 19307;不存在的名称在写入前拒绝。

  • eplan_placement_edit 新增 set_variant:按当前库和符号预检变量,保留符号与功能定义,返回变量和位置;同页批量一次撤销,并提示按需生成连接。

  • eplan_device_place 的部件路线支持端子排/端子编号及可选符号替换,保留部件模板的逻辑定义;无主功能的端子也能正确命名和读回。

  • eplan_device_place 的 join_device:true 或 SPECIAL 符号路线可同时追加部件;提交后重新定位功能,追加与放置合为一个撤销步骤。

  • eplan_connection_create 为中断点设置名称后调整显示名;调整返回 false 时继续保留既有写入行为。

  • eplan_device_update 追加部件支持正整数 count,省略为 1;计划和提交后读回均包含实际数量。

  • eplan_property_set 支持精确定位非主端子的 20367、20809、20035 及非主 Busbar 的 20011,按字典类型写入并校验读回。

  • eplan_connection_create 的电位定义点新增电位值、电位类型、颜色和截面字段;按字符串或原生整数类型写入,并与名称在同一事务读回校验。

  • eplan_page_create、eplan_page_update 新增 pages[].grid_size_mm 有限正数参数,通过 Page.GridSize 写入并读回;省略时行为不变,批量仍一次撤销。

  • eplan_device_update 支持按完整名称为唯一已有非主端子追加部件;不改名,提交后核对 ArticleReferences,保留一步撤销。

  • eplan_connection_create 的中断点新增整数 symbol_variant,可指定 BP 变体 0 和 Right 引脚;不存在或方向不匹配返回 INVALID_ARGUMENT,省略时保留原选择规则。

  • eplan_property_set 新增 B8 PLC 类别白名单,支持精确定位非主 PLC 点和类型化总线系统值;已知关联允许传播,其余直接属性受守卫保护,仍为一次事务、一步撤销。

  • eplan_macro_insert、eplan_device_place 支持 layout_guard: "warn",用于复现已有图纸。

  • eplan_macro_insert 的外框按宏的参考点和 WindowMacro.Location 计算;warn 且不带宏框时,改由写入后实测的对象判断是否超出页面。

  • eplan_device_place 判断重名时,只有端子排和端子才允许省略高层代号,=GAA+A1-FC2 和端子排 +A1-FC2 不再算重名。

  • eplan_connection_create 只放定义点时不再要求页面上的引脚互不重合。

  • 端子可以使用自身逻辑定义不是端子的符号(XTR1),端子保留端子定义,只采用符号图形。

  • eplan_device_update 允许 PLC 模块点改到还没有卡的标识。

  • eplan_placement_delete 不再因页面上有不可读的空块而失败。

  • eplan_macro_get 支持选择表达和变体,返回宏参考点与功能位置;位置不可读时返回 null 并告警。

  • eplan_device_update 允许将全部为非主功能 PLC 点的器件并入已有 PLC 盒,保留后缀并核对两侧读回;其它重名仍拒绝。

  • eplan_connection_create 新增 generate:false,可先放节点和中断点,最后统一生成;默认生成策略不变。

  • 建块和删除允许普通组内对象,仍拒绝块成员及属性文字。

  • 整圆保留相等的起止角;矩形、文字和路径文字的旋转接受图层标记 -16002,普通角度按模 360 核对。

  • PLC 同名点允许第二种表达且为非主功能,同名通道不算地址重复;已知地址不一致及其它通道地址冲突仍拒绝。

  • 宏内空块的不可读名称和元数据附带警告返回,不再使整个绘图读取失败。

  • 文字内容改为每种语言最多 500 字符;layout_guard:warn 将缺少显示语言降为警告,默认校验不变。

  • 连接定义点允许省略全部属性,仅放置定义点。

  • eplan_page_get 列出块的全部成员,之前同一块只显示一个成员。

  • 绘图创建、移动与连接创建支持 layout_guard: "warn",用于复现已有图纸;默认仍拒绝布局违规,超页始终拒绝。

  • 页面创建和更新的 description 支持语言代码到文本的对象,一次写入多语言并逐项读回,字符串行为保持不变。

  • 器件改名改用 NameService,保留 PLC 等功能后缀,提交后按新标识读回;已占用标识仍拒绝。

  • 图形创建支持 kind: "block",将 2–1000 个同页定位器组成命名块,一次撤销恢复。

  • 新增 eplan_placement_delete,默认预览,执行时只删除独立图形和自由文字,拒绝器件、连接、属性文字及块成员。

  • eplan_connection_create.interruption_point 的 counterpart_pages 可省略;省略只放置中断点,提供时继续核对配对页。

  • eplan_connection_create.definition_point 支持 part、part_variant(默认 1)和 part_count(默认 1);可仅设置部件,并核对定义点及连接的部件引用。

  • eplan_connection_create 新增 potential_definition,经内嵌窗口宏创建电位定义点,可设置电位名和信号名;仅放置时不生成连接并一步撤销。

  • eplan_macro_insert 新增 macro_box(默认 true);false 在插入事务内移除宏框,返回对象数不含被移除的框,内容和一次撤销语义保留。

  • eplan_placement_update.property_moves 增加对齐、字高、可见性、图层和画笔;坐标仍为页面绝对坐标。隐藏请求单列不比较可见性读回,其他字段严格核对。

  • eplan_placement_create 支持图形和文字的画笔、图层、折线闭合及矩形/文字角度和文字对齐;画笔接受默认值 -16002,角度入参为度,写入后核对原生读回。

  • 写前布局检查的建议位置搜索共享 2 秒预算;耗尽后停止建议,保留全部违规规则、对象及拒绝结果,避免密集冲突长期占用主线程。

  • eplan_device_place 新增 join_device,可用库符号向已有器件加入非主功能;默认仍拒绝重复标识,不支持部件、端口列表、端子或 PLC 路线。

  • eplan_placement_create 的写入前布局预检(含预览)及批量写调用时限统一为 180 秒,其他读调用不变。

  • eplan_placement_create 新增 ellipse;arc 起止角模 360 相等时创建整圆,分别核对 Ellipse/Circle 与原生半径、弧度角读回。

  • eplan_placement_create 的写入前布局预检(含预览)及批量写调用时限统一为 180 秒,其他读调用不变。

  • eplan_placement_create 的 path_text 可省略 height_mm,使用 EPLAN 默认高度标记 -16002 并严格核对读回。

  • 连接定义点的 cross_section 接受小数点或小数逗号,写入与读回按数值比较,1,5 与 1.5 相等。

  • eplan_placement_create 新增 ellipse;arc 起止角模 360 相等时创建整圆,分别核对 Ellipse/Circle 与原生半径、弧度角读回。

  • eplan_placement_create 的写入前布局预检(含预览)及批量写调用时限统一为 180 秒,其他读调用不变。

  • eplan_placement_create 的 path_text 可省略 height_mm,使用 EPLAN 默认高度标记 -16002 并严格核对读回。

  • 连接定义点的 cross_section 接受小数点或小数逗号,写入与读回按数值比较,1,5 与 1.5 相等。

  • eplan_device_place 的 PLC 点仅要求连接点代号,地址、手工符号地址和文字可省略;省略项不写属性、不做地址重复检查。

  • eplan_placement_create 可在 Circuit、Overview 和 Graphics 页创建图形与文字,并照常检查布局。

  • eplan_connection_create 允许连接的实际端点落在黑盒边缘或框内引脚上,仍拒绝真正穿越外框的路径。

  • eplan_connection_create 仅放置节点且没有逻辑连接端点时只放置、读回,跳过连接生成并返回 undoSteps: 1。

  • eplan_device_place 端子来源可选择库符号及变体,按 Terminal 类别校验;省略时保持 IEC_symbol/X 默认。

  • eplan_device_place 支持 SPECIAL/BBDEF 母线定义及同标识 BCP 连接点,返回原生类别与主功能标志。

  • eplan_device_place 支持 SPECIAL/DC 黑盒及同标识 DCP/DCPP3 连接点,读回原生类型、类别、主功能、外框与框内功能。

  • eplan_connection_create 支持在导线上放置 SPECIAL CDP / CDPNG 连接定义点,写入颜色、截面和标识;预览列出属性,提交后读回核对,整次调用一步撤销。

  • eplan_connection_create 支持独立 item 在已有自动连线上或随新建导线放置 SPECIAL CDP / CDPNG 连接定义点,写入颜色、截面和标识;预览列出属性,提交后读回核对,整次调用一步撤销。

  • eplan_macro_insert 新增 representation:可在总览页插入宏的 Overview 表达;布局检查按所选表达和宏变体读取外框。

  • eplan_macro_insert 可用 part / part_variant 代替 macro:插入部件的组符号宏,在同一事务中给主功能补上部件引用,提交后读回。

  • eplan_macro_insert:宏的声明外框超出可绘制区但仍在已知幅面的页内时只给警告(部件总览宏铺满 A3 页);插入的对象仍在写入后实测检查。

  • eplan_placement_create 新增折线、圆弧、路径功能文本和 imports 图片,沿用默认预览、布局守卫、批量读回与单步撤销。

  • Host 审计记录通过共享规则去除敏感键值、认证凭据、URL 用户信息及 PEM 块;审批指纹继续绑定原始参数,审计链基于去敏后的记录计算。

  • Host 控制台、Bridge(含离线 stderr 与启动失败后备日志)及 Workbench 文件日志在写出前复用同一凭据脱敏规则。

  • eplan_connection_create 中断点内置默认改为 EPLAN 插入命令使用的 BP,支持 SPECIAL 中含一个或多个连接点的全部中断点符号;按匹配连接点选择变体及定位,双连接点读回不再失败。可显式选择 BPIN、BPOUT、BPF 等符号。

  • 新增 eplan_report_create:按报表块生成报表页,支持筛选、排序与页描述,返回同类型和表格的报表页及本次新增页;默认预览,沿用审批、单步撤销与审计。

  • eplan_page_get 返回报表页的 report 设置:类型、表格、方案名、器件标识与页描述...

Read more

v0.4.1 preview

v0.4.1 preview Pre-release
Pre-release

Choose a tag to compare

@asckye asckye released this 02 Nov 18:38

v0.4.1 预览版

[0.4.1] - 2026-11-02

  • 按 A77 拒绝三个已使 EPLAN 崩溃的 API 写侧,保留 4014 分母并单列 refused_unsafe;批量验证跳过这些侧,失联时停止并暂停写入,导入时丢弃未实际观察的后续结果。

  • 修复 eplan_api_try 链式句柄分发覆盖设置文本的回归:以 Project 定位器读取 Project.Settings 仍返回字符串 PROJECT,设置列表和属性入口保持既有文本,其他类型的句柄与集合元素继续可用;补实际分发路径的 Small 回归,修复后 Large 待验。

  • 原生调用前检查只读与页上下文;全项目对象枚举跳过无效项并记录数量,写事务内捕获原生异常时记录带 correlation id 的 Warning。审批、暂停与回滚行为保持;2026-11-01 实机通过(ApiTryTests 10/10、DevicePlaceTests 8/8)。

Fixed

  • doctor --offline 在没有安装 EPLAN 的机器上(CI 运行器、冒烟检查)对 EPLAN 安装检查只给警告,不再以失败退出;普通 doctor 仍报失败。
  • 读取属性时沿属性列表的继承链查找(例如 Function → FunctionBase),恢复设备结构标识(=、+、== 等)的读取;校验与写入规划使用同一分类,写入白名单不变。2026-11-02 实机通过(CabinetScopeTests、ObjectReadTests 14/14、属性读取 22 项)。
  • 带电缆定义的 eplan_connection_create 时限放宽到 180 秒(密集页面上一批电缆需 6 次提交和多次整页读回,实测 66.5 秒);布局警告最多保留 20 条并注明其余数量,避免把芯线读回等核对字段挤出结果。
  • 布局读取与 R2 排除 DynamicConnectionLine 的符号身份,修复 BAT 引脚接在线端时因外框交叠被误拒绝;保留真实符号重叠拒绝及已有 R3/R4 线段检查;2026-11-02 实机通过(PageReviewTests 8 项通过)。
  • Cable 移动时,移动前后按名称归属该电缆的定义点、移动后电缆上新出现的未命名定义点,以及这些定义点自己的属性文字,均不计入闭包身份、数量与跟随比较;定义线、自身文字、其他放置及另一电缆的定义点仍逐项核验,独立定义点移动保持严格校验。实机发现移动电缆会丢失芯线归属、生成连接也不恢复(A73):结果警告如实说明,eplan_page_review 只给目标位置建议并提示重画。2026-11-02 实机通过(PlacementMoveTests 1/1,PageReviewTests 8 项通过,电缆修复步骤按设计跳过)。
  • 布局 R3 对本次创建或改变对象的默认文字位置冲突只给警告,列出文字归属、冲突对象及 property_moves 修复建议;显式定位文字仍拒绝冲突。补充 W4 精确几何回归;2026-11-01 实机通过(AcceptanceRedrawTests 13 个阶段完成)。

Added

  • PLC 连接点可显示卡标识(20213)、主/辅助引用(20300)和插头(20406,新参数 plc_plug_designation);放置提交后按对象号读回,不在事务外保留原生对象。eplan_plc_get 也列出放在卡所在页之外的点。2026-11-02 实机通过(PlcDisplaySpikeTests、DevicePlaceTests 8/8、PlcTests、AcceptanceRedrawTests 完整通过)。

  • 官方 action 参数离线导入:目录补充允许值、字面默认值、类型、必填性及按 TYPE 匹配的示例;调用模板采用第一条示例并替换 scratch 路径。批量验证只取官方目录行,文件、页和选择上下文缺口继续记为 failed:needs_context,执行保护不变。

  • 每周五发布 v0.4.x 预览版,首班为 2026-11-06 的 v0.4.1;新增只准备本地版本与发布说明的 release-prep.ps1 和无需 EPLAN 的 Host smoke.ps1(使用显式跳过实时 Bridge 与授权检查的 doctor --offline),提交、标签、推送、插件哈希交接及发布仍由维护者执行。

  • 通用工具调用模板:API 详情按生成分发表返回逐签名参数、枚举全集、来源与示例;action 详情返回已知参数、选择建议及禁用状态。参数错误附带最接近模板;评测报告新增 argument retries(目标 0),并加入先查详情再零参数重试试规划的任务。补全离线测试及契约快照,未运行 EPLAN。

  • C1 Files:eplan_api_try 对方向明确的文件参数限制在 Host imports/新建 exports 子目录,输入哈希绑定逐次审批,输出返回路径、大小与 SHA-256;目录、打印/发送、主数据、设置及隐式目的地仍排除。TSV 方法组 read/write/excluded 从 49/184/743 变为 49/194/737,新增 14 个可执行签名;Large 导入及单步撤销测试仅编写、编译,未运行。

  • C1 静态与入口片:公开静态成员无需 target,项目/页面对象通过最多两层的目录属性路径到达,补项目图层、图框和结构标识符入口;设置/方案只读,维持 scratch、逐次审批、编译分派、快照和单撤销。补充 Small 与 LargeWrite 撤销测试;未运行 EPLAN,schema 不变。

  • 新增 full / Read 的 eplan_selection_get/set:读取当前项目/编辑页、分页选择集,按通用对象摘要定位并 replace/add/clear,仅改变 UI,报告未选中对象;eplan_action_try 可在审批后设置精确 selection,审批与审计记录上下文。Large spike 和单撤销验证已编写,未运行。

  • 设置只读切片:eplan_api_try 通过 scratch Project 定位器读取 USER/STATION/PROJECT 设置、枚举节点与方案列表;路径逐级枚举核对、列表有界分页,所有设置写入仍以 settings_write 拒绝。schema 不变,补只读形状/校验测试及 LargeWrite 读取与单撤销测试;Large 仅编写未运行。

  • 新增 eplan_placement_edit(full):同页删除、复制、90 度旋转、镜像、对齐和等间隙分布;复用绘图事务和单步撤销,删除逐次审批并备份,返回连接影响及复制定位符。Small/Medium 覆盖失败路径;原生行为 Large spike 仅编写未运行。

  • eplan_api_try 支持最多 4 层类型闭包、对象数组/集合的独立元素句柄(至多 200 个)、简单键索引属性读取及公开接口接收器;设置句柄仅开放读取,主数据、生命周期和外部文件限制保持。新增逐类型来源及前后缺口表,契约快照同步;Small 已补齐,LargeWrite 两步链及单撤销测试仅编写未运行。

  • eplan_api_try 按 ADR-0033 支持对象返回句柄、句柄接收器和对象参数:同 Host 会话与 EPLAN 进程、闲置 10 分钟、每会话 500 个,使用时复核类型与 scratch 归属;审批和审计标明类型及来源,设置只读、主数据仍排除,写入保持单次撤销。Small 已补齐,LargeWrite 已编写未运行。

  • eplan_api_try 支持受支持元素的一维数组/集合、PointD 返回、明确 out 与简单 ref 命名输出;逐项校验最多 200 项,集合结果按预算缓存分页,翻页不重放写入,保持逐次审批与单撤销。数组对象写入的规划与前后观察限定到参数涉及的页面,重复对象只描述一次;保留 30 秒规划及 120 秒执行期限。Large 既有超时失败待复验,本次未启动 EPLAN。

  • 共享 LayoutGuard 实现 R1–R9、栅格空位建议及五个绘图入口的写前检查;图框采用明确标注的边距回退,未验证的设备/文字/宏与电缆完整预测暂拒绝。补充未运行的 Large 与两图框 SPIKE。

  • C1 生命周期片:eplan_api_try 开放项目内 Create*/Remove*/Delete*/Erase* 与公开构造工厂,全部 scratch 逐次审批、单撤销写事务;审批明确创建/移除和撤销未验证,创建返回新鲜定位器,移除报告前后对象/资源观察,提交后记录 undoExpected。保留文件、主数据、设置、销毁和会话锁排除;补 Small 与未运行的 LargeWrite 撤销测试。

  • C1 生命周期片:eplan_api_try 开放项目内 Create*/Remove*/Delete*/Erase* 与公开构造工厂;工厂复用原目录 Create 组、模板省略 target,拒绝对既有实例调用 Create;全部 scratch 逐次审批、单撤销写事务;审批明确创建/移除和撤销未验证,创建返回新鲜定位器,移除报告前后对象/资源观察,提交后记录 undoExpected。保留文件、主数据、设置、销毁和会话锁排除;补 Small 与未运行的 LargeWrite 撤销测试。

  • 新增只读 eplan_page_review:页面规则、目标差异、分页及三轮审查修复闭环;图片留待后续。

  • C1 第五片:eplan_api_try 新增服务类 7 个读组、90 个写组,按公开无参构造和 IDisposable 生成编译入口;Project 定位器锚定 scratch,拒绝跨项目参数及共享数据或外部资源签名,逐签名列出分类理由。写入复用单撤销事务,补充 Large 服务读取和连接两端交换撤销测试,仅编写未运行;工具契约不变。

  • C1 第四片:对象发现扩展到目录驱动的 121 个查询名称(119 个原生类型),11 个名称给出明确 unsupported 原因;生成完整类型表及最派生 Properties 分发,保留原有 14 种定位器摘要。api_try 现有 384 个读组、314 个写组,支持全部新增类型的定位器参数;覆盖与契约快照同步,Large 仅编写未运行。

  • C1 第三片:eplan_api_try 新增 9 个读方法组、18 个写方法组,支持精确重载选择、目录枚举、PointD 与同项目对象定位器参数;返回标量文本、定位器或 null,写方法复用单撤销事务。生成逐签名排除清单并更新覆盖报告,Large 已编写未运行。

  • C2:新增 eplan_action_try,默认关闭,仅 full;目录未验证 action 只在 scratch 副本逐次审批后执行,带禁止表、前后指纹与未验证审计;超时/模态窗口按 unknown 暂停写入。Large 已编写未运行。

  • 新增 eplan_action_catalog_search / eplan_action_catalog_get(full、Read):查询官方 177 行与运行时本机 UI action,返回 TYPE、已知参数、白名单级别、验证引用及安装版本缺口;不启动 EPLAN,不保存或分发本机清单。

  • 新增默认关闭的 eplan_api_try:scratch 限定、逐次独立审批、目录生成的编译分发表、业务快照/设计文件指纹比较和 unverified 审计;超时结果未知时暂停写入。未接入的组明确返回尚不可分发;Large 已编写未运行。

  • 新增 eplan_api_search / eplan_api_get(full、Read):离线发现全部 4,649 个 API 重载组及 69 种属性字典,查询完整签名、排除原因、覆盖状态、证据与到达工具;压缩索引嵌入 Host,无需 EPLAN。

  • eplan_connection_create 支持在既有自动连接线段内显式放置方向对齐的 T 节点拆线并引出支路,返回被拆线段与节点位置;保留原逻辑连接,支路远端尚无器件时允许零新增逻辑连接。新增离线回归与待运行的 Large 验证。

  • 七个绘图写工具(设备放置、连线创建/生成、图元创建/移动、宏插入、DXF 导入)支持 show_page=false:启用后先开页供实时观看,dry-run 也开页;开页失败不阻止写入,结果以 pageShown 和提示报告。

  • eplan_connection_list 增加 response_format=detailed,返回与电缆规划同源的连接定位器,可直接用于 cable_definition 芯线;默认简洁输出不变。

  • M8 T8a:eplan_connection_create 增加电缆定义/芯线只读规划,逐芯预测连接归属、编号/标签、颜色及截面,校验复合键、整次调用限额与完整相交范围并固定 stale 指纹;执行仍为 CAPABILITY_MISSING,留 T8b 核验 A55 多阶段提交,不增加工具或 Bridge 操作。

  • M8 T5b:注册 eplan_placement_update(full、Write):整体移动无组符号及属性文字、自由文本/线/矩形,读回与提交后自动线校验;失败整体撤回,无变化不留撤销步,成功一步撤销。逻辑连接另用既有生成工具更新;新增 Large 未运行。

  • M8 T5a:增加 eplan_placement_update 未注册契约和绝对移动规划,包含父符号全部属性文字、栅格/外框/碰撞及自动线影响预测;拒绝组与宏组,校验陈旧证据并识别 no-op,执行留 T5b。

  • M8 T8b:eplan_connection_create 电缆执行沿 A55 分阶段提交、绑定和分配显式芯线,最终读回型号/连接/标签/颜色,失败自动撤销本次提交,补偿失败报 unknown;预览/审批/结果列出 6–8 撤销步。补齐 Small/Medium 和待实跑 Large,保持工具与 Bridge 操作数量不变。

  • 新增 eplan_rule_check(full,Read):按柜检查本机已提升的锁定规则,分页返回四值和证据;fix_plan 仅编译声明的修复计划,unknown 或修复冲突时拒绝,不执行工程修改。

  • M8 T7b:eplan_connection_create.items[].kind 增加 interruption_point,显式共享业务名、方向、坐标与对端页范围;拒绝歧义配对,提交后返回 EPLAN 双向对端和计算引用,保持两次提交/失败自动撤销。新增 Small/Medium 与待运行的 Large 配对撤销测试;不新增工具或 Bridge 操作。

  • M8 T4c:注册 eplan_placement_create(full、Write、非幂等),1–50 项文字/直线/矩形同一事务创建、全部读回后提交;失败整批回滚无空步,一次撤销。明确语言限制,页界/文字完整外框的 dry-run 缺口仍保留;混合 Large 已编写,未运行。

  • 模块只读检查增加供 M3 使用的内部服务:保留跨页引用、占位符值集、实际属性与模块声明,未解析引用明确列为缺口;缺 Bridge 能力或授权时拒绝,不注册新工具或写操作,实机闭包对照待验证。

  • 新增 eplan_page_open(full,Read):按显式项目与精确页名打开或聚焦编辑器,重复调用只重新聚焦;不保存或修改工程数据,不留撤销步。离线宿主明确拒绝;新增 Large 测试待运行。

  • 新增 eplan_asset_review(full,本地数据):经工程师独立窗口审核候选、关闭缺口或提升新正式规则;eplan_pack_build 拒绝无来源的 mandatory 规则与缺少匹配本机确认的 official,手改 standing 无效。

  • M8 T4b:增加 Bridge 内部 TEXT 创建适配,要求显示语言或语言无关文字,在事务内核对语言、字高与位置后才提交,失败回滚无空撤销步;绘图发现增加字高。Host 执行仍为 CAPABILITY_MISSING,尚未注册工具;Large 已编写,未运行。

  • M8 T4a:新增 placement 词表及 eplan_placement_create 的契约/只读规划,校验显式语言、完整外框并报告栅格吸附;工具尚未注册,执行留 T4b/T4c。

  • eplan_connection_create(full / Write):显式正交路径及角/T/电位连接符号,一次调用放置、生成两次提交(2 undo steps);生成失败自动撤销放置,端点读回不符整体补偿。

  • M8 T3a:新增 eplan_connection_create 的规格、未注册契约与 dry-run 路径/符号规划器,预测单页 SPECIAL 角/T/电位节点、吸附坐标、图形自动线和生成后的逻辑端点;执行仍返回 CAPABILITY_MISSING。A52 的独立连接生成及两个撤销步骤明确列入预览,未开放原子执行。

  • 新增 eplan_symbol_search(full,只读):查询项目已有符号库、符号变体、类型及连接点,按封闭种类过滤并分页;不导入库或修改设置。

  • 新增 eplan_cabinet_list / eplan_cabinet_bind(full):多柜映射、五层配置溯源、预览及换锁确认;eplan_context_get 按所选柜隔离配置与对象。

  • eplan_import_pdf_comments(full,Write):导入本项目经 EPLAN 导出、Acrobat/Reader 批注的 PDF,只导入便笺 Text,忽略插入标记和下划线等。文件沿用 imports 接收校验;dry run 只校验并统计现有注释,新增数执行后才知道;scratch 外按策略审批,一次 Ctrl+Z 撤销,失败或重复导入新增 0 时回滚且不留空步。结果按不可信数据清洗、限量返回页名、文字、作者和时间。M4c 工具实现完成,实机依据 S44;新增工具的 Large 测试待运行。

  • 工程包格式第 2 版(M6 第 3 阶段,ADR-0029):能读取 schemaVersion 2 的 pack.json、eplanmcp.pack/v2 的知识文档(新增配置项定义、配置层、事实集、规则、工作流、样例等种类)和第 2 版项目绑定;旧格式照常读取,不改写已安装的包。第 2 版绑定在 bind/migrate 之前只读。

  • eplan_pack_build 和包检查校验配置项定义(config_schema:类型、登记单位、枚举、上下限、允许的层)和配置层(config_layer:来源、层权限、默认值与约束、未知键),问题带 JSON Pointer。包内配置层只能是 company 或 cabinet_type;配置合并在后续版本加入。

  • 包检查校验规则知识文档(rule):受限的类型化 JSON 表达式,只能读登记的属性和关系,限制层数、关系跳数和节点数,正则只接受字面模式;旧版裸规则资料照常可查询。规则求值在后续版本加入。

  • eplan_api_search / eplan_api_get(full,只读):离线查询 API 重载组、属性字典、完整签名、覆盖状态、排除原因及可用工具,无需启动 EPLAN。

  • eplan_object_find / eplan_object_get(full,只读):按类型分页查找对象、获取定位器并读取属性,覆盖页、功能、连接、端子、PLC、电缆及其他目录类型;不支持的类型明确说明原因。

  • eplan_action_catalog_search / eplan_action_catalog_get(full,只读):查询官方动作和本机 UI 动作的参数、白名单级别、验证依据及安装版本缺口,无需启动 EPLAN,不保存或分发本机清单。

  • API 和动作详情提供 try_template 调用模板、参数、已知取值及选择建议;参数错误时返回最接近的模板,便于修正调用。

  • eplan_api_try(full,默认关闭):经逐次审批在 scratch 项目试用已接入的属性读取、标量属性写入、对象方法和服务类方法;支持精确重载、枚举、PointD 和同项目对象定位器,未接入的签名明确拒绝,写入失败回滚、成功单步撤销。

  • eplan_api_try 支持方向明确的文件参数:输入限于 Host 的 imports,输出限于每次新建的 exports 子目录,结果附路径、大小和 SHA-256;目录、打印/发送、主数据、设置及隐式目的地仍不开放。

  • eplan_action_try(full,默认关闭):经逐次审批在 scratch 副本试用目录中的非白名单动作,执行前检查禁止表,结果和审计明确标记为未验证。

  • eplan_symbol_search(full,只读):分页查询项目已有符号库、变体、类型、描述及连接点,支持名称或描述过滤 text_contains 和语言选择 language。

  • eplan_page_open(full,只读):按项目和精确页名打开或聚焦编辑器;不修改工程数据,不产生撤销步骤,离线时拒绝。

  • 设备放置、连线创建/生成、图元创建/移动、宏插入和 DXF 导入支持 show_page=true,执行或 dry-run 前打开目标页,默认关闭;开页失败仍可继续,结果通过 pageShown 和提示说明。

  • eplan_placement_create(full):一次创建 1–50 项文字、直线或矩形,文字须指定语言或声明与语言无关;失败整批回滚,成功一次撤销。部分页界和文字完整外框无法在 dry-run 中确认。

  • eplan_placement_update(full):整体移动无组符号及其属性文字,或自由文本、直线、矩形;预览栅格、外框、碰撞和自动线影响,拒绝组与宏组;失败整体撤回,无变化不留撤销步,成功一次撤销。逻辑连接须另行生成。

  • eplan_connection_create(full):按显式正交路径放置角、T 和电位连接符号并生成连接;共两个撤销步骤,生成或读回失败时自动撤销本次改动。

  • eplan_connection_create 可在既有自动连接线段上放置方向对齐的 T 节点并引出支路,保留原逻辑连接;远端尚无器件时允许零新增逻辑连接。

  • eplan_connection_create 支持 interruption_point:显式指定共享业务名、方向、坐标及对端页范围,拒绝歧义配对,结果返回 EPLAN 双向对端和计算引用。

  • eplan_connection_create 支持电缆定义及显式芯线:预览每芯归属、编号、颜色和截面,执行后核对结果;一次调用有 6–8 个撤销步骤,失败自动补偿,补偿结果不确定时报 unknown。

  • eplan_cabinet_list / eplan_cabinet_bind(full):查看和绑定多柜映射,预览五层配置来源,换锁...

Read more

v0.4.0 preview

v0.4.0 preview Pre-release
Pre-release

Choose a tag to compare

@asckye asckye released this 27 Oct 12:32

EplanMcp 的第四个预览版:属性写入、图纸文字与图框、翻译库导入和第 2 批白名单动作,共 75 个工具。预览版供测试使用,欢迎在 Issues 中反馈问题。

下载哪个文件:只需要下载 EplanMcp-0.4.0.zip。校验后先在文件属性中"解除锁定",再解压到短且固定的目录(例如 D:\EplanMcp),打开 workbench\EplanMcp.Workbench.exe,在状态页勾选 EPLAN 变体并点击"注册 EPLAN 插件"。步骤见 中文入门指南 / English guide。其余文件用于核验:SHA256SUMS.txt 是全部文件的 SHA-256;*-files.sha256 是 ZIP 内逐个文件的 SHA-256;*.cdx.json 是 SBOM;*.sigstore.json 是构建来源证明;EplanMcp-addin-* 是维护者构建的插件包及其记录(已包含在 ZIP 中)。

从 0.3.0 升级:关闭 EPLAN、Workbench 和 AI 客户端,用 0.4.0 整体替换程序目录(数据目录 %USERPROFILE%\EplanMcp 保留),打开 Workbench 重新注册 EPLAN 插件;程序目录位置变了时,在客户端页重写客户端配置或重新生成 Claude Code 本地市场。新工具都在 full 工具集,core 和 workflow 不变。

支持矩阵

  • EPLAN 版本:已验证 EPLAN 2026(实测 2026.0.3.25421),Electric P8、Pro Panel;EPLAN 2024、2025、2027 尚未验证(留待 M7,ADR-0009);EPLAN 2022、2023 不支持。
  • EPLAN 授权:需要包含 API 扩展(API Extension)的授权,并且允许加载未签名插件:0.x 版本的插件没有签名(ADR-0007)。
  • Windows 10/11 x64,解压即用,不需要管理员权限(只有虚拟机连接的"允许网络访问"需要 Windows 管理员授权)。
  • 客户端:Claude Code(本地插件市场由 Workbench 生成)及其他 stdio MCP 客户端。审批需要 stdio 会话;虚拟机连接支持能发送请求头的客户端,不支持 Claude 桌面版。

新内容

  • 属性写入:eplan_property_set 设置白名单中的功能属性,首批只有 20011 功能文本(只改给定语言,其他语言保留)和 20027 技术参数。先预览,scratch 外按策略审批,一次调用是一个撤销步骤,失败整体回滚。
  • 页面文字替换:eplan_page_text_replace 按字面替换页面自由文本(包括组内文字和多语言文字),不改图框、属性放置、功能文本和路径文本。
  • 图框切换:eplan_page_update 新增 plot_frame,把页切换为项目中其他页已在使用的图框,分别读回设置值和实际图框。
  • 翻译库导入:eplan_translation_import 把 UTF-16 制表符分隔的词汇表导入 EPLAN 配置的翻译库;每次都须工程师审批,导入前备份为 .zw7,只新增条目和补全空译文,不改已有译文。
  • 白名单动作第 2 批:eplan_action_run 新增 synchronize/MULTILINE、synchronize/OVERVIEW、SwitchProjectType,共 15 个条目。
  • 完整变更见 CHANGELOG.md 的 0.4.0。

已知限制

  • 属性写入只开放 20011 和 20027;其他属性仍只读,eplan_property_schema 标出可写的属性。
  • 图框切换只接受项目中已有页使用的图框,不从主数据导入新图框。
  • 页面文字替换不处理图框中的文字(标题栏);图框里显示的页属性来源无法从 API 读出(api-notes A49)。
  • synchronize/SINGLELINE 在示例项目上看不到效果,仍未开放;其余待验证的动作同样未开放。
  • 翻译库导入写的是本机所有项目共用的翻译库,导入后不能撤销,只能用备份恢复。

校验

0.x 程序不签名。请核对 SHA-256(SHA256SUMS.txt),联网时可用 gh attestation verify <文件> --repo asckye/eplan-mcp 核验构建来源证明。

构建与测试记录

  • ZIP、Host 与 Workbench 由 GitHub Actions 从标签 v0.4.0 构建(win-x64 自包含),附 CycloneDX SBOM、构建来源证明与 SBOM 证明。
  • 插件由维护者在开发机上从标签 v0.4.0(提交 bb21d87)构建,EplanSign=false;离线宿主 Large 测试 83 个通过。
  • Small + Medium 测试 9553 个全部通过。
  • 实机 Large 测试(EPLAN 2026.0.3.25421,Electric P8,2026-10-26,全新副本):227 项中 213 项通过、0 项失败,14 项因缺少所需环境或材料跳过(系统部件库写入、EDZ 导出、翻译库导入、规模夹具、0 页副本、项目备份文件等)。新写入工具均验证了提交、独立读回和提交后一次撤销恢复。
  • 尚未验证、交由测试人员:翻译库导入和部件库 EDZ 导出的发布前实机测试(会写本机共用的主数据,需负责人逐次批准)、Agent 评测(需要已登录的 agent CLI)、干净机器上的 ZIP 验收、跨机器的虚拟机连接。

Add-in SHA-256: 4e06377207f78f3d3eacd5ca33c08b62d4366772908c394cb4e5d6ce31603c5c EplanMcp-addin-v0.4.0.zip


EplanMcp 是独立的开源项目,与 EPLAN GmbH & Co. KG 无关联,也未经其认可或赞助。EPLAN、EPLAN Electric P8 和 EPLAN Pro Panel 是 EPLAN GmbH & Co. KG 的商标或注册商标。

v0.3.0 preview

v0.3.0 preview Pre-release
Pre-release

Choose a tag to compare

@asckye asckye released this 26 Oct 13:24

EplanMcp 的第三个预览版:多步工作流计划(M6 第 2 阶段)和通用属性读取,共 72 个工具。预览版供测试使用,欢迎在 Issues 中反馈问题。

下载哪个文件:只需要下载 EplanMcp-0.3.0.zip。校验后先在文件属性中"解除锁定",再解压到短且固定的目录(例如 D:\EplanMcp),打开 workbench\EplanMcp.Workbench.exe,在状态页勾选 EPLAN 变体并点击"注册 EPLAN 插件"。步骤见 中文入门指南 / English guide,计划的用法见 计划使用指南 / plans guide。其余文件用于核验:SHA256SUMS.txt 是全部文件的 SHA-256;*-files.sha256 是 ZIP 内逐个文件的 SHA-256;*.cdx.json 是 SBOM;*.sigstore.json 是构建来源证明;EplanMcp-addin-* 是维护者构建的插件包及其记录(已包含在 ZIP 中)。

从 0.2.0 升级:关闭 EPLAN、Workbench 和 AI 客户端,用 0.3.0 整体替换程序目录(数据目录 %USERPROFILE%\EplanMcp 保留),打开 Workbench 重新注册 EPLAN 插件;程序目录位置变了时,在客户端页重写客户端配置或重新生成 Claude Code 本地市场。计划工具在 workflow 和 full 工具集中,core 不变。

支持矩阵

  • EPLAN 版本:已验证 EPLAN 2026(实测 2026.0.3.25421),Electric P8、Pro Panel;EPLAN 2024、2025、2027 尚未验证(留待 M7,ADR-0009);EPLAN 2022、2023 不支持。
  • EPLAN 授权:需要包含 API 扩展(API Extension)的授权,并且允许加载未签名插件:0.x 版本的插件没有签名(ADR-0007)。
  • Windows 10/11 x64,解压即用,不需要管理员权限(只有虚拟机连接的"允许网络访问"需要 Windows 管理员授权)。
  • 客户端:Claude Code(本地插件市场由 Workbench 生成)及其他 stdio MCP 客户端。计划的审批、执行和任务跟踪需要 stdio 会话;虚拟机连接支持能发送请求头的客户端,不支持 Claude 桌面版。

新内容

  • 多步工作流计划:eplan_workflow_plan 把 1–20 个有依赖的步骤(建页、改页、删页、设备改名、插宏、页/设备重编号)编译成不可变计划;eplan_plan_get 审阅完整计划、预期和差异预览;eplan_plan_apply 整体审批(含 Destructive 步骤时始终审批),第一步之前做初始备份,每步独立事务、可逐步撤销,第一个失败即停;eplan_task_get 跟踪执行。结果给出提交事实、对象数据层校验、差异和 coverage。编译后手工改动范围内的对象,执行前报 PLAN_STALE 并列出冲突。
  • 大项目:计划只读取受影响的页,再做全项目名称筛查,不再读取全项目内容。核验规模为 300、1,000 和 3,000 页;10,000 页尚不支持。
  • eplan_context_get:计划所需的最小工程上下文(默认柜)。
  • 通用属性读取:eplan_property_schema 按 ID 或正式名称查询属性定义;eplan_property_get 批量读取项目、页、设备和定位符目标的指定属性,区分值、空值、不适用和拒绝读取,支持分页游标。不返回路径、联系人等个人数据。属性写入尚未提供。
  • 完整变更见 CHANGELOG.md 的 0.3.0。

已知限制

  • 计划的 verification: passed 只表示声明的局部检查和全项目名称筛查通过;其他页列为未观察,不代表全项目内容未变。电气关系和图纸层校验仍为 skipped。
  • 计划中的重编号只支持整个项目最多 50 页、10,000 个对象;含无页功能的设备改名不支持;module.insert、placeholder.apply 还不能进入计划。
  • 计划只用覆盖全部结构的默认柜;"参考电机回路 → 模块生成"样例仍待模块能力,M6 后续阶段尚未开始。

校验

0.x 程序不签名。请核对 SHA-256(SHA256SUMS.txt),联网时可用 gh attestation verify <文件> --repo asckye/eplan-mcp 核验构建来源证明。

构建与测试记录

  • ZIP、Host 与 Workbench 由 GitHub Actions 从标签 v0.3.0 构建(win-x64 自包含),附 CycloneDX SBOM、构建来源证明与 SBOM 证明。
  • 插件由维护者在开发机上从标签 v0.3.0(提交 be0d5f0)构建,EplanSign=false;离线宿主 Large 测试 83 个通过。
  • CI:Small + Medium 测试 9018 个全部通过。
  • 实机 Large 测试(EPLAN 2026.0.3.25421,Electric P8,2026-10-26):215 项中 204 项通过、0 项失败,11 项因缺少所需环境或材料跳过(系统部件库写入、EDZ 导出、规模夹具、0 页副本、项目备份文件等)。删除瑞典语和电缆生成需要全新写副本,按 Large README 在新副本上单独运行通过。
  • 规模实测:只打开 1,000 页项目时,"建页 → 改页 → 设备改名"三步计划执行约 11.5 秒(初始备份 1.3 秒);3,000 页约 31 秒(初始备份 1.3 秒),校验均 passed。
  • 尚未验证、交由测试人员:Agent 评测(需要已登录的 agent CLI)、部件库 EDZ 导出的发布前测试、干净机器上的 ZIP 验收、跨机器的虚拟机连接。

Add-in SHA-256: 035251fae8888c725b14f4bd565bce66f14fa8aa2ed47de03d2e5a33fd937198 EplanMcp-addin-v0.3.0.zip


EplanMcp 是独立的开源项目,与 EPLAN GmbH & Co. KG 无关联,也未经其认可或赞助。EPLAN、EPLAN Electric P8 和 EPLAN Pro Panel 是 EPLAN GmbH & Co. KG 的商标或注册商标。

v0.2.0 preview

v0.2.0 preview Pre-release
Pre-release

Choose a tag to compare

@asckye asckye released this 23 Oct 06:09

EplanMcp 的第二个预览版:改为只交付一个 ZIP,新增虚拟机连接和 eplan_action_run。预览版供测试使用,欢迎在 Issues 中反馈问题。

下载哪个文件:只需要下载 EplanMcp-0.2.0.zip。校验后先在文件属性中"解除锁定",再解压到短且固定的目录(例如 D:\EplanMcp),打开 workbench\EplanMcp.Workbench.exe,在状态页勾选 EPLAN 变体并点击"注册 EPLAN 插件"。步骤见 中文入门指南 / English guide。其余文件用于核验:SHA256SUMS.txt 是全部文件的 SHA-256;*-files.sha256 是 ZIP 内逐个文件的 SHA-256;*.cdx.json 是 SBOM(第三方组件与许可证);*.sigstore.json 是构建来源证明;EplanMcp-addin-* 是维护者构建的插件包及其记录(已包含在 ZIP 中)。

从 0.1.0 升级:0.1.0 的安装包版本请先在 Workbench 撤销注册(或运行 eplanmcp uninstall-addin),再从"应用和功能"卸载;数据目录 %USERPROFILE%\EplanMcp 保留。然后按上面的步骤解压 0.2.0 并重新注册插件、重写客户端配置或重新生成 Claude Code 本地市场。

支持矩阵

  • EPLAN 版本:已验证 EPLAN 2026(实测 2026.0.3.25421),Electric P8、Pro Panel;EPLAN 2024、2025、2027 尚未验证(留待 M7,ADR-0009);EPLAN 2022、2023 不支持。
  • EPLAN 授权:需要包含 API 扩展(API Extension)的授权,并且允许加载未签名插件:0.x 版本的插件没有签名(ADR-0007)。
  • Windows 10/11 x64,解压即用,不需要管理员权限(只有虚拟机连接的"允许网络访问"需要 Windows 管理员授权)。
  • 客户端:Claude Code(本地插件市场由 Workbench 生成)及其他 stdio MCP 客户端(Workbench 客户端页或 eplanmcp client-config)。虚拟机连接支持能发送请求头的客户端,不支持 Claude 桌面版。

新内容

  • 只交付 ZIP:不再提供 Inno Setup 安装包。Workbench 状态页注册或撤销 EPLAN 插件;客户端页生成 Claude Code 本地市场(写入 Host 的实际路径)。
  • 虚拟机连接(EPLAN 在虚拟机、AI 客户端在宿主机):虚拟机中的 Workbench 生成密钥、经 UAC 开放只放行宿主机 IPv4 的防火墙规则、启动和停止 HTTP 服务;宿主机上的 Workbench"虚拟机 ↔ 宿主机"向导测试连接并写入 eplan-vm 配置。HTTP 不加密,只在私有网络中使用;见指南第 10 节。
  • eplan_action_run(默认关闭,在 config.json 打开 actionRun):只运行 12 个经验证的白名单 EPLAN 动作。共 65 个工具。
  • 英文入门指南。完整变更见 CHANGELOG.md 的 0.2.0。

校验

0.x 程序不签名。请核对 SHA-256(SHA256SUMS.txt),联网时可用 gh attestation verify <文件> --repo asckye/eplan-mcp 核验构建来源证明。

构建与测试记录

  • ZIP、Host 与 Workbench 由 GitHub Actions 从标签 v0.2.0 构建(win-x64 自包含),附 CycloneDX SBOM、构建来源证明与 SBOM 证明。
  • 插件由维护者在开发机上从标签 v0.2.0(提交 e974018)构建,EplanSign=false;离线宿主 Large 测试 45 个通过。
  • CI:Small + Medium 测试 6808 个通过、5 个跳过。
  • 实机 Large 测试:eplan_action_run 16/16 通过(EPLAN 2026.0.3.25421);其余 Bridge 操作自 0.1.0 以来未改动,沿用 0.1.0 的实机结果。
  • 开发机冒烟(2026-10-23,非干净环境):serve --http 连接真实 EPLAN,vm-test 用正确密钥连接成功并列出工具,错误密钥返回 unauthorized,错误端口返回 unreachable;doctor 报告 HTTP 服务。
  • 尚未验证、交由测试人员:跨机器的虚拟机连接与 UAC 授权、各客户端的远程配置实际连接、干净机器上的 ZIP 验收(I1–I10)、Agent 评测。

Add-in SHA-256: 31701dabefd3eaa5b502eeec10aa2d15ac6e52dfacba6496fa3e06353e9a2cce EplanMcp-addin-v0.2.0.zip


EplanMcp 是独立的开源项目,与 EPLAN GmbH & Co. KG 无关联,也未经其认可或赞助。EPLAN、EPLAN Electric P8 和 EPLAN Pro Panel 是 EPLAN GmbH & Co. KG 的商标或注册商标。

v0.1.0 preview

v0.1.0 preview Pre-release
Pre-release

Choose a tag to compare

@asckye asckye released this 23 Oct 02:11

EplanMcp 的首个预览版:让 AI 代理通过 MCP 安全地读取和修改 EPLAN 项目。预览版供测试使用,欢迎在 Issues 中反馈问题。

下载哪个文件:普通用户只需要下载 EplanMcp-Setup-0.1.0.exe(安装包,插件、Workbench 和文档都在里面),安装步骤见 中文入门指南。其余文件用于核验:SHA256SUMS.txt 是全部文件的 SHA-256;*.cdx.json 是 SBOM(第三方组件与许可证);*.sigstore.json 是构建来源证明;EplanMcp-addin-* 是维护者构建的插件包及其记录(已包含在安装包中)。

支持矩阵

  • EPLAN 版本:已验证 EPLAN 2026(实测 2026.0.3.25421),Electric P8、Pro Panel;EPLAN 2024、2025、2027 尚未验证(留待 M7,ADR-0009);EPLAN 2022、2023 不支持。
  • EPLAN 授权:需要包含 API 扩展(API Extension)的授权,并且允许加载未签名插件:0.x 版本的插件没有签名(ADR-0007)。
  • Windows 10/11 x64,按用户安装,不需要管理员权限,离线可装。
  • 客户端:Claude Code(附本地插件市场)及其他 stdio MCP 客户端(eplanmcp client-config)。

内容

  • 64 个工具:读取(项目、页、设备、连接、电缆、端子排、PLC、部件、修订、消息、检查结果、宏、占位符)、写入(新建与修改页、修改和放置设备、插入宏、生成连接、设置语言、应用占位符值、新建项目)、Destructive(删页、页面/设备/端子/电缆/线号编号、翻译、删除语言、生成电缆、导入设备/部件清单与 PLC 数据)、导出(PDF、DXF、图片、PXF、部件清单、标签、未翻译文本)、导入(DXF、PXF)、部件库与翻译库、工程包与资源。
  • 安全:scratch 项目自动执行,真实项目逐次审批(Workbench 或 EPLAN 对话框),Destructive 先备份,哈希链审计,结果未知时暂停写入。
  • 完整变更见 CHANGELOG.md 的 0.1.0。

校验

0.x 安装包不签名。请核对 SHA-256(SHA256SUMS.txt),联网时可用 gh attestation verify <文件> --repo asckye/eplan-mcp 核验构建来源证明。

构建与测试记录

  • 安装包、Host 与 Workbench 由 GitHub Actions 从标签 v0.1.0 构建(Inno Setup 6.7.1,win-x64 自包含),附 CycloneDX SBOM、构建来源证明与 SBOM 证明;本地 gh attestation verify 已核验。
  • 插件由维护者在开发机上从标签 v0.1.0(提交 c85fb0d)构建,EplanSign=false;离线宿主 Large 测试 45 个通过。
  • 实机 Large 测试(EPLAN 2026.0.3.25421,Electric P8,提交 b2f7676 及其后只改测试的 d5ebe02):126 个中 123 个通过、1 个按设计跳过(EDZ)、2 个因测试假设"新鲜状态"失败,已修正(#493)并在新鲜写副本上补跑 7/7 通过(含 EDZ 全量导出)。写共享部件库的 PartImport/PartSync 测试需要负责人逐次批准,本次未运行。
  • Agent 评测:本版未运行,下一版补齐。
  • 开发机冒烟验收(2026-10-22,非干净环境,管理员账户、装有开发工具):草稿中的安装包静默安装成功(%USERPROFILE%\EplanMcp^Gpp、登录自启动项、卸载信息);安装后的 eplanmcp.exe install-addin --variant "Electric P8" 注册成功,EPLAN 从安装目录加载插件;doctor 全部通过;经安装后的程序读取项目和页面、在 scratch 副本中新建一页(自动执行、可撤销)均正常;Workbench 启动并监听审批管道;静默卸载撤销程序目录、自启动项、卸载信息和插件登记,数据目录保留。需要人工点击的审批未测。
  • 干净机器验收(I1–I10,非开发人员、标准用户、无开发工具的虚拟机):由测试人员在预览期间进行,问题在后续修订版中修复。

Add-in SHA-256: 0b38ca87d9a487062069e14834e72a9064fb1f9df19407ca058df51573513146 EplanMcp-addin-v0.1.0.zip


EplanMcp 是独立的开源项目,与 EPLAN GmbH & Co. KG 无关联,也未经其认可或赞助。EPLAN、EPLAN Electric P8 和 EPLAN Pro Panel 是 EPLAN GmbH & Co. KG 的商标或注册商标。