Skip to content

v6.1.2: Gemini 3.8 Live realtime models and September AI model refresh

Gemini 3.8 Live and Gemini 3.8 Live Extended Thinking join the realtime co-agent stack, carried by a media-track model that lets video, whiteboard and remote-browser channels stream to the model; the weekly AI model refresh adds Sakana AI’s Fugu models and corrects GPT 5.6, DeepSeek V4.1 Flash and GLM 5.3 pricing metadata; plus realtime tool-barrier and whiteboard fixes.

Upgrade Notes apply: the realtime WebRTC broker endpoint is now on by default, and applying this release runs one metadata migration.

6.1.2 is the certification candidate for the 6.1 line. It contains no schema change.

MemberJunction 6.x is released under the Business Source License 1.1; 5.x and earlier stay ISC. What the licence grants, and what needs certification, is in the licence section of the v6 upgrade guide.

  • Gemini 3.8 Live and Gemini 3.8 Live Extended Thinking as realtime co-agents (@memberjunction/ai-gemini, @memberjunction/ai-realtime-client, @memberjunction/ai). Both models (gemini-3.8-live, gemini-3.8-live-extended-thinking) run through the existing Gemini Live driver, with a per-model legality layer that strips or rejects configuration the vendor does not accept for each: affective dialog, proactive audio, thinking levels, and blocking tools on Extended Thinking. Tool calls no longer interrupt generation; each model’s idle signal is honoured so queued sends drain only when the model is actually idle, and parallel or out-of-order tool results are collected through a batch barrier. Extended Thinking’s thought summaries surface as narration cards, kept apart from spoken responses and from actions the user can cancel.
  • Directional media tracks for realtime sessions (@memberjunction/ai, @memberjunction/ai-realtime-client, @memberjunction/ng-conversations, @memberjunction/remote-browser-server). Realtime media is negotiated as tracks with a direction and an open modality vocabulary rather than audio with special cases. Whiteboard and remote-browser channels source video frames to the model through an inbound video bridge with a throttle, captured from getDisplayMedia or getUserMedia. Sessions survive the vendor’s session cap through resumption updates. Inbound-video capability and its frame-rate ceiling are declared per model in the Gemini Live profile table, so a new model states what it accepts instead of being inferred from its name.
  • Direct tools in Gemini Live sessions (@memberjunction/ai-gemini, @memberjunction/ai-agents). Gemini Live declares a dynamic tool set, so an agent’s direct action tools are projected into the live session. Interactive-surface tools (whiteboard, browser, media, context) now count as direct tools when compiling the session prompt, which removes the “do not attempt the work yourself” guidance from sessions that can in fact do it.
  • Sakana AI, Fugu Max and Fugu Ultra v2 (metadata). Sakana AI is added as a vendor with its two orchestration models, sakana/fugu-max ($2/$6 per 1M tokens) and sakana/fugu-ultra-v2 ($5/$30 per 1M, short context), both routed through OpenRouter.
  • Remote browser screencast is change-driven (@memberjunction/ng-conversations, @memberjunction/remote-browser-server). Frames are sent when the page changes, with a 15-second heartbeat, instead of on a fixed cadence. On a static page this saves on the order of 15k tokens per minute while a user interaction still pushes a frame immediately.
  • OpenAI Live planning model has an explicit default (@memberjunction/ai-openai). When a session’s remote reasoning model is not configured, the client uses gpt-5.6-terra and warns, instead of falling back silently to gpt-4o.
  • Tool framing is a declared session parameter (@memberjunction/ai, @memberjunction/ai-agents, @memberjunction/ai-openai). HasToolFraming on the session parameters replaces sniffing the prompt text to decide whether to append delegation-policy instructions; the substring check remains as a fallback for callers that do not set it.
  • AI model pricing metadata corrected (metadata). GPT 5.6 (Sol) had been recorded at its $5/$30 launch rate three weeks after OpenAI cut it; that row is expired at 2026-08-21 and the current $4/$20 rate (cached input $0.40) is recorded, with the note that OpenAI guarantees it only through 2026-11-21. DeepSeek V4.1 Flash gains its OpenRouter cost row ($0.15/$0.60 off-peak). GLM 5.3’s OpenRouter context window is corrected from 200,000 to 1,310,720 tokens and its description no longer claims no rate card exists.
  • A failed whiteboard edit no longer reports success to the model (@memberjunction/ng-conversations). The agent tool pushed a visual confirmation frame and a “do not announce your own change” note unconditionally, including when the tool returned a failure for invalid arguments or an unknown tool. The model received its failure result alongside an assertion that the edit had landed, so failed edits disappeared from the user’s view. Confirmation is now gated on the tool succeeding. The channel’s heartbeat constant, which could never fire because its check lived inside the mutation path, is removed so the channel reads as what it is: change-driven with no liveness guarantee.
  • Typed input during a background tool batch is no longer lost or sent early (@memberjunction/ai-realtime-client). SendText no longer emits a response request while a tool batch is in flight; the text is appended to commentary and drains with the batch’s own response. Tool-call deduplication now lives for the whole batch, so a tool call redelivered after the response completes but before its output is returned is not executed twice.
  • Barge-in works while the model is speaking or thinking (@memberjunction/ai-realtime-client). A state gate in the Gemini client’s microphone path blocked mic chunks during model output and extended thinking, so the user could not interrupt. The gate is removed.
  • Remote browser video reaches the live model (@memberjunction/ai-realtime-client, @memberjunction/ng-conversations). The inbound video bridge is wired with a client getter and channels are started after WebRTC track negotiation, so screencast frames stream once the session is up rather than being dropped on the first frames.
  • The realtime WebRTC broker endpoint is enabled by default (@memberjunction/server). realtime.enabled defaults to true, so /realtime/sdp-exchange is served on every MemberJunction API server unless MJ_REALTIME_ENABLED is set to false. Deployments that relied on the endpoint being absent should set that variable.
  • Node 24 or newer is required for @memberjunction/ai-realtime-client, and the repository root declares the same engine range.
  • One metadata migration applies on mj migrate: the AI model, vendor, cost, modality and persona rows for the models above. It is recorded as create-or-update guarded on each row’s primary key, so it applies cleanly on a database that already received the same rows from mj sync push. No table, view or procedure changes.