simulink-automation-suite: Skill for Claude Code

.claude/skills/release/SKILL.md

release is a skill for Claude Code from Mistakey/simulink-automation-suite. It costs 52 tokens per session (1,589 once invoked), scanned A, original, MIT.

A release-management guide for the Simulink automation plugin. It describes how to update versions, prepare release notes, run checks, and create a GitHub release from a version tag.

In plain words
What is it for?
Use it when bumping a version, preparing release notes, validating the plugin, or creating a release tag.
Why use it?
It helps prevent mismatched version files and missed validation steps when publishing a new release.

Skill for Claude Code

Written for Claude Code: Claude Code plugin machinery. Also seen: reads .claude/ paths.

This is Mistakey/simulink-automation-suite's own configuration. It tells Claude Code how to work on simulink-automation-suite itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything simulink-automation-suite configures →

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is python scripts/check_release_metadata.py --tag vX.Y.Z.

Part of the simulink-automation-suite plugin — 3 skills, 2 agents shipped together

Reuse

Borrowing it

Nothing to install: this file belongs to Mistakey/simulink-automation-suite. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/Mistakey/simulink-automation-suite/main/.claude/skills/release/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/Mistakey/simulink-automation-suite

Made for: Claude Code.

Or install simulink-automation-suite, the plugin that ships this one along with the rest of its 3 skills, 2 agents.

Wrote 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.

agentmods badge for release

README.md
[![agentmods](https://agentmods.dev/badge/skills/mistakey/simulink-automation-suite/release/github.svg)](https://agentmods.dev/skills/mistakey/simulink-automation-suite/release)
Your own site
<a href="https://agentmods.dev/skills/mistakey/simulink-automation-suite/release"><img src="https://agentmods.dev/badge/skills/mistakey/simulink-automation-suite/release/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.

agentmods 80×15 button for release

Your own site · 80×15
<a href="https://agentmods.dev/skills/mistakey/simulink-automation-suite/release"><img src="https://agentmods.dev/badge/skills/mistakey/simulink-automation-suite/release.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 52 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,589 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00052 $0.01589
Opus 5 $0.00026 $0.00794
Sonnet 5 $0.00010 $0.00318
Haiku 4.5 $0.00005 $0.00159

Measured 9d ago against content hash 221369114212, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-08, from the pricing page.

Security

Grade A, and why

release 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 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.

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.

.claude/skills/release/SKILL.md · 167 lines

How it starts

The opening of the file, as written. The whole thing — 167 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Release

Default release path is tag-driven GitHub auto release via .github/workflows/release.yml.

Files to Check First

  1. .claude-plugin/plugin.json
  2. .claude-plugin/marketplace.json
  3. simulink_cli/core.pybuild_schema_payload()["version"]
  4. docs/release/
  5. scripts/check_release_metadata.py
  6. scripts/build_release_notes.py
  7. .github/workflows/release.yml

Release Flow

  1. Pick version X.Y.Z
  2. Update manifests and schema:
    • .claude-plugin/plugin.jsonversion: "X.Y.Z"
    • .claude-plugin/marketplace.jsonplugins[0].version: "X.Y.Z"
    • simulink_cli/core.pybuild_schema_payload()["version"] to "X.Y" (only when major.minor changes)
    • docs/release/<date>-vX.Y.Z.md when required (see Release Notes section)
  3. Validate locally:
python scripts/check_release_metadata.py --tag vX.Y.Z
python -m unittest tests.test_plugin_manifest_contract tests.test_marketplace_manifest_contract -v
python -m unittest discover -s tests -p "test_*.py" -v
claude plugin validate .
python scripts/build_release_notes.py --tag vX.Y.Z --ref HEAD
  1. Archive live test report (if available):

    • If docs/reports/LIVE-TEST-REPORT.md exists:
      • Check report's Test Commit vs current HEAD
      • If close match: copy to docs/reports/archive/live-test-vX.Y.Z.md
      • If large gap: warn "Live test report may be stale" — user decides
      • Reference archived report in release notes Validation section
    • If no report exists: warn "No live test report. Consider running /live-test first." — do not block release
  2. Commit release changes

  3. Create and push annotated tag:

git tag -a vX.Y.Z -m "Release vX.Y.Z"
git push origin <branch>
git push origin vX.Y.Z
  1. .github/workflows/release.yml creates the GitHub Release automatically

Version Sync Rules

For release version X.Y.Z, all four must match:

Location Required Value
.claude-plugin/plugin.jsonversion X.Y.Z
.claude-plugin/marketplace.jsonplugins[0].version X.Y.Z
simulink_cli/core.pybuild_schema_payload()["version"] X.Y
Git tag vX.Y.Z

Read the full file on GitHub · 167 lines

Changes

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.

  1. 9d ago First seen · 167 lines · 52 tokens per session scan A 221369114212

Subscribe to this mod's changes

release is a skill published in the GitHub repository Mistakey/simulink-automation-suite (9 stars, last pushed 2mo ago), licensed MIT. It adds 52 tokens to every session and 1,589 once invoked, about $0.0003 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-31.