본문으로 건너뛰기
cccskills
무료GitHub에 공개

author-modeladvisor-checks

Author or upgrade Model Advisor checks for Simulink and System Composer models. Covers the full lifecycle: guideline authoring, check specification, Model Advisor check implementation, and qualification testing. Use when creating new checks (edit-time, standard batch, config-parameter, auto-fix), converting legacy StyleOne/StyleTwo/StyleThree checks to modern DetailStyle, creating a guideline for modeling, enforcing a modeling rule, or testing/qualifying a check. Triggers on any modeling constraint (e.g., "blocks shall...", "signals must match...", "parameters shall be set to...").

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(22)

  • SKILL.md12.9 KB
  • manifest.yaml1.6 KB
  • references/apis/blocks.md1.9 KB
  • references/apis/code-analysis.md3.3 KB
  • references/apis/data-resolution.md2.3 KB
  • references/apis/framework.md4.1 KB
  • references/apis/signals.md1.9 KB
  • references/apis/stateflow.md3.7 KB
  • references/apis/system-composer.md8.1 KB
  • references/index.md2.1 KB
  • references/patterns/config-param.md4.8 KB
  • references/patterns/edittime.md6.5 KB
  • references/patterns/format-template.md4.3 KB
  • references/patterns/standard.md7.9 KB
  • references/procedures/author-check.md7.3 KB
  • references/procedures/author-guideline.md3.9 KB
  • references/procedures/test-check.md4.6 KB
  • references/templates/check-spec.md6.7 KB
  • references/templates/guideline.md4.4 KB
  • references/templates/test-recipes.md9.7 KB
  • references/templates/test-spec.md4.7 KB
  • references/workflows/legacy-conversion.md3.2 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Author Model Advisor Check

When to Use

  • User provides any modeling constraint (e.g., "blocks shall...", "signals must match...")
  • User asks to create a guideline for modeling
  • User asks to author, implement, or write a Model Advisor check
  • User asks to test, qualify, or validate a custom check
  • User mentions "enforce", "standard", "compliance rule", or "modeling rule"

When NOT to Use

  • Post-hoc compliance checking of existing models — use checking-model-compliance
  • General model building without enforcement context — use building-simulink-models
  • Running existing checks or viewing results — use Model Advisor directly

CRITICAL: REVIEW GATES

You are a state machine that controls the ENTIRE workflow. Procedure reference files describe how to execute each step — you read them for details and execute their procedures inline.

There are 3 REVIEW GATES and 1 CONDITIONAL GATE where you pause and ask the user to choose before continuing. If the user provides feedback, incorporate it. If the user selects the recommended option, continue immediately.

If the user's prompt includes "proceed without asking", "skip confirmation", "without asking for confirmation", or similar — skip ALL review gates and proceed through the entire workflow without stopping. Do NOT use AskUserQuestion or any interactive tool in this mode.

Review Gates (use descriptive names — NEVER say "Gate 1", "Gate 2", "Gate 3"):

  1. Guideline ID & Scope Review — after deriving IDs and before writing the guideline
  2. Check Specification Review — after generating the check specification, before implementing
  3. Test Plan Review — after generating the test specification, before implementing tests

Conditional Gate (between Step 2 and Step 3):

  • Guideline & Test Transition — after check is authored, scan for guideline document. If missing, ask user whether they have one elsewhere or want to create one, then ask whether to proceed with testing. If guideline exists, skip this gate silently.

Between gates, proceed without stopping. Do NOT ask for input on operational decisions (which reference file to load, which pattern to use, how to structure code).

CRITICAL — User-facing output only: The user should only see decision points, artifact summaries after creation, and the Final Report. Do not expose internal workflow mechanics — no step transitions, reference file names, pattern selections, or gate numbering. Keep communication focused on what the user needs to review or what was produced.

How This Skill Works

You are the SINGLE entry point — all domain knowledge lives in references/. Load files on demand by matching the current step to the table below. Follow related: links in each file's frontmatter to discover additional context.

Proceed optimistically between review gates. Pause only at the 3 review gates and the conditional gate. If the user says "stop" or "no," halt immediately (see Halt & Cleanup below).

Reference catalog (see references/index.md for full descriptions):

StepLoadFiles
1 — GuidelineProcedureprocedures/author-guideline.md
2 — CheckProcedure + Pattern + APIsprocedures/author-check.md, patterns/{standard,edittime,config-param,format-template}.md, apis/{blocks,signals,stateflow,data-resolution,code-analysis,system-composer,framework}.md
3 — TestProcedure + Templatesprocedures/test-check.md, templates/{test-spec,test-recipes}.md
LegacyWorkflowworkflows/legacy-conversion.md
Spec formatsTemplatestemplates/{guideline,check-spec}.md

Entry Point: Detect Intent

Match the FIRST row that fits (order matters — check-specific intents take priority):

User SaysGo To
"Test/qualify my check..."STEP 3
"Author/write/create a check..." / "implement a check" / "Create a Model Advisor check..."Ask if user wants a guideline first, then STEP 2
"Create a guideline" / "enforce..." / "write a standard" / modeling constraint without the word "check"STEP 1 (full pipeline)

IMPORTANT — Entry for "Author/Create a check" intent: When the user mentions "check" (author, write, create, implement), ALWAYS ask first:

Would you like me to also create a formal guideline document for this rule, or just the check implementation?

Options:

  1. "Start with the guideline (full pipeline) (Recommended)" — go to STEP 1
  2. "Just the check, skip the guideline" — go to STEP 2 directly

If the prompt explicitly says "Only create the check" or "skip guideline", go to STEP 2 without asking.

If the prompt says "skip guideline and tests" or "Only create the check — skip guideline and tests", go to STEP 2, author the check, then present the Final Report immediately (do NOT proceed to Step 3).

If the prompt includes "proceed without asking" or "skip confirmation", skip this question and go directly to STEP 2.


STEP 1: Author Guideline

Derive defaults:

  • Guideline ID: Use cust_ prefix + sequential number (+ optional short descriptor), e.g., cust_0001, cust_0002_unitygain.
  • Output folder: Use the current working directory. Create a subfolder named after the guideline ID: ./<guideline_id>/

Guideline ID & Scope Review — Pause and ask the user:

Present the derived defaults and ask for confirmation:

I've derived: Guideline ID = `<id>`, Check ID = `mathworks.custom.<id>`, Output = `./<id>/`
Scope: <1-line summary of what the guideline will cover>

Options:

  1. "Use these IDs (Recommended)" — continue with derived defaults
  2. "I want to provide my own ID" — user provides custom IDs, incorporate them

If user selects option 2, incorporate their changes. Otherwise proceed immediately.

Execute: Follow references/procedures/author-guideline.md to produce the guideline.

Artifact notification (brief, no narration):

Guideline `<id>`: <title>
  → ./<id>/guideline_<id>.md
  → ./<id>/compliant_<short>.slx
  → ./<id>/violating_<short>.slx
  → ./<id>/example_correct.png (or text table if parameter-focused)
  → ./<id>/example_incorrect.png (or text table if parameter-focused)

Immediately continue to STEP 2 — do NOT wait for user input.


STEP 2: Generate Check Specification + Author Check

Guideline ID & Scope Review — Pause and ask the user:

If entering directly (not from Step 1), present the ID & Scope review gate before proceeding. If entering from Step 1, the ID was already confirmed — reuse it and skip the gate.

When the gate is needed, derive a default ID using the cust_ prefix (same format as Step 1) and present for confirmation.

Execute Spec: Generate check spec document following references/templates/check-spec.md, feeding in the guideline and user's original constraint. Save to <output_dir>/<id>-check-spec.md.

Present the spec to the user using the summary format defined in references/templates/check-spec.md — show key fields (ID, title, type, context, auto-fix) and the requirements table. End with the saved path.

Check Specification Review — Pause and ask the user:

Ask the user to review the check spec before implementation:

Options:

  1. "Looks good, proceed with implementation (Recommended)"
  2. "I have changes to the spec"

If user selects option 2, wait for their feedback, update the spec document accordingly, then proceed. Otherwise proceed immediately.

Execute Check: Follow references/procedures/author-check.md using the (potentially updated) spec as input. Read the appropriate pattern and API reference files based on the check type. Validate with check_matlab_code until 0 warnings/errors.

Artifact notification (brief):

Check authored: define<Name>.m
Registration: sl_customization.m
  → <path>

Guideline Scan & Transition Gate:

Before proceeding to tests, scan the output folder for a guideline document (guideline_*.md).

  • If a guideline already exists (e.g., Step 1 was executed earlier), skip this gate and continue directly to Step 3.

If NO guideline document exists:

  1. Pause and ask the user to choose from these options:
    • "Skip guideline, proceed to testing (Recommended)" — continue to Step 3
    • "I have a guideline document elsewhere" — user provides a path, copy/link it to the output folder, then continue to Step 3
    • "Create a formal guideline first" — execute Step 1 (author-guideline procedure) before continuing to Step 3
    • "Skip guideline and skip testing" — present Final Report with check artifacts only

If the user selects "I have a guideline document elsewhere", ask for the path, read it, and use it as the source guideline for test derivation.

If the user selects "Create a formal guideline first", execute Step 1 using the constraint that was used to author the check, then return here and continue to Step 3.

Continue to STEP 3 after the gate resolves.


STEP 3: Generate Test Spec + Qualify with Tests

CRITICAL — TDD Independence: Derive test cases ONLY from the guideline and the user's original constraint. NEVER read the check spec or implementation. See references/procedures/test-check.md § TDD Independence Guardrail.

Execute Test Spec: Generate test spec document following references/templates/test-spec.md, feeding in the guideline and the user's original constraint. Save to <output_dir>/<id>-test-spec.md.

Present the test spec to the user using the summary format defined in references/templates/test-spec.md — show key fields (guideline ID, check ID, check type, auto-fix) and the test cases table. End with the saved path.

Test Plan Review — Pause and ask the user:

Ask the user to review the test spec before implementation:

Options:

  1. "Looks good, proceed with test generation (Recommended)"
  2. "I have changes to the test plan"

If user selects option 2, wait for their feedback, update the test spec accordingly, then proceed. Otherwise proceed immediately.

Execute Tests: Follow references/procedures/test-check.md using the (potentially updated) test spec as input. Run tests and present results (N passed, N failed).

CRITICAL — Test Execution Retry Limit: If tests fail after the initial run:

  • Analyze the failure root cause (model issue vs. check logic vs. test assertion)
  • Apply a targeted fix
  • Re-run tests
  • Maximum 3 retry attempts. If tests still fail after 3 retries, STOP and report the status honestly:
    Tests: X passed, Y failed (after 3 fix attempts)
    Remaining failures: <list with brief description>
    Recommended next steps: <what the user should investigate>
    
  • Do NOT enter an unbounded fix loop

After tests complete (or retry limit reached), present the Final Report. Workflow ends.


Halt & Cleanup

If the user says "stop", "no", "halt", or "don't continue" at ANY point during optimistic execution:

  1. Stop immediately — do not begin the next step
  2. Delete artifacts from the step currently in progress (not yet completed):
    • If halted during STEP 2: delete check spec, check definition .m, and sl_customization.m entries that were being generated
    • If halted during STEP 3: delete test spec, test class .m, and test model .slx files that were being generated
  3. Keep all completed step artifacts — guideline stays if Step 1 finished, check stays if Step 2 finished
  4. Present Final Report showing what was kept and what was removed

Final Report

Present this when the workflow completes (all steps done) or when halted:

## Workflow Summary

| Step | Artifact | Path | Status |
|------|----------|------|--------|
| Guideline | <id>: <title> | <path> | Done / Skipped |
| Demo Models | compliant.slx, violating.slx | <path> | Done / Skipped |
| Screenshots | example_correct.png, example_incorrect.png | <path> | Done / Skipped |
| Check Spec | <id>-check-spec.md | <path> | Done / Removed |
| Check | define<Name>.m | <path> | Done / Removed |
| Registration | sl_customization.m | <path> | Done / Removed |
| Test Spec | <id>-test-spec.md | <path> | Done / Removed |
| Tests | Test<Name>.m | <path> | Done / Removed |
| Test Models | <list>.slx | <path> | Done / Removed |

**Status:** <Pipeline completed / Halted at <step description> by user request>

Copyright 2026 The MathWorks, Inc.


리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Synthesize new waveforms from scratch for Simulink inports using createInputDataset. Use ONLY when the user asks to generate, create, or synthesize signals (step, ramp, sine, chirp, pulse, noise) to populate a Dataset for External Inputs or Signal Editor. Covers timeseries and timetable formats with correct data type, interpolation, units, and dimensions. Also covers function-call and trigger inport timing setup. Do NOT use when the user wants to load, import, or read existing data from files (MAT, CSV, spreadsheet) — even if that data will be used as model input. Do NOT use for running simulations or plotting outputs.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

matlab/simulink-agentic-toolkit1.2천2026년 10월 15일 업데이트

Common steps for building multi-layer system architecture models using System Composer. Use when implementing architecture models or when interacting with interface dictionaries, allocation sets, stereotypes, and requirements for architecture components.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

matlab/simulink-agentic-toolkit1.2천2026년 10월 15일 업데이트

Builds and edits Simulink, System Composer, Stateflow, and Simscape models. Use when modifying model structure, parameters, ports, connections, or Stateflow chart internals.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

matlab/simulink-agentic-toolkit1.2천2026년 10월 15일 업데이트

Use this skill when the user asks to check Simulink model compliance against a standard (MISRA, MAB, JMAAB, ISO, DO, IEC, EN, CERT C/CWE, AUTOSAR, Simulink Code Inspector (SLCI)), wants to run Model Advisor checks, or needs a compliance report with fix suggestions. For JMAAB/MAB, supplement deterministic checks with agentic review of uncheckable guidelines.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

matlab/simulink-agentic-toolkit1.2천2026년 10월 15일 업데이트

Guide users through creating and managing .satk/block-policy.json for controlling which blocks the agent can use, which are excluded, and which block parameters the agent should not modify. Use when setting up block usage policy for a project.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

matlab/simulink-agentic-toolkit1.2천2026년 10월 15일 업데이트

Import data into the Simulation Data Inspector (SDI) from MAT, CSV, or Excel files, from workspace variables, or from a Simulink simulation. Use when the user wants to view a logged file in SDI, load a bench-test log, or verify what a just-completed `Simulink.sdi.createRun` or `sim(model)` produced. Covers the `'file'`, `'vars'`, and `'namevalue'` sources of `createRun`, the auto-populate behavior after `sim()`, and post-import verification. Not for comparing existing runs (use `Simulink.sdi.compareRuns`); not for streaming data live during a running simulation (use `Simulink.sdi.createRunOrAddToStreamedRun` — a separate API); and not for authoring Gherkin or Simulink Test test cases, assertions, or regression tests (use `testing-simulink-models`). Do not activate on test-authoring or verification prompts even when no test-authoring skill is available — say so and stop.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

matlab/simulink-agentic-toolkit1.2천2026년 10월 15일 업데이트

matlab의 스킬 모두 보기

이 스킬의 문제 신고