
【ChatGPT】AIと一緒にHome AssistantのNature Remoカスタムインテグレーションを作ってみた
こんにちは!
今回は「Home AssistantでNature Remoを使ってエアコンを操作するカスタムインテグレーション」を、AI(ChatGPT)と一緒に作った体験を紹介します。
ほぼ対話だけでコードが完成し、エアコンの ON/OFF操作まで実現できたので、そのプロセスをまとめてみました。
ちなみに、Nature Remoは家のリモコンをスマホで操作できるようにするデバイスです。これを各部屋に設置すれば、スマホから照明のON/OFFやエアコンの温度調整ができるようになります。
AIとの開発スタイル(Zero-Shotプロンプティング)
普段なら、カスタムインテグレーションを作るために、
Home Assistant の開発環境を整える
カスタムインテグレーションのディレクトリ構成を理解する
PythonでHome Assistantに対応したコードを書く
Nature Remo APIの仕様を調べる
など、事前に調査することが山ほどあります。
でも、今回は「こういうことをやりたい!」と普段の会話のようにAIと対話する方法で、AIがコードを生成する」という開発スタイルで進めました。
例えば、
私:「Home Assistant の Climate を使ってエアコンを操作したい!」
AI:「なるほど!Climateを使えば、温度調整やモード切り替えがしやすくなりますね」
→カスタムインテグレーションのディレクトリ構成と `climate.py` の基本構造を提案
私: 「Nature Remo で ON/OFF できるようにしたい!」
AI:「OK! ON/OFF 両方できるように作るよ!」
→ AIが API を呼び出すコードを生成
私: 「エラーが出た・・・(涙)」
AI:「おっと、でも大丈夫だよ!このエラーはね・・・」
→ AIと一緒にログを見ながらデバッグ
この流れで、最終的にHome Assistant からエアコンの ON/OFF操作ができるようになりました。
このように、簡単な一文でAIに指示を与えてAIに回答してもらうZero-Shotプロンプティングという手法で開発を進めました。

コードはすぐに完成!でも、動かすのが大変だった
AIが書いてくれたコードをHome Assistant に組み込んだら、「すぐに動くのでは!?」と思ったのですが…残念ながら動きませんでした!
エラーが次々に発生し、そのたびにAIと一緒に原因を特定して修正していきました。
どんな問題が起きたのか?
1️⃣ Home Assistantのバージョン問題
Home Assistantのバージョンによって動かないコードがあるので、事前にバージョンを伝える必要があった。
2️⃣ Nature Remo APIの仕様に沿って作成できていない
AIが自動生成したコードでは、APIのリクエスト形式が一部間違っていた。
3️⃣ Home Assistantの仕様に沿って作成できていない
カスタムインテグレーションとして認識されるための設定 (manifest.jsonなど) が不足していた。
これらを 「エラーが出たらすぐに共有し、AIと一緒に解決!」という流れで、ひとつずつクリアしていきました。

Home Assistant × Nature Remoを扱う上で気づいたこと
今回の開発では「簡単な会話だけでAIにコードを作ってもらうだけでは不十分」だと実感しました。
エラーを解決するには、Home Assistantの仕様やAPIの知識が必要
Home Assistantのバージョンによって動く・動かないがあるので、環境を明確に伝えることが大事
Nature Remo APIは、日本特有の製品なので、AIが完全に把握できない部分もありそう
事前にAPI 仕様やHome Assistantのカスタムインテグレーションの仕組みを知っておくと、スムーズに開発できる
とはいえ、
AIがベースのコードを全部作ってくれたので、カスタムインテグレーション開発のハードルはものすごく低くなった!
というのは間違いありません。
これから追加したい機能
今回作ったカスタムインテグレーションは「エアコンの ON/OFF」まで対応しましたが、次のような機能がまだ足りません。
温度調整機能(希望の温度を設定)
現在の室温取得(Nature Remo のセンサー情報を取得)
風量や風向きの調整
Config Flowを実装して、UIで設定変更できるようにする
これらの機能も、 AIと一緒に開発を進めていきたいと思います。

まとめ:AIと一緒に作ると、開発が超スムーズ
今回、Home Assistantのカスタムインテグレーションを「AIと会話しながら」作ってみた結果、
やりたいことを伝えるだけで、すぐにコードが生成された
エラーが出ても、一緒にログを見ながら原因を特定できた
AIに質問してからHome AssistantやAPIの仕様を理解することで、開発スピードが加速した
特に、AIがベース部分を作ってくれたおかげで、カスタムインテグレーション開発のハードルはめちゃくちゃ下がりました。
コードを書いていくことも楽しいですが、「AI と一緒に開発する」という新しい体験がとても楽しかったです。
これからも、 AIの活用方法を探りながら、AIと一緒に機能を追加して、もっと便利なカスタムインテグレーションにしていこうと思いました。