note ai drive dev memo - kocya-dev/note GitHub Wiki

  • agentic coding
    • 仕様書作成、ルール作成、実装計画を作成
    • 必要なコンテキストの準備
    • タスクの分割
  • test
    • 応用 + prompts.md
    • テスト実装計画作成 -> テスト実装
      • 計画を作成させるのは意図しない実装をさせない目的

開発効率は向上するが、根本的な問題がある

  • 時間がない
    • 簡単に人は増えない
    • 誰かにまかせる?
      • ドメイン知識等のコンテキストを伝えるオーバーヘッド、伝え漏れるロスが発生する
      • 人が増えて全体のコミュニケーションコスト増加、オーバーヘッドも増える
    • 少人数のチームではここにかかるコストが無視できない
      • 時間がない/人が少ない開発チームのケイパビリティを向上させるには?

自律型AIエージェント

  • ローカルでのバックグラウンドでは何故ダメか?
    • 作業の邪魔
    • DB等の操作が競合する
    • 仮想環境、コンテナ等で分離するとパフォーマンスの問題が出る
    • 複数並列動作させるにはスペック不足
    • 開発環境の課題やそのための構築の手間が増えるのは望ましくない

と、いうことで非同期AIエージェント。

  • 概要説明

  • システム構成

  • ワークフロー

  • 人とAIの役割

  • 導入するには = 新規メンバー参入と同じ

  • 実際の作業 = 新たなメンバーと協業するのと同じ

  • 効果

  • AIと共にソフトウェア開発を行うには(自律型AIエージェントをうまく活用するには)

    • コンテキストの整備
    • ソフトウェアエンジニアリングの整備 (既知のソフトウェアのベストプラクティス)
      • 人が開発しやすい環境を同じように用意するべき
  • 任せる範囲と用意しておくと良いもの

    • コード補間、質問
    • Agent Mode (指示) -> copilot-instructions.md, *.instructions.md
    • Agent Mode (PRまで) -> unit test, formatter, linter
    • 自立型AI (Devin, Coding Agent, etc.) -> Unit test, CI
  • ソフトウェアエンジニアリング x コンテキストエンジニアリング

    • 生成AIの進化は早く、ここ1,2年で多様な役割を担わせることができるようになっている
      • どこからどこまでAIに任せるのか?
      • どんな役割を持たせられるか?
      • 継続して検証、そして共有していきましょう