name: hermes-relay # Temporary v1 shim for Hermes installers that reject manifests the runtime supports; see docs/project/TODO.md. manifest_version: 1 api_version: 1 version: 1.11.3 description: "Hermes-Relay plugin for QR pairing, relay sessions, dashboard management, remote desktop/phone tooling, and optional legacy compatibility diagnostics. Standard chat, Manage, and dashboard voice remain vanilla upstream Hermes surfaces." author: Axiom Labs license: MIT homepage: https://github.com/Codename-11/hermes-relay tags: [android, dashboard, gateway, relay, remote-access, voice] python_dependencies: - "requests>=2.28.0,<3" - "aiohttp>=3.14.1,<4" - "segno>=1.6.0,<2" - "pyyaml>=6.0,<7" - "httpx>=0.25.0,<1" - "websocket-client>=1.8.0,<2" # All three are OPTIONAL — only needed if you use the relay's extra / # provider-native voice engines. The standard (no-plugin) chat, Manage, and # dashboard voice path needs none of these. `hermes plugins install` prompts # for each; skip any you don't use (press Enter) and set it later in # ~/.hermes/.env. Keys are also accepted under VOICE_TOOLS_*_KEY aliases. requires_env: - name: XAI_API_KEY description: "Optional — xAI/Grok voice (TTS + realtime). Leave blank unless using Grok relay voice." url: "https://console.x.ai/" secret: true - name: OPENAI_API_KEY description: "Optional — OpenAI voice (TTS + realtime). Leave blank unless using OpenAI relay voice." url: "https://platform.openai.com/api-keys" secret: true - name: ELEVENLABS_API_KEY description: "Optional — ElevenLabs TTS. Leave blank unless using ElevenLabs relay voice." url: "https://elevenlabs.io/app/settings/api-keys" secret: true provides_tools: - android_ping - android_read_screen - android_find_nodes - android_tap - android_tap_text - android_long_press - android_type - android_swipe - android_drag - android_open_app - android_press_key - android_screenshot - android_scroll - android_wait - android_get_apps - android_current_app - android_media - android_describe_node - android_setup - android_macro - android_clipboard_read - android_clipboard_write - android_screen_hash - android_diff_screen - android_send_intent - android_broadcast - android_events - android_event_stream - android_location - android_search_contacts - android_call - android_send_sms - android_return_to_hermes - android_share_media - android_send_mms - desktop_read_file - desktop_write_file - desktop_search_files - desktop_terminal - desktop_patch - desktop_powershell - desktop_spawn_detached - desktop_list_processes - desktop_kill_process - desktop_find_pid_by_port - desktop_job_start - desktop_job_status - desktop_job_logs - desktop_job_cancel - desktop_job_list - desktop_copy_directory - desktop_zip - desktop_unzip - desktop_checksum - desktop_health - desktop_computer_status - desktop_computer_screenshot - desktop_computer_action - desktop_computer_grant_request - desktop_computer_cancel - desktop_usb_devices - desktop_usb_run - desktop_adb_devices - desktop_adb_shell - desktop_adb_push - desktop_adb_pull - desktop_adb_install - desktop_adb_logcat - relay_plugin_draft - relay_plugin_publish - relay_plugin_remove - relay_plugin_list provides_hooks: - on_session_start - pre_llm_call - post_llm_call