GitHub - Oxeegen/OxeePhone: OxeePhone, Oxeegen's self-hosted voice agent platform: visual agent builder on your own models (BYOK), Vapi-style call detail and reports, configuration analysis with automatic fixes tested on real calls, MCP tools for AI agents. Fork of Dograh. · GitHub
Skip to content
OxeegenPublic
forked from dograh-hq/dograh

About

OxeePhone, Oxeegen's self-hosted voice agent platform: visual agent builder on your own models (BYOK), Vapi-style call detail and reports, configuration analysis with automatic fixes tested on real calls, MCP tools for AI agents. Fork of Dograh.

Topics

Resources

Security policy

Stars

6 stars

Watchers

0 watching

Forks

 
 

Latest commit

 

History

906 Commits

Folders and files

Repository files navigation

OxeePhone

OxeePhone

Oxeegen's self-hosted voice agent platform.
Build phone and web voice agents on your own models, see exactly what happens in every call,
and let the platform find, fix and test what goes wrong in your agents' configuration.

Latest release BSD 2-Clause Self-hosted with Docker Based on Dograh 1.47

Call detail: recording with waveform and synchronised transcript


Highlights

  • Your models, your servers. Every service (LLM, speech-to-text, voice, embeddings) runs on an OpenAI-compatible endpoint you host. No call to any third-party platform, no telemetry.
  • Every call graded. When a call ends, the analysis model reviews the agent and the platform grades the technical side: a quality score and a technical score per call, and the day at a glance on the home page.
  • A call detail worth the name. Recording with waveform, transcript synchronised with the audio, tool calls, per-stage latency, the path through your agent's nodes and why each move happened.
  • Test campaigns. Simulated callers, harder or easier at will, play scenarios written from your agent against a draft, the agent alone or the whole journey through your agents; quality, technical and routing scores tell whether the change is better.
  • The platform reviews your agents. An analysis of the recorded calls finds slow replies, silences, stalled conversations, routing loops and misrouting, then proposes a fix, tests it by replaying the real calls against a draft, and follows it up once published.
  • Made to be driven by an AI agent. Analysis, fixes, simulations and versions are MCP tools and REST routes, usable with an API key.

Features

The day at a glance

The home page shows today's calls and their average quality and technical scores, against the day before and the last 7 days.

Home page: calls of the day, average quality and technical scores, last 7 days

Build agents

A visual graph of conversation nodes linked by transitions, each with its prompt, tools and knowledge base.

Agent editor

  • Speaking plans per agent (Vapi-style): how long to wait before answering, smart endpointing, silence needed after a sentence / a number / an unfinished phrase, words or voice needed to interrupt the agent, back-off after an interruption.
  • Call engine settings: speaking plan, voice, performance (first audio chunk, first clause spoken before the sentence ends, voice detection, LLM temperature, reply length, model thinking) and audio & sampling (sound during an agent transfer included), set for the platform and overridden per agent, with the built-in values one click away.
  • Versions: every version keeps its author and origin (editor, API key, AI agent, restore, automatic fix), the number of calls it answered, a plain and an AI-written summary of its changes, word-level diffs, and a one-click restore.

Agent versions and diffs

Speaking plan settings Speaking plans

Self-hosted models

  • Local Models for every service: base URL, key, and the model picked from the list your endpoint serves. Bring your own vLLM, speaches or any OpenAI-compatible server.
  • Voice preview, speed, language and volume, French text normalisation (numbers, dates, hours) and a pronunciation dictionary.
  • Knowledge base parsed and embedded locally (PDF, DOCX), with a preview of Markdown and text files.
  • Recordings generated by your voice model (voice, speed, text), usable as an agent's greeting.

Every call, in detail

  • Recording with caller / agent waveforms, speed control, download.
  • Transcript synchronised with the audio: the message being played is highlighted, click one to jump to it.
  • Tool calls with arguments and results, interruptions, events.
  • Latency per stage and per turn: the time to first audio (from the end of the caller's turn), apart from the end-of-turn wait set on the agent, and what the caller actually hears.
  • Voice fluency: how fast the voice is generated compared to how fast it is spoken, and the gaps the caller heard.
  • Routing: the path through the agent's nodes, the condition behind each move and what the caller had just said.
  • Call review: the quality score (understanding, accuracy, concision, tone, resolution, with a summary and what to improve) and the technical score of the call, post by post.

Call review: quality and technical scores of a call

Latency breakdown and voice fluency

Routing graph linked to the steps of the call

Reports

Time to first audio (median, p90, by stage, by day), token consumption and cache hit rate, interruptions, call duration, tool reliability, routing between agents.

Reporting insights

Configuration analysis and automatic fixes

  1. Analysis: rules computed on the recorded calls (thresholds proposed by the model, editable), reviewed by your analysis model with the transcripts.
  2. Proposal: for each fixable finding, the model edits prompts, transition conditions or bounded settings, never the structure. The change is shown as a diff before anything is saved.
  3. Draft: the fix is saved as a draft version; the published agent keeps answering calls.
  4. Test: the real calls of the finding are replayed as text on the published version and on the draft (tools are never executed: their recorded results are replayed), compared and judged.
  5. Publish, follow up, roll back: once published, the same rules check the next real calls; a fix that does not work is rolled back in one click.

Automatic fix proposal

Fix tested by simulation

Test campaigns

Test an agent before publishing a change, with simulated callers. A campaign is unit (the agent alone) or end-to-end (calls are handed from agent to agent as in production, and a routing score tells whether each caller reached the right agent).

  1. Write: pick an agent and set each caller setting as a min / max range: vocabulary, mood, request clarity, complexity, depth in the agent, impatience, dictated data, traps, voice speed. The analysis model writes the scenarios from the agent's graph, one caller each: a persona, the facts it can give, success criteria, forbidden behaviours, expected end node, variables and tools. Every scenario can be edited, duplicated into variants or switched off; editing the campaign's instructions revises the existing scenarios.
  2. Play the campaign on the published version, the draft or an older version, by phone (a tester agent calls the agent with its own voice, voice speed and impatience, from a real customer number) or as text, as many times per scenario as needed. Tools are simulated (transfers, agent handoffs and the pre-call lookup included), real, or real with an X-Oxee-Test header. The results fill in live while the execution plays. Test calls stay out of the production statistics.
  3. Judge: every call is judged (goal, criteria with evidence, forbidden behaviours) and gets a quality score and a technical score (time to first audio, transcriber, LLM, voice, voice fluency, tools, turn-taking, reliability, graded against the analysis thresholds). The report shows where the agent starts failing as callers get harder, the coverage of its nodes and transitions, each call's transcript, and turns a failed call into an automatic fix. End-to-end campaigns also get a routing score: the route of every call through the agents and their nodes, against the expected one, with the judge's view of each handoff.
  4. Compare two executions: both scores, every indicator, the scenarios improved or regressed, and the configuration diff between the two versions tested.

Executions of a test campaign

Report of a test execution

End-to-end test call: route through two agents and routing score

Comparison of two executions: published version against a draft

New test campaign (unit or end-to-end) Caller settings as min / max ranges

Driven by an AI agent

oxee_* tools on the MCP server (/api/v1/mcp/) and the same operations in REST: run an analysis, propose and apply fixes, simulate, follow up, browse and restore versions, create, play and compare test campaigns. Publishing stays a human decision unless you allow it. See brand/agent-vm/.

Deployment

  • One-command install on Ubuntu, with generated secrets and free ports.
  • Works under every name of the server (LAN IP, VPN hostname): UI, API, WebSocket and recordings on one origin, HTTPS with a generated certificate (browsers only give the microphone to HTTPS pages).
  • Runs next to an official Dograh on the same host: every port is configurable, OxeePhone has its own TURN server.
  • Update notice in the app when a new release is out, with its release notes.

Install

On an Ubuntu 22.04 / 24.04 server (4 vCPU, 8 GB RAM, 20 GB free):

curl -fsSL https://raw.githubusercontent.com/Oxeegen/OxeePhone/main/brand/install.sh | sudo bash

The script installs Docker if needed, gets the latest release into /opt/oxeephone, writes .env, builds and starts the stack, and prints the addresses to open. Update later with sudo /opt/oxeephone/brand/install.sh update.

Based on Dograh

OxeePhone is a fork of Dograh (BSD 2-Clause, © Zansat Technologies) by Oxeegen. Everything OxeePhone adds lives in a brand layer (api/brand, ui/src/brand, brand/) behind flags, so upstream releases can still be merged. Thanks to the Dograh team for the platform this is built on.

License: BSD 2-Clause.

About

OxeePhone, Oxeegen's self-hosted voice agent platform: visual agent builder on your own models (BYOK), Vapi-style call detail and reports, configuration analysis with automatic fixes tested on real calls, MCP tools for AI agents. Fork of Dograh.

Topics

Resources

Security policy

Stars

6 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages