天の月

ソフトウェア開発をしていく上での悩み, 考えたこと, 学びを書いてきます(たまに関係ない雑記も)

Claude Code Deep Diveに参加してきた

https://cartaholdings.connpass.com/event/360380/

こちらのイベントに参加してきたので、会の様子と感想を書いていこうと思います。

会の概要

第一線でAI Coding Agentを使い込むエンジニアたちがClaude CodeにDeep Diveするイベントです。

会の様子

hiragramさんの発表

最初に.~/.claude/projectsの構造に関する話があり、シンプルな会話が行われているときに起きているJSON Lines形式の情報の紹介があり、ここ最近はコストがみえるPropertyがいつの間にかなくなっていたという話がありました。

その後は、複雑なタスクを指示したときにサブエージェントが何をどういう風に実行しているのか?という話があり、Slash commandや組み込みコマンドの紹介が出ていました。

パネルディスカッション

講演のあとはsuzu_vさんとt-wadaさんとmizuchiさんとhiragramさんでパネルディスカッションがありました。以下、内容を常体で記載していきます。

Claude Codeの使い方

  • ADRの作成によく使っている
  • 色々あるが、実装の下調べやアイデアの壁打ち相手として使っている
  • リファクタリングなどは幾つか案があるものなので、それを並列で検証するときに使っている。なお、検証するときはタスクの指示はスコープを少なめにする(Claude Codeは放っておいてもタスクを分割するということはない。分割の粒度まで細かくして自己プロンプティングのようなものをしている)
  • E2Eから読むようにしていて、内部のデバックなどはなるべく読まないようにしている
  • AIと共有する際に自動テストを書くとレビューできなくなる(どばっとテストが出てきてしまう)ので、単機能のRed/Green/Refactorを指示するようにしたり、テストケースの雛形を1件だけ自分で作るようにしている
  • 初期ボイラープレートから破綻するまでの速度がすごい速いので、破綻する前提で仕事を進めるようにしたりしている
  • Figma公式のMCPには期待している。FigmaのIssueを読み込んでもらうようにしているが、まだボタンの配置が指示とずれることはあるので、HTMLだけ自分が書いてCSS装飾はFigma見てみたいな感じにしている
  • 今の技術的制約なのかもしれないが、視覚的な解釈能力とかリッチドキュメントでドキュメントを使っている会社は不利になっている印象がある
  • Claude Maxは10万円くらい使っている人たちもいるし、コンテナ形式みたいなやり方(いいから全部作れって言って後ですべて捨てるみたいなことが平気にできる)もできるようになっている

Claude Codeの限界

  • 根本的な話をすると、プログラミング言語自体がAIフレンドリーになると良いと思う(素朴な弱点としてワードカウントができないとかがある)
  • コード重複をヒューリスティックに検知してゴリゴリコードを消すようにしている(意味的に異なるかどうかの判断はAIがやるし割としっかり残せる印象がある)
  • bashツールが権限強すぎるのでデータポイズニングされたときの対策が急務だと思っている
  • 普通それ知っているならこれできるよね、が通じないので、再現性のあるツール開発や人間が当たり前にやっているところをAIに教えていくというのが大切。明確な数字を与えるというのはすごく大事で、このラインを引くのはドメイン知識になってくる
  • 非機能要件や保守性に対するリフレーズなどが必要

「良いコード」の指示

グランドルールはCLAUDE.mdに基本書くようにしようと思っているが、ばっとAIが書いたことに対して自分がレビューするみたいなことをしている。

会全体を通した感想

めちゃくちゃわかるなーと思う話が多かったのですが、未来を見据えるというよりも今とにかく使い倒すみたいな感覚が強かったところは特に印象的でした。

これまで自分がやってきたことをどうAIにやってもらうのか?みたいな部分で考えることも元々は多かったのですが、話を聞いていて、リソース的な観点で到底採用できなかったやり方を実行してしまうというのもあるんだなあというのは聞いていて思いました。