Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add Czarnak/totally-integrated-claude --skill tia-csharp-commongit clone --depth 1 https://github.com/Czarnak/totally-integrated-claudeWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/czarnak/totally-integrated-claude/tia-csharp-common)<a href="https://agentmods.dev/skills/czarnak/totally-integrated-claude/tia-csharp-common"><img src="https://agentmods.dev/badge/skills/czarnak/totally-integrated-claude/tia-csharp-common/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/czarnak/totally-integrated-claude/tia-csharp-common"><img src="https://agentmods.dev/badge/skills/czarnak/totally-integrated-claude/tia-csharp-common.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Excessive Agency · line 342 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00017 | $0.05370 |
| Opus 5 | $0.00009 | $0.02685 |
| Sonnet 5 | $0.00003 | $0.01074 |
| Haiku 4.5 | $0.00002 | $0.00537 |
Grade A, and why
tia-csharp-common scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 642 lines — stays where its author put it; the contents beside it link to each section on GitHub.
TIA Portal Openness C# — Common Foundation
Source: TIA Portal Openness General Functions Manual (03/2026, V21); V21 IntelliSense XML documentation files (PublicAPI\V21\net48*.xml)
V21 modular assembly architecture
V21 splits the API across multiple DLLs instead of a single Siemens.Engineering.dll.
Every project needs Siemens.Engineering.Base.dll; add domain DLLs as required.
Referencing the wrong DLL (or omitting one) causes TypeLoadException at runtime.
Full mapping: See
references/assembly-namespace-map.mdfor the V21 namespace → DLL → domain skill table, cross-assembly warnings, and csproj patterns.
Namespaces by assembly
Only import what is actually used. The list below covers the most commonly needed namespaces. The mapping file summarizes the XML-documented namespaces across all 16 installed V21 PublicAPI DLLs.
Siemens.Engineering.Base.dll (always required):
using Siemens.Engineering; // TiaPortal, Project, ExclusiveAccess, Transaction, events, exceptions
using Siemens.Engineering.Compiler; // CompilerResult
using Siemens.Engineering.Compare; // CompareResult
using Siemens.Engineering.Connection; // connection objects between devices
using Siemens.Engineering.CrossReference; // cross-reference queries
using Siemens.Engineering.Download; // DownloadProvider, DownloadConfiguration
using Siemens.Engineering.Download.Configurations; // device-specific download configs (★ also in Step7 + Startdrive)
using Siemens.Engineering.HW; // Device, DeviceItem, Subnet, Node, IoSystem (★ also in Step7)
using Siemens.Engineering.HW.CommunicationConnections; // communication connection configs
using Siemens.Engineering.HW.Extensions; // extension methods on HW objects
using Siemens.Engineering.HW.Features; // SoftwareContainer, NetworkInterface (★ also in Step7)
using Siemens.Engineering.HW.HardwareCatalog; // hardware catalog access
using Siemens.Engineering.HW.Utilities; // HW utility helpers
using Siemens.Engineering.Library; // ProjectLibrary, GlobalLibrary
using Siemens.Engineering.Library.MasterCopies; // MasterCopy, MasterCopyFolder
using Siemens.Engineering.Library.Types; // LibraryType, LibraryTypeVersion
using Siemens.Engineering.Multiuser; // LocalSession, ProjectServer
using Siemens.Engineering.Online; // OnlineProvider, OnlineState
using Siemens.Engineering.Online.Configurations; // OnlineConfiguration, TLS/authentication callbacks
using Siemens.Engineering.Security; // SecurityController, certificates
using Siemens.Engineering.Settings; // TIA Portal settings
using Siemens.Engineering.Umac; // UmacRole, UmacUser, UmacFunctionRight
using Siemens.Engineering.Upload; // StationUploadProvider, ParameterUploadProvider
using Siemens.Engineering.Upload.Configurations; // upload configs (★ also in Startdrive)
using Siemens.Engineering.VersionControl; // workspace and version control providers
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 10d ago First seen · 642 lines · 17 tokens per session scan A 029d7f58b681
tia-csharp-common is a skill published in the GitHub repository Czarnak/totally-integrated-claude (57 stars, last pushed 25d ago), licensed MIT. It adds 17 tokens to every session and 5,370 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
bootstrap-solution
Bootstrap or guide a reproducible .NET solution with explicit F# or C# language choice, SDK selection, project layout, test project setup, and initial validation commands.
build-csharp-project
Build or modify idiomatic C# .NET projects using nullable-aware APIs, records/classes, async/task behavior, analyzer conventions, tests, and repo-local validation.
csharp-developer
Use when building C# applications with .NET 8+, ASP.NET Core APIs, or Blazor web apps. Builds REST APIs using minimal or controller-based routing, configures database access with Entity Framework Core, implements async patterns and cancellation, structures applications with CQRS via MediatR, and scaffolds Blazor…
dotnet-core-expert
Use when building .NET 8 applications with minimal APIs, clean architecture, or cloud-native microservices. Invoke for Entity Framework Core, CQRS with MediatR, JWT authentication, AOT compilation.
cran-extrachecks
Prepare R packages for CRAN submission by checking for common ad-hoc requirements not caught by devtools::check(). Use when: (1) Preparing a package for first CRAN release, (2) Preparing a package update for CRAN resubmission, (3) Reviewing a package to ensure CRAN compliance, (4) Responding to CRAN reviewer feedback.…
phx-deps-audit
Audit Hex deps for supply-chain security risk — bidi chars, compile-time exec, maintainer changes, typosquats, CVEs. Use after mix deps.update, when checking if a package upgrade is safe, or reviewing mix.lock PR diffs.