# freeid2601-dotcom/myra architecture

> Architecture diagram of the GitHub repository freeid2601-dotcom/myra, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-12). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/freeid2601-dotcom/myra
- Repository: https://github.com/freeid2601-dotcom/myra

## Overview

MYRA is an Android voice assistant intended to understand requests and interact with the device. The tree shows voice, AI, app discovery, screen understanding, accessibility automation, overlays, call handling, and security as distinct capabilities. The sampled call monitor starts the call-assistant activity for incoming calls; most other source was not sampled, and the README provides no workflow details. Accordingly, their connections are shown only as unverified rather than asserted runtime calls.

Main entry points: [`MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/services/RealtimeConversationService.kt`](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/services/RealtimeConversationService.kt) (Realtime conversation), [`MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/ui/main/MainActivity.kt`](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/ui/main/MainActivity.kt) (Main UI), [`MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/ai/IntentAnalyzer.kt`](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/ai/IntentAnalyzer.kt) (Intent analysis), [`MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/services/ForegroundVoiceService.kt`](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/services/ForegroundVoiceService.kt) (Voice service)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_interaction["Assistant interaction"]
  node_main_ui["Main UI<br/>[MainActivity.kt]"]
  node_call_ui["Call assistant UI"]
  node_overlay["Floating overlay"]
end

subgraph group_intelligence["AI and voice"]
  node_voice_service["Voice service"]
  node_realtime["Realtime conversation"]
  node_ai_response["AI responses"]
  node_intent["Intent analysis<br/>[IntentAnalyzer.kt]"]
  node_memory[("Conversation memory")]
end

subgraph group_device["Device capabilities"]
  node_app_search["App search<br/>[AppSearchEngine.kt]"]
  node_app_launch["App launcher<br/>[AppLauncher.kt]"]
  node_screen_vision["Screen vision"]
  node_accessibility["Accessibility control"]
  node_automation["Task automation"]
  node_call_monitor["Call monitor"]
end

subgraph group_safety["Security"]
  node_security["App security<br/>[SecurityManager.kt]"]
  node_settings["Security settings"]
end

node_user(("User"))
node_gemini["Gemini service"]
node_device["Android device"]

node_user -.->|"uses"| node_main_ui
node_main_ui -.->|"starts voice"| node_voice_service
node_voice_service -.->|"handles conversation"| node_realtime
node_realtime -.->|"requests response"| node_ai_response
node_ai_response -.->|"analyzes request"| node_intent
node_realtime -.->|"uses context"| node_memory
node_realtime -.->|"connects to"| node_gemini
node_main_ui -.->|"opens overlay"| node_overlay
node_intent -.->|"finds apps"| node_app_search
node_app_search -.->|"selects app"| node_app_launch
node_intent -.->|"uses screen context"| node_screen_vision
node_automation -.->|"controls interface"| node_accessibility
node_accessibility -.->|"operates device"| node_device
node_call_monitor -->|"opens on incoming call"| node_call_ui
node_device -.->|"reports call state"| node_call_monitor
node_settings -.->|"configures protection"| node_security

click node_main_ui "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/ui/main/MainActivity.kt"
click node_call_ui "https://github.com/freeid2601-dotcom/myra/blob/main/maya/MYRA/app/src/main/java/com/myra/assistant/ui/main/CallAssistantActivity.kt"
click node_overlay "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/overlay/FloatingAssistantController.kt"
click node_voice_service "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/services/ForegroundVoiceService.kt"
click node_realtime "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/services/RealtimeConversationService.kt"
click node_ai_response "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/ai/AIResponseManager.kt"
click node_intent "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/ai/IntentAnalyzer.kt"
click node_memory "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/ai/ConversationMemory.kt"
click node_app_search "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/apps/AppSearchEngine.kt"
click node_app_launch "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/apps/AppLauncher.kt"
click node_screen_vision "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/screenvision/VisualUIAnalyzer.kt"
click node_accessibility "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/accessibility/AccessibilityEventManager.kt"
click node_automation "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/automation/AutomationManager.kt"
click node_call_monitor "https://github.com/freeid2601-dotcom/myra/blob/main/maya/MYRA/app/src/main/java/com/myra/assistant/service/CallMonitorService.kt"
click node_security "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/security/SecurityManager.kt"
click node_settings "https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/security/SecuritySettingsActivity.kt"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_main_ui,node_call_ui,node_overlay,node_user toneBlue
class node_voice_service,node_realtime,node_ai_response,node_intent,node_memory toneAmber
class node_app_search,node_app_launch,node_screen_vision,node_accessibility,node_automation,node_call_monitor toneMint
class node_security,node_settings toneRose
class node_gemini,node_device toneIndigo
```

## Components

### Assistant interaction

- [Main UI](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/ui/main/MainActivity.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/ui/main/MainActivity.kt`
- [Call assistant UI](https://github.com/freeid2601-dotcom/myra/blob/main/maya/MYRA/app/src/main/java/com/myra/assistant/ui/main/CallAssistantActivity.kt): `maya/MYRA/app/src/main/java/com/myra/assistant/ui/main/CallAssistantActivity.kt`
- [Floating overlay](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/overlay/FloatingAssistantController.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/overlay/FloatingAssistantController.kt`

### AI and voice

- [Voice service](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/services/ForegroundVoiceService.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/services/ForegroundVoiceService.kt`
- [Realtime conversation](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/services/RealtimeConversationService.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/services/RealtimeConversationService.kt`
- [AI responses](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/ai/AIResponseManager.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/ai/AIResponseManager.kt`
- [Intent analysis](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/ai/IntentAnalyzer.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/ai/IntentAnalyzer.kt`
- [Conversation memory](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/ai/ConversationMemory.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/ai/ConversationMemory.kt`

### Device capabilities

- [App search](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/apps/AppSearchEngine.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/apps/AppSearchEngine.kt`
- [App launcher](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/apps/AppLauncher.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/apps/AppLauncher.kt`
- [Screen vision](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/screenvision/VisualUIAnalyzer.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/screenvision/VisualUIAnalyzer.kt`
- [Accessibility control](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/accessibility/AccessibilityEventManager.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/accessibility/AccessibilityEventManager.kt`
- [Task automation](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/automation/AutomationManager.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/automation/AutomationManager.kt`
- [Call monitor](https://github.com/freeid2601-dotcom/myra/blob/main/maya/MYRA/app/src/main/java/com/myra/assistant/service/CallMonitorService.kt): `maya/MYRA/app/src/main/java/com/myra/assistant/service/CallMonitorService.kt`

### Security

- [App security](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/security/SecurityManager.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/security/SecurityManager.kt`
- [Security settings](https://github.com/freeid2601-dotcom/myra/blob/main/MYRA%20123%20MB/MYRA/app/src/main/java/com/myra/assistant/security/SecuritySettingsActivity.kt): `MYRA 123 MB/MYRA/app/src/main/java/com/myra/assistant/security/SecuritySettingsActivity.kt`

### Other components

- **User**
- **Gemini service**
- **Android device**

## Connections

- User → Main UI: uses
- Main UI → Voice service: starts voice
- Voice service → Realtime conversation: handles conversation
- Realtime conversation → AI responses: requests response
- AI responses → Intent analysis: analyzes request
- Realtime conversation → Conversation memory: uses context
- Realtime conversation → Gemini service: connects to
- Main UI → Floating overlay: opens overlay
- Intent analysis → App search: finds apps
- App search → App launcher: selects app
- Intent analysis → Screen vision: uses screen context
- Task automation → Accessibility control: controls interface
- Accessibility control → Android device: operates device
- Call monitor → Call assistant UI: opens on incoming call (evidence: `maya/MYRA/app/src/main/java/com/myra/assistant/service/CallMonitorService.kt`)
- Android device → Call monitor: reports call state
- Security settings → App security: configures protection
