@omg-dev/app 0.6.32 → 0.6.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,9 +1,37 @@
1
1
  import { jsx as e } from "react/jsx-runtime";
2
- import { z as n } from "./embedded-BQz5y504.js";
2
+ import { z as n } from "./embedded-58uZc5Ys.js";
3
3
  const t = `# Changelog
4
4
 
5
5
  Recent product updates and deployment notes.
6
6
 
7
+ ## September 2, 2026 - Claude Fable 5.1 is in the model picker (v0.6.34)
8
+
9
+ - **You can select Claude Fable 5.1 for a Claude session.** The picker shows it
10
+ as \`claude-fable-5-1\`, next to the existing \`fable\` entry.
11
+ - **\`fable\` and \`claude-fable-5-1\` are different models.** The Claude CLI
12
+ resolves the short alias \`fable\` to the current Fable release, which is
13
+ Fable 5. There is no short alias for Fable 5.1 yet. The full model id is the
14
+ only way to reach it.
15
+ - **A Fable 5.1 session now reports the correct model.** Before this change the
16
+ session view collapsed every Fable id to \`fable\`. A Fable 5.1 session showed
17
+ Fable 5 as the live model, and a resume moved that session to Fable 5.
18
+ - **Fable 5.1 costs more than Opus 5.** The rate is 10 USD for each million
19
+ input tokens and 50 USD for each million output tokens. Thinking is always
20
+ on. Select it for hard work. Do not use it as a default.
21
+
22
+ ## September 1, 2026 - Agents can paste into the desktop browser (v0.6.33)
23
+
24
+ - **The Computer Use MCP has a new tool: computer_paste.** It puts text on
25
+ the desktop clipboard and sends a real Ctrl+V to the agent's tab. Paste
26
+ handlers fire. Fields that react to paste now work. Verification-code boxes
27
+ that split digits are the common case. computer_type cannot fill them,
28
+ because it never sends a paste event.
29
+ - **The text stays on the desktop clipboard.** A person watching the Computer
30
+ tab can paste it again with Ctrl+V.
31
+ - **The clipboard write uses xclip, not the page.** No clipboard permission is
32
+ granted to any page. Paste also works on plain-http pages. If xclip is not
33
+ installed, the tool error says how to install it.
34
+
7
35
  ## September 1, 2026 - The transcript holds still while you type (v0.6.32)
8
36
 
9
37
  - **Typing no longer moves the transcript.** The message box measures itself
@@ -2,7 +2,7 @@ import { jsx as e, jsxs as s, Fragment as te } from "react/jsx-runtime";
2
2
  import { memo as ne, useState as m, useRef as T, useCallback as v, useEffect as C, useMemo as q, Suspense as U } from "react";
3
3
  import { createPortal as re } from "react-dom";
4
4
  import { cn as y } from "cnfast";
5
- import { f as oe, a3 as W, a4 as se, X as I, a5 as ie, a6 as ae, L as H, a7 as le, y as de, C as ce, a8 as L } from "./embedded-BQz5y504.js";
5
+ import { f as oe, a3 as W, a4 as se, X as I, a5 as ie, a6 as ae, L as H, a7 as le, y as de, C as ce, a8 as L } from "./embedded-58uZc5Ys.js";
6
6
  import { c as me } from "./create-CBk9uwJH.js";
7
7
  /**
8
8
  * @license lucide-react v0.577.0 - ISC
@@ -1,7 +1,7 @@
1
1
  import { jsxs as r, jsx as k, Fragment as vA } from "react/jsx-runtime";
2
2
  import { useState as L, useRef as R, useEffect as p, useCallback as q } from "react";
3
- import { f as UA, o as iQ, X as CA, a9 as wQ, y as sQ, aa as tQ, ab as eQ, a3 as aQ, ac as MQ, R as hQ, C as NQ } from "./embedded-BQz5y504.js";
4
- import { K as ZA } from "./keyboard-B9_I7pEl.js";
3
+ import { f as UA, o as iQ, X as CA, a9 as wQ, y as sQ, aa as tQ, ab as eQ, a3 as aQ, ac as MQ, R as hQ, C as NQ } from "./embedded-58uZc5Ys.js";
4
+ import { K as ZA } from "./keyboard-CxOkI1yY.js";
5
5
  /**
6
6
  * @license lucide-react v0.577.0 - ISC
7
7
  *
@@ -1,7 +1,7 @@
1
1
  import { jsx as ao } from "react/jsx-runtime";
2
2
  import { useRef as Dt, useCallback as Lt, useSyncExternalStore as ut, useEffect as so } from "react";
3
3
  import { g as io } from "./_commonjsHelpers-C6fGbg64.js";
4
- import { ad as uo } from "./embedded-BQz5y504.js";
4
+ import { ad as uo } from "./embedded-58uZc5Ys.js";
5
5
  var Ar = "vercel.ai.error", co = Symbol.for(Ar), Ut, Ft, se = class Nr extends (Ft = Error, Ut = co, Ft) {
6
6
  /**
7
7
  * Creates an AI SDK Error.
@@ -1,5 +1,5 @@
1
1
  import { jsxs as s, jsx as e, Fragment as O } from "react/jsx-runtime";
2
- import { R, B as u, L as $, n as A, o as S, M as G, p as j, q as E, s as f, T as P, u as D, v as W, w as T, x as X, y as J, X as Q, K as V } from "./embedded-BQz5y504.js";
2
+ import { R, B as u, L as $, n as A, o as S, M as G, p as j, q as E, s as f, T as P, u as D, v as W, w as T, x as X, y as J, X as Q, K as V } from "./embedded-58uZc5Ys.js";
3
3
  import { cn as U } from "cnfast";
4
4
  import { useState as I } from "react";
5
5
  function B(l) {
@@ -1,7 +1,7 @@
1
1
  import { jsxs as pe, jsx as J, Fragment as zt } from "react/jsx-runtime";
2
2
  import { useState as Ve, useRef as Qe, useCallback as ve, useEffect as Le } from "react";
3
- import { f as Fn, a3 as Ai, ab as Mn, B as Ge, R as Tn, X as Qn, L as Xi, ae as Ln } from "./embedded-BQz5y504.js";
4
- import { K as Rn } from "./keyboard-B9_I7pEl.js";
3
+ import { f as Fn, a3 as Ai, ab as Mn, B as Ge, R as Tn, X as Qn, L as Xi, ae as Ln } from "./embedded-58uZc5Ys.js";
4
+ import { K as Rn } from "./keyboard-CxOkI1yY.js";
5
5
  /**
6
6
  * @license lucide-react v0.577.0 - ISC
7
7
  *
@@ -2371,7 +2371,7 @@ function Ad(e) {
2371
2371
  return !t || t.toLowerCase() === "unknown" ? null : t;
2372
2372
  }
2373
2373
  function uw() {
2374
- return Ad("0.6.32");
2374
+ return Ad("0.6.34");
2375
2375
  }
2376
2376
  const pf = uw();
2377
2377
  function fw(e) {
@@ -14223,7 +14223,7 @@ const FA = Mr(function({
14223
14223
  ] }) : null;
14224
14224
  }), OA = Jn(
14225
14225
  "session-files-panel",
14226
- () => import("./SessionFilesPanel-DnCnKVai.js")
14226
+ () => import("./SessionFilesPanel-Cxh0LVkw.js")
14227
14227
  );
14228
14228
  function al({ className: e, ...t }) {
14229
14229
  return /* @__PURE__ */ r(
@@ -14758,7 +14758,7 @@ async function xF() {
14758
14758
  }
14759
14759
  const t4 = Jn(
14760
14760
  "StreamdownResponse",
14761
- () => import("./streamdown-response-Dv9YoeCg.js").then((e) => ({ default: e.StreamdownResponse }))
14761
+ () => import("./streamdown-response-tRFwvqA_.js").then((e) => ({ default: e.StreamdownResponse }))
14762
14762
  );
14763
14763
  function js({ className: e, from: t, ...n }) {
14764
14764
  return /* @__PURE__ */ r(
@@ -17221,27 +17221,27 @@ function v3({ className: e, isStreaming: t, children: n, ...s }) {
17221
17221
  function w3({ className: e, children: t, ...n }) {
17222
17222
  return /* @__PURE__ */ r(ul, { className: D("mt-2 text-sm", e), ...n, children: /* @__PURE__ */ r(mi, { className: "ai-live-text max-w-full opacity-90", children: t }) });
17223
17223
  }
17224
- const N3 = Jn("OmgChatEngine", () => import("./chat-engine-D0jiOPZW.js"));
17224
+ const N3 = Jn("OmgChatEngine", () => import("./chat-engine-CrY_SRtZ.js"));
17225
17225
  function k3() {
17226
- const e = () => void import("./chat-engine-D0jiOPZW.js").catch(() => {
17226
+ const e = () => void import("./chat-engine-CrY_SRtZ.js").catch(() => {
17227
17227
  }), t = globalThis.requestIdleCallback;
17228
17228
  typeof t == "function" ? t(e, { timeout: 3e3 }) : setTimeout(e, 1500);
17229
17229
  }
17230
17230
  const E0 = Jn(
17231
17231
  "TermView",
17232
- () => import("./TermView-BbBFGjMY.js").then((e) => ({ default: e.TermView }))
17233
- ), oh = Jn("ShippedPage", () => import("./shipped-page-D75wuNW9.js")), S3 = Jn(
17232
+ () => import("./TermView-CZoGTUA1.js").then((e) => ({ default: e.TermView }))
17233
+ ), oh = Jn("ShippedPage", () => import("./shipped-page-Dg8j_nig.js")), S3 = Jn(
17234
17234
  "SessionTokenUsageDialog",
17235
- () => import("./session-token-usage-DsXrmvML.js")
17235
+ () => import("./session-token-usage-BkG-KjXX.js")
17236
17236
  ), C3 = Jn(
17237
17237
  "CodingAgentsPage",
17238
- () => import("./coding-agents-page-BvjduLrc.js")
17239
- ), E3 = Jn("ComputerPage", () => import("./computer-page-CWaKbT-Y.js")), ih = Jn(
17238
+ () => import("./coding-agents-page-Cd1LF0ay.js")
17239
+ ), E3 = Jn("ComputerPage", () => import("./computer-page-DsrmLiX_.js")), ih = Jn(
17240
17240
  "ResumeSessionSheet",
17241
- () => import("./resume-session-sheet-CuZTh28H.js")
17241
+ () => import("./resume-session-sheet-DL7-yaH_.js")
17242
17242
  ), M3 = Jn(
17243
17243
  "ChangelogPage",
17244
- () => import("./ChangelogPage-C5Ym3Dlx.js")
17244
+ () => import("./ChangelogPage-Bc6vsFTB.js")
17245
17245
  ), pi = Qt("configured"), A3 = {
17246
17246
  claude: "Claude",
17247
17247
  codex: "Codex",
@@ -17265,7 +17265,7 @@ const E0 = Jn(
17265
17265
  value: "full",
17266
17266
  onChange: async () => {
17267
17267
  }
17268
- }), _0 = ["sonnet", "opus", "haiku", "fable"], _3 = [
17268
+ }), _0 = ["sonnet", "opus", "haiku", "fable", "claude-fable-5-1"], _3 = [
17269
17269
  "gpt-5.6-sol",
17270
17270
  "gpt-5.6-terra",
17271
17271
  "gpt-5.6-luna",
@@ -28844,7 +28844,7 @@ function gh({
28844
28844
  sessionId: ne.sessionId,
28845
28845
  sessionTitle: ne.title,
28846
28846
  project: ne.project
28847
- }), ft = ne.agent === "claude" ? ["fable", "opus", "sonnet", "haiku"].includes(k) ? k : void 0 : ne.agent === "opencode" ? (b.models.opencode ?? Xn.opencode).includes(k) ? k : I("opencode") : ne.agent === "codex" ? (b.models["codex-aisdk"] ?? Xn["codex-aisdk"]).includes(k) ? k : I("codex-aisdk") : void 0, at = ps(B, n);
28847
+ }), ft = ne.agent === "claude" ? ["fable", "claude-fable-5-1", "opus", "sonnet", "haiku"].includes(k) ? k : void 0 : ne.agent === "opencode" ? (b.models.opencode ?? Xn.opencode).includes(k) ? k : I("opencode") : ne.agent === "codex" ? (b.models["codex-aisdk"] ?? Xn["codex-aisdk"]).includes(k) ? k : I("codex-aisdk") : void 0, at = ps(B, n);
28848
28848
  l();
28849
28849
  const Pe = (Lt) => ve.promise(
28850
28850
  ye("/api/sessions/resume", {
package/dist-lib/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import "react/jsx-runtime";
2
2
  import "react";
3
3
  import "@tanstack/react-router";
4
- import { af as m, ag as o, ah as s } from "./embedded-BQz5y504.js";
4
+ import { af as m, ag as o, ah as s } from "./embedded-58uZc5Ys.js";
5
5
  export {
6
6
  m as OmgAppSurface,
7
7
  o as OmgSettingsSurface,
@@ -1,4 +1,4 @@
1
- import { f as h } from "./embedded-BQz5y504.js";
1
+ import { f as h } from "./embedded-58uZc5Ys.js";
2
2
  /**
3
3
  * @license lucide-react v0.577.0 - ISC
4
4
  *
@@ -1,5 +1,5 @@
1
1
  import { jsx as t, jsxs as s, Fragment as R } from "react/jsx-runtime";
2
- import { r as X, P as J, a as le, g as oe, h as ie, i as ce, X as K, A as P, R as Y, j as de, S as ue, k as Z, T as me, l as he, m as pe, C as fe, L as ge } from "./embedded-BQz5y504.js";
2
+ import { r as X, P as J, a as le, g as oe, h as ie, i as ce, X as K, A as P, R as Y, j as de, S as ue, k as Z, T as me, l as he, m as pe, C as fe, L as ge } from "./embedded-58uZc5Ys.js";
3
3
  import { cn as x } from "cnfast";
4
4
  import { useState as a, useRef as E, useEffect as C, useCallback as xe } from "react";
5
5
  function be(r) {
@@ -1,5 +1,5 @@
1
1
  import { jsx as s, jsxs as a, Fragment as w } from "react/jsx-runtime";
2
- import { a as $, D as C, b as T, c as M, d as D, G as S, e as F, t as L, L as R } from "./embedded-BQz5y504.js";
2
+ import { a as $, D as C, b as T, c as M, d as D, G as S, e as F, t as L, L as R } from "./embedded-58uZc5Ys.js";
3
3
  import { useState as g, useCallback as j, useEffect as z } from "react";
4
4
  import "@base-ui/react/collapsible";
5
5
  import { cn as P } from "cnfast";
@@ -1,6 +1,6 @@
1
1
  import { jsxs as o, jsx as r, Fragment as ce } from "react/jsx-runtime";
2
2
  import { useState as f, useEffect as v, useRef as ue, useContext as _e, useMemo as $e } from "react";
3
- import { f as Se, E as me, F as Te, H as _, I as fe, J as ze, N as Pe, O as Fe, B as Ge, L as he, Q as je, k as J, C as Ye, R as Be, T as Ke, U as Ue, v as pe, q as He, V as Ve, a as C, W as N, Y as D, w as R, Z as Q, _ as qe, $ as Je, a0 as Qe, a1 as Xe, n as Oe, a2 as We } from "./embedded-BQz5y504.js";
3
+ import { f as Se, E as me, F as Te, H as _, I as fe, J as ze, N as Pe, O as Fe, B as Ge, L as he, Q as je, k as J, C as Ye, R as Be, T as Ke, U as Ue, v as pe, q as He, V as Ve, a as C, W as N, Y as D, w as R, Z as Q, _ as qe, $ as Je, a0 as Qe, a1 as Xe, n as Oe, a2 as We } from "./embedded-58uZc5Ys.js";
4
4
  import { cn as $ } from "cnfast";
5
5
  /**
6
6
  * @license lucide-react v0.577.0 - ISC
@@ -3,7 +3,7 @@ import { useMemo as We, useState as Ce, useEffect as xe, useRef as Ve } from "re
3
3
  import { r as He, t as T, o as Ue, u as be, y as L, A as Je, a as Qe } from "./chunk-YOKDWASO-B5AA2F8u.js";
4
4
  import { b as Xe, c as Ye, a as Ze, d as Ke } from "./engine-compile-D_stzVMa.js";
5
5
  import { cn as je } from "cnfast";
6
- import { a9 as et, y as tt, aa as nt } from "./embedded-BQz5y504.js";
6
+ import { a9 as et, y as tt, aa as nt } from "./embedded-58uZc5Ys.js";
7
7
  const d = (
8
8
  /** @type {const} */
9
9
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omg-dev/app",
3
- "version": "0.6.32",
3
+ "version": "0.6.34",
4
4
  "description": "The full OMG application surface for React hosts.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://omg.dev",
@@ -29,7 +29,7 @@
29
29
  "@chenglou/pretext": "^0.0.8",
30
30
  "@novnc/novnc": "^1.7.0",
31
31
  "@number-flow/react": "^0.6.2",
32
- "@omg-dev/client": "0.6.32",
32
+ "@omg-dev/client": "0.6.34",
33
33
  "@pierre/diffs": "^1.3.1",
34
34
  "@pierre/trees": "1.0.0-beta.6",
35
35
  "@streamdown/cjk": "^1.0.3",