原文(日本語に翻訳)
claude-cli://open?q=ディープリンクで複数行プロンプトのサポートを追加しました(エンコードされた改行%0Aが拒否されなくなりました)。
原文(英語)
Added support for multi-line prompts in claude-cli://open?q= deep links (encoded newlines %0A no longer rejected)
概要
claude-cli://open?q=スキームを使ったディープリンクで、URLエンコードされた改行文字%0Aが含まれていても正しく処理されるようになりました。これにより、複数行にわたる詳細なプロンプトを外部アプリケーションからClaude Codeに直接渡せるようになります。スクリプトやランチャーアプリなど、Claude Codeと外部ツールを連携させる場面で活躍します。
基本的な使い方
ディープリンクのURLで改行を%0Aとしてエンコードします:
claude-cli://open?q=1行目のプロンプト%0A2行目のプロンプト%0A3行目のプロンプトシェルスクリプトからの例:
bash
# 複数行のプロンプトをURLエンコードして開く
PROMPT="以下のファイルをレビューしてください%0A- セキュリティの問題を確認%0A- パフォーマンスの改善点を提案"
open "claude-cli://open?q=${PROMPT}"実践例
macOSのスクリプトから複数行プロンプトを送る
bash
#!/bin/bash
# 選択中のファイルについて詳細な分析を依頼する
FILE_PATH="$1"
PROMPT=$(python3 -c "
import urllib.parse
prompt = '''このコードを以下の観点でレビューしてください:
1. セキュリティの脆弱性
2. パフォーマンスの問題
3. コードの可読性
ファイル: ${FILE_PATH}'''
print(urllib.parse.quote(prompt))
")
open "claude-cli://open?q=${PROMPT}"Raycastなどのランチャーから使う
javascript
// Raycast Script例
const prompt = encodeURIComponent(
`以下のタスクを実行してください:\n` +
`- gitのステータスを確認する\n` +
`- 変更されたファイルをレビューする\n` +
`- コミットメッセージの提案を作成する`
);
open(`claude-cli://open?q=${prompt}`);HTMLリンクから呼び出す
html
<a href="claude-cli://open?q=プロジェクトを分析してください%0A重点項目:%0A- アーキテクチャの確認%0A- 依存関係の確認">
Claude Codeで分析を開始
</a>注意点
%0Aは改行(LF)のURLエンコードです。改行コードを正しくエンコードしてください- URLの長さには制限があります。非常に長いプロンプトの場合は別の方法(ファイル経由など)を検討してください
- このディープリンクはClaude Codeデスクトップアプリがインストールされている必要があります
- プロンプト内の特殊文字(
&、?、#など)もURLエンコードが必要です