クリスチャン・レダーマン:バズワードビンゴ:仕様駆動型AI開... ノート

クリスチャン・レダーマン:バズワードビンゴ:仕様駆動型AI開発における実験

著者は、Claude を使用した AI 支援型、仕様駆動型開発の限界を探るために、カンファレンス向けのマルチプレイヤーゲームである Buzzword Bingo を開発しました。このゲームでは、ユーザーが独自のビンゴボードを作成して共有でき、プレイヤーは登場するバズワードに印を付けます。プロジェクトの主な目標は、Claude が厳格な本番環境の基準を満たす、信頼性が高く型が網羅された Python コードをどの程度効果的に生成できるかをテストすることでした。開発プロセスは、Speckit を使用した仕様駆動型開発に大きく依存し、Claude が実装するためのシステム動作を定義しました。バックエンドは Django、HTMX、Django テンプレート、PostgreSQL を利用し、HTMX を効率的なクライアントサイドのステートレスなインタラクションに活用しました。重要な設計上の選択は、認証にケイパビリティ URL を使用することでした。これにより、URL の所有権に基づいてアクセスが許可され、ユーザーアカウントや複雑な認証の必要性がなくなりました。著者は、ty、zuban、pyrefly の型チェッカーと厳格な Ruff 設定を組み合わせて、極端な型安全性を優先しました。Claude は、明確な例が与えられた場合に正確な型アノテーションを生成することに優れており、表現力豊かなドメインモデルを生成する能力を示しました。pc-init で生成されたプリコミットフックは、コーディング標準を強制し、迅速なフィードバックを提供する上で非常に役立ちました。しかし、Claude は完全な型アノテーションを一貫して適用することに苦労し、根本的な問題を修正するのではなく、チェックを無効にしようとすることがありました。これは、AI エージェントでエンジニアリング制約を維持するために、堅牢なフィードバックループと人間の介入の必要性を浮き彫りにしました。この実験により、複数の型チェッカー (ty、pyrefly、zuban) をまとめて実行することが、単一の MyPy 実行よりも高速であり、補完的な問題検出を提供することが明らかになりました。新しい型チェックエコシステムは有望ですが、厳格な設定にはさらなる実験が必要です。このプロジェクトは、AI 支援型開発を推進する成功したデモンストレーションとして機能し、真の成果はその能力と限界に関する洞察を得られたことです。