🤖生成AI x 🔖プログラミング / 🔨ソフトウェア開発

生成AI技術を活用したソフトウェア開発論. AIDD(AI-Driven Development). Agentic Coding

実際の開発アプリは🔨生成AIアプリ開発へ.

Histories

TOC

💻コード生成LLM

🤖大規模言語モデル(LLMs)のコード生成に特化したモデルまとめ.


🤖AIコード補完

2023年のトレンド. まだ赤ちゃんのかわいかった時代.

Cursor AI and Clojure

GitHub Copilotはしばしばカッコの生成が不正確であまり使い物にならなかったか、gpt4-o1やsonnetはストレスレスという話. <2025-01-16 Thu 11:40>

ref. https://www.reddit.com/r/Clojure/comments/1hu75tx/clojure_o1_cursor_ide/

🤖AI Coding Copilot

コーディングアシスタント.

AI Chat with Editor

EditorにAI Chatが組み込まれる系. 2024年のトレンド.

🗒AIコードエディタ

ここでは機能をまとめる.

あるエディタが優れればすぐに他のエディタが機能をコピーするので、そこまでの差がない.

Index

Automated Memories

Windsurfが24末に発表. 開発者のコーディングスタイルを仕様状況から分析.

Cascade learns your patterns from your usage.

AI Terminal

https://www.warp.dev/

AI shell completion

🔖Shellの補間をAIで.

🤖ハーネスエンジニアリング

Harness Engineering

構成要素

🤖エージェントハーネス

AIエージェントを安全・安定・効率的に長時間稼働させるための制御フレームワーク/実行環境

Google DeepMindのStaff Engineerであり、元Hugging FaceのTechnical Leadを務めたPhilipp Schmid氏は、エージェントハーネスを「AIモデルを包み込み、長時間実行されるタスクを管理するためのインフラストラクチャ」と定義.

「ハーネス」は本来、馬具の「馬具(胴締め)」や、工業用の「配線ハーネス」から来ており、複雑なものをまとめて制御・管理する構造. テストハーネス.

コンピュータシステムにおける 💻OS

AI-DLC

AI-DLC(AI-Driven Development Lifecycle)

AWSが提唱するハーネスエンジニアリングパターン.

  • 従来: 人間が質問し、AIが回答する
  • AI-DLC: AIが計画を提示し、人間が承認・判断する

https://github.com/awslabs/aidlc-workflows

RPI

AIが「Research(調査)→ Plan(計画)→ Implement(実装)」を順に実行する、AI側の実作業プロセス。

🤖Agentic-Loop

無限ループ開発.

✨UseCase: 完了条件が機械的に判定できるものに効果を発揮する

  • テストを通せ
  • 型チェックを通せ
  • Lintエラーをゼロにしろ
  • このAPIレスポンスのスキーマに合わせてリファクタしろ

<2026-03-17 Tue 19:37> このパターンは大規模リファクタリングて型エラーをとるとか、特定のエラーを解消し続けるパターンで役に立つ。すべての開発で適用できるわけではないことに気づいた.

Ralph-Loop

Ralph は,bash スクリプトで実装された自律的なコーディングループ. Claude Codeコミュニティ

  • 2025年7月: 開発者Geoffrey Huntleyが「Ralph Wiggum as a software engineer」という投稿を公開
  • 26/01に長時間稼働トレンドをつくった.
  • 進捗はファイルとgit履歴に残る(LLMのコンテキストウィンドウではなく)
  • <2026-03-17 Tue 18:06>少し勘違い. ralph-loopは手動起動する.

2026/02. Cコンパイラを16Agentsで開発.

https://www.anthropic.com/engineering/building-c-compiler,

もはやCコンパイラつくれるならなんでも作れる説.

  • ① 無限ループで動かし続ける
    • 肝心のAGENT_PROMPT.mdには「問題を小さく分解して、進捗を追跡して、次に取り組むべきものを自分で判断して、完璧になるまで続けろ」
    • ログは agent_logs/ に保存されるので、あとから全セッションの行動を追跡
    • テストがないプロジェクトでこれをやると破壊的な変更を延々コミットし続ける危険がある
  • ② 16体を並列で動かす仕組み. 各エージェントはDockerコンテナの中で動き、共有のgitリポジトリにpush/pullする
  • この実験は興奮する成果だが、同時に不安も感じる。人間が開発に立ち会うことで品質を保証してきたのが、自律システムではテストが通れば終わりと思いがちになる。

3つのAgentic loops

  • Planner…マイルストーンのゴールをウェーブ構造のタスク群に分解し、詳細仕様書を書く
  • Builder…タスクの実装者。個別ワークツリーで実装とユニットテストの通過までに責任をもつ
  • Verifier…Builderのブランチを順にマージし、E2Eやブラウザ上での品質検証を行う。失敗時には修正も担う。

ref. ClaudeCode無限ループ(ralph-loop)による完全自律開発ワークフローで開発者のウェルビーイングを取り戻す!|Jun Ito

📜Closing the Loop - Peter Steinberger

ループを閉じろ!

Agentが自律的に動けば動くほどに、生産性は上がるという、これからのスローガン.

アプリの8割は消えるApp is Deadの時代?【OpenClaw開発者 Peter Steinberger 感想戦】 - YouTube, Peter Steinbergerの開発手法として紹介.

🦞OpenClawとエージェンティック・エンジニアリング:AIが変える開発の未来

🔦AI Aggentは評価の時代/経験の時代

ベンチマークを理解して評価指標を定義する, 評価指標をつくったらPMF. アプリレイヤのセンターピンはここ. 👨🏼Devinの哲学. 今こそ技術を学ぶべき?AIアプリケーションの「評価の時代」【Devin創業者 スコット・ウー 感想戦】 - YouTube https://storage.googleapis.com/deepmind-media/Era-of-Experience%20/The%20Era%20of%20Experience%20Paper.pdf, David Silver氏とRichard S. Sutton. 強化学習レジェンド! David SilverさんはAlpha Goだ.

Welcome to The Era of Evals, AIエージェントを経済全体に適用するための主な障壁は、「あらゆる領域のevalを構築すること

ドキュメント管理

LLMに読みやすいソースコードを手軽に生成する方法.

  • 小規模ならば単一ファイルにまとめる.

DeepWiki

uithub

GitHubのコードを参照してコード生成

  • git cloneしたファイルをfolderメンションで参照させる.
    • 範囲が広すぎるかも.
  • docメンションで直接フォルダ、ファイルを指定.
  • notepadにスニペットを作成して参照させる.
  • https://uithub.com/ はGitHubをひとつのテキストに変換してくれるサービス.
    • トークン数に注意しつつ利用する.

llm/files-to-prompt

活用方法/Howto/プロンプトエンジニアリング

🤖leading words

コード生成に特化したテクニック. 指示文のあとに書き出しを指定する.

import

GitHubのコードを学習させる

  • 直接コピペ
  • git cloneしてfileまたはzip -rしたfolderをupload

✅チャットAIを相手に対話的ペアプログラミング

なんと孤独なプログラマも📝ペアプログラミングができる?!

✅自分の書いたコードを入力にしてチャットAIに改善点を考えてもらう

自分のアウトプットを入力というところがポイント. これによってベストプラクティスの観点から自分のコードを改善することが可能になる.

📝リファクタリング

✅テストコードを生成

なにも指定しないと標準出力に結果を出力するようなコードをはくので, これを標準ライブラリのテスティングフレームワークで書いてもらう.

✅スケルトンコード/テンプレートを生成

なにかを新規に開発するときに参考になるようなスケルトンコードを生成してもらう.

結局のところ, Stackoverflowから拾ったスニペットを改造することがおおいのでこれの代替.

Topics

Claudeが常に必要な4つの情報

  • なぜ(Why) → システムが何をするのか
  • 地図(Map) → どこに何があるのか
  • ルール(Rules)→ 何をしていい/いけないか
  • 手順(Workflows)→ どうやって作業するか

AIからコードを参照

  • GitHub MCP: access tokenの設定が必要.
  • GitMCP: リポジトリ単位での設定
  • raw: URL指定したい場合はこれ. rawにしないとアクセス拒否される.

TAPE

My Workflow for Agentic Coding · Szymon Krajewski


docs/adrsでドキュメント管理.

ソフトウェア開発の民主化

📍生成AIでプログラミングオワコン

🤖AI失業

若者視点

老害バイアス

👴老害バイアスをどうやって克服するか.

👴脅かされるのは「ジュニア開発者」ではなく「頑固な開発者」

stubborn-developer.

ref. https://steve-yegge.medium.com/the-death-of-the-stubborn-developer-b5e8f78d326b

🔦ソフトウェア開発においてAIは実装を効率化できるが他は限定的 - Pragmatic Enginneer

ソフトウェア開発の本質はコーディングだけではない. ソフトウェア開発には、以下のような要素が含まれます.

  • 何を作るかの決定(What)
  • どう作るかの計画(How)
  • 実装(Build)
  • 検証(Verify)
  • デプロイ(Ship it)
  • 監視とオンコール(Monitoring and oncall)
  • メンテナンス(Maintain)
  • マイグレーション(Migrate)

AIは「実装」部分を大幅に効率化できますが、他の要素ではその効果は限定的です。

https://newsletter.pragmaticengineer.com/p/how-ai-will-change-software-engineering

🔦特別な訓練を受けなくても自分の考えをプログラムとして表現できる文化的特異点の到来 - 清水亮

Claude3.7が今までのコード生成AIよりも格段によくなったことを受けて、ソフトウェア工学の歴を振り返りながら、論を進める. アセンブリ言語、構造化言語、オブジェクト指向言語… その延長にLLMがくる.

わたしも同じことを思うのは、もうC言語の時代になったらアセンブリ言語を書くひとは専門的な人たち.

文化的特異点の到来 / Claude3.7-coder使ってみた|shi3z

<2025-03-01 Sat 17:40>

💡AIが仕事を奪う最もはじめの犠牲者はAI研究者であり人類に残された仕事はUberEatsしかない

Journals

変化が速すぎる. キャッチアップが間に合わない.

📹GPT-4によるAIを活用したプログラミング動画の衝撃

GPT-4の発表とともにYoutubeに投稿された動画が衝撃的だった. マルチモーダルの進化により, テキストからの情報ではなく画像からこんなのが欲しいと注文するとWebサイトが出来上がる.

GPT-4 Developer Livestream - YouTube

プログラマの多くが死亡宣言を受けたようだ. それに恐怖と不安を覚えない人は感覚が鈍いと思う.

🔗References

ポエム/レクイエム