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

Claude Code 珍プレー好プレー

Claude Code 珍プレー好プレー

2026/07/11のイベントClaudeCodeMeetupのLTネタ。
過去のClaudeとのやり取りで発生した失敗と成功の共有です。

Avatar for Shinya Saita

Shinya Saita

July 10, 2026

More Decks by Shinya Saita

Other Decks in Technology

Transcript

  1. Claude Code 珍プレー好プレー 「やらかし」や「ナイス」な事例共有と 「指示の改善」で再現性を上げる話 斉田 真也 Claude Code Meetup

    Osaka / 2026.07.10 Claude Code Meetup Osaka / Claude Code 珍プレー好プレー 斉田 真也 @ Claude Code Meetup Osaka / GitHub: shinya / X: @saita_shinya 1
  2. 自己紹介 斉田 真也(さいた しんや) 株式会社ラクスでバックエンドエンジニア Markdownエディタ Bokuchi を OSSとして個人開発中 趣味:ものづくり全般

    / カードマジック Claude Codeは 公私ともに 使う相棒 登壇は2回目 — 前回は「失敗を資産化する 運用」の話をしました GitHub: shinya / X: @saita_shinya 2
  3. Bokuchi、ぜひ使ってみてください 軽量 Markdown エディター(Tauri製・OSS・無 料) 軽い・速い — Electronより省メモリ 完全オフライン —

    書いたものは外に出ない 数式(KaTeX)・図(Mermaid)・スライド(Marp)対応 このスライドを書いたのも、今まさに投影してるのも Bokuchiです GitHub: shinya / X: @saita_shinya 3
  4. アジェンダ 前半:珍プレー好プレー 珍プレー マジ損損損、ダメすぎて滅 あるある まだギリ笑える部分 好プレー 普通にイイじゃん!な事 後半:真面目な話 Before

    → After 「指示をこう変えたら良くなった」 持ち帰れる再現性 全部 ホントにあった話 です 仕事・プライベート両方の全プロジェクトのログ数百MB近くをクロール 斉田 真也 @ Claude Code Meetup Osaka / GitHub: shinya / X: @saita_shinya 4
  5. 第1幕:珍プレー 味わい深い大失敗 Claude Code Meetup Osaka / Claude Code 珍プレー好プレー

    斉田 真也 @ Claude Code Meetup Osaka / GitHub: shinya / X: @saita_shinya 5
  6. 勝手にpushマン ※前回少し共有した内容 依頼: 「GitHub ActionsのNode 20警告を確認して更新して」 git identity(名前・メール)が 未設定 だった

    Claude、環境変数から 推測した値を -c で渡して そのまま commit → push まで独断で実施 AI的には良かれと思っての行動だが、逐一確認を入れるように以降は変わった 「未確定の情報が現れた時点で、あなたは一度私に相談するべきです。 何故 勝手に作業を進めましたか?」 Claude Code Meetup Osaka / Claude Code 珍プレー好プレー 斉田 真也 @ Claude Code Meetup Osaka / GitHub: shinya / X: @saita_shinya 7
  7. 時空が歪む解説 依頼: 「SQL教材のインデックスの章を書いて」 解説文の中で EXPLAIN について…… 教材の実際の記述 「前ページで出てきた EXPLAIN を使

    うと……」 現実 EXPLAIN は 次のページで初登場(ま だ教えていない) 未来の内容を「前に出てきたよね」と言い張る参照バグ Claudeが時系列をミスることは結構ある気がしてます。 Claude Code Meetup Osaka / Claude Code 珍プレー好プレー 斉田 真也 @ Claude Code Meetup Osaka / GitHub: shinya / X: @saita_shinya 11
  8. 「全部現行です」( ・`ω・´)キリッ 依頼: 「GitHub ActionsのNodeが古いので上げて」 調査の末「使用アクションのバージョンはすべて現行です」と断定 そして、あろうことか 無関係のDockerfileの node:22→24 を更新

    いやいや、 「Node.js 20 actions are deprecated」警告でてますやん 「あなたが正しいです。私の認識が誤っていました。お詫びします」 なお誤って入れたDockerfile変更は「害はなく、むしろ妥当な更新」と ちゃっかり残す提案をしてこれは採用ただなんかドヤ顔されたのはなんか腹立つ。 Claude Code Meetup Osaka / Claude Code 珍プレー好プレー 斉田 真也 @ Claude Code Meetup Osaka / GitHub: shinya / X: @saita_shinya 12
  9. 報告だけ、英語 依頼: ドキュメントの更新を頼む 日英両方のページを丁寧に更新 そして最後の報告 「All done. Here's a summary

    of what I did and the screenshots I need from you.」 「すみません、日本語でいってもらえますか?」 急に英語になるのはなんなん・・・。 Claude Code Meetup Osaka / Claude Code 珍プレー好プレー 斉田 真也 @ Claude Code Meetup Osaka / GitHub: shinya / X: @saita_shinya 14
  10. 壁打ちパートナーとしてナイスな案出し やり方: 「案A / 案B / 案C + 推奨案」を毎回出させる スコープの分離、DB設計、アーキ分割…

    推奨案がそのまま採用される日々 7月は好評価を連発→でもきっとFableのせい 「3問とも推奨案を採用」 「推奨順で進めましょう」 最近は即実装せず、対話をめちゃくちゃする 。意思決定で役立つ。 Claude Code Meetup Osaka / Claude Code 珍プレー好プレー 斉田 真也 @ Claude Code Meetup Osaka / GitHub: shinya / X: @saita_shinya 16
  11. セキュリティ監査、完遂 依頼: 「このリポジトリのセキュリティ監査して」 指摘 5件を検出 → 修正 → ドキュメント再編 →

    履歴一新 まで一気通貫 手順(ブランチ削除・push)まで提示 シンプルにありがとう やる時はやる Claude Code Meetup Osaka / Claude Code 珍プレー好プレー 斉田 真也 @ Claude Code Meetup Osaka / GitHub: shinya / X: @saita_shinya 18
  12. 第4幕:学び Before → After ここからが本番 Claude Code Meetup Osaka /

    Claude Code 珍プレー好プレー 斉田 真也 @ Claude Code Meetup Osaka / GitHub: shinya / X: @saita_shinya 20
  13. 学び① 環境依存は「先に検証させる」 Before 「PDFエクスポート機能つけて」 → ブラウザの知識で window.print() 実装 → webviewで動かず暴走

    After 「対象環境(Tauri / WKWebView) でその API が動くか先に検証してから 方針を出して。 ブラウザで動く ≠ webviewで動く」 「先に一次情報を確認して」の一言が事故を減らす可能性は高い 21
  14. 学び② 未確定情報では「止まって相談」 Before 「Node 20警告を確認して更新して」 → git identity を推測で埋め、 commit

    / push まで独断 After 「commit / push / PR作成など、後 に残る操作の手前で、 未確定の情報が出たら必ず一度止まっ て相談して」 ポイント:影響が外に残る操作 の前に確認を置くようにする。 「環境変数にあった」 「ツールで見えた」は "確定情報" ではない 22
  15. 学び③ 教材は「初学者になりきらせる」 Before 「SQLのクイズ / 解説を作って」 → 答えが問題文に漏れる/未導入の概 念を使う(前方参照) After

    「初学者になりきって自己ジャッジし て。 順番は 説明 → 見せる → 問う。 まだ教えていない概念は使わない。 タイトルや問題文から答えが分かる設 問はNG」 役割(初学者の視点)を憑依させると、品質チェックが自走する 23
  16. 学び④ 「ビルド通った」で報告させない Before 「実装して」 → 型チェック / ビルドを通して「完了 しました」 →

    実は動かない(ログイン不能のバ グ) After 「実装後は必ず主要フローを実際に操 作して、 できればサブエージェントに独立検証 させてから報告して」 「ビルドが通る」≠「動く」 。 実挙動の確認を"報告の条件"に組み込む 24
  17. 学び⑤ 好プレーを「型」で引き出す Before 「いい感じにやっといて」 → 一発実装 → 手戻り/方向性のズレ After 「案A

    / B / C と推奨案を出して。 選んだら、そこからさらに論点を深掘 りして」 即実装させず選択肢で対話する。 この指示の型を最近は基本としている。 25
  18. 学び⑥ 環境に触る操作は「宣言 → 許可」 Before 「表示を確認して」 → スクショのために勝手にGUI操作 → 検証環境が破壊された

    After 「画面・ファイル・アプリの状態を変 える操作は実行前に宣言して、私の許 可を待って。 スクショとアプリ起動は私がやる」 ポイント:コードの外=人間の作業環境に触る操作にも確認をする。 「見たい」と「操作していい」は別の話 26
  19. 学び⑦ テストに「検証していないこと」を言わせる Before 「アップグレードして。テストが通れ ばOK」 → 1056件全グリーン → 5日後、実画面は真っ白 After

    「テストがカバーしていない領域(実 画面・実環境の差分)を列挙して。 主要フローを実際に開いて確認してか ら報告して」 「テスト全パス」≠「動く」 。 Node環境のテストは、webview環境の無罪を証明しない 27
  20. 学び⑧ 断定の前に「実物」 、修正の前に「報告」 Before 「調べて対応して」 → 内部知識で「現行です」と断定 → 異変を見つけて勝手に大捜査 After

    「一次情報(実機の警告・実物の HTML・本体ソース)を確認してから 断定して。 異変を見つけたら直す前にまず報告し て」 これはAI→人間に対してでもそう。 例えば「この行が消えていますが意図的ですか?」と一言聞いてもらうのも大事 28
  21. 学び⑨ 記憶は外部化して、毎回読ませる Before 毎セッション同じ質問に答える → 「リポジトリはPublicですか?」 (もう何度目?) After 「確認済みの事実・決定事項は KNOWLEDGE.mdに書き、

    提案の前に必ず参照して」 セッションをまたぐ記憶は運用でつくる。 前回LTの「失敗の資産化」は、あるある対策としても機能する。 失敗そのものを学ばせる仕組みづくりもある。 29
  22. 学び⑩ AIの成果は、別のAIに疑わせる Before 作った本人に「バグない?」と聞く → 「問題ありません」 (それはそう) After 「評価専用のサブエージェントを立て て、

    悪意あるプレイヤー/初学者/攻撃者 の視点で穴を探して」 別人格でレビュー。人はこれできないけどAIはできる。 自分でやったことを棚に上げてめっちゃ指摘してくれる。 30
  23. 夜中のタイムライン ある夜のログ 時刻 出来事 1:40頃 Finderを勝手に消して検証環境を破壊。バチギレする 直後 私の指摘を聞かずに修正「あなたは私を信用していませんね」 数十分後 ソースを解読、裏取りし真犯人逮捕・一発解決

    その後 この夜を機に KNOWLEDGE.mdを残す運用体制も爆誕 やらかした後に神プレーをすることもある。 違いは 「確かめてから動いたかどうか」 だけだった →すぐに改善できる 33
  24. まとめ:相棒とうまくやる4か条 1. 環境と前提を先に確認させる 「動く?」を実装前に机上だけでも検証 2. 影響が残る操作は止まって相談 確認する瞬間を必ず置く 当たり前っちゃ当たり前 3. 選択肢で対話し、実挙動で検証さ

    せる 案A/B/C+推奨を教えて? 動かしてから報告してね 4. AIの結果をAIで検証 自己申告は信じない。常に疑う。 からの、疑わなくてもいい状態を作る。 指示しても失敗する日もある。反省文書いてもらって、また頑張ってもらう 34