/mbse-workflow
Use this skill for guided MBSE work in MATLAB — starting a new project, resuming work mid-workflow on an existing project, or answering orientation questions about how the MBSE skills fit together. Trigger when the user says they want to create, start, or set up a new MBSE
$ npx -y skills add matlab/skills --skill mbse-workflow --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/mbse-workflow
Context preview
The summary Claude sees to decide when to auto-load this skill.
Use this skill for guided MBSE work in MATLAB — starting a new project, resuming work mid-workflow on an existing project, or answering orientation questions about how the MBSE skills fit together. Trigger when the user says they want to create, start, or set up a new MBSE
SKILL.md
mbse-workflow.SKILL.mdname: mbse-workflow
description: Use this skill for guided MBSE work in MATLAB — starting a new project, resuming work mid-workflow on an existing project, or answering orientation questions about how the MBSE skills fit together. Trigger when the user says they want to create, start, or set up a new MBSE project; work on a model-based systems engineering / RFLPV project; or asks which skill covers which phase. Walks through phases one at a time — propose → approve → generate → run → confirm. Use proactively whenever someone mentions starting or continuing an MBSE project.
license: MathWorks BSD-3-Clause (see LICENSE)
metadata:
author: MathWorks
version: "1.0"
MBSE Workflow — Guided Project Setup and Phase Orchestration
This skill walks through an MBSE project one phase at a time — for greenfield setup *and* for resuming an existing project mid-workflow. At each phase: propose → get approval → generate script → run it → checkpoint. If the user rejects or wants changes, revise and regenerate — scripts are idempotent so this is always safe.
Skills by phase (at-a-glance routing)
| Phase | Domain skill | What it covers | |---|---|---| | 0 | `matlab-project` | `.prj` setup, folder layout, file tracking, build-script conventions, `runChecks` | | 1, 9 | `simulink-requirements` | `slreq` API — SNs, SRs, TCs; Derive / Implement / Verify links; coverage | | 2–4 | `mbse-architecture` (+ `system-composer`) | F / L / P models, three-level interface dictionaries | | 4b–c | `mbse-architecture` / `system-composer` | Stereotype profile, architecture views (review dashboards) | | 5–7 | `mbse-architecture` | F→L and L→P allocation sets, SR Implement links per layer | | 8 | `mbse-architecture` | Quantitative roll-up analysis, margins (optional) | | 10 | this skill | `buildAll.m`, project health check |
**Builds on `matlab-project`** for the generic `.prj` mechanics: project creation, file tracking, path management, `removeFile`-before-`delete`, build-script idempotency conventions, and `runChecks` health checks. This skill generates the MBSE phase content; the project plumbing follows the patterns in [`../matlab-project/SKILL.md`](../matlab-project/SKILL.md).
Use the other `mbse-*` skills for technical API patterns at each phase. This skill manages the conversation flow and script generation.
---
Project folder layout
The MBSE project layout follows the standard `setupProject` shape from `matlab-project`, with these subfolders:
my-system/
├── my-system.prj MATLAB Project file
├── plan.md / decisions.md (living docs — see below)
├── requirements/ .slreqx files (StakeholderNeeds, SystemRequirements, TestCases)
├── architecture/ .slx, .sldd, .xml, .mldatx (model, dictionary, profile, allocation)
├── analysis/ .mat (analysis instances)
├── verification/ (reserved — TC artifacts currently live in requirements/)
├── scripts/ buildAll.m, all phase build scripts, setupProject + setupMBSEProject
└── derived/ build outputs — NOT tracked in the project
├── cache/
└── codegen/---
Cross-Phase Dependencies
- **Architecture rebuilds break allocation links.** `slreq.createLink` stores
component references by Simulink SID. If you rebuild the model, SIDs change and Implement allocation links become stale. Always rebuild allocation after rebuilding the architecture model.
- **Profile setup belongs in the architecture script.** Create and apply the
stereotype profile at the end of `buildPhysical()` so estimates travel with the model and survive every rebuild.
- **`slreq.saveAll()` saves cross-set links.** Call it after any session that
creates links between different `.slreqx` files or between requirements and architecture artifacts.
- **`slreq.clear()` unloads all sets from memory** but does not delete files.
Call it at the top of each script for a clean slate, then `slreq.load()` the files you need.
- **Delete `.slmx` link files alongside `.slreqx` files** when rebuilding
requirement sets. Stale `.slmx` files store cross-artifact links and will auto-open old model files on load, causing conflicts.
---
How to conduct this session
Work through the phases in order. Never jump ahead. At each checkpoint, present what you are about to create in plain language and wait for explicit approval ("looks good", "yes", "proceed") before generating the script. If the user asks for changes, make them and re-present — do not generate until approved.
After running each script, show the MATLAB output and ask the user to confirm it looks right before moving to the next phase. Keep proposed content concise and specific — avoid vague placeholders.
---
Living documentation: `plan.md` and `decisions.md`
This skill **overrides** the generic living-doc framework from `matlab-project` with MBSE-flavored templates. The framework, cadence guidance, and when-to-append rules live in [`../matlab-project/SKILL.md`](../matlab-project/SKILL.md); this skill ships its own templates with RFLPV phase rows and MBSE-specific sections (Engineering concerns, Analysis scope, Decision context).
Use the templates at [`templates/plan.md`](templates/plan.md) and [`templates/decisions.md`](templates/decisions.md) — **not** the generic ones under `matlab-project/templates/`. Phase 0 copies both into the project root, fills placeholders from the interview answers, and registers them with the MATLAB project so they travel with the repo. Subsequent phases edit them per the cadence in `matlab-project`.
---
Phase 0: Interview and Project Setup
Ask the following questions (can be in one message):
1. **System name** — what is the system called? (Used for file and model names, e.g. `SatComSystem`) 2. **Project location** — full path to the folder where the project should be created 3. **System description** — one paragraph: what does it do, what problem does it solve? 4. **Requirements source** — do you alre
Read more
name: mbse-workflow description: Use this skill for guided MBSE work in MATLAB — starting a new project, resuming work mid-workflow on an existing project, or answering orientation questions about how the MBSE skills fit together. Trigger when the user says they want to create, start, or set up a new MBSE project; work on a model-based systems engineering / RFLPV project; or asks which skill covers which phase. Walks through phases one at a time — propose → approve → generate → run → confirm. Use proactively whenever someone mentions starting or continuing an MBSE project. license: MathWorks BSD-3-Clause (see LICENSE) metadata: author: MathWorks version: "1.0"
MBSE Workflow — Guided Project Setup and Phase Orchestration
This skill walks through an MBSE project one phase at a time — for greenfield setup *and* for resuming an existing project mid-workflow. At each phase: propose → get approval → generate script → run it → checkpoint. If the user rejects or wants changes, revise and regenerate — scripts are idempotent so this is always safe.
Skills by phase (at-a-glance routing)
| Phase | Domain skill | What it covers | |---|---|---| | 0 | `matlab-project` | `.prj` setup, folder layout, file tracking, build-script conventions, `runChecks` | | 1, 9 | `simulink-requirements` | `slreq` API — SNs, SRs, TCs; Derive / Implement / Verify links; coverage | | 2–4 | `mbse-architecture` (+ `system-composer`) | F / L / P models, three-level interface dictionaries | | 4b–c | `mbse-architecture` / `system-composer` | Stereotype profile, architecture views (review dashboards) | | 5–7 | `mbse-architecture` | F→L and L→P allocation sets, SR Implement links per layer | | 8 | `mbse-architecture` | Quantitative roll-up analysis, margins (optional) | | 10 | this skill | `buildAll.m`, project health check |
**Builds on `matlab-project`** for the generic `.prj` mechanics: project creation, file tracking, path management, `removeFile`-before-`delete`, build-script idempotency conventions, and `runChecks` health checks. This skill generates the MBSE phase content; the project plumbing follows the patterns in [`../matlab-project/SKILL.md`](../matlab-project/SKILL.md).
Use the other `mbse-*` skills for technical API patterns at each phase. This skill manages the conversation flow and script generation.
---
Project folder layout
The MBSE project layout follows the standard `setupProject` shape from `matlab-project`, with these subfolders:
my-system/
├── my-system.prj MATLAB Project file
├── plan.md / decisions.md (living docs — see below)
├── requirements/ .slreqx files (StakeholderNeeds, SystemRequirements, TestCases)
├── architecture/ .slx, .sldd, .xml, .mldatx (model, dictionary, profile, allocation)
├── analysis/ .mat (analysis instances)
├── verification/ (reserved — TC artifacts currently live in requirements/)
├── scripts/ buildAll.m, all phase build scripts, setupProject + setupMBSEProject
└── derived/ build outputs — NOT tracked in the project
├── cache/
└── codegen/---
Cross-Phase Dependencies
- **Architecture rebuilds break allocation links.** `slreq.createLink` stores
component references by Simulink SID. If you rebuild the model, SIDs change and Implement allocation links become stale. Always rebuild allocation after rebuilding the architecture model.
- **Profile setup belongs in the architecture script.** Create and apply the
stereotype profile at the end of `buildPhysical()` so estimates travel with the model and survive every rebuild.
- **`slreq.saveAll()` saves cross-set links.** Call it after any session that
creates links between different `.slreqx` files or between requirements and architecture artifacts.
- **`slreq.clear()` unloads all sets from memory** but does not delete files.
Call it at the top of each script for a clean slate, then `slreq.load()` the files you need.
- **Delete `.slmx` link files alongside `.slreqx` files** when rebuilding
requirement sets. Stale `.slmx` files store cross-artifact links and will auto-open old model files on load, causing conflicts.
---
How to conduct this session
Work through the phases in order. Never jump ahead. At each checkpoint, present what you are about to create in plain language and wait for explicit approval ("looks good", "yes", "proceed") before generating the script. If the user asks for changes, make them and re-present — do not generate until approved.
After running each script, show the MATLAB output and ask the user to confirm it looks right before moving to the next phase. Keep proposed content concise and specific — avoid vague placeholders.
---
Living documentation: `plan.md` and `decisions.md`
This skill **overrides** the generic living-doc framework from `matlab-project` with MBSE-flavored templates. The framework, cadence guidance, and when-to-append rules live in [`../matlab-project/SKILL.md`](../matlab-project/SKILL.md); this skill ships its own templates with RFLPV phase rows and MBSE-specific sections (Engineering concerns, Analysis scope, Decision context).
Use the templates at [`templates/plan.md`](templates/plan.md) and [`templates/decisions.md`](templates/decisions.md) — **not** the generic ones under `matlab-project/templates/`. Phase 0 copies both into the project root, fills placeholders from the interview answers, and registers them with the MATLAB project so they travel with the repo. Subsequent phases edit them per the cadence in `matlab-project`.
---
Phase 0: Interview and Project Setup
Ask the following questions (can be in one message):
1. **System name** — what is the system called? (Used for file and model names, e.g. `SatComSystem`) 2. **Project location** — full path to the folder where the project should be created 3. **System description** — one paragraph: what does it do, what problem does it solve? 4. **Requirements source** — do you alre
A sandbox for prototyping and demonstrating Agent Skills for MATLAB and Simulink work. Skills here are experimental. They may be incomplete, change without notice, or migrate to an official toolkit over time.
Repo: matlab/skills
Other skills on agent-skills-playground.
- /embedded-ai-deployment
Deploy AI models to embedded hardware using MathWorks tools (MATLAB, Simulink, Embedded Coder). Covers two workflow patterns: (1) MathWorks-native or 3P-imported models rebuilt as dlnetwork for lean hardware (Cortex-M, DSP), (2) direct C/C++ code generation from PyTorch and
Open skill - /agent-skill-author
Use this skill when the user wants to author, design, scope, or refine an Agent Skill (a SKILL.md file). Trigger phrases include "build a new skill", "design an agent skill", "scope a SKILL.md", "how should I structure this skill", "write a skill for X", "my skill isn't working
Open skill - /matlab-project
Use this skill for any work involving a MATLAB Project (.prj file) — creating a new project, tracking files, managing the project path, configuring Simulink cache and code-generation folders, running project health checks, or writing build scripts that keep the project in sync
Open skill - /mbse-architecture
Use this skill for the architecture phases of an MBSE workflow in MATLAB, when writing idempotent buildXxx.m scripts that produce a three-layer RFLPV architecture (Functional, Logical, Physical) with interface dictionaries, stereotype profiles, allocation sets, and requirements
Open skill - /simulink-requirements
Use this skill for all requirements-related work in a MATLAB MBSE project using the Requirements Toolbox (slreq). Covers creating and populating requirement sets, derivation links, test case requirements, verification coverage, reading and tracing links across requirement sets
Open skill - /system-composer
Use this skill when authoring reusable, idempotent MATLAB scripts that build System Composer architecture models via the architecture-modeling API — `systemcomposer.createModel`, `addComponent`, `addPort`, `setInterface`, `connect(srcPort, dstPort)`, interface dictionaries
Open skill

