Skip to content

Conversation

@mkitti
Copy link
Contributor

@mkitti mkitti commented Jan 22, 2026

  • Add custom SSHKeyContentResponse that wipes memory after sending content
  • Use pydantic.SecretStr to guard ssh private key password
  • Add restrict keyword to authorized_keys options
  • Add fileglancer to authorized_keys comment
  • Add tests for SSH key handling

TODO:

  • Only manage authorized keys which have fileglancer in the comment
  • Consider using StreamingResponse to further avoid middleware buffers that contain the entire key

mkitti and others added 10 commits January 21, 2026 22:40
- Add ability to generate temporary SSH keys that are added to
  authorized_keys but private key is only shown once for copying
- Add regenerate public key from private key functionality
- Track id_ed25519 status (exists, unmanaged, missing pubkey)
- Hide private key display in temp key dialog, only allow copy
- Sort keys with id_ed25519 displayed first
- Use clean 'fileglancer' comment when regenerating public keys

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Test coverage for functionality added in recent commits:
- generate_temp_key_and_authorize with passphrase support
- regenerate_public_key from private key
- check_id_ed25519_status for managed/unmanaged detection
- list_ssh_keys sorting (id_ed25519 first)
- Umask restoration after key generation
- TempKeyResponse header inclusion and temp file cleanup
- _parse_authorized_keys_fileglancer filtering

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant