Release v2.9.5
What's Changed
- Add HostConfig v2 canonicalizer, hash, and public Host builder API by @chelojimenez in #2392
- [Team Credits] PR-I1: monthly fields in useCreditBalance by @Vu-John in #2380
- chatboxes: compact pill bar on Publish tab by @chelojimenez in #2393
- Pull request for mintlify/docs-update-pr-2303-1779948952796 by @mintlify[bot] in #2306
- Pull request for mintlify/docs-update-pr-2301-1779945512906 by @mintlify[bot] in #2302
- Pull request for mintlify/docs-update-pr-2101-1778616546566 by @mintlify[bot] in #2102
- Pull request for mintlify/docs-update-pr-2117-1778743257214 by @mintlify[bot] in #2118
- Pull request for mintlify/docs-update-pr-2287-1779935284061 by @mintlify[bot] in #2299
- docs: document window.openai.setOpenInAppUrl in the ChatGPT app guide by @chelojimenez in #2398
- refactor(host-config): inspector client consumes SDK leaf primitives by @chelojimenez in #2396
- refactor(HomeTab): drop ensureOrgMetricFresh client effect by @chelojimenez in #2399
- refactor(host-config): tighten canonicalizer with the 4 deferred #2392 follow-ups by @chelojimenez in #2400
- feat(home): Convex-backed What's new feed with video embeds by @chelojimenez in #2401
- fix(evals): call getTestIterationBlob with iterationId, not blobId by @chelojimenez in #2404
- feat(home): render empty state in What's new card by @chelojimenez in #2403
- docs: sync Mintlify backlog into current docs structure by @chelojimenez in #2402
- refactor(host-config): extract host-policy + compat + filterAppOnlyTools into SDK (Stage 3) by @chelojimenez in #2407
- AI-Generated Chatbox Sessions (MVP) — inspector by @chelojimenez in #2397
- feat(home): autoplay preview + modal video for What's new feed by @chelojimenez in #2410
- ci: harden Mintlify docs automation (AI triage classifier + scoped generator) by @chelojimenez in #2405
- docs: warm-paper Mintlify theme matching product design system by @chelojimenez in #2413
- refactor(sdk): TestAgent → HostRunner + HostRuntime binding (Stage 4) by @chelojimenez in #2409
- eval→chatSessions: add 'eval' to inspector sourceType TS unions by @chelojimenez in #2415
- fix(desktop): surface auto-update stalls and swallowed errors by @chelojimenez in #2416
- design-system: add --code-* syntax palette, drive docs Mintlify Shiki from it by @chelojimenez in #2420
- docs: editorial pass — branded inline code, left-rail callouts, sidebar dividers by @chelojimenez in #2421
- [Team Credits] PR-I2: monthly variant in CreditBalanceCard by @Vu-John in #2381
- fix(desktop): default hosts-enabled on for non-hosted builds by @chelojimenez in #2417
- move billing card to org->billing by @ignaciojimenezr in #2424
- nux in playground + org race by @ignaciojimenezr in #2425
- feat(sdk): normalizeSdkEvalHostConfigForWire (Stage 5 Step 1) by @chelojimenez in #2422
- eval→chatSessions PR-2 (inspector): per-turn fanout in iteration finalize by @chelojimenez in #2419
- docs: split nav into Get Started / Inspector / CLI / SDK tabs (+ SDK v1.x signal) by @chelojimenez in #2426
- chore: release rollup — @mcpjam/sdk 1.12.0 by @chelojimenez in #2427
- docs: flatten footer + prev/next pager by @chelojimenez in #2428
- fix(desktop): self-heal launch failures (port fallback + recovery dialog + cache prune) by @chelojimenez in #2418
- Revert "chore: release rollup — @mcpjam/sdk 1.12.0" (#2427) by @chelojimenez in #2431
- feat(home): What's new feed adopts LearnMore card+hover+expanded pattern by @chelojimenez in #2430
- feat(sdk): eval reporter wire-send hostConfig when backend advertises capability (Stage 5 Step 3) by @chelojimenez in #2423
- docs: revamp landing + Inspector IA (pillars, accordion, banner, NEW tags) by @chelojimenez in #2433
- eval→chatSessions PR-4 (inspector): trace-repair predicate accepts chatSessionId iterations by @chelojimenez in #2435
- feat(inspector): MCPJam Agent on Home by @chelojimenez in #2436
- eval→chatSessions (inspector): render trace for chatSessionId-only iterations by @chelojimenez in #2437
- docs: refresh SDK + contributing docs for hostConfig consolidation by @chelojimenez in #2439
- eval→chatSessions widget repopulation (inspector): thread snapshots through fanout by @chelojimenez in #2441
- docs: remove SDK v1.12 announcement banner by @chelojimenez in #2442
- docs: clarify SDK eval host config wire hash by @chelojimenez in #2444
- docs: add "Contribute a Host" page for new host presets by @chelojimenez in #2445
- shared/widget-snapshot: unify the three writers to sharedChatWidgetSnapshots by @chelojimenez in #2443
- evals: derive lockReason from iteration status, not verdict by @chelojimenez in #2446
- widget-snapshot: thread injectedOpenAiCompat* through shared converter + playground by @chelojimenez in #2447
- feat: unified error describe+render layer (sdk → backend → ErrorCard → docs) by @chelojimenez in #2440
- remove USE_EVAL_CHAT_SESSIONS_WRITER flag (inspector): new path is the only path by @chelojimenez in #2450
- docs: fix Inspector tab navigation (page-object schema) by @chelojimenez in #2451
- docs: fix codeblock chrome + accordion respecting design tokens by @chelojimenez in #2452
- docs: fix gaps surfaced by docs-chat (week of 2026-05-29) by @chelojimenez in #2454
- evals: route iteration runners through prepareChatV2 by @chelojimenez in #2453
- evals: lock in runAssistantTurn eval contract via dedicated test by @chelojimenez in #2455
- fix(mcpjam-agent): clear hydrating after StrictMode-cancelled fetch by @chelojimenez in #2456
- evals: drive runIterationViaBackend through runAssistantTurn by @chelojimenez in #2457
- chat-v2: extract runDirectChatTurn from streamDirectChatWithLiveTrace (engine consolidation PR 4a) by @chelojimenez in #2460
- evals: drive runIterationWithAiSdk through runDirectChatTurn (engine consolidation PR 4b) by @chelojimenez in #2461
- chat-v2: share hostConfig resolution via resolveExecutionContext (engine consolidation PR 4c) by @chelojimenez in #2462
- PR-6: drop forceLegacyTraceBlob escape hatch by @chelojimenez in #2459
- evals: drive systemPrompt/temperature via resolveExecutionContext (engine consolidation PR 4d) by @chelojimenez in #2463
- evals: extract fullStream → EvalStreamEvent adapter (engine consolidation PR 5-pre) by @chelojimenez in #2466
- feat(mcpjam-agent): home takeover surface + docs-link fixes by @chelojimenez in #2465
- evals: rewire streamIterationWithAiSdk onto runDirectChatTurn + adapter (engine consolidation PR 5a) by @chelojimenez in #2468
- feat(mcpjam-agent): surface agent as persistent right-side panel by @chelojimenez in #2469
- chat-ingestion: tag every write with product-surface origin by @chelojimenez in #2471
- chat-engine: add onToolCall / onToolResult / onStepFinish callbacks (engine consolidation PR 5b-pre) by @chelojimenez in #2472
- chat-engine: fire onToolCall on resumed approval + inherited paths (PR 5b-pre review follow-up) by @chelojimenez in #2473
- evals: rewire streamIterationViaBackend onto runAssistantTurn + engine callbacks (engine consolidation PR 5b) by @chelojimenez in #2474
- Document MCPJam Agent side panel in Home page by @mintlify[bot] in #2470
- Docs: document suite-level system prompt/temperature defaults by @mintlify[bot] in #2464
- Docs: desktop app startup troubleshooting by @mintlify[bot] in #2429
- Update Home dashboard "What's new" docs by @mintlify[bot] in #2432
- decouple top up and team credits, scheduler, peek into expires for requests by @ignaciojimenezr in #2476
- warn proration on seat change (teams) by @ignaciojimenezr in #2448
- update copies + error msgs team plan by @ignaciojimenezr in #2449
- Update billing UI for uncapped free limits by @ignaciojimenezr in #2395
- chat-engine + evals: PR 5b-followup-2 — turnSpans on onStepFinish + onEngineError callback by @chelojimenez in #2477
- shared+client: dedupe OpenAiApps / InjectedOpenAiCompat capabilities type by @chelojimenez in #2478
- mcp-apps: extract framework-free host-app-bridge shared module (eval browser-render PR 1/5) by @chelojimenez in #2479
- evals: pass systemPrompt to appendEvalTurnTrace, drop persistence-side prepends by @chelojimenez in #2481
- engine: add prepareAdvertisedTools per-step hook (eval browser-render PR 2/5) by @chelojimenez in #2480
- eval: headless-Chromium MCP App browser harness (eval browser-render PR 3/5) by @chelojimenez in #2482
- feat(checks): Layer B inspector — predicate orchestrator + Hono route by @chelojimenez in #2485
- feat(synthetic): enable BYOK chatbox models for synthetic runs by @chelojimenez in #2486
- eval: Computer Use + eval-runner integration, with review fixes (browser-render PR 4–5/5) by @chelojimenez in #2483
- evals: collapse finishIterationDirectly + recorder.finishIteration into shared finalize by @chelojimenez in #2489
- Home page refactor + chat thread polish by @chelojimenez in #2488
- chat: collapse local-org BYOK (route 3) onto runDirectChatTurn + add callback parity by @chelojimenez in #2490
- test(eval): end-to-end Computer Use loop smoke test (PR 8) by @chelojimenez in #2493
- fix(evals): load trace via chatSessionId, not just legacy blob by @chelojimenez in #2495
- fix(docker): copy client/ before bundle:browser-harness by @chelojimenez in #2496
- harness: snake_case BrowserActionResult note literal by @chelojimenez in #2494
Full Changelog: v2.9.4...v2.9.5