ネットワークエンジニアにもおすすめしたいAIネイティブなターミナルソフト「Wave Terminal」

Tera TermPuTTY、ネットワークエンジニアの三種の神器の1つのターミナルソフト。
Tera Termのマクロはとても便利で必需品とも言えます。
 
代表的な2つのターミナルソフトの他にも最近は多数リリースされています。
今回はネットワークエンジニアにも活用できそうな、モダンなターミナルソフト「Wave Terminal」をご紹介します。
 
例えば、AI連携機能でターミナルに表示されたコマンド結果からルーティングの差分を簡単に確認することが可能です。
 
 

「Wave Terminal」とは?


Wave Terminalは、AI、ファイルプレビュー、ファイル編集、Webブラウジング、ワークスペース整理を統合した、オープンソースターミナルソフトです。
AIと連携したり、ターミナル画面上でブラウジングやファイル編集が可能です。
 
Windows、MacOS、 Linuxに対応しています。
 

ウィジェット(ブロック)ベースの画面構成

ターミナル、テキストエディタ、ブラウザ、AIチャットなどが、それぞれ独立した「ウィジェット(ブロック)」として画面内に配置されます。
これらを自由に分割したり、配置を変えたりして、自分だけのワークスペースを作ることができます。
VS Codeなどの統合開発環境(IDE)に近い使い心地です。
 
画面イメージはこちら。
 
ターミナルのみの表示も可能。表示するウィジェットは自由にカスタマイズできます。
 

従来のターミナルソフトとの違い


Wave Terminalが他のターミナルソフトと最も違うポイントはAIとの連携機能。
AIネイティブなターミナル」と謳っているだけあり、AI連携がとても便利。
Wave AIというWave Terminalに組み込まれたネイティブのAIアシスタントが搭載されています。
 
ℹ️
AIネイティブなターミナルとして「Warp 」という他ツールもあります。 こちらは、自分で用意したAI(API)を利用するには有償版が必要です。
今回ご紹介するWave Terminalは無料で自分の用意したAIが利用可能です。
 
注意:Wave AIを利用するにはTelemetryを有効化する必要があり、以下の情報が取得されます。
 

画面を切り替えずに、コンテキスト(文脈)を渡せる(コピペ不要)

従来のブラウザ型AI(ChatGPT等)では、エラーが出たとき、その内容をコピーしてAIに渡す必要がありました。
Wave Terminalでは、AIチャットのウィジェットを開いて「このエラーの原因は?」と聞くだけでOKです。 画面を切り替えることなく、今ターミナルに表示されている内容を、AIが自動的に読み取って回答します。
 
AI連携イメージ
AIとの連携イメージです。
画面左がAI操作用のウィジェット、右がターミナルウィジェットです。
 
FortiGateにSSH接続をしてを実行しています。
AIウィジェットで「のバージョンを教えて。」と打つと、ターミナルの内容を読み取り結果を返してくれます。
 
 
ℹ️
本例ではターミナルが1つしか開いていないため、対象ターミナルを指定しなくてもAIはFortigateの情報を読み取ってくれました。
 
ターミナルは複数開くことが可能なので、複数開いている場合は対象のターミナルを明示する必要があります。
「一番右のターミナルの ・・・」とざっくり指定したり、各ウィジェットに が設定されているので、そちらを指定することで明示可能です。
 

ウィジェットの内容にアクセスできる仕組み

AIがターミナルの画面を読み取れる理由は、「Function Calling(関数呼び出し)」を活用した連携にあります。
ユーザーがAIに質問を投げると、Wave Terminalはターミナルの情報を自動的にAIに送ります
さらに情報が足りない場合、
AIは自ら判断して という専用ツールを呼び出します。
これにより、ターミナルのスクロール履歴をさかのぼって、必要なログだけを能動的に取得します。(デフォルトでは過去200行のターミナル出力を取得)
 
AIには以下のコンテキストが送信されます。
 
スポンサード

AI(LLM)モデルの設定


以下のAIプロバイダーに対応しています。
プロバイダーサービス名
openaiOpenAI API
openrouterOpenRouter API
nanogptNanoGPT API
googleGoogle AI (Gemini)
azureAzure OpenAI Service
azure-legacyAzure OpenAI Service
customカスタムAPIエンドポイント
 
設定方法詳細は下記公式ドキュメントをご参照ください。
 
ツールは公式サイトからダウンロード可能です。
 
 
今回はGoogle Geminiを利用する設定を行います。
 
  1. APIキーを設定します。
    1. Google AI Studioで取得したKeyをコマンドラインで設定します。(GUIからも設定可能です)
 
  1. モデルを設定します。 「Settings」→「Wave AI Modes」を設定します。(waveai.json)
 
 
設定は以上で完了です。
 
Wave AIウィジェットの左上でモデルを選択します。
デフォルトで利用するモデルは以下のコマンドで設定可能です。(再起動が必要)
 
 
ローカルLLMの設定方法は後述しています。
 

【デモ】ネットワークエンジニアで活用できるユースケース3選


 
実際の業務を想定した活用方法を3つ紹介します。

1.ログの内容と対処方法を聞く

構築中のネットワーク機器で、見慣れないエラーが出たとき。
Wave Terminal なら、エラーが出たターミナルの横でAIチャットを開き、「このエラーの意味を教えて」と打つだけです。
AIが画面のエラーを読み取り説明してくれます。
 
下記例ではFortiGateのログをターミナルで表示、ログの意味についてAIに聞いています。
 

2.「あのコマンドなんだっけ?」をすぐに解決

「FortigateのVDOM切り替えるコマンド何だっけ?」
そんな、ど忘れしてしまったときも便利です。
ターミナル上でそのままAIに聞けば、今のコンテキストをふまえて、適切なコマンドを生成してくれます。
 

3.ルーティングのDIFFをとる

ネットワークエンジニアにとって、設定や状態の差分(DIFF)確認は日常茶飯事です。
例えば、FortiGateで を実行したとします。
作業後(設定変更等)に を再度実行し、AIにこう尋ねます。
「直近2回のルーティングテーブル結果を比較して、差分を教えて」
 
ターミナルの画面(スクロールバック)に2回分の結果が残っていれば、AIがそれを自動で読み取って比較します。 目視では見落としがちな差分を指摘してくれるので、作業がスムーズになります。
 
下記例ではFortiGateでルーティング確認後にスタティックルートを追加し、再度ルーティングの確認をしています。その後AIで差分を確認しています。
 

セキュリティ要件への対応(ローカルLLMの利用)


ネットワーク機器のコンフィグには、IPアドレスやホスト名などの機密情報が含まれます。 クラウドのAIにそれらのログを送信するのは、セキュリティの観点から難しい場合が多いと思います。
Wave Terminal の特徴の一つは、OllamaなどのローカルLLMを利用できる点です。
 
機密性の高いログを扱うときは、自分のPC内で完結するローカルLLMに切り替えることができます。 これにより、データ漏洩のリスクを抑えつつAIを活用できます。
※前述の通りFunction Callingを利用するため、対応したLLMを利用する必要があります。
 
以下はOllamaでgpt-oss:20bを利用する場合の設定例です。

作業ログ(証跡)取得とシリアルコンソール接続


ネットワークエンジニアの業務において、作業ログの保存とシリアルコンソール接続は必須とも言えます。 しかし、現在のWave Terminal にはTeraTermのようなログ保存機能やシリアル接続機能が備わっていません。
 
次回の記事では、Wave Terminalでログ保存とシリアル接続を行う方法について解説したいと思います。

おわりに


今回は、次世代AIターミナル「Wave Terminal 」の概要と、ネットワークエンジニア目線での使い方について紹介しました。
画面のコンテキストを自動で読み取ってくれる仕組みは、日々の業務効率を確実に上げてくれます。 気になった方は、ぜひ試してみてください。
 
スポンサード
 

 
その他記事