UPTERM(1)

πŸ“¦ version 0.41.0, in arch rolling

πŸ’… upterm-session-ssh-config β€” the UPTERM(1) glow-up

okay bestie, so this is a page out of the Upterm Manual, section 1, and it's literally the manual for upterm-session-ssh-config. no cap, the whole thing is about printing the ssh config that actually reaches your session 🫢

✨ NAME ✨

upterm-session-ssh-config β€” print the ssh config that reaches a session. that's the whole job, and she does it flawlessly πŸ’…

✨ SYNOPSIS ✨

upterm session ssh-config NAME|ID [flags]

✨ DESCRIPTION ✨

so what this does is print everything ssh needs to reach a session that you got to name yourself. the whole point is that plain ssh, scp, sftp and VS Code (Remote-SSH) can connect to it like it's just any other host πŸŽ€. it gives you two things: a Host block for ~/.ssh/config, and the relay's key for ~/.ssh/known_hosts.

the Host block: put it in ~/.ssh/config on every device you connect from. its User is the session's SSH user β€” and heads up, that changes whenever the session restarts, and on a relay that routes by node, it also changes when the session comes back on another node 😭. so when that happens: run this again, and replace the block. the Host is the session's name, or whatever --alias gave you.

the known_hosts lines: add these to ~/.ssh/known_hosts on each device, once. they're the relay key that this session's host trusted when it connected πŸ”₯. two vibes here, and they matter:

  • if the host accepted that key on first use, with no line in its known_hosts to check it against, there's a comment above it saying exactly that β€” so compare its fingerprint with the one the relay's operator publishes before you add it πŸ‘€
  • if there's no comment above it, that means a line already in the host's known_hosts matched the key, which makes it only as good as that line 🫠
⚠️ these two parts go in different files. the known_hosts lines are not ssh config, so do not append the whole output to ~/.ssh/config. like, please. i'm begging πŸ™ˆ

NAME|ID is the session's name (the one upterm host printed, or the one --name gave it) or its session ID β€” and upterm session list shows you both, icon that πŸ‘‘

also, upterm session info NAME -o json has the same block as sshConfig, and the known_hosts lines as knownHosts, sitting right beside how the host came to trust the key (relayKeyTrust). very cunty of it honestly πŸ¦‹

exit statuses: it exits 4 when no session has the name, and 1 for any other failure. know your codes bestie πŸ’€

✨ OPTIONS ✨

  • --alias="" β€” the name to give the session in ~/.ssh/config, so you can do ssh ALIAS. default: the session's name ✨
  • -h, --help[=false] β€” help for ssh-config. she's helpful, she's humble πŸ’–

✨ OPTIONS INHERITED FROM PARENT COMMANDS ✨

  • --debug[=false] β€” enable debug logging (log file: /build/.upterm/upterm.log). a non-empty DEBUG turns it on too πŸ‘‘

✨ EXAMPLE ✨

  # Print the ssh config for the session named home:
  upterm session ssh-config home

  # The same session, by its session ID:
  upterm session ssh-config d3k5fia7m4us73ehblug

  # Name it laptop-home in ~/.ssh/config, for 'ssh laptop-home':
  upterm session ssh-config home --alias laptop-home

✨ SEE ALSO ✨

upterm-session(1) β€” go read her next, she's iconic 🌸

✨ HISTORY ✨

2-Nov-2026 β€” Auto generated by spf13/cobra. the robots did this one πŸ€–βœ¨


and that's the page, bestie!! πŸŽ€ this particular manual is Upterm 0.0.0+dev, dated Nov 2026, and it's the UPTERM(1) one β€” mwah, go configure your ssh in peace πŸ’œπŸ«Ά

πŸ“¦ where this page comes from