日々の開発で得た知見や、実験的な実装、日常を記録するブログです。

2026.09.21

EmDash の CLI と MCP の両方で記事を書かせてみる

EmDash には CLI と MCP サーバーの両方が最初から入っています。blog-cloudflare テンプレートで作ったサイトを Cloudflare Workers と D1 と R2 で動かし、同じ「記事を作って」という指示を CLI と MCP に渡して、公開状態の違い、認証で必要になるもの、不正な入力がどこでエラーになるかの違いを確かめました。

最近の記事

記事一覧
  • GAS のロックは行単位ではない

    GAS の排他制御を確かめたくて、書籍の貸出を記録するウェブアプリを Google Apps Script とスプレッドシートで作りました。LockService でロックを取得していても、その外で読んだ値を判定に使うと更新が 2 回実行されます。同じ本の貸出を 2 回実行させて確かめた結果と、判定に使う値を読む位置の決め方を書きます。

  • Claude Mods でプロンプトキャッシュが切れる前に compact する

    Claude Code のプロンプトキャッシュは 1 時間で切れます。前に書いた Hook は、戻ってきた最初の入力を止めて /clear を促すものでした。新しく入った Claude Mods には `$.clock.every` があるので、離席中にタイマーを動かして、切れる前に自動で compact する mod を作りました。

  • CSS セレクターの選び直しを、Jev に 1 リクエスト $0.0005 で任せてみる

    HTML から決まった項目を取り出すコードは、対象のページの構造が変わると何も取れなくなります。CSS セレクターが一致しなくなった時点で候補をコード側で作り、どれが見出しかを選ぶ判断だけを TypeSafe の Jev に送る仕組みを作りました。架空のニュースサイトの一覧ページと記事ページで動かし、選ばれたセレクターを採用してよいかを前回の件数で確かめた結果と、1 回あたりの入力とコストをまとめます。

  • 今更だけどよくやる Claude Code 活用法

    Claude Code の会話が長くなるときの仕組みを整理し、私が日常的にやっているリセット、模範解答、計画、巻き戻しに加えて、トークン効率を意識した習慣をまとめます。

  • Cloudflare Workers で fetcher = fetch と書くと Illegal invocation になる

    テストのために fetch を差し替えられるクラスを書いたところ、ローカルでは動くのに Cloudflare Workers 上でだけ Illegal invocation で失敗しました。8 通りの呼び出し方を試してエラーになる条件を切り分け、workerd が this を確かめている仕組みと、直し方をまとめます。

タグから探す

すべてのタグ