Jarvis: Coordination Deserves a Brain of Its Own in Agentic Interactive Models

A slow-brain harness for agentic interactive models. Users keep talking while the work runs in the background; Jarvis turns every change to that work into a typed operation on a versioned task, checks it against the current state before it acts, and counts an answer as delivered only once the user has heard it.

The Chinese University of Hong Kong, Shenzhen Tencent HY

Demos

Jarvis in Action

Seven recorded sessions. In five, Jarvis-Audio runs on a full-duplex speech model: it keeps the conversation going while games, lookups and code answers run in the background, or plays a game alongside the user. In two, Jarvis-Omni also watches the screen and coaches a player through CS2 and League of Legends. The Mandarin sessions have English subtitles under the video; pick a chapter to jump to the moment that matters.

τ-Voice · same front model

192/278

tasks solved on Venus-Audio when only the harness changes. Qwen Audio Agent solves 29.

Full-Duplex-Bench v3

69%

Pass@1 for Jarvis-Audio, ahead of GPT-Realtime at 60% and 21 points above the model it runs on.

τ-Voice public leaderboard

69.2%

macro task success, higher than every realtime speech model on the board, with an open 9B front model.

Scripted races

240/240

runs consistent under refinements, cancellations and interruptions: no stale audio, no stale tool effect, no false delivery.

Decision brain

91%

of JEV decisions are correct and confident within one second. General LLM controllers manage 0%.

Jarvis-Omni

+22.7pp

correct answers come from the screen, and advice whose visual evidence has expired is never spoken.

Overview

Coordination deserves a brain of its own

Interactive models listen and speak at once, but keeping pace with a conversation leaves them little capacity for tool use, multi-step reasoning or memory. Agentic interactive models therefore keep such a model in front and hand that work to a slow brain in the background, a larger model or a full agent harness. This split raises a coordination problem, because the conversation goes on while the work runs. By the time a result is ready, the user may have refined the request, cancelled it or moved on. Neither side can handle this alone, since the front model knows the conversation but not the tasks, while the back end knows its task but not the conversation.

Jarvis is a slow-brain harness that gives coordination a brain of its own. Each request becomes a versioned task in the Task Ledger, and each change to it becomes an operation on the ledger, such as refining version 2 of a game. The harness follows one rule, models judge, code enforces. A small adapter on the front model's control tokens judges when a turn should reach the slow brain. JEV, a decision model that sees both the conversation and the tasks, then picks the turn's operation from options the runtime builds from the ledger. Code enforces the outcome, rejecting operations and results tied to a replaced version and counting an answer as delivered only when playback receipts show the user heard it.

We build Jarvis-Audio on full-duplex speech models and Jarvis-Omni on an audio-visual model. Since what the model sees can also change while the work runs, Jarvis-Omni checks every visual fact again before speaking. With the front model and back end held fixed, replacing Qwen Audio Agent with Jarvis raises τ-Voice task success from 29 to 192 of 278 tasks. Jarvis-Audio reaches 69% Pass@1 on Full-Duplex-Bench v3, ahead of GPT-Realtime at 60%.

The problem

Six ways a voice agent goes wrong while work is running

These are not recognition errors and not reasoning errors. They happen because two processes move at different speeds and nothing keeps them in step. The first five arise with audio alone; the sixth appears once the agent can see.

All six share one cause: the system acts on a picture of the conversation that has stopped being true. Jarvis makes the current state explicit and checks every action against it.

How it works

Two brains, one harness

The fast brain keeps the conversation going and decides when to hand a turn over. The slow brain interprets the turn with JEV, records the work in the Task Ledger, runs it in the background and returns the answer in the fast brain's own voice, but only while the result is still valid. The two never wait for each other.

Overview of the Jarvis harness Audio from the user reaches the Native Gate of the fast brain, which either lets the frozen speech model answer directly or delegates the turn. A delegated turn is bound to its transcript, JEV turns it into typed operations, the Task Ledger runs them on workers and tools, and Delivery sends live results back to the speech model, which reports playback receipts. Memory serves JEV and the ledger; Jarvis-Omni adds an Evidence Timeline and Belief State. FAST BRAIN SLOW BRAIN · JARVIS HARNESS audio speech DIRECT DELEGATE typed ops visual claims live results speech request over the backend channel playback receipts User mic screen Native Gate LISTEN · DIRECT · DELEGATE Frozen speech model Thinker + Talker, weights unchanged Evidence Timeline Belief State · Jarvis-Omni Memory profile · task records Turn binding ASR observer Decision Brain JEV · typed ops Task Ledger versions · freshness Workers async tool loops Delivery epochs · receipts Tools web · files · games
Fast talk, slow work. The amber pulse is a turn the front model answers on its own; the blue one is a delegated turn on its way through the slow brain and back to the speaker. The dashed module is used by Jarvis-Omni only. On a phone, swipe the diagram sideways.
01

Learn when, keep how

The front model already speaks well. Only the decision of when to involve the slow brain is trained, on the model's own control tokens; every weight that produces speech stays frozen.

02

Models judge, code enforces

Questions that need understanding go to a decision model, but the model answers by choosing among operations the runtime prepared. The runtime then applies the choice and checks it against the current state.

03

Nothing is assumed current

Plans, results, playback and visual facts all carry a version, an epoch or a timestamp, and each is checked again before it may act or speak.

04

Done is not delivered

A worker finishing a task and the user hearing the answer are two separate events, and the system records them separately.

Inside the harness

Five modules, one per tab

Learning when to hand off

“Build me a little game for tonight” needs the slow brain, “tell me a joke” does not, and “hold on, let me ask my roommate” is not addressed to the assistant at all. The decision has to be made from audio while the user may still be talking, and the words alone cannot tell a finished request from a pause. The front model already knows, because it is the part that decides when to speak.

So for every one-second audio unit the gate reads a three-way policy, LISTEN, DIRECT or DELEGATE, straight off the front model's native control tokens, and acts only once a branch reaches 0.8. It is a rank-8 LoRA trained with GRPO on the branch, not on a token, and it is switched on only in the routing pass, so the voice you hear comes from exactly the released weights.

  • 98.8%first admissions at the right time and in the right branch (162 / 164)
  • 0.07%of the model is trained: 6.2M parameters

One session, decision by decision

Game night, as the Task Ledger saw it

A recorded five-minute session from the report. In one breath the user asks for a browser game, tonight's weather in Shanghai and two technology headlines, then keeps talking while up to four tasks run. Every utterance becomes one or more typed operations, and every operation names a live task version. Hover an utterance to find it on the timeline; press play to hear it in the Game night demo.

  • ✓ delivered, playback confirmed
  • ? worker asks back
  • × cancelled
  • one task version
  • memory
    Figure 2 of the report, made interactive. The game goes through four versions, the Python question gets a follow-up, a one-night budget of $60 leaves the usual $40 in memory untouched, and the cancellation removes the welcome sign and nothing else. Timeline times are seconds into the session the figure was drawn from; the Game night video is a recording of the same script, so each play button jumps to where that line is said there.

    Results

    The harness alone makes the agent better

    Three questions. Does the harness by itself make a voice agent better, with everything else held fixed? How does it compare with the strongest published voice systems? And why does it work, mechanism by mechanism?

    1

    Same front model, same back end, only the harness changes

    Each pair keeps the front model, the admission path and the DeepSeek-V4-Flash back end fixed and swaps Qwen Audio Agent (QAA) for Jarvis, so every difference comes from what happens to a turn after it is admitted. Jarvis never trails QAA on any benchmark, domain or task category.

    • 97 vs 68FDB-v3 recordings that get an audible response on Venus-Audio. An admitted request is answered, asked about or reported as failed, never silently dropped.
    • 137 vs 0of the hardest τ-Voice tasks solved, the ones that must write to the database, such as rebooking a flight. QAA solves none on any front model.
    • 12.9 s vs 14.2 smedian task-completion time on FDB-v3. None of the gain costs time.
    Full table: harnesses on the same front model (Table 2)
    Front modelHarnessτ-Voice (solved)FDB-v3FDB-v2
    AirlineRetailTelecomTotalExactSemanticTask score
    Venus-AudioNative harness17602345353.09
    QAA23602941592.57
    Jarvis35778019251633.36
    MiniCPM-o 4.5QAA23602940562.98
    Jarvis23693850633.28
    VoiceChat-11BQAA110226382.44
    Jarvis23643334502.84
    Other full-duplex systems with their own runtimes
    MoshiRAGNative retrieval0000003.08
    GanderNative runtime†236029563.16

    τ-Voice reports solved tasks out of 278, FDB-v3 passes out of 100 under exact and semantic matching, and FDB-v2 the mean task score over 300 task and pace pairs. All rows share one judge. †Released runtime with a DeepSeek-V4-Flash worker in place of its Codex back end.

    2

    Against leading voice systems

    Jarvis-Audio reaches 69% Pass@1 on Full-Duplex-Bench v3, nine points above GPT-Realtime and 21 above the Venus-Audio model it runs on, and the margin grows with difficulty: on hard scenarios it passes 56.7% against 43.3%. On the public τ-Voice leaderboard it beats every realtime speech model. The two systems above it follow the same fast-and-slow design on proprietary frontier back ends; Jarvis gets close with an open 9B front model and a flash-tier back end.

    Full-Duplex-Bench v3 Pass@1, %

      τ-Voice public leaderboard macro task success, %

        realtime front end with a proprietary reasoning back end

        Full table: Full-Duplex-Bench v3, all metrics (Table 3)
        SystemTool F1 ↑Arg. acc. ↑Resp. qual. ↑Pass@1 ↑Take-turn ↑Interrupt ↓Filler ↓
        Commercial and cascaded systems
        GPT-Realtime0.8760.6800.7920.60096.013.516.9
        Gemini Live 3.10.8170.5880.7180.54078.019.231.7
        Gemini Live 2.50.7860.5930.5540.49092.014.18.9
        Cascaded (Whisper, GPT-4o, TTS)0.8030.5620.6000.450100.033.026.9
        Grok0.7970.5420.6170.43094.025.544.3
        Ultravox v0.70.7940.5130.5100.41096.047.988.0
        Open full-duplex models and agents
        Venus-Audio0.8500.542–0.480–––
        Venus-Omni0.8600.531–0.430–––
        VoiceChat-11B0.8250.422–0.330–––
        Gander0.7590.5030.4900.400100.08.051.6
        Jarvis-Audio0.9270.7830.8500.690100.07.020.4

        The first four metrics are fractions and the last three are percentages. Baseline numbers come from the benchmark release, the Realtime-Venus report and the Gander report. Bold marks the best value in each column, and – means not reported.

        Full table: τ-Voice by domain (Table 4)
        SystemRetail ↑Airline ↑Telecom ↑Macro avg. ↑
        Realtime speech models
        GPT-Realtime 1.035.9636.0019.3030.42
        GPT-Realtime 1.544.7040.0021.1035.27
        GPT-Realtime 247.3758.0021.9342.43
        Gemini 2.5 Flash Live29.8030.0017.5025.77
        Gemini 3.1 Flash Live (thinking high)45.6164.0021.9343.85
        Grok Voice Fast 1.038.6036.0040.4038.33
        Grok Voice Think Fast 1.062.2866.0073.6867.32
        Grok Voice Think Fast 2.059.6556.0071.9362.53
        Qwen3.5-Omni-Plus Realtime46.4954.0060.5353.67
        Cascaded pipeline
        LiveKit (Nova-3, GPT-4.1, Aura)28.9548.0016.6731.20
        Realtime front end with a proprietary reasoning back end
        GPT Live 1 with GPT-6 Astra78.9582.0084.2181.72
        Pine Voice Preview70.1870.0085.9675.38
        Jarvis-Audio (open 9B front, DeepSeek-V4-Flash)67.5470.0070.1869.24

        Task success in percent on the regular tasks. Other systems are the standard voice submissions on the public leaderboard. Bold marks the best value among systems without a proprietary reasoning back end.

        3

        Why it works

        A benchmark caller rarely changes a request while the work on it is still running, so the mechanisms are tested directly: scripted races against the real runtime, decision timing against general LLM controllers, and spoken memory.

        Task Ledger checks

        Each check removes a different failure

        80 race scripts inject a refinement, a cancellation, a correction during planning, a task switch or an interruption during playback, three runs each against the real runtime.

        Decision brain

        JEV decides correctly, and in time

        Same options and context for all three controllers; 192 bilingual test cases, each called three times, then replayed in the runtime.

        Memory

        Keeping what both speakers said

        80 fixed questions about 20 ContextDialog conversations, fed as real audio, scoring the answer that was actually played (1 to 5).

        Full tables: races, controllers and memory (Tables 5 to 7)
        Consistency under 80 race scripts, three runs each (Table 5)
        RuntimeConsistent runs ↑Stale audio ↓Stale tool effect ↓False delivery ↓Gain of full runtime (pp)
        Jarvis, full runtime240 / 240000–
        without result validity (I2)168 / 2407200+30.0 [15.0, 45.0]
        without plan freshness (I3)168 / 24072720+30.0 [15.0, 45.0]
        without playback receipts (I4)204 / 2400036+15.0 [3.8, 30.0]
        JEV against general LLM controllers (Table 6)
        ControllerThresholdMedian request (s) ↓In time, 1 s ↑With fallback, 3.5 s ↑Correct binding ↑Stopped in time ↑Replays with stale audio ↓Unchanged tasks kept ↑
        DeepSeek-V4-Flash0.951.570 / 576465 / 576 (80.7%)220 / 25677 / 2243632 / 32
        Gemini 3.5 Flash1.003.140 / 576456 / 576 (79.2%)160 / 2569 / 2249632 / 32
        JEV0.430.30524 / 576 (91.0%)544 / 576 (94.4%)252 / 256150 / 224432 / 32
        Spoken conversational memory on ContextDialog (Table 7)
        Harness and memoryMean score ↑Score ≥ 4 ↑Evidence tokens
        QAA, default Markdown memory with automatic injection1.456 / 8055
        Jarvis, JEV selection4.1961 / 80700
        Jarvis, hybrid dense and sparse retrieval4.4165 / 801013

        Jarvis-Omni

        When evidence expires

        In audio, the facts behind a decision are mostly in the user's words, and words do not change after they are spoken. On a screen, facts change on their own: a teammate who was alive two seconds ago is dead, and a low health bar is full again after a recall. Jarvis-Omni treats visual facts the way Jarvis-Audio treats tasks, as state with a version and a lifetime, and checks them again before anything based on them reaches the user.

        0.0 s
          Figure 7 of the report, animated. Claims read from the screen carry a validity window and are invalidated by events such as a death or a camera change. Advice is checked against the Belief State when it is ready, so a recommendation that rested on an expired claim is dropped and planned again from the new state. Drag the slider to scrub through the scene.
          23.7% vs 1.0% correct answers with the screen and without it, over 300 questions. Two blind reviews of the played audio and the recorded screen must both accept an answer.
          12,323 → 0 ms of expired audio reaching the user when the evidence expires while the answer waits in the speech queue, without and with the validity check.
          75 / 96 gate decisions right on the fixed test set, with one missed action. The frozen control head of Venus-Omni gets 30 and misses 66.
          5.05 → 1.78 s median time to the first spoken response in live sessions on the same user recordings, once the new scene-aware gate is in place.
          ≈2.2 s from the end of a tactical question to the start of the answer on the fast path (2.15 s in CS2, 2.23 s in LoL).

          The answers rest on the screen

          Removing only the screen frames that enter the runtime, in two independent cohorts of recorded game sessions.

          First cohort, 16 uploads, 300 questions

          with screen23.7%
          without1.0%

          Second cohort, 12 new uploads, 120 questions

          with screen25.0%
          without2.5%

          Silent controls stay silent either way: 60 / 60 and 24 / 24.

          Expired evidence stays off the speaker

          Admitted answers played through the real speech scheduler and browser player, with their evidence set to expire. Expired audio in milliseconds, four replays each.

          Evidence expires before playback

          no check12,323
          Jarvis-Omni0

          Evidence expires during playback

          no check9,947
          Jarvis-Omni0.125

          0.125 ms is three audio samples. Utterances whose evidence stays valid play in full either way.

          A gate that also watches

          The gate combines microphone and screen features with the dialogue so far, and adds a SCENE action to speak up unprompted. Fixed test set of 96 episodes.

          Frozen Venus-Omni
          30
          Previous adapter
          67
          Contextual GRPO adapter
          75

          correctmissed actionacted early or in the wrong branch

          In live sessions on the same user recordings, all 18 replies are heard with the new adapter, against 13 with the previous one.

          The two instances side by side
          Jarvis-AudioJarvis-Omni
          Front modelRealtime-Venus-Audio, 9BVenus-Omni
          Native GateCausal audio prefixes, three actionsCausal audio and screen features with dialogue context, plus a SCENE action for proactive turns
          Decision brainJEV, textJev-Omni, 12B, text and images
          Perception stateASR observerASR observer, Evidence Timeline and Belief State
          MemoryProfile and task recordsAdds in-match events and game knowledge
          Shared: JEV controller, Task Ledger, workers, Delivery and playback control
          Main evidenceτ-Voice, Full-Duplex-Bench v2 and v3, ContextDialog, race and control studies, daily use, PvZ, LuantiGate test set, visual and playback ablations, live CS2 and League of Legends sessions

          Citation

          Citation

          Citation details will be posted here once the technical report is available.

          Visitors