dotfiles について
dotfilesは、chezmoiで管理するseven7thirty3five5/dotfilesリポジトリを変更し、公開するためのスキルです。リポジトリ所有者向けに、同期確認、編集、適用、検証、コミット、ワークフロー監視の手順を案内します。
主な機能
- 01リポジトリ所有権と同期状態の確認
- 02編集前の設計ガイド確認
- 03chezmoiによる変更の適用
- 04lint、shell、インストール検査
- 05コミット、プッシュ、ワークフロー監視
活用シーン
- 01管理対象の設定ファイルの変更
- 02リポジトリ変更のホームフォルダーへの適用
- 03公開前のセットアップスクリプト検証
- 04dotfiles更新の公開とワークフロー確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ seven7thirty3five5/ dotfiles --skill dotfilesインストール後、Claude Code で/dotfilesを入力して読み込まれたか確認します。
同梱ファイルagents/openai.yaml
詳細
Dotfiles
ユーザーの dotfiles に対する依頼を実行します。対象は GitHub リポジトリ
seven7thirty3five5/dotfiles で、
~/.local/share/chezmoi にクローンされています。依頼がない場合は、何を変更するか尋ねてください。
作業の開始時と終了時は、同期済みの状態にします。つまり、git status がクリーンで、
ローカルの main が origin/main と一致し、chezmoi verify --exclude=scripts が成功する状態です。
これにより、ホームフォルダーがリポジトリと一致します。
1. 状況を把握する
- このマシンが dotfiles を公開するマシンであることを確認します。プッシュできるのはリポジトリの所有者だけです。
chezmoi execute-template '{{ .publishDotfiles }}'がtrueを出力し、git push --dry-runが成功し、gh auth statusでseven7thirty3five5がアクティブなアカウントとして表示される必要があります(gh はワークフローを監視します)。 - 同期済みの状態から始めます。
git statusがクリーンで、chezmoi verify --exclude=scriptsが 成功した状態で、chezmoi updateを実行して最新のコミットを取得し、適用します。その後、mainがorigin/mainと一致している必要があります。 README.mdを読みます。Design セクションでは、セットアップの仕組みと、変更の種類ごとにどこを変更するかを説明しています。次に、変更するファイルを読みます。使用する chezmoi の各機能について、chezmoi のリファレンスにある該当ページを読んでください。 https://www.chezmoi.io/reference/
チェックに失敗した場合や、マシンが同期されていない場合は、編集を始めずに中断し、確認できた内容をユーザーに伝えます。未コミットの作業、デプロイ済みファイルへの編集、未プッシュのコミットは、ユーザー自身が対応する必要があります。すべてのチェックが成功し、変更が関わる各項目の所有者を特定できたら完了です。
2. 変更する
リポジトリのファイルを編集します。chezmoi apply はそれらをデプロイし、ホームフォルダーで行った編集を置き換えます(chezmoi source-path FILE は、デプロイ済みファイルのソースを示します)。sudo の有無にかかわらず、macOS と Linux の両方で動作する変更にしてください。README の Design セクションと、以下の注意事項に従ってください。また、編集するファイルの文体に合わせて、ツールに不慣れな読者にも分かるよう、各コマンド、オプション、テンプレート関数の役割とその理由を説明する簡潔なコメントを書いてください。
変更によって事実と合わなくなった内容が README、コメント、チェックに残っていないことを git grep で確認できたら完了です。
3. 検証する
python3 scripts/check-lint.pyとpython3 scripts/check-shell.pyが成功することを確認します。chezmoi diffに、実行されるセットアップスクリプトも含め、意図した変更だけが表示されることを確認します。その後、chezmoi applyを実行します。
4. 公開する
git logのスタイルに合わせてコミットします。sh scripts/check-install.shが成功することを確認します。このチェックは適用済みのマシンを検証し、クリーンなツリーを必要とします。- プッシュし、プッシュしたコミットの各ワークフローが完了するまで監視します(
gh run watch)。Bootstrap には約 10 分かかります。失敗したワークフローがあれば修正し、再度公開します。
すべてのワークフローが成功し、マシンが同期されたら完了です。変更内容と、他のマシンでユーザーが手動で行う必要があることを報告してください。
注意事項
- このマシンでは、chezmoi はソースに変更を加えるたびに(
chezmoi add、chezmoi edit)、チェックの実行前にコミットしてプッシュします。ソースファイルは chezmoi の命名規則(dot_、private_、executable_、.tmpl)を使って、自分で作成・編集してください。 - chezmoi がファイルの管理を停止しても、そのファイルはすべてのマシンに残ります。
updateはマシン上のすべてをアップグレードします。ユーザーから依頼された場合に実行し、変更した部分は単独でテストしてください。