mcpField
S
shunk031-manage-public-private-dotfiles

shunk031-manage-public-private-dotfiles

github.com/shunk031開発082 回インストール1 日前に更新
リポジトリ

shunk031-manage-public-private-dotfiles について

公開・非公開の chezmoi dotfiles を別々の管理領域として扱うための運用スキルです。設定の所有元と正本を確認し、非公開設定の重複を避けながら変更を検証します。

主な機能

  1. 01両方の dotfiles リポジトリを調査
  2. 02設定の所有元を判定
  3. 03非公開の内容を専用ソースに保持
  4. 04シンボリックリンクとアダプターを維持
  5. 05リポジトリごとに変更を検証

活用シーン

  1. 01設定をどちらのリポジトリで管理するか決定
  2. 02非公開設定を公開側に複製せず変更
  3. 032つの dotfiles ソース間の変更を調整

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/shunk031/skills --skill shunk031-manage-public-private-dotfiles

インストール後、Claude Code で/shunk031-manage-public-private-dotfilesを入力して読み込まれたか確認します。

同梱ファイルagents/openai.yaml

詳細

メモ

このSKILL.mdを読んだ後、🏠 I read shunk031-manage-public-private-dotfiles.と言ってください。

公開・非公開 dotfiles の管理

公開・非公開の chezmoi ソースは、関連しつつも別々の管理領域として扱います。変更を提案または実施する前に、現在の所有範囲を明確にしてください。

スキルの内容は、もはやどちらの管理領域にも含まれません。shunk031/skillsとshunk031/skills-privateにあり、dotfiles リポジトリには、これをインストールするサブスクリプションの許可リストのみが置かれています。スキルの追加、編集、削除にはshunk031-manage-public-private-skillsスキルを使用し、その周辺の設定にはこのスキルを使用してください。

ワークフロー

  1. 調査を始める前に、該当する手順を確認します。

    • ~/.agents/AGENTS.mdを読み、続けて読み取り可能な場合は~/.agents/AGENTS-private.mdを読んでください。
    • ~/.agents/AGENTS-private.mdを安定したユーザーレベルのパスとして扱ってください。その正規の内容は~/.local/share/chezmoi-private/home/dot_config/codex/AGENTS-private.mdにあり、シンボリックリンクの設定は公開 dotfiles ソースで管理されています。
    • 非公開の内容はhome/dot_config/codex/AGENTS-private.mdに置き、公開リポジトリはシンボリックリンクの設定だけを変更してください。内容を複製してはいけません。
    • 両方の dotfiles リポジトリでルートのAGENTS.mdを読んでください。各リポジトリでの変更には、それぞれのルールに従ってください。
  2. 編集対象を選ぶ前に、両方のリポジトリを調査します。

    • 公開ソース:~/.local/share/chezmoi。設定には~/.config/chezmoi/chezmoi.yamlを使用します。
    • 非公開ソース:~/.local/share/chezmoi-private。設定には~/.config/chezmoi-private/chezmoi.yamlを使用します。
    • 両方のリポジトリでgit status --short --branchを確認し、既存の変更をすべて保持してください。
    • 関連する適用先パス、コマンド、設定、識別子、ドキュメントを両方のソースから検索してください。ソースの対応関係が不明確な場合は、該当するソースと設定を指定してchezmoi source-pathを使用してください。
    • 所有権、意図、または過去の移行が現在のファイルだけでは判断できない場合は、両方のリポジトリで関連する履歴を調査してください。
  3. 根拠に基づいて、現在の信頼できる情報源を判断します。

    • 移植可能で共有可能な設定と、共有するエージェント向けガイダンスには、公開リポジトリを優先してください。
    • 認証情報、内部インフラ、非公開プロファイル、認証ヘルパー、内部エンドポイント、非公開のランチャーには、非公開リポジトリを優先してください。
    • これらはデフォルトとして扱い、現在のリポジトリの手順や実装を確認する代わりにしてはいけません。
    • 両方のコンテキストで使えるようにするためだけに、設定を両方のリポジトリへコピーしてはいけません。1つの正規ソースを公開するアダプターやシンボリックリンクは維持してください。
  4. 必要なソース変更だけを行います。

    • ホームディレクトリ内の適用済みファイルではなく、chezmoi のソース状態を編集してください。
    • 作業が1つの管理領域に属する場合は、信頼できる情報源となるリポジトリのみを変更してください。
    • 両方のリポジトリで連携した変更が必要な場合は、それぞれの作業ツリー、コミット、プルリクエストを分け、両者の依存関係を説明してください。
    • 各リポジトリの手順で必要とされている場合は、影響を受けるリポジトリごとにクリーンなタスク用作業ツリーを作成してください。無関係なローカル変更をタスクに混在させてはいけません。
  5. 影響を受ける管理領域ごとに個別に検証し、報告します。

    • 影響を受ける各リポジトリで必要なチェックを実行し、どの変更をどのリポジトリが管理するかを報告してください。
    • 認証情報やシークレットの値を、コマンド出力、チャットに引用する差分、要約に含めないでください。
    • 通常の実装作業では、共有ワークフローに従ってコミットし、タスクブランチをプッシュし、プルリクエストを作成または更新してかまいません。マージ、chezmoi apply、ランタイム変更、削除、クリーンアップには、引き続きユーザーの明示的な許可が必要です。
    • ユーザーがchezmoi applyを許可した場合は、GITHUB_TOKEN="$(gh auth token)" chezmoi applyとして実行してください。公開ソースの外部テンプレートは GitHub Releases API に問い合わせるため、匿名リクエストは API のレート制限に達して失敗する可能性があります。

期待される成果

各情報源を正として選定した根拠、各リポジトリで変更したファイル、実施した検証、および公開リポジトリと非公開リポジトリの変更間で必要な順序を報告してください。調査の結果、変更が必要なリポジトリが1つだけであることが判明した場合は、その旨を明記してください。

コメント