关于 matlab-list-products
用于检查 MATLAB 安装中已安装产品和支持包的技能。它读取安装元数据,并以清理后的名称排序呈现结果。
主要功能
- 01读取已安装产品的元数据
- 02列出已安装的支持包
- 03清除版本号和平台后缀
- 04按 MATLABabetical 顺序排列产品名称
适用场景
- 01检查是否安装了某个工具箱
- 02列出 MATLAB 安装中的产品
- 03查看某个发行版的支持包
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ matlab/ matlab-agentic-toolkit --skill matlab-list-products安装后在 Claude Code 中输入/matlab-list-products确认已加载。
附带文件manifest.yaml
详细介绍
显示已安装的 MATLAB 产品
当用户要求显示、列出或检查某个 MATLAB 安装中已安装的 MATLAB 产品或支持包时,使用此技能。
$ARGUMENTS
适用场景
- 用户询问某个 MATLAB 安装中已安装的产品、工具箱或支持包
- 用户想确认是否已安装某个特定产品
- 用户要求列出或检查 MATLAB 安装的内容
- 用户提供 matlabroot 路径或发行版名称,并想查看其中的内容
不适用场景
- 用户想安装新产品(改用
matlab-install-products) - 用户想检查 MATLAB 许可证状态或激活情况(使用不同的工作流)
- 用户想在 MATLAB 中管理或更新附加组件
- 用户只询问 MATLAB 版本或发行版信息(在 MATLAB 中使用
ver或version)
输入
用户可能会提供 matlabroot 路径或发行版名称,也可能会提供平台。按以下方式解析 matlabroot:
- 提供了路径(例如
C:\Program Files\MATLAB\R2025a、/usr/local/MATLAB/R2025a、/Applications/MATLAB_R2025a.app):按原样使用。根据路径格式推断平台(反斜杠 / 驱动器号 -> Windows;/Applications/MATLAB_前缀 -> macOS;其他 Unix 路径 -> Linux)。 - 提供了发行版名称(例如
R2025a,或简写形式,如25a):将简写扩展为完整形式(25a->R2025a、26a->R2026a等),并根据检测到或指定的平台构造默认路径:- Windows:
C:\Program Files\MATLAB\<release> - Linux:
/usr/local/MATLAB/<release> - macOS:
/Applications/MATLAB_<release>.app
- Windows:
- 未提供任何内容:请用户提供发行版名称;如果平台不明确,再询问平台,然后继续。
如果无法从路径推断平台,则假设为 Windows。
协议
重要: 以下所有步骤都要静默执行。不要向用户叙述、描述或显示进度。仅输出第 6 步中格式化后的最终结果。
第 1 步 -- 提取发行版名称
将 matlabroot 路径的最后一个组成部分作为发行版名称。对于 macOS 路径,去掉末尾的 .app 后缀。
示例:
C:\Program Files\MATLAB\R2025a-> release =R2025a/usr/local/MATLAB/R2025a-> release =R2025a/Applications/MATLAB_R2025a.app-> release =R2025a
备用方案: 如果路径的最后一个组成部分与 R20\d{2}[ab] 不匹配(例如 L:\prod25b 这类自定义安装),读取 {matlabroot}/VersionInfo.xml,并从 <release> 元素中提取发行版。如果该文件不存在,请用户提供发行版名称。
第 2 步 -- 从 matlabroot 读取已安装的产品
读取文件(Linux/macOS 使用正斜杠,Windows 使用反斜杠):
{matlabroot}/appdata/prodcontents.json
这是一个单行 JSON 对象。将其解析为 JSON,并提取其中的键——这些就是已安装产品的名称(例如 "MATLAB 25.1 win64"、"MATLAB 25.1 glnxa64"、"MATLAB 25.1 maca64")。无需使用值(XML 路径)。
第 3 步 -- 读取已安装的支持包
根据平台推导支持包根目录:
- Windows:
C:\ProgramData\MATLAB\SupportPackages\{release} - Linux:
/usr/local/MATLAB/SupportPackages/{release} - macOS:
~/Library/Application Support/MathWorks/MATLAB/SupportPackages/{release}
读取文件:
{supportpkgroot}/appdata/prodcontents.json
如果文件不存在,说明未安装任何支持包,并跳过此部分。
步骤 4 —— 清理产品名称
prodcontents.json 中的每个键都类似于 "MATLAB 25.1 win64" 或 "MATLAB Support Package for USB Webcams 25.1.0 win64"。
去掉末尾的版本号和平台标记,得到简洁的显示名称:
- 移除版本后缀:一段或两段数字,可选加上第三段(例如
25.1、25.1.0、25.2) - 移除平台标记:
win64、glnxa64、maci64、maca64或common - 去掉末尾的空格
示例:
| 原始键 | 显示名称 |
|---|---|
MATLAB 25.1 win64 | MATLAB |
Simulink 25.1 win64 | Simulink |
Datafeed Toolbox 25.1 win64 | Datafeed Toolbox |
Motor Control Blockset 25.1 win64 | Motor Control Blockset |
MATLAB Documentation 25.1.0 win64 | MATLAB Documentation |
MATLAB Support Package for USB Webcams 25.1.0 win64 | MATLAB Support Package for USB Webcams |
步骤 5 —— 排序产品
按 MATLABabetical order 对清理后的产品名称排序:
MATLABMATLAB CopilotSimulinkSimulink Copilot- 其余产品按标准字母顺序排列
未安装的四个锚点产品直接省略。不在锚点列表中的产品按字母顺序排在其后。
支持包按标准字母顺序排序。
步骤 6 —— 显示结果
将发行版名称显示为标题,然后显示安装文件夹,接着显示两个单独的表格。
使用以下确切格式:
{Release Name}
安装位置: {matlabroot}
支持包位置: {supportpkgroot}
产品
| 已安装产品 |
|---|
| MATLAB |
| Simulink |
| ... |
支持包
| 已安装支持包 |
|---|
| MATLAB Support Package for USB Webcams |
| ... |
如果未安装任何支持包,则显示标题和单独一行:No support packages installed.
关键函数和模式
| 模式 | 用途 |
|---|---|
{matlabroot}/appdata/prodcontents.json | 列出已安装产品的 JSON 文件(键 = 产品名称) |
{supportpkgroot}/appdata/prodcontents.json | 列出已安装支持包的 JSON 文件 |
| MATLABabetical 排序 | 优先排列 MATLAB、MATLAB Copilot、Simulink、Simulink Copilot,其余按字母顺序排列 |
| 移除版本/平台标记 | 从原始键中移除末尾的 25.1 win64 等内容 |
版权所有 2026 The MathWorks, Inc.