tia-devices-general

SkillAI & models

C# Openness implementation of device-level operations

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the tia-devices-general skill

What this skill tells your AI

The instructions your AI receives, as published by czarnak/totally-integrated-claude in skills/tia-devices-general/SKILL.md and read by ahel’s review.

Scope

Device-level engineering — full C# Openness implementation.

When the roadmap routes here, the entire solution is C#. Do not mix with Python wrapper calls. Always load tia-csharp-common first (done by roadmap).


Reference files

Load ONLY the reference file(s) relevant to the task. Do not load all files at once.

Reference fileLoad when the task involves
references/device-enumeration.mdListing, finding, or iterating devices; device groups; ungrouped devices; navigating DeviceItems.
references/device-creation.mdCreating or deleting devices; understanding TypeIdentifier formats (OrderNumber, GSD, System).
references/device-attributes.mdReading/writing basic device or device-item attributes; using GsdDevice service; managing Application IDs (CustomIdentityProvider).
references/hardware-parameters.mdSetting specific hardware parameters via SetAttribute (e.g., IO addresses, diagnostic settings, module-specific enums).
references/software-container.mdAccessing PlcSoftware or HmiTarget from a device; using the SoftwareContainer service.
references/device-item-operations.mdPlugging, moving, copying, or deleting device items/modules; changing device/module types; hardware catalog queries.
references/device-item-interfaces.mdNetworkInterface service; IOController/IOConnector attributes; hardware identifiers; managing addresses and channels.
references/networks-and-connections.mdOpening hardware/network editors; querying targets from a network perspective; address object attributes.

For tasks spanning multiple areas, load all relevant reference files before generating code.


Execution pattern

  1. Access Project.Devices composition (or DeviceGroups / UngroupedDevicesGroup)
  2. Resolve the exact existing object or exact TypeIdentifier; never select the first catalog/device/device-item match
  3. Before create, plug, move, copy, change-type, attribute write, import, or delete, obtain explicit authorization for the exact project, object identity, and requested mutation
  4. Navigate the complete recursive DeviceItem hierarchy as needed
  5. Access SoftwareContainer via GetService<SoftwareContainer>() when PLC, classic HMI, or Unified HMI software is needed
  6. Put supported project mutations in ExclusiveAccess plus a transaction and allow exceptions to roll it back (see tia-csharp-common)
  7. Use ICompilable for hardware or software compile and inspect the full CompilerResult (see tia-project-general/references/compile.md)
  8. Do not save when selection is ambiguous, a service is unavailable, a mutation reports an error, or compile/consistency validation fails

Signals

GitHub stars
59
Forks
10
Last commit
Aug 2026
Advanced
Catalog kind
skill
Gateway key
tia-devices-general
Source
github.com/czarnak/totally-integrated-claude