git-safety
Gitの操作ミスによるファイル消失や不要な変更を防ぐため、Agentがファイルの移動・リネーム・削除を行う際に、Gitの標準コマンドを使うよう促し、安全な操作を徹底するSkill。
📜 元の英語説明(参考)
Git 操作安全与规范。强制要求使用 git 原生命令处理受控文件,防止丢失索引或产生冗余变更。当 Agent 尝试移动、重命名或删除文件时触发。
🇯🇵 日本人クリエイター向け解説
Gitの操作ミスによるファイル消失や不要な変更を防ぐため、Agentがファイルの移動・リネーム・削除を行う際に、Gitの標準コマンドを使うよう促し、安全な操作を徹底するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o git-safety.zip https://jpskill.com/download/8779.zip && unzip -o git-safety.zip && rm git-safety.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/8779.zip -OutFile "$d\git-safety.zip"; Expand-Archive "$d\git-safety.zip" -DestinationPath $d -Force; ri "$d\git-safety.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
git-safety.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
git-safetyフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
Git の安全性と標準
この Skill は、Git リポジトリでファイル操作を行う際の安全性と履歴の完全性を確保することを目的としています。
核心となる原則
1. 移動とリネーム (Move & Rename)
- 禁止:Git で追跡されているファイルに対して、直接
mvコマンドを使用すること。 - 強制:
git mv <old_path> <new_path>を使用すること。 - 理由:Git がファイルの再構成を自動的に追跡し、ファイルの Git History を保持するようにするため。「削除 + 新規追加」として認識されるのを避けるため。
2. 削除 (Delete)
- 禁止:Git で追跡されているファイルに対して、直接
rmまたはrm -rfコマンドを使用すること。 - 強制:
git rm <path>またはgit rm -r <path>を使用すること。 - 理由:ワークスペースとインデックスから同期的に削除し、追跡されていない削除の変更が残るのを避けるため。
3. 操作前の自己チェックフロー
Agent がファイルを操作する準備をする際、以下のロジックに従う必要があります。
- 状態の確認:
git ls-files <path>を実行します。 - 判断:
- 出力がある場合(ファイルが管理下にあることを示す)→
git mv/git rmを使用します。 - 出力がない場合(追跡されていないファイルであることを示す)→ 通常の
mv/rmを使用します。
- 出力がある場合(ファイルが管理下にあることを示す)→
適用可能なシナリオ
- コードのリファクタリングによるファイルディレクトリ構造の調整。
- 古くなったドキュメントやコードファイルの削除。
- プロジェクトのクリーンアップ。
制約
- ファイルの状態を確認せずに、通常のファイル管理コマンドを盲目的に使用することを厳禁します。
- 大規模な移動操作を実行する前に、
git statusを実行してワークスペースがクリーンであることを確認することを推奨します。
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Git Safety & Standards
该 Skill 旨在确保在 Git 仓库中进行文件操作时的安全性和历史完整性。
核心准则
1. 移动与重命名 (Move & Rename)
- 禁止直接使用
mv命令操作受 Git 跟踪的文件。 - 强制使用
git mv <old_path> <new_path>。 - 理由:确保 Git 自动跟踪文件重构,保留文件的 Git History,避免识别为“删除 + 新增”。
2. 删除 (Delete)
- 禁止直接使用
rm或rm -rf操作受 Git 跟踪的文件。 - 强制使用
git rm <path>或git rm -r <path>。 - 理由:直接从工作区和索引中同步移除,避免残留未跟踪的删除变更。
3. 操作前自检流程
当 Agent 准备操作文件时,应遵循以下逻辑:
- 检查状态:执行
git ls-files <path>。 - 判断:
- 如果有输出(说明文件受控)→ 使用
git mv/git rm。 - 如果无输出(说明是未跟踪文件)→ 使用普通
mv/rm。
- 如果有输出(说明文件受控)→ 使用
适用场景
- 重构代码导致的文件目录结构调整。
- 删除过时的文档或代码文件。
- 项目清理。
约束
- 严禁在未确认文件状态的情况下盲目使用普通文件管理命令。
- 在执行大规模移动操作前,建议先执行
git status确保工作区是干净的。