4ヶ月間全部Claudeに任せてみた

329 Views

May 19, 26

スライド概要

AI駆動開発【大阪支部 #11】with フェンリル
LTスライド

https://aid.connpass.com/event/393322/

profile-image

https://becky3.github.io/

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

ダウンロード

関連スライド

各ページのテキスト
1.

4ヶ月間全部Claudeに任せてみた 4ヶ月間全部Claudeに任せてみた ー 開発変遷とworkflowの紹介 ー 1

2.

4ヶ月間全部Claudeに任せてみた 自己紹介 べっきー フリーランスエンジニア スマホネイティブアプリ、UE/Unityを用いたゲーム等でフロ ントエンド開発 昨年 6月頃に Claude で開発を試してみて、その開発能力の高 さから、今後のキャリアに危機感 昨年末で業務契約を終了し、今年から LLM 無職状態でほぼ毎 日 Claude Code に没頭 2

3.

4ヶ月間全部Claudeに任せてみた 今日話すこと 1. 開発した主なプロジェクト 2. AI開発環境の変遷 3. 開発workflow 3

4.

4ヶ月間全部Claudeに任せてみた — 開発した主なプロジェクト 開発した主なプロジェクト 4

5.

4ヶ月間全部Claudeに任せてみた — 開発した主なプロジェクト 開発した主なプロジェクト システム リポジトリ名 内容 ai-assistant Slack 上で Claude が応答する AI アシスタント rag-knowledge 各種情報を蓄積しMCPサーバーとして稼働するRAG article-writer Zennやはてなの記事をAIで生成 共通基盤 リポジトリ名 内容 agent-commons Agents / Skills 等の共通化基盤 shared-workflows 自動実装 workflow 5

6.

4ヶ月間全部Claudeに任せてみた — 開発した主なプロジェクト rag-knowledge — RAG ナレッジ 各種情報を蓄積しMCPサーバーとして稼働するRAG 過去の作業内容や、自身のSNSのつぶやき等をベクトル検索で検索可能 情報取り込み機能:開発ジャーナル / Zenn / SNS / Web / Youtube字幕 / 青空文庫 ベクトル検索(ChromaDB)+ キーワード検索(BM25S) 6

7.

4ヶ月間全部Claudeに任せてみた — 開発した主なプロジェクト ai-assistant — Slack AI アシスタント Slackに常駐する AI アシスタント Claudeのワンショット実行を用いて、Slack上でClaudeと会話 ※ RAGの情報をもとにした回答も可能 Slack 経由でリモートセッション立ち上げ ※ PC であらかじめセッションを立ち上げておく必要がない 7

8.

4ヶ月間全部Claudeに任せてみた — 開発した主なプロジェクト agent-commons — 仕様駆動開発の共通基盤 Claudeのマシン内の共通フォルダ、 ~/.claude/ からリポジトリフォルダを symlink で参照する事で、 各種スキル類を共有しつつ、Gitでも管理 共通化しているもの: Agents / Skills/ Rules / Hooks — Claudeの各種機能 AI-DLC キット — AWS の AI-DLC(AI駆動開発) の手続きを SKILL に落とし込み 仕様駆動開発ルールドキュメント — コーディング規約・git 運用・仕様書スタイル等 ※ ゲーム開発など、仕様駆動で進めづらそうな物にも仕様駆動が適用されてしまうので、 現在はPluginへの移行も検討中 8

9.

4ヶ月間全部Claudeに任せてみた — AI 開発環境の変遷 AI 開発環境の変遷 9

10.

4ヶ月間全部Claudeに任せてみた — AI 開発環境の変遷 AI開発環境の変遷 初期 とりあえず、細かい事考えずにAIに全任せ。 自動実装の仕組みも構築し、Issue作るだけで それっぽいものがどんどん出来上がり「AIすげぇ~」状態 中期 できたものを実際に使ってみると、、、 RAG の検索精度がかなり微妙 記事取り込みを実際に走らせるとアクセス制限がなく、意図せずサイトを攻撃 ※ 実害が出はじめたので、ルールや手順を総見直し 10

11.

4ヶ月間全部Claudeに任せてみた — AI 開発環境の変遷 Zennへ攻撃的アクセス : 1/2 -【 開発中に起こった問題 】 自身のアカウントで記事をとるつもりが、 ClaudeがZennとGitHubのアカウントを誤って利用。 ZennのAPIの仕様で、存在しないアカウントで記事をとろうとすると、 すべての記事の情報を返却する仕様になっていた。 プログラムに記事数制限がかかってなかった為、 5000件のリクエストを発行しZennからブロックされる事態に (幸い1時間でブロックは解けた) 11

12.

4ヶ月間全部Claudeに任せてみた — AI 開発環境の変遷 Zennへ攻撃的アクセス : 2/2 -【 開発中に起こった問題 】 ルールにアクセス制限を設けるように指示した。 仕様書に --no-limit 等の制約を外すオプションをつけるなと強く指示。 しかし、Claudeがこれを実装すると認識してしまい、 次の実行時に --no-limit を用いて再び制限なしのアクセスをして、再ブロック。 3回同じような状態が続いた。 解決 ルールの強化では問題を止められないと判断。 API呼び出し手続きを、別リポジトリで外部ライブラリ化し、 利用側から安易に上限を変更できないようにして上限突破しづらい制約をかけた 12

13.

4ヶ月間全部Claudeに任せてみた — AI 開発環境の変遷 動作確認スキップ -【 開発中に起こった問題 】 実装完了時のQAとしてE2Eテストを行うように指示するも、 単体テストケースがパスしたのでE2E不要などと理由をつけてスキップする問題が発生。 直接指示しても、 サーバーの立ち上げが必要、環境変数の設定が必要、 等と言い訳をして、次のセッションでやりましょうと言ってなぜか自分でやりたがらな い。 解決 QAスキルを作成し、E2Eの環境構築やテストを手順化する事で滞りなく行えるように。 13

14.

4ヶ月間全部Claudeに任せてみた — AI 開発環境の変遷 AI開発環境の変遷 現在 人による確認を増やす事で、巻き戻りの頻度は減ってきたが、 その分、確認時間が多くなってきていて、 1セッション3~4時間かかる事もざら。 仕様駆動開発にちょっと重さも感じてきてるので、 もう少し軽めの作業フローが欲しい。 14

15.

4ヶ月間全部Claudeに任せてみた — 開発 workflow 開発 workflow 15

16.

4ヶ月間全部Claudeに任せてみた — 開発 workflow 開発 workflow 開発は都度スキルを実行しながら進行する。 流れは「導入 - 計画と実装 - 後処理」の3段階 導入 開発の準備 ステップ スキル 内容 復帰 /restore RAG から過去 3 回分のジャーナルをチェック 着手 /start-work Issue の確認と git worktree の準備 16

17.

4ヶ月間全部Claudeに任せてみた — 開発 workflow 開発 workflow 計画と実装 計画を立てて、実装をし、レビューを通しその修正も行う ステップ スキル 内容 計画 /aidlc or /plan-work 実装 (明示的なスキルなし) 計画の流れで実装も進める レビュー code-reviewer + doc-reviewer エージェントによるレビュー /aidlc で実装計画を立てる。バグ対応やちょっとした機能追加 であれば軽量版の /plan-work で対応 17

18.

4ヶ月間全部Claudeに任せてみた — 開発 workflow 開発 workflow 後処理 GitHubにPushして、Copilotのレビューを経て、その修正をした後、マージ ※ Copilot指摘は、Claude観点で出せない指摘を割と出してくれてるので採用中 ステップ スキル 内容 PR 作成 /auto-finalize test → push → PR レビュー待機 /loop + /check-pr Copilot の自動レビュー待機、レビュー内容の確認と対応 マージ後 /merged ブランチ更新、worktree 削除 引継ぎ /handoff 作業まとめのジャーナルを作成し RAG へ投稿。実装中の課題があれば Issue 起票提案 18

19.

4ヶ月間全部Claudeに任せてみた — 開発 workflow 確認を楽にするスキル /triage Claudeが人に対応確認をするためのスキル。 突然質問されても、経緯がわからず答えられない事がほとんど 質問数が増えると、 AskUserQuestion だと答えづらい なので、質問前提などをまとめさせたうえで、 回答候補を付けて、ドキュメントファイルに記載する形式で回答 ※ AI-DLCで用いられてる手法をパクった 19

20.

4ヶ月間全部Claudeに任せてみた 4ヶ月で見えてきたこと ルール文書では AI を制御しきれない CLAUDE.md や Rules でルールを書いても守られない事が多々ある。 ルールを破れない構造やスキルを用いて、LLMの揺らぎに対応する。 ※ スキルだと発動時点で指示を与える形になるので、割と効いてくれる 完全自走させるのは結構厳しそう? AIに仕事を奪われるみたいな危機感もあったが、 ハーネス制御なしには複雑な仕組みを作るのも難しく、 開発量は減ったとしても、ハーネス制御に時間がとられていく。 今後への期待 皆で同じ問題にぶつかりながらそれぞれで対応を模索している状況 早くハーネスエンジニアリングのデザインパターンが固まってほしい 20