bio_img_japan-community

MATLAB ユーザーコミュニティー

MATLAB & Simulink ユーザーコミュニティー向け日本語ブログ

MATLAB でターミナルが使えるようになりました

※この投稿は 2026 年 6 月 3 日に The MATLAB Blog へ 投稿されたものの抄訳です。

AI エージェントに世界中が夢中になっていることの嬉しい副作用の 1 つは、控えめな存在だったターミナルがちょっとした復興を遂げていることです。MATLAB Agentic Toolkit を使っているなら、MATLAB や Simulink と並べて 1 つ以上のターミナル ウィンドウを開いていたはずです。
そこでターミナルを MATLAB と Simulink の内部に持ち込むことにしました。しかもこのプロトタイプは今すぐインストールして使えます。

Terminal と MATLAB コマンドラインの違い

「MATLAB には昔からターミナルがあったのでは?」と思って、コマンド ウィンドウを指さす方もいるかもしれません。実際、初期の MATLAB にはデスクトップすらなく、ただのコマンド ウィンドウだけでした。
MATLAB のコマンド ウィンドウは、MATLAB 言語の REPL(Read-Eval-Print Loop)です。そこに x = eig(A) のような MATLAB 式を入力すると、MATLAB インタープリターが評価します。これはMATLAB を扱うには優れていますが、ターミナルではありません。ターミナルとは、OS のシェルと対話するためのものです。
ただし、MATLAB コマンド ウィンドウから MATLAB の system 関数を使って、OS のシェル上でコマンドを実行することはできます
system(‘dir’)
Volume in drive C is OS
Volume Serial Number is 863F-D27BDirectory of C:\Users\walki\OneDrive – MathWorks\Documents\MATLAB\Examples\R2026a\simulink_general\sldemo_bounceExample01/06/2026 20:59 <DIR> .
01/06/2026 20:59 <DIR> ..
01/06/2026 20:59 40,925 sldemo_bounce.slx
01/06/2026 20:59 7,876 sldemo_bounceExample.m
01/06/2026 20:59 2,319 sldemo_bounce_overview.png
01/06/2026 20:59 42,491 sldemo_bounce_two_integrators.slx
4 File(s) 93,611 bytes
2 Dir(s) 360,018,485,248 bytes free
ans = 0
あるいは感嘆符を使っても実行できます。
% Run the windows date command
!date /t
01/06/2026
たまに 1、2 個コマンドを実行するだけならこれでも構いませんが、本格的なターミナル体験にはほど遠く、対話的なエージェント コーディング セッションに使うことはまずできません。そこで登場するのが、この新しいターミナルです。

MATLAB の Terminal を使い始めてみよう

インストールが済めば、terminal コマンドでシステム既定のシェルを使うターミナルを作成できます。Windows では cmd.exe です。
t = terminal
代わりに PowerShell を使いたいかもしれません。
ps = terminal(Shell=“powershell.exe”);
” Windows Subsystem for Linux(WSL)が動くのか気になりましたが、うれしいことに答えは「はい」です。
wsl = terminal(Shell=“wsl”);
terminal の現在のバージョンは次で確認できます。
terminal.version()
そして次のコマンドで最新バージョンへ更新できます。
terminal.update()
既定では、terminal は MATLAB デスクトップのテーマ(ライトまたはダーク)を使い、MATLAB のテーマが変わると自動的に更新されます。 “solarized_light” のようなプリセット テーマも使えます。
terminal(Theme=“solarized_light”)
利用可能なすべてのテーマを一覧表示するには terminal.themes() を使います。執筆時点では “auto” を含む 12 種類の選択肢があります。
themes = terminal.themes();
fprintf(“%s\n”,themes)
auto
dark
light
dracula
monokai
solarized_dark
solarized_light
nord
gruvbox_dark
one_dark
tokyo_night
catppuccin_mocha
独自テーマを定義することもでき、その方法については ドキュメント を参照してください。

Simulink でターミナルを開く

このターミナルが最初に MathWorks 社内で利用可能になったとき、真っ先に出た要望の 1 つが「Simulink でも直接使えるようにしてほしい」というものでした。Simulink でモデルを開いていれば、次のように実行できます。
t = terminal(Place=“simulink”);
すると、直前にアクティブだった Simulink エディターにターミナルがドッキングされます。
複数のモデルを同時に開いている場合は、名前で特定のモデルを指定できます。たとえば上のモデルを明示的に指定するには、次のように実行します。
t = terminal(Model=“sldemo_bounce”);

MATLAB の terminal をエージェント型ワークフローで使う

terminal がここまでの機能しか持っていなかったとしても、私には十分です。私は何年も MATLAB にフル機能のターミナルを欲しいと思っていて、ついにそれを手に入れました。しかもこの terminal には、さらにいくつかの隠し玉があります。Claude Code のような AI エージェントを使うことを terminal に指示するとMATLAB Agentic Toolkit を自動でダウンロードして設定してくれるので、おそらくこれが最も簡単な構成方法です。
t = terminal(Agent=“claude”);
MCP server binary at “C:\Users\walki\.local\bin\matlab-mcp-core-server.exe” is version 0.8.1 (minimum: 0.10.0). 
MCP server binary not found at:
C:\Users\walki\.matlab\agentic-toolkits\bin\matlab-mcp-core-server.exe
Download it now? (y/n) [y]: y
Downloading MCP server binary… 
Downloading matlab-mcp-core-server v0.10.0 for win64… 
MCP server binary installed at: C:\Users\walki\.matlab\agentic-toolkits\bin\matlab-mcp-core-server.exe
Installing MATLAB MCP Core Server Toolbox…
This may take a minute — please wait. 
MATLAB MCP Core Server Toolbox installed.
MATLAB session shared for AI agent access.
Downloading MATLAB Agentic Toolkit 2026.05.21…
MATLAB Agentic Toolkit 2026.05.21 installed at: C:\Users\walki\.matlab\agentic-toolkits\matlab
Claude Code: MCP server registered (via claude mcp add-json)
Claude Code: Adding marketplace…√ Successfully added marketplace: matlab-agentic-toolkits (declared in user settings) 
Claude Code: installed plugin automotive@matlab-agentic-toolkits
Claude Code: installed plugin computational-biology@matlab-agentic-toolkits
Claude Code: installed plugin image-processing-and-computer-vision@matlab-agentic-toolkits
Claude Code: installed plugin matlab-app-building@matlab-agentic-toolkits
Claude Code: installed plugin matlab-core@matlab-agentic-toolkits
Claude Code: installed plugin matlab-data-import-and-analysis@matlab-agentic-toolkits
Claude Code: installed plugin matlab-software-development@matlab-agentic-toolkits
Claude Code: installed plugin reporting-and-database-access@matlab-agentic-toolkits
Claude Code: installed plugin rf-and-mixed-signal@matlab-agentic-toolkits
Claude Code: installed plugin robotics-and-autonomous-systems@matlab-agentic-toolkits
Claude Code: installed plugin signal-processing@matlab-agentic-toolkits
Claude Code: installed plugin test-and-measurement@matlab-agentic-toolkits
Claude Code: installed plugin toolkit@matlab-agentic-toolkits
Claude Code: installed plugin wireless-communications@matlab-agentic-toolkits
Skills installed (61 symlinks in C:\Users\walki\.agents\skills)
Setup complete.
Agent: claude
Toolkits: matlab
これはターミナル内で claude 自体を起動してくれるわけではなく、その準備をすべて整えてくれるだけです。実際に claude を起動すると、terminal に Agent 引数を渡していたことで、claude は MATLAB MCP Server 経由でこの MATLAB セッションに接続されます。そのため、MATLAB セッション内で何が起きているかを把握できます。
たとえば、エディターでコードの一部を選択して claude に質問すると、選択した内容を「見る」ことができます。
同様に、「MATLAB で今開いているドキュメントは何?」や「今開いているスクリプトを批評して」といったことも尋ねられます。
MATLAB セッションに対するこの認識は Simulink にも適用できます。ここでは Toolkits オプションを使って、両方の Agentic toolkit を利用するようにしています。
t = terminal(Model=“sldemo_bounce”,Agent=“claude”,Toolkits=[“matlab”,“simulink”]);

MATLAB session shared for AI agent access.

Initializing Simulink Agentic Toolkit…
Simulink Agentic Toolkit initialized.

もしこれまでに Simulink Agentic Toolkit をインストールしたことがなくても、これがそれも面倒を見てくれます。
今度はブロックを選択すれば、claude に直接それについて質問できます。

Agentic=true オプション

ここまでは、terminal を起動するたびに、どのエージェントと toolkit を設定したいかを明示的に指定してきました。
t = terminal(Model=“sldemo_bounce”,Agent=“claude”,Toolkits=[“matlab”,“simulink”]);
代わりに、単純に Agentic=true を設定することもできます。
t = terminal(Model=“sldemo_bounce”,Agentic=true);
terminal.agentOptions が設定されていれば、それを使ってエージェント連携の方法が決まります。私の場合は次のようになっています。
terminal.agentOptions
Agent: claude
Toolkits: matlab, simulink
したがって、今の私の環境では、上の 2 つの terminal コマンドは同じ意味になります。
もし terminal.agentOptions が設定されていなければ、最初の起動時にダウンロードと設定のウィザードが実行されます。オプションは次のコマンドでリセットできます。
terminal.resetAgentOptions()

このバージョンのいくつかの制限

現在の terminal はプロトタイプ版で、ほとんどの場合大きな問題なく使えていますが、いくつか指摘しておきたい点があります。長時間の計算などで MATLAB のメイン スレッドが busy だと、MATLAB にドッキングされた terminal は応答しなくなります。これを自分で確認するには、コマンド ウィンドウで次を実行し、MATLAB にドッキングされた terminal を操作してみてください。
% An infinite loop
for i=1:inf;end
terminal で押したキー入力は、コマンド ウィンドウで CTRL+C を押すまでバッファされます。
これは現在の実装上の制限ですが、Simulink にドッキングされた terminal ではこの問題は起きないことが分かっています。
使っているうちに、ほかにも問題や制限に気づくかもしれません。その場合は、GitHub Issues でチームに知らせてください

ご意見を聞かせてください

MathWorks の多くのメンバーは、この MATLAB と Simulink への新しい追加機能にとても興奮しています。皆さんにもそう感じていただければうれしいです。ぜひ感想を聞かせてください。

|
  • print

댓글

댓글을 남기려면 링크 를 클릭하여 MathWorks 계정에 로그인하거나 계정을 새로 만드십시오.