🤖

Serenaの初期セットアップをシェル関数でコマンド一発化してみた

に公開

こういうことが面倒で、コマンド一発にしてみました

Serenaのインストール&初期セットアップを、毎回プロジェクトごとに

  1. SerenaをプロジェクトディレクトリのClaude Code MCPへSerenaをインストール。
  2. Claude Codeを起動し、Serenaの初期セットアップコマンドを実行。

というステップを手でやるのが面倒くさくて、コマンド一発で済ませられるシェル関数を作ってみました。


一発セットアップ用シェル関数

以下の関数を .bashrc または .zshrc に追記して、ターミナルを再起動(もしくは source ~/.bashrc など)すれば、install_serena というコマンドで簡単にセットアップできます。

install_serena() {
    if [ ! -d "$1" ]; then
        echo "エラー: ディレクトリ '$1' が存在しません"
        return 1
    fi

    local original_dir=$(pwd)

    cd "$1"

    claude mcp add serena -- uvx --from git+https://github.com/oraios/serena serena-mcp-server --context ide-assistant --project $(pwd)

    echo "プロジェクト '$(basename $(pwd))' にSerenaが設定されました"
    echo "Serenaを初期化しています..."
    claude --print --dangerously-skip-permissions "/mcp__serena__initial_instructions"
    echo "セットアップ完了: Serenaが使用可能です"

    cd "$original_dir"
}

使い方

ターミナルにて、プロジェクトディレクトリを引数にしてコマンドを実行するだけです。

以下、サンプル

# カレントディレクトリを対象にする場合
install_serena .

# パスを丁寧に指定する場合
install_serena ~/your-project-directory

補足・注意点

  • 本コマンドはUbuntu 24.04 (WSL2)で動作確認しました。(Macでもいけるはず。)
  • SerenaをClaude CodeのMCP設定に追加するのに必要なuvコマンドは、別途インストールしてください。

まとめ

毎回の初期セットアップを一発コマンド化するだけで、地味にストレスが減ります。
同じような手順を繰り返している方は、ぜひカスタム関数を活用してみてください。

ぼやき

Serenaのセットアップを行った後に作成される.serenaディレクトリって、.gitignoreに含めた方が良いのだろうか。(使い始めたばかりでわからない。)
もし含めた方が良いなら、.gitignoreへ自動追加する処理をカスタム関数に追加しても良いかも。


Discussion