1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

プロジェクト単位で Codex 設定を切り替えるTips

Posted at

はじめに

最近、Codex CLIをよく使っています!

ただ、$CODEX_HOME (デフォルトは $HOME/.codex )の設定ファイルやカスタムプロンプトしか見てくれなくて不便だったので自分なりの解消方法を書いてみました!

方法

~/.zshrc に以下のように記載します↓

これにより、codex を実行した時に現在のプロジェクトディレクトリの .codex を見るようになり、設定ファイルやプロンプトなどもコピーされます!

~/.zshrc
codex() {
  local _codex_home="$(pwd)/.codex"
  mkdir -p "$_codex_home"

  # これが無いとChatGPTログインがプロジェクト毎に必要になる
  if [ -e "$HOME/.codex/auth.json" ] && [ ! -e "$_codex_home/auth.json" ]; then
    ln -sfn "$HOME/.codex/auth.json" "$_codex_home/auth.json"
  fi
  # 設定ファイルやカスタムプロンプトはお好みで
  if [ -e "$HOME/.codex/config.toml" ] && [ ! -e "$_codex_home/config.toml" ]; then
    cp "$HOME/.codex/config.toml" "$_codex_home/config.toml"
  fi
  if [ -d "$HOME/.codex/prompts" ] && [ ! -d "$_codex_home/prompts" ]; then
    mkdir -p "$_codex_home/prompts/"
    cp -a "$HOME/.codex/prompts/"* "$_codex_home/prompts/"
  fi
  # 今いるプロジェクトディレクトリの設定を使うようにする
  CODEX_HOME="$_codex_home" command codex "$@"
}

楽なのでまとめてしまってますが、1回実行すればOKなコピー系の処理は切り出した方が良いかもしれません😇

注意点

  • 公式のベストプラクティスとかではないため使用する際にはご注意ください
  • コピーもできるので個人的には困ってないですが $HOME/.codex は見なくなります
  • .codex ディレクトリには公開しない方が良い情報も生成されるので、git管理から除外にしましょう!(.gitignore より、.git/info/excludecore.excludesFile で除外するようにしておくとより安心かもしれません)
**/.codex/*
# 設定やプロンプトを含めるかはお好みで
!**/.codex/config.toml
!**/.codex/prompts

おわりに

読んでいただきありがとうございます!少しでも参考になれば幸いです🙏
IssueやPRは出ているみたいなので公式対応されるかもしれませんが、それまではこの設定を使おうと思っています!

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?