{
  "permissions": {
    "allow": [
      "Read(//c/Windows/System32/drivers/etc/**)",
      "Bash(netstat -ano)",
      "Bash(tasklist)",
      "Read(//d/laragon/etc/apache2/sites-enabled//**)",
      "Read(//d/laragon/etc/nginx/sites-enabled//**)",
      "Bash(curl -s -o /dev/null -w \"HTTP %{http_code}  size=%{size_download}  redirect=%{redirect_url}\\\\n\" -H \"Host: placeo.test\" http://127.0.0.1/)",
      "Bash(curl -s -H \"Host: placeo.test\" http://127.0.0.1/)",
      "Read(//d/laragon/usr/**)",
      "Read(//d/laragon/usr/tpl//**)",
      "Read(//d/laragon/usr/tpl/**)",
      "PowerShell(Stop-Process -Id 5364,8304 -Force -ErrorAction SilentlyContinue)",
      "PowerShell(Start-Process -FilePath $bin -ArgumentList \"-d\",$d -WindowStyle Hidden)",
      "PowerShell(Get-CimInstance Win32_Process -Filter \"Name='httpd.exe'\")",
      "PowerShell($bin = \"D:\\\\laragon\\\\bin\\\\apache\\\\httpd-2.4.66-260223-Win64-VS18\\\\bin\\\\httpd.exe\")",
      "PowerShell($d   = \"D:/laragon/bin/apache/httpd-2.4.66-260223-Win64-VS18\")",
      "Bash(curl -s -o /dev/null -w \"HTTP %{http_code}  size=%{size_download}\\\\n\" -H \"Host: placeo.test\" http://127.0.0.1/)",
      "Bash(cd /d/laragon/www/placeo/docs && find . -type f | head -100; echo \"=== total files ===\"; find . -type f | wc -l)",
      "Read(//d/d/laragon/www/placeo/**)",
      "Bash(ssh -o StrictHostKeyChecking=accept-new -T git@gitlab.com)",
      "Bash(git config *)",
      "Bash(ssh -o StrictHostKeyChecking=accept-new -o ConnectTimeout=10 -o BatchMode=yes placeo@placeo.ru \"whoami; hostname; pwd\")",
      "Bash(ssh -o StrictHostKeyChecking=accept-new -o ConnectTimeout=10 -o BatchMode=yes root@placeo.ru \"whoami; hostname\")",
      "Bash(ssh root@placeo.ru \"sudo -u placeo -H bash /home/placeo/deploy-placeo.sh\")",
      "Bash(ssh root@placeo.ru \"sudo -u placeo -H git -C /home/placeo/web/placeo.ru/private/placeo rev-parse --short HEAD\")",
      "Bash(echo \"prod HEAD: $\\(ssh root@placeo.ru \"sudo -u placeo -H git -C /home/placeo/web/placeo.ru/private/placeo rev-parse --short HEAD\" 2>&1\\)\")",
      "Bash(ssh root@placeo.ru \"grep -E '^PHONE_VERIFY_DRIVER' /home/placeo/web/placeo.ru/private/placeo/.env || echo '\\(not set → manual\\)'\")",
      "Bash(echo \"prod PHONE_VERIFY_DRIVER: $\\(ssh root@placeo.ru \"grep -E '^PHONE_VERIFY_DRIVER' /home/placeo/web/placeo.ru/private/placeo/.env || echo '\\(not set → manual\\)'\" 2>&1\\)\")",
      "Bash(curl -s -o /dev/null -w \"https://placeo.ru -> HTTP %{http_code}\\\\n\" https://placeo.ru/)",
      "Bash(curl -s https://placeo.ru/)",
      "Bash(curl -s -o /dev/null -w \"POST /phone/start -> HTTP %{http_code}\\\\n\" -X POST https://placeo.ru/phone/start -H \"Accept: application/json\")",
      "Bash(ssh root@placeo.ru 'sudo -u placeo -H php8.3 /home/placeo/web/placeo.ru/private/placeo/artisan tinker --execute=\" *)",
      "Bash(echo \"prod HEAD: $\\(ssh root@placeo.ru \"sudo -u placeo -H git -C /home/placeo/web/placeo.ru/private/placeo rev-parse --short HEAD\"\\)\")",
      "Bash(ssh root@placeo.ru \"sudo -u placeo -H php8.3 /home/placeo/web/placeo.ru/private/placeo/artisan tinker --execute=\\\\\"echo Schema::hasColumn\\('widgets','platform'\\)?'yes':'no';\\\\\"\")",
      "Bash(echo \"platform column on prod: $\\(ssh root@placeo.ru \"sudo -u placeo -H php8.3 /home/placeo/web/placeo.ru/private/placeo/artisan tinker --execute=\\\\\"echo Schema::hasColumn\\('widgets','platform'\\)?'yes':'no';\\\\\"\" 2>&1)",
      "Bash(rm -rf \"/c/Users/Administrator/.claude/projects/d--larago-www-placeo\" && echo \"removed typo dir\")",
      "Bash(curl -s -o /dev/null -w \"/cabinet/imports -> HTTP %{http_code} \\(302=redirect to login, route exists\\)\\\\n\" https://placeo.ru/cabinet/imports)",
      "Bash(ssh root@placeo.ru \"systemctl is-active placeo-queue; sudo -u placeo -H php8.3 /home/placeo/web/placeo.ru/private/placeo/artisan schedule:list 2>&1 | grep -i 'imports-auto-update' | head -1\")",
      "Bash(ssh root@placeo.ru \"sudo -u placeo -H php8.3 /home/placeo/web/placeo.ru/private/placeo/artisan tinker --execute=\\\\\"echo Schema::hasTable\\('import_sources'\\)?'sources_ok ':'no '; echo Schema::hasTable\\('import_items'\\)?'items_ok':'no';\\\\\"\")",
      "PowerShell($env:Path = \"D:\\\\laragon\\\\bin\\\\nodejs\\\\node-v22;\" + $env:Path; npm run build)",
      "PowerShell(git add -A)",
      "PowerShell(ssh root@placeo.ru \"sudo -u placeo -H bash /home/placeo/deploy-placeo.sh\")",
      "PowerShell(D:\\\\laragon\\\\bin\\\\php\\\\php-8.3\\\\php.exe -l app\\\\Filament\\\\Pages\\\\Settings.php)",
      "PowerShell($php = \"D:\\\\laragon\\\\bin\\\\php\\\\php-8.3.30-Win32-vs16-x64\\\\php.exe\"; & $php -l app\\\\Filament\\\\Pages\\\\Settings.php)",
      "PowerShell($php = \"D:\\\\laragon\\\\bin\\\\php\\\\php-8.3.30-Win32-vs16-x64\\\\php.exe\"; & $php artisan view:clear; & $php artisan view:cache 2>&1 | Select-Object -Last 5)",
      "PowerShell($php = \"D:\\\\laragon\\\\bin\\\\php\\\\php-8.3.30-Win32-vs16-x64\\\\php.exe\"; & $php artisan view:clear)",
      "Bash(curl -s \"https://fonts.bunny.net/css?family=golos-text:400,500,600,700&subsets=cyrillic\")",
      "Bash(curl -s \"https://fonts.bunny.net/css?family=onest:600,700,800&subsets=cyrillic\")",
      "Bash(curl -s \"https://fonts.bunny.net/css?family=golos-text:400,500,600,700&subsets=cyrillic,latin\")",
      "Bash(grep -oE \"/\\\\* \\(cyrillic|latin\\)[^*]*\\\\*/\")",
      "Bash(curl -s \"https://fonts.bunny.net/css?family=onest:600,700,800&subsets=cyrillic,latin\")",
      "PowerShell($env:Path = \"D:\\\\laragon\\\\bin\\\\nodejs\\\\node-v22;\" + $env:Path; npm run build 2>&1 | Select-String -Pattern \"golos|onest|fonts|error|Error|built\" -CaseSensitive:$false | Select-Object -First 40)",
      "Bash(grep -rln \"fonts\" vendor/laravel/vite-plugin/src/)",
      "Bash(ls vendor/laravel/vite-plugin/src/)",
      "Bash(grep -rln \"Blade::directive\\('fonts'\\\\|function fonts\\\\|@fonts\\\\|'fonts'\" vendor/laravel/framework/src/Illuminate/Foundation/Vite.php vendor/laravel/framework/src/Illuminate/Foundation/Providers/FoundationServiceProvider.php)",
      "Bash(grep -rln \"fonts\" vendor/laravel/framework/src/Illuminate/Foundation/Vite.php)",
      "PowerShell($php = \"D:\\\\laragon\\\\bin\\\\php\\\\php-8.3.30-Win32-vs16-x64\\\\php.exe\"; & $php artisan view:clear | Out-Null; Start-Process -FilePath $php -ArgumentList \"artisan\",\"serve\",\"--port=8099\" -WindowStyle Hidden; Start-Sleep -Seconds 4; try { $h = Invoke-WebRequest -Uri \"http://127.0.0.1:8099/\" -UseBasicParsing -TimeoutSec 10; $links = \\($h.Content -split \"`n\" | Select-String -Pattern \"googleapis|gstatic|fonts-[A-Za-z0-9]+\\\\.css|onest|golos\" \\); $links | ForEach-Object { $_.Line.Trim\\(\\) } | Select-Object -First 15 } catch { \"ERR: $\\($_.Exception.Message\\)\" }; Get-Process php -ErrorAction SilentlyContinue | Where-Object { $_.StartTime -gt \\(Get-Date\\).AddMinutes\\(-1\\) } | Stop-Process -Force -ErrorAction SilentlyContinue)",
      "PowerShell($php = \"D:\\\\laragon\\\\bin\\\\php\\\\php-8.3.30-Win32-vs16-x64\\\\php.exe\"; $p = Start-Process -FilePath $php -ArgumentList \"artisan\",\"serve\",\"--port=8099\" -WindowStyle Hidden -PassThru; Start-Sleep -Seconds 6; try { $h = Invoke-WebRequest -Uri \"http://127.0.0.1:8099/login\" -UseBasicParsing -TimeoutSec 20; \"STATUS $\\($h.StatusCode\\)\"; \\($h.Content -split \"`n\" | Select-String -Pattern \"googleapis|gstatic|fonts-[A-Za-z0-9]+\\\\.css|@fonts|onest|golos\"\\).Line | ForEach-Object { $_.Trim\\(\\) } | Select-Object -First 15 } catch { \"ERR: $\\($_.Exception.Message\\)\" } finally { Stop-Process -Id $p.Id -Force -ErrorAction SilentlyContinue })",
      "Bash(grep -oE \"production\\\\.\\(ERROR|CRITICAL\\):[^\\\\\"]{0,200}\" storage/logs/laravel.log)",
      "PowerShell(Get-NetTCPConnection -LocalPort 8099 -State Listen -ErrorAction SilentlyContinue | ForEach-Object { Stop-Process -Id $_.OwningProcess -Force -ErrorAction SilentlyContinue }; git add -A; git status --short)",
      "PowerShell(ssh root@placeo.ru \"sudo -u placeo -H bash /home/placeo/deploy-placeo.sh\" 2>&1)",
      "PowerShell($h = Invoke-WebRequest -Uri \"https://placeo.ru/\" -UseBasicParsing -TimeoutSec 25; \"STATUS: $\\($h.StatusCode\\)\"; \"--- font-related lines ---\"; \\($h.Content -split \"`n\" | Select-String -Pattern \"googleapis|gstatic|fonts-[A-Za-z0-9]+\\\\.css|golos|onest\" -AllMatches\\) | ForEach-Object { $_.Line.Trim\\(\\) } | Select-Object -First 12)",
      "Bash(python -c \"import json;m=json.load\\(open\\('public/build/fonts-manifest.json'\\)\\);print\\('preloads:',len\\(m.get\\('preloads',[]\\)\\)\\)\")",
      "Bash(node -e \"const m=require\\('./public/build/fonts-manifest.json'\\);console.log\\('preloads:',\\(m.preloads||[]\\).length\\)\")",
      "Bash(git commit -m ' *)",
      "Bash(git commit -q -m ' *)",
      "Bash(ssh -o ConnectTimeout=15 root@placeo.ru 'cd /home/placeo/web/placeo.ru/private/placeo && sudo -u placeo -H php8.3 artisan config:clear >/dev/null 2>&1 && echo \"config cleared\" && sudo -u placeo -H php8.3 artisan tinker --execute='\\\\''try { Illuminate\\\\Support\\\\Facades\\\\Mail::raw\\(\"Placeo SMTP test — \".now\\(\\)->toDateTimeString\\(\\), function\\($m\\){ $m->to\\(\"adwords.krzl@gmail.com\"\\)->subject\\(\"Placeo SMTP test\"\\); }\\); echo \"SENT_OK\"; } catch \\(\\\\Throwable $e\\) { echo \"ERROR: \".$e->getMessage\\(\\); }'\\\\'' 2>&1')",
      "Bash(curl -s \"https://placeo.ru/widget/placeo-widget.css\")",
      "Bash(curl -s \"https://placeo.ru/widget/placeo-widget.js\")"
    ],
    "additionalDirectories": [
      "C:\\Users\\Administrator\\.claude\\projects\\d--larago-www-placeo"
    ]
  }
}
