カテゴリー
Web開発者向け
Web開発者向けに関する記事を公開しています。
小さなアプリで Cloudflare の監査スキルを手順どおり回すと /security-review の 30倍の費用
Cloudflare の security-audit-skill を約 170行の Workers のアプリで /security-review と同じモデルで比べました。主な脆弱性は両方が毎回挙げ、手順どおりに回すと費用は約 30倍、素のままなら約 4倍でした。
WordPress と EmDash の差は好みではなくプラグインの作りにある
WordPress から EmDash に乗り換えるメリットはあるのか。どちらも同じことができるなら好みの問題ではないのか。9 サイトを 1.1 まで運用した私の答えは、差は好みではなく、管理者なら誰でも本番のコードを触れる WordPress の作りにある、です。エコシステムの未成熟と、国内に始める場所が無いことまで含めて書きます。
Remix 3 を Next.js と比べたら、DB 同梱は本当で圧縮は自分で入れる
Remix 3 と Next.js 16 で同じ問い合わせフォームを作って比べました。DB の同梱と DB を読むページの速さは本当でした。圧縮は既定で切れていて、入れると JS は Next.js の 3分の1 になりますが、既定の強さのままだと処理量が落ちます。
npm を止めるだけなら Claude Code の mod は要らず hooks で足りた
CLAUDE.md の「npm ではなく pnpm を使う」を Haiku 4.5 に守らせるやり方を、Claude Code の mod と hooks で 5 通りずつ試しました。npm を止める点ではどれも hooks で mod と同じ結果になり、試した中で mod にしかできなかったのは、書き換えた記録を画面に出し続けることでした。
AWS の判定モデル Strands Decider 2B はコードレビューのバグ探しに使えない
AWS の Strands チームが公開した判定モデル Strands Decider 2B に PR の差分からバグを当てさせました。既定の設定では長い差分の後ろを黙って捨て、設定を上げた伸びは大きい PR 1 本を丸ごと高く付けた結果でした。
Clef はリンク正誤判定なら Sonnet 並み、バグ探しには使えない
Cloudflare の判定モデル Clef を、自サイトの内部リンク関連度チェックとコードのバグ探しに使い、同じ問いを Claude Sonnet 5.5 にも投げて比べました。内部リンクでは Sonnet 5.5 と同じくらい当たり、費用は約 16分の1 でした。バグ探しでは、Clef が怪しいとした所の当たり方は無作為に選んだ場合とほとんど変わりませんでした。
結果がほぼ同じ判定に Claude は Jev の 70倍以上の費用がかかった
日本語の技術ブログ 137本の内部リンク関連度チェックを、同じ記事・同じ情報・同じ正解で Jev と Claude Sonnet 5.5 に解かせました。精度の差は小さく、費用は 70倍以上違いました。このチェックなら Jev で足ります。
Jev 互換をうたう無料モデルを内部リンクの判定で試したら、使い物にならなかった
Jev 互換をうたう無料の判定モデル Laya と Jeff を手元の CPU で動かし、ブログの内部リンクの判定に使えるか試すと、2つともモデルを使わないタグの一致にも負け、使い物になりませんでした。Laya は読んでいる記事で、Jeff は選択肢の並び順で点が決まっていました。
AI で動画を送るだけで YouTube に上がる仕組みを作る
ブラウザから素材を送ると、Claude Code がクラウドで動画を編集し、公開予約を付けて YouTube に上げる仕組みの作り方です。筋トレ動画を例にしていて、私がやるのは画面に出す数字の確認と、仕上がりに OK を出すことだけです。
Dependabot の PR の差分では乗っ取りを見抜けない
Dependabot の PR は CI が通れば merge してよいのか。乗っ取られた版は差分に出ないので、新しすぎる版を入れない、install で依存のコードを動かさない、Actions を SHA で固定する、の 3つで守り、major だけを読んでいます。
D1 を編集できる AI エージェントは、隠した EmDash の鍵を自分で作れる
AI エージェントには鍵をプロキシで差し替えて渡し、実体を見せていません。ところが D1 を編集できるエージェントは、EmDash の API トークンを自分で発行できます。EmDash の API トークンは隠すのをやめてスコープを絞って使い捨てにし、隠すのはそれ以外の鍵にしました。
LLM に台本を判定させたら 12本すべて通した
生成した台本を LLM に判定させると 12本すべて通し、私が採用したのは 2本。判定のモデルを替えても私の選択には近づかず、通る台本が出たのは、生成の手前で素材を絞り、判定に通す例と落とす例を書き込んでからだった。
404 監視のボット除外ルールが、公開中のページを隠していた
404 の監視からボットを除外するルールは、間違えて実在のページを隠しても何の知らせも出ません。件数の減り方では気付けないので、サイトマップの全 URL をルールに通し、ボット扱いになるページが 0件かを確かめています。この確かめ方で、前からあったルールが公開中のページを隠していたのが見つかりました。
EmDash は Workers の無料プランだと保存のたびに CPU 上限を超えた
Cloudflare Workers の無料プランで EmDash を動かすと、管理画面の保存と公開は成功した回も含めて毎回 CPU 上限の 10ms を超え、ときどき打ち切られました。既存の顧客は無料のまま移して問題が出たら払い、新規の顧客は最初から有料プランで見積もります。
技術ニュースの自動収集を月 1ドル未満でも止めた
技術ニュースを集めて Slack に毎朝届ける仕組みを、個人で 7か月動かしました。頻度や体裁を直しても読まなかった経験から、直すか止めるかの決め方を書きます。決め手は費用ではなく、読んだ後にする行動があるかどうかでした。
サブエージェントに作業を渡す親のエージェントには、コマンドを叩かせない
親のエージェントの誤診や見落としは、親が自分でコマンドを叩いた場面に集まっていました。2日分の作業記録から、親は判断と確認だけにして手を動かす作業は最初から渡す分担に変えた話です。
Claude Code のクラウドセッションに持ち込める鍵と持ち込めない鍵
Claude Code のクラウドセッションでは、鍵をセッションの中に置かず、通信の途中でプロキシが差し込みます。静的なトークンはそのまま動き、AWS の署名も専用の型で通りますが、1時間で切れるトークンと手元のログイン状態は持ち込めません。Node の fetch で鍵が付かなかった落とし穴と合わせて、鍵の型ごとに分けました。
Docker Sandboxes から Claude Code に移った決め手は指示の出し方
AI エージェントに作業を配る指示役のエージェントを、Docker Sandboxes から Claude Code のクラウドに移しました。決め手は鍵や料金ではなく、配る形がそのまま動き、話題ごとに分けた指示をスマホからでも出せることでした。
Claude Code に YouTube 動画編集を任せた
60分の定点長回し(カメラを固定して撮りっぱなしにした)筋トレ動画をフォルダに置くと、Claude Code が BGM・重量表示・サムネイル・タイトルと概要欄まで作った。私が返した注文は3回で、4分27秒の動画に仕上がった。
Claude Codeのルーチンで記事1本にAPI定価1,000円以上かかった
話題集めから検証、下書きまでを毎朝 AI エージェントに回させる仕組みを作りました。初回の 1本は正確でしたが、誰が試しても同じ結果になる記事で、使ったトークンは API の定価に換算して約 7.7ドル(1,000円以上)でした。2回目を待たずに止めた理由と費用の内訳です。