From TIA Portal Automation Harness
Audit an EXISTING / open TIA project against the engineering baseline (optimized block access, 100% symbolic addressing, FB + instance-DB, everything typed via UDT, correct language per task, versioned library TYPEs, uniform PLCopen naming) and the verification-ladder posture. Use when the user asks to "review / audit / lint my TIA project", check best-practices / code health / maintainability, or before a handoff. Class R (READ-ONLY): reads blocks/types/tags/devices via the `tia` MCP; never mutates. Output: findings by rule + severity + location + concrete fix.
How this skill is triggered — by the user, by Claude, or both
Slash command
/tia-harness:tia.reviewThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Audit a **connected** TIA project against the non-negotiable baseline (TIA
Audit a connected TIA project against the non-negotiable baseline (TIA
best-practices §0) and the naming/architecture rules (§4/§5/§8). It is a
read-only review: it enumerates the project model through the tia MCP read tools and
reports deviations — it never changes anything.
tia.verify, which is the
compile/consistency ladder; this is the style/architecture audit).tia_status → hasProject:true). If not, this is
a GATE: connecting is tia.handoff/tia_connect territory (G1 trust dialog) — ask the
human, do not force it.tia_status, tia_project_info, tia_project_languages — project context.tia_plcs → for each CLP: tia_plc_blocks (name, type, language, number,
isConsistent, isKnowHowProtected), tia_plc_types (UDTs), tia_plc_tags
(tables + tags, addresses), tia_plc_watchtables.tia_devices / tia_device_tree — hardware.tia_obj_get / tia_obj_items / tia_obj_services — to read attributes the typed
endpoints don't expose (e.g. a block's optimized-access attribute, a tag's symbolic
vs absolute binding).BASELINE.md (bundled) — the authoritative checklist: each rule's ID, what to read, the
predicate, severity, and PLCopen naming prefixes.A findings report. For each deviation: rule (ID from BASELINE.md), severity
(error = breaks baseline, warning = style), location (CLP / block / tag / device),
observed, expected, and fix (the concrete change — but as a recommendation; this
skill does not apply it). End with a per-rule pass/fail summary and an overall posture.
tia_status). If not, stop with the G1 note above.tia_plcs); for each, pull blocks, types, tags, watch tables.BASELINE.md rule by rule:
tia_obj_*).%I/%Q/%M) addressing in logic; tags named.BASELINE.md); consistent case.isConsistent (else compile is stale — point to tia.verify).set_attributes/invoke/create.
If a fix needs a write, emit it as a recommendation for tia.scaffold/the human.safety-reviewer subagent.See BASELINE.md for the rule table, what to read for each, and the naming prefixes.
npx claudepluginhub renanlido/tia-harness --plugin tia-harnessGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.