👨‍💻

DotfilesでClaude codeとかのグローバルルールを使い回す

に公開

前提

  • Claude Code
  • Gemini CLI
  • Github
  • Mac

何がしたかったのか

dotfiles というシステムがあるのをご存知でしょうか?
シンボリックリンクを活用することで
自分の動きやすい環境を召喚できる便利システムがあります。
それについては下記を閲覧していただくとして。

https://zenn.dev/cloud_ace/articles/1d57617f83cd74

で、昨今 LLM を使った CLI ツールが色々出てきていますが、
グローバルルールを設定できるのを皆さんご存知かと思います。
Claude Code だと、~/.claude/CLAUDE.md で設定できるやつですね。
それについては、下記を閲覧していただくとして。

https://zenn.dev/iwaken71/articles/claude-code-setting

さてここに2つの概念があります。

  • シンボリックリンクで環境を持ち運べる dotfiles
  • CLI ツールのグローバルルール

これ、グローバルルールをシンボリックリンク化して、
dotfiles で管理できるんじゃね?、と思い立ったわけです。

結論、できました。

Dotfiles でグローバルルールを管理する

dotfiles の概念をある程度わかってる前提で話します。
今回、下記のように、dotfiles の用意をしておきました。

image
やることは単純で、これをシンボリックリンクで結びつけに行くだけです。

rm -f ~/.claude/CLAUDE.md
rm -f ~/.gemini/GEMINI.md
ln -s "$(pwd)/CLAUDE.md" ~/.claude/CLAUDE.md
ln -s "$(pwd)/GEMINI.md" ~/.gemini/GEMINI.md

上記は、CLAUDE.mdGEMINI.mdのグローバルな方を
シンボリックリンクで結びつけるコマンドです。
今回僕はrmで削除していますが、
バックアップとしてコピーしてもらったほうが安全かなと思います。

これをするとどうなるのか

dotfilesはGitで設定ファイルを管理するシステムですが、
そのシステムの中にClaude CodeやGemini CLIの
グローバルルールを組み込むことで、
もし環境が変わったとしても開発体験を保つ事が可能です。

僕の場合、どっかにグローバルルールのバックアップを取りたかったので
dotfilesに組み込むことにしました。

おわりに

dotfiles便利なので皆さん使いましょう。
あとStarshipでターミナルおしゃれにするとテンション上がるのでおすすめです。

image

Discussion