Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
個人iOSアプリ開発で使っているClaude Code Hooksの紹介
Search
nkjzm
September 05, 2025
Technology
0
410
個人iOSアプリ開発で使っているClaude Code Hooksの紹介
2025/09/05に、Cluster社内のAI勉強会で使用した資料です
nkjzm
September 05, 2025
Tweet
Share
More Decks by nkjzm
See All by nkjzm
アバター配信アプリ『Vフレット』 でVRM 1.0対応をしてみる
nkjzm
1
280
VRMアバターでギターの弾き語りがしたい!! 『Vフレット』の開発で考えたこと
nkjzm
0
540
『ALTDEUS: Beyond Chronos』で物語に没入できる操作感を実現するマルチプラットフォーム対応の道のり / The path to multi-platform support for immersive storytelling in ALTDEUS: Beyond Chronos
nkjzm
0
360
『ALTDEUS: Beyond Chronos』におけるマルチプラットフォーム向けコントローラーの対応 / Support for multi-platform controllers in "ALTDEUS: Beyond Chronos
nkjzm
0
440
Unityで使える汎用的な ハンバーガーメニューの実装 / UniHamburger
nkjzm
3
1.5k
20時間超の物語をVRで!『ALTDEUS: Beyond Chronos』の制作を支えた”Uranus”の制作過程と機能紹介 [CEDEC2021] / Introduction of ALTDEUS' VR ADV tool "Uranus", CEDEC2021
nkjzm
1
2.5k
withコロナに見るXR業界のイマ! [CEDEC2021] / XR NOW CEDEC2021
nkjzm
3
1.8k
VRプロダクト開発ラウンドテーブル2021
nkjzm
0
1.5k
Unityでチャットに使えるモバイルキーボードの実現
nkjzm
2
5.8k
Other Decks in Technology
See All in Technology
Mosaic AI Gatewayでコーディングエージェントを配るための運用Tips / JEDAI 2026 新春 Meetup! AIコーディング特集
genda
0
150
Amazon S3 Vectorsを使って資格勉強用AIエージェントを構築してみた
usanchuu
3
420
生成AI時代にこそ求められるSRE / SRE for Gen AI era
ymotongpoo
5
2.3k
AI推進者の視点で見る、Bill OneのAI活用の今
sansantech
PRO
2
320
仕様書駆動AI開発の実践: Issue→Skill→PRテンプレで 再現性を作る
knishioka
2
520
Application Performance Optimisation in Practice (60 mins)
stevejgordon
0
120
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
2
800
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
Context Engineeringの取り組み
nutslove
0
210
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
270
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
640
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
5
1.5k
Featured
See All Featured
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
YesSQL, Process and Tooling at Scale
rocio
174
15k
How to train your dragon (web standard)
notwaldorf
97
6.5k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
62
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
250
Paper Plane (Part 1)
katiecoart
PRO
0
3.9k
Design in an AI World
tapps
0
140
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
GraphQLとの向き合い方2022年版
quramy
50
14k
Six Lessons from altMBA
skipperchong
29
4.1k
Exploring anti-patterns in Rails
aemeredith
2
240
Into the Great Unknown - MozCon
thekraken
40
2.2k
Transcript
個人iOSアプリ開発で使っている Claude Code Hooksの紹介 nkjzm 2025年09月05日
なかじ @nkjzm • VRとプログラミング が得意 • 最近将棋のYouTubeチャンネルを始め た Unity /
VR Engineer
今日話すこと • Claude Code Hooksの概要 • 個人開発アプリでの活用について
作っているアプリ 『毎日ジムに行くこと』を コンセプトにした トレーニング記録のアプリ GitHubのContributionsのように トレーニング実績を確認できる 毎日ジム
毎日ジムでの Claude Code 活用 Claude Codeが76%くらいの コードを書いている Claude Codeに書かせる上で コード品質を保つための工夫が必要
→ Claude Code Hooksを紹介
Claude Code Hooksとは • Claude Codeのライフサイクルの様々な時点で実行される ユーザー定義のシェルコマンドのこと • LLMによる実行ではないので、確実に実行される ◦
一方で、CLAUDE.mdに書いた内容は無視されることがある Claude Code フックを始める https://docs.anthropic.com/ja/docs/claude-code/hooks-guide
Claude Code Hooksはいつ実行できる? Hooksを設定できるタイミングはいろいろある(太字はよく使いそうなもの) • PreToolUse: ツール呼び出しの前に実行(ブロック可能) • PostToolUse: ツール呼び出し完了後に実行
• UserPromptSubmit: ユーザーがプロンプトを送信したときに、 Claudeが処理する前に実行 • Notification: Claude Codeが通知を送信するときに実行 • Stop: Claude Codeが応答を終了するときに実行 • SubagentStop: サブエージェントタスクが完了するときに実行 • PreCompact: Claude Codeがコンパクト操作を実行しようとする前に実行 • SessionStart: Claude Codeが新しいセッションを開始するか既存のセッションを再開するときに実行 • SessionEnd: Claude Codeセッションが終了するときに実行 Claude Code フックを始める - Anthropic より
PreToolUseとPostToolUseは、もう少し細かく指定できる( matcher) • Task - サブエージェントタスク (サブエージェントドキュメントを参照) • Bash -
シェルコマンド • Glob - ファイルパターンマッチング • Grep - コンテンツ検索 • Read - ファイル読み取り • Edit、MultiEdit - ファイル編集 • Write - ファイル書き込み • WebFetch、WebSearch - Web操作 Claude Code フックを始める - Anthropic より
実際に開発で使っている Hooksの抜粋(ファイルの編集後) ファイルの編集後に実行 ローカライズキーのバリデータ フォーマッタ( json) フォーマッタ(コード)
Hooksで実行したコマンドの終了コードが 2の時、 stderrをClaude Codeにフィードバックする仕組みがある (一般的なエラー時の終了コード 1ではフィードバックされないので注意) → エラーが発生すると、 Claude Codeが対処をしてくれる状態になる
開発で使っているHooksでは… • フォーマッターの場合 ◦ 基本的にフォーマット実行のみ ◦ フォーマットできないような構文エラーがあるとClaude Codeに通知 • ローカライズキーのバリデーションの場合 ◦ キーの過不足があったらClaude Codeに通知 Hooks実行時のエラーを Claude Codeに通知する フック リファレンス - Anthropic より
Hooksでエラーが出たときの実際の様子 エラー時の stderr (修正のための情報も 併せて出力) Claude Code(LLM)側が エラーを受けて対応をする →自走状態
実際に開発で使っている Hooksの抜粋(応答終了後) PostToolUseと同じ内容を Stop側でも実行している (serenaなど別のツール経由でファイル編集がされることがあるので念のため) 接続中の実機に対してビルド + インストール + 起動を行うワンライナー
Claude Code終了後に、指示した内容が反映されたアプリが起動している状態になる
おまけ:よくミスする操作の工夫 jsonの編集が頻繁に失敗する(構文エラー状態になる)ので、 専用のシェルスクリプトを用意したらミスが減った プロジェクト内のCLAUDE.mdより抜粋
おわり