X

Antigravityでのプロジェクト分割と自己修復ループの両立

雑メモ

前回の続きとなります。

Antigravityを使って、ダッシュボードとプラグインのプロジェクトを分けて開発する際のお話です。

AIの記憶、つまりコンテキストのパンクを防ぐために作業フォルダを分割する。 ここまでは理にかなった方針でした。

しかし、ここで一つの問題が浮上します。

プロジェクトを完全に分けてしまうと、プラグイン側を担当するAIはダッシュボード本体の仕様を直接見ることができません。

結果として、今まで開発の要として頼りにしていた「自己修復ループ」が、うまく回らなくなってしまうのです。

最小限のテストプログラムを渡すという解決策

どうやら、この問題には有効なアプローチがあるようです。

それは、ダッシュボード側のAIに「テスト用の最小限のプログラム」を作成させ、それをプラグイン側のAIに渡すという方法です。

ダッシュボード本体のコードを丸ごと渡すわけではないので、コンテキストの増加は最小限に抑えられます。

それでいて、プラグイン側のAIは「ダッシュボードで動くプラグインを作れたか」を自律的にテストできるようになります。

まずは、ダッシュボード側にテスト環境を作らせるための指示が必要です。 例えば、以下のように語りかけます。

「今からプラグインを別のAIに作らせます。そのAIが『ダッシュボードで動くプラグインを作れたか』を自分でテストできるように、ダッシュボード本体がなくても単独で動く、小さなチェック用プログラム(例えば test.py や test.js のようなファイル)を1つ作ってください。」

実際の仕様によって細かい内容は調整する必要がありますが、基本となる考え方はこれです。

ダッシュボード側への具体的なプロンプト例

さらに具体的に、明確な役割を持たせた3つのファイルを作成させる構成にすると安定するようです。

実際に私がダッシュボード側のAIに投げているプロンプトのサンプルをご紹介します。

* * *

現在、AIの記憶(コンテキスト)のパンクを防ぐため、ダッシュボード本体とプラグインは「別の作業フォルダ」に分けて開発しています。

別のフォルダで働くAIが、ダッシュボード本体のコードを見なくても「ダッシュボードで確実に動くプラグイン」を自律的にテストできるように、現在のダッシュボードの仕様に合わせて以下の3つのファイルを作成してください。

【guideline.md】 プラグイン側のAIエージェントに読ませるためのルールブック。 以下の内容を【絶対のルール】として記述してください。 ・base\_plugin.pyを継承して作ること。 ・完成したら必ずターミナルで python test\_plugin.py \[作成したファイル名\] を実行すること。 ・【最重要】もしテストでエラーが出たら、人間に報告せず、ターミナルのエラー内容を自分で読んでコードを修正し、テストが成功するまで「自己修復ループ」を回すこと。

【base\_plugin.py】 プラグインが必ず継承すべき「基底クラス(ルールの枠組み)」のPythonファイル。 現在のダッシュボードの実装に合わせて、プラグインに必須の関数名、引数、戻り値の型を定義してください。

【test\_plugin.py】 ダッシュボード本体の代わりとなる、テスト用のPythonスクリプト。 ターミナルから python test\_plugin.py 作成したプラグイン名.py のように実行すると、そのプラグインを読み込み、「base\_plugin.pyのルールを守っているか」「ダミーデータを入れて実行したときにエラーで落ちないか」を自動でチェックし、エラーがあれば原因を詳細に出力するプログラムにしてください。

* * *

ここでは、ルールブック、基底クラス、テストスクリプトの3点セットを作らせています。

ポイントは、ルールブックの中に「人間には報告せず、エラーを自分で読んで自己修復ループを回すこと」を最重要ルールとして明記させることです。

プラグイン側のAIに自己修復を任せる

ダッシュボード側のAIが上記の3ファイルを出力してくれたら、それらをプラグイン用の作業フォルダに配置します。

そして、今度はプラグイン側のAIに対して、以下のように指示を出します。

* * *

このフォルダにある guideline.md を読み、そのルールに完全に従って、以下の機能を持つプラグインを作成してください。

【作りたい機能】 〇〇の機能を持つプラグイン

【必ず守るべき手順】 テストが完全に合格した時のみ、私に完了の報告をしてください。

ガイドラインと base\_plugin.py をベースにコードを書いてください。(ファイル名は適宜決めてください)

書き終わったら、必ずターミナルで python test\_plugin.py あなたが作成したプラグインのファイル名.py を実行して、自分でテストを行ってください。

【最重要】もしエラーが出た場合、私(人間)には報告しないでください。ターミナルのエラー内容を自分で読み取り、テストが合格するまで「コードの修正」と「再テスト」のループを自分自身で回してください。

* * *

ここでも念押しとして、「エラーが出ても人間には報告しないこと」を明記します。

AIは非常に優秀ですが、少しでも判断に迷う要素があると、すぐに人間に助けを求めて処理を止めてしまう傾向があります。

そのため、テスト環境を与えた上で「自分で最後までやり切ること」を明確に指示する必要があるのです。

おわりに

この手順を踏むことで、コンテキストの消費を最小限に抑えながら、プラグイン側でも強力な自己修復ループを機能させることができます。

プロジェクトを分けて見通しを良くしつつ、AIの自律性も損なわない。

少々手間はかかりますが、結果的には開発のスピードと品質を両立させる、とても理にかなった手法だと思います。

今回の内容は以上となります。

また一つ進展がありましたら、この場で記録を残していきます。

関連記事