Problem
Hermes Relay currently launches directly into the active chat interface and gateway session without requiring authentication. If an unlocked device is handed to another person or accessed without authorization, all conversation history, paired agent profiles, and agent tool execution surfaces are immediately accessible.
While Android offers OS-level profiles or Private Space on newer OS releases, in-app access gating is standard practice for clients handling sensitive infrastructure, personal data, and command execution (similar to Signal or Bitwarden).
Proposed Solution
Add an optional "App Lock" toggle under Settings (e.g., Security or Privacy):
-
BiometricPrompt Integration:
- Use Jetpack to trigger the system biometric / device credential prompt (fingerprint, face unlock, or device PIN).
- Gate app launch and return from background behind this prompt.
-
Lock Timeout Configuration:
- Options: Immediately, 1 minute, 5 minutes, 15 minutes.
-
Screen Protection ():
- Provide an option or default behavior to set when locked or backgrounded, preventing conversation snapshots in the Android recent-apps switcher.
Alternatives Considered
- Supervised Mode: Currently exists in the app, but its scope is restricted to locking settings configuration behind a custom PBKDF2 PIN rather than protecting the chat interface or app launch.
- OS-level App Lock / Private Space: Disables background notifications and companion alerts, disrupting proactive agent messaging.
Problem
Hermes Relay currently launches directly into the active chat interface and gateway session without requiring authentication. If an unlocked device is handed to another person or accessed without authorization, all conversation history, paired agent profiles, and agent tool execution surfaces are immediately accessible.
While Android offers OS-level profiles or Private Space on newer OS releases, in-app access gating is standard practice for clients handling sensitive infrastructure, personal data, and command execution (similar to Signal or Bitwarden).
Proposed Solution
Add an optional "App Lock" toggle under Settings (e.g., Security or Privacy):
BiometricPrompt Integration:
Lock Timeout Configuration:
Screen Protection ():
Alternatives Considered