#!/bin/bash # Claude Code用の安全なコマンドチェッカー COMMAND="$1" # 危険なコマンドパターン DANGEROUS_PATTERNS=( "rm -rf /" "rm -rf ~" ":(){ :|:& };:" # Fork bomb "> /dev/sda" "dd if=/dev/zero" "mkfs" "format" ) # 確認が必要なコマンド CONFIRM_PATTERNS=( "sudo" "rm -rf" "git push --force" "npm publish" "pip install" ) # 危険なコマンドをチェック for pattern in "${DANGEROUS_PATTERNS[@]}"; do if [[ "$COMMAND" =~ $pattern ]]; then echo "❌ 危険なコマンドを検出しました: $COMMAND" echo "このコマンドは実行できません。" exit 1 fi done # 確認が必要なコマンドをチェック for pattern in "${CONFIRM_PATTERNS[@]}"; do if [[ "$COMMAND" =~ $pattern ]]; then echo "⚠️ 確認が必要なコマンド: $COMMAND" read -p "本当に実行しますか? (yes/no): " confirm if [[ "$confirm" != "yes" ]]; then echo "コマンドをキャンセルしました。" exit 1 fi fi done echo "✅ コマンドは安全です: $COMMAND"