{ "permissions": { "allow": [ "Bash(npx -p typescript tsc --noEmit)", "Bash(node_modules/.bin/tsc --noEmit)", "PowerShell(Get-ChildItem public/video/ | Select-Object Name, @{N='SizeMB';E={[math]::Round\\($_.Length/1MB,2\\)}})", "PowerShell($f = Get-Item \"public/Video/Header_Video.mp4\"; Write-Output \\(\"Taille: {0:N2} MB\" -f \\($f.Length/1MB\\)\\))", "Read(//c/Users/mathe/Videos/**)", "PowerShell(Get-ChildItem \"public/Video/\" | Select-Object Name, @{N='SizeMB';E={[math]::Round\\($_.Length/1MB,2\\)}}, LastWriteTime)", "PowerShell($f = Get-ChildItem \"public\\\\Video\\\\\"; foreach \\($i in $f\\) { Write-Output \\(\"{0} - {1:N2} MB\" -f $i.Name, \\($i.Length/1MB\\)\\) })", "Bash(npx tsc *)", "Bash(git rm *)", "Bash(ssh -i ~/.ssh/id_rsa -o StrictHostKeyChecking=accept-new -o ConnectTimeout=15 root@167.233.134.148 \"echo '=== CONNECTED ==='; hostname; whoami; echo '--- OS ---'; cat /etc/os-release | grep PRETTY_NAME; echo '--- Existing tools ---'; node -v 2>/dev/null || echo 'node: NONE'; npm -v 2>/dev/null || echo 'npm: NONE'; nginx -v 2>&1 || echo 'nginx: NONE'; git --version 2>/dev/null || echo 'git: NONE'\")", "Read(//c/Users/mathe/.ssh/**)", "Read(//c/Users/mathe/.ssh//**)", "Bash(ssh -V)", "Bash(ssh -v -i ~/.ssh/id_rsa -o StrictHostKeyChecking=accept-new -o BatchMode=yes -o ConnectTimeout=15 root@167.233.134.148 \"echo OK\")", "PowerShell(ssh -i \"$env:USERPROFILE\\\\.ssh\\\\id_rsa\" -o StrictHostKeyChecking=accept-new -o BatchMode=yes -o ConnectTimeout=15 root@167.233.134.148 \"echo CONNECTED; hostname; curl -s ifconfig.me\")", "Bash(awk '{print $1, $2}')", "Bash(ssh -i ~/.ssh/id_rsa -o StrictHostKeyChecking=accept-new -o BatchMode=yes -o ConnectTimeout=15 root@167.233.134.148 \"echo '=== CONNECTE PAR CLE ==='; hostname; whoami; echo '--- OS ---'; grep PRETTY_NAME /etc/os-release; echo '--- Outils ---'; \\(node -v 2>/dev/null || echo 'node: NONE'\\); \\(npm -v 2>/dev/null || echo 'npm: NONE'\\); \\(nginx -v 2>&1 || echo 'nginx: NONE'\\); \\(git --version 2>/dev/null || echo 'git: NONE'\\)\")", "Bash(ssh -i ~/.ssh/id_rsa -o BatchMode=yes root@167.233.134.148 'bash -s')", "Bash(grep -c '\"node_modules/resend\"' package-lock.json)", "Bash(du -h public/Video/Header_Video.mp4)", "Bash(tar --exclude=./node_modules --exclude=./.next --exclude=./.git --exclude=./tsconfig.tsbuildinfo -czf __TRACKED_VAR__/site.tar.gz .)", "Bash(scp -i ~/.ssh/id_rsa -o BatchMode=yes /c/Users/mathe/AppData/Local/Temp/claude/d--Projet-Perso-HIGHLAND-GAMES-highland-games-website/301ad487-2340-43ac-914b-68f40fb0edad/scratchpad/site.tar.gz root@167.233.134.148:/tmp/site.tar.gz)", "Bash(ssh -i ~/.ssh/id_rsa -o BatchMode=yes root@167.233.134.148 \"ls -lh /tmp/site.tar.gz\")", "Bash(ssh -i ~/.ssh/id_rsa -o BatchMode=yes root@167.233.134.148 \"ip -6 addr show scope global | grep inet6 | awk '{print \\\\$2}'\")", "Bash(nslookup highlandgamesstudio.com)", "Bash(bash deploy.sh)", "Bash(ssh -i ~/.ssh/id_rsa -o BatchMode=yes root@167.233.134.148 'echo '\\\\''=== Emplacements des outils \\(doivent être dans /usr/bin ou /usr/local/bin\\) ==='\\\\''; for t in node npm pm2 rsync git; do printf '\\\\''%-8s %s\\\\n'\\\\'' \"$t\" \"$\\(command -v $t || echo MANQUANT\\)\"; done; echo '\\\\''=== PATH systemd par défaut ==='\\\\''; systemctl show-environment | grep PATH')", "Bash(ssh -i ~/.ssh/id_rsa -o BatchMode=yes root@167.233.134.148 \"journalctl -u act_runner --no-pager --since '12 min ago' | grep -iE 'task 1|Executor|finished|completed|exit' | tail -6\")", "Bash(git push *)" ] } }