@omg-dev/app 0.1.391 → 0.1.392

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,30 @@
1
1
  import { jsx as e } from "react/jsx-runtime";
2
- import { M as n } from "./embedded-eBr2_uJ5.js";
2
+ import { M as n } from "./embedded-BE6dlORL.js";
3
3
  const t = `# Changelog
4
4
 
5
5
  Recent product updates and deployment notes.
6
6
 
7
+ ## August 18, 2026 - A new install could not start a session, and never said why (v0.1.392)
8
+
9
+ - **Fixed: on a fresh install, sending a message showed the thinking dots
10
+ forever.** The session was not slow — it was already dead. The agent harness
11
+ could not start and exited having printed nothing at all: no output, no
12
+ transcript, no error. A session with no agent connected now says so, and
13
+ points at Settings → Coding agents instead of spinning.
14
+ - **Fixed: a session whose agent died then vanished from the list entirely**,
15
+ taking the explanation with it. A dead session that recorded a reason stays
16
+ visible and reports what happened.
17
+ - **New: \`omg doctor\`.** One command that prints a pasteable summary of this
18
+ install — version, which agent CLIs exist, which accounts are connected,
19
+ whether the server answers, and recent errors — for bug reports. It runs
20
+ even when omg.dev is broken, and strips keys, tokens, and your home
21
+ directory so the output is safe to post in public.
22
+ - **New: the documented quick start is tested on a genuinely clean machine.**
23
+ \`scripts/test-install-clean-vm.sh\` runs the README's install on a fresh VM
24
+ and checks the UI actually serves. It found a real break: the published CLI
25
+ needed Node, which the documented \`bun install\` never installs, so
26
+ \`omg computer setup\` died on the first command a new user runs.
27
+
7
28
  ## August 18, 2026 - Two controls in the corner, not three (v0.1.391)
8
29
 
9
30
  - **The hosted mobile menu is tidier.** Settings now lives inside the "⋮" menu
@@ -2,7 +2,7 @@ import { jsx as e, jsxs as i, 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 I } from "react";
3
3
  import { createPortal as re } from "react-dom";
4
4
  import { cn as y } from "cnfast";
5
- import { y as oe, z as H, F as se, X as U, E as ie, H as ae, L as J, I as le, l as de, x as ce, J as L } from "./embedded-eBr2_uJ5.js";
5
+ import { y as oe, z as H, F as se, X as U, E as ie, H as ae, L as J, I as le, l as de, x as ce, J as L } from "./embedded-BE6dlORL.js";
6
6
  import { c as me } from "./create-BrnHvSDE.js";
7
7
  /**
8
8
  * @license lucide-react v0.577.0 - ISC
@@ -1,6 +1,6 @@
1
1
  import { jsxs as r, jsx as k, Fragment as ZA } from "react/jsx-runtime";
2
2
  import { useState as L, useRef as S, useEffect as x, useCallback as Y } from "react";
3
- import { y as cA, S as wQ, X as DA, a7 as sQ, l as tQ, a8 as eQ, a9 as aQ, z as MQ, aa as hQ, R as NQ, x as cQ } from "./embedded-eBr2_uJ5.js";
3
+ import { y as cA, S as wQ, X as DA, a7 as sQ, l as tQ, a8 as eQ, a9 as aQ, z as MQ, aa as hQ, R as NQ, x as cQ } from "./embedded-BE6dlORL.js";
4
4
  /**
5
5
  * @license lucide-react v0.577.0 - ISC
6
6
  *
@@ -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 { ab as uo } from "./embedded-eBr2_uJ5.js";
4
+ import { ab as uo } from "./embedded-BE6dlORL.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 t, jsx as e, Fragment as K } from "react/jsx-runtime";
2
- import { R as F, B as d, L as z, P as w, S as R, f as $, g, T, h as m, i as M, j as _, k as S, C as q, l as H, X as U, K as W } from "./embedded-eBr2_uJ5.js";
2
+ import { R as F, B as d, L as z, P as w, S as R, f as $, g, T, h as m, i as M, j as _, k as S, C as q, l as H, X as U, K as W } from "./embedded-BE6dlORL.js";
3
3
  import { cn as E } from "cnfast";
4
4
  import { useState as A } from "react";
5
5
  function j(a) {
@@ -7788,7 +7788,7 @@ const _w = Es(function({
7788
7788
  ] }) : null;
7789
7789
  }), Ew = Vr(
7790
7790
  "session-files-panel",
7791
- () => import("./SessionFilesPanel-D-wnMzde.js")
7791
+ () => import("./SessionFilesPanel--lWVFdHD.js")
7792
7792
  );
7793
7793
  function Al({ className: e, ...t }) {
7794
7794
  return /* @__PURE__ */ n(
@@ -8512,7 +8512,7 @@ async function RS() {
8512
8512
  }
8513
8513
  }
8514
8514
  const e1 = Ci(
8515
- () => import("./streamdown-response-DPfEttGv.js").then((e) => e.a).then((e) => ({ default: e.StreamdownResponse }))
8515
+ () => import("./streamdown-response-BSoLCPjK.js").then((e) => e.a).then((e) => ({ default: e.StreamdownResponse }))
8516
8516
  );
8517
8517
  function qs({ className: e, from: t, ...r }) {
8518
8518
  return /* @__PURE__ */ n(
@@ -10918,26 +10918,26 @@ function gk({ className: e, isStreaming: t, children: r, ...s }) {
10918
10918
  function bk({ className: e, children: t, ...r }) {
10919
10919
  return /* @__PURE__ */ n($f, { className: P("mt-2 text-sm", e), ...r, children: /* @__PURE__ */ n(Po, { className: "ai-live-text max-w-full opacity-90", children: t }) });
10920
10920
  }
10921
- const xk = Ci(() => import("./chat-engine-Dhvm-I8W.js"));
10921
+ const xk = Ci(() => import("./chat-engine-C3Fn2b4Q.js"));
10922
10922
  function yk() {
10923
- const e = () => void import("./chat-engine-Dhvm-I8W.js"), t = globalThis.requestIdleCallback;
10923
+ const e = () => void import("./chat-engine-C3Fn2b4Q.js"), t = globalThis.requestIdleCallback;
10924
10924
  typeof t == "function" ? t(e, { timeout: 3e3 }) : setTimeout(e, 1500);
10925
10925
  }
10926
10926
  const im = Vr(
10927
10927
  "TermView",
10928
- () => import("./TermView-CXVBbMeL.js").then((e) => ({ default: e.TermView }))
10929
- ), Pd = Vr("ShippedPage", () => import("./shipped-page-DReldcdq.js")), vk = Vr(
10928
+ () => import("./TermView-zmCmz0ME.js").then((e) => ({ default: e.TermView }))
10929
+ ), Pd = Vr("ShippedPage", () => import("./shipped-page-BL3d-Je9.js")), vk = Vr(
10930
10930
  "SessionTokenUsageDialog",
10931
- () => import("./session-token-usage-DPbW2CBE.js")
10931
+ () => import("./session-token-usage-B6PxywCP.js")
10932
10932
  ), wk = Vr(
10933
10933
  "CodingAgentsPage",
10934
- () => import("./coding-agents-page-BjkU4obc.js")
10934
+ () => import("./coding-agents-page-D9_VxkNx.js")
10935
10935
  ), Od = Vr(
10936
10936
  "ResumeSessionSheet",
10937
- () => import("./resume-session-sheet-CduREe11.js")
10937
+ () => import("./resume-session-sheet-89ilq8HL.js")
10938
10938
  ), kk = Vr(
10939
10939
  "ChangelogPage",
10940
- () => import("./ChangelogPage-B5qWIt9j.js")
10940
+ () => import("./ChangelogPage-BqHLf23x.js")
10941
10941
  ), Oi = Ft("configured"), Nk = {
10942
10942
  claude: "Claude",
10943
10943
  codex: "Codex",
@@ -1,4 +1,4 @@
1
- import { R as c, L as f, A as d } from "./streamdown-response-DPfEttGv.js";
1
+ import { R as c, L as f, A as d } from "./streamdown-response-BSoLCPjK.js";
2
2
  import { useContext as p, useState as L, useEffect as N } from "react";
3
3
  import { jsx as x } from "react/jsx-runtime";
4
4
  var A = ({ code: s, language: e, raw: a, className: o, startLine: m, lineNumbers: u, ...g }) => {
@@ -1,4 +1,4 @@
1
- import { w as T, s as U, h as X, c as Y, v as G, S as J, o as k, l as Q, f as M, m as y } from "./streamdown-response-DPfEttGv.js";
1
+ import { w as T, s as U, h as X, c as Y, v as G, S as J, o as k, l as Q, f as M, m as y } from "./streamdown-response-BSoLCPjK.js";
2
2
  import v from "./katex-jHfnQmlp.js";
3
3
  function Z(t, e) {
4
4
  return B(t, {}) || { type: "root", children: [] };
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 { ac as m, ad as o, ae as s } from "./embedded-eBr2_uJ5.js";
4
+ import { ac as m, ad as o, ae as s } from "./embedded-BE6dlORL.js";
5
5
  export {
6
6
  m as OmgAppSurface,
7
7
  o as OmgSettingsSurface,
@@ -0,0 +1,4 @@
1
+ import { p } from "./streamdown-response-BSoLCPjK.js";
2
+ export {
3
+ p as Mermaid
4
+ };
@@ -1,5 +1,5 @@
1
1
  import { jsx as t, jsxs as s, Fragment as N } from "react/jsx-runtime";
2
- import { r as H, m as Q, a as re, n as le, o as oe, p as ie, X, A, R as B, q as ce, s as de, u as J, T as ue, v as me, w as he, x as pe, L as fe } from "./embedded-eBr2_uJ5.js";
2
+ import { r as H, m as Q, a as re, n as le, o as oe, p as ie, X, A, R as B, q as ce, s as de, u as J, T as ue, v as me, w as he, x as pe, L as fe } from "./embedded-BE6dlORL.js";
3
3
  import { cn as u } from "cnfast";
4
4
  import { useState as a, useRef as L, useEffect as v, useCallback as ge } from "react";
5
5
  function ye({
@@ -1,5 +1,5 @@
1
1
  import { jsx as s, jsxs as n, Fragment as $ } from "react/jsx-runtime";
2
- import { a as C, D as T, b as M, c as D, d as S, G as F, e as L, t as R, L as j } from "./embedded-eBr2_uJ5.js";
2
+ import { a as C, D as T, b as M, c as D, d as S, G as F, e as L, t as R, L as j } from "./embedded-BE6dlORL.js";
3
3
  import "@base-ui/react/collapsible";
4
4
  import { cn as z } from "cnfast";
5
5
  import { useState as p, useCallback as P, useEffect as U } from "react";
@@ -1,6 +1,6 @@
1
1
  import { jsxs as l, jsx as r, Fragment as me } from "react/jsx-runtime";
2
2
  import { useState as f, useEffect as w, useRef as fe, useContext as $e, useMemo as Te } from "react";
3
- import { y as ve, N as he, O as ze, Q as S, U as ge, V as Se, W as Pe, Y as je, B as Fe, L as pe, u as J, x as Ye, R as Ge, T as Be, Z as Ke, j as be, f as Ue, _ as He, a as L, $ as k, a0 as R, k as _, a1 as W, a2 as Ve, a3 as qe, a4 as Qe, a5 as Xe, P as Je, a6 as We } from "./embedded-eBr2_uJ5.js";
3
+ import { y as ve, N as he, O as ze, Q as S, U as ge, V as Se, W as Pe, Y as je, B as Fe, L as pe, u as J, x as Ye, R as Ge, T as Be, Z as Ke, j as be, f as Ue, _ as He, a as L, $ as k, a0 as R, k as _, a1 as W, a2 as Ve, a3 as qe, a4 as Qe, a5 as Xe, P as Je, a6 as We } from "./embedded-BE6dlORL.js";
4
4
  import { cn as P } from "cnfast";
5
5
  /**
6
6
  * @license lucide-react v0.577.0 - ISC
@@ -7,7 +7,7 @@ import { createPortal as Ju } from "react-dom";
7
7
  import { f as Ur, p as Ka, e as Za, g as Ja, h as Jn, s as Mt, z as eo, i as to, j as no, k as Bd, l as es, w as Fd, b as Hd, c as Ud, m as zd, d as $d } from "./engine-compile-BeZvvx0I.js";
8
8
  import { g as ro } from "./_commonjsHelpers-C6fGbg64.js";
9
9
  import { cn as io } from "cnfast";
10
- import { a7 as jd, l as qd, a8 as Yd } from "./embedded-eBr2_uJ5.js";
10
+ import { a7 as jd, l as qd, a8 as Yd } from "./embedded-BE6dlORL.js";
11
11
  const Vd = {
12
12
  classId: "classID",
13
13
  dataType: "datatype",
@@ -18973,7 +18973,7 @@ var Cc = Jt(!1), xk = () => Pe(Cc), Ua = (...e) => rc($l(e)), Ak = (e, t) => {
18973
18973
  for (; t > 0 && e[t - 1] === `
18974
18974
  `; ) t--;
18975
18975
  return e.slice(0, t);
18976
- }, Lk = Zu(() => import("./highlighted-body-OFNGDK62-CPliITxE.js").then((e) => ({ default: e.HighlightedCodeBlockBody }))), Rk = ({ code: e, language: t, className: n, children: r, isIncomplete: i = !1, startLine: a, lineNumbers: s, ...u }) => {
18976
+ }, Lk = Zu(() => import("./highlighted-body-OFNGDK62-uamju1ai.js").then((e) => ({ default: e.HighlightedCodeBlockBody }))), Rk = ({ code: e, language: t, className: n, children: r, isIncomplete: i = !1, startLine: a, lineNumbers: s, ...u }) => {
18977
18977
  let o = ee(), l = Ee(() => wk(e), [e]), d = Ee(() => ({ bg: "transparent", fg: "inherit", tokens: l.split(`
18978
18978
  `).map((f) => [{ content: f, color: "inherit", bgColor: "transparent", htmlStyle: {}, offset: 0 }]) }), [l]);
18979
18979
  return y(Ic.Provider, { value: { code: e }, children: J(Nk, { isIncomplete: i, language: t, children: [y(Sk, { language: t }), r ? y("div", { className: o("pointer-events-none sticky top-2 z-10 -mt-10 flex h-8 items-center justify-end"), children: y("div", { className: o("pointer-events-auto flex shrink-0 items-center gap-2 rounded-md border border-sidebar bg-sidebar/80 px-1.5 py-1 supports-[backdrop-filter]:bg-sidebar/70 supports-[backdrop-filter]:backdrop-blur"), "data-streamdown": "code-block-actions", children: r }) }) : null, y(wi, { fallback: y(Ik, { className: n, language: t, lineNumbers: s, result: d, startLine: a, ...u }), children: y(Lk, { className: n, code: l, language: t, lineNumbers: s, raw: d, startLine: a, ...u }) })] }) });
@@ -19315,7 +19315,7 @@ var Cc = Jt(!1), xk = () => Pe(Cc), Ua = (...e) => rc($l(e)), Ak = (e, t) => {
19315
19315
  }, Jk = ({ children: e, className: t, showControls: n, showCopy: r = !0, showDownload: i = !0, showFullscreen: a = !0, ...s }) => {
19316
19316
  let u = ee(), o = n && r, l = n && i, d = n && a, f = o || l || d;
19317
19317
  return J("div", { className: u("my-4 flex flex-col gap-2 rounded-lg border border-border bg-sidebar p-2"), "data-streamdown": "table-wrapper", children: [f ? J("div", { className: u("flex items-center justify-end gap-1"), children: [o ? y(Oc, {}) : null, l ? y(Dc, {}) : null, d ? y(Zk, { showCopy: o, showDownload: l, children: e }) : null] }) : null, y("div", { className: u("border-collapse overflow-x-auto overflow-y-auto rounded-md border border-border bg-background"), children: y("table", { className: u("w-full divide-y divide-border", t), "data-streamdown": "table", ...s, children: e }) })] });
19318
- }, ex = /startLine=(\d+)/, tx = /\bnoLineNumbers\b/, nx = Zu(() => import("./mermaid-GHXKKRXX-xZSCzUpM.js").then((e) => ({ default: e.Mermaid }))), rx = /language-([^\s]+)/;
19318
+ }, ex = /startLine=(\d+)/, tx = /\bnoLineNumbers\b/, nx = Zu(() => import("./mermaid-GHXKKRXX-x1HgNHy2.js").then((e) => ({ default: e.Mermaid }))), rx = /language-([^\s]+)/;
19319
19319
  function Jr(e, t) {
19320
19320
  if (!(e != null && e.position || t != null && t.position)) return !0;
19321
19321
  if (!(e != null && e.position && t != null && t.position)) return !1;
@@ -20828,7 +20828,7 @@ function w6(e) {
20828
20828
  }
20829
20829
  function L6() {
20830
20830
  return Tr || (Tr = Promise.all([
20831
- import("./index-DK58JApd.js"),
20831
+ import("./index-Bi2syIdB.js"),
20832
20832
  import("./index-JkCQXUYs.js").then((e) => e.bp)
20833
20833
  ]).then(([e, t]) => {
20834
20834
  Hn = { math: e.math, mermaid: t.mermaid };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@omg-dev/app",
3
- "version": "0.1.391",
3
+ "version": "0.1.392",
4
4
  "description": "The full OMG application surface for React hosts.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://omg.dev",
@@ -24,7 +24,7 @@
24
24
  },
25
25
  "type": "module",
26
26
  "dependencies": {
27
- "@omg-dev/client": "0.1.391",
27
+ "@omg-dev/client": "0.1.392",
28
28
  "@ai-sdk/react": "^4.0.19",
29
29
  "@base-ui/react": "^1.6.0",
30
30
  "@number-flow/react": "^0.6.2",
@@ -1,4 +0,0 @@
1
- import { p } from "./streamdown-response-DPfEttGv.js";
2
- export {
3
- p as Mermaid
4
- };