Documentation
Documentation
jargo documentation
jargo is a WebRTC-native, audio-first conversational-AI framework for Go: audio in over WebRTC, a streaming transcription → reasoning → speech pipeline with turn-taking and barge-in, and audio back out.
Early work in progress. The public API is unstable and changes in any release. Pin an exact version and read the changelog before upgrading.
Three ways in
I want it running. → Installation → Quickstart → Your first bot
I want to understand it. → Architecture → Frames → Processors → Pipeline & Task
I want to extend it. → Writing a processor → Writing a service
Concepts
The engine is small: frames, processor and pipeline are about 2,000 lines
between them. Understanding it makes everything else obvious.
| Page | What it covers |
|---|---|
| Architecture | The whole system on one page, with a full turn traced end to end. |
| Frames | The three categories, why they exist, and the complete catalog. |
| Processors | The two goroutines inside every processor, and why. |
| Pipeline & Task | Building the chain and driving it. |
| Interruptions | Barge-in: the mechanism, not the metaphor. |
| LLM context | How the conversation accumulates, and when the LLM runs. |
Guides
| Page | What it covers |
|---|---|
| Turn-taking | Silero VAD + Smart Turn v3, and the strategies that tune them. |
| Services | Swapping STT/LLM/TTS providers; tool calling; speech-to-speech. |
| Audio | Codecs, sample rates, denoising, mixing, recording. |
| Telephony | Phone calls over Twilio, Telnyx, Plivo, Exotel; DTMF; the idle watchdog. |
| RTVI | The client event protocol over the data channel. |
| Observability | Observers, metrics, tracing, and which numbers matter. |
Extending
| Page | What it covers |
|---|---|
| Writing a processor | Add your own logic to the chain. |
| Writing a service | Add an STT, LLM or TTS provider. |
Deploying
| Page | What it covers |
|---|---|
| Deploy with Docker | The build and distroless runtime base images, and a Dockerfile. |
Elsewhere
- Go reference : the API. These pages deliberately do not duplicate it.
- Examples : runnable bots, one per provider.
- Benchmarks : the honest performance picture.
- Changelog : what changed, and what broke.