{"id":"e2e12914-30f0-45e5-89ce-55960e7663d1","entityType":"agent","slug":"clawhub-zw008-iaiops","name":"iaiops","canonicalUrl":"https://www.xpersona.co/agent/clawhub-zw008-iaiops","canonicalPath":"/agent/clawhub-zw008-iaiops","generatedAt":"2026-10-09T22:52:08.866Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-09T16:10:33.147Z","emptyReason":null},"description":"Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting. Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect, MQTT/Sparkplug B, Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor / display fab equipment over HSMS), PROFINET (DCP discovery), the building edition (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA, change-of-value). Use when the task names any industrial protocol, a PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint, OEE/downtime, downtime root-cause, or OT asset inventory. Routes to the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run + double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or backups — those are separate AIops tools. Skill: iaiops Owner: zw008 Summary: Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting. Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect, MQTT/Sparkplug B, Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor / display fab equipment over HSMS), PROFINET (DCP discover","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 2.3K downloads reported by the source. Last updated 10/9/2026.","installCommand":"clawhub skill install s171xgnmqse0nqvgqvqnaq5f9183kyre:iaiops","sourceUrl":"https://clawhub.ai/zw008/iaiops","homepage":"https://clawhub.ai/zw008/skills/iaiops","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/zw008/iaiops","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/zw008/skills/iaiops","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":67,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting. Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over O"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-09T16:10:33.147Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T16:10:33.147Z","emptyReason":null},"stars":null,"forks":null,"downloads":2340,"packageName":null,"latestVersion":"0.28.0","tractionLabel":"2.3K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-09T16:10:33.147Z","emptyReason":null},"lastUpdatedAt":"2026-10-09T16:10:33.147Z","lastCrawledAt":"2026-10-09T16:10:33.147Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-10T16:10:33.147Z","lastVerifiedAt":null,"highlights":[{"version":"0.28.0","createdAt":"2026-09-16T05:08:42.390Z","changelog":"0.28.0: MQTT/Sparkplug collectable; onboard's two journeys (devices / uns with a B1/B2 namespace fork)","fileCount":3,"zipByteSize":7964},{"version":"0.27.0","createdAt":"2026-09-03T03:21:00.861Z","changelog":"router now routes to the pharma edition · contextual baselines · downtime attribution (D18) · alarm event-type clustering · device advisory matching · GxP crosswalk","fileCount":3,"zipByteSize":7049},{"version":"0.26.0","createdAt":"2026-09-01T12:29:51.987Z","changelog":"verify determinism (executed model-free claim) · PLC program change baseline · pharma edition","fileCount":3,"zipByteSize":6759},{"version":"0.23.2","createdAt":"2026-08-28T07:29:07.518Z","changelog":"iaiops 0.23.2 - Updated documentation in SKILL.md to clarify the safety policy for write commands; now emphasizes that the \"10 write tools\" designation refers specifically to device-writing tools, and storage/historian writes are listed separately by edition. - Removed skill-card.md from the package.","fileCount":3,"zipByteSize":6828},{"version":"0.23.1","createdAt":"2026-08-28T05:20:56.444Z","changelog":"- Added a new section on investigation and site readiness workflows, including `site_readiness`/`iaiops readiness` and `investigation_readiness` commands, for assessing deployment gaps and troubleshooting steps. - Clarified the distinction between device write tools (10 high-risk, MOC-gated) and the additional low-risk `historian_push` tool. - Added guidance on declaring upstream/downstream relations (`line_relation_declare`) and knowledge base mounting—now requires explicit user input, with clear warnings against auto-filling tag roles. - Updated documentation to emphasize best practices for knowledge handling, safety invariants, and readiness checks prior to executing edition routing or device actions. - Removed the `skill-card.md` file.","fileCount":3,"zipByteSize":6702},{"version":"0.23.0","createdAt":"2026-08-25T04:31:48.747Z","changelog":"- Removed the file: skill-card.md. - No other changes to functionality or documentation. - Package structure is now streamlined by removing the sample skill card.","fileCount":3,"zipByteSize":5601},{"version":"0.22.0","createdAt":"2026-08-02T13:10:00.250Z","changelog":"0.22.0 — asyncua 2.x floor; OPC-UA vs a third-party stack + cert trust; TDengine REST/WS; second MCP implementation; EtherNet/IP program scope","fileCount":3,"zipByteSize":5589},{"version":"0.21.1","createdAt":"2026-08-02T07:25:29.109Z","changelog":"0.21.1 — review round two: RCA window dilution, IoTDB header names, OPC-UA malformed-URL leak","fileCount":3,"zipByteSize":5474}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s171xgnmqse0nqvgqvqnaq5f9183kyre:iaiops","setupComplexity":"low","setupSteps":["Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-zw008-iaiops/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-zw008-iaiops/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-zw008-iaiops/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-zw008-iaiops/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-zw008-iaiops/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-zw008-iaiops/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-09T22:52:08.864Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-zw008-iaiops/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-zw008-iaiops/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-zw008-iaiops/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-zw008-iaiops/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-09T16:10:33.147Z","emptyReason":null},"readme":"Skill: iaiops\n\nOwner: zw008\n\nSummary: Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting. Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect, MQTT/Sparkplug B, Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor / display fab equipment over HSMS), PROFINET (DCP discovery), the building edition (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA, change-of-value). Use when the task names any industrial protocol, a PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint, OEE/downtime, downtime root-cause, or OT asset inventory. Routes to the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run + double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or backups — those are separate AIops tools.\n\nTags: latest:0.28.0\n\nVersion history:\n\nv0.28.0 | 2026-09-16T05:08:42.390Z | user\n\n0.28.0: MQTT/Sparkplug collectable; onboard's two journeys (devices / uns with a B1/B2 namespace fork)\n\nv0.27.0 | 2026-09-03T03:21:00.861Z | user\n\nrouter now routes to the pharma edition · contextual baselines · downtime attribution (D18) · alarm event-type clustering · device advisory matching · GxP crosswalk\n\nv0.26.0 | 2026-09-01T12:29:51.987Z | user\n\nverify determinism (executed model-free claim) · PLC program change baseline · pharma edition\n\nv0.23.2 | 2026-08-28T07:29:07.518Z | auto\n\niaiops 0.23.2\n\n- Updated documentation in SKILL.md to clarify the safety policy for write commands; now emphasizes that the \"10 write tools\" designation refers specifically to device-writing tools, and storage/historian writes are listed separately by edition.\n- Removed skill-card.md from the package.\n\nv0.23.1 | 2026-08-28T05:20:56.444Z | auto\n\n- Added a new section on investigation and site readiness workflows, including `site_readiness`/`iaiops readiness` and `investigation_readiness` commands, for assessing deployment gaps and troubleshooting steps.\n- Clarified the distinction between device write tools (10 high-risk, MOC-gated) and the additional low-risk `historian_push` tool.\n- Added guidance on declaring upstream/downstream relations (`line_relation_declare`) and knowledge base mounting—now requires explicit user input, with clear warnings against auto-filling tag roles.\n- Updated documentation to emphasize best practices for knowledge handling, safety invariants, and readiness checks prior to executing edition routing or device actions.\n- Removed the `skill-card.md` file.\n\nv0.23.0 | 2026-08-25T04:31:48.747Z | auto\n\n- Removed the file: skill-card.md.\n- No other changes to functionality or documentation.\n- Package structure is now streamlined by removing the sample skill card.\n\nv0.22.0 | 2026-08-02T13:10:00.250Z | user\n\n0.22.0 — asyncua 2.x floor; OPC-UA vs a third-party stack + cert trust; TDengine REST/WS; second MCP implementation; EtherNet/IP program scope\n\nv0.21.1 | 2026-08-02T07:25:29.109Z | user\n\n0.21.1 — review round two: RCA window dilution, IoTDB header names, OPC-UA malformed-URL leak\n\nv0.21.0 | 2026-08-02T03:08:08.070Z | user\n\n0.21.0 — verification sweep: 5 product fixes (IoTDB tag mislabelling, TDengine coverage, OPC-UA thread leak + interop verdict, PROFINET doc fields)\n\nv0.20.4 | 2026-08-02T00:29:23.180Z | user\n\nNATS egress 120s hang bounded to 5s; BACnet write now reports a read-back instead of claiming applied; MCP interface + egress sinks now driven by real counterparties\n\nv0.20.3 | 2026-08-01T04:33:22.065Z | user\n\naudit status now reflects real outcome; runaway guard sees retried denials; approval-gate contract over the real write surface\n\nv0.20.2 | 2026-07-31T14:47:09.675Z | user\n\ncredential redaction in audit log; retained mqtt_publish undo; pyopenssl resolver guard\n\nv0.20.1 | 2026-07-29T09:37:16.757Z | user\n\niaiops 0.20.1 — MCP tool annotations derived from the governance harness\n\nv0.19.0 | 2026-07-21T14:35:13.901Z | user\n\n0.19.0 — read-only gate removed; audit on both MCP+CLI; effect-based write risk\n\nv0.18.1 | 2026-07-19T17:13:19.138Z | auto\n\n- Removed the file skill-card.md.\n- No changes to core logic or features.\n\nv0.18.0 | 2026-07-19T11:30:07.974Z | auto\n\n- Removed the file: skill-card.md.\n- No other functional or documentation changes.\n\nv0.17.0 | 2026-07-19T09:22:17.878Z | auto\n\n- Removed the sample file skill-card.md.\n- No changes to functionality or routing logic.\n- No changes to deployment or safety controls.\n- Documentation and routing table remain unchanged.\n\nv0.16.0 | 2026-07-17T05:13:18.541Z | user\n\n0.16.0 — protocol + intelligence depth (8 features, tool surface unchanged)\n\nv0.13.0 | 2026-07-13T06:55:19.042Z | user\n\n0.13.0: BAS + Ignition read layers; write list now 10 (adds bas_command); line-wide 166 governed tools (156 read + 10 write).\n\nv0.12.0 | 2026-07-12T10:05:51.531Z | auto\n\n**Major change: iaiops skill is now a routing/dispatch layer, not a direct toolset.**\n\n- Skill restructured as a protocol and industry router; direct tool and protocol details moved to dedicated \"edition skills\" (e.g. iaiops-factory, iaiops-fab).\n- SKILL.md now documents edition-specific routing logic, MCP profile selection, deployment, and security posture.\n- Updated protocol/industry coverage, including new support for Omron FINS, BACnet/IP, PLCnext vPLC, plus clearer guidance for energy protocols (moved to separate package).\n- Removed the direct listing of individual tools and their protocol-specific options from this base skill.\n- Removed file: skill-card.md.\n\nv0.7.0 | 2026-06-30T10:00:53.740Z | user\n\n0.7.0 — HART-IP connector, OPC-UA tag auto-discovery, data-quality watchdog enhancements, Modbus byte-order/templates/RTU, named MCP entry points; live binding-validation fixes. 98 tools / 15 protocols.\n\nv0.4.0 | 2026-06-29T12:53:31.867Z | auto\n\niaiops 0.4.0\n\n- Added comprehensive protocol support details and tool descriptions to documentation.\n- Clarified write access as Management-of-Change (MOC) gated and high-risk, with read-first emphasis.\n- Listed usage recommendations for industrial protocols and excluded non-OT/IT domains.\n- Expanded and organized protocol tool lists, including diagnostics and analytics capabilities.\n- Provided guidance for fab (semiconductor/display) equipment and cross-protocol troubleshooting.\n\nArchive index:\n\nArchive v0.28.0: 3 files, 7964 bytes\n\nFiles: skill-card.md (2189b), SKILL.md (11424b), _meta.json (126b)\n\nFile v0.28.0:SKILL.md\n\n---\nname: iaiops\ndescription: >-\n  Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting.\n  Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over\n  OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect,\n  MQTT/Sparkplug B,\n  Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor /\n  display fab equipment over HSMS), PROFINET (DCP discovery), the building edition\n  (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics\n  (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription\n  health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime\n  root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA,\n  change-of-value). Use when the task names any industrial protocol, a\n  PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM\n  equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint,\n  OEE/downtime, downtime root-cause, or OT asset inventory. Routes to\n  the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run +\n  double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or\n  backups — those are separate AIops tools.\n---\n\n# iaiops — ROUTER（识别现场 → 派发 edition skill + MCP profile）\n\n这是**路由 skill**，本身不含工具表。识别任务的行业/协议 → 转到对应 **edition skill**\n（工具清单、workflow、支持版本矩阵都在那边），并用对应 profile 启动 MCP（`IAIOPS_MCP=<x>`\n环境变量，或等价 sugar 脚本 `iaiops-mcp-<x>`）。现场只暴露 1-2 个协议 + 跨协议脑，\n单会话工具 ~15-30，模型不被淹。\n\n## 路由表（关键词 → edition skill → MCP profile）\n\n| 任务提到 | edition skill | MCP profile / entrypoint |\n|---|---|---|\n| SECS/GEM · SECS-II · HSMS · 半导体/显示 fab · wafer · panel · MES equipment · SVID/ECID · recipe | **iaiops-fab** | `IAIOPS_MCP=fab` / `iaiops-mcp-fab` |\n| 离散制造产线 · PLC（S7/S7-1200/1500 · 三菱/MELSEC · Allen-Bradley/ControlLogix/CompactLogix · Omron/FINS/SYSMAC CS/CJ/CP/NX）· Modbus · EtherCAT/CoE/SOEM · PROFINET/DCP · MTConnect/CNC 机床 · Sparkplug B/UNS | **iaiops-factory** | `IAIOPS_MCP=factory` / `iaiops-mcp-factory` |\n| 流程工业（化工/食品饮料/原料药合成）· HART/HART-IP · 变送器/阀门定位器 · 过程仪表 · DCS 旁路读取 | **iaiops-process** | `IAIOPS_MCP=process` / `iaiops-mcp-process`（有 UNS 时 `IAIOPS_MCP=process,sparkplug`） |\n| BACnet/BACnet-IP · HVAC/暖通 · BMS/楼宇自控 · 厂务/facility · Who-Is · TrendLog | **iaiops-building** | `IAIOPS_MCP=building` / `iaiops-mcp-building` |\n| 水处理/水厂 · pH · 浊度/turbidity · 电导率/conductivity · 加药/dosing · 泵站/pump station · 曝气 | **iaiops-water** | `IAIOPS_MCP=water` / `iaiops-mcp-water` |\n| 仓储/物流中心 · 输送线/conveyor · 分拣/sorter · AGV/AMR · WMS/WCS · 托盘/穿梭车 · 物料搬运 | **iaiops-warehouse** | `IAIOPS_MCP=warehouse` / `iaiops-mcp-warehouse` |\n| 医院设施/clinical facility · 负压/正压隔离病房 · 医用气体 · 手术室环境 · 医疗 BMS | **iaiops-clinical** | `IAIOPS_MCP=clinical` / `iaiops-mcp-clinical` |\n| 制药/药厂 · GMP · 洁净室/洁净区 · Annex 1 · 压差梯度/pressure cascade · grade A/B/C/D · 尘埃粒子 · EMS/环境监测 · PW/WFI/纯化水/注射用水 · TOC · 生物反应器 · 冻干机 · 灌装线 · CSV/IQ/OQ · Annex 11 · Part 11 · 数据完整性/ALCOA | **iaiops-pharma** | `IAIOPS_MCP=pharma` / `iaiops-mcp-pharma` |\n| 光伏/PV · 逆变器/inverter · 组串/string · 风电/风机 · 场站 SCADA · 新能源电站 | **iaiops-renewables** | `IAIOPS_MCP=renewables` / `iaiops-mcp-renewables` |\n| Phoenix Contact PLCnext / vPLC（虚拟化 PLC，走内建 OPC-UA + Modbus-TCP） | **iaiops-plcnext** | `IAIOPS_MCP=plcnext` / `iaiops-mcp-plcnext` |\n| IO-Link · IO-Link master · IODD · 智能传感器/executor 参数 · pdin · ISDU（主站 JSON/REST 接口，只读） | **iaiops-factory**（楼宇传感器场景 **iaiops-building**） | `IAIOPS_MCP=factory` / 单协议 `IAIOPS_MCP=iolink` / `iaiops-mcp-iolink` |\n\n- 单协议深用（只有一种设备）：直接 `IAIOPS_MCP=opcua`（或 modbus/s7/mc/fins/eip/mtconnect/\n  sparkplug/ethercat/secsgem/profinet/bacnet/hart），等价脚本 `iaiops-mcp-<协议>`。\n- 跨行业只问 OEE/停机根因/资产盘点/数据质量：任一 profile 均可 —— 跨协议脑\n  （诊断/OEE/资产/合规）**默认随 server 暴露**，选覆盖现场协议的 profile 即可；\n  纯脑场景可用 `IAIOPS_MCP=brain` / `iaiops-mcp-brain`（只暴露脑，零协议）。\n- 说不清行业但报了协议名：按协议列选含它的最小 profile；都不沾 → `iaiops doctor` +\n  `protocols_supported` 先看现场配置了什么。\n\n## 部署（0.10.0 起：无默认，必须选菜单）\n\n- **裸启动 `iaiops-mcp`（不设 `IAIOPS_MCP`）不再暴露全部工具**：打印选择菜单到\n  stderr 并 exit 2。必须设 `IAIOPS_MCP=<selection>` 或用预置入口 `iaiops-mcp-<name>`。\n  `IAIOPS_MCP=menu` 显式打印同一菜单（带各 selection 工具数）后退出。\n- `IAIOPS_MCP=all` 仍可**显式**使用（power user；>100 工具时启动日志给洪泛警告）。\n- **多进程站点（1 脑 + N 协议）**：跑一个 `iaiops-mcp-brain`（只脑），协议 server 各自\n  加 `IAIOPS_MCP_NO_BRAIN=1`（如 `IAIOPS_MCP_NO_BRAIN=1 iaiops-mcp-opcua`）去掉脑，\n  避免跨 server 工具重名；`protocols_supported`（发现工具）在 NO_BRAIN 下仍然保留。\n\n## Energy 协议 → 另一个包（不在本 server）\n\nIEC 60870-5-104 / IEC-104、DNP3 / outstation、IEC 61850 / MMS / IED、变电站/\nsubstation、电力/能源/utility SCADA → 用独立的 **iaiops-energy**\n（`pip install iaiops-energy`，然后 `iaiops-energy-mcp`；\ngithub.com/industrial-aiops/industrial-aiops-energy）。它复用本包的 core + 脑；\nmonitor-direction only。**不要**尝试用本 server 的 profile 覆盖能源协议。\n\n## 安全不变量（所有 edition 一致，路由前先记住）\n\n- **Read-first**：默认只读；先 `protocols_supported` 看能力、`iaiops doctor` /\n  `<protocol> doctor` 验链路，再谈读，最后才谈写。\n- **写 = MOC（Management-of-Change）**：The 10 write tools（`s7_write_db`、\n  `mc_write_words`、`fins_write_words`、`mqtt_publish`、`eip_write_tag`、`ethercat_write_sdo`、\n  `ethercat_set_state`、`profinet_dcp_set`、`bacnet_write_property`、`bas_command`）全部\n  `risk=HIGH`、默认 `dry_run=True`、捕获改前值供 undo（`bas_command` 另对生命安全点一律拒绝）。\n  这 10 个是**设备**写。写历史库/时序库那类不改变现场状态的写另计，\n  由 edition skill 逐个列明 —— 别把「10」当成全部写面。\n- **审批**：真实写入需具名审批人 —— CLI `iaiops approve` 双重确认后才放行。\n- **未经授权绝不写生产控制系统**；AI 结论仅 advisory，引用真实信号出处，宁可\n  `insufficient_evidence` 不臆测。\n- 各协议的验证状态（✅ 已自测 / 待核实）见 edition skill 的支持版本矩阵，\n  标 `待核实` 的不得当既成事实。\n\n## 先回答「这个站能干什么」，再谈干（0.24.0）\n\n路由到 edition **之前**，这两条不分行业、任何现场都先跑，而且**零联网**：\n\n- **先分路线**：`iaiops onboard status` 从 `config.yaml` 推导这个站在哪条路上 ——\n  **设备直读**（还没有 UNS，或正在建）或 **已在 UNS broker 上**（接入 → 命名空间体检 →\n  选点 → 语义 → 采集 → 提问，**不扫描**：扫描永远识别不出 MQTT）。UNS 路线再按**已存的**\n  `uns-live-audit` 结论分 **B1**（干净）与 **B2**（治理本身就是工作）；没有体检记录时它说\n  「B1/B2 未知」，**agent 不许替它判断**。什么都没配或两种端点都有时，它给出两个选项且一个都\n  不选 —— 把两个都转述给用户，不要替用户挑。\n- 设备路线（`--track devices`）——「这个站走到六步里的哪一步、**下一条命令是什么**」。\n  六步（勘察 → 端点入 config → 每个端点的点表 → 点表**语义** → 采集 → 提问）一直都在，\n  但从来没有东西说过顺序。每次都从本地库和 `config.yaml` 现推，**没有状态文件会过期**：\n  手改过 config.yaml、恢复过备份，答案照样是真的。给人**一条**命令，给五条等于没给。\n- `iaiops onboard draft` —— 把已存的 scan 变成 `config.yaml` 端点草稿，**不写 config.yaml**\n  （和 `tags apply` 一样，人来合并）。只有**已确认**的协议才成为端点：端口开着只说明有人在听，\n  不等于它说这个协议。每个值都写明扫描观测到了什么（S7 实际应答的 slot、MELSEC 自报的\n  `plctype`、OPC-UA 是否有无加密端点/是否要凭据）；**扫描定不下来的字段以注释形式输出**并说明\n  在等什么 —— 不是省略，省略等于让协议默认值悄悄生效（Modbus 网关按 unit 1 读，读的是另一台机器）。\n  `tags:` 恒为空。**草稿里 `value: null` 的字段，agent 不许代填，也不许删掉它的 `caution`。**\n- `iaiops readiness` ——「这个站点今天能跑哪些场景、每个缺口还差什么」，\n  按「补上它能解锁多少」排序。它**只报告，绝不代填**。\n- `iaiops investigate plan` ——「真出事时能走到那八步里的第几步」。缺口分两种，别混：\n  **你还没供**（会直接给出该跑的命令）与 **产品供不了**（标 `not_yet_expressible`）。\n  这两个把人送去完全不同的地方。\n\n对一个**已经过去的**窗口逐步走完并留档：`iaiops investigate open|show|list`。\n不碰设备 —— 窗口已经过去，证据就是当时采到的。三条都能 `--report x.html`\n出可转发的自包含文件。\n\n两步需要**人先声明**，agent 不许代答：\n\n- `iaiops relations declare` —— 产线上下游。D25：线上下游共现是必然，\n  从时间推不出因果，所以只能声明。\n- `iaiops knowledge mount` —— ISO 14224 故障机理库，**可排除、绝不确认**；\n  库里没有这条原因返回 `nothing_known`，**那不是「无异议」**。\n\n**点表语义（`role:`）只能人给** —— 哪个位号是产量计数器是工艺知识，猜错会得出一个\n看着合理的 OEE，比报错更糟（D16）。输入口是 `iaiops tags export|apply|page`：\n导出的 `role` 列是**空的**，哪怕紧挨着一个叫 `GoodPartsCounter` 的位号。\n**这一层故意没有 MCP 工具 —— 让 agent 填 role 列正是 D16 禁止的那个猜测。**\n遇到它，把表交给现场的人，不要自己填。\n\n以上除 tags 外都是**双前端**：CLI 与 MCP 同一个引擎。对应的 MCP 工具名由\nedition skill 列明（本 skill 是路由，不带工具表）。\n\n## Setup（各 edition 相同）\n\n`iaiops init` 交互写 `~/.iaiops/config.yaml`；凭据进加密存储\n（`~/.iaiops/secrets.enc`，主密码 `IAIOPS_MASTER_PASSWORD`）。`iaiops doctor`\n逐端点探活。协议参数、模拟器自测、MCP JSON 示例见 README 与各 edition skill。\n\nFile v0.28.0:_meta.json\n\n{\n  \"ownerId\": \"kn7b067awq2s97bn3d7p5qfhw5827pxc\",\n  \"slug\": \"iaiops\",\n  \"version\": \"0.28.0\",\n  \"publishedAt\": 1789535322390\n}\n\nFile v0.28.0:skill-card.md\n\n## Description:\n\nVendor-neutral, governed industrial/OT data tap and intelligent troubleshooting skill that routes industrial protocol, PLC, SCADA, HMI, historian, CNC, RTU, IED, OEE, downtime root-cause, and OT asset inventory tasks to the appropriate iaiops MCP profile.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[zw008](https://clawhub.ai/user/zw008)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and operations engineers use this skill to identify industrial and building automation tasks, choose the matching iaiops edition skill and MCP profile, and follow read-first troubleshooting or onboarding workflows. It is intended for governed OT diagnostics, routing, setup guidance, and carefully controlled write workflows.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Operators may misread or miss important Chinese operational instructions.\n\nMitigation: Install and use the skill only with operators who can understand and review those instructions.\n\nRisk: The skill points users to an external iaiops-energy package for energy protocols.\n\nMitigation: Pin or otherwise verify the external package before installation.\n\nRisk: Industrial and OT write actions can affect real equipment or production systems.\n\nMitigation: Use least-privileged hosts and keep real OT writes behind the documented dry-run, approval, and change-management controls.\n\n## Reference(s):\n\n\n## Skill Output:\n\n**Output Type(s):** [Guidance, Shell commands, Configuration]\n\n**Output Format:** [Markdown with inline shell commands and configuration references]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Routes users to specific iaiops edition skills and MCP profiles; emphasizes read-first operation, dry-run behavior, approval controls, and human-supplied site semantics.]\n\n## Skill Version(s):\n\n0.28.0 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v0.27.0: 3 files, 7049 bytes\n\nFiles: skill-card.md (2418b), SKILL.md (9528b), _meta.json (126b)\n\nFile v0.27.0:SKILL.md\n\n---\nname: iaiops\ndescription: >-\n  Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting.\n  Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over\n  OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect,\n  MQTT/Sparkplug B,\n  Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor /\n  display fab equipment over HSMS), PROFINET (DCP discovery), the building edition\n  (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics\n  (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription\n  health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime\n  root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA,\n  change-of-value). Use when the task names any industrial protocol, a\n  PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM\n  equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint,\n  OEE/downtime, downtime root-cause, or OT asset inventory. Routes to\n  the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run +\n  double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or\n  backups — those are separate AIops tools.\n---\n\n# iaiops — ROUTER（识别现场 → 派发 edition skill + MCP profile）\n\n这是**路由 skill**，本身不含工具表。识别任务的行业/协议 → 转到对应 **edition skill**\n（工具清单、workflow、支持版本矩阵都在那边），并用对应 profile 启动 MCP（`IAIOPS_MCP=<x>`\n环境变量，或等价 sugar 脚本 `iaiops-mcp-<x>`）。现场只暴露 1-2 个协议 + 跨协议脑，\n单会话工具 ~15-30，模型不被淹。\n\n## 路由表（关键词 → edition skill → MCP profile）\n\n| 任务提到 | edition skill | MCP profile / entrypoint |\n|---|---|---|\n| SECS/GEM · SECS-II · HSMS · 半导体/显示 fab · wafer · panel · MES equipment · SVID/ECID · recipe | **iaiops-fab** | `IAIOPS_MCP=fab` / `iaiops-mcp-fab` |\n| 离散制造产线 · PLC（S7/S7-1200/1500 · 三菱/MELSEC · Allen-Bradley/ControlLogix/CompactLogix · Omron/FINS/SYSMAC CS/CJ/CP/NX）· Modbus · EtherCAT/CoE/SOEM · PROFINET/DCP · MTConnect/CNC 机床 · Sparkplug B/UNS | **iaiops-factory** | `IAIOPS_MCP=factory` / `iaiops-mcp-factory` |\n| 流程工业（化工/食品饮料/原料药合成）· HART/HART-IP · 变送器/阀门定位器 · 过程仪表 · DCS 旁路读取 | **iaiops-process** | `IAIOPS_MCP=process` / `iaiops-mcp-process`（有 UNS 时 `IAIOPS_MCP=process,sparkplug`） |\n| BACnet/BACnet-IP · HVAC/暖通 · BMS/楼宇自控 · 厂务/facility · Who-Is · TrendLog | **iaiops-building** | `IAIOPS_MCP=building` / `iaiops-mcp-building` |\n| 水处理/水厂 · pH · 浊度/turbidity · 电导率/conductivity · 加药/dosing · 泵站/pump station · 曝气 | **iaiops-water** | `IAIOPS_MCP=water` / `iaiops-mcp-water` |\n| 仓储/物流中心 · 输送线/conveyor · 分拣/sorter · AGV/AMR · WMS/WCS · 托盘/穿梭车 · 物料搬运 | **iaiops-warehouse** | `IAIOPS_MCP=warehouse` / `iaiops-mcp-warehouse` |\n| 医院设施/clinical facility · 负压/正压隔离病房 · 医用气体 · 手术室环境 · 医疗 BMS | **iaiops-clinical** | `IAIOPS_MCP=clinical` / `iaiops-mcp-clinical` |\n| 制药/药厂 · GMP · 洁净室/洁净区 · Annex 1 · 压差梯度/pressure cascade · grade A/B/C/D · 尘埃粒子 · EMS/环境监测 · PW/WFI/纯化水/注射用水 · TOC · 生物反应器 · 冻干机 · 灌装线 · CSV/IQ/OQ · Annex 11 · Part 11 · 数据完整性/ALCOA | **iaiops-pharma** | `IAIOPS_MCP=pharma` / `iaiops-mcp-pharma` |\n| 光伏/PV · 逆变器/inverter · 组串/string · 风电/风机 · 场站 SCADA · 新能源电站 | **iaiops-renewables** | `IAIOPS_MCP=renewables` / `iaiops-mcp-renewables` |\n| Phoenix Contact PLCnext / vPLC（虚拟化 PLC，走内建 OPC-UA + Modbus-TCP） | **iaiops-plcnext** | `IAIOPS_MCP=plcnext` / `iaiops-mcp-plcnext` |\n| IO-Link · IO-Link master · IODD · 智能传感器/executor 参数 · pdin · ISDU（主站 JSON/REST 接口，只读） | **iaiops-factory**（楼宇传感器场景 **iaiops-building**） | `IAIOPS_MCP=factory` / 单协议 `IAIOPS_MCP=iolink` / `iaiops-mcp-iolink` |\n\n- 单协议深用（只有一种设备）：直接 `IAIOPS_MCP=opcua`（或 modbus/s7/mc/fins/eip/mtconnect/\n  sparkplug/ethercat/secsgem/profinet/bacnet/hart），等价脚本 `iaiops-mcp-<协议>`。\n- 跨行业只问 OEE/停机根因/资产盘点/数据质量：任一 profile 均可 —— 跨协议脑\n  （诊断/OEE/资产/合规）**默认随 server 暴露**，选覆盖现场协议的 profile 即可；\n  纯脑场景可用 `IAIOPS_MCP=brain` / `iaiops-mcp-brain`（只暴露脑，零协议）。\n- 说不清行业但报了协议名：按协议列选含它的最小 profile；都不沾 → `iaiops doctor` +\n  `protocols_supported` 先看现场配置了什么。\n\n## 部署（0.10.0 起：无默认，必须选菜单）\n\n- **裸启动 `iaiops-mcp`（不设 `IAIOPS_MCP`）不再暴露全部工具**：打印选择菜单到\n  stderr 并 exit 2。必须设 `IAIOPS_MCP=<selection>` 或用预置入口 `iaiops-mcp-<name>`。\n  `IAIOPS_MCP=menu` 显式打印同一菜单（带各 selection 工具数）后退出。\n- `IAIOPS_MCP=all` 仍可**显式**使用（power user；>100 工具时启动日志给洪泛警告）。\n- **多进程站点（1 脑 + N 协议）**：跑一个 `iaiops-mcp-brain`（只脑），协议 server 各自\n  加 `IAIOPS_MCP_NO_BRAIN=1`（如 `IAIOPS_MCP_NO_BRAIN=1 iaiops-mcp-opcua`）去掉脑，\n  避免跨 server 工具重名；`protocols_supported`（发现工具）在 NO_BRAIN 下仍然保留。\n\n## Energy 协议 → 另一个包（不在本 server）\n\nIEC 60870-5-104 / IEC-104、DNP3 / outstation、IEC 61850 / MMS / IED、变电站/\nsubstation、电力/能源/utility SCADA → 用独立的 **iaiops-energy**\n（`pip install iaiops-energy`，然后 `iaiops-energy-mcp`；\ngithub.com/industrial-aiops/industrial-aiops-energy）。它复用本包的 core + 脑；\nmonitor-direction only。**不要**尝试用本 server 的 profile 覆盖能源协议。\n\n## 安全不变量（所有 edition 一致，路由前先记住）\n\n- **Read-first**：默认只读；先 `protocols_supported` 看能力、`iaiops doctor` /\n  `<protocol> doctor` 验链路，再谈读，最后才谈写。\n- **写 = MOC（Management-of-Change）**：The 10 write tools（`s7_write_db`、\n  `mc_write_words`、`fins_write_words`、`mqtt_publish`、`eip_write_tag`、`ethercat_write_sdo`、\n  `ethercat_set_state`、`profinet_dcp_set`、`bacnet_write_property`、`bas_command`）全部\n  `risk=HIGH`、默认 `dry_run=True`、捕获改前值供 undo（`bas_command` 另对生命安全点一律拒绝）。\n  这 10 个是**设备**写。写历史库/时序库那类不改变现场状态的写另计，\n  由 edition skill 逐个列明 —— 别把「10」当成全部写面。\n- **审批**：真实写入需具名审批人 —— CLI `iaiops approve` 双重确认后才放行。\n- **未经授权绝不写生产控制系统**；AI 结论仅 advisory，引用真实信号出处，宁可\n  `insufficient_evidence` 不臆测。\n- 各协议的验证状态（✅ 已自测 / 待核实）见 edition skill 的支持版本矩阵，\n  标 `待核实` 的不得当既成事实。\n\n## 先回答「这个站能干什么」，再谈干（0.24.0）\n\n路由到 edition **之前**，这两条不分行业、任何现场都先跑，而且**零联网**：\n\n- `iaiops readiness` ——「这个站点今天能跑哪些场景、每个缺口还差什么」，\n  按「补上它能解锁多少」排序。它**只报告，绝不代填**。\n- `iaiops investigate plan` ——「真出事时能走到那八步里的第几步」。缺口分两种，别混：\n  **你还没供**（会直接给出该跑的命令）与 **产品供不了**（标 `not_yet_expressible`）。\n  这两个把人送去完全不同的地方。\n\n对一个**已经过去的**窗口逐步走完并留档：`iaiops investigate open|show|list`。\n不碰设备 —— 窗口已经过去，证据就是当时采到的。三条都能 `--report x.html`\n出可转发的自包含文件。\n\n两步需要**人先声明**，agent 不许代答：\n\n- `iaiops relations declare` —— 产线上下游。D25：线上下游共现是必然，\n  从时间推不出因果，所以只能声明。\n- `iaiops knowledge mount` —— ISO 14224 故障机理库，**可排除、绝不确认**；\n  库里没有这条原因返回 `nothing_known`，**那不是「无异议」**。\n\n**点表语义（`role:`）只能人给** —— 哪个位号是产量计数器是工艺知识，猜错会得出一个\n看着合理的 OEE，比报错更糟（D16）。输入口是 `iaiops tags export|apply|page`：\n导出的 `role` 列是**空的**，哪怕紧挨着一个叫 `GoodPartsCounter` 的位号。\n**这一层故意没有 MCP 工具 —— 让 agent 填 role 列正是 D16 禁止的那个猜测。**\n遇到它，把表交给现场的人，不要自己填。\n\n以上除 tags 外都是**双前端**：CLI 与 MCP 同一个引擎。对应的 MCP 工具名由\nedition skill 列明（本 skill 是路由，不带工具表）。\n\n## Setup（各 edition 相同）\n\n`iaiops init` 交互写 `~/.iaiops/config.yaml`；凭据进加密存储\n（`~/.iaiops/secrets.enc`，主密码 `IAIOPS_MASTER_PASSWORD`）。`iaiops doctor`\n逐端点探活。协议参数、模拟器自测、MCP JSON 示例见 README 与各 edition skill。\n\nFile v0.27.0:_meta.json\n\n{\n  \"ownerId\": \"kn7b067awq2s97bn3d7p5qfhw5827pxc\",\n  \"slug\": \"iaiops\",\n  \"version\": \"0.27.0\",\n  \"publishedAt\": 1788405660861\n}\n\nFile v0.27.0:skill-card.md\n\n## Description:\n\niaiops routes industrial and OT troubleshooting requests to the appropriate edition skill and MCP profile for read-first diagnostics, asset and OEE analysis, and gated control-system writes across common plant protocols.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[zw008](https://clawhub.ai/user/zw008)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nIndustrial operations engineers, automation engineers, and site reliability teams use this skill to route OT data, diagnostics, readiness checks, and downtime investigations to the correct industry or protocol edition. It is intended for governed, read-first workflows over PLCs, controllers, machine tools, IIoT brokers, building systems, and related industrial assets.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: A real write to a production control system could affect industrial equipment or site operations.\n\nMitigation: Use read-first workflows, keep dry-run enabled until reviewed, require named approval, and double-confirm any real write before execution.\n\nRisk: Selecting the wrong edition or MCP profile could route the agent toward tools that do not match the site or protocol.\n\nMitigation: Verify the selected edition/profile and run readiness, doctor, or protocols_supported checks before attempting operational actions.\n\nRisk: Inferring tag roles, process relationships, or root causes without site knowledge can produce misleading OEE or downtime conclusions.\n\nMitigation: Require human-provided tag roles and declared process relationships, cite observed signals, and return insufficient_evidence when support is missing.\n\n## Reference(s):\n\n- [iaiops skill page](https://clawhub.ai/zw008/skills/iaiops)\n\n## Skill Output:\n\n**Output Type(s):** [Guidance, Markdown, Shell commands, Configuration]\n\n**Output Format:** [Markdown with inline shell commands and configuration values]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Read-first routing guidance with dry-run and approval notes for high-impact writes.]\n\n## Skill Version(s):\n\n0.27.0 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v0.26.0: 3 files, 6759 bytes\n\nFiles: skill-card.md (2211b), SKILL.md (9164b), _meta.json (126b)\n\nFile v0.26.0:SKILL.md\n\n---\nname: iaiops\ndescription: >-\n  Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting.\n  Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over\n  OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect,\n  MQTT/Sparkplug B,\n  Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor /\n  display fab equipment over HSMS), PROFINET (DCP discovery), the building edition\n  (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics\n  (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription\n  health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime\n  root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA,\n  change-of-value). Use when the task names any industrial protocol, a\n  PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM\n  equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint,\n  OEE/downtime, downtime root-cause, or OT asset inventory. Routes to\n  the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run +\n  double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or\n  backups — those are separate AIops tools.\n---\n\n# iaiops — ROUTER（识别现场 → 派发 edition skill + MCP profile）\n\n这是**路由 skill**，本身不含工具表。识别任务的行业/协议 → 转到对应 **edition skill**\n（工具清单、workflow、支持版本矩阵都在那边），并用对应 profile 启动 MCP（`IAIOPS_MCP=<x>`\n环境变量，或等价 sugar 脚本 `iaiops-mcp-<x>`）。现场只暴露 1-2 个协议 + 跨协议脑，\n单会话工具 ~15-30，模型不被淹。\n\n## 路由表（关键词 → edition skill → MCP profile）\n\n| 任务提到 | edition skill | MCP profile / entrypoint |\n|---|---|---|\n| SECS/GEM · SECS-II · HSMS · 半导体/显示 fab · wafer · panel · MES equipment · SVID/ECID · recipe | **iaiops-fab** | `IAIOPS_MCP=fab` / `iaiops-mcp-fab` |\n| 离散制造产线 · PLC（S7/S7-1200/1500 · 三菱/MELSEC · Allen-Bradley/ControlLogix/CompactLogix · Omron/FINS/SYSMAC CS/CJ/CP/NX）· Modbus · EtherCAT/CoE/SOEM · PROFINET/DCP · MTConnect/CNC 机床 · Sparkplug B/UNS | **iaiops-factory** | `IAIOPS_MCP=factory` / `iaiops-mcp-factory` |\n| 流程工业（化工/制药/食品饮料）· HART/HART-IP · 变送器/阀门定位器 · 过程仪表 · DCS 旁路读取 | **iaiops-process** | `IAIOPS_MCP=process` / `iaiops-mcp-process`（有 UNS 时 `IAIOPS_MCP=process,sparkplug`） |\n| BACnet/BACnet-IP · HVAC/暖通 · BMS/楼宇自控 · 厂务/facility · Who-Is · TrendLog | **iaiops-building** | `IAIOPS_MCP=building` / `iaiops-mcp-building` |\n| 水处理/水厂 · pH · 浊度/turbidity · 电导率/conductivity · 加药/dosing · 泵站/pump station · 曝气 | **iaiops-water** | `IAIOPS_MCP=water` / `iaiops-mcp-water` |\n| 仓储/物流中心 · 输送线/conveyor · 分拣/sorter · AGV/AMR · WMS/WCS · 托盘/穿梭车 · 物料搬运 | **iaiops-warehouse** | `IAIOPS_MCP=warehouse` / `iaiops-mcp-warehouse` |\n| 医院设施/clinical facility · 负压/正压隔离病房 · 医用气体 · 手术室环境 · 医疗 BMS | **iaiops-clinical** | `IAIOPS_MCP=clinical` / `iaiops-mcp-clinical` |\n| 光伏/PV · 逆变器/inverter · 组串/string · 风电/风机 · 场站 SCADA · 新能源电站 | **iaiops-renewables** | `IAIOPS_MCP=renewables` / `iaiops-mcp-renewables` |\n| Phoenix Contact PLCnext / vPLC（虚拟化 PLC，走内建 OPC-UA + Modbus-TCP） | **iaiops-plcnext** | `IAIOPS_MCP=plcnext` / `iaiops-mcp-plcnext` |\n| IO-Link · IO-Link master · IODD · 智能传感器/executor 参数 · pdin · ISDU（主站 JSON/REST 接口，只读） | **iaiops-factory**（楼宇传感器场景 **iaiops-building**） | `IAIOPS_MCP=factory` / 单协议 `IAIOPS_MCP=iolink` / `iaiops-mcp-iolink` |\n\n- 单协议深用（只有一种设备）：直接 `IAIOPS_MCP=opcua`（或 modbus/s7/mc/fins/eip/mtconnect/\n  sparkplug/ethercat/secsgem/profinet/bacnet/hart），等价脚本 `iaiops-mcp-<协议>`。\n- 跨行业只问 OEE/停机根因/资产盘点/数据质量：任一 profile 均可 —— 跨协议脑\n  （诊断/OEE/资产/合规）**默认随 server 暴露**，选覆盖现场协议的 profile 即可；\n  纯脑场景可用 `IAIOPS_MCP=brain` / `iaiops-mcp-brain`（只暴露脑，零协议）。\n- 说不清行业但报了协议名：按协议列选含它的最小 profile；都不沾 → `iaiops doctor` +\n  `protocols_supported` 先看现场配置了什么。\n\n## 部署（0.10.0 起：无默认，必须选菜单）\n\n- **裸启动 `iaiops-mcp`（不设 `IAIOPS_MCP`）不再暴露全部工具**：打印选择菜单到\n  stderr 并 exit 2。必须设 `IAIOPS_MCP=<selection>` 或用预置入口 `iaiops-mcp-<name>`。\n  `IAIOPS_MCP=menu` 显式打印同一菜单（带各 selection 工具数）后退出。\n- `IAIOPS_MCP=all` 仍可**显式**使用（power user；>100 工具时启动日志给洪泛警告）。\n- **多进程站点（1 脑 + N 协议）**：跑一个 `iaiops-mcp-brain`（只脑），协议 server 各自\n  加 `IAIOPS_MCP_NO_BRAIN=1`（如 `IAIOPS_MCP_NO_BRAIN=1 iaiops-mcp-opcua`）去掉脑，\n  避免跨 server 工具重名；`protocols_supported`（发现工具）在 NO_BRAIN 下仍然保留。\n\n## Energy 协议 → 另一个包（不在本 server）\n\nIEC 60870-5-104 / IEC-104、DNP3 / outstation、IEC 61850 / MMS / IED、变电站/\nsubstation、电力/能源/utility SCADA → 用独立的 **iaiops-energy**\n（`pip install iaiops-energy`，然后 `iaiops-energy-mcp`；\ngithub.com/industrial-aiops/industrial-aiops-energy）。它复用本包的 core + 脑；\nmonitor-direction only。**不要**尝试用本 server 的 profile 覆盖能源协议。\n\n## 安全不变量（所有 edition 一致，路由前先记住）\n\n- **Read-first**：默认只读；先 `protocols_supported` 看能力、`iaiops doctor` /\n  `<protocol> doctor` 验链路，再谈读，最后才谈写。\n- **写 = MOC（Management-of-Change）**：The 10 write tools（`s7_write_db`、\n  `mc_write_words`、`fins_write_words`、`mqtt_publish`、`eip_write_tag`、`ethercat_write_sdo`、\n  `ethercat_set_state`、`profinet_dcp_set`、`bacnet_write_property`、`bas_command`）全部\n  `risk=HIGH`、默认 `dry_run=True`、捕获改前值供 undo（`bas_command` 另对生命安全点一律拒绝）。\n  这 10 个是**设备**写。写历史库/时序库那类不改变现场状态的写另计，\n  由 edition skill 逐个列明 —— 别把「10」当成全部写面。\n- **审批**：真实写入需具名审批人 —— CLI `iaiops approve` 双重确认后才放行。\n- **未经授权绝不写生产控制系统**；AI 结论仅 advisory，引用真实信号出处，宁可\n  `insufficient_evidence` 不臆测。\n- 各协议的验证状态（✅ 已自测 / 待核实）见 edition skill 的支持版本矩阵，\n  标 `待核实` 的不得当既成事实。\n\n## 先回答「这个站能干什么」，再谈干（0.24.0）\n\n路由到 edition **之前**，这两条不分行业、任何现场都先跑，而且**零联网**：\n\n- `iaiops readiness` ——「这个站点今天能跑哪些场景、每个缺口还差什么」，\n  按「补上它能解锁多少」排序。它**只报告，绝不代填**。\n- `iaiops investigate plan` ——「真出事时能走到那八步里的第几步」。缺口分两种，别混：\n  **你还没供**（会直接给出该跑的命令）与 **产品供不了**（标 `not_yet_expressible`）。\n  这两个把人送去完全不同的地方。\n\n对一个**已经过去的**窗口逐步走完并留档：`iaiops investigate open|show|list`。\n不碰设备 —— 窗口已经过去，证据就是当时采到的。三条都能 `--report x.html`\n出可转发的自包含文件。\n\n两步需要**人先声明**，agent 不许代答：\n\n- `iaiops relations declare` —— 产线上下游。D25：线上下游共现是必然，\n  从时间推不出因果，所以只能声明。\n- `iaiops knowledge mount` —— ISO 14224 故障机理库，**可排除、绝不确认**；\n  库里没有这条原因返回 `nothing_known`，**那不是「无异议」**。\n\n**点表语义（`role:`）只能人给** —— 哪个位号是产量计数器是工艺知识，猜错会得出一个\n看着合理的 OEE，比报错更糟（D16）。输入口是 `iaiops tags export|apply|page`：\n导出的 `role` 列是**空的**，哪怕紧挨着一个叫 `GoodPartsCounter` 的位号。\n**这一层故意没有 MCP 工具 —— 让 agent 填 role 列正是 D16 禁止的那个猜测。**\n遇到它，把表交给现场的人，不要自己填。\n\n以上除 tags 外都是**双前端**：CLI 与 MCP 同一个引擎。对应的 MCP 工具名由\nedition skill 列明（本 skill 是路由，不带工具表）。\n\n## Setup（各 edition 相同）\n\n`iaiops init` 交互写 `~/.iaiops/config.yaml`；凭据进加密存储\n（`~/.iaiops/secrets.enc`，主密码 `IAIOPS_MASTER_PASSWORD`）。`iaiops doctor`\n逐端点探活。协议参数、模拟器自测、MCP JSON 示例见 README 与各 edition skill。\n\nFile v0.26.0:_meta.json\n\n{\n  \"ownerId\": \"kn7b067awq2s97bn3d7p5qfhw5827pxc\",\n  \"slug\": \"iaiops\",\n  \"version\": \"0.26.0\",\n  \"publishedAt\": 1788265791987\n}\n\nFile v0.26.0:skill-card.md\n\n## Description:\n\nVendor-neutral, governed industrial/OT data tap and troubleshooting router for selecting the appropriate iaiops edition skill and MCP profile across PLC, controller, machine-tool, IIoT broker, building, fab, and related OT scenarios.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[zw008](https://clawhub.ai/user/zw008)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers, OT engineers, and site reliability teams use this skill to route industrial protocol, PLC/SCADA/HMI/historian/CNC, OEE, downtime, and OT asset inventory tasks to the correct iaiops edition skill and MCP profile. It is intended for read-first troubleshooting and governed change workflows where any real control-system write requires dry-run, authorization, and approval controls.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Using the general iaiops server profile for substations or energy protocols could route work to the wrong package.\n\nMitigation: Confirm the needed edition before installation and use the iaiops-energy package for IEC-104, DNP3, IEC 61850, substation, or utility SCADA tasks.\n\nRisk: Real OT writes can affect production control systems.\n\nMitigation: Proceed only with documented read-first checks, dry-run behavior, named approval, double confirmation, authorization, and change-management controls.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/zw008/skills/iaiops)\n- [ClawHub publisher profile](https://clawhub.ai/user/zw008)\n\n## Skill Output:\n\n**Output Type(s):** [guidance, shell commands, configuration]\n\n**Output Format:** [Markdown guidance with inline shell commands and configuration values]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Routes users to edition skills and MCP profile selections; the router itself does not expose a tool table.]\n\n## Skill Version(s):\n\n0.26.0 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v0.23.2: 3 files, 6828 bytes\n\nFiles: skill-card.md (2420b), SKILL.md (9164b), _meta.json (126b)\n\nFile v0.23.2:SKILL.md\n\n---\nname: iaiops\ndescription: >-\n  Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting.\n  Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over\n  OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect,\n  MQTT/Sparkplug B,\n  Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor /\n  display fab equipment over HSMS), PROFINET (DCP discovery), the building edition\n  (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics\n  (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription\n  health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime\n  root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA,\n  change-of-value). Use when the task names any industrial protocol, a\n  PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM\n  equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint,\n  OEE/downtime, downtime root-cause, or OT asset inventory. Routes to\n  the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run +\n  double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or\n  backups — those are separate AIops tools.\n---\n\n# iaiops — ROUTER（识别现场 → 派发 edition skill + MCP profile）\n\n这是**路由 skill**，本身不含工具表。识别任务的行业/协议 → 转到对应 **edition skill**\n（工具清单、workflow、支持版本矩阵都在那边），并用对应 profile 启动 MCP（`IAIOPS_MCP=<x>`\n环境变量，或等价 sugar 脚本 `iaiops-mcp-<x>`）。现场只暴露 1-2 个协议 + 跨协议脑，\n单会话工具 ~15-30，模型不被淹。\n\n## 路由表（关键词 → edition skill → MCP profile）\n\n| 任务提到 | edition skill | MCP profile / entrypoint |\n|---|---|---|\n| SECS/GEM · SECS-II · HSMS · 半导体/显示 fab · wafer · panel · MES equipment · SVID/ECID · recipe | **iaiops-fab** | `IAIOPS_MCP=fab` / `iaiops-mcp-fab` |\n| 离散制造产线 · PLC（S7/S7-1200/1500 · 三菱/MELSEC · Allen-Bradley/ControlLogix/CompactLogix · Omron/FINS/SYSMAC CS/CJ/CP/NX）· Modbus · EtherCAT/CoE/SOEM · PROFINET/DCP · MTConnect/CNC 机床 · Sparkplug B/UNS | **iaiops-factory** | `IAIOPS_MCP=factory` / `iaiops-mcp-factory` |\n| 流程工业（化工/制药/食品饮料）· HART/HART-IP · 变送器/阀门定位器 · 过程仪表 · DCS 旁路读取 | **iaiops-process** | `IAIOPS_MCP=process` / `iaiops-mcp-process`（有 UNS 时 `IAIOPS_MCP=process,sparkplug`） |\n| BACnet/BACnet-IP · HVAC/暖通 · BMS/楼宇自控 · 厂务/facility · Who-Is · TrendLog | **iaiops-building** | `IAIOPS_MCP=building` / `iaiops-mcp-building` |\n| 水处理/水厂 · pH · 浊度/turbidity · 电导率/conductivity · 加药/dosing · 泵站/pump station · 曝气 | **iaiops-water** | `IAIOPS_MCP=water` / `iaiops-mcp-water` |\n| 仓储/物流中心 · 输送线/conveyor · 分拣/sorter · AGV/AMR · WMS/WCS · 托盘/穿梭车 · 物料搬运 | **iaiops-warehouse** | `IAIOPS_MCP=warehouse` / `iaiops-mcp-warehouse` |\n| 医院设施/clinical facility · 负压/正压隔离病房 · 医用气体 · 手术室环境 · 医疗 BMS | **iaiops-clinical** | `IAIOPS_MCP=clinical` / `iaiops-mcp-clinical` |\n| 光伏/PV · 逆变器/inverter · 组串/string · 风电/风机 · 场站 SCADA · 新能源电站 | **iaiops-renewables** | `IAIOPS_MCP=renewables` / `iaiops-mcp-renewables` |\n| Phoenix Contact PLCnext / vPLC（虚拟化 PLC，走内建 OPC-UA + Modbus-TCP） | **iaiops-plcnext** | `IAIOPS_MCP=plcnext` / `iaiops-mcp-plcnext` |\n| IO-Link · IO-Link master · IODD · 智能传感器/executor 参数 · pdin · ISDU（主站 JSON/REST 接口，只读） | **iaiops-factory**（楼宇传感器场景 **iaiops-building**） | `IAIOPS_MCP=factory` / 单协议 `IAIOPS_MCP=iolink` / `iaiops-mcp-iolink` |\n\n- 单协议深用（只有一种设备）：直接 `IAIOPS_MCP=opcua`（或 modbus/s7/mc/fins/eip/mtconnect/\n  sparkplug/ethercat/secsgem/profinet/bacnet/hart），等价脚本 `iaiops-mcp-<协议>`。\n- 跨行业只问 OEE/停机根因/资产盘点/数据质量：任一 profile 均可 —— 跨协议脑\n  （诊断/OEE/资产/合规）**默认随 server 暴露**，选覆盖现场协议的 profile 即可；\n  纯脑场景可用 `IAIOPS_MCP=brain` / `iaiops-mcp-brain`（只暴露脑，零协议）。\n- 说不清行业但报了协议名：按协议列选含它的最小 profile；都不沾 → `iaiops doctor` +\n  `protocols_supported` 先看现场配置了什么。\n\n## 部署（0.10.0 起：无默认，必须选菜单）\n\n- **裸启动 `iaiops-mcp`（不设 `IAIOPS_MCP`）不再暴露全部工具**：打印选择菜单到\n  stderr 并 exit 2。必须设 `IAIOPS_MCP=<selection>` 或用预置入口 `iaiops-mcp-<name>`。\n  `IAIOPS_MCP=menu` 显式打印同一菜单（带各 selection 工具数）后退出。\n- `IAIOPS_MCP=all` 仍可**显式**使用（power user；>100 工具时启动日志给洪泛警告）。\n- **多进程站点（1 脑 + N 协议）**：跑一个 `iaiops-mcp-brain`（只脑），协议 server 各自\n  加 `IAIOPS_MCP_NO_BRAIN=1`（如 `IAIOPS_MCP_NO_BRAIN=1 iaiops-mcp-opcua`）去掉脑，\n  避免跨 server 工具重名；`protocols_supported`（发现工具）在 NO_BRAIN 下仍然保留。\n\n## Energy 协议 → 另一个包（不在本 server）\n\nIEC 60870-5-104 / IEC-104、DNP3 / outstation、IEC 61850 / MMS / IED、变电站/\nsubstation、电力/能源/utility SCADA → 用独立的 **iaiops-energy**\n（`pip install iaiops-energy`，然后 `iaiops-energy-mcp`；\ngithub.com/industrial-aiops/industrial-aiops-energy）。它复用本包的 core + 脑；\nmonitor-direction only。**不要**尝试用本 server 的 profile 覆盖能源协议。\n\n## 安全不变量（所有 edition 一致，路由前先记住）\n\n- **Read-first**：默认只读；先 `protocols_supported` 看能力、`iaiops doctor` /\n  `<protocol> doctor` 验链路，再谈读，最后才谈写。\n- **写 = MOC（Management-of-Change）**：The 10 write tools（`s7_write_db`、\n  `mc_write_words`、`fins_write_words`、`mqtt_publish`、`eip_write_tag`、`ethercat_write_sdo`、\n  `ethercat_set_state`、`profinet_dcp_set`、`bacnet_write_property`、`bas_command`）全部\n  `risk=HIGH`、默认 `dry_run=True`、捕获改前值供 undo（`bas_command` 另对生命安全点一律拒绝）。\n  这 10 个是**设备**写。写历史库/时序库那类不改变现场状态的写另计，\n  由 edition skill 逐个列明 —— 别把「10」当成全部写面。\n- **审批**：真实写入需具名审批人 —— CLI `iaiops approve` 双重确认后才放行。\n- **未经授权绝不写生产控制系统**；AI 结论仅 advisory，引用真实信号出处，宁可\n  `insufficient_evidence` 不臆测。\n- 各协议的验证状态（✅ 已自测 / 待核实）见 edition skill 的支持版本矩阵，\n  标 `待核实` 的不得当既成事实。\n\n## 先回答「这个站能干什么」，再谈干（0.24.0）\n\n路由到 edition **之前**，这两条不分行业、任何现场都先跑，而且**零联网**：\n\n- `iaiops readiness` ——「这个站点今天能跑哪些场景、每个缺口还差什么」，\n  按「补上它能解锁多少」排序。它**只报告，绝不代填**。\n- `iaiops investigate plan` ——「真出事时能走到那八步里的第几步」。缺口分两种，别混：\n  **你还没供**（会直接给出该跑的命令）与 **产品供不了**（标 `not_yet_expressible`）。\n  这两个把人送去完全不同的地方。\n\n对一个**已经过去的**窗口逐步走完并留档：`iaiops investigate open|show|list`。\n不碰设备 —— 窗口已经过去，证据就是当时采到的。三条都能 `--report x.html`\n出可转发的自包含文件。\n\n两步需要**人先声明**，agent 不许代答：\n\n- `iaiops relations declare` —— 产线上下游。D25：线上下游共现是必然，\n  从时间推不出因果，所以只能声明。\n- `iaiops knowledge mount` —— ISO 14224 故障机理库，**可排除、绝不确认**；\n  库里没有这条原因返回 `nothing_known`，**那不是「无异议」**。\n\n**点表语义（`role:`）只能人给** —— 哪个位号是产量计数器是工艺知识，猜错会得出一个\n看着合理的 OEE，比报错更糟（D16）。输入口是 `iaiops tags export|apply|page`：\n导出的 `role` 列是**空的**，哪怕紧挨着一个叫 `GoodPartsCounter` 的位号。\n**这一层故意没有 MCP 工具 —— 让 agent 填 role 列正是 D16 禁止的那个猜测。**\n遇到它，把表交给现场的人，不要自己填。\n\n以上除 tags 外都是**双前端**：CLI 与 MCP 同一个引擎。对应的 MCP 工具名由\nedition skill 列明（本 skill 是路由，不带工具表）。\n\n## Setup（各 edition 相同）\n\n`iaiops init` 交互写 `~/.iaiops/config.yaml`；凭据进加密存储\n（`~/.iaiops/secrets.enc`，主密码 `IAIOPS_MASTER_PASSWORD`）。`iaiops doctor`\n逐端点探活。协议参数、模拟器自测、MCP JSON 示例见 README 与各 edition skill。\n\nFile v0.23.2:_meta.json\n\n{\n  \"ownerId\": \"kn7b067awq2s97bn3d7p5qfhw5827pxc\",\n  \"slug\": \"iaiops\",\n  \"version\": \"0.23.2\",\n  \"publishedAt\": 1787902147518\n}\n\nFile v0.23.2:skill-card.md\n\n## Description:\n\nVendor-neutral, governed industrial/OT routing for selecting iaiops edition skills and MCP profiles for PLC, controller, machine-tool, IIoT, building, fab, and cross-protocol troubleshooting tasks.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[zw008](https://clawhub.ai/user/zw008)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers, OT engineers, and site reliability teams use this routing skill to select the right iaiops edition skill and MCP profile for industrial protocol diagnostics, OEE and downtime analysis, asset inventory, readiness checks, and governed read-first troubleshooting.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Industrial/OT device writes can affect production systems when an edition skill exposes write-capable tools.\n\nMitigation: Keep read-first workflows as the default, leave dry-run enabled for write proposals, and require named approval and documented human review before changing production control systems.\n\nRisk: Incorrect site semantics or incomplete evidence can lead to misleading OEE, downtime, or root-cause conclusions.\n\nMitigation: Use the readiness and investigation planning steps first, preserve source signal references, and require site personnel to provide tag roles and process relationships instead of inferring them.\n\nRisk: Endpoint credentials are needed for real industrial environments.\n\nMitigation: Configure credentials only in the documented encrypted store and install the skill only for intended industrial/OT diagnostic use.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/zw008/skills/iaiops)\n- [ClawHub publisher profile](https://clawhub.ai/user/zw008)\n\n## Skill Output:\n\n**Output Type(s):** [guidance, shell commands, configuration]\n\n**Output Format:** [Markdown with inline shell commands and routing tables]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Routes the agent to edition skills and MCP profiles; write operations are described as gated, dry-run-first actions requiring named approval.]\n\n## Skill Version(s):\n\n0.23.2 (source: release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v0.23.1: 3 files, 6702 bytes\n\nFiles: skill-card.md (2177b), SKILL.md (9164b), _meta.json (126b)\n\nFile v0.23.1:SKILL.md\n\n---\nname: iaiops\ndescription: >-\n  Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting.\n  Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over\n  OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect,\n  MQTT/Sparkplug B,\n  Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor /\n  display fab equipment over HSMS), PROFINET (DCP discovery), the building edition\n  (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics\n  (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription\n  health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime\n  root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA,\n  change-of-value). Use when the task names any industrial protocol, a\n  PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM\n  equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint,\n  OEE/downtime, downtime root-cause, or OT asset inventory. Routes to\n  the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run +\n  double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or\n  backups — those are separate AIops tools.\n---\n\n# iaiops — ROUTER（识别现场 → 派发 edition skill + MCP profile）\n\n这是**路由 skill**，本身不含工具表。识别任务的行业/协议 → 转到对应 **edition skill**\n（工具清单、workflow、支持版本矩阵都在那边），并用对应 profile 启动 MCP（`IAIOPS_MCP=<x>`\n环境变量，或等价 sugar 脚本 `iaiops-mcp-<x>`）。现场只暴露 1-2 个协议 + 跨协议脑，\n单会话工具 ~15-30，模型不被淹。\n\n## 路由表（关键词 → edition skill → MCP profile）\n\n| 任务提到 | edition skill | MCP profile / entrypoint |\n|---|---|---|\n| SECS/GEM · SECS-II · HSMS · 半导体/显示 fab · wafer · panel · MES equipment · SVID/ECID · recipe | **iaiops-fab** | `IAIOPS_MCP=fab` / `iaiops-mcp-fab` |\n| 离散制造产线 · PLC（S7/S7-1200/1500 · 三菱/MELSEC · Allen-Bradley/ControlLogix/CompactLogix · Omron/FINS/SYSMAC CS/CJ/CP/NX）· Modbus · EtherCAT/CoE/SOEM · PROFINET/DCP · MTConnect/CNC 机床 · Sparkplug B/UNS | **iaiops-factory** | `IAIOPS_MCP=factory` / `iaiops-mcp-factory` |\n| 流程工业（化工/制药/食品饮料）· HART/HART-IP · 变送器/阀门定位器 · 过程仪表 · DCS 旁路读取 | **iaiops-process** | `IAIOPS_MCP=process` / `iaiops-mcp-process`（有 UNS 时 `IAIOPS_MCP=process,sparkplug`） |\n| BACnet/BACnet-IP · HVAC/暖通 · BMS/楼宇自控 · 厂务/facility · Who-Is · TrendLog | **iaiops-building** | `IAIOPS_MCP=building` / `iaiops-mcp-building` |\n| 水处理/水厂 · pH · 浊度/turbidity · 电导率/conductivity · 加药/dosing · 泵站/pump station · 曝气 | **iaiops-water** | `IAIOPS_MCP=water` / `iaiops-mcp-water` |\n| 仓储/物流中心 · 输送线/conveyor · 分拣/sorter · AGV/AMR · WMS/WCS · 托盘/穿梭车 · 物料搬运 | **iaiops-warehouse** | `IAIOPS_MCP=warehouse` / `iaiops-mcp-warehouse` |\n| 医院设施/clinical facility · 负压/正压隔离病房 · 医用气体 · 手术室环境 · 医疗 BMS | **iaiops-clinical** | `IAIOPS_MCP=clinical` / `iaiops-mcp-clinical` |\n| 光伏/PV · 逆变器/inverter · 组串/string · 风电/风机 · 场站 SCADA · 新能源电站 | **iaiops-renewables** | `IAIOPS_MCP=renewables` / `iaiops-mcp-renewables` |\n| Phoenix Contact PLCnext / vPLC（虚拟化 PLC，走内建 OPC-UA + Modbus-TCP） | **iaiops-plcnext** | `IAIOPS_MCP=plcnext` / `iaiops-mcp-plcnext` |\n| IO-Link · IO-Link master · IODD · 智能传感器/executor 参数 · pdin · ISDU（主站 JSON/REST 接口，只读） | **iaiops-factory**（楼宇传感器场景 **iaiops-building**） | `IAIOPS_MCP=factory` / 单协议 `IAIOPS_MCP=iolink` / `iaiops-mcp-iolink` |\n\n- 单协议深用（只有一种设备）：直接 `IAIOPS_MCP=opcua`（或 modbus/s7/mc/fins/eip/mtconnect/\n  sparkplug/ethercat/secsgem/profinet/bacnet/hart），等价脚本 `iaiops-mcp-<协议>`。\n- 跨行业只问 OEE/停机根因/资产盘点/数据质量：任一 profile 均可 —— 跨协议脑\n  （诊断/OEE/资产/合规）**默认随 server 暴露**，选覆盖现场协议的 profile 即可；\n  纯脑场景可用 `IAIOPS_MCP=brain` / `iaiops-mcp-brain`（只暴露脑，零协议）。\n- 说不清行业但报了协议名：按协议列选含它的最小 profile；都不沾 → `iaiops doctor` +\n  `protocols_supported` 先看现场配置了什么。\n\n## 部署（0.10.0 起：无默认，必须选菜单）\n\n- **裸启动 `iaiops-mcp`（不设 `IAIOPS_MCP`）不再暴露全部工具**：打印选择菜单到\n  stderr 并 exit 2。必须设 `IAIOPS_MCP=<selection>` 或用预置入口 `iaiops-mcp-<name>`。\n  `IAIOPS_MCP=menu` 显式打印同一菜单（带各 selection 工具数）后退出。\n- `IAIOPS_MCP=all` 仍可**显式**使用（power user；>100 工具时启动日志给洪泛警告）。\n- **多进程站点（1 脑 + N 协议）**：跑一个 `iaiops-mcp-brain`（只脑），协议 server 各自\n  加 `IAIOPS_MCP_NO_BRAIN=1`（如 `IAIOPS_MCP_NO_BRAIN=1 iaiops-mcp-opcua`）去掉脑，\n  避免跨 server 工具重名；`protocols_supported`（发现工具）在 NO_BRAIN 下仍然保留。\n\n## Energy 协议 → 另一个包（不在本 server）\n\nIEC 60870-5-104 / IEC-104、DNP3 / outstation、IEC 61850 / MMS / IED、变电站/\nsubstation、电力/能源/utility SCADA → 用独立的 **iaiops-energy**\n（`pip install iaiops-energy`，然后 `iaiops-energy-mcp`；\ngithub.com/industrial-aiops/industrial-aiops-energy）。它复用本包的 core + 脑；\nmonitor-direction only。**不要**尝试用本 server 的 profile 覆盖能源协议。\n\n## 安全不变量（所有 edition 一致，路由前先记住）\n\n- **Read-first**：默认只读；先 `protocols_supported` 看能力、`iaiops doctor` /\n  `<protocol> doctor` 验链路，再谈读，最后才谈写。\n- **写 = MOC（Management-of-Change）**：10 个设备写工具（`s7_write_db`、\n  `mc_write_words`、`fins_write_words`、`mqtt_publish`、`eip_write_tag`、`ethercat_write_sdo`、\n  `ethercat_set_state`、`profinet_dcp_set`、`bacnet_write_property`、`bas_command`）全部\n  `risk=HIGH`、默认 `dry_run=True`、捕获改前值供 undo（`bas_command` 另对生命安全点一律拒绝）。\n  另有 **`historian_push`** 也是写（`[WRITE][risk=low]`，写的是历史库不是设备）——\n  它不在上面那 10 个里，但仍然是「会改变东西」的工具。\n- **审批**：真实写入需具名审批人 —— CLI `iaiops approve` 双重确认后才放行。\n- **未经授权绝不写生产控制系统**；AI 结论仅 advisory，引用真实信号出处，宁可\n  `insufficient_evidence` 不臆测。\n- 各协议的验证状态（✅ 已自测 / 待核实）见 edition skill 的支持版本矩阵，\n  标 `待核实` 的不得当既成事实。\n\n## 先回答「这个站能干什么」，再谈干（0.24.0）\n\n路由到 edition **之前**，这两条不分行业、任何现场都先跑，而且**零联网**：\n\n- `site_readiness`（MCP）/ `iaiops readiness`（CLI）——「这个站点今天能跑哪些场景、\n  每个缺口还差什么」，按「补上它能解锁多少」排序。它**只报告，绝不代填**。\n- `investigation_readiness` / `iaiops investigate plan` ——「真出事时能走到第八步里的第几步」。\n  缺口分两种，别混：**你还没供**（给出该跑的命令）与 **产品供不了**（`not_yet_expressible`）。\n  这两个把人送去完全不同的地方。\n\n对一个**已经过去的**窗口逐步走完并留档：`investigation_open` / `investigation_show` /\n`investigation_list`（`iaiops investigate open|show|list`）。不碰设备 —— 窗口已经过去，\n证据就是当时采到的。三条都能 `--report x.html` 出可转发的自包含文件。\n\n两步需要**人先声明**，agent 不许代答：\n\n- `line_relation_declare`（`iaiops relations declare`）—— 产线上下游。D25：线上下游\n  共现是必然，从时间推不出因果，所以只能声明。\n- `knowledge mount`（CLI）—— ISO 14224 故障机理库，**可排除、绝不确认**；库里没有这条\n  原因返回 `nothing_known`，**那不是「无异议」**。\n\n**点表语义（`role:`）只能人给** —— 哪个位号是产量计数器是工艺知识，猜错会得出一个\n看着合理的 OEE，比报错更糟（D16）。输入口是 `iaiops tags export|apply|page`：\n导出的 `role` 列是**空的**，哪怕紧挨着一个叫 `GoodPartsCounter` 的位号。\n**这一层故意没有 MCP 工具 —— 让 agent 填 role 列正是 D16 禁止的那个猜测。**\n遇到它，把表交给现场的人，不要自己填。\n\n## Setup（各 edition 相同）\n\n`iaiops init` 交互写 `~/.iaiops/config.yaml`；凭据进加密存储\n（`~/.iaiops/secrets.enc`，主密码 `IAIOPS_MASTER_PASSWORD`）。`iaiops doctor`\n逐端点探活。协议参数、模拟器自测、MCP JSON 示例见 README 与各 edition skill。\n\nFile v0.23.1:_meta.json\n\n{\n  \"ownerId\": \"kn7b067awq2s97bn3d7p5qfhw5827pxc\",\n  \"slug\": \"iaiops\",\n  \"version\": \"0.23.1\",\n  \"publishedAt\": 1787894456444\n}\n\nFile v0.23.1:skill-card.md\n\n## Description:\n\nVendor-neutral, governed industrial/OT data tap and troubleshooting router that helps agents select iaiops edition skills and MCP profiles for industrial protocols, diagnostics, analytics, and gated device actions.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[zw008](https://clawhub.ai/user/zw008)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and industrial/OT operators use this skill to route an agent to the correct iaiops edition skill and MCP profile for PLC, SCADA, historian, CNC, IIoT, facility, and protocol troubleshooting workflows. It supports read-first diagnostics and readiness checks, with production writes described as approval-gated, dry-run-first changes.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: The skill can route agents toward high-impact industrial/OT write actions.\n\nMitigation: Use only for authorized industrial/OT diagnostic work, keep profiles limited to actual site protocols, and require human approval, dry-run review, and rollback planning before any production write.\n\nRisk: Incorrect site semantics or inferred tag roles could produce misleading troubleshooting or OEE conclusions.\n\nMitigation: Run readiness and doctor checks first, require site personnel to provide line relations and tag roles, and treat AI conclusions as advisory when evidence is incomplete.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/zw008/skills/iaiops)\n\n## Skill Output:\n\n**Output Type(s):** [guidance, markdown, shell commands, configuration]\n\n**Output Format:** [Markdown with inline shell commands and configuration values]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Routes to external edition skills and MCP profiles; normal operation should begin with readiness and doctor checks.]\n\n## Skill Version(s):\n\n0.23.1 (source: server release metadata)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v0.23.0: 3 files, 5601 bytes\n\nFiles: skill-card.md (2327b), SKILL.md (7125b), _meta.json (126b)\n\nFile v0.23.0:SKILL.md\n\n---\nname: iaiops\ndescription: >-\n  Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting.\n  Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over\n  OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect,\n  MQTT/Sparkplug B,\n  Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor /\n  display fab equipment over HSMS), PROFINET (DCP discovery), the building edition\n  (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics\n  (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription\n  health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime\n  root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA,\n  change-of-value). Use when the task names any industrial protocol, a\n  PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM\n  equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint,\n  OEE/downtime, downtime root-cause, or OT asset inventory. Routes to\n  the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run +\n  double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or\n  backups — those are separate AIops tools.\n---\n\n# iaiops — ROUTER（识别现场 → 派发 edition skill + MCP profile）\n\n这是**路由 skill**，本身不含工具表。识别任务的行业/协议 → 转到对应 **edition skill**\n（工具清单、workflow、支持版本矩阵都在那边），并用对应 profile 启动 MCP（`IAIOPS_MCP=<x>`\n环境变量，或等价 sugar 脚本 `iaiops-mcp-<x>`）。现场只暴露 1-2 个协议 + 跨协议脑，\n单会话工具 ~15-30，模型不被淹。\n\n## 路由表（关键词 → edition skill → MCP profile）\n\n| 任务提到 | edition skill | MCP profile / entrypoint |\n|---|---|---|\n| SECS/GEM · SECS-II · HSMS · 半导体/显示 fab · wafer · panel · MES equipment · SVID/ECID · recipe | **iaiops-fab** | `IAIOPS_MCP=fab` / `iaiops-mcp-fab` |\n| 离散制造产线 · PLC（S7/S7-1200/1500 · 三菱/MELSEC · Allen-Bradley/ControlLogix/CompactLogix · Omron/FINS/SYSMAC CS/CJ/CP/NX）· Modbus · EtherCAT/CoE/SOEM · PROFINET/DCP · MTConnect/CNC 机床 · Sparkplug B/UNS | **iaiops-factory** | `IAIOPS_MCP=factory` / `iaiops-mcp-factory` |\n| 流程工业（化工/制药/食品饮料）· HART/HART-IP · 变送器/阀门定位器 · 过程仪表 · DCS 旁路读取 | **iaiops-process** | `IAIOPS_MCP=process` / `iaiops-mcp-process`（有 UNS 时 `IAIOPS_MCP=process,sparkplug`） |\n| BACnet/BACnet-IP · HVAC/暖通 · BMS/楼宇自控 · 厂务/facility · Who-Is · TrendLog | **iaiops-building** | `IAIOPS_MCP=building` / `iaiops-mcp-building` |\n| 水处理/水厂 · pH · 浊度/turbidity · 电导率/conductivity · 加药/dosing · 泵站/pump station · 曝气 | **iaiops-water** | `IAIOPS_MCP=water` / `iaiops-mcp-water` |\n| 仓储/物流中心 · 输送线/conveyor · 分拣/sorter · AGV/AMR · WMS/WCS · 托盘/穿梭车 · 物料搬运 | **iaiops-warehouse** | `IAIOPS_MCP=warehouse` / `iaiops-mcp-warehouse` |\n| 医院设施/clinical facility · 负压/正压隔离病房 · 医用气体 · 手术室环境 · 医疗 BMS | **iaiops-clinical** | `IAIOPS_MCP=clinical` / `iaiops-mcp-clinical` |\n| 光伏/PV · 逆变器/inverter · 组串/string · 风电/风机 · 场站 SCADA · 新能源电站 | **iaiops-renewables** | `IAIOPS_MCP=renewables` / `iaiops-mcp-renewables` |\n| Phoenix Contact PLCnext / vPLC（虚拟化 PLC，走内建 OPC-UA + Modbus-TCP） | **iaiops-plcnext** | `IAIOPS_MCP=plcnext` / `iaiops-mcp-plcnext` |\n| IO-Link · IO-Link master · IODD · 智能传感器/executor 参数 · pdin · ISDU（主站 JSON/REST 接口，只读） | **iaiops-factory**（楼宇传感器场景 **iaiops-building**） | `IAIOPS_MCP=factory` / 单协议 `IAIOPS_MCP=iolink` / `iaiops-mcp-iolink` |\n\n- 单协议深用（只有一种设备）：直接 `IAIOPS_MCP=opcua`（或 modbus/s7/mc/fins/eip/mtconnect/\n  sparkplug/ethercat/secsgem/profinet/bacnet/hart），等价脚本 `iaiops-mcp-<协议>`。\n- 跨行业只问 OEE/停机根因/资产盘点/数据质量：任一 profile 均可 —— 跨协议脑\n  （诊断/OEE/资产/合规）**默认随 server 暴露**，选覆盖现场协议的 profile 即可；\n  纯脑场景可用 `IAIOPS_MCP=brain` / `iaiops-mcp-brain`（只暴露脑，零协议）。\n- 说不清行业但报了协议名：按协议列选含它的最小 profile；都不沾 → `iaiops doctor` +\n  `protocols_supported` 先看现场配置了什么。\n\n## 部署（0.10.0 起：无默认，必须选菜单）\n\n- **裸启动 `iaiops-mcp`（不设 `IAIOPS_MCP`）不再暴露全部工具**：打印选择菜单到\n  stderr 并 exit 2。必须设 `IAIOPS_MCP=<selection>` 或用预置入口 `iaiops-mcp-<name>`。\n  `IAIOPS_MCP=menu` 显式打印同一菜单（带各 selection 工具数）后退出。\n- `IAIOPS_MCP=all` 仍可**显式**使用（power user；>100 工具时启动日志给洪泛警告）。\n- **多进程站点（1 脑 + N 协议）**：跑一个 `iaiops-mcp-brain`（只脑），协议 server 各自\n  加 `IAIOPS_MCP_NO_BRAIN=1`（如 `IAIOPS_MCP_NO_BRAIN=1 iaiops-mcp-opcua`）去掉脑，\n  避免跨 server 工具重名；`protocols_supported`（发现工具）在 NO_BRAIN 下仍然保留。\n\n## Energy 协议 → 另一个包（不在本 server）\n\nIEC 60870-5-104 / IEC-104、DNP3 / outstation、IEC 61850 / MMS / IED、变电站/\nsubstation、电力/能源/utility SCADA → 用独立的 **iaiops-energy**\n（`pip install iaiops-energy`，然后 `iaiops-energy-mcp`；\ngithub.com/industrial-aiops/industrial-aiops-energy）。它复用本包的 core + 脑；\nmonitor-direction only。**不要**尝试用本 server 的 profile 覆盖能源协议。\n\n## 安全不变量（所有 edition 一致，路由前先记住）\n\n- **Read-first**：默认只读；先 `protocols_supported` 看能力、`iaiops doctor` /\n  `<protocol> doctor` 验链路，再谈读，最后才谈写。\n- **写 = MOC（Management-of-Change）**：The 10 write tools（`s7_write_db`、\n  `mc_write_words`、`fins_write_words`、`mqtt_publish`、`eip_write_tag`、`ethercat_write_sdo`、\n  `ethercat_set_state`、`profinet_dcp_set`、`bacnet_write_property`、`bas_command`）全部\n  `risk=HIGH`、默认 `dry_run=True`、捕获改前值供 undo（`bas_command` 另对生命安全点一律拒绝）。\n- **审批**：真实写入需具名审批人 —— CLI `iaiops approve` 双重确认后才放行。\n- **未经授权绝不写生产控制系统**；AI 结论仅 advisory，引用真实信号出处，宁可\n  `insufficient_evidence` 不臆测。\n- 各协议的验证状态（✅ 已自测 / 待核实）见 edition skill 的支持版本矩阵，\n  标 `待核实` 的不得当既成事实。\n\n## Setup（各 edition 相同）\n\n`iaiops init` 交互写 `~/.iaiops/config.yaml`；凭据进加密存储\n（`~/.iaiops/secrets.enc`，主密码 `IAIOPS_MASTER_PASSWORD`）。`iaiops doctor`\n逐端点探活。协议参数、模拟器自测、MCP JSON 示例见 README 与各 edition skill。\n\nFile v0.23.0:_meta.json\n\n{\n  \"ownerId\": \"kn7b067awq2s97bn3d7p5qfhw5827pxc\",\n  \"slug\": \"iaiops\",\n  \"version\": \"0.23.0\",\n  \"publishedAt\": 1787632308747\n}\n\nFile v0.23.0:skill-card.md\n\n## Description:\n\nVendor-neutral, governed industrial and OT routing skill for selecting iaiops edition skills and MCP profiles for PLCs, controllers, machine tools, IIoT brokers, diagnostics, and analytics.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[zw008](https://clawhub.ai/user/zw008)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and industrial/OT engineers use this skill to route industrial protocol, PLC, SCADA, historian, fab equipment, building systems, and downtime analysis requests to the appropriate iaiops edition skill and MCP profile. It is intended to keep tool exposure scoped while preserving read-first behavior and approval-gated writes.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Industrial-control routing could select the wrong domain or protocol profile, especially around substation and energy use cases.\n\nMitigation: Review routing instructions before use and select the separate iaiops-energy package for substation or energy protocols when applicable.\n\nRisk: Write-capable OT operations could affect production control systems if used without proper controls.\n\nMitigation: Keep write operations dry-run by default, require explicit approval, and confirm the intended MCP profile before any production action.\n\nRisk: Advisory troubleshooting output could be mistaken for verified operational fact.\n\nMitigation: Treat AI conclusions as advisory and require cited signal evidence or an insufficient-evidence result for operational decisions.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/zw008/skills/iaiops)\n\n## Skill Output:\n\n**Output Type(s):** [guidance, configuration, shell commands]\n\n**Output Format:** [Markdown guidance with inline configuration values and shell commands]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Routes agent tasks to edition skills and MCP profiles; write operations are described as dry-run and approval-gated.]\n\n## Skill Version(s):\n\n0.23.0 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nArchive v0.22.0: 3 files, 5589 bytes\n\nFiles: skill-card.md (2336b), SKILL.md (7125b), _meta.json (126b)\n\nFile v0.22.0:SKILL.md\n\n---\nname: iaiops\ndescription: >-\n  Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting.\n  Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over\n  OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect,\n  MQTT/Sparkplug B,\n  Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor /\n  display fab equipment over HSMS), PROFINET (DCP discovery), the building edition\n  (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics\n  (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription\n  health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime\n  root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA,\n  change-of-value). Use when the task names any industrial protocol, a\n  PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM\n  equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint,\n  OEE/downtime, downtime root-cause, or OT asset inventory. Routes to\n  the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run +\n  double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or\n  backups — those are separate AIops tools.\n---\n\n# iaiops — ROUTER（识别现场 → 派发 edition skill + MCP profile）\n\n这是**路由 skill**，本身不含工具表。识别任务的行业/协议 → 转到对应 **edition skill**\n（工具清单、workflow、支持版本矩阵都在那边），并用对应 profile 启动 MCP（`IAIOPS_MCP=<x>`\n环境变量，或等价 sugar 脚本 `iaiops-mcp-<x>`）。现场只暴露 1-2 个协议 + 跨协议脑，\n单会话工具 ~15-30，模型不被淹。\n\n## 路由表（关键词 → edition skill → MCP profile）\n\n| 任务提到 | edition skill | MCP profile / entrypoint |\n|---|---|---|\n| SECS/GEM · SECS-II · HSMS · 半导体/显示 fab · wafer · panel · MES equipment · SVID/ECID · recipe | **iaiops-fab** | `IAIOPS_MCP=fab` / `iaiops-mcp-fab` |\n| 离散制造产线 · PLC（S7/S7-1200/1500 · 三菱/MELSEC · Allen-Bradley/ControlLogix/CompactLogix · Omron/FINS/SYSMAC CS/CJ/CP/NX）· Modbus · EtherCAT/CoE/SOEM · PROFINET/DCP · MTConnect/CNC 机床 · Sparkplug B/UNS | **iaiops-factory** | `IAIOPS_MCP=factory` / `iaiops-mcp-factory` |\n| 流程工业（化工/制药/食品饮料）· HART/HART-IP · 变送器/阀门定位器 · 过程仪表 · DCS 旁路读取 | **iaiops-process** | `IAIOPS_MCP=process` / `iaiops-mcp-process`（有 UNS 时 `IAIOPS_MCP=process,sparkplug`） |\n| BACnet/BACnet-IP · HVAC/暖通 · BMS/楼宇自控 · 厂务/facility · Who-Is · TrendLog | **iaiops-building** | `IAIOPS_MCP=building` / `iaiops-mcp-building` |\n| 水处理/水厂 · pH · 浊度/turbidity · 电导率/conductivity · 加药/dosing · 泵站/pump station · 曝气 | **iaiops-water** | `IAIOPS_MCP=water` / `iaiops-mcp-water` |\n| 仓储/物流中心 · 输送线/conveyor · 分拣/sorter · AGV/AMR · WMS/WCS · 托盘/穿梭车 · 物料搬运 | **iaiops-warehouse** | `IAIOPS_MCP=warehouse` / `iaiops-mcp-warehouse` |\n| 医院设施/clinical facility · 负压/正压隔离病房 · 医用气体 · 手术室环境 · 医疗 BMS | **iaiops-clinical** | `IAIOPS_MCP=clinical` / `iaiops-mcp-clinical` |\n| 光伏/PV · 逆变器/inverter · 组串/string · 风电/风机 · 场站 SCADA · 新能源电站 | **iaiops-renewables** | `IAIOPS_MCP=renewables` / `iaiops-mcp-renewables` |\n| Phoenix Contact PLCnext / vPLC（虚拟化 PLC，走内建 OPC-UA + Modbus-TCP） | **iaiops-plcnext** | `IAIOPS_MCP=plcnext` / `iaiops-mcp-plcnext` |\n| IO-Link · IO-Link master · IODD · 智能传感器/executor 参数 · pdin · ISDU（主站 JSON/REST 接口，只读） | **iaiops-factory**（楼宇传感器场景 **iaiops-building**） | `IAIOPS_MCP=factory` / 单协议 `IAIOPS_MCP=iolink` / `iaiops-mcp-iolink` |\n\n- 单协议深用（只有一种设备）：直接 `IAIOPS_MCP=opcua`（或 modbus/s7/mc/fins/eip/mtconnect/\n  sparkplug/ethercat/secsgem/profinet/bacnet/hart），等价脚本 `iaiops-mcp-<协议>`。\n- 跨行业只问 OEE/停机根因/资产盘点/数据质量：任一 profile 均可 —— 跨协议脑\n  （诊断/OEE/资产/合规）**默认随 server 暴露**，选覆盖现场协议的 profile 即可；\n  纯脑场景可用 `IAIOPS_MCP=brain` / `iaiops-mcp-brain`（只暴露脑，零协议）。\n- 说不清行业但报了协议名：按协议列选含它的最小 profile；都不沾 → `iaiops doctor` +\n  `protocols_supported` 先看现场配置了什么。\n\n## 部署（0.10.0 起：无默认，必须选菜单）\n\n- **裸启动 `iaiops-mcp`（不设 `IAIOPS_MCP`）不再暴露全部工具**：打印选择菜单到\n  stderr 并 exit 2。必须设 `IAIOPS_MCP=<selection>` 或用预置入口 `iaiops-mcp-<name>`。\n  `IAIOPS_MCP=menu` 显式打印同一菜单（带各 selection 工具数）后退出。\n- `IAIOPS_MCP=all` 仍可**显式**使用（power user；>100 工具时启动日志给洪泛警告）。\n- **多进程站点（1 脑 + N 协议）**：跑一个 `iaiops-mcp-brain`（只脑），协议 server 各自\n  加 `IAIOPS_MCP_NO_BRAIN=1`（如 `IAIOPS_MCP_NO_BRAIN=1 iaiops-mcp-opcua`）去掉脑，\n  避免跨 server 工具重名；`protocols_supported`（发现工具）在 NO_BRAIN 下仍然保留。\n\n## Energy 协议 → 另一个包（不在本 server）\n\nIEC 60870-5-104 / IEC-104、DNP3 / outstation、IEC 61850 / MMS / IED、变电站/\nsubstation、电力/能源/utility SCADA → 用独立的 **iaiops-energy**\n（`pip install iaiops-energy`，然后 `iaiops-energy-mcp`；\ngithub.com/industrial-aiops/industrial-aiops-energy）。它复用本包的 core + 脑；\nmonitor-direction only。**不要**尝试用本 server 的 profile 覆盖能源协议。\n\n## 安全不变量（所有 edition 一致，路由前先记住）\n\n- **Read-first**：默认只读；先 `protocols_supported` 看能力、`iaiops doctor` /\n  `<protocol> doctor` 验链路，再谈读，最后才谈写。\n- **写 = MOC（Management-of-Change）**：The 10 write tools（`s7_write_db`、\n  `mc_write_words`、`fins_write_words`、`mqtt_publish`、`eip_write_tag`、`ethercat_write_sdo`、\n  `ethercat_set_state`、`profinet_dcp_set`、`bacnet_write_property`、`bas_command`）全部\n  `risk=HIGH`、默认 `dry_run=True`、捕获改前值供 undo（`bas_command` 另对生命安全点一律拒绝）。\n- **审批**：真实写入需具名审批人 —— CLI `iaiops approve` 双重确认后才放行。\n- **未经授权绝不写生产控制系统**；AI 结论仅 advisory，引用真实信号出处，宁可\n  `insufficient_evidence` 不臆测。\n- 各协议的验证状态（✅ 已自测 / 待核实）见 edition skill 的支持版本矩阵，\n  标 `待核实` 的不得当既成事实。\n\n## Setup（各 edition 相同）\n\n`iaiops init` 交互写 `~/.iaiops/config.yaml`；凭据进加密存储\n（`~/.iaiops/secrets.enc`，主密码 `IAIOPS_MASTER_PASSWORD`）。`iaiops doctor`\n逐端点探活。协议参数、模拟器自测、MCP JSON 示例见 README 与各 edition skill。\n\nFile v0.22.0:_meta.json\n\n{\n  \"ownerId\": \"kn7b067awq2s97bn3d7p5qfhw5827pxc\",\n  \"slug\": \"iaiops\",\n  \"version\": \"0.22.0\",\n  \"publishedAt\": 1785676200250\n}\n\nFile v0.22.0:skill-card.md\n\n## Description: <br>\niaiops routes industrial and OT troubleshooting tasks to edition skills and MCP profiles for read-first data access, diagnostics, analytics, and gated control actions across supported protocols. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[zw008](https://clawhub.ai/user/zw008) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers, controls engineers, and OT operators use this skill to route industrial protocol, PLC, SCADA, historian, CNC, IIoT, OEE, downtime, and asset-inventory requests to the right iaiops edition and MCP profile. It is intended for authorized industrial environments where read-only investigation is the default and writes require formal change approval. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Unauthorized or incorrect write actions against industrial control systems could affect operations or safety. <br>\nMitigation: Install only where the user is authorized to inspect or control OT systems, keep workflows read-only by default, and require formal change approval with dry-run, double confirmation, undo capture, and enforcement checks before any write. <br>\nRisk: Troubleshooting conclusions can be misleading when industrial signal evidence is incomplete or stale. <br>\nMitigation: Require outputs to cite observed signal sources and prefer an insufficient-evidence result when the available data does not support a conclusion. <br>\n\n\n## Reference(s): <br>\n- [ClawHub iaiops skill page](https://clawhub.ai/zw008/skills/iaiops) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [guidance, markdown, shell commands, configuration] <br>\n**Output Format:** [Markdown guidance with inline shell commands and configuration values] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Routes agent tasks to edition skills and MCP profiles; does not itself expose tool definitions.] <br>\n\n## Skill Version(s): <br>\n0.22.0 (source: server release metadata) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.21.1: 3 files, 5474 bytes\n\nFiles: skill-card.md (2100b), SKILL.md (7125b), _meta.json (126b)\n\nFile v0.21.1:SKILL.md\n\n---\nname: iaiops\ndescription: >-\n  Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting.\n  Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over\n  OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect,\n  MQTT/Sparkplug B,\n  Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor /\n  display fab equipment over HSMS), PROFINET (DCP discovery), the building edition\n  (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics\n  (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription\n  health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime\n  root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA,\n  change-of-value). Use when the task names any industrial protocol, a\n  PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM\n  equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint,\n  OEE/downtime, downtime root-cause, or OT asset inventory. Routes to\n  the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run +\n  double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or\n  backups — those are separate AIops tools.\n---\n\n# iaiops — ROUTER（识别现场 → 派发 edition skill + MCP profile）\n\n这是**路由 skill**，本身不含工具表。识别任务的行业/协议 → 转到对应 **edition skill**\n（工具清单、workflow、支持版本矩阵都在那边），并用对应 profile 启动 MCP（`IAIOPS_MCP=<x>`\n环境变量，或等价 sugar 脚本 `iaiops-mcp-<x>`）。现场只暴露 1-2 个协议 + 跨协议脑，\n单会话工具 ~15-30，模型不被淹。\n\n## 路由表（关键词 → edition skill → MCP profile）\n\n| 任务提到 | edition skill | MCP profile / entrypoint |\n|---|---|---|\n| SECS/GEM · SECS-II · HSMS · 半导体/显示 fab · wafer · panel · MES equipment · SVID/ECID · recipe | **iaiops-fab** | `IAIOPS_MCP=fab` / `iaiops-mcp-fab` |\n| 离散制造产线 · PLC（S7/S7-1200/1500 · 三菱/MELSEC · Allen-Bradley/ControlLogix/CompactLogix · Omron/FINS/SYSMAC CS/CJ/CP/NX）· Modbus · EtherCAT/CoE/SOEM · PROFINET/DCP · MTConnect/CNC 机床 · Sparkplug B/UNS | **iaiops-factory** | `IAIOPS_MCP=factory` / `iaiops-mcp-factory` |\n| 流程工业（化工/制药/食品饮料）· HART/HART-IP · 变送器/阀门定位器 · 过程仪表 · DCS 旁路读取 | **iaiops-process** | `IAIOPS_MCP=process` / `iaiops-mcp-process`（有 UNS 时 `IAIOPS_MCP=process,sparkplug`） |\n| BACnet/BACnet-IP · HVAC/暖通 · BMS/楼宇自控 · 厂务/facility · Who-Is · TrendLog | **iaiops-building** | `IAIOPS_MCP=building` / `iaiops-mcp-building` |\n| 水处理/水厂 · pH · 浊度/turbidity · 电导率/conductivity · 加药/dosing · 泵站/pump station · 曝气 | **iaiops-water** | `IAIOPS_MCP=water` / `iaiops-mcp-water` |\n| 仓储/物流中心 · 输送线/conveyor · 分拣/sorter · AGV/AMR · WMS/WCS · 托盘/穿梭车 · 物料搬运 | **iaiops-warehouse** | `IAIOPS_MCP=warehouse` / `iaiops-mcp-warehouse` |\n| 医院设施/clinical facility · 负压/正压隔离病房 · 医用气体 · 手术室环境 · 医疗 BMS | **iaiops-clinical** | `IAIOPS_MCP=clinical` / `iaiops-mcp-clinical` |\n| 光伏/PV · 逆变器/inverter · 组串/string · 风电/风机 · 场站 SCADA · 新能源电站 | **iaiops-renewables** | `IAIOPS_MCP=renewables` / `iaiops-mcp-renewables` |\n| Phoenix Contact PLCnext / vPLC（虚拟化 PLC，走内建 OPC-UA + Modbus-TCP） | **iaiops-plcnext** | `IAIOPS_MCP=plcnext` / `iaiops-mcp-plcnext` |\n| IO-Link · IO-Link master · IODD · 智能传感器/executor 参数 · pdin · ISDU（主站 JSON/REST 接口，只读） | **iaiops-factory**（楼宇传感器场景 **iaiops-building**） | `IAIOPS_MCP=factory` / 单协议 `IAIOPS_MCP=iolink` / `iaiops-mcp-iolink` |\n\n- 单协议深用（只有一种设备）：直接 `IAIOPS_MCP=opcua`（或 modbus/s7/mc/fins/eip/mtconnect/\n  sparkplug/ethercat/secsgem/profinet/bacnet/hart），等价脚本 `iaiops-mcp-<协议>`。\n- 跨行业只问 OEE/停机根因/资产盘点/数据质量：任一 profile 均可 —— 跨协议脑\n  （诊断/OEE/资产/合规）**默认随 server 暴露**，选覆盖现场协议的 profile 即可；\n  纯脑场景可用 `IAIOPS_MCP=brain` / `iaiops-mcp-brain`（只暴露脑，零协议）。\n- 说不清行业但报了协议名：按协议列选含它的最小 profile；都不沾 → `iaiops doctor` +\n  `protocols_supported` 先看现场配置了什么。\n\n## 部署（0.10.0 起：无默认，必须选菜单）\n\n- **裸启动 `iaiops-mcp`（不设 `IAIOPS_MCP`）不再暴露全部工具**：打印选择菜单到\n  stderr 并 exit 2。必须设 `IAIOPS_MCP=<selection>` 或用预置入口 `iaiops-mcp-<name>`。\n  `IAIOPS_MCP=menu` 显式打印同一菜单（带各 selection 工具数）后退出。\n- `IAIOPS_MCP=all` 仍可**显式**使用（power user；>100 工具时启动日志给洪泛警告）。\n- **多进程站点（1 脑 + N 协议）**：跑一个 `iaiops-mcp-brain`（只脑），协议 server 各自\n  加 `IAIOPS_MCP_NO_BRAIN=1`（如 `IAIOPS_MCP_NO_BRAIN=1 iaiops-mcp-opcua`）去掉脑，\n  避免跨 server 工具重名；`protocols_supported`（发现工具）在 NO_BRAIN 下仍然保留。\n\n## Energy 协议 → 另一个包（不在本 server）\n\nIEC 60870-5-104 / IEC-104、DNP3 / outstation、IEC 61850 / MMS / IED、变电站/\nsubstation、电力/能源/utility SCADA → 用独立的 **iaiops-energy**\n（`pip install iaiops-energy`，然后 `iaiops-energy-mcp`；\ngithub.com/industrial-aiops/industrial-aiops-energy）。它复用本包的 core + 脑；\nmonitor-direction only。**不要**尝试用本 server 的 profile 覆盖能源协议。\n\n## 安全不变量（所有 edition 一致，路由前先记住）\n\n- **Read-first**：默认只读；先 `protocols_supported` 看能力、`iaiops doctor` /\n  `<protocol> doctor` 验链路，再谈读，最后才谈写。\n- **写 = MOC（Management-of-Change）**：The 10 write tools（`s7_write_db`、\n  `mc_write_words`、`fins_write_words`、`mqtt_publish`、`eip_write_tag`、`ethercat_write_sdo`、\n  `ethercat_set_state`、`profinet_dcp_set`、`bacnet_write_property`、`bas_command`）全部\n  `risk=HIGH`、默认 `dry_run=True`、捕获改前值供 undo（`bas_command` 另对生命安全点一律拒绝）。\n- **审批**：真实写入需具名审批人 —— CLI `iaiops approve` 双重确认后才放行。\n- **未经授权绝不写生产控制系统**；AI 结论仅 advisory，引用真实信号出处，宁可\n  `insufficient_evidence` 不臆测。\n- 各协议的验证状态（✅ 已自测 / 待核实）见 edition skill 的支持版本矩阵，\n  标 `待核实` 的不得当既成事实。\n\n## Setup（各 edition 相同）\n\n`iaiops init` 交互写 `~/.iaiops/config.yaml`；凭据进加密存储\n（`~/.iaiops/secrets.enc`，主密码 `IAIOPS_MASTER_PASSWORD`）。`iaiops doctor`\n逐端点探活。协议参数、模拟器自测、MCP JSON 示例见 README 与各 edition skill。\n\nFile v0.21.1:_meta.json\n\n{\n  \"ownerId\": \"kn7b067awq2s97bn3d7p5qfhw5827pxc\",\n  \"slug\": \"iaiops\",\n  \"version\": \"0.21.1\",\n  \"publishedAt\": 1785655529109\n}\n\nFile v0.21.1:skill-card.md\n\n## Description: <br>\nVendor-neutral, governed industrial/OT data tap and intelligent troubleshooting router for PLCs, controllers, machine tools, IIoT brokers, industrial protocols, diagnostics, OEE/downtime analysis, asset inventory, and related operational technology workflows. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[zw008](https://clawhub.ai/user/zw008) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nIndustrial, facilities, and OT engineers use this skill to route agent work to the appropriate iaiops edition and MCP profile for protocol-aware troubleshooting, diagnostics, read-first data collection, OEE/downtime analysis, and governed operational changes. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Connecting an agent to industrial or building-control systems can create operational risk if write-capable paths are enabled before endpoints and permissions are verified. <br>\nMitigation: Install only for intended industrial or building-control use, keep operation read-only until endpoints and permissions are verified, and treat any real write approval as a formal operational change. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/zw008/skills/iaiops) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown with inline shell commands and configuration snippets] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Routes the agent toward selected iaiops edition skills and MCP profiles; high-impact write paths are described as gated and read-first by default.] <br>\n\n## Skill Version(s): <br>\n0.21.1 (source: server evidence release.version) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.21.0: 3 files, 5621 bytes\n\nFiles: skill-card.md (2427b), SKILL.md (7125b), _meta.json (126b)\n\nFile v0.21.0:SKILL.md\n\n---\nname: iaiops\ndescription: >-\n  Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting.\n  Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over\n  OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect,\n  MQTT/Sparkplug B,\n  Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor /\n  display fab equipment over HSMS), PROFINET (DCP discovery), the building edition\n  (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics\n  (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription\n  health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime\n  root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA,\n  change-of-value). Use when the task names any industrial protocol, a\n  PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM\n  equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint,\n  OEE/downtime, downtime root-cause, or OT asset inventory. Routes to\n  the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run +\n  double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or\n  backups — those are separate AIops tools.\n---\n\n# iaiops — ROUTER（识别现场 → 派发 edition skill + MCP profile）\n\n这是**路由 skill**，本身不含工具表。识别任务的行业/协议 → 转到对应 **edition skill**\n（工具清单、workflow、支持版本矩阵都在那边），并用对应 profile 启动 MCP（`IAIOPS_MCP=<x>`\n环境变量，或等价 sugar 脚本 `iaiops-mcp-<x>`）。现场只暴露 1-2 个协议 + 跨协议脑，\n单会话工具 ~15-30，模型不被淹。\n\n## 路由表（关键词 → edition skill → MCP profile）\n\n| 任务提到 | edition skill | MCP profile / entrypoint |\n|---|---|---|\n| SECS/GEM · SECS-II · HSMS · 半导体/显示 fab · wafer · panel · MES equipment · SVID/ECID · recipe | **iaiops-fab** | `IAIOPS_MCP=fab` / `iaiops-mcp-fab` |\n| 离散制造产线 · PLC（S7/S7-1200/1500 · 三菱/MELSEC · Allen-Bradley/ControlLogix/CompactLogix · Omron/FINS/SYSMAC CS/CJ/CP/NX）· Modbus · EtherCAT/CoE/SOEM · PROFINET/DCP · MTConnect/CNC 机床 · Sparkplug B/UNS | **iaiops-factory** | `IAIOPS_MCP=factory` / `iaiops-mcp-factory` |\n| 流程工业（化工/制药/食品饮料）· HART/HART-IP · 变送器/阀门定位器 · 过程仪表 · DCS 旁路读取 | **iaiops-process** | `IAIOPS_MCP=process` / `iaiops-mcp-process`（有 UNS 时 `IAIOPS_MCP=process,sparkplug`） |\n| BACnet/BACnet-IP · HVAC/暖通 · BMS/楼宇自控 · 厂务/facility · Who-Is · TrendLog | **iaiops-building** | `IAIOPS_MCP=building` / `iaiops-mcp-building` |\n| 水处理/水厂 · pH · 浊度/turbidity · 电导率/conductivity · 加药/dosing · 泵站/pump station · 曝气 | **iaiops-water** | `IAIOPS_MCP=water` / `iaiops-mcp-water` |\n| 仓储/物流中心 · 输送线/conveyor · 分拣/sorter · AGV/AMR · WMS/WCS · 托盘/穿梭车 · 物料搬运 | **iaiops-warehouse** | `IAIOPS_MCP=warehouse` / `iaiops-mcp-warehouse` |\n| 医院设施/clinical facility · 负压/正压隔离病房 · 医用气体 · 手术室环境 · 医疗 BMS | **iaiops-clinical** | `IAIOPS_MCP=clinical` / `iaiops-mcp-clinical` |\n| 光伏/PV · 逆变器/inverter · 组串/string · 风电/风机 · 场站 SCADA · 新能源电站 | **iaiops-renewables** | `IAIOPS_MCP=renewables` / `iaiops-mcp-renewables` |\n| Phoenix Contact PLCnext / vPLC（虚拟化 PLC，走内建 OPC-UA + Modbus-TCP） | **iaiops-plcnext** | `IAIOPS_MCP=plcnext` / `iaiops-mcp-plcnext` |\n| IO-Link · IO-Link master · IODD · 智能传感器/executor 参数 · pdin · ISDU（主站 JSON/REST 接口，只读） | **iaiops-factory**（楼宇传感器场景 **iaiops-building**） | `IAIOPS_MCP=factory` / 单协议 `IAIOPS_MCP=iolink` / `iaiops-mcp-iolink` |\n\n- 单协议深用（只有一种设备）：直接 `IAIOPS_MCP=opcua`（或 modbus/s7/mc/fins/eip/mtconnect/\n  sparkplug/ethercat/secsgem/profinet/bacnet/hart），等价脚本 `iaiops-mcp-<协议>`。\n- 跨行业只问 OEE/停机根因/资产盘点/数据质量：任一 profile 均可 —— 跨协议脑\n  （诊断/OEE/资产/合规）**默认随 server 暴露**，选覆盖现场协议的 profile 即可；\n  纯脑场景可用 `IAIOPS_MCP=brain` / `iaiops-mcp-brain`（只暴露脑，零协议）。\n- 说不清行业但报了协议名：按协议列选含它的最小 profile；都不沾 → `iaiops doctor` +\n  `protocols_supported` 先看现场配置了什么。\n\n## 部署（0.10.0 起：无默认，必须选菜单）\n\n- **裸启动 `iaiops-mcp`（不设 `IAIOPS_MCP`）不再暴露全部工具**：打印选择菜单到\n  stderr 并 exit 2。必须设 `IAIOPS_MCP=<selection>` 或用预置入口 `iaiops-mcp-<name>`。\n  `IAIOPS_MCP=menu` 显式打印同一菜单（带各 selection 工具数）后退出。\n- `IAIOPS_MCP=all` 仍可**显式**使用（power user；>100 工具时启动日志给洪泛警告）。\n- **多进程站点（1 脑 + N 协议）**：跑一个 `iaiops-mcp-brain`（只脑），协议 server 各自\n  加 `IAIOPS_MCP_NO_BRAIN=1`（如 `IAIOPS_MCP_NO_BRAIN=1 iaiops-mcp-opcua`）去掉脑，\n  避免跨 server 工具重名；`protocols_supported`（发现工具）在 NO_BRAIN 下仍然保留。\n\n## Energy 协议 → 另一个包（不在本 server）\n\nIEC 60870-5-104 / IEC-104、DNP3 / outstation、IEC 61850 / MMS / IED、变电站/\nsubstation、电力/能源/utility SCADA → 用独立的 **iaiops-energy**\n（`pip install iaiops-energy`，然后 `iaiops-energy-mcp`；\ngithub.com/industrial-aiops/industrial-aiops-energy）。它复用本包的 core + 脑；\nmonitor-direction only。**不要**尝试用本 server 的 profile 覆盖能源协议。\n\n## 安全不变量（所有 edition 一致，路由前先记住）\n\n- **Read-first**：默认只读；先 `protocols_supported` 看能力、`iaiops doctor` /\n  `<protocol> doctor` 验链路，再谈读，最后才谈写。\n- **写 = MOC（Management-of-Change）**：The 10 write tools（`s7_write_db`、\n  `mc_write_words`、`fins_write_words`、`mqtt_publish`、`eip_write_tag`、`ethercat_write_sdo`、\n  `ethercat_set_state`、`profinet_dcp_set`、`bacnet_write_property`、`bas_command`）全部\n  `risk=HIGH`、默认 `dry_run=True`、捕获改前值供 undo（`bas_command` 另对生命安全点一律拒绝）。\n- **审批**：真实写入需具名审批人 —— CLI `iaiops approve` 双重确认后才放行。\n- **未经授权绝不写生产控制系统**；AI 结论仅 advisory，引用真实信号出处，宁可\n  `insufficient_evidence` 不臆测。\n- 各协议的验证状态（✅ 已自测 / 待核实）见 edition skill 的支持版本矩阵，\n  标 `待核实` 的不得当既成事实。\n\n## Setup（各 edition 相同）\n\n`iaiops init` 交互写 `~/.iaiops/config.yaml`；凭据进加密存储\n（`~/.iaiops/secrets.enc`，主密码 `IAIOPS_MASTER_PASSWORD`）。`iaiops doctor`\n逐端点探活。协议参数、模拟器自测、MCP JSON 示例见 README 与各 edition skill。\n\nFile v0.21.0:_meta.json\n\n{\n  \"ownerId\": \"kn7b067awq2s97bn3d7p5qfhw5827pxc\",\n  \"slug\": \"iaiops\",\n  \"version\": \"0.21.0\",\n  \"publishedAt\": 1785640088070\n}\n\nFile v0.21.0:skill-card.md\n\n## Description: <br>\niaiops routes industrial and OT troubleshooting tasks to the appropriate edition skill and MCP profile for read-first diagnostics, analytics, asset inventory, and gated control-system writes across supported protocols. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[zw008](https://clawhub.ai/user/zw008) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers, industrial engineers, and OT operators use this skill to select the right iaiops edition and MCP profile for protocol-specific troubleshooting, read-only inspection, OEE/downtime analysis, asset inventory, and explicitly approved high-risk write workflows. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can route to high-impact industrial write paths for production control systems. <br>\nMitigation: Use only in authorized industrial environments; keep workflows read-only unless a site administrator intentionally enables write tooling and follows formal change approval and rollback planning. <br>\nRisk: Incorrect OT troubleshooting conclusions could mislead operational decisions. <br>\nMitigation: Treat AI conclusions as advisory, require real signal attribution, and prefer insufficient-evidence outcomes when data is incomplete. <br>\nRisk: Broad MCP profiles can expose more tools than an operator needs for a single site or task. <br>\nMitigation: Select the smallest relevant edition or protocol profile and use the menu or discovery commands before enabling broader profiles. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/zw008/skills/iaiops) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [Guidance, Shell commands, Configuration] <br>\n**Output Format:** [Markdown with inline shell commands and configuration values] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Routes users to edition skills and MCP profiles; write operations are described as high-risk, dry-run-first, and approval-gated.] <br>\n\n## Skill Version(s): <br>\n0.21.0 (source: server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>\n\nArchive v0.20.4: 3 files, 5543 bytes\n\nFiles: skill-card.md (2313b), SKILL.md (7125b), _meta.json (126b)\n\nFile v0.20.4:SKILL.md\n\n---\nname: iaiops\ndescription: >-\n  Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting.\n  Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over\n  OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect,\n  MQTT/Sparkplug B,\n  Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor /\n  display fab equipment over HSMS), PROFINET (DCP discovery), the building edition\n  (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics\n  (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription\n  health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime\n  root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA,\n  change-of-value). Use when the task names any industrial protocol, a\n  PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM\n  equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint,\n  OEE/downtime, downtime root-cause, or OT asset inventory. Routes to\n  the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run +\n  double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or\n  backups — those are separate AIops tools.\n---\n\n# iaiops — ROUTER（识别现场 → 派发 edition skill + MCP profile）\n\n这是**路由 skill**，本身不含工具表。识别任务的行业/协议 → 转到对应 **edition skill**\n（工具清单、workflow、支持版本矩阵都在那边），并用对应 profile 启动 MCP（`IAIOPS_MCP=<x>`\n环境变量，或等价 sugar 脚本 `iaiops-mcp-<x>`）。现场只暴露 1-2 个协议 + 跨协议脑，\n单会话工具 ~15-30，模型不被淹。\n\n## 路由表（关键词 → edition skill → MCP profile）\n\n| 任务提到 | edition skill | MCP profile / entrypoint |\n|---|---|---|\n| SECS/GEM · SECS-II · HSMS · 半导体/显示 fab · wafer · panel · MES equipment · SVID/ECID · recipe | **iaiops-fab** | `IAIOPS_MCP=fab` / `iaiops-mcp-fab` |\n| 离散制造产线 · PLC（S7/S7-1200/1500 · 三菱/MELSEC · Allen-Bradley/ControlLogix/CompactLogix · Omron/FINS/SYSMAC CS/CJ/CP/NX）· Modbus · EtherCAT/CoE/SOEM · PROFINET/DCP · MTConnect/CNC 机床 · Sparkplug B/UNS | **iaiops-factory** | `IAIOPS_MCP=factory` / `iaiops-mcp-factory` |\n| 流程工业（化工/制药/食品饮料）· HART/HART-IP · 变送器/阀门定位器 · 过程仪表 · DCS 旁路读取 | **iaiops-process** | `IAIOPS_MCP=process` / `iaiops-mcp-process`（有 UNS 时 `IAIOPS_MCP=process,sparkplug`） |\n| BACnet/BACnet-IP · HVAC/暖通 · BMS/楼宇自控 · 厂务/facility · Who-Is · TrendLog | **iaiops-building** | `IAIOPS_MCP=building` / `iaiops-mcp-building` |\n| 水处理/水厂 · pH · 浊度/turbidity · 电导率/conductivity · 加药/dosing · 泵站/pump station · 曝气 | **iaiops-water** | `IAIOPS_MCP=water` / `iaiops-mcp-water` |\n| 仓储/物流中心 · 输送线/conveyor · 分拣/sorter · AGV/AMR · WMS/WCS · 托盘/穿梭车 · 物料搬运 | **iaiops-warehouse** | `IAIOPS_MCP=warehouse` / `iaiops-mcp-warehouse` |\n| 医院设施/clinical facility · 负压/正压隔离病房 · 医用气体 · 手术室环境 · 医疗 BMS | **iaiops-clinical** | `IAIOPS_MCP=clinical` / `iaiops-mcp-clinical` |\n| 光伏/PV · 逆变器/inverter · 组串/string · 风电/风机 · 场站 SCADA · 新能源电站 | **iaiops-renewables** | `IAIOPS_MCP=renewables` / `iaiops-mcp-renewables` |\n| Phoenix Contact PLCnext / vPLC（虚拟化 PLC，走内建 OPC-UA + Modbus-TCP） | **iaiops-plcnext** | `IAIOPS_MCP=plcnext` / `iaiops-mcp-plcnext` |\n| IO-Link · IO-Link master · IODD · 智能传感器/executor 参数 · pdin · ISDU（主站 JSON/REST 接口，只读） | **iaiops-factory**（楼宇传感器场景 **iaiops-building**） | `IAIOPS_MCP=factory` / 单协议 `IAIOPS_MCP=iolink` / `iaiops-mcp-iolink` |\n\n- 单协议深用（只有一种设备）：直接 `IAIOPS_MCP=opcua`（或 modbus/s7/mc/fins/eip/mtconnect/\n  sparkplug/ethercat/secsgem/profinet/bacnet/hart），等价脚本 `iaiops-mcp-<协议>`。\n- 跨行业只问 OEE/停机根因/资产盘点/数据质量：任一 profile 均可 —— 跨协议脑\n  （诊断/OEE/资产/合规）**默认随 server 暴露**，选覆盖现场协议的 profile 即可；\n  纯脑场景可用 `IAIOPS_MCP=brain` / `iaiops-mcp-brain`（只暴露脑，零协议）。\n- 说不清行业但报了协议名：按协议列选含它的最小 profile；都不沾 → `iaiops doctor` +\n  `protocols_supported` 先看现场配置了什么。\n\n## 部署（0.10.0 起：无默认，必须选菜单）\n\n- **裸启动 `iaiops-mcp`（不设 `IAIOPS_MCP`）不再暴露全部工具**：打印选择菜单到\n  stderr 并 exit 2。必须设 `IAIOPS_MCP=<selection>` 或用预置入口 `iaiops-mcp-<name>`。\n  `IAIOPS_MCP=menu` 显式打印同一菜单（带各 selection 工具数）后退出。\n- `IAIOPS_MCP=all` 仍可**显式**使用（power user；>100 工具时启动日志给洪泛警告）。\n- **多进程站点（1 脑 + N 协议）**：跑一个 `iaiops-mcp-brain`（只脑），协议 server 各自\n  加 `IAIOPS_MCP_NO_BRAIN=1`（如 `IAIOPS_MCP_NO_BRAIN=1 iaiops-mcp-opcua`）去掉脑，\n  避免跨 server 工具重名；`protocols_supported`（发现工具）在 NO_BRAIN 下仍然保留。\n\n## Energy 协议 → 另一个包（不在本 server）\n\nIEC 60870-5-104 / IEC-104、DNP3 / outstation、IEC 61850 / MMS / IED、变电站/\nsubstation、电力/能源/utility SCADA → 用独立的 **iaiops-energy**\n（`pip install iaiops-energy`，然后 `iaiops-energy-mcp`；\ngithub.com/industrial-aiops/industrial-aiops-energy）。它复用本包的 core + 脑；\nmonitor-direction only。**不要**尝试用本 server 的 profile 覆盖能源协议。\n\n## 安全不变量（所有 edition 一致，路由前先记住）\n\n- **Read-first**：默认只读；先 `protocols_supported` 看能力、`iaiops doctor` /\n  `<protocol> doctor` 验链路，再谈读，最后才谈写。\n- **写 = MOC（Management-of-Change）**：The 10 write tools（`s7_write_db`、\n  `mc_write_words`、`fins_write_words`、`mqtt_publish`、`eip_write_tag`、`ethercat_write_sdo`、\n  `ethercat_set_state`、`profinet_dcp_set`、`bacnet_write_property`、`bas_command`）全部\n  `risk=HIGH`、默认 `dry_run=True`、捕获改前值供 undo（`bas_command` 另对生命安全点一律拒绝）。\n- **审批**：真实写入需具名审批人 —— CLI `iaiops approve` 双重确认后才放行。\n- **未经授权绝不写生产控制系统**；AI 结论仅 advisory，引用真实信号出处，宁可\n  `insufficient_evidence` 不臆测。\n- 各协议的验证状态（✅ 已自测 / 待核实）见 edition skill 的支持版本矩阵，\n  标 `待核实` 的不得当既成事实。\n\n## Setup（各 edition 相同）\n\n`iaiops init` 交互写 `~/.iaiops/config.yaml`；凭据进加密存储\n（`~/.iaiops/secrets.enc`，主密码 `IAIOPS_MASTER_PASSWORD`）。`iaiops doctor`\n逐端点探活。协议参数、模拟器自测、MCP JSON 示例见 README 与各 edition skill。\n\nFile v0.20.4:_meta.json\n\n{\n  \"ownerId\": \"kn7b067awq2s97bn3d7p5qfhw5827pxc\",\n  \"slug\": \"iaiops\",\n  \"version\": \"0.20.4\",\n  \"publishedAt\": 1785630563180\n}\n\nFile v0.20.4:skill-card.md\n\n## Description: <br>\niaiops routes industrial/OT data access and troubleshooting requests to scoped edition skills and MCP profiles for read-first diagnostics, analytics, and gated write workflows across PLCs, controllers, machine tools, building systems, IIoT brokers, and related protocols. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[zw008](https://clawhub.ai/user/zw008) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nIndustrial engineers, OT developers, and operators use this skill to identify the relevant industrial protocol or site context, select the matching iaiops edition skill or MCP profile, and follow read-first troubleshooting, analytics, and gated write workflows. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: The skill can route toward high-impact OT write workflows that may affect production control systems if used without proper governance. <br>\nMitigation: Use read-first and dry-run workflows, require explicit named approval for real writes, and verify the MCP server approval flow, undo-state retention, and asset/operator binding before enabling writes. <br>\nRisk: Troubleshooting conclusions in industrial environments may be incomplete when signal evidence is insufficient. <br>\nMitigation: Treat AI conclusions as advisory, cite real signal sources, and report insufficient evidence rather than guessing. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/zw008/skills/iaiops) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [guidance, shell commands, configuration] <br>\n**Output Format:** [Markdown with inline shell commands and environment-variable settings] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [Routes to edition skills and MCP profiles; real write operations require dry-run and explicit approval per the artifact and security evidence.] <br>\n\n## Skill Version(s): <br>\n0.20.4 (source: server release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>","readmeExcerpt":"Skill: iaiops Owner: zw008 Summary: Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting. Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect, MQTT/Sparkplug B, Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor / display fab equipment over HSMS), PROFINET (DCP discover","codeSnippets":[],"executableExamples":[],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nname: iaiops\ndescription: >-\n  Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting.\n  Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over\n  OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect,\n  MQTT/Sparkplug B,\n  Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor /\n  display fab equipment over HSMS), PROFINET (DCP discovery), the building edition\n  (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics\n  (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription\n  health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime\n  root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA,\n  change-of-value). Use when the task names any industrial protocol, a\n  PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM\n  equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint,\n  OEE/downtime, downtime root-cause, or OT asset inventory. Routes to\n  the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run +\n  double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or\n  backups — those are separate AIops tools.\n---\n\n# iaiops — ROUTER（识别现场 → 派发 edition skill + MCP profile）\n\n这是**路由 skill**，本身不含工具表。识别任务的行业/协议 → 转到对应 **edition skill**\n（工具清单、workflow、支持版本矩阵都在那边），并用对应 profile 启动 MCP（`IAIOPS_MCP=<x>`\n环境变量，或等价 sugar 脚本 `iaiops-mcp-<x>`）。现场只暴露 1-2 个协议 + 跨协议脑，\n单会话工具 ~15-30，模型不被淹。\n\n## 路由表（关键词 → edition skill → MCP profile）\n\n| 任务提到 | edition skill | MCP profile / entrypoint |\n|---|---|---|\n| SECS/GEM · SECS-II · HSMS · 半导体/显示 fab · wafer · panel · MES equipment · SVID/ECID · recipe | **iaiops-fab** | `IAIOPS_MCP=fab` / `iaiops-mcp-fab` |\n| 离散制造产线 · PLC（S7/S7-1200/1500 · 三菱/MELSEC · Allen-Bradley/ControlLogix/CompactLogix · Omron/FINS/SYSMAC CS/CJ/CP/NX）· Modbus · EtherCAT/CoE/SOEM · PROFINET/DCP · MTConnect/CNC 机床 · Sparkplug B/UNS | **iaiops-factory** | `IAIOPS_MCP=factory` / `iaiops-mcp-factory` |\n| 流程工业（化工/食品饮料/原料药合成）· HART/HART-IP · 变送器/阀门定位器 · 过程仪表 · DCS 旁路读取 | **iaiops-process** | `IAIOPS_MCP=process` / `iaiops-mcp-process`（有 UNS 时 `IAIOPS_MCP=process,sparkplug`） |\n| BACnet/BACnet-IP · HVAC/暖通 · BMS/楼宇自控 · 厂务/facility · Who-Is · TrendLog | **iaiops-building** | `IAIOPS_MCP=building` / `iaiops-mcp-building` |\n| 水处理/水厂 · pH · 浊度/turbidity · 电导率/conductivity · 加药/dosing · 泵站/pump station · 曝气 | **iaiops-water** | `IAIOPS_MCP=water` / `iaiops-mcp-water` |\n| 仓储/物流中心 · 输送线/conveyor · 分拣/sorter · AGV/AMR · WMS/WCS · 托盘/穿梭车 · 物料搬运 | **iaiops-warehouse** | `IAIOPS_MCP=warehouse` / `iaiops-mcp-warehouse` |\n| 医院设施/clinical facility · 负压/正压隔离病房 · 医用气体 · 手术室环境 · 医疗 BMS | **iaiops-clinical** | `IAIOPS_MCP=clinical` / `iaiops-mcp-clinical` |\n| 制药/药厂 · GMP · 洁净室/洁净区 · Annex 1 · 压差梯度/pressure cascade · grade A/B/C/D · 尘埃粒子 · EMS/环境监测 · PW/WFI/纯化水/注射用水 · TOC · 生物反应器 · 冻干机 · 灌装线 · CSV/IQ/OQ · Annex 11 · Part 11 · 数据完整性/ALCOA | **i"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn7b067awq2s97bn3d7p5qfhw5827pxc\",\n  \"slug\": \"iaiops\",\n  \"version\": \"0.28.0\",\n  \"publishedAt\": 1789535322390\n}"},{"path":"skill-card.md","content":"## Description:\n\nVendor-neutral, governed industrial/OT data tap and intelligent troubleshooting skill that routes industrial protocol, PLC, SCADA, HMI, historian, CNC, RTU, IED, OEE, downtime root-cause, and OT asset inventory tasks to the appropriate iaiops MCP profile.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[zw008](https://clawhub.ai/user/zw008)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and operations engineers use this skill to identify industrial and building automation tasks, choose the matching iaiops edition skill and MCP profile, and follow read-first troubleshooting or onboarding workflows. It is intended for governed OT diagnostics, routing, setup guidance, and carefully controlled write workflows.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Operators may misread or miss important Chinese operational instructions.\n\nMitigation: Install and use the skill only with operators who can understand and review those instructions.\n\nRisk: The skill points users to an external iaiops-energy package for energy protocols.\n\nMitigation: Pin or otherwise verify the external package before installation.\n\nRisk: Industrial and OT write actions can affect real equipment or production systems.\n\nMitigation: Use least-privileged hosts and keep real OT writes behind the documented dry-run, approval, and change-management controls.\n\n## Reference(s):\n\n\n## Skill Output:\n\n**Output Type(s):** [Guidance, Shell commands, Configuration]\n\n**Output Format:** [Markdown with inline shell commands and configuration references]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [Routes users to specific iaiops edition skills and MCP profiles; emphasizes read-first operation, dry-run behavior, approval controls, and human-supplied site semantics.]\n\n## Skill Version(s):\n\n0.28.0 (source: server release evidence)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting. Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect, MQTT/Sparkplug B, Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor / display fab equipment over HSMS), PROFINET (DCP discovery), the building edition (BACnet/IP), and Phoenix Contact PLCnext vPLC — plus cross-protocol diagnostics (\"no-data\" dataflow diagnosis, OPC-UA connection self-diagnosis, subscription health, ISA-18.2 alarm bad-actors, tag/historian health, and the AI downtime root-cause copilot) and analytics (OEE/downtime, asset inventory, OPC-UA HDA, change-of-value). Use when the task names any industrial protocol, a PLC/SCADA/HMI/historian/CNC/RTU/IED, a semiconductor/display fab or SECS/GEM equipment, an electrical substation, an opc.tcp:// or mqtt:// endpoint, OEE/downtime, downtime root-cause, or OT asset inventory. Routes to the iaiops MCP server. Read-first; writes are MOC-gated (high risk, dry-run + double-confirm). Do NOT use for IT/network gear, Kubernetes, hypervisors, or backups — those are separate AIops tools. Skill: iaiops Owner: zw008 Summary: Vendor-neutral, governed industrial/OT data tap + intelligent troubleshooting. Read (and, gated, write) PLCs, controllers, machine tools and IIoT brokers over OPC-UA, Modbus-TCP, Siemens S7comm, Mitsubishi MC, Omron FINS, MTConnect, MQTT/Sparkplug B, Allen-Bradley EtherNet/IP, EtherCAT (pysoem/SOEM), SECS/GEM (semiconductor / display fab equipment over HSMS), PROFINET (DCP discover","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1445,"uniquenessScore":48,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-09T16:10:33.147Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-09T16:10:33.147Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-09T22:52:08.866Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}