Awesome-omni-skill claude-config-management
Claude Code設定(リポジトリルート)の構成管理ガイド。ファイルレベルsymlinkによる設定管理、管理対象の追加・削除、Taskfileタスクの実行方法を提供する。「設定ファイルを追加して」「新しいスキルを追加して」「symlinkの状態を確認して」「Claude設定を変更して」のようにClaude Code設定の構成変更を行うときに使用する。
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data-ai/claude-config-management" ~/.claude/skills/diegosouzapw-awesome-omni-skill-claude-config-management && rm -rf "$T"
manifest:
skills/data-ai/claude-config-management/SKILL.mdsource content
Claude Code 構成管理
アーキテクチャ
~/.claude は実ディレクトリ。リポジトリの dotclaude/ 配下の管理対象ファイルだけを個別に symlink する。
ランタイムファイル(cache, debug, history 等)はリポジトリに含まれない。
~/.claude/ (実ディレクトリ) ├── CLAUDE.md -> <repo>/dotclaude/CLAUDE-global.md ├── settings.json -> <repo>/dotclaude/settings.json ├── env.sh -> <repo>/dotclaude/env.sh ├── hooks/ -> <repo>/dotclaude/hooks/ ├── skills/ │ ├── <skill-name>/ -> <repo>/dotclaude/skills/<skill-name>/ (symlink) │ └── <plugin-skills>/ (実ディレクトリ、管理外) ├── cache/ (ランタイム、管理外) ├── projects/ (ランタイム、管理外) └── ...
管理方針:
dotclaude/ 配下のファイル・ディレクトリが symlink 対象。リポジトリルートの他のファイルは管理外。
タスク
task setup # symlink セットアップ (マイグレーション含む) task status # 状態確認 task clean # symlink 削除
タスク定義:
Taskfile.yml (リポジトリルート)
管理対象の追加手順
トップレベルファイルを追加
にdotclaude/
を配置<filename>
のTaskfile.yml
タスクのsetup
に追加for file in dotclaude/settings.json dotclaude/env.sh
を実行task setup
トップレベルディレクトリを追加
にdotclaude/
を配置<dirname>/
のTaskfile.yml
タスクのsetup
に追加for dir in dotclaude/hooks
を実行task setup
グローバルスキルを追加 (git管理対象)
を作成dotclaude/skills/<skill-name>/SKILL.md
を実行 (task setup
を自動検出、Taskfile変更不要)dotclaude/skills/*/
プロジェクトスコープのスキルを追加
.claude/skills/<skill-name>/SKILL.md を作成。symlink 不要。
worktree 環境チェック
worktree 環境では symlink 先がメインリポジトリを指すため、
~/.claude/ 配下の symlink を直接編集してはいけない。
worktree 判定を行い、$(pwd)/<file> を使用すること。
GIT_DIR=$(git rev-parse --git-dir) GIT_COMMON=$(git rev-parse --git-common-dir) # GIT_DIR != GIT_COMMON → worktree 環境 # GIT_DIR == GIT_COMMON → 通常リポジトリ
詳細は CLAUDE.md の「worktree 環境でのファイルパス解決」を参照。
注意事項
でディレクトリ先に既存ディレクトリがあるとネスト symlink が発生する。ln -sfn
が実ディレクトリであることを前提としている~/.claude
はべき等 (何度実行しても安全)task setup