Skip to content
Development
Skill

/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

From plugin
agent-skills-playground
19428 skills

Claude Code

$ npx -y skills add matlab/agent-skills-playground --skill mbse-workflow --agent claude-code

SKILL.md

mbse-workflow.SKILL.md
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: https://www.mathworks.com/content/dam/mathworks/license/pmrl/license.md
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. **

Read more
@matlab
Ships withagent-skills-playground

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.

Stars on GitHub

Momentum

stars in total
194
Star history of matlab/agent-skills-playground on GitHub, a chart by star-history.com

Other skills on agent-skills-playground.

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills2w309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react5d252k
@facebook@facebookInstall Skill

Questions about mbse-workflow.

Which coding agents can use mbse-workflow?
mbse-workflow installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.