explaingit

rudysev/host-assistant

Analysis updated 2026-05-18

0PythonAudience · developerComplexity · 4/5LicenseSetup · hard

TLDR

A local network voice host that lets the portal-assistant app run its speech pipeline on your own computer instead of Google's cloud service.

Mindmap

mindmap
  root((host-assistant))
    What it does
      Local voice pipeline
      Replaces cloud backend
    Tech stack
      Whisper speech to text
      Ollama language model
      Kokoro text to speech
    Use cases
      Run portal-assistant locally
      Demo voice pipelines
      Fork for custom builds
    Audience
      Developers
      Hobbyists
    Design
      LAN only
      Not Meta affiliated

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Run the portal-assistant app's voice pipeline on a local computer instead of a cloud service.

USE CASE 2

Demo or test a full local voice assistant pipeline including speech recognition and text to speech.

USE CASE 3

Fork the project as a starting point for building a custom local voice assistant.

What is it built with?

PythonOllamaWhisperKokoro

How does it compare?

rudysev/host-assistant0xallam/my-recipe0xhassaan/nn-from-scratch
Stars00
LanguagePythonPythonPython
Last pushed2022-11-22
MaintenanceDormant
Setup difficultyhardmoderatemoderate
Complexity4/52/54/5
Audiencedevelopergeneraldeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Needs Ollama running locally, Python 3.12, and Apple Silicon for the default speech recognition backend.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

This project is a starting point for running a voice assistant locally on a home network, instead of relying on a cloud service. It is meant to work alongside a separate app called portal-assistant, which normally sends voice data to Google's Gemini cloud service to understand speech and generate a spoken response. This project lets that same app talk to a computer on the user's own local network instead, so someone can demo, test, or build on the underlying pipeline without depending on that cloud service. When someone speaks into the portal-assistant app, the audio is streamed over the local network to this project, which detects when the person has finished talking, converts their speech into text, sends that text to a locally running language model that can also call a small set of tools, such as checking the weather or searching the web, and then converts the model's reply back into spoken audio that streams back to the app in real time. Any tool the model needs that is not handled locally is passed back to the portal-assistant app itself to execute. The project stitches together several existing open source pieces rather than building everything from scratch: a speech to text engine, a voice activity detector to know when someone has stopped speaking, a locally run large language model server, and a text to speech engine. As shipped, part of that pipeline, the speech to text step, is built specifically for Apple Silicon Mac computers, though the README notes it can be swapped for another version to run on Linux. Setting it up involves installing a local language model runner, creating a Python virtual environment, installing the project's dependencies, and configuring a few settings such as which web search service to use. Once running, it listens for a single connection at a time from the portal-assistant app over the same Wi-Fi network. The project explicitly describes itself as a demo rather than a finished, polished product, and notes it is an independent, unofficial project not affiliated with Meta, whose Portal hardware the companion app is designed for. It is released under the MIT license.

Copy-paste prompts

Prompt 1
Walk me through setting up Ollama and this project to run a local voice assistant.
Prompt 2
Explain how audio flows from the Portal app through this host and back as speech.
Prompt 3
Show me how to swap the Apple Silicon speech recognition step for a Linux compatible one.
Prompt 4
Help me add a new tool the local language model can call in this pipeline.

Frequently asked questions

What is host-assistant?

A local network voice host that lets the portal-assistant app run its speech pipeline on your own computer instead of Google's cloud service.

What language is host-assistant written in?

Mainly Python. The stack also includes Python, Ollama, Whisper.

What license does host-assistant use?

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is host-assistant to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is host-assistant for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.