matlab-build-toolbox について
既存の MATLAB ビルドプランを調べて実行し、生成された `.mltbx` パッケージを検証するスキルです。最初の失敗で停止して結果を報告し、プラン自体は変更しません。
主な機能
- 01ビルドタスクと依存関係を調査
- 02実行するタスクを選択
- 03ビルドパイプラインを実行
- 04最初の失敗で停止
- 05`.mltbx` 成果物を検証
活用シーン
- 01準備確認後にツールボックスをビルド
- 02既存の `buildfile.m` を実行
- 03パッケージの生成結果を確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ matlab/ matlab-agentic-toolkit --skill matlab-build-toolboxインストール後、Claude Code で/matlab-build-toolboxを入力して読み込まれたか確認します。
同梱ファイルmanifest.yaml
詳細
matlab-build-toolbox — ビルド実行ツール
ビルドパイプラインを実行します。これはオペレーターとして、計画を調べて実行すべきタスクを見つけ、実行し、各段階の結果を報告して、失敗した時点で停止します。このパイプラインで人間によるチェックポイントがないのは、このスキルだけです。
使用する場面
matlab-assess-toolboxがブロッカーなしで READY と報告した後- ユーザーが「ビルドして」「ビルドを実行して」「パッケージをビルドして」と言った場合
- ユーザーが独自の
buildfile.mを用意していて、その実行を希望する場合 - 準備完了ゲートを通過した後、パイプライン全体の一部として実行する場合
使用しない場面
buildfile.mが存在しない場合 — 先にmatlab-create-buildfileを使用します- ユーザーがビルドタスクの作成または変更を希望する場合 —
matlab-create-buildfileを使用します - ユーザーが公開またはリリースを希望する場合 — ビルド成功後に
matlab-publish-toolboxを使用します - ユーザーが準備状況の確認を希望する場合 —
matlab-assess-toolboxを使用します
主な関数
| 関数 | 目的 |
|---|---|
matlab.buildtool.Plan.load | ビルド計画を調べてタスクと依存関係を特定します |
buildtool | ビルドパイプラインを実行します(タスクの依存関係チェーンを実行) |
dir | パッケージ作成後に .mltbx 成果物を検索して確認します |
入力
- project_root:プロジェクトのパス(既定値:現在のディレクトリ)
- target(任意):実行する
buildtoolタスク。省略した場合は、計画から自動検出します(ステップ 2 を参照)。
ワークフロー
ステップ 1 — 前提条件を確認する
実行前に、次のことを行います。
- プロジェクトのルートに
buildfile.mが存在することを確認します - パイプラインのコンテキストを判断します。
- パイプライン全体(
buildUtilities/toolboxSpecification.mとbuildUtilities/tbxManifest.mが存在する場合):準備状況の確認は実行済みです。コンテキスト全体を使用して続行します - スタンドアロンのビルドプラン(
buildfile.mのみが存在する場合):ユーザー独自の計画であり、matlab-create-buildfileで生成されたものではありません。仕様/マニフェストの確認は省略し、調査に進みます。
- パイプライン全体(
- パイプライン全体のコンテキストがある場合は、前回の準備状況確認でブロッカーがなかったことを確認します
buildfile.m が存在しない場合は停止し、matlab-create-buildfile を使用するか、ユーザーにファイルを提供するよう案内します。
ステップ 2 — ビルド計画を調べる
計画を読み込み、その構造を確認します。
plan = matlab.buildtool.Plan.load("buildfile.m");
disp({plan.Tasks.Name})
ターゲットタスクを、次の優先順位で特定します。
target入力が指定されていれば、それを使用しますpackageという名前のタスクを探します- 下流の依存タスクがなく、
.mltbxを生成する終端タスクを探します - 候補が複数あり特定できない場合は、どれを実行するかユーザーに尋ねます
ターゲットに至る依存関係チェーンを特定します。
% The chain executes in topological order when you run the target
% e.g., buildtool package → runs check, test, package
実行される内容を報告します。
Build target: "package"
Dependency chain: check → test → package
ステップ 3 — ビルドパイプラインを実行する
最初の失敗時に停止するよう、MATLAB から実行します。
buildtool <target>
チェーンの内容に応じて各段階を動的に監視します。
| タスクの種類 | 成功条件 | 失敗時の対応 |
|---|---|---|
CodeIssuesTask または「check」 | エラー重大度の指摘が 0 件 | 指摘を報告して停止 |
TestTask または「test」 | すべてのテストに合格 | 失敗を報告して停止 |
| カバレッジ(存在する場合) | カバレッジを報告 | しきい値を下回る場合は警告を記録(停止はしません) |
MexTask | MEX ファイルが生成される | エラーを報告して停止 |
PcodeTask | P コードファイルが生成される | エラーを報告して停止 |
| パッケージ作成タスク | .mltbx ファイルが生成される | エラーを報告して停止 |
チェーンによっては、すべての段階が含まれるとは限りません。この計画に含まれるものだけを報告します。
ステップ 4 — 成果物を確認する
パッケージ作成に成功したら、.mltbx を検索して確認します。まずタスクで宣言された Outputs を確認し(信頼できる情報源)、次に release/ とプロジェクトのルートを検索します。
mltbxFile = dir(fullfile("release", "*.mltbx"));
assert(~isempty(mltbxFile), "No .mltbx file found in release/");
assert(mltbxFile(1).bytes > 0, "Package file is empty");
fprintf("Package: %s (%.1f KB)\n", fullfile(mltbxFile(1).folder, mltbxFile(1).name), mltbxFile(1).bytes / 1024);
release/ に .mltbx がない場合は、タスクで宣言された Outputs を確認するか、プロジェクトのルートを検索します。サイズが 0 バイトのファイルは失敗とみなします。
ステップ 5 — 結果を報告する
## Build Complete
- Package: release/MyToolbox.mltbx (142.3 KB)
- Target: "package"
- Chain: check → test → package
- Static analysis: 0 errors, 2 warnings
- Tests: 25/25 passed
- Coverage: 85%
- Duration: 12.3s
### Next Steps
- Run `matlab-publish-toolbox` to version-tag and release
- Test installation: matlab.addons.toolbox.installToolbox("release/MyToolbox.mltbx")
実際に実行された内容に合わせて報告を調整します。この計画に含まれない段階のセクションは省略します(たとえば、カバレッジタスクがない場合は、カバレッジを報告しません)。
失敗した場合:
## Build Failed — [Stage]
### What happened
[error details]
### Suggested fix
[actionable suggestion]
### To retry
Run `matlab-build-toolbox` after fixing the issue.
出力
.mltbxツールボックスパッケージ- ビルドレポート(詳細を含む合格または失敗の結果)
チェックポイント
ありません — このスキルは機械的な処理を行います。すでに承認済みの計画を実行します。失敗した場合は、その理由を報告して停止します。
重要なルール
- まず内容を確認します。 実行する前にビルドプランを読みます。タスク名や依存関係の順序を決めつけず、確認してください。
- 最初の失敗で停止します。 失敗したステージの先へ進んではいけません。壊れたコードから作成したパッケージは、パッケージがない状態よりも悪い結果です。
- すべて報告します。 件数、割合、所要時間を示します。ユーザーがビルドの品質を確認できるようにしてください。
- 成果物を検証します。
.mltbxが存在し、サイズが 0 ではないことを確認します。サイズが 0 のパッケージは、気付かれないまま失敗した状態です。 - 判断はしません。 プランを実行します。コードを変更したり、テストを省略したり、しきい値を下げたりしてはいけません。何か失敗した場合は、その内容を報告して停止します。
- 冪等性を保ちます。 問題を修正した後にこのスキルを再実行しても、正常に動作する必要があります。
次のステップ
/matlab-publish-toolbox— リリースにバージョン情報を付与して配布します
Copyright 2026 The MathWorks, Inc.