Skills

Simulink Sanitize Model

Sanitize and anonymize a Simulink model for external sharing.

Install

npx skills add matlab/simulink-agentic-toolkit --skill simulink-sanitize-model -g -a claude-code -y
Category
Engineering
Updated
6d ago
License
See repository
Context cost
Mediumabout 3,000 tokens
Runs scripts
No, instructions only

What it does

Sanitize and anonymize a Simulink model for external sharing. Use when stripping proprietary content, anonymizing block/signal names, removing metadata, or creating a shareable reproduction model for bug reports. Do NOT use for simply copying or sharing a model internally.

Sanitize Model

Produces a self-contained, anonymized copy with all proprietary content removed.

When to Use

  • Anonymize a model before sharing externally
  • Strip proprietary content from a model
  • Create a shareable reproduction model for bug reports or support cases

When NOT to Use

  • Simply sharing a model internally, no sanitization needed
  • Model editing/building, use building-simulink-models
  • Model testing/simulation, use testing-simulink-models or simulating-simulink-models

Model Selection

If the user named a model, use it directly. Otherwise, determine the model from the workspace context, asking the user to confirm only if it is ambiguous. Do NOT use find_system to detect open models.


Scope Selection

Five areas: Names & types (blocks, signals, Stateflow, masks, bus/enum types) · MATLAB code (MATLAB Function blocks, .m files, callbacks, mask init) · Configuration (config set, codegen, custom code, hardware) · Workspace (parameters, variables, SLDD entries, codegen identifiers) · Metadata (descriptions, annotations, requirements, properties, DocBlocks, mask display).

By default run all areas. When the user targets specific content, select only relevant areas. Additional context (e.g., "make sure bus references stay consistent") is NOT a scope limitation. Before starting work, state which areas are selected (e.g., "Scope: Names & types, MATLAB code, Metadata"). Skip areas with no content after enumeration. Steps 1 (copy), 2 (enumerate), 8 (compile), and 9 (report) always run. All other steps run only when the selected scope requires them.

Dependencies: Renaming types requires propagating to all references, always include type propagation when renaming types. MATLAB code dot-notation bus accesses require type renames. Include dependencies automatically and tell the user why.


Complexity Triage (do this first)

Read the whole SKILL.md on GitHub

More in Engineering