個人用の設定ファイル管理リポジトリ
dotfiles/
├── shell/ # シェル設定(→ ~)
│ ├── .zshrc
│ └── .zprofile
│
├── config/ # XDG_CONFIG_HOME 系(→ ~)
│ └── .config/
│ ├── wezterm/ # ターミナル (WezTerm)
│ ├── ghostty/ # ターミナル (Ghostty)
│ ├── starship/ # プロンプト
│ ├── mise/ # ランタイム管理
│ ├── sheldon/ # zsh プラグイン
│ ├── karabiner/ # キーリマッピング
│ ├── opencode/ # OpenCode CLI
│ ├── nvim/ # エディタ (Neovim)
│ └── git/ # git 設定 (global ignore 等)
│
├── claude/ # Claude CLI(→ ~)
│ └── .claude/
│ ├── CLAUDE.md
│ ├── settings.json
│ ├── agents/ # エージェント定義
│ ├── hooks/ # フック
│ ├── rules/ # ルール
│ ├── templates/ # テンプレート
│ └── skills/ # → shared/skills へのリンク
│
├── codex/ # Codex CLI(→ ~)
│ └── .codex/
│ ├── AGENTS.md
│ ├── config.toml
│ ├── prompts/ # カスタムプロンプト
│ ├── skills/ # → shared/skills へのリンク
│ └── codex_message.sh
│
├── gemini/ # Gemini CLI(→ ~)
│ └── .gemini/
│ └── settings.json
│
├── tmux/ # tmux 設定(→ ~)
│ └── .tmux.conf
│
├── shared/ # 共通データ
│ ├── commands/ # Claude/Codex 用コマンド定義
│ │ ├── common/
│ │ ├── claude-only/
│ │ └── codex-only/
│ ├── mcp.template.json # MCP 設定テンプレート(最小構成)
│ ├── notify_message.sh # 通知スクリプト
│ └── skills/ # Codex/Claude 共通スキルの実体
│ ├── common/ # 共通スキル
│ ├── claude-only/ # Claude 専用スキル
│ └── codex-only/ # Codex 専用スキル
│
├── alfred/ # Alfred ワークフロー(→ ~/Dropbox/...へリンク)
│ └── Open-VS-or-IT/ # お気に入りフォルダを開くワークフロー
│
├── Makefile
├── Brewfile # Homebrew パッケージ定義
├── Taskfile.yml # エントリポイント(taskfiles/ を読み込む)
├── taskfiles/
│ ├── link.yml
│ ├── skills.yml
│ └── util.yml
├── scripts/
│ ├── install-brew.sh
│ └── clean-claude.sh
└── README.md
# macOS
brew install stow go-task# リポジトリをクローン(ghq 推奨)
ghq get https://github.com/yoshihiko555/dotfiles.git
cd ~/ghq/github.com/yoshihiko555/dotfiles
# 初回セットアップ(依存インストール + リンク)
make bootstrap
# 以降は task を使用
task --list
task link # 全パッケージをリンク
task link-shell # シェル設定のみ
task link-config # .config 配下のみ
task link-claude # Claude CLI のみ
task link-codex # Codex CLI のみ
task link-tmux # tmux のみ
task link-alfred # Alfred ワークフローのみmake bootstrap # 依存ツールをインストールして全パッケージをリンク
make install-deps # 依存ツール (stow, go-task) をインストール
make link # shell/config/claude/codex/gemini/tmux をリンク
make help # ヘルプ表示make linkはgeminiを含み、alfredは含みません。
task --list # タスク一覧
task link # 全パッケージをリンク
task link-alfred # Alfred ワークフローのみ
task link-shell # シェル設定のみ
task link-config # .config 配下のみ
task link-claude # Claude CLI のみ
task link-codex # Codex CLI のみ
task link-tmux # tmux のみ
task unlink # 全パッケージのリンクを解除
task restow # 全パッケージを再リンク
task sync-skills # shared/skills のリンクを更新
task status # 現在のリンク状態を確認
task brew # Homebrew パッケージを適用
task edit # VS Code で開く
task mcp-init # 最小構成の .mcp.json をコピー
task mcp-show # 最小構成テンプレートの内容を表示
task clean-claude-dry # Claude デバッグログ削除の dry-run
task clean-claude # Claude デバッグログを削除
task codex-trust-audit # Codex trust 設定を監査task linkはalfredを含み、geminiは含みません。
config/.config/nvim/init.luaとconfig/.config/nvim/lua/lsp.luaで最小構成の LSP を有効化- 対象サーバー:
gopls/pyright-langserver/typescript-language-server - 前提:
Brewfileに定義されたgopls,pyright,typescript,typescript-language-serverをインストール済み
task link-config # ~/.config/nvim を含む .config 配下をリンク主なキーマップ:
gd定義へジャンプgD宣言へジャンプgr参照一覧gi実装へジャンプKホバー<leader>rnリネーム<leader>caコードアクション[d/]d診断の前後移動
補完は挿入モードで Ctrl-x Ctrl-o(omnifunc)を使用。
- Codex (
codex/.codex/config.toml) のcontext7/notionはenabled = falseをデフォルトにしています。 - プロジェクトの
.mcp.jsonはtask mcp-initで空のmcpServers(通常作業向け)を作成し、必要なMCPだけ追記してください。 - Codex で一時的に有効化する場合は実行時オーバーライドを使います。
# Context7 だけ有効化
codex -c mcp_servers.context7.enabled=true
# Notion だけ有効化
codex -c mcp_servers.notion.enabled=true
# 2つとも有効化
codex -c mcp_servers.context7.enabled=true -c mcp_servers.notion.enabled=true- Claude Code 側は
--scope projectを基本にし、個人限定用途は--scope local/--scope userを使い分けてください。 - Claude Code プラグイン (
claude/.claude/settings.json) もデフォルト無効です。必要時のみ有効化してください。
# Claude: プロジェクト限定でプラグインを有効化
claude plugin enable context7@claude-plugins-official --scope project
claude plugin enable Notion@claude-plugins-official --scope project
# Claude: 一括無効化(最小構成に戻す)
claude plugin disable --all --scope user
claude plugin disable --all --scope project
claude plugin disable --all --scope local# リンク作成
stow -vt ~ <パッケージ名>
# リンク削除
stow -Dvt ~ <パッケージ名>
# ドライラン(実行せず確認のみ)
stow -nvt ~ <パッケージ名>
# 再リンク(削除して作成)
stow -Rvt ~ <パッケージ名>| オプション | 説明 |
|---|---|
-v |
詳細表示 (verbose) |
-t ~ |
ターゲットディレクトリをホームに指定 |
-n |
ドライラン(シミュレーション) |
-D |
リンク削除 (delete) |
-R |
再リンク (restow) |
# .config 系ツールを追加
mkdir -p config/.config/nvim
mv ~/.config/nvim config/.config/nvim/
task link-config
# ホーム直下の設定を追加(新パッケージ)
mkdir -p git
mv ~/.gitconfig git/
stow -vt ~ git
# 必要なら taskfiles/link.yml に link-*/unlink-* タスクを追加~/.zshrc → dotfiles/shell/.zshrc
~/.zprofile → dotfiles/shell/.zprofile
~/.config/wezterm → dotfiles/config/.config/wezterm
~/.config/ghostty → dotfiles/config/.config/ghostty
~/.config/starship → dotfiles/config/.config/starship
~/.config/mise → dotfiles/config/.config/mise
~/.config/sheldon → dotfiles/config/.config/sheldon
~/.config/karabiner → dotfiles/config/.config/karabiner
~/.config/opencode → dotfiles/config/.config/opencode
~/.config/nvim → dotfiles/config/.config/nvim
~/.config/git → dotfiles/config/.config/git
~/.claude → dotfiles/claude/.claude
~/.codex → dotfiles/codex/.codex
~/.gemini → dotfiles/gemini/.gemini
~/.tmux.conf → dotfiles/tmux/.tmux.conf
~/Dropbox/.../workflows/user.workflow.C9692AD7-... → dotfiles/alfred/Open-VS-or-IT
ホームディレクトリの設定ファイルは、dotfiles ディレクトリへのリンクになります。 dotfiles 内のファイルを編集すると、実際の設定に反映されます。
- スキル本体は
shared/skills/に集約 claude/.claude/skillsとcodex/.codex/skillsは相対シンボリックリンクで参照- リンク更新は
task sync-skillsで実行
専用 task でシンボリックリンクを作成して管理。
task link-alfred # ワークフローをリンク
task unlink-alfred # リンク解除Alfredから指定ディレクトリをWezTermで3分割ペインレイアウトで開く。
キーワード: wez
3分割レイアウト:
┌──────┬──────┐
│ │ 2 │
│ 1 ├──────┤
│ │ 3 │
└──────┴──────┘
詳細は alfred/README.md を参照。