Borrowing it
Nothing to install: this file belongs to umbraco/Umbraco.Automate. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/umbraco/Umbraco.Automate/v18/dev/.claude/skills/ops-change/SKILL.mdgit clone --depth 1 https://github.com/umbraco/Umbraco.AutomateWrote 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/umbraco/umbraco.automate/ops-change)<a href="https://agentmods.dev/skills/umbraco/umbraco.automate/ops-change"><img src="https://agentmods.dev/badge/skills/umbraco/umbraco.automate/ops-change/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/umbraco/umbraco.automate/ops-change"><img src="https://agentmods.dev/badge/skills/umbraco/umbraco.automate/ops-change.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00090 | $0.03853 |
| Opus 5 | $0.00045 | $0.01927 |
| Sonnet 5 | $0.00018 | $0.00771 |
| Haiku 4.5 | $0.00009 | $0.00385 |
Grade A, and why
ops-change scanned grade A with 1 finding 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 9d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
`curl` here. How it starts
The opening of the file, as written. The whole thing — 293 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ops-change
Build one change in this repo: implement it, prove it, and close the issue that asked for it.
Visibility: service. A framework loop may command it.
Invocation
ops-change <action> '<context-json>'
Two positional arguments. context is a single JSON object encoded as a string; an
absent context is {}, not an error. Reject any action not listed below — never
guess at one, and never silently succeed.
| Action | What it must do |
|---|---|
implement |
Make the change the issue asks for on a work branch, and push it. Where the context carries a port source this is a port, not a replay: adapt the change to the target line, because a port that needs adapting is a real change. |
verify |
Run this repo's build, tests and sanity checks against the change, and report pass or fail with enough detail for the caller to act on a failure. |
close-issue |
Told that a PR has landed, work out which issue it was for and close that issue only once EVERY target line has landed — one logical change lands N times at N moments. The caller passes the PR, not the issue, because how a PR references its issue and which lines are targets are both repo facts. MUST close explicitly: a Closes #N keyword does not cross repos. MUST tolerate an already-closed issue, and MUST report closed: false with the lines still outstanding rather than closing early. |
Repo facts every action depends on
The product graph. Three products, in dependency order. This is the same graph
azure-pipelines.yml encodes as level 0 / 1 / 2, and it decides test scope:
| Level | Product | Path | Depends on | Test projects |
|---|---|---|---|---|
| 0 | Umbraco.Automate |
Umbraco.Automate/ |
— | Tests.Unit, Tests.Integration |
| 1 | Umbraco.Automate.OpenIddict |
Umbraco.Automate.OpenIddict/ |
Core | Tests.Unit, Tests.Integration |
| 2 | Umbraco.Automate.Slack |
Umbraco.Automate.Slack/ |
OpenIddict, Core | none |
Branch naming is hook-enforced. .githooks/pre-push rejects any branch that is not
vN/dev, vN/main, vN/{feature,release,hotfix}/* or claude/*. Only v*/feature/* is in
the Azure Pipelines push trigger, so a claude/* branch would push but never get CI — and the
issue loop needs CI green. Work branches are therefore always vN/feature/….
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.
- 9d ago First seen · 293 lines · 90 tokens per session scan A 302af4f714a4
ops-change is a skill published in the GitHub repository umbraco/Umbraco.Automate (5 stars, last pushed yesterday), licensed MIT. It adds 90 tokens to every session and 3,853 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
cw-gates
Use before claiming any Codewhale change is done, green, or ready to land: the focused-to-broad verification ladder, the budget checks CI enforces, and the rules for what counts as a passing test.
codew-release-qa-sweep
Use before claiming Codewhale release work is done: run the full gate sweep and list the manual QA targets.
model-merging
Merge multiple fine-tuned models using mergekit to combine capabilities without retraining. Use when creating specialized models by blending domain-specific expertise (math + coding + chat), improving performance beyond single models, or experimenting rapidly with model variants. Covers SLERP, TIES-Merging, DARE, Task…
mem0-test-integration
Verify a Mem0 integration produced by /mem0-integrate. Runs in the same workspace on the same branch (loose coupling) — installs dependencies, runs the repo's native test suite, then exercises a real end-to-end smoke flow against the user's API key. Produces a scorecard. TRIGGER when: user has just run /mem0-integrate…
workflow-patterns
Use this skill when implementing tasks according to Conductor's TDD workflow, handling phase checkpoints, managing git commits for tasks, or understanding the verification protocol.
dev-workflow
The complete development workflow for SkillHub contributors including local dev, staging validation, testing, and PR creation. Ensures agents follow the correct sequence of steps.