winclipshot: WindowsターミナルでCtrl+Vでスクリーンショットを貼り付けられるようにするツール
(github.com/Higangssh)もともと自分が1人でWindows上でClaude Codeを使うときに使っていたものですが、周りの方から共有してほしいと言われたので、シンプルにオープンソース化しました。
WindowsターミナルではCtrl+Vでスクリーンショットを貼り付けることができません。これは、ターミナルがクリップボードの画像データを処理できないためです。
winclipshotはクリップボード変更イベントを購読しておき、新しい画像が入ると現在フォーカスされているウィンドウを確認して:
- ターミナルの場合(Windows Terminal、cmd、PowerShell、Alacritty、WezTermなど) → PNGとして保存した後、クリップボードをそのファイルパスに置き換えます。Ctrl+Vするとパスが貼り付けられ、Claude CodeのようなCLIがそのパスを読み取って画像を処理します。
- それ以外のアプリ(Slack、Chrome、Wordなど)の場合 → 画像をそのまま保持するため、普段どおり貼り付けできます。
Win+Shift+Sには手を加えません(グローバルホットキー登録なし)。exeを終了すれば完全に元の動作に戻ります。
「Chromeでスクリーンショット → ターミナルに移動して貼り付け」という流れにも対応しています。非ターミナルで画像が入った場合は60秒間「pending」状態にしておき、ユーザーがターミナルにフォーカスを移した瞬間に変換します。
イベントベースなのでCPU使用率はほぼ0%、メモリは約15MBです。ベンチマークフラグ(-bench)とカスタマイズオプション(-out, -terminals, -pending, -v)も含まれています。
Claude CodeはCtrl+V(またはAlt+V)によるスクリーンショット貼り付けをサポートしていますが、断続的に失敗する場合があり、他のCLI(sshセッション、一部のTUIなど)ではその方法自体がサポートされていなかったり、別のコマンド(例: Aiderの/paste)が必要だったりします。winclipshotはCLIの種類に関係なく、「スクリーンショット → Ctrl+V」だけで完結できるようにしてくれます。
シンプルに作ったものですが、必要な方に使っていただき、フィードバックをいただけるとうれしいです!
4件のコメント
CLコードを書くときに画像を入れるのが大変でしたが、これを使ってから本当に楽に作業できるようになりました。ありがとうございます!
そう言っていただけると、こちらこそありがたいです!
わあ! ありがたく使わせていただきます!
ありがとうございます!