You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Host key verifier now SHA256-hashes the presented key and compares against known_hosts entries with padding normalization. Previously, known hosts were accepted without fingerprint comparison (MITM vulnerability). Unknown hosts still default to TOFU; SSH_STRICT_HOSTS=1 rejects unknown hosts.
cwd argument in the legacy execCommand path is now shell-quoted, closing a shell-injection vector.
SFTP channels are now closed in a finally block — prior leak could exhaust the SFTP subsystem after repeated uploads/downloads.
Bad-regex crash in tail filtering is now caught and surfaced as a user-facing error instead of crashing the server.
Fixed
SSHManager.exec passthrough — ssh_execute, ssh_health_check, ssh_db_*, ssh_deploy, ssh_journalctl, ssh_systemctl, ssh_tail, ssh_cat were failing at runtime with "client.exec is not a function" despite unit tests passing against a mock.
Tool registry corrected — now reports the full 51 tools across 7 groups (previously listed 37 across 6). Enables per-group disable for the gamechanger tools.
Changed
CI workflow bumped to actions/checkout@v5 and actions/setup-node@v5 (silences Node 20 deprecation warnings).
ESLint max-warnings raised to 150; 660 formatting issues auto-fixed in one pass.
Internal: SFTP cache handle renamed _sftpHandle to avoid shadowing the new sftp() method.