Raycast ターミナル&スクリプトコマンド 2026年:ランチャーからコードを実行する
2026年3月3日公開 • 約12分で読めます
多くの開発者はターミナルの中で生活しています。Git コミット、Docker コンテナ、デプロイスクリプト、npm コマンド — すべてが体に染みついた習慣です。しかし、Raycast とターミナルウィンドウを1日に何十回も行き来するのは不必要な摩擦です。Raycast スクリプトコマンドを使えば、シェルコマンド、Bash スクリプト、Python コードなどを Raycast ランチャーから直接実行できます — ターミナルウィンドウは不要です。
このガイドでは、2026年における Raycast からのターミナルコマンド実行について、スクリプトコマンドの仕組み、対応言語、すぐに使える実用的な例、既存のターミナルワークフローとの統合方法まで解説します。Raycast が初めての方は、まずRaycast セットアップガイドをご確認ください。
Raycast スクリプトコマンドとは?
スクリプトコマンドは、Raycast がコマンドパレットから直接実行できるスタンドアロンのスクリプトファイルです。UI レイヤーが付いたカスタムターミナルコマンドだと考えてください。お好みの言語でスクリプトを書き、特別なメタデータヘッダーを追加するだけで、Raycast がそれを検索・起動可能なコマンドに変換します。
完全なRaycast 拡張機能(React と TypeScript を使用)とは異なり、スクリプトコマンドはシンプルなファイルです — ビルドステップなし、依存関係なし、プロジェクトの足場作りも不要です。これにより、素早い自動化や一回限りのタスクに最適です。
対応言語
Raycast スクリプトコマンドは macOS 上でシバン行から実行できるあらゆる言語に対応しています:
- Bash / Zsh — システムコマンドや素早い自動化に最もよく使われる選択肢
- Python — HTTP リクエスト、JSON パース、データ処理が必要なスクリプトに最適
- Ruby — テキスト操作とスクリプト作成に人気
- Swift — macOS システム API にネイティブアクセス
- AppleScript — Finder、Safari、Mail、システム環境設定などの macOS アプリを制御
- Node.js — JavaScript ベースのスクリプトに
#!/usr/bin/env nodeを使用
Mac にインタープリターがインストールされており、シバン行をサポートしている言語であれば Raycast で動作します。ほとんどの開発者はシステムコマンドに Bash を、より複雑なものには Python を使います。
最初のスクリプトコマンドを作る方法
ステップ 1:スクリプトディレクトリを追加する
Raycast を開き、Settings(または Cmd + ,)に移動し、Extensions に進んで + ボタンをクリックします。「Add Script Directory」を選択し、スクリプトを保存するフォルダーを指定します。バージョン管理のために ~/.raycast-scripts/ か Git リポジトリに保存することをお勧めします。
ステップ 2:スクリプトファイルを作成する
スクリプトディレクトリに新しいファイルを作成します。現在の Git ブランチを表示する最小限の Bash の例:
#!/bin/bash
# Required parameters:
# @raycast.schemaVersion 1
# @raycast.title Current Git Branch
# @raycast.mode inline
# @raycast.packageName Git
# Optional parameters:
# @raycast.icon 🌿
# @raycast.description Show the current Git branch
cd ~/Projects/my-repo && git branch --show-current
先頭のメタデータコメントは、Raycast がコマンドをどのように表示・実行するかを指定します。主なフィールドは:
@raycast.title— Raycast コマンドパレットに表示される名前@raycast.mode— 出力の表示方法:inline(Raycast 内で表示)、compact(簡略通知)、fullOutput(スクロール可能な出力)、silent(出力なし)@raycast.packageName— 関連するスクリプトをグループ化
ステップ 3:実行可能にする
スクリプトを実行可能にすることを忘れずに:
chmod +x ~/.raycast-scripts/current-git-branch.sh
Raycast は設定されたディレクトリ内の新しいスクリプトを自動的に検出します。Raycast を開いてスクリプトのタイトルを入力すると、すぐに表示されるはずです。
引数を使ったユーザー入力の追加
スクリプトコマンドは実行前に Raycast がユーザーに入力を求める引数を受け付けられます。これによりシンプルなスクリプトをインタラクティブなツールに変えられます:
#!/bin/bash
# @raycast.schemaVersion 1
# @raycast.title Git Commit
# @raycast.mode compact
# @raycast.packageName Git
# @raycast.argument1 { "type": "text", "placeholder": "Commit message" }
cd ~/Projects/my-repo && git add -A && git commit -m "$1"
このコマンドを実行すると、Raycast がコミットメッセージのテキストフィールドを表示します。入力して Enter を押すと、入力した値が $1 としてスクリプトに渡されて実行されます。1つのスクリプトに最大3つの引数を定義できます。
開発者向けのスクリプトコマンド実用例
ここからが本当に役立つ部分です。自分のワークフローに応用できる実用的な例を紹介します。
Git ショートカット
日常的な Git 操作のためにターミナルに切り替えるのをやめましょう:
- クイックコミット — 全変更をステージングしてメッセージ引数でコミット
- 最新を取得 — 現在のプロジェクトで
git pull --rebase origin mainを実行 - ブランチ作成 — ブランチ名を引数として受け取り、ブランチを作成してチェックアウト
- ステータス表示 —
git status --shortを Raycast 内でインライン表示 - スタッシュ/ポップ — ワンキーでスタッシュと復元
#!/bin/bash
# @raycast.schemaVersion 1
# @raycast.title Git Pull Rebase
# @raycast.mode compact
# @raycast.packageName Git
# @raycast.icon 🔄
cd ~/Projects/my-repo && git pull --rebase origin main
echo "Pulled and rebased on main"
Docker コマンド
フローを崩さずにコンテナを管理:
- 実行中のコンテナ一覧 —
fullOutputモードでdocker ps --format "table {{.Names}}\t{{.Status}}" - 全コンテナを停止 —
docker stop $(docker ps -q) - 再ビルドして再起動 —
docker-compose down && docker-compose up -d --build - 未使用イメージを削除 — ディスクスペースを回収する
docker system prune -af
npm とパッケージマネージャースクリプト
どこからでもプロジェクトスクリプトを実行:
#!/bin/bash
# @raycast.schemaVersion 1
# @raycast.title NPM Dev Server
# @raycast.mode silent
# @raycast.packageName Node.js
# @raycast.icon 📦
cd ~/Projects/my-app && open -a Terminal && osascript -e 'tell app "Terminal" to do script "cd ~/Projects/my-app && npm run dev"'
これはターミナルウィンドウを開いて開発サーバーを起動します。永続的なターミナルセッションが必要なスクリプトには、新しいウィンドウを起動するのが最善のアプローチです。
システムメンテナンス
- DNS をフラッシュ —
sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder - Homebrew キャッシュをクリア —
brew cleanup --prune=all - ディスク使用量を表示 — クイックなディスクスペース確認に
df -h / | tail -1 - プロセス名で終了 — プロセス名を引数として取る
pkill -f "$1" - ゴミ箱を空にする — 確認ステップ付きの
rm -rf ~/.Trash/*
デプロイスクリプト
ターミナルもブラウザも開かずにデプロイをトリガー:
#!/bin/bash
# @raycast.schemaVersion 1
# @raycast.title Deploy to Production
# @raycast.mode compact
# @raycast.packageName Deploy
# @raycast.icon 🚀
# @raycast.description Push main branch and trigger deploy
cd ~/Projects/my-app && git push origin main
echo "Pushed to main. Deploy triggered."
Python スクリプトの例
基本的なシェルコマンド以上のことには Python が堅実な選択肢です。パブリック IP を取得するスクリプト:
#!/usr/bin/env python3
# @raycast.schemaVersion 1
# @raycast.title My Public IP
# @raycast.mode inline
# @raycast.packageName Network
# @raycast.icon 🌐
import urllib.request
ip = urllib.request.urlopen('https://api.ipify.org').read().decode()
print(ip)
Run Script 拡張機能
スクリプトコマンド以外にも、Raycast にはターミナル機能をランチャーに取り込む拡張機能がストアに多数あります。Terminal 拡張機能ではターミナルプロファイルを直接検索・開くことができます。シェル履歴、SSH 接続、一般的な CLI ツールへのクイックアクセスを提供するコミュニティ拡張機能もあります。
ターミナルワークフローを補完するツールについては、Raycast 拡張機能おすすめガイドをご覧ください。Brew 拡張機能などを使えば Raycast 内で Homebrew パッケージを検索・インストール・管理できます — ターミナル不要です。
Raycast と VS Code・ターミナルの連携
Raycast とターミナルは別々の世界である必要はありません。以下が連携方法です:
VS Code でプロジェクトを開く
特定のプロジェクト(またはパス引数を取る)を VS Code で開くスクリプトコマンドを作成:
#!/bin/bash
# @raycast.schemaVersion 1
# @raycast.title Open in VS Code
# @raycast.mode silent
# @raycast.packageName Dev
# @raycast.argument1 { "type": "text", "placeholder": "Project folder name" }
code ~/Projects/$1
ターミナルワークフロー向けクイックリンク
Raycast クイックリンクを使えばターミナルコマンドを即座に開けます。terminal:// URL スキームや iTerm2 を使用している場合は iterm:// スキームを使ったクイックリンクを作成します。スクリプトコマンドよりもシンプルで頻繁に使うコマンドにはさらに高速です。
スクリプトコマンドと Raycast AI の組み合わせ
Raycast Pro を使用している場合、AI コマンドとスクリプトコマンドを組み合わせた強力なワークフローが構築できます。Raycast AI に Bash のワンライナーを生成させて、スクリプトコマンドで実行する。または AI を使って失敗したスクリプトのエラー出力を説明させる。AI で考え、スクリプトコマンドで実行する — 自然な組み合わせです。
まだ Pro でない方は、80% 割引+無料トライアルで Raycast Pro を試して、スクリプトワークフローと AI 機能を一緒に活用しましょう。
スクリプトコマンド vs 拡張機能:どちらを使うか
スクリプトコマンドも完全な拡張機能もコードを実行できますが、それぞれ異なる目的を持っています:
- スクリプトコマンドを使う場合:素早い自動化が必要な場合、タスクがワンライナーや短いスクリプトで済む場合、リッチな UI が不要な場合、TypeScript ではなく Bash/Python を使いたい場合
- 拡張機能を使う場合:インタラクティブなリスト、フォーム、詳細ビューが必要な場合、ツールに複雑な状態管理が必要な場合、Raycast Store に公開したい場合、リアルタイム更新や読み込み状態が必要な場合
実際には、ほとんどの開発者は両方を使います。スクリプトコマンドはすばやく汚れ仕事をこなすターミナルタスクを担当します。拡張機能は毎日使うツールで磨かれたエクスペリエンスを提供します。完全な拡張機能の構築に興味がある方は、Raycast API 開発者ガイドをご確認ください。
より良いスクリプトコマンドを書くためのヒント
長い出力には fullOutput モードを使う
スクリプトが1〜2行以上を返す場合は、@raycast.mode fullOutput を使用して結果を Raycast 内でスクロール可能にしましょう。inline モードは長い出力を切り捨てます。
エラーを適切に処理する
スクリプトが静かに失敗しないようにエラーチェックを追加しましょう。Bash での簡単なパターン:
#!/bin/bash
# ... raycast metadata ...
if ! command -v docker &> /dev/null; then
echo "Error: Docker is not installed"
exit 1
fi
docker ps --format "table {{.Names}}\t{{.Status}}"
環境変数を使う
API キーやトークンが必要なスクリプトには、ハードコードせずに環境変数に保存しましょう。Raycast はシェル環境を継承するので、.zshrc や .bash_profile 内の設定はすべてアクセス可能です。
スクリプトをバージョン管理する
スクリプトコマンドのディレクトリを Git リポジトリとして管理しましょう。マシン間でスクリプトを同期し、変更を追跡し、チームメンバーと共有できます。GitHub 上の Raycast コミュニティの script-commands リポジトリには、インスピレーションになる数百もの例があります。
Raycast スニペットと組み合わせる
ターミナル自体で頻繁に入力するコマンドには、スクリプトコマンドの代わりにRaycast スニペットの使用を検討してください。スニペットは Mac 上のどこでもテキストを展開します — キーワードを入力すると長いコマンドに置き換えられます。実行にはスクリプトコマンドを、テキスト展開にはスニペットを使いましょう。
ターミナルワークフローで Raycast を最大活用する
スクリプトコマンドはパズルの一部に過ぎません。完全な Raycast ターミナルワークフローには以下が含まれます:
- スクリプトコマンド:シェルスクリプトと自動化の実行
- クイックリンク:プロジェクトディレクトリへのジャンプやターミナルプロファイルを開く
- スニペット:よく入力するコマンドを展開
- クリップボード履歴:以前にコピーしたターミナル出力を取得
- AI コマンド(Pro):スクリプトの生成とエラーのデバッグ
- 拡張機能:Brew、GitHub、Docker その他の開発ツール向け
まだ Raycast をセットアップしていない方は、Raycast Pro 割引ページで最新のベストディールを確認してください。そしてRaycast とは何かのガイドでスクリプトコマンドなどのパワーユーザー機能に飛び込む前に基本を学びましょう。
よくある質問
Raycast スクリプトコマンドで使用できる言語は何ですか?
Raycast は Bash、Python、Ruby、Swift、AppleScript に対応しています。macOS 上で実行可能な有効なシバン行を持つ言語であれば何でも動作します — Node.js、PHP、Perl なども含まれます。Bash と Python が圧倒的に人気があります。インタープリターがシステムにインストールされており、スクリプトファイルが実行可能になっていることを確認してください。
スクリプトコマンドと Raycast 拡張機能の違いは何ですか?
スクリプトコマンドはビルドステップや依存関係なしに Raycast から直接実行されるスタンドアロンのスクリプトファイル(Bash、Python など)です。素早いターミナル自動化に最適です。拡張機能はリスト、フォーム、詳細ビュー、アクションパネルを持つ完全な React/TypeScript アプリケーションです。テキスト出力を生成するシンプルなタスクにはスクリプトコマンドを、インタラクティブなインターフェースが必要な場合は拡張機能を使ってください。
Raycast スクリプトコマンドはユーザー入力を受け付けられますか?
はい。スクリプトのメタデータヘッダーで @raycast.argument1、@raycast.argument2、@raycast.argument3 フィールドを使って最大3つの引数を定義できます。各引数には型とプレースホルダーテキストを指定します。コマンドを実行すると、Raycast が各引数の入力フィールドを表示します。値は位置パラメーター(Bash では $1、$2、$3)または環境変数としてスクリプトに渡されます。
スクリプトコマンドを使うには Raycast Pro が必要ですか?
いいえ。スクリプトコマンドは制限なしに無料の Raycast プランで利用できます。有料サブスクリプションなしに、スクリプトコマンドを無制限に作成・インポート・実行できます。とはいえ、Raycast Pro を使うと AI コマンドやクラウド同期などの機能が追加され、スクリプトベースのワークフローと相性が抜群です — 特に AI でスクリプトを生成・デバッグする場合に。現在の Pro ディールはこちら。
スクリプトコマンドをチームで共有するにはどうすればよいですか?
スクリプトコマンドはディスク上のプレーンファイルなので、共有は簡単です。最善のアプローチは、チームメンバーがクローンして Raycast に登録できる共有 Git リポジトリにスクリプトを保存することです。Raycast コミュニティも GitHub でコミュニティ提供のスクリプトを多数公開しているオープンソースの script-commands リポジトリを管理しています。スクリプトをインポートするには、Raycast で Script Commands フォルダーとして設定されたディレクトリに配置するだけです。