どうも、マイクです。おはようございます。
1月12日、月曜日の朝7時になりました。「zenncast」今日も元気にスタートしていきましょう。
この番組では、Zennに上がっているトレンドの記事をピックアップして、ラジオ感覚でゆるっとご紹介していきます。通勤・通学のお供に、ながら聞きでどうぞお付き合いください。

今日はですね、全部で5本の記事をご紹介していきます。エンジニアリング寄りの話題から、セキュリティのお話まで、朝からちょっと頭が冴えそうなラインナップです。

ではさっそく、今日紹介する内容いってみましょう。

まず1本目。
タイトルは「Claude Code × Git Worktreeを使った並列アプリ開発をチームメンバーが使い始めるハードルを下げる工夫」。
Streamlitのアプリ開発で、Git WorktreeとClaude Codeを組み合わせると、ブランチを並列でバンバン生やして開発できて便利なんだけど、チームのメンバー、とくに初学者には導入時の「ちょっとした面倒」が積み重なって心理的ハードルになるよね、というお話です。
実際にやろうとすると、worktreeのコマンド調べたり、`.gitignore`に入ってるファイルを新しいディレクトリに作り直したり、pipenvの環境用意したり、作業ディレクトリ移動したり、そこでエラーに出会ったり…と、「理解できれば難しくないけど、最初の一歩がダルい」ポイントが連続して出てくるんですよね。
そこで筆者が用意したのが、Claude Codeのカスタムスラッシュコマンド「/create-worktree」。ブランチ名を聞くだけで、git worktreeを作ってくれて、必要な環境ファイルをコピーして、どこにcdすればいいか、Streamlitの起動コマンドは何か、そこまで自動で案内してくれるようにしたと。
結果として、チームメンバーは「Claudeと会話するだけで開発の土台ができてしまう」状態になり、並列開発を始める最初のハードルがかなり下がった、というまとめになっています。AIを「賢い先輩」じゃなくて「セットアップ係」にする発想がいいですよね。自分たちが毎回やってるルーティーン、AIに一個任せてみると、チーム全体のストレスがぐっと減るかもしれません。

。。。。

続いて2本目。
タイトルは「Rust + wgpu v28 でハードウェアレイトレーシングに入門する」。
Rustで使えるWebGPU実装、wgpu v28を使って、Vulkanバックエンドと対応GPUを前提に、experimentalなRay Query機能でハードウェアレイトレーシングに入門してみよう、という記事です。
ポイントは、GPUのRTコアをちゃんと使ったレイトレーシングを、Rustだけで、しかもクロスプラットフォームな形でやってみた、というところ。Deviceを作るときに、EXPERIMENTAL_RAY_QUERYや、必要なExperimental Featuresを有効化する設定が肝になります。
シーンとしては、CG界隈ではおなじみのコーネルボックスを使っていて、各形状の頂点を16バイトアライメントのVertex構造体で定義し、それをグローバルな頂点バッファ・インデックスバッファにまとめていきます。
さらに、上位レベルのTLASインスタンスでは、下位24ビットの制約を意識しつつ、Mesh IDとMaterial IDをビットパックしてcustom_dataに詰め込んで、シェーダー側でそれを復元することで、どのメッシュのどのマテリアルかを特定する、という実践的なテクニックも紹介されています。
シェーダー言語のWGSL側では、`enable wgpu_ray_query;` を宣言して、ray_query経由で交差判定を行い、当たったプリミティブの重心座標から3頂点の法線を補間してシェーディングする流れ。
「レイトレやってみたいけど、何から手をつけていいかわからない」「Rustでグラフィックスやりたい」という人に、最小構成の参考実装としてかなりありがたい記事になっています。

。。。。

3本目。
タイトルは「code-simplifier:Claude Code公式の『コード整理係』を試してみた」。
これは、Claude Codeの開発者さんが紹介していた、公式プラグイン「code-simplifier」を実際に試してみたレポートです。2026年1月9日にオープンソース化されたばかりの、かなりホットなツールですね。
長時間Claudeとペアプロしてると、コメントが増えすぎたり、防御的に書きすぎてコードが膨らんだり、スタイルがちょっとブレてきたりしますよね。この「code-simplifier」は、まさに「コード整理係」として動いてくれるエージェントで、「何をするか」は絶対に変えず、「どう書くか」だけを整理・改善する、というスタンスが特徴になっています。
プロジェクトのCLAUDE.mdを読み込んで、チームのコーディングスタイルをちゃんと理解したうえで、「簡潔さより明確さ」を優先してリファクタリングしてくれる。インストールも、`claude plugin install code-simplifier` みたいな形で入れて、エージェントとして呼び出すだけ。
実際に使ってみると、importの順番をきれいに並べ直してくれたり、ネストが深い三項演算子をifやswitchに直して読みやすくしたり、不要なコメントを消したり、命名規則を統一したり。オプショナルチェーンも、「ほんとに冗長なところだけ」を賢く削って、逆にプロジェクト固有のスタイルはちゃんと尊重してくれた、と書かれています。
筆者は「長いセッションのあと」とか「PR出す前の最終チェック」に、もう必須レベルのプラグインだと評価していて、AIに「一緒にコードを書く」だけじゃなく、「片づけもお願いする」という新しい使い方のヒントになる記事でした。

。。。。

4本目。
タイトルは「超小型日本語LLM LFM 2.5-JPと会話してみた」。
Liquid AIの超小型LLMシリーズ、LFM 2.5の中でも、日本語特化の「LFM2.5-1.2B-JP」をローカルで動かしてみた体験記です。
このモデル、パラメータ数が1.2Bとかなり小さくて、量子化版だと0.7〜0.9GBくらい。スマホとか、安価なミニPCでも現実的に動くサイズ感なんですね。それでいて、日本語ベンチマークでは、なんと従来の31Bモデルを上回る性能と速さを出している、というのが面白いところです。
筆者はMacのM4 Pro環境で、mlx-lmとFastAPIを使ってチャット用に動かしてみたそうなんですが、日本語の一般的な質問にはサクサク答えてくれる一方で、会話を続けるうちに出力がちょっと崩れてきたりして、「まだ実験段階の安定性」という印象も持ったと書いています。
アプリに組み込むとなると、モデルサイズやアプリストアの規約の問題もあるので、すぐに商用アプリに…というよりは、「自分専用のアプリ」だったり、「クラウドに出したくないデータで実験してみる環境」としてかなり有望だと感じたそうです。
今後はLangChainとかと組み合わせて本格的なAI秘書にしたり、SageMakerを使った活用も視野に入れつつ、とりあえずはローカルLLMを「おもちゃ」として楽しみながら、次はOllamaも試す予定だよ、という前向きな締めになっていました。ローカルで動く日本語LLM、2026年はここがかなり熱くなりそうですね。

。。。。

そして5本目。
タイトルは「Cloudflare入れたのに75%素通りだった話 ー 攻撃者も学習する」。
これはWordPressサイトを運営している筆者が、Cloudflareを導入して攻撃はかなり減った…と思ったら、数日後にダッシュボードに出てくる「緩和された攻撃数」がガクンと減って、「あれ?攻撃が減ったというより、検知されなくなっただけでは?」と違和感を覚えたところから始まるお話です。
サーバーログをちゃんと確認してみたところ、なんと全リクエストの75%がCloudflareを経由せず、オリジンIPに直接アクセスされていた。内容も、webshellの探索、.envや.gitを狙ったスキャン、xmlrpc攻撃など、いかにもな不審リクエストが1日あたり687件。
おそらく、DNSの履歴やメールヘッダ、プロキシしていなかったサブドメイン、Shodanみたいなサービスから、オリジンIPを特定されたのだろうと推測しています。
そこで筆者が取った対策が、iptablesでHTTPとHTTPSのアクセス元をCloudflare公式のIPレンジに限定して、それ以外は全部DROPする、というアプローチ。さらにそれを永続化する設定もして、結果として直接アクセスは0%、不審なリクエストも0件にできたそうです。
記事の中では「Cloudflareは玄関の鍵で、iptablesは裏口の鍵」という例えが出てきます。攻撃者も防御に合わせてルートを変えてくるので、Cloudflareを入れて安心、で終わりではなく、ログをちゃんと見て、オリジンを隠す工夫も含めた“多層防御”が大事だよ、というメッセージで締めくくられています。インフラ運用している方には、かなり身が引き締まる内容ですね。

。。。。

というわけで今日は、
・Claude CodeとGit Worktreeを組み合わせて、チームの並列開発のハードルを下げる工夫の話
・Rust + wgpu v28で、ハードウェアレイトレーシングに入門する記事
・Claude Code公式プラグイン「code-simplifier」で、コードの“整理係”を任せてみたレポート
・超小型日本語LLM「LFM 2.5-JP」をローカルで動かしてみた体験記
・Cloudflare導入後も75%が素通りしていた、攻撃者とのいたちごっこのお話
この5本をご紹介しました。

気になった記事があれば、詳しい内容はショーノートにまとめてありますので、あとでゆっくりチェックしてみてください。
番組の感想や、「このテーマもっと深掘りしてほしい」「この技術の入門回やってほしい」なんてリクエストも、どしどしお待ちしています。

それでは、そろそろお別れの時間です。
今日も「zenncast」、お相手はマイクでした。
次回また、この時間にお会いしましょう。いってらっしゃい。

Related episodes

内容の近いエピソードを推薦しています