{"id":"302dd0c8-517f-4c1d-a931-a90287062aac","shortId":"P6Rbq7","kind":"skill","title":"tia-openness-roadmap","tagline":"Entry point for ALL TIA Portal engineering automation tasks. Always load this skill FIRST when the user mentions TIA Portal, TIA Openness, TIA Scripting, Siemens PLC, Siemens HMI, TIA Portal Add-In, or any automation/engineering task targeting TIA Portal. This skill routes to the","description":"# tia-openness-roadmap\n\n## Goal\n\nRoute the task to the correct implementation path and load the right skill files.\n\n## Mandatory policy\n\n1. Prefer **TIA Portal MCP** for interactive, single-step read/write operations when the MCP server is available.\n2. Prefer **TIA Scripting Python** for scripted or multi-step automation.\n3. Use **C# TIA Portal Openness** only if Python is insufficient.\n4. Do not invent Python wrapper methods.\n5. For multi-domain tasks, select all required skills.\n\n## Implementation paths\n\n### MCP path\n\nDirect tool calls — no code generation. Use when the TIA Portal MCP server is available.\n\n| Skill | Location |\n|---|---|\n| `tia-portal-mcp` | `skills/tia-portal-mcp/SKILL.md` |\n\n### Python path\n\nSingle skill owns all Python implementation:\n\n| Skill | Location |\n|---|---|\n| `tia-python` | `skills/tia-python/SKILL.md` |\n\n`tia-python` contains its own reference file table that routes to the correct\n`references/*.md` file based on the task domain (PLC, HMI, library, project, portal).\n\n### C# path\n\nAlways starts with the common foundation skill, then domain skill(s):\n\n| Skill | Location | Role |\n|---|---|---|\n| `tia-csharp-common` | `skills/tia-csharp-common/SKILL.md` | Mandatory first load for every C# task |\n| `tia-project-general` | `skills/tia-project-general/SKILL.md` | Domain skill |\n| `tia-devices-general` | `skills/tia-devices-general/SKILL.md` | Domain skill |\n| `tia-hmi-operations` | `skills/tia-hmi-operations/SKILL.md` | Domain skill |\n| `tia-plc-operations` | `skills/tia-plc-operations/SKILL.md` | Domain skill |\n| `tia-networks` | `skills/tia-networks/SKILL.md` | Domain skill |\n| `tia-simatic-drives` | `skills/tia-simatic-drives/SKILL.md` | Domain skill |\n| `tia-import-export` | `skills/tia-import-export/SKILL.md` | Domain skill |\n\n### Add-In path\n\nStandalone skill for TIA Portal Add-In development (always C#, VS Code workflow):\n\n| Skill | Location |\n|---|---|\n| `addin-operations` | `skills/addin-operations/SKILL.md` |\n\n## Routing rules\n\n| Task pattern | Implementation | Skill |\n|---|---|---|\n| browse / explore project tree structure | MCP | `tia-portal-mcp` |\n| read a single PLC block (view logic / generate code) | MCP | `tia-portal-mcp` |\n| targeted single-block edit | MCP | `tia-portal-mcp` |\n| list tag tables and tags | MCP | `tia-portal-mcp` |\n| inspect hardware topology / IP addresses | MCP | `tia-portal-mcp` |\n| cross-reference diagnostics / unused objects | MCP | `tia-portal-mcp` |\n| add a single device to the project | MCP | `tia-portal-mcp` |\n| configure device network identity (IP, PN name) | MCP | `tia-portal-mcp` |\n| compile check / view errors and warnings | MCP | `tia-portal-mcp` |\n| open/create/save/archive/retrieve project | Python | `tia-python` |\n| project server / local session / portal attach | Python | `tia-python` |\n| PLC blocks / tags / UDTs / sources / compile | Python | `tia-python` |\n| PLC online / download / compare-to-online | Python | `tia-python` |\n| HMI tags / screens / scripts / alarms / lists | Python | `tia-python` |\n| HMI import/export / compile | Python | `tia-python` |\n| library types / versions / instantiate / update | Python | `tia-python` |\n| XML / SimaticML / AML / CAx import/export | Python | `tia-python` |\n| generic device compile / upgrade / properties | Python | `tia-python` |\n| topology / subnet / node / IO-system / port | C# | `tia-networks` |\n| Startdrive / SINAMICS / drive controller | C# | `tia-simatic-drives` |\n| device item slot/subslot/module manipulation | C# | `tia-devices-general` |\n| advanced PLC online/security/upload services | C# | `tia-plc-operations` |\n| deep Unified HMI / screen items / runtime | C# | `tia-hmi-operations` |\n| advanced multiuser / VCI / Teamcenter | C# | `tia-project-general` |\n| TIA Portal Add-In / addin-project / .addin | C# | `addin-operations` |\n\n## MCP vs Python vs C# decision rule\n\nChoose **MCP** when:\n\n- the task is a single read or targeted write (one block, one device, one compile check)\n- the user wants to explore or inspect a project interactively\n- no looping, no bulk changes, no code generation is needed\n- the `tia-portal` MCP server is available (check `mcp__tia-portal__*` tools)\n\nChoose **Python** when the exact required operation exists in the `tia-python` reference files.\nChoose **C#** when:\n\n- the required operation is absent from the Python reference catalogue\n- the task needs low-level object model traversal\n- the task needs topology/network object manipulation\n- the task needs drive-specific APIs\n- the task needs advanced online/security/session/event APIs\n- the task needs Teamcenter, VCI, advanced multiuser, or unsupported safety/Unified features\n\n## Multi-skill execution order\n\n1. project / portal\n2. device selection\n3. domain work\n4. import/export\n5. compile / compare / download / validation\n\n## Required response format\n\nUse this exact structure:\n\n- `Use skill(s): ...`\n- `Implementation path: MCP` or `Implementation path: Python` or `Implementation path: C# Openness`\n- `Reason: ...`\n- `Execution order: ...`\n\n## Post-routing action — MANDATORY\n\n**If MCP:** read `skills/tia-portal-mcp/SKILL.md`. Use the MCP tools directly — no code generation.\n\n**If Python:** read `skills/tia-python/SKILL.md`, then load the reference file(s) it\npoints to for the task domain. Do NOT load domain skills — they are for C# only.\n\n**If C#:**\n\n1. Read `skills/tia-csharp-common/SKILL.md` first — always, for every C# task.\n2. Read the SKILL.md and `reference_catalogue.md` of each selected domain skill.\n   Use the file paths from the C# domain skills table above.\n\n**If Add-In:** read `skills/addin-operations/SKILL.md`. No other skills needed.\n\nDo NOT write code based solely on the routing response — always load the skill files first.\n\n## Escalation rule\n\nIf implementation starts in Python and the required call is not documented:\n\n- stop\n- switch to the corresponding C# domain skill\n- load `tia-csharp-common` first, then the domain skill\n- keep the same task decomposition\n\n## Hard escalation triggers (always C#)\n\n- device item slot/subslot operations\n- subnet/node/IO-system/port/channel/address manipulation\n- Teamcenter / ConnectSSO\n- VCI / advanced multiuser\n- advanced PLC online/security services\n- advanced Unified internals\n- drive-specific engineering\n- diagnostics / event handlers / self-description APIs","tags":["tia","openness","roadmap","totally","integrated","claude","czarnak","agent-skills","claude-code","claude-code-plugin","claude-skills","codex"],"capabilities":["skill","source-czarnak","skill-tia-openness-roadmap","topic-agent-skills","topic-claude-code","topic-claude-code-plugin","topic-claude-skills","topic-codex","topic-codex-cli","topic-codex-plugin","topic-gemini","topic-gemini-cli","topic-gemini-cli-extension","topic-gemini-extension","topic-mcp"],"categories":["totally-integrated-claude"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/Czarnak/totally-integrated-claude/tia-openness-roadmap","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add Czarnak/totally-integrated-claude","source_repo":"https://github.com/Czarnak/totally-integrated-claude","install_from":"skills.sh"}},"qualityScore":"0.454","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 9 github stars · SKILL.md body (6,324 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:08:30.254Z","embedding":null,"createdAt":"2026-05-18T13:13:58.417Z","updatedAt":"2026-05-18T19:08:30.254Z","lastSeenAt":"2026-05-18T19:08:30.254Z","tsv":"'1':71,686,773 '2':89,689,782 '3':101,692 '4':112,695 '5':119,697 'absent':636 'action':730 'add':36,273,282,367,544,806 'add-in':35,272,281,543,805 'addin':293,547,549,552 'addin-oper':292,551 'addin-project':546 'address':350 'advanc':512,532,667,675,881,883,887 'alarm':443 'alway':14,198,285,777,824,870 'aml':467 'api':663,669,900 'attach':413 'autom':12,100 'automation/engineering':40 'avail':88,147,607 'base':186,818 'block':316,329,419,574 'brows':302 'bulk':593 'c':103,196,222,286,490,498,507,516,527,536,550,558,630,722,769,772,780,799,849,871 'call':135,840 'catalogu':641 'cax':468 'chang':594 'check':392,579,608 'choos':561,614,629 'code':137,288,320,596,742,817 'common':202,215,856 'compar':432,699 'compare-to-onlin':431 'compil':391,423,451,476,578,698 'configur':379 'connectsso':879 'contain':172 'control':497 'correct':60,182 'correspond':848 'cross':357 'cross-refer':356 'csharp':214,855 'decis':559 'decomposit':866 'deep':521 'descript':899 'develop':284 'devic':233,370,380,475,503,510,576,690,872 'diagnost':359,894 'direct':133,740 'document':843 'domain':123,190,206,229,236,243,250,256,263,270,693,760,764,791,800,850,860 'download':430,700 'drive':261,496,502,661,891 'drive-specif':660,890 'edit':330 'engin':11,893 'entri':5 'error':394 'escal':830,868 'event':895 'everi':221,779 'exact':618,707 'execut':684,725 'exist':621 'explor':303,584 'export':268 'featur':680 'file':68,176,185,628,752,795,828 'first':18,218,776,829,857 'format':704 'foundat':203 'general':227,234,511,540 'generat':138,319,597,743 'generic':474 'goal':54 'handler':896 'hard':867 'hardwar':347 'hmi':32,192,240,439,449,523,530 'ident':382 'implement':61,129,162,300,712,716,720,833 'import':267 'import/export':450,469,696 'inspect':346,586 'instanti':459 'insuffici':111 'interact':77,589 'intern':889 'invent':115 'io':487 'io-system':486 'ip':349,383 'item':504,525,873 'keep':862 'level':647 'librari':193,456 'list':336,444 'load':15,64,219,749,763,825,852 'local':410 'locat':149,164,210,291 'logic':318 'loop':591 'low':646 'low-level':645 'mandatori':69,217,731 'manipul':506,656,877 'mcp':75,85,131,144,153,307,311,321,325,331,335,341,345,351,355,362,366,374,378,386,390,397,401,554,562,604,609,714,733,738 'md':184 'mention':22 'method':118 'model':649 'multi':98,122,682 'multi-domain':121 'multi-skil':681 'multi-step':97 'multius':533,676,882 'name':385 'need':599,644,653,659,666,672,813 'network':254,381,493 'node':485 'object':361,648,655 'one':573,575,577 'onlin':429,434 'online/security':885 'online/security/session/event':668 'online/security/upload':514 'open':3,26,52,106,723 'open/create/save/archive/retrieve':402 'oper':82,241,248,294,520,531,553,620,634,875 'order':685,726 'own':159 'path':62,130,132,156,197,275,713,717,721,796 'pattern':299 'plc':30,191,247,315,418,428,513,519,884 'pn':384 'point':6,755 'polici':70 'port':489 'portal':10,24,34,44,74,105,143,152,195,280,310,324,334,344,354,365,377,389,400,412,542,603,612,688 'post':728 'post-rout':727 'prefer':72,90 'project':194,226,304,373,403,408,539,548,588,687 'properti':478 'python':93,109,116,155,161,167,171,404,407,414,417,424,427,435,438,445,448,452,455,461,464,470,473,479,482,556,615,626,639,718,745,836 'read':312,569,734,746,774,783,808 'read/write':81 'reason':724 'refer':175,183,358,627,640,751 'reference_catalogue.md':787 'requir':127,619,633,702,839 'respons':703,823 'right':66 'roadmap':4,53 'role':211 'rout':47,55,179,296,729,822 'rule':297,560,831 'runtim':526 'safety/unified':679 'screen':441,524 'script':28,92,95,442 'select':125,691,790 'self':898 'self-descript':897 'server':86,145,409,605 'servic':515,886 'session':411 'siemen':29,31 'simat':260,501 'simaticml':466 'sinam':495 'singl':79,157,314,328,369,568 'single-block':327 'single-step':78 'skill':17,46,67,128,148,158,163,204,207,209,230,237,244,251,257,264,271,277,290,301,683,710,765,792,801,812,827,851,861 'skill-tia-openness-roadmap' 'skill.md':785 'skills/addin-operations/skill.md':295,809 'skills/tia-csharp-common/skill.md':216,775 'skills/tia-devices-general/skill.md':235 'skills/tia-hmi-operations/skill.md':242 'skills/tia-import-export/skill.md':269 'skills/tia-networks/skill.md':255 'skills/tia-plc-operations/skill.md':249 'skills/tia-portal-mcp/skill.md':154,735 'skills/tia-project-general/skill.md':228 'skills/tia-python/skill.md':168,747 'skills/tia-simatic-drives/skill.md':262 'slot/subslot':874 'slot/subslot/module':505 'sole':819 'sourc':422 'source-czarnak' 'specif':662,892 'standalon':276 'start':199,834 'startdriv':494 'step':80,99 'stop':844 'structur':306,708 'subnet':484 'subnet/node/io-system/port/channel/address':876 'switch':845 'system':488 'tabl':177,338,802 'tag':337,340,420,440 'target':42,326,571 'task':13,41,57,124,189,223,298,565,643,652,658,665,671,759,781,865 'teamcent':535,673,878 'tia':2,9,23,25,27,33,43,51,73,91,104,142,151,166,170,213,225,232,239,246,253,259,266,279,309,323,333,343,353,364,376,388,399,406,416,426,437,447,454,463,472,481,492,500,509,518,529,538,541,602,611,625,854 'tia-csharp-common':212,853 'tia-devices-gener':231,508 'tia-hmi-oper':238,528 'tia-import-export':265 'tia-network':252,491 'tia-openness-roadmap':1,50 'tia-plc-oper':245,517 'tia-port':601,610 'tia-portal-mcp':150,308,322,332,342,352,363,375,387,398 'tia-project-gener':224,537 'tia-python':165,169,405,415,425,436,446,453,462,471,480,624 'tia-simatic-dr':258,499 'tool':134,613,739 'topic-agent-skills' 'topic-claude-code' 'topic-claude-code-plugin' 'topic-claude-skills' 'topic-codex' 'topic-codex-cli' 'topic-codex-plugin' 'topic-gemini' 'topic-gemini-cli' 'topic-gemini-cli-extension' 'topic-gemini-extension' 'topic-mcp' 'topolog':348,483 'topology/network':654 'travers':650 'tree':305 'trigger':869 'type':457 'udt':421 'unifi':522,888 'unsupport':678 'unus':360 'updat':460 'upgrad':477 'use':102,139,705,709,736,793 'user':21,581 'valid':701 'vci':534,674,880 'version':458 'view':317,393 'vs':287,555,557 'want':582 'warn':396 'work':694 'workflow':289 'wrapper':117 'write':572,816 'xml':465","prices":[{"id":"62b40243-b44f-4b3e-8dd7-6098b8132443","listingId":"302dd0c8-517f-4c1d-a931-a90287062aac","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"Czarnak","category":"totally-integrated-claude","install_from":"skills.sh"},"createdAt":"2026-05-18T13:13:58.417Z"}],"sources":[{"listingId":"302dd0c8-517f-4c1d-a931-a90287062aac","source":"github","sourceId":"Czarnak/totally-integrated-claude/tia-openness-roadmap","sourceUrl":"https://github.com/Czarnak/totally-integrated-claude/tree/main/skills/tia-openness-roadmap","isPrimary":false,"firstSeenAt":"2026-05-18T13:13:58.417Z","lastSeenAt":"2026-05-18T19:08:30.254Z"}],"details":{"listingId":"302dd0c8-517f-4c1d-a931-a90287062aac","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"Czarnak","slug":"tia-openness-roadmap","github":{"repo":"Czarnak/totally-integrated-claude","stars":9,"topics":["agent-skills","claude-code","claude-code-plugin","claude-skills","codex","codex-cli","codex-plugin","gemini","gemini-cli","gemini-cli-extension","gemini-extension","mcp","mcp-server","siemens","skills","tia-openness","tia-portal"],"license":"mit","html_url":"https://github.com/Czarnak/totally-integrated-claude","pushed_at":"2026-05-08T03:14:15Z","description":"A Claude Code plugin for Siemens TIA Portal engineering automation.","skill_md_sha":"e62f82674be4cec01710b24df1d820593da06936","skill_md_path":"skills/tia-openness-roadmap/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/Czarnak/totally-integrated-claude/tree/main/skills/tia-openness-roadmap"},"layout":"multi","source":"github","category":"totally-integrated-claude","frontmatter":{"name":"tia-openness-roadmap","description":"Entry point for ALL TIA Portal engineering automation tasks. Always load this skill FIRST when the user mentions TIA Portal, TIA Openness, TIA Scripting, Siemens PLC, Siemens HMI, TIA Portal Add-In, or any automation/engineering task targeting TIA Portal. This skill routes to the correct domain skill and selects MCP, Python, or C# implementation."},"skills_sh_url":"https://skills.sh/Czarnak/totally-integrated-claude/tia-openness-roadmap"},"updatedAt":"2026-05-18T19:08:30.254Z"}}