Personal assistant gateway
A personal assistant agent, and the mechanical guard that stops it doing what it was merely told not to.
-
Ask it why the nightly run failed.
Bills, alerts, a job that did not finish — it reads what it needs and reports back over Telegram. Checking is the job it is pointed at.
-
It finds the thing and names it.
A merge left two copies of the same function, so the imports break at collection. That is the half of the job worth having, and it is done without touching anything.
-
Then it stops, because it has to.
"Patch it" is a write, and the model does not decline it — it cannot reach it. The allow-list sits at the tool layer and fails closed, which is where the rule went after a live trial showed an earlier build routing around an instruction that merely asked.
- 01 Built a personal executive-assistant agent on an open-source agent runtime — Telegram front end, MCP tool access, and a multi-provider fallback chain — with per-profile isolation so a separate family-facing assistant runs its own tool surface, voice and routing from the same gateway
- 02 Replaced instruction-level agent safety with a fail-closed allow-list tool guard enforced at the tool layer, after a live trial showed the model routing around an earlier guard into a real checkout — the model can no longer reach a write path that policy has not granted
- 03 Took the LLM off the execution path for dispatched work, routing it mechanically through a pre-gateway hook with a per-project lock and a concurrency cap, and launching each run as its own transient systemd unit after finding that a oneshot unit silently reaped every run it backgrounded
- 04 Diagnosed an agent outage as a subscription-tier gate rather than exhausted quota — identical-size requests with neutral system prompts succeeded while the agent's own traffic was refused — and kept a second provider in the fallback chain so the assistant stays available when the shared pool is gated
Interface recreated with invented data — no production screenshot is published. Private system; walkthrough and code review available on request.
- Role
- Sole engineer
- Timeline
- 2026 — ongoing
- Stack
- Python · MCP · Telegram · systemd