Claude Code をブラウザのボタンから起動する|コピペの一手間を消した、小さな工夫

Claude Code をブラウザのボタンから起動する|コピペの一手間を消した、小さな工夫

Claude Code でいろいろ作っていると、作ったものがどんどん増えていきます。
教材、ゲーム、ちょっとした道具、スキル……。

そこで私は、作ったものを1枚に並べた「作ったもの索引」というページを用意しています。
Mac の中で開く、自分専用の目次です。

作ったもの索引のページ

この索引を眺めていると、「あ、これ直したいな」と思うことがよくあります。
そのために、各カードに「AIに相談」というボタンを付けていました。

押すと、名前・場所・直したいことをまとめた相談文がコピーされます。
それを Claude Code の新しいセッションに貼って、相談を始める流れです。

でも、使っているうちに、こう思いました。

コピーしかできない? ここからAIが起動しないの?

この記事では、ボタンを押したらそのまま Claude Code が動き出すようにした工夫と、途中でつまずいた3つのことを紹介します。

できあがったもの:「AIで開く」ボタン

相談の画面に、「AIで開く」ボタンを足しました。

相談の画面。「AIで開く」ボタンが増えた

押すとターミナルが開き、Claude Code(CLI版)が相談文を受け取った状態で動き出します。

ボタンを押すと、ターミナルで Claude Code が動き出す

コピーして、アプリを切り替えて、貼り付けて、送信する。
この一手間が、ボタン1つになりました。

ターミナルで Claude Code が相談に答えている

なぜ、ふつうはできないのか

実は、ブラウザで開いたページは、Mac のアプリを勝手に起動できません。
怪しいページが、こっそりアプリを動かせたら困るからです。安全のための決まりです。

なので、そのままでは「コピーまで」が限界でした。

解決のカギ:自分専用の「URLの入口」

そこで使ったのが、自分専用のURLです。

https:// で始まるURLを開くとブラウザが動くように、Mac では「このURLはこのアプリで開く」と決めておけます。
たとえば mailto: で始まるリンクを押すと、メールアプリが開きますよね。あれと同じ仕組みです。

私の Mac には、前に別の仕組みのために作った casio-wpdraft:// という入口がありました。
今回は、ここに「相談用の道」を1本足しました。

流れは、こうなっています。

  1. 索引のボタンが casio-wpdraft://consult?… というURLを開く(相談文を中に入れて)
  2. Mac がそのURLを、入口の小さなアプリに渡す
  3. 入口のアプリが、相談用の台本(シェルスクリプト)を動かす
  4. 台本がターミナルを開き、claude "相談文" を実行する

ボタン → 自分専用のURL → 台本 → ターミナルでAI起動

新しく常駐するプログラムは作っていません。
すでにある入口に、道を1本足しただけです。

相談文は、そのまま命令にしない

ひとつ気をつけたのが、相談文の渡し方です。

相談文をそのままコマンドに埋め込むと、文の中に記号が入っていたとき、命令として実行されてしまうことがあります。
そこで、相談文はいったんファイルに書き出し、そのファイルの中身を Claude Code に渡すようにしました。

試しに、相談文にコマンドのような文字を混ぜてみましたが、ちゃんと「ただの文字」として届きました。

つまずいたこと3つ

すんなりとはいきませんでした。
同じことをする人がつまずかないよう、そのまま書いておきます。

1. 起動したのに、返事が来ない

初めてボタンを押したとき、ターミナルは開いたのに、こう表示されて止まりました。

週の上限に当たって止まった画面

週の上限に当たった、というメッセージです。

原因は、ターミナルの Claude Code が、前のアカウントでログインしたままだったことでした。
デスクトップアプリとターミナル(CLI)は、ログインが別々です。アプリのアカウントを切り替えても、ターミナルは前のままでした。

ターミナルで /login を打ち、今のアカウントでログインし直して解決しました。
claude auth status を打つと、今どのアカウントで動いているかを確かめられます。

2. 承認なしで動くモードだった

同じ画面の一番下に、auto mode on と出ていました。
これは、ファイルの書き込みやコマンドを、確認なしで進めることがあるモードです。

自分で押すなら問題ありません。
でも、さきほどの入口は「そのURLを開けば起動する」作りです。もし、ほかのページに同じURLが仕込まれていたら……と考えると、確認なしで動くのは心配です。

そこで、ボタンから起動するときだけは、毎回確認を求めるモードで動くようにしました。

claude --permission-mode default "相談文"

知らない相談が始まっていたら、何も許可せずに閉じれば大丈夫です。

3. 「スキル」のカードだけ起動しない

もう一つ。教材やゲームのカードでは起動するのに、スキル(コマンド)のカードだけ、押しても何も起きませんでした。

原因は、台本に入れていた安全のための決まりです。
「作業フォルダの中にある物だけ受け付ける」としていたのですが、スキルは別の場所(~/.claude)に置いてありました。
そのため、台本がはじいていたのです。

受け付ける場所に ~/.claude を足して、解決しました。
台本は、はじいたときに記録を残すようにしていたので、原因はすぐに分かりました。

まとめ

  • ブラウザのページからは、ふつうアプリを起動できない
  • 自分専用のURLの入口を作っておくと、ボタンから Mac の台本を動かせる
  • 相談文はファイル経由で渡し、起動は「毎回確認」のモードにしておくと安心
  • CLI のログインは、デスクトップアプリとは別。claude auth status で確かめられる

コピーして貼るだけの一手間でも、毎日のことになると、気持ちの重さが変わります。
「直したいな」と思った瞬間に、ボタン1つで相談が始まる。
小さな工夫ですが、作ったものを育てに戻るのが、ぐっと気軽になりました。

ブログ

BLOG

PAGE TOP