コンテンツにスキップ

vibe shell-setup

shell-setup コマンドは、vibe が worktree の作成・削除後にカレントディレクトリを移動できるようにするシェルラッパー関数を出力します。ラッパーに加えて fish / zsh の補完スクリプトも一緒に出力できます。

Terminal window
vibe shell-setup
vibe shell-setup --shell <name>
vibe shell-setup --shell fish --with-completion
vibe shell-setup --shell zsh --with-completion

デフォルトでは $SHELL からシェルを検出してラッパー関数を stdout に出力します。出力を eval (bash / zsh) や source (fish) にパイプしてください。シェル別のインストール手順は シェル設定 を参照。

$SHELL 検出を無視して、特定のシェル用の出力を強制します。指定可能な値: bash, zsh, fish, nushell, powershell

Terminal window
vibe shell-setup --shell zsh

ラッパー関数の後ろにシェル補完スクリプトを追加します。現状は fishzsh をサポート。bash / nushell / powershell で指定するとエラー終了します。

Terminal window
vibe shell-setup --shell fish --with-completion | source
eval "$(vibe shell-setup --shell zsh --with-completion)"

補完スクリプトがカバーする範囲:

  • 全サブコマンドと説明 (vibe <Tab>)
  • サブコマンドごとのフラグ (vibe start --<Tab>)
  • vibe start <Tab> でローカルブランチ名 (git for-each-ref refs/heads 経由)
  • vibe jump <Tab> で worktree のブランチ名 (git worktree list --porcelain 経由)

zsh の場合は、eval 行より前に ~/.zshrcautoload -Uz compinit && compinit を呼んでおく必要があります。compinit が実行されていない場合は補完登録が silently スキップされ、vibe ラッパー関数のみが定義されます。

ラッパーを stdout に出すのに加えて、検出したシェル名を stderr に表示します。

Terminal window
vibe shell-setup --verbose

不要な出力を抑制します。

stdout にはラッパー関数(--with-completion 指定時は補完スクリプトも)のみが出力され、ログ・警告・エラーは stderr に分離されるため、eval / source パイプラインを汚染しません。

$SHELL が検出できず --shell も指定されていない場合は終了コード 1 で stderr にエラーを出します。

Terminal window
# 自動検出 (zsh / bash 形式)
eval "$(vibe shell-setup)"
# fish ラッパーを明示的に出力
vibe shell-setup --shell fish | source
# fish ラッパー + タブ補完を 1 行で
vibe shell-setup --shell fish --with-completion | source
# zsh ラッパー + タブ補完を 1 行で(事前に compinit が必要)
eval "$(vibe shell-setup --shell zsh --with-completion)"