đśď¸ Mentra Live
A voice companion with memory on your glasses. Talk to your Companion through Mentra smart glasses. It recalls what you told it before from Companion Memory, answers with your Hubâs local model, and speaks the reply back.
The site has the setup guide, a builder for the bridgeâs settings file, and a demo of the companion UI with canned answers. The app is still a developer preview, and you canât install it yet.
Overview
Companion for Mentra is a MentraOSÂ Cloud SDK app, a bridge that runs on your Companion Hub or on a server you control. You speak to the glasses, MentraOS sends the audio to the bridge, and the bridge turns it into text, asks your local model for an answer, and speaks the answer back through the glasses. With Companion Memory turned on, each exchange is saved to your own Companion Memory and relevant memories are recalled into the next answer.
Status: developer preview. You canât install it yet. It has no public download or store listing, and its source repository is private, so you can run it only if Companion Intelligence gives you access. To ask about access or follow progress, join the Discord . The Companion for Mentra listing in the Hub app catalog is developer-only and its container image isnât public, so the production Hub store doesnât offer it.
Mentra is retiring the app type this bridge uses. Mentraâs roadmap update (timeline updated 20 July 2026) says Cloud SDK apps stop working in the main Mentra app with MentraOS 3.0, planned for 3 August 2026. It says a separate MentraOS Legacy build keeps them running, and that support for that build ends in October 2026. Mentraâs developer documentation now treats the Cloud SDK as the older SDK, and on 3 October 2026 the developer console at console.mentra.glass shows only âMentra Developer Console for Mentra 3.0 is coming soon,â so you canât register a new app there. Until the bridge is ported to Mentraâs newer SDKs, read the setup below as a description of what exists, not as steps you can complete today.
The bridge is a voice assistant. It does not record continuous video, index frames, or run a Bluetooth pairing screen in the Hub. Photos are taken only when you ask for one by voice, and only when you have turned that setting on.
Key features
- Voice loop â the bridge detects when you stop speaking, transcribes the utterance with a speech-to-text endpoint you provide, gets an answer from your model, and speaks it. A display, if the glasses have one, shows what you said and the answer.
- Companion Memory â recalls relevant memories into each answer and saves each exchange. It is off until you turn on Remember our conversations in the appâs settings.
- Voice tools â âremember thisâ, âsearch my memoryâ, âwhatâs on my calendarâ, and âtake a photoâ. See Voice tools.
- Privacy light â on glasses with an LED, the bridge lights it red while the microphone is capturing your speech.
- Companion UI â a phone and R1 ring web app at the bridgeâs address for talking, searching memory, and viewing your profile.
- OpenAI-compatible API â the bridge serves
/v1for other clients, protected by an API key.
What runs where
flowchart TD
G["Mentra Live glasses"] -->|"audio"| M["MentraOS Cloud"]
M -->|"HTTPS to your Public URL<br/>(port 7010)"| B["Companion for Mentra bridge<br/>on your Hub or server"]
B -->|"speech-to-text"| S["OpenAI-compatible<br/>STT endpoint<br/>(you provide)"]
B -->|"chat"| L["Your Hub's local model"]
B -->|"recall ¡ save"| CM["Companion Memory"]
B -->|"spoken reply"| M
M --> GAudio passes through MentraOS. The glasses talk to MentraOS Cloud, and MentraOS reaches the bridge over the internet. Answers are generated on your Hub, and your conversations and saved memories are stored only in your own Companion Memory, but the audio and transcripts do travel through Mentraâs service on the way. The bridge speaks replies with the MentraOS text-to-speech voice.
Supported hardware
| Device | Status |
|---|---|
| Mentra Live | The target device. It has a microphone, camera, and LED. |
| Other MentraOS glasses | The bridge checks each deviceâs capabilities. It skips the display when there is none, ignores audio when there is no microphone, and refuses photos when there is no camera. Only Mentra Live is the documented target. |
You need the MentraOS phone app paired with your glasses, and an app registered in the MentraOS developer console. Because the bridge is a Cloud SDK app, the phone app must be the MentraOS Legacy build (see the status notes above).
Setup
These steps are the Cloud SDK flow. They need the MentraOS Legacy build and a console where you can register an app, which MentraOS 3.0 doesnât offer yet.
You need:
- A Companion Hub, or a server that can run the bridge with Docker
- A Companion Memory instance, if you want memory
- A speech-to-text server that speaks the OpenAI
/v1/audio/transcriptionsAPI, such as a local Whisper server. The bridge doesnât include one. - A way to give the bridge a public HTTPS address, such as Tailscale Funnel or Cloudflare Tunnel
- Mentra Live glasses paired with the MentraOS phone app
Register the app in MentraOS
In the MentraOS developer console, create an app. Copy its package name (for example com.yourname.companion) and its API key. You enter both in the next steps. (On 3 October 2026, console.mentra.glass shows a âcoming soonâ page, so you canât complete this step there yet.)
Grant the app these permissions in the console. The appâs manifest canât declare them for you.
| Permission | Needed for |
|---|---|
| Microphone | Required. The voice loop doesnât work without it. |
| Camera | Optional. Only for the âtake a photoâ tool. |
| Calendar | Optional. Only for the âwhatâs on my calendarâ tool. |
| Notifications, Location | Optional. Reserved for later features. |
Every optional permission degrades quietly: without it, the voice loop keeps working.
Install the bridge from the Hub app store
In Companion Hub, install Companion for Mentra and fill in the form:
- MentraOS package name and MentraOS API key â the values from the previous step.
- Sign in with Companion Intelligence â on by default. The companion UI needs it.
- Companion Memory URL and Companion Memory API key â leave both blank to connect to your Companion Memory app on the same Hub. Fill them in only for an external, self-managed Companion Memory server; use a memory-scoped key.
At install, the Hub gives the bridge your local model endpoint and, through the Companion Memory connection, a memory-only key. The bridge publishes two things on the Hub: host port 17010 for the MentraOS AppServer, and the app URL for the companion UI. Open the companion UI from the Local access entry on the appâs page in the Hub dashboard. See Finding Your Appâs URL.
The install form has no field for speech-to-text, and the Hub doesnât provide one. Point the bridge at your speech server with OPENAI_BASE_URL and OPENAI_API_KEY (or VLLM_BASE_URL for a server that needs no key). Without one, the bridge canât transcribe what you say, and the glasses answer with an error. See Provide speech-to-text.
Give MentraOS a public address for the bridge
MentraOS calls the bridge over HTTPS, so it must be able to reach host port 17010 (container port 7010) from the internet. Expose that port through a tunnel, then set the tunnelâs HTTPS address as the appâs Public URL in the MentraOS developer console.
Start the app on your glasses
Install and start your app from the MentraOS phone app, then speak to the glasses. If the glasses have a display, it shows a status such as Listening..., Transcribing..., Thinking..., or Speaking..., followed by what you said and the answer.
Turn on memory
In the appâs settings in MentraOS, turn on Remember our conversations. It is off by default, and while it is off the bridge neither recalls nor stores anything from your conversations.
To check the bridge, open <bridge address>/health. It reports the active sign-in mode and whether memory is enabled.
Provide speech-to-text
The bridge sends each utterance to /v1/audio/transcriptions on an OpenAI-compatible server, using the model name whisper-1. It tries the server at OPENAI_BASE_URL (with OPENAI_API_KEY) and then the one at VLLM_BASE_URL. Ollama and the Hubâs model endpoint donât serve transcription. For a local setup, run a Whisper-compatible server and set OPENAI_BASE_URL and VLLM_BASE_URL to its address. The Language you speak setting is passed along as the transcription language.
Run the bridge without the Hub
If you have access to the bridgeâs source repository, you can run it without the Hub. It runs on Deno 2.9 or newer, or Node.js 20 or newer (npm run dev needs Node.js 22.6 or newer). For a standalone deployment, docker compose up -d --build starts the bridge with Postgres and Redis. Copy .env.example to .env first and set at least MENTRA_PACKAGE_NAME, MENTRA_API_KEY, and a model endpoint. To enable memory, also set MENTRA_MEMORY_ENABLED=true, CI_SERVER_URL (the address of your Companion Memory), and a memory-scoped CI_SERVER_MEMORY_KEY. The repositoryâs README lists every variable.
Settings
MentraOS shows these settings for the app:
| Setting | Default | What it does |
|---|---|---|
| Language you speak | Detect automatically | Sets the language used to transcribe your voice: English, Spanish, French, German, Portuguese, or Japanese. |
| Voice ID | Blank | Chooses a voice for spoken replies. Blank uses the default voice. |
| Speak answers out loud | On | When off, answers appear only on the display. |
| Remember our conversations | Off | Turns on Companion Memory recall and saving. |
| Allow âtake a photoâ to capture and save to memory | Off | Lets the photo tool use the camera. |
Voice tools
MentraOS matches what you say against these phrases and calls the bridge.
| Tool | Say something like | What happens |
|---|---|---|
| Remember this | âNote thisâ, âmake a noteâ, âdonât let me forgetâ, âsave this to memoryâ | Saves a fact or note to Companion Memory. |
| Search memory | âSearch my memoryâ, âwhat do you know aboutâ, âwhat did I say aboutâ, âdo you rememberâ | Searches Companion Memory and speaks what is relevant. |
| Calendar | âWhatâs on my calendarâ, âwhatâs my next meetingâ | Reads the next events MentraOS has synced. Needs the Calendar permission. |
| Take a photo | âTake a photoâ, âcapture thisâ, âremember what Iâm looking atâ | Takes a photo, saves it to the glassesâ gallery, and saves a memory note about when it was taken. |
If memory is off, ârememberâ and âsearchâ tell you so and name the setting to turn on. The photo tool saves a description of the capture, such as when it happened and any note you gave, not what is in the picture, because the bridge has no vision model. The image stays in the glassesâ gallery. Photo capture also needs Remember our conversations to be on.
The companion UI
Open the bridgeâs address (the app URL in Hub) on your phone or R1 ring. It shows Sign in until you sign in with Companion Intelligence, which doesnât work on a Hub install yet (see Troubleshooting). Once you are signed in, it has three tabs:
- Talk â hold the mic button to speak and release to send, or type a message. Chips under an answer show which memories it used. Voice on toggles spoken replies, and New topic clears the short-term conversation.
- Memory â search your Companion Memory.
- Profile â the profile context the bridge gives the model.
On an R1 ring, the arrow keys move focus, a tap activates the focused control, holding the button is push-to-talk, and Escape goes back.
Troubleshooting
The app never starts on the glasses, or MentraOS says it canât reach the app
MentraOS must reach the bridge over HTTPS. Check that the tunnel is up, that it points at host port 17010 (container port 7010), and that the same address is the Public URL in the developer console. Confirm the package name and API key in Hub match the console.
The glasses hear you but nothing is spoken back
Check Speak answers out loud, and open <bridge address>/health to confirm the bridge is running. If the display shows Voice pipeline error, the transcription or model call failed. The most common cause is that no speech-to-text endpoint is configured: see Provide speech-to-text. Also check that your Hubâs model is running.
It answers, but doesnât remember anything
Turn on Remember our conversations in the appâs settings in MentraOS. The bridge also needs a Companion Memory address and key. /health shows memory.enabled. If Companion Memory is unreachable, the assistant still answers but without memory.
âSign inâ fails in the companion UI
The bridge asks Companion Portal for a ci-mentra sign-in client, and Portal doesnât register one yet, so the Sign in step canât finish on a Hub install. The voice loop on the glasses doesnât use it, so spoken questions and answers still work.
âTake a photoâ says itâs turned off Turn on Allow âtake a photoâ and Remember our conversations, and grant the Camera permission in the developer console.