Commit Graph

15 Commits

Author SHA1 Message Date
chrome-storm-c442
9b0e4c76a3 v1.9.0: S3 server type — bucket/object browser, drag-and-drop upload, resilient transfers
New server type: S3 (MinIO, AWS, any S3-compatible storage)
- core/s3_client.py: boto3 client with auto-reconnect, 10 retries, exponential backoff, multipart upload/download, tcp_keepalive
- gui/tabs/s3_tab.py: object browser (Treeview), bucket selector, folder navigation, drag-and-drop upload from Explorer (windnd), progress bar with %, multi-file upload
- CLI: --s3-buckets, --s3-ls, --s3-upload, --s3-download, --s3-delete with retry
- ServerDialog: access_key, secret_key, bucket fields
- Registration: server_store, connection_factory, status_checker, icons, app, i18n (EN/RU/ZH)
- Fix: build.py cleanup_old_releases now sorts by semver (was lexicographic, broke v1.8.100+)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 06:32:03 -05:00
chrome-storm-c442
85977863ec v1.8.84: skill-ssh.md — server type routing table for Redis/SQL/WinRM/etc
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 00:41:04 -05:00
chrome-storm-c442
1ee03a1da4 v1.8.74: skill docs update — resume/retry behavior, Windows SHA256 path fix
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 04:21:04 -05:00
chrome-storm-c442
7e7c1d3efc v1.8.73: reliable SFTP upload — chunked resume, SHA256 verification, adaptive retry
- CLI (ssh.py): chunked resume upload for files >10MB with .part atomic rename
- CLI: SHA256 verification (sha256sum on Linux, Get-FileHash on Windows)
- CLI: adaptive retry count based on file size (up to 30 for large files)
- CLI: SSH keepalive 15s + window_size 4MB for stable transfers
- CLI: path injection fix in SHA256 shell commands
- CLI: Windows SFTP path fix for PowerShell Get-FileHash
- GUI (ssh_client.py): chunked upload with resume in SFTPSession
- GUI: retry up to 3 attempts with SHA256 readback in SSHClientWrapper
- GUI: keepalive 15s + window_size 4MB in both auth paths
- Tested: 5MB, 15MB, 200MB uploads to Windows SSH server (116)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-28 10:03:07 -05:00
delta-cloud-208e
7c9e54bb44 feat: add --type support to --add command
- Support for all server types: ssh, telnet, mariadb, mssql, postgresql, redis, grafana, prometheus, winrm, rdp
- Add --type, --database, --token options to --add command
- Add server type validation
- Add type-specific fields (database, token, auth_method)
- Update skill-ssh.md with new usage

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-02-27 07:15:57 +00:00
chrome-storm-c442
3a5d1b27fc v1.8.60: multi-type status check + --add in skill + skill docs update
- _check_status_one: proper connectivity check per server type
  (SSH/SQL/Redis/Grafana/Prometheus/WinRM/RDP)
- ping_server uses _check_status_one instead of paramiko-only
- check_status shows server type column
- skill-ssh.md: allow --add, document it, update --status description
- CLAUDE.md: add --add/--remove/--set-note to command reference

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 05:26:24 -05:00
chrome-storm-c442
4c7c15e497 docs: clarify file transfer rules in skill-ssh.md
- Shell commands (echo/base64/cat) banned only as file transfer method, not as regular commands
- Clarify --upload workflow: existing files upload directly, new files create locally first

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 02:30:13 -05:00
chrome-storm-c442
24e4493e1d v1.8.52: fix skill — enforce SFTP upload/download, ban stdin/base64 file transfer
Prevents Claude Code from using creative shell-based file transfer methods
(echo/base64/cat stdin) that fail with exit 127 on large files.
Skill now clearly mandates --upload/--download (SFTP) as the ONLY allowed method.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 02:12:12 -05:00
chrome-storm-c442
4959004a3f v1.8.52: icons module, Windows SSH sanitization, embedded RDP improvements, UI polish
- Add core/icons.py — centralized icon text helper with emoji/symbol support
- Add Windows SSH command sanitization in ssh.py (Linux→Windows auto-translation)
- Improve embedded RDP: launch tab connect/disconnect, fullscreen toggle
- Refactor sidebar: cleaner server type badges
- Update server_dialog: adaptive fields per server type
- Add setup_openssh.bat tool
- Update skill-ssh.md and CLAUDE.md docs for Windows SSH support
- Cleanup old releases, add v1.8.48-v1.8.52

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 14:37:37 -05:00
chrome-storm-c442
eede67e6a9 feat: multi-type server support — SQL, Redis, Grafana, Prometheus, Telnet, WinRM, RDP/VNC
Full implementation of multi-type server management across GUI and CLI:

New clients: SQLClient (MariaDB/MSSQL/PostgreSQL), RedisClient, GrafanaClient,
PrometheusClient, TelnetSession, WinRMClient, RemoteDesktopLauncher.

New GUI tabs: QueryTab (SQL editor + Treeview), RedisTab (console + history),
GrafanaTab (dashboards + alerts), PrometheusTab (PromQL + targets),
PowershellTab (PS/CMD), LaunchTab (RDP/VNC external client).

Infrastructure: TAB_REGISTRY for conditional tabs per server type,
adaptive server_dialog fields, colored type badges in sidebar,
status checker for all types (SSH/TCP/SQL/Redis/HTTP), 100+ i18n keys.

CLI: ssh.py extended with --sql, --redis, --grafana-*, --prom-*, --ps, --cmd.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 09:35:24 -05:00
chrome-storm-c442
2d1d942ddc docs: fix skill syntax, update fallback generator, add progress docs
- Fix --info/--set-note syntax in CLAUDE.md (global flags, not per-alias)
- Add --remove, --install-key to CLAUDE.md examples
- Replace minimal fallback skill generator with full version (security rules, all commands, progress, SFTP double-slash)
- Add upload/download progress reporting to skill-ssh.md and README
- Fix outdated v1.5.4 version in README build examples

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 07:43:15 -05:00
chrome-storm-c442
e75afddb99 fix: SFTP paths on Windows — double-slash for remote, remove broken MSYS env
- Remote paths in upload/download require // prefix on Windows/Git Bash
- Removed useless MSYS_NO_PATHCONV from Python (must be shell-level)
- Removed broken bash wrapper
- Updated skill docs with // path rule and examples

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 07:14:49 -05:00
chrome-storm-c442
afa3210260 v1.8.23: upgrade ssh.py + skill for secure Claude Code integration
- Add --info (safe server details without credentials)
- Add --set-note (update server notes for context)
- Add --no-sudo flag documentation in skill
- Fix --add leaking user@ip:port in output
- Add WARNING to --list-full, forbid in skill
- Add notes column to --list output
- Update skill: portable path ~/.server-connections/, security rules, behavior docs
- Update CLAUDE.md: security section, architecture, dev commands, doc references

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 06:51:59 -05:00
chrome-storm-c442
efb508c982 v1.8.10: security audit fixes
- --list and --status no longer expose IP/port/user (only aliases)
- --list-full for admin use (not in skill)
- Removed --add from /ssh skill (servers added via GUI only)
- Removed exact file paths from skill template
- Added deny-read rules for ~/.server-connections/ files
- Wrapped main() in try/except to prevent traceback leaking
- Added needs_reencrypt() to encryption.py for future migration
- install_key no longer prints server IP

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 04:56:16 -05:00
chrome-storm-c442
42a6a876d3 Add Claude Code integration: shared config + Setup tab
- Shared servers.json at ~/.server-connections/ (GUI + Claude Code)
- Setup tab: one-click install of ssh.py, /ssh skill, SSH key
- Duplicate checks — safe to run multiple times
- tools/ssh.py + tools/skill-ssh.md bundled
- Updated README with integration docs (EN/RU/ZH)
- Deploy guide for new machines

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 09:01:22 -05:00