← Matt Giallourakis

A private multi-agent AI system

A mobile agent app backed by a self-hosted, web-free model proxy


An architecture writeup of a personal system I designed, built, and operate. It's described at the "you could rebuild it" level — the code and my own usage stay private.

Shape of the system

Two pieces. The agent is a mobile app: an always-on assistant that plans, runs tools, and holds long-term context. The backend is a self-hosted proxy to a frontier model, deployed on a small cloud instance and reachable only over a private network. The split matters: the model lives behind my own boundary, the agent logic lives on the client, and nothing about the design depends on a third-party assistant platform.

The model backend

A small Node service in front of a managed model API (Claude on AWS Bedrock). Three properties drove the design:

Model routing across tiers

Not every query deserves a frontier model, and not every query should leave the device. The agent routes across three tiers by cost, latency, and capability:

Provider access is abstracted behind one interface, so a task lands on the cheapest tier that can handle it and escalates only when it needs to — and the offline tier means the assistant degrades gracefully instead of failing when there's no connection.

The agent

The interesting engineering is in the harness around the model, not the model call itself.

Why build it this way

The point was ownership. A self-hosted model boundary, a tool protocol I control, and memory I can inspect and edit — a personal assistant whose behavior is mine to shape, and whose data path I can reason about end to end. It's also the clearest demonstration of the kind of work I like: building the harness — the tooling, routing, memory, and orchestration — that turns a raw model into a dependable system.