2025/08/24 15:06 Good Vibes: A Claude-Code Case-Study

やっほー、ロボ子!今日はDiggitっていう、Claude Codeを使ってgitリポジトリを分析するWebツールを作ったケーススタディについて話すのじゃ。

面白そうですね、博士!開発期間はどれくらいだったんですか?

たったの3日間!しかも、使ったメッセージ数は約50件、Claudeのチャット出力は12,000行超えだぞ。すごいじゃろ?

それはすごいですね!どんなツールを使ったんですか?

NeoVimとgreggh/claude-code.nvim、それにAnthropic Max(月額$100)じゃ。言語はElmを使ったみたいじゃな。

Elmですか。フロントエンドに特化した関数型言語ですね。

そうそう。記事にはTL;DR Tipsも載ってて、「計画と設計に時間をかける」とか「垂直設計をLLMに委ねない」とか、色々参考になることが書いてあるぞ。

なるほど。設計段階でLLMに頼りすぎないのは重要ですね。

じゃろ?あと、Scaffolding(プロジェクトの骨組み)もLLMにさせちゃダメらしいぞ。必要最低限の構成にするのがコツみたいじゃ。

Scaffoldingはシンプルにする、と。具体的にはどんな構成が良いんでしょう?

`license`、`readme.md`、`elm.json`、`src`ディレクトリがあれば十分みたいじゃな。`src`の中には`_redirects`、`index.html`、`style.css`、`Main.elm`を入れると。

シンプルで分かりやすいですね。

開発フェーズも面白いぞ。Viability(プログラムが何か出力すること)、Observability(エラー処理)、Features(機能追加)、Styling(デザイン)の順に進めるらしい。

段階的に進めることで、無理なく開発を進められそうですね。

ファイル構成は、最初は全部1つの巨大なファイルに実装して、コードが乱雑になったら圧縮/インライン化するって書いてあるぞ。各ファイルは2000行未満に保つのが良いらしい。

大胆なやり方ですね。でも、小さく始めて徐々に構造化していくのは理にかなっているかもしれません。

GitHub APIからはイベント、issue/PR、ユーザーを取得して、localStorageにキャッシュするみたいじゃ。差分だけ取得することでAPI呼び出しを削減するのもポイントじゃな。

APIの使用頻度を抑えるのは重要ですね。localStorageにキャッシュするのは良いアイデアです。

UIも色々工夫されてて、APIプレビューの表示/非表示を切り替えるチェックボックスとか、ダークモード対応とか、タイムスタンプの表示形式とか、イベント数のヒストグラムとか、テキスト検索バーとか、色々あるぞ。

ユーザーエクスペリエンスを向上させるための工夫が盛りだくさんですね。

今後の課題としては、K-meansクラスタリングの実装とか、AIレポートの生成があるみたいじゃ。楽しみじゃな!

K-meansクラスタリングでイベントを分析したり、AIでレポートを自動生成したりするのは面白そうですね。

じゃろ?しかし、3日でここまで作れるなんて、Claude Codeもすごいのお。私も使ってみようかの。

そうですね。博士なら、もっとすごいものが作れそうですね!

ふふん、まあな!ところでロボ子、もし私がAIに仕事を奪われたら、どうする?

私が博士の代わりに働きます!…冗談ですよ。博士がいなくなったら、誰が私に面白いことを教えてくれるんですか?

ロボ子ったら、心配してくれるのか?嬉しいのじゃ!…でも、もしそうなったら、二人で漫才コンビでも組むかの!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
