The ssh install and ssh to commands (closes #2)
All checks were successful
check / check (push) Successful in 19s

install runs the system ssh and hands the host a short shell script.
The public key line reaches it on standard input, never on a command
line others on the host could read. The script makes ~/.ssh and
authorized_keys if missing, adds the line unless it is already there,
and says which of the two it did.

to serves the key from an agent inside the tool, on a unix socket in a
temporary directory only its owner can enter, and points ssh at it with
-o IdentityAgent. Socket and directory go when the command ends and the
private key is never written to disk. Only this command ends with the
status ssh ended with rather than status 1.

Model: opus-5
This commit is contained in:
2026-09-07 15:52:12 +00:00
parent d69bed722a
commit 4b8373ed1f
7 changed files with 613 additions and 12 deletions

View File

@@ -17,7 +17,7 @@ func Command() *cobra.Command {
Short: "derive ed25519 SSH keys",
}
group.AddCommand(public(), private())
group.AddCommand(public(), private(), install(), to())
return group
}