Files
Wes McKinney 4eecde064c feat: SSH remote session sync (#322)
## Summary

- Add `agentsview sync --host <host> [--user <user>] [--port <port>]
[--full]` to pull session data from remote machines over SSH
- Shells out to `ssh` CLI for transport (inherits tailscale keys, SSH
config, agent forwarding)
- Two SSH calls per sync: resolve remote agent dirs, then tar full
directory trees to a temp dir
- Delegates to the existing `sync.Engine` for discovery, parsing, and DB
writes (same code path as local sync)
- Session IDs prefixed with `host~` to prevent cross-machine collisions;
file paths stored as `host:/remote/path`
- Engine runs in ephemeral mode: no sync timestamp recording, no local
skip cache pollution
- Per-host remote skip cache (`remote_skipped_files` table) for
incremental sync
- Docker-based integration tests (`make test-ssh`) with sshd container
behind `sshtest` build tag

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-14 21:43:24 -05:00
..