うたカモ技術ブログ

OpenWrt 個人開発 oasis

【個人開発】OpenWrt専用AIアシスタントツール Oasisの紹介

post: 

この記事では私が個人開発しているOpenWrt専用AIアシスタントのOasisについてご紹介します。

OasisはWi-FiルーターなどのOpenWrtデバイスに対してAIとの対話機能を付加した実験的なソフトウェアです。

ただAIとユーザーが会話できるだけでなく、AIがユーザーの要望に従ってOpenWrtを操作することができます。

この記事では組み込み機器自身にAIとの対話・制御機能を付加してみた一例としてOasisをご紹介します。

注意事項

本記事で紹介する Oasisは、OpenWrt設定の変更や特定機能の実行をAI(LLM)が実施できる仕組みを持ちます。

AIがネットワークやWi-Fi制御の変更ができる性質上、使い方によってはユーザーの意図しない操作が実施される危険性があります。

上記の内容を踏まえ、フォーラム・コミュニティでも議論した結果、このOasisは実験的なソフトウェアという位置づけで紹介した方が良いと いう結論になりました。

本ソフトウェアについて

この記事の注意事項にも記載の通り、本ソフトウェアはその性質上、「ネットワーク機器をAIによって操作可能」にする実験的な 側面が非常に強いソフトウェアです。

そのため、現段階でこのソフトウェアはエンドユーザー向けではありません。

当面の間、本ソフトウェアはネットワーク機器×AI(LLM)について調査・研究したいと考えている方を対象ユーザーとします。

つまり、OpenWrtデバイスのような組み込み機器自体にAIとの対話機能・制御機能を実装したときにどのようなことが実現できるのか を探求したい研究者・エンジニアの方向けに本ソフトウェアの導入方法と使い方を紹介します。

どんなソフトウェア?

次の動画のようにAIに話しかけるとOpenWrtの設定を照会して教えてくれたり、変更をしてくれます。

※掲載動画を準備中

ネットワーク機器に対してAI機能を実装する危険性についての議論があります。

インストール方法

以下のコマンドをOpenWrtのコンソール上で実行することでインストールすることが可能です。

root@OpenWrt:~# opkg update
root@OpenWrt:~# wget -O - https://raw.githubusercontent.com/utakamo/oasis/refs/heads/main/oasis_upgrade.sh | sh

アップグレード方法

既にOasisをインストールしている場合は次のコマンドで最新版にアップグレードすることができます。

root@OpenWrt:~# wget -O - https://raw.githubusercontent.com/utakamo/oasis/refs/heads/main/oasis_upgrade.sh | sh

アンインストール方法

次のコマンドで各パッケージをアンインストールできます。

root@OpenWrt:~# opkg remove oasis-mod-tool
root@OpenWrt:~# opkg remove luci-app-oasis
root@OpenWrt:~# opkg remove oasis
root@OpenWrt:~# rm -r /etc/oasis

使い方

OasisはOpenWrtのUI上で利用することができます。

OpenWrtのUIにアクセス後、メニューバー「Network」をクリックすると項目中に「Oasis」が存在しますのでこれを選択すると ページが表示されます。

初回時はAIサービスの設定がありませんので、General Settingタブを表示してAIサービスの設定を実施します。 設定可能なAIサービスは以下の6つです。

  1. Ollama
  2. LM Studio
  3. OpenAI
  4. Google(Gemini)
  5. Anthropic
  6. OpenRouter

各AIサービスの設定例はOasisのGitHub Readmeに記載していますのでご参考ください。

ちなみにおススメのAIサービスはGoogleのGeminiです。2026年現在、無料でAPIキーを発行することができます。

上記のようにAIサービスを設定した後はAIと対話することができます。

できること

ここではOasisができることを紹介します。

システムプロンプトの編集

システムプロンプトはAIに与える指示文です。System Messageタブで編集することが可能です。

作成したシステムメッセージはChat with AIタブの左側に表示されるSystem Messageのプルダウンメニューから選択することができます。

System Messageを選択した上で新規チャットを始めればその内容に従ってAIが応答するようになります。

設定に関する解析

OasisではOpenWrtの設定をAIに提供することで、その設定内容について説明させることが可能です。

現在の設定をAIに提供するにはChat With AIタブの右側に存在するAttach UCI Infoを利用します。

この項目をクリックすると、OpenWrtの設定が表示されますので解析させたものを選んだ上でAIにメッセージ を送ってください。

これによって、ユーザーメッセージの末尾に整形されたフォーマットで指定した設定の詳細な内容が添付されます。

AIによるOpenWrt機能の実行(Function Calling)

OasisはOpenWrtの機能を実行するためにネイティブAIツールをサポートします。

そのため、Function Callingという機能を利用してOpenWrtデバイスの内部機能(AIツール)をAIが認識して実行できます。

インストール直後では、これらのAIツールは全て無効化されています。そのため、AIに認識させたい場合、Toolsタブから 各ツールを有効化してください。

有効化後はAIと対話すれば、適切なタイミングでAIがツールを利用して応答を返すようになります。

注意

一部のAIはFunction Callingをサポートしません。 その場合は上記項目でツールを有効化してもAIはツールを認識して実行することはありません。

また、一度に大量のツールをAIに認識させるとハルシネーションの発生率増加やトークンの大量消費を招く恐れがあります。

そのため、AIに認識させるツールは予め絞ることをお勧めします。どんなツールが使えるかAI自身に 聞いてみたい場合は上記項目中に存在する「get_tool_list」を有効化することをお勧めします。

このツールを有効化した上でAIにどんなツールがあるか聞くことでお勧めのツールを紹介してくれます。

Oasis Mobile Client

Oasisには連携用スマートフォンアプリのOasis Mobile Clientがあります。

OpenWrtのRemote Procedure Call(RPC)機能を使ってAIと会話可能なモバイルアプリです。Androidに対応しています。

AndroidスマートフォンをOpenWrtデバイス(ルーター)のWi-Fiに接続した後にこのアプリを起動してログインすることでAIとチャットすることが可能です。

事前準備

このアプリはOpenWrtデバイスにインストールされたOasisと連携してAIと会話できるようになります。 そのため、OasisのGeneral Settings項目内でAIサービスの接続設定を追加した上でRPC項目のラジオボタン(Enable)にチェック入れる必要があります。

ログイン

OpenWrtデバイスのIPアドレスとユーザーID、パスワードを入力することでログインができます。 予めOpenWrtデバイス側でavahi-daemonが有効あればmDNSによる探索によってIPアドレスを自動設定することも可能です。

AIとの会話

チャット画面のプルダウンメニューからAIサービスを選択することで会話を始めることができます。

会話をする前にハンバーガーメニューのTool List項目を選択して表示されるツールリストからAIに認識させたい機能を有効化することが可能です。

有効になった後はAIに質問を投げかければ状況に応じてツールを使用して回答を生成するようになります。

もし、ツールについて使い方が分からない場合はAIに認識しているツールを聞くことで使い方が分かります。

音声会話モード

画面上部のマイクアイコンをタップすることで音声モードが利用できます。

ユーザーとAIが音声で会話できるようになります。

おわりに

今回は私が開発しているOpenWrt専用AIアシスタントについて紹介しました。

本当はもっと深く詳細に紹介したいところですが、ネットワーク・Wi-Fi制御用の組み込み機器に対して このようなAIアシスタントを搭載することの是非について様々なご意見を頂きました。

そのため、本ソフトウェアは実験的な側面の強いものとし、当面はエンドユーザー向けではないことお伝えします。

今後、このOasisの仕組みについて記事を書きたいと思いますので興味があれば読んでみてください。