{
  "permissions": {
    "allow": [
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@norizuki.com 'node --version 2>/dev/null || echo '\\\\''node not found'\\\\''; which node 2>/dev/null || echo '\\\\''no path'\\\\''; ls /usr/local/bin/node 2>/dev/null || echo '\\\\''not in /usr/local/bin'\\\\''')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'node --version 2>/dev/null || echo '\\\\''node not found'\\\\''')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'echo '\\\\''=== brew node ==='\\\\'' && HOMEBREW_NO_AUTO_UPDATE=1 /usr/local/bin/brew search node 2>/dev/null | head -20; echo '\\\\''=== apache sites ==='\\\\'' && ls /Library/Server/Web/Config/apache2/sites/ 2>/dev/null; echo '\\\\''=== apache custom sites ==='\\\\'' && ls /usr/local/apache2/conf/sites/ 2>/dev/null || ls /usr/local/apache2/conf/vhosts/ 2>/dev/null || echo '\\\\''check needed'\\\\''')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'echo '\\\\''=== macOS Server Apache atchat.jp HTTP ==='\\\\'' && cat '\\\\''/Library/Server/Web/Config/apache2/sites/0000_127.0.0.1_34543_atchat.jp.conf'\\\\''; echo '\\\\''=== macOS Server Apache atchat.jp HTTPS ==='\\\\'' && cat '\\\\''/Library/Server/Web/Config/apache2/sites/0000_127.0.0.1_34580_atchat.jp.conf'\\\\''; echo '\\\\''=== frontend Apache conf dir ==='\\\\'' && ls /usr/local/apache2/conf/')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password -o ConnectTimeout=15 niac@159.28.108.2 'echo ok')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'cat '\\\\''/Library/Server/Web/Config/apache2/sites/0000_127.0.0.1_34543_atchat.jp.conf'\\\\''')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'cat '\\\\''/Library/Server/Web/Config/apache2/sites/0000_127.0.0.1_34580_atchat.jp.conf'\\\\''')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'cat /Library/Server/Web/Config/apache2/sites/0000_127.0.0.1_34580_atchat.jp.conf && echo '\\\\''---frontend---'\\\\'' && ls /usr/local/apache2/conf/ && echo '\\\\''---frontend httpd.conf includes---'\\\\'' && grep -i '\\\\''atchat\\\\|include\\\\|vhost'\\\\'' /usr/local/apache2/conf/httpd.conf | head -30')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'cat /usr/local/apache2/conf/httpd-content.conf')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'ls /atchat.jp 2>/dev/null || echo '\\\\''no /atchat.jp'\\\\''; cat /usr/local/apache2/conf/httpd.conf | grep -i '\\\\''atchat\\\\|proxy\\\\|vhost\\\\|include'\\\\'' | head -40')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'ls /atchat.jp 2>/dev/null && echo '\\\\''---httpd.conf---'\\\\'' && grep -i '\\\\''atchat\\\\|proxy\\\\|vhost\\\\|include'\\\\'' /usr/local/apache2/conf/httpd.conf | head -40')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'ls /atchat.jp')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'grep -n '\\\\''atchat\\\\|proxy\\\\|wstunnel\\\\|ProxyPass\\\\|vhost\\\\|VirtualHost\\\\|Include'\\\\'' /usr/local/apache2/conf/httpd.conf')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'echo connected')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'grep -n '\\\\''atchat\\\\|ProxyPass\\\\|VirtualHost\\\\|Include'\\\\'' /usr/local/apache2/conf/httpd.conf')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'cat /usr/local/apache2/conf/extra/proxy-html.conf')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'ps aux | grep -i apache | grep -v grep; echo '\\\\''---'\\\\''; sudo -S netstat -tlnp 2>/dev/null | grep -E '\\\\'':80|:443|:34'\\\\'' || netstat -an | grep -E '\\\\''LISTEN'\\\\'' | grep -E '\\\\''\\\\.80 |\\\\.443 |\\\\.345'\\\\''')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'cat /Library/Server/Web/Config/Proxy/apache_serviceproxy.conf')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'ls /Library/Server/Web/Config/Proxy/; echo '\\\\''---certs---'\\\\''; ls /etc/certificates/ | grep atchat')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'cat /Library/Server/Web/Config/Proxy/apache_serviceproxy_customsites.conf')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'HOMEBREW_NO_AUTO_UPDATE=1 HOMEBREW_NO_ANALYTICS=1 /usr/local/bin/brew info node@14 2>&1 | head -5')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'HOMEBREW_NO_AUTO_UPDATE=1 HOMEBREW_NO_ANALYTICS=1 /usr/local/bin/brew install node@14 2>&1')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'echo test')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password -o ServerAliveInterval=30 niac@159.28.108.2 'HOMEBREW_NO_AUTO_UPDATE=1 HOMEBREW_NO_ANALYTICS=1 /usr/local/bin/brew install node@14 2>&1 | tail -20')",
      "Bash(npx tsc *)",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'ls /usr/local/Cellar/node@14/ 2>/dev/null && echo '\\\\''installed'\\\\'' || echo '\\\\''not yet'\\\\''')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 '/usr/local/Cellar/node@14/14.17.0/bin/node --version && /usr/local/Cellar/node@14/14.17.0/bin/npm --version && mkdir -p /Users/niac/atchat-server && echo '\\\\''dir created'\\\\''')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'ls /usr/local/Cellar/node@14/')",
      "Bash(curl -L -s -o /tmp/node16.tar.gz https://nodejs.org/dist/v16.20.2/node-v16.20.2-darwin-x64.tar.gz)",
      "Bash(scp -P 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -i '~/.ssh/norizuki_rsa' /tmp/node16.tar.gz niac@159.28.108.2:/tmp/)",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'tar -xzf /tmp/node16.tar.gz -C /usr/local/ && /usr/local/node-v16.20.2-darwin-x64/bin/node --version && echo ok')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'tar -xzf /tmp/node16.tar.gz -C /Users/niac/ 2>&1 && /Users/niac/node-v16.20.2-darwin-x64/bin/node --version && echo ok')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'mkdir -p /Users/niac/atchat-server && echo done')",
      "Bash(scp -P 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -i '~/.ssh/norizuki_rsa' -r dist/ package.json niac@159.28.108.2:/Users/niac/atchat-server/)",
      "Bash(scp -P 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -i '~/.ssh/norizuki_rsa' package.json niac@159.28.108.2:/Users/niac/atchat-server/)",
      "Bash(scp -P 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -i '~/.ssh/norizuki_rsa' dist/ifile.js dist/index.js dist/place.js dist/session.js dist/types.js dist/utils.js niac@159.28.108.2:/Users/niac/atchat-server/)",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'mkdir -p /Users/niac/atchat-server/dist && mv /Users/niac/atchat-server/*.js /Users/niac/atchat-server/dist/ && ls /Users/niac/atchat-server/dist/')",
      "Bash(tar --exclude=node_modules --exclude=src --exclude=dist '--exclude=*.json' '--exclude=*.ts' --exclude=sql --exclude=test -czf /tmp/atchat-server-data.tar.gz DATA2 Data account.text error.text localDB.rsd NewUserList.TXT NewUserList.text AdminLog.text)",
      "Bash(tar -czf /tmp/atchat-server-data.tar.gz DATA2 Data account.text error.text localDB.rsd NewUserList.TXT NewUserList.text AdminLog.text)",
      "Bash(scp -P 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -i '~/.ssh/norizuki_rsa' /tmp/atchat-server-data.tar.gz niac@159.28.108.2:/tmp/)",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'tar -xzf /tmp/atchat-server-data.tar.gz -C /Users/niac/atchat-server/ && ls /Users/niac/atchat-server/')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'ls /Users/niac/atchat-server/ && echo '\\\\''---'\\\\'' && ls /Users/niac/atchat-server/dist/')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'ls /Users/niac/atchat-server/DATA2/ | wc -l')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'cd /Users/niac/atchat-server && /Users/niac/node-v16.20.2-darwin-x64/bin/npm install ws 2>&1 | tail -5')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'export PATH=/Users/niac/node-v16.20.2-darwin-x64/bin:$PATH && cd /Users/niac/atchat-server && npm install ws 2>&1 | tail -5')",
      "Bash(sshpass -p niacroute0230 ssh -p 22 -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa -o StrictHostKeyChecking=no -o PreferredAuthentications=keyboard-interactive,password niac@159.28.108.2 'tail -20 /Users/niac/.npm/_logs/2026-04-21T09_08_34_423Z-debug-0.log')",
      "Bash(sshpass -p *)"
    ]
  }
}
