diff --git a/images/2026-03-17 13_37_35-Wraith.png b/images/2026-03-17 13_37_35-Wraith.png new file mode 100644 index 0000000..4e25d31 Binary files /dev/null and b/images/2026-03-17 13_37_35-Wraith.png differ diff --git a/internal/ssh/service.go b/internal/ssh/service.go index 2e3b5c1..d60677e 100644 --- a/internal/ssh/service.go +++ b/internal/ssh/service.go @@ -142,20 +142,10 @@ func (s *SSHService) Connect(hostname string, port int, username string, authMet // Launch goroutine to read stdout and forward data via the output handler go s.readLoop(sessionID, stdout) - // Inject shell integration for CWD tracking (OSC 7). - // Send both bash and zsh variants — the wrong shell ignores them harmlessly. - go func() { - time.Sleep(500 * time.Millisecond) - bashCmd := ShellIntegrationCommand("bash") - zshCmd := ShellIntegrationCommand("zsh") - if bashCmd != "" { - // Write commands silently; errors are non-fatal - _, _ = stdin.Write([]byte(bashCmd + "\n")) - } - if zshCmd != "" { - _, _ = stdin.Write([]byte(zshCmd + "\n")) - } - }() + // CWD tracking via OSC 7 is handled passively — the CWDTracker in readLoop + // parses OSC 7 sequences if the remote shell already emits them. Automatic + // PROMPT_COMMAND injection is deferred until we have a non-echoing mechanism + // (e.g., writing to a second SSH channel or modifying .bashrc). return sessionID, nil }