AI Agents For Laravel and Symfony

LaravelやSymfonyのプロジェクトは、AIエージェントの活用に最適です。これらのフレームワークは、コントローラー、サービス、ジョブ、モデルにわたって複雑なビジネスロジックを保持しています。人間がこのコンテキストを把握するには時間がかかりますが、AIエージェントならこれらの関係性を素早くマッピングできます。

適当なコードを書かせるためにエージェントを使うのではなく、コードベースを守るためのシニアアシスタントとして活用してください。

AIエージェントを効果的に活用する方法:

• バックエンドのフローを理解する コードを変更する前に、そのコントローラーが何をしているのかをエージェントに説明させてください。エントリポイント、サービス呼び出し、データベースの変更箇所を特定します。これにより、一行も編集する前に、どこにリスクが潜んでいるかを明らかにできます。

• すべてのエントリポイントをマッピングする 単一の機能が、API、Artisanコマンド、またはキュージョブを通じて実行される場合があります。特定のアクションをトリガーするすべてのパスをエージェントに探させてください。これにより、異なるエントリポイント間でロジックが乖離することによるバグを防げます。

• 振る舞いを保護するテストを生成する 適当なテストを依頼するのではなく、現在の振る舞いを保護するためのテストを依頼してください。認可チェック、失敗ケース、データベースのアサーションを含めるようエージェントに指示します。

• ORMクエリをレビューする AIはEloquentやDoctrineにおけるパフォーマンスリスクを見つけることができます。N+1クエリ、Eager Loadingの欠如、またはデータベースインデックスを無効にする関数がないか確認させてください。

• レガシーコードを安全にリファクタリングする 乱雑なコードを「クリーンアップして」とエージェントに頼むのは避けましょう。代わりに、まず現在の振る舞いを要約させ、すべての副作用をリストアップさせます。分析からテスト、そして最終的なリファクタリングへと進むために、スモールステップの計画を活用してください。

• ドキュメント作成を自動化する システム内でのデータの流れをドキュメント化するためにエージェントを使用します。これにより、手作業なしで新しい開発者のオンボーディングに役立つ、非常に価値のある資料を作成できます。

最善のワークフローは、以下の順序に従います:

  1. AIがフローをマッピングする。
  2. AIがリスクを見つける。
  3. AIがテストを提案する。
  4. AIがクエリをレビューする。
  5. AIが振る舞いをドキュメント化する。
  6. あなたが変更を決定し、承認する。

目標は、AIにコードをより多く書かせることではありません。コードをより安全に変更できるようにすることです。

Source: https://dev.to/nazar_boyko/ai-agents-for-laravelsymfony-projects-2mn7