Slide 1

Slide 1 text

コーディングルールの鮮度を保ちたい 2026-02-27 kamakura.go #8 @handlename

Slide 2

Slide 2 text

@handlename Hiroaki Nagata Nature Inc. Software Engineer (Backend) & SRE

Slide 3

Slide 3 text

Nature の backend アプリケーション 言語: Go 歴史: 10年くらい 規模: 70万行くらい (vendor/ 除く) Contributor: 100名以上

Slide 4

Slide 4 text

コーディングルール 使ってますか?メンテしてますか?

Slide 5

Slide 5 text

コーディングルール なぜ必要? コード品質担保のため レビューコスト削減のため 最近では AI エージェント に精度高くコードを書かせるため 何をルールとする? プロダクト固有のルールを定義したい 一般的なルールは公開されているもの を参照すればいい † ‡ Nature では主に Claude Code を使っています。 Google Style Guides や Go Code Review Comments など。 † ‡

Slide 6

Slide 6 text

Nature でのコーディ ングルール運用(過去) Notion の利用 全社共通のナレッジマネジメントツール データベースを作ってそこにルールを登録 機能はしていた 使い慣れたツールによる管理 プロパティでカテゴリ分け・ステータス管理

Slide 7

Slide 7 text

Notion 運用時代の課題 1. AI エージェントから参照しづらい Notion MCP を使えば参照は可能だが・・・ 複数ページの取得には複数回の tool 使用が必要 2. メンテナンスコスト 開発メンバーの余力に委ねられていた 開発チームの合意を取る方法が明確ではなかった これらの課題を解決したい。

Slide 8

Slide 8 text

課題1: AI エージェントから参照しづらい ルールを Agent Skill として定義する 「AI エージェントに参照させたいなら、AI エージェントの仕組みに乗っけてしまおう」 Notion のデータベースから Agent Skill (= Markdown) に移行した Skill の説明に従って AI エージェントが適宜参照できるようになった ❯ tree .claude/skills/go-internal-conventions/ .claude/skills/go-internal-conventions/ ├── SKILL.md ├── references │ ├── architecture.md │ ├── comments.md : : │ └── type_design.md └── scripts └── search_conventions.py

Slide 9

Slide 9 text

課題2: メンテナンスコスト (誰がメンテナンスするのか?) レビューコメントをもとに コーディングルールを更新する仕組み 「コードレビューでの指摘をルールに反映させよう」 「人がやるのは大変(できたらやってる)なので AI エージェントにやらせよう」 ルールを更新する Agent Skill を定義 直近 N 日間のレビューコメントを拾ってルールに追加 たとえば、直近7日間のレビューコメントからルールを更新するには: いつも通りコードレビューしていればコーディングルールが更新される /update-go-internal-conventions --days 7

Slide 10

Slide 10 text

課題2: メンテナンスコスト (どうやって合意を取るのか?) ルールの更新を コードレビューする 「コードレビューを使って合意形成しよう」 1. Agent Skill を GitHub Actions で定期実行 2. 作成された Pull Request を開発メンバーがコード レビュー 3. Approve(=合意)されたらマージ(=採用) いつも通りコードレビューしていればコーディングル ールの合意が取れる

Slide 11

Slide 11 text

いつも通りコードレビューをしていればコーディングルールが更新されていく!

Slide 12

Slide 12 text

成果 Notion 運用時代と比べて・・・ 未合意のルール: 13 → 0 合意済みのルール: 14 → 47 暗黙知が明文化され、未合意のまま放置されるルールがない状態を保つ仕組みができた 🎉 † 運用して3ヶ月弱なので増加傾向。時間が経つにつれて徐々に件数が安定してくる、はず。 †

Slide 13

Slide 13 text

まとめ いつも通りコードレビューしていれば コーディングルールが最新化される仕組みを作った レビューコメントをチームの知識として有効活用できるようになった