結論
最初にやること:OSのターミナルでcat docs/tasks/profile-edit.md | claude -p "この仕様を実装し、検証結果を最後に出力して"を実行します。
長文指示はUTF-8のMarkdownへ保存し、標準入力でprint modeへ渡すとシェルの引用符問題を避けられます。
macOS、Linux、PowerShellのいずれでも、Claude Codeはstdinとコマンドラインの補足指示を組み合わせて処理できます。
対話しながら編集したい場合は、ファイルを@メンションするか外部エディタ入力を利用します。
実行場所:OSのターミナルで実行します。
# macOS / Linux
# ターミナルで実行:非対話モードで単発処理を実行
cat docs/tasks/profile-edit.md | claude -p "この仕様を実装し、検証結果を最後に出力して"
# PowerShell
# Claude Codeの対話画面へ入力:作業条件または依頼内容を指定
Get-Content .\docs\tasks\profile-edit.md -Raw |
# ターミナルで実行:非対話モードで単発処理を実行
claude -p "この仕様を実装して"
具体的な手順
指示書をUTF-8のMarkdownで保存する
対象、制約、受入条件をファイル内で分ける
秘密鍵や本番資格情報を貼り付けない
print modeではturn数と予算上限を検討する
対話モードでは@docs/tasks/profile-edit.mdと入力すると、対象ファイルを明示して参照できます。
毎回使うワークフローなら単なるtxtではなく.claude/skills/<name>/SKILL.mdへ移し、Skillとしてバージョン管理します。
実践プロンプト
プロンプトファイルに保存するテンプレートです。
入力場所:Claude Codeの対話画面へ貼り付けます。
プロフィール編集画面を追加する。
- src/components/ProfileEdit.tsx
- src/api/user.ts
- DBスキーマ
- 認証方式
1. 名前と自己紹介を更新できる。
2. 失敗時に既存のエラーUIを使う。
3. npm test -- profile が成功する。
4. 変更したファイルと検証結果を報告する。
注意点
claude -p "$(cat file)"はBashでは動作しますが、巨大な内容、NUL文字、シェル展開を含む入力ではstdinの方が安全です。
Windowsのcmd.exeではBash構文が使えないため、PowerShellのGet-Content -Rawを使います。
仕様ファイル自体に外部から混入した命令がある場合もprompt injectionの対象になるため、未信頼資料ではPlan modeと厳しい権限を使ってください。