Independent product work · September 2026

A voice interface for an assistant I already use.

Telemachus brings a private assistant into a conversation: ask a question, follow a thread, or request work through a focused voice interface.

Private prototypeiPhone + webAI-assisted development
My contribution
Product direction, requirements, integration decisions, and validation. I directed AI-assisted implementation using an existing agent runtime and OpenAI Realtime. These screens show the resulting prototype.
Telemachus iPhone landing screen: a single Talk to Telemachus button, ready status, microphone reassurance, and a link to the conversation.
Native prototype · build 4 simulator.
Captured during September 9, 2026 validation. Original screenshot, shown unchanged.
The problem

Continue the work away from the desktop.

I wanted a voice entry point to the assistant and knowledge system I had already assembled. The challenge was carrying useful context into a conversation while keeping questions, actions, and the state of the call understandable.

Personal use as the starting point

This was built for my own workflow. I defined requirements and reviewed behavior through private prototype builds.

Use the existing system

The interface connects to an existing agent runtime and its operating rules, with a separate path for saved-note retrieval.

Interaction decisions

Three decisions in the implemented prototype.

The most useful product questions were practical: how to start, how to stay in control, and how to tell a lookup from work the assistant is carrying out.

Give the conversation a clear starting point.

The native landing screen centers one call action, paired with a visible ready state and a short explanation of when the microphone turns on. Transcript and task details have their own conversation view.

Implementation detail that serves the user: mute and audio routing appear during a call; the idle screen keeps the start action prominent.

Make state and interruption visible.

The web interface exposes listening, thinking, speaking, and reconnecting states. Mute, pause, and end controls give the person a direct way to change or stop the interaction.

Recovery behavior: connection retries are bounded. When recovery fails, the interface explains the problem and offers a new start.

Separate finding information from doing work.

Saved-note retrieval, web lookup, and agent tasks use distinct paths. The conversation view shows task type, progress, results, and completion duration. Actions routed through the agent retain its approval controls.

Inspectable results: returned note references include source information; web sources are clickable. Pending approvals present approve-once and deny choices.

Earlier Hermes-branded web prototype during a call: listening status, Unmute, End conversation, Pause Hermes, and a separate transcript panel with a generic greeting.
Earlier web prototype · Hermes branding, before the Telemachus rename. Real browser smoke-test capture from the September 2026 build work. The transcript contains only a generic greeting. This capture demonstrates the call controls and transcript layout; later lookup and approval cards are documented in the implementation, not pictured here.
Evidence and iteration

Built, checked, and still being tested.

The September 9 build report records a private web interface and an iPhone app installed on my device. It also records the acceptance checks that remained open. This is a working private prototype with a bounded validation history.

Recorded validation

  • Browser pairing, streamed response audio, mute, interruption, and hangup were exercised in a short test with no browser exceptions.
  • Build 5 passed 20 lookup and service regression checks.
  • The native build compiled, installed, and launched on an iPhone on September 9.
  • Synthetic note and public web queries exercised retrieval without using private note content in the external test.
Build 2

I reported an initial phone-call failure and supplied the CallKit error. Investigation identified missing background-mode configuration; the fix was built and installed. Successful physical-phone two-way audio still required confirmation.

Builds 3–4

I requested the Telemachus identity and supplied the mascot image. The name and artwork were incorporated across the native and browser interfaces. Speaking-state motion respects reduced-motion settings.

Build 5

Saved-note retrieval, public web lookup, voice selection, and lookup progress/timing were added. The report distinguishes saved information from current-status checks and actions.

What this work demonstrates

I can take a personal workflow problem into a testable product, connect interaction requirements to system behavior, and use failures and evidence to define the next iteration.