Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AI駆動開発 Claude Codeにベストプラクティクスを守らせたい!

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

AI駆動開発 Claude Codeにベストプラクティクスを守らせたい!

AI駆動開発を行う上でベスプラは最適解が一意ではなく、単純な制約と違い難易度が高いです。
AI駆動開発とは?・ベスプラを守らせる手法・動作検証などを説明しました。

Avatar for 小畠良俊

小畠良俊

April 10, 2026

More Decks by 小畠良俊

Other Decks in Technology

Transcript

  1. ©Mitsubishi Electric Corporation 2 自己紹介 2024年 3月 2024年 4月 2025年

    10月 小畠 良俊(こばたけ りょうしゅん) AXC AI技術基盤開発 アーキテクトチーム 近畿大学 情報系の学部を卒業 競技プログラミングサークル設立ICPCに出場 三菱電機株式会社 入社 現在の部署へ移動 AI Agent基盤システムの開発を担当 24歳
  2. ©Mitsubishi Electric Corporation アジェンダ 3 1. AI駆動開発とは 2. AI駆動開発で気を付けること 3.

    AIにベスプラを守らせる方法 4. ベスプラ適用させるrulesのコツ 5. 検証 6. まとめ
  3. ©Mitsubishi Electric Corporation AI駆動開発とは? 5 設計 コーディング テスト 技術質問 質問回答

    設計 コーディング テスト やりとり 質問回答 設計の補助 モック作成 プロンプト エンジニアリング 従来の開発 AI駆動開発
  4. ©Mitsubishi Electric Corporation AI駆動開発とは? 6 設計 コーディング テスト やりとり 質問回答

    設計の補助 モック作成 プロンプト エンジニアリング AI駆動開発 人間が考える役割に徹する →AIが考えをベースに開発 AIへに入力と出力確認は人間が行う →ハルシネーションを防ぐ AIをベースに開発するので 作業スピードが格段にUP!
  5. ©Mitsubishi Electric Corporation Claude Code には rules という機能がある 11 作業する時は決められた

    ルールを守ります エンジニア ◦◦-rules.md Claude code ドキュメントやコード作成時 決まりに沿って作業してほしいな
  6. ©Mitsubishi Electric Corporation 規則とベスプラ守らせるときの違い 13 Claude Codeが Rulesからベスプラを 理解する ベスプラ

    Claude Codeが rulesを理解する Claude Codeが 作業する 完了 規則 Claude Codeが rulesから規則を 理解する Claude Codeが セルフレビューを行う Claude Codeが rulesを理解する Claude Codeが 作業する 完了 Claude Codeが セルフレビューを行う
  7. ©Mitsubishi Electric Corporation ベスプラ守らせたいときレビューの方が良いと思う理由 14 Claude Codeが Rulesからベスプラを 理解する ベスプラ

    Claude Codeが rulesを理解する Claude Codeが 作業する 完了 Claude Codeが セルフレビューを行う 1.出来上がった全体を評価したい 依存関係・無駄な処理・レイヤー構成など 2.制約と違い最適解が一意ではない コンテキストで最適がわかっていく 3.ルール同士が衝突する 可読性 vs パフォーマンスなど
  8. ©Mitsubishi Electric Corporation 15 Claude Codeが Rulesからベスプラを 理解する ベスプラ Claude

    Codeが rulesを理解する Claude Codeが 作業する 完了 規則 Claude Codeが rulesから規則を 理解する Claude Codeが セルフレビューを行う Claude Codeが rulesを理解する Claude Codeが 作業する 完了 Claude Codeが セルフレビューを行う フェーズ 担当部分 役割 生成時ルール 禁止事項・基本構成 ガードレール フェーズ 担当部分 役割 レビュー 順序・効率・設計の良し悪し 最適化・改善 規則/ベスプラの違い
  9. ©Mitsubishi Electric Corporation パフォーマンスを考慮する 適切にログを出力する ①曖昧な言葉は禁止 17 パフォーマンスを考慮する 適切にログを出力する Pythonではprintを使用してはならない。loggingを使用すること

    Dockerではpackage.jsonを先にCOPYしなければならない 明確な記載 Yes/Noで判断できる形 曖昧な理解 AI側に品質が依存してしまう 関数は50行以内にする ネストは3階層以内にする
  10. ©Mitsubishi Electric Corporation ②順序・構造まで書く 18 ◦◦-rules.md キャッシュを考慮する package.jsonを先にCOPYすること npm installはCOPY

    . . の前に実行すること COPY . . は最後に配置すること どう書くかまで固定する 曖昧な理解につながる
  11. ©Mitsubishi Electric Corporation ③レビュー前提で設計をさせる 19 rulesの規則を守って コード作成して! rulesのベスプラ通りに なっているかレビューして! rulesの規則を守って

    コード作成して! rulesのベスプラ通りに なっているかレビューして! 作業がレビュー前提である事を予め明記する
  12. ©Mitsubishi Electric Corporation ④優先順位を書く 20 ◦◦-rules.md # 優先順位 1. セキュリティ

    2. 正確性 3. パフォーマンス 4. 可読性 開発状況に合わせて何を優先するべきか 提示するとAIが悩まない
  13. ©Mitsubishi Electric Corporation 21 Hadolint Ruff OWASP Kubernetes Amazon Web

    Services ShellCheck 読み込み不可増 多 ⑤適用ルールを絞る 量が多すぎると無視される
  14. ©Mitsubishi Electric Corporation 27 5.最終確認 かなり良くなった! マルチステージ分離できてる COPY順序OK(キャッシュ効く) npm ci

    / --omit=dev 正しい 非rootユーザー(Alpine方式) distのみコピー(サイズ最適化) HEALTHCHECKあり