@brainst0rm/cli 0.13.0 → 0.14.0
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.
- package/dist/{App-SSKWB7CT.js → App-HGJSYIVS.js} +133 -62
- package/dist/App-HGJSYIVS.js.map +1 -0
- package/dist/{App-DPXJYXKH.js → App-XCJW3A4I.js} +133 -62
- package/dist/App-XCJW3A4I.js.map +1 -0
- package/dist/brainstorm.js +1428 -150
- package/dist/brainstorm.js.map +1 -1
- package/dist/{chunk-7D4SUZUM.js → chunk-PR4QN5HX.js} +6 -1
- package/dist/{chunk-ZWE3DS7E.js → chunk-SEGVTWSK.js} +6 -1
- package/dist/{chunk-5NA3GH6X.js → chunk-WYQU3HAB.js} +175 -10
- package/dist/chunk-WYQU3HAB.js.map +1 -0
- package/dist/{chunk-55ITCWZZ.js → chunk-Z2QIGVYT.js} +175 -10
- package/dist/chunk-Z2QIGVYT.js.map +1 -0
- package/dist/{dist-GNHTH2DH.js → dist-3BC75XHW.js} +2 -2
- package/dist/dist-42TQFHMB.js +1640 -0
- package/dist/dist-42TQFHMB.js.map +1 -0
- package/dist/dist-BULARAL3.js +7308 -0
- package/dist/dist-BULARAL3.js.map +1 -0
- package/dist/{dist-JUDVPE7G.js → dist-ET6CSS7O.js} +2 -2
- package/dist/{dist-DUDO3RDM.js → dist-GVK5Q4YK.js} +62 -16
- package/dist/{dist-V5DTSTKJ.js.map → dist-GVK5Q4YK.js.map} +1 -1
- package/dist/{dist-V5DTSTKJ.js → dist-K7BDAMTO.js} +62 -16
- package/dist/{dist-DUDO3RDM.js.map → dist-K7BDAMTO.js.map} +1 -1
- package/dist/{dist-WLTQTLFO.js → dist-OYQTULIU.js} +2 -2
- package/dist/dist-S5JYXFUW.js +7307 -0
- package/dist/dist-S5JYXFUW.js.map +1 -0
- package/dist/{dist-YIGU37Q2.js → dist-Y25MC2VO.js} +2 -2
- package/dist/dist-Z4SBSK4Q.js +1639 -0
- package/dist/dist-Z4SBSK4Q.js.map +1 -0
- package/dist/index.js +1428 -150
- package/dist/index.js.map +1 -1
- package/dist/mcp-server-CROPNYHI.js +4252 -0
- package/dist/mcp-server-CROPNYHI.js.map +1 -0
- package/dist/mcp-server-IJVEG6CS.js +4251 -0
- package/dist/mcp-server-IJVEG6CS.js.map +1 -0
- package/dist/{recorder-D6ILEOZP.js → recorder-33N4U6TO.js} +2 -2
- package/dist/{recorder-SPYYF4DL.js → recorder-APOOXJYA.js} +2 -2
- package/dist/{roles-2DGF4PZU.js → roles-GKDCLP5G.js} +2 -2
- package/dist/{roles-UIPX7GBC.js → roles-UUIISXEW.js} +2 -2
- package/dist/{slash-PDWKCZOQ.js → slash-4XSR3SJD.js} +3 -3
- package/dist/{slash-ZDC4DKL4.js → slash-CVWH3LTR.js} +3 -3
- package/package.json +4 -2
- package/dist/App-DPXJYXKH.js.map +0 -1
- package/dist/App-SSKWB7CT.js.map +0 -1
- package/dist/chunk-55ITCWZZ.js.map +0 -1
- package/dist/chunk-5NA3GH6X.js.map +0 -1
- /package/dist/{chunk-7D4SUZUM.js.map → chunk-PR4QN5HX.js.map} +0 -0
- /package/dist/{chunk-ZWE3DS7E.js.map → chunk-SEGVTWSK.js.map} +0 -0
- /package/dist/{dist-GNHTH2DH.js.map → dist-3BC75XHW.js.map} +0 -0
- /package/dist/{dist-JUDVPE7G.js.map → dist-ET6CSS7O.js.map} +0 -0
- /package/dist/{dist-WLTQTLFO.js.map → dist-OYQTULIU.js.map} +0 -0
- /package/dist/{dist-YIGU37Q2.js.map → dist-Y25MC2VO.js.map} +0 -0
- /package/dist/{recorder-D6ILEOZP.js.map → recorder-33N4U6TO.js.map} +0 -0
- /package/dist/{recorder-SPYYF4DL.js.map → recorder-APOOXJYA.js.map} +0 -0
- /package/dist/{roles-2DGF4PZU.js.map → roles-GKDCLP5G.js.map} +0 -0
- /package/dist/{roles-UIPX7GBC.js.map → roles-UUIISXEW.js.map} +0 -0
- /package/dist/{slash-PDWKCZOQ.js.map → slash-4XSR3SJD.js.map} +0 -0
- /package/dist/{slash-ZDC4DKL4.js.map → slash-CVWH3LTR.js.map} +0 -0
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
MarkdownRenderer
|
|
4
|
-
} from "./chunk-D474E47D.js";
|
|
5
2
|
import {
|
|
6
3
|
executeSlashCommand,
|
|
7
4
|
getSlashCommands,
|
|
8
5
|
isSlashCommand
|
|
9
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-WYQU3HAB.js";
|
|
7
|
+
import {
|
|
8
|
+
MarkdownRenderer
|
|
9
|
+
} from "./chunk-D474E47D.js";
|
|
10
10
|
import "./chunk-OVGL3NJQ.js";
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-SEGVTWSK.js";
|
|
12
12
|
|
|
13
13
|
// src/components/App.tsx
|
|
14
14
|
import { useState as useState9, useRef as useRef2 } from "react";
|
|
@@ -1447,6 +1447,19 @@ function timeAgo(ts) {
|
|
|
1447
1447
|
if (secs < 60) return `${secs}s ago`;
|
|
1448
1448
|
return `${Math.floor(secs / 60)}m ago`;
|
|
1449
1449
|
}
|
|
1450
|
+
function groupToolsByDomain(systems) {
|
|
1451
|
+
const groups = [];
|
|
1452
|
+
for (const sys of systems) {
|
|
1453
|
+
for (const cap of sys.capabilities) {
|
|
1454
|
+
groups.push({
|
|
1455
|
+
domain: cap,
|
|
1456
|
+
product: sys.name,
|
|
1457
|
+
count: Math.ceil(sys.toolCount / Math.max(sys.capabilities.length, 1))
|
|
1458
|
+
});
|
|
1459
|
+
}
|
|
1460
|
+
}
|
|
1461
|
+
return groups;
|
|
1462
|
+
}
|
|
1450
1463
|
function DashboardMode({
|
|
1451
1464
|
sessionCost,
|
|
1452
1465
|
tokenCount,
|
|
@@ -1456,10 +1469,13 @@ function DashboardMode({
|
|
|
1456
1469
|
turnCount,
|
|
1457
1470
|
sessionStart,
|
|
1458
1471
|
brData,
|
|
1459
|
-
onRefreshBR
|
|
1472
|
+
onRefreshBR,
|
|
1473
|
+
godModeInfo
|
|
1460
1474
|
}) {
|
|
1461
1475
|
const elapsed = Date.now() - sessionStart;
|
|
1462
1476
|
const costPerHour = elapsed > 6e4 ? sessionCost / elapsed * 36e5 : 0;
|
|
1477
|
+
const gm = godModeInfo;
|
|
1478
|
+
const domainGroups = gm ? groupToolsByDomain(gm.connectedSystems) : [];
|
|
1463
1479
|
useEffect2(() => {
|
|
1464
1480
|
if (onRefreshBR && (!brData || brData.lastFetched === 0)) {
|
|
1465
1481
|
onRefreshBR();
|
|
@@ -1513,11 +1529,28 @@ function DashboardMode({
|
|
|
1513
1529
|
}
|
|
1514
1530
|
)
|
|
1515
1531
|
] }),
|
|
1516
|
-
|
|
1517
|
-
/* @__PURE__ */ jsx12(Text12, { color: "gray", children: "
|
|
1518
|
-
/* @__PURE__ */
|
|
1519
|
-
|
|
1520
|
-
|
|
1532
|
+
/* @__PURE__ */ jsxs10(Box11, { flexDirection: "column", children: [
|
|
1533
|
+
/* @__PURE__ */ jsx12(Text12, { color: "gray", children: "Products" }),
|
|
1534
|
+
/* @__PURE__ */ jsx12(
|
|
1535
|
+
Text12,
|
|
1536
|
+
{
|
|
1537
|
+
color: gm && gm.connectedSystems.length > 0 ? "green" : "gray",
|
|
1538
|
+
bold: true,
|
|
1539
|
+
children: gm?.connectedSystems.length ?? 0
|
|
1540
|
+
}
|
|
1541
|
+
)
|
|
1542
|
+
] }),
|
|
1543
|
+
/* @__PURE__ */ jsxs10(Box11, { flexDirection: "column", children: [
|
|
1544
|
+
/* @__PURE__ */ jsx12(Text12, { color: "gray", children: "Tools" }),
|
|
1545
|
+
/* @__PURE__ */ jsx12(Text12, { bold: true, children: gm?.totalTools ?? 0 })
|
|
1546
|
+
] }),
|
|
1547
|
+
/* @__PURE__ */ jsxs10(Box11, { flexDirection: "column", children: [
|
|
1548
|
+
/* @__PURE__ */ jsx12(Text12, { color: "gray", children: "Models" }),
|
|
1549
|
+
/* @__PURE__ */ jsxs10(Text12, { children: [
|
|
1550
|
+
modelCount.local,
|
|
1551
|
+
"L/",
|
|
1552
|
+
modelCount.cloud,
|
|
1553
|
+
"C"
|
|
1521
1554
|
] })
|
|
1522
1555
|
] })
|
|
1523
1556
|
]
|
|
@@ -1534,15 +1567,40 @@ function DashboardMode({
|
|
|
1534
1567
|
flexDirection: "column",
|
|
1535
1568
|
children: [
|
|
1536
1569
|
/* @__PURE__ */ jsxs10(Text12, { bold: true, color: "green", children: [
|
|
1570
|
+
" ",
|
|
1571
|
+
"Connected Systems"
|
|
1572
|
+
] }),
|
|
1573
|
+
gm && gm.connectedSystems.length > 0 ? gm.connectedSystems.map((sys) => /* @__PURE__ */ jsxs10(Box11, { children: [
|
|
1574
|
+
/* @__PURE__ */ jsx12(Text12, { color: "green", children: "\u25CF " }),
|
|
1575
|
+
/* @__PURE__ */ jsx12(Text12, { bold: true, children: sys.displayName.padEnd(18) }),
|
|
1576
|
+
/* @__PURE__ */ jsxs10(Text12, { color: "gray", children: [
|
|
1577
|
+
String(sys.toolCount).padStart(2),
|
|
1578
|
+
"t "
|
|
1579
|
+
] }),
|
|
1580
|
+
/* @__PURE__ */ jsxs10(Text12, { color: "gray", dimColor: true, children: [
|
|
1581
|
+
sys.latencyMs,
|
|
1582
|
+
"ms"
|
|
1583
|
+
] })
|
|
1584
|
+
] }, sys.name)) : /* @__PURE__ */ jsxs10(Text12, { color: "gray", dimColor: true, children: [
|
|
1585
|
+
" ",
|
|
1586
|
+
"No products connected"
|
|
1587
|
+
] }),
|
|
1588
|
+
gm && gm.errors.length > 0 && gm.errors.map((err) => /* @__PURE__ */ jsxs10(Box11, { children: [
|
|
1589
|
+
/* @__PURE__ */ jsx12(Text12, { color: "red", children: "\u25CB " }),
|
|
1590
|
+
/* @__PURE__ */ jsx12(Text12, { color: "gray", children: err.name.padEnd(18) }),
|
|
1591
|
+
/* @__PURE__ */ jsx12(Text12, { color: "red", dimColor: true, children: err.error.slice(0, 25) })
|
|
1592
|
+
] }, err.name)),
|
|
1593
|
+
/* @__PURE__ */ jsx12(Text12, { children: " " }),
|
|
1594
|
+
/* @__PURE__ */ jsxs10(Text12, { bold: true, color: "blue", children: [
|
|
1537
1595
|
" ",
|
|
1538
1596
|
"Routing Log"
|
|
1539
1597
|
] }),
|
|
1540
1598
|
routingHistory.length === 0 ? /* @__PURE__ */ jsxs10(Text12, { color: "gray", dimColor: true, children: [
|
|
1541
1599
|
" ",
|
|
1542
1600
|
"Send a message to start."
|
|
1543
|
-
] }) : routingHistory.slice(0,
|
|
1601
|
+
] }) : routingHistory.slice(0, 5).map((entry, i) => /* @__PURE__ */ jsxs10(Box11, { children: [
|
|
1544
1602
|
/* @__PURE__ */ jsx12(Text12, { color: "gray", dimColor: true, children: timeAgo(entry.timestamp).padEnd(8) }),
|
|
1545
|
-
/* @__PURE__ */ jsx12(Text12, { color: getProviderColor(entry.model), bold: true, children: entry.model.padEnd(
|
|
1603
|
+
/* @__PURE__ */ jsx12(Text12, { color: getProviderColor(entry.model), bold: true, children: entry.model.padEnd(16) }),
|
|
1546
1604
|
/* @__PURE__ */ jsx12(Text12, { color: "gray", children: entry.strategy })
|
|
1547
1605
|
] }, i)),
|
|
1548
1606
|
brData && brData.leaderboard.length > 0 && /* @__PURE__ */ jsxs10(Fragment2, { children: [
|
|
@@ -1551,19 +1609,17 @@ function DashboardMode({
|
|
|
1551
1609
|
" ",
|
|
1552
1610
|
"Leaderboard"
|
|
1553
1611
|
] }),
|
|
1554
|
-
brData.leaderboard.slice(0,
|
|
1612
|
+
brData.leaderboard.filter((e) => e?.model).slice(0, 4).map((entry, i) => /* @__PURE__ */ jsxs10(Box11, { children: [
|
|
1555
1613
|
/* @__PURE__ */ jsxs10(Text12, { color: "gray", children: [
|
|
1556
1614
|
String(i + 1).padStart(2),
|
|
1557
1615
|
". "
|
|
1558
1616
|
] }),
|
|
1559
|
-
/* @__PURE__ */ jsx12(Text12, { color: getProviderColor(entry.provider), bold: true, children: entry.model.split("/").pop()?.padEnd(
|
|
1617
|
+
/* @__PURE__ */ jsx12(Text12, { color: getProviderColor(entry.provider ?? ""), bold: true, children: (entry.model ?? "unknown").split("/").pop()?.padEnd(16) ?? "unknown".padEnd(16) }),
|
|
1560
1618
|
/* @__PURE__ */ jsxs10(Text12, { color: "gray", children: [
|
|
1561
1619
|
"Q",
|
|
1562
|
-
entry.quality_rank,
|
|
1620
|
+
entry.quality_rank ?? "?",
|
|
1563
1621
|
" S",
|
|
1564
|
-
entry.speed_rank
|
|
1565
|
-
" V",
|
|
1566
|
-
entry.value_rank
|
|
1622
|
+
entry.speed_rank ?? "?"
|
|
1567
1623
|
] })
|
|
1568
1624
|
] }, i))
|
|
1569
1625
|
] })
|
|
@@ -1582,43 +1638,51 @@ function DashboardMode({
|
|
|
1582
1638
|
children: [
|
|
1583
1639
|
/* @__PURE__ */ jsxs10(Text12, { bold: true, color: "cyan", children: [
|
|
1584
1640
|
" ",
|
|
1585
|
-
"Tool
|
|
1641
|
+
"Tool Registry (",
|
|
1642
|
+
gm?.totalTools ?? 0,
|
|
1643
|
+
")"
|
|
1586
1644
|
] }),
|
|
1587
|
-
|
|
1645
|
+
domainGroups.length > 0 ? domainGroups.slice(0, 8).map((g) => /* @__PURE__ */ jsxs10(Box11, { children: [
|
|
1646
|
+
/* @__PURE__ */ jsx12(Text12, { color: "gray", children: g.product.padEnd(6) }),
|
|
1647
|
+
/* @__PURE__ */ jsx12(Text12, { children: g.domain.padEnd(20) }),
|
|
1648
|
+
/* @__PURE__ */ jsxs10(Text12, { color: "gray", dimColor: true, children: [
|
|
1649
|
+
g.count,
|
|
1650
|
+
"t"
|
|
1651
|
+
] })
|
|
1652
|
+
] }, `${g.product}-${g.domain}`)) : /* @__PURE__ */ jsxs10(Text12, { color: "gray", dimColor: true, children: [
|
|
1588
1653
|
" ",
|
|
1589
|
-
"No
|
|
1590
|
-
] })
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
|
|
1594
|
-
|
|
1595
|
-
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1599
|
-
|
|
1600
|
-
|
|
1601
|
-
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
|
|
1605
|
-
|
|
1606
|
-
|
|
1607
|
-
|
|
1608
|
-
|
|
1609
|
-
|
|
1610
|
-
|
|
1654
|
+
"No tools registered"
|
|
1655
|
+
] }),
|
|
1656
|
+
toolStats.length > 0 && /* @__PURE__ */ jsxs10(Fragment2, { children: [
|
|
1657
|
+
/* @__PURE__ */ jsx12(Text12, { children: " " }),
|
|
1658
|
+
/* @__PURE__ */ jsxs10(Text12, { bold: true, color: "magenta", children: [
|
|
1659
|
+
" ",
|
|
1660
|
+
"Tool Health"
|
|
1661
|
+
] }),
|
|
1662
|
+
toolStats.sort((a, b) => b.calls - a.calls).slice(0, 6).map((tool) => {
|
|
1663
|
+
const rate = tool.calls > 0 ? Math.round(tool.successes / tool.calls * 100) : 0;
|
|
1664
|
+
const color = rate >= 90 ? "green" : rate >= 70 ? "yellow" : "red";
|
|
1665
|
+
return /* @__PURE__ */ jsxs10(Box11, { children: [
|
|
1666
|
+
/* @__PURE__ */ jsxs10(Text12, { color, children: [
|
|
1667
|
+
rate >= 90 ? "\u25CF" : rate >= 70 ? "\u25D0" : "\u25CB",
|
|
1668
|
+
" "
|
|
1669
|
+
] }),
|
|
1670
|
+
/* @__PURE__ */ jsx12(Text12, { children: tool.name.padEnd(18) }),
|
|
1671
|
+
/* @__PURE__ */ jsxs10(Text12, { color: "gray", children: [
|
|
1672
|
+
String(tool.calls).padStart(3),
|
|
1673
|
+
" "
|
|
1674
|
+
] }),
|
|
1675
|
+
/* @__PURE__ */ jsx12(Gauge, { value: rate, width: 6, showPercent: false })
|
|
1676
|
+
] }, tool.name);
|
|
1677
|
+
})
|
|
1678
|
+
] }),
|
|
1611
1679
|
brData?.waste && brData.waste.total_waste_usd > 0 && /* @__PURE__ */ jsxs10(Fragment2, { children: [
|
|
1612
1680
|
/* @__PURE__ */ jsx12(Text12, { children: " " }),
|
|
1613
1681
|
/* @__PURE__ */ jsxs10(Text12, { bold: true, color: "red", children: [
|
|
1614
1682
|
" ",
|
|
1615
1683
|
"Waste: $",
|
|
1616
|
-
brData.waste
|
|
1617
|
-
] })
|
|
1618
|
-
brData.waste.suggestions.slice(0, 3).map((s, i) => /* @__PURE__ */ jsxs10(Text12, { color: "gray", dimColor: true, children: [
|
|
1619
|
-
" ",
|
|
1620
|
-
s.description.slice(0, 50)
|
|
1621
|
-
] }, i))
|
|
1684
|
+
(brData.waste?.total_waste_usd ?? 0).toFixed(2)
|
|
1685
|
+
] })
|
|
1622
1686
|
] })
|
|
1623
1687
|
]
|
|
1624
1688
|
}
|
|
@@ -1635,22 +1699,22 @@ function DashboardMode({
|
|
|
1635
1699
|
children: [
|
|
1636
1700
|
/* @__PURE__ */ jsxs10(Text12, { bold: true, color: "magenta", children: [
|
|
1637
1701
|
" ",
|
|
1638
|
-
"
|
|
1702
|
+
"Audit Trail"
|
|
1639
1703
|
] }),
|
|
1640
1704
|
!brData || brData.audit.length === 0 ? /* @__PURE__ */ jsxs10(Text12, { color: "gray", dimColor: true, children: [
|
|
1641
1705
|
" ",
|
|
1642
1706
|
"No audit data. Press r to refresh."
|
|
1643
|
-
] }) : brData.audit.slice(0,
|
|
1707
|
+
] }) : brData.audit.filter((e) => e != null).slice(0, 5).map((entry, i) => {
|
|
1644
1708
|
const statusColor2 = entry.guardian_status === "safe" ? "green" : entry.guardian_status === "flagged" ? "yellow" : "red";
|
|
1645
1709
|
return /* @__PURE__ */ jsxs10(Box11, { children: [
|
|
1646
1710
|
/* @__PURE__ */ jsxs10(Text12, { color: statusColor2, children: [
|
|
1647
1711
|
entry.guardian_status === "safe" ? "\u25CF" : "\u26A0",
|
|
1648
1712
|
" "
|
|
1649
1713
|
] }),
|
|
1650
|
-
/* @__PURE__ */ jsx12(Text12, { color: getProviderColor(entry.model), children: entry.model.split("/").pop()?.padEnd(
|
|
1714
|
+
/* @__PURE__ */ jsx12(Text12, { color: getProviderColor(entry.model ?? ""), children: (entry.model ?? "").split("/").pop()?.padEnd(12) ?? "" }),
|
|
1651
1715
|
/* @__PURE__ */ jsxs10(Text12, { color: "gray", children: [
|
|
1652
1716
|
"$",
|
|
1653
|
-
entry.cost_usd.toFixed(4)
|
|
1717
|
+
(entry.cost_usd ?? 0).toFixed(4)
|
|
1654
1718
|
] })
|
|
1655
1719
|
] }, i);
|
|
1656
1720
|
}),
|
|
@@ -1658,31 +1722,37 @@ function DashboardMode({
|
|
|
1658
1722
|
/* @__PURE__ */ jsx12(Text12, { children: " " }),
|
|
1659
1723
|
/* @__PURE__ */ jsxs10(Text12, { bold: true, color: "blue", children: [
|
|
1660
1724
|
" ",
|
|
1661
|
-
"7-Day
|
|
1725
|
+
"7-Day Cost"
|
|
1662
1726
|
] }),
|
|
1663
1727
|
/* @__PURE__ */ jsxs10(Box11, { children: [
|
|
1664
1728
|
/* @__PURE__ */ jsx12(
|
|
1665
1729
|
Sparkline,
|
|
1666
1730
|
{
|
|
1667
|
-
data: brData.dailyTrend.map((d) => d
|
|
1731
|
+
data: brData.dailyTrend.map((d) => d?.cost_usd ?? 0),
|
|
1668
1732
|
color: "yellow",
|
|
1669
|
-
width:
|
|
1733
|
+
width: 18
|
|
1670
1734
|
}
|
|
1671
1735
|
),
|
|
1672
1736
|
/* @__PURE__ */ jsxs10(Text12, { color: "gray", children: [
|
|
1673
1737
|
" ",
|
|
1674
1738
|
"$",
|
|
1675
|
-
brData.dailyTrend.reduce((s, d) => s + d.cost_usd, 0).toFixed(2)
|
|
1676
|
-
" ",
|
|
1677
|
-
"total"
|
|
1739
|
+
brData.dailyTrend.reduce((s, d) => s + d.cost_usd, 0).toFixed(2)
|
|
1678
1740
|
] })
|
|
1679
1741
|
] })
|
|
1742
|
+
] }),
|
|
1743
|
+
brData?.forecast && /* @__PURE__ */ jsxs10(Fragment2, { children: [
|
|
1744
|
+
/* @__PURE__ */ jsx12(Text12, { children: " " }),
|
|
1745
|
+
/* @__PURE__ */ jsxs10(Text12, { bold: true, color: brData.forecast?.will_exceed ? "red" : "green", children: [
|
|
1746
|
+
" ",
|
|
1747
|
+
"Forecast: $",
|
|
1748
|
+
(brData.forecast?.projected_spend ?? 0).toFixed(2)
|
|
1749
|
+
] })
|
|
1680
1750
|
] })
|
|
1681
1751
|
]
|
|
1682
1752
|
}
|
|
1683
1753
|
)
|
|
1684
1754
|
] }),
|
|
1685
|
-
/* @__PURE__ */ jsx12(Box11, { paddingX: 1, children: /* @__PURE__ */ jsx12(Text12, { color: "gray", dimColor: true, children: brData?.loading ? "Loading
|
|
1755
|
+
/* @__PURE__ */ jsx12(Box11, { paddingX: 1, children: /* @__PURE__ */ jsx12(Text12, { color: "gray", dimColor: true, children: brData?.loading ? "Loading..." : brData?.error ? `BR: ${brData.error}` : `r refresh \u2502 Esc chat \u2502 ${gm ? `${gm.connectedSystems.length} products \u2502 ${gm.totalTools} tools` : "godmode off"} \u2502 ${modelCount.local}L/${modelCount.cloud}C` }) })
|
|
1686
1756
|
] });
|
|
1687
1757
|
}
|
|
1688
1758
|
|
|
@@ -2753,7 +2823,8 @@ function App(props) {
|
|
|
2753
2823
|
turnCount,
|
|
2754
2824
|
sessionStart,
|
|
2755
2825
|
brData,
|
|
2756
|
-
onRefreshBR: refreshBR
|
|
2826
|
+
onRefreshBR: refreshBR,
|
|
2827
|
+
godModeInfo: props.godModeInfo
|
|
2757
2828
|
}
|
|
2758
2829
|
),
|
|
2759
2830
|
mode === "models" && /* @__PURE__ */ jsx18(
|
|
@@ -2792,4 +2863,4 @@ function App(props) {
|
|
|
2792
2863
|
export {
|
|
2793
2864
|
App
|
|
2794
2865
|
};
|
|
2795
|
-
//# sourceMappingURL=App-
|
|
2866
|
+
//# sourceMappingURL=App-HGJSYIVS.js.map
|