replicas-cli 0.2.222 → 0.2.224
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/index.mjs +80 -63
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -8933,7 +8933,7 @@ var HOOK_EXEC_MAX_BUFFER_BYTES = 10 * 1024 * 1024;
|
|
|
8933
8933
|
var REPLICAS_CONFIG_FILENAMES = ["replicas.json", "replicas.yaml", "replicas.yml"];
|
|
8934
8934
|
|
|
8935
8935
|
// ../shared/src/cli-version.ts
|
|
8936
|
-
var CLI_VERSION = "0.2.
|
|
8936
|
+
var CLI_VERSION = "0.2.224";
|
|
8937
8937
|
|
|
8938
8938
|
// ../shared/src/engine/environment.ts
|
|
8939
8939
|
var DESKTOP_NOVNC_PORT = 6080;
|
|
@@ -8991,6 +8991,29 @@ var MODEL_LABELS = {
|
|
|
8991
8991
|
"gpt-5-codex": "GPT-5 Codex",
|
|
8992
8992
|
"gpt-5": "GPT-5"
|
|
8993
8993
|
};
|
|
8994
|
+
var CANVAS_KIND_BY_EXTENSION = {
|
|
8995
|
+
".md": { kind: "markdown", mimeType: "text/markdown; charset=utf-8" },
|
|
8996
|
+
".markdown": { kind: "markdown", mimeType: "text/markdown; charset=utf-8" },
|
|
8997
|
+
".html": { kind: "html", mimeType: "text/html; charset=utf-8" },
|
|
8998
|
+
".htm": { kind: "html", mimeType: "text/html; charset=utf-8" },
|
|
8999
|
+
".png": { kind: "image", mimeType: "image/png" },
|
|
9000
|
+
".jpg": { kind: "image", mimeType: "image/jpeg" },
|
|
9001
|
+
".jpeg": { kind: "image", mimeType: "image/jpeg" },
|
|
9002
|
+
".gif": { kind: "image", mimeType: "image/gif" },
|
|
9003
|
+
".webp": { kind: "image", mimeType: "image/webp" },
|
|
9004
|
+
".svg": { kind: "image", mimeType: "image/svg+xml" },
|
|
9005
|
+
".mp4": { kind: "video", mimeType: "video/mp4" },
|
|
9006
|
+
".webm": { kind: "video", mimeType: "video/webm" },
|
|
9007
|
+
".mov": { kind: "video", mimeType: "video/quicktime" },
|
|
9008
|
+
".mp3": { kind: "audio", mimeType: "audio/mpeg" },
|
|
9009
|
+
".wav": { kind: "audio", mimeType: "audio/wav" },
|
|
9010
|
+
".ogg": { kind: "audio", mimeType: "audio/ogg" }
|
|
9011
|
+
};
|
|
9012
|
+
function classifyCanvasFilename(filename) {
|
|
9013
|
+
const idx = filename.lastIndexOf(".");
|
|
9014
|
+
const ext = idx === -1 ? "" : filename.slice(idx).toLowerCase();
|
|
9015
|
+
return CANVAS_KIND_BY_EXTENSION[ext] ?? { kind: "other", mimeType: "application/octet-stream" };
|
|
9016
|
+
}
|
|
8994
9017
|
|
|
8995
9018
|
// ../shared/src/engine/v1.ts
|
|
8996
9019
|
var MERGED_MESSAGE_SEPARATOR = "\n\n<!-- replicas:merged -->\n\n";
|
|
@@ -10347,8 +10370,8 @@ var SOURCE_CONFIG = {
|
|
|
10347
10370
|
github_pr_existing_general: { label: "GitHub PR", color: "#8b949e" },
|
|
10348
10371
|
slack_task: { label: "Slack", color: "#BF6CC2" },
|
|
10349
10372
|
automation_triggered: { label: "Automation", color: "#f59e0b" },
|
|
10350
|
-
plan_quote: { label: "Plan", color: "#
|
|
10351
|
-
inline_diff_comments: { label: "Diff Comments", color: "#
|
|
10373
|
+
plan_quote: { label: "Plan", color: "#3eeba3" },
|
|
10374
|
+
inline_diff_comments: { label: "Diff Comments", color: "#3eeba3" },
|
|
10352
10375
|
merged: { label: "Bundled", color: "#a3a3a3" }
|
|
10353
10376
|
};
|
|
10354
10377
|
|
|
@@ -13000,17 +13023,11 @@ async function previewRemoveCommand(workspaceId, options) {
|
|
|
13000
13023
|
import fs4 from "fs";
|
|
13001
13024
|
import path5 from "path";
|
|
13002
13025
|
var MONOLITH_URL4 = process.env.MONOLITH_URL || process.env.REPLICAS_MONOLITH_URL || "https://api.tryreplicas.com";
|
|
13003
|
-
|
|
13004
|
-
|
|
13005
|
-
|
|
13006
|
-
|
|
13007
|
-
|
|
13008
|
-
svg: { kind: MEDIA_KIND.IMAGE, contentType: "image/svg+xml" },
|
|
13009
|
-
mp4: { kind: MEDIA_KIND.VIDEO, contentType: "video/mp4" },
|
|
13010
|
-
webm: { kind: MEDIA_KIND.VIDEO, contentType: "video/webm" },
|
|
13011
|
-
mp3: { kind: MEDIA_KIND.AUDIO, contentType: "audio/mpeg" },
|
|
13012
|
-
wav: { kind: MEDIA_KIND.AUDIO, contentType: "audio/wav" }
|
|
13013
|
-
};
|
|
13026
|
+
function mediaInfo(ext) {
|
|
13027
|
+
const { kind, mimeType } = classifyCanvasFilename(`.${ext}`);
|
|
13028
|
+
if (kind !== "image" && kind !== "video" && kind !== "audio") return void 0;
|
|
13029
|
+
return { kind, contentType: mimeType };
|
|
13030
|
+
}
|
|
13014
13031
|
function resolveKind(ext, override) {
|
|
13015
13032
|
if (override) {
|
|
13016
13033
|
if (!MEDIA_KINDS.includes(override)) {
|
|
@@ -13018,7 +13035,7 @@ function resolveKind(ext, override) {
|
|
|
13018
13035
|
}
|
|
13019
13036
|
return override;
|
|
13020
13037
|
}
|
|
13021
|
-
const inferred =
|
|
13038
|
+
const inferred = mediaInfo(ext)?.kind;
|
|
13022
13039
|
if (!inferred) {
|
|
13023
13040
|
throw new Error(`Cannot infer kind from extension '.${ext}'. Pass --kind explicitly.`);
|
|
13024
13041
|
}
|
|
@@ -13039,7 +13056,7 @@ async function uploadOne(filePath, options) {
|
|
|
13039
13056
|
const fileName = path5.basename(absPath);
|
|
13040
13057
|
const ext = path5.extname(absPath).slice(1).toLowerCase();
|
|
13041
13058
|
const kind = resolveKind(ext, options.kind);
|
|
13042
|
-
const contentType =
|
|
13059
|
+
const contentType = mediaInfo(ext)?.contentType ?? "application/octet-stream";
|
|
13043
13060
|
const form = new FormData();
|
|
13044
13061
|
form.append("file", new Blob([fs4.readFileSync(absPath)], { type: contentType }), fileName);
|
|
13045
13062
|
form.append("kind", kind);
|
|
@@ -13970,7 +13987,7 @@ function StatusBar({ focusPanel, viewingDiff, hasDiffAvailable }) {
|
|
|
13970
13987
|
justifyContent: "space-between",
|
|
13971
13988
|
width: "100%",
|
|
13972
13989
|
children: [
|
|
13973
|
-
/* @__PURE__ */ jsx("text", { children: /* @__PURE__ */ jsx("span", { fg: "#
|
|
13990
|
+
/* @__PURE__ */ jsx("text", { children: /* @__PURE__ */ jsx("span", { fg: "#3eeba3", children: /* @__PURE__ */ jsx("strong", { children: "Replicas" }) }) }),
|
|
13974
13991
|
/* @__PURE__ */ jsxs("text", { children: [
|
|
13975
13992
|
/* @__PURE__ */ jsxs("span", { fg: "#555555", children: [
|
|
13976
13993
|
hints,
|
|
@@ -14210,7 +14227,7 @@ function WorkspaceSidebar({
|
|
|
14210
14227
|
width: 28,
|
|
14211
14228
|
border: true,
|
|
14212
14229
|
borderStyle: "rounded",
|
|
14213
|
-
borderColor: focused ? "#
|
|
14230
|
+
borderColor: focused ? "#3eeba3" : "#333333",
|
|
14214
14231
|
title: "Workspaces",
|
|
14215
14232
|
titleAlignment: "center",
|
|
14216
14233
|
flexDirection: "column",
|
|
@@ -14249,8 +14266,8 @@ function WorkspaceSidebar({
|
|
|
14249
14266
|
const isSelected = item.workspaceId === selectedWorkspaceId;
|
|
14250
14267
|
const isConfirming = confirmDelete === item.workspaceId;
|
|
14251
14268
|
const dot = item.status === "active" ? "\u25CF" : item.status === "preparing" ? "\u25CC" : "\u25CB";
|
|
14252
|
-
const dotColor = item.status === "active" ? "#
|
|
14253
|
-
const nameColor = isSelected ? "#
|
|
14269
|
+
const dotColor = item.status === "active" ? "#3eeba3" : item.status === "preparing" ? "#ffaa00" : "#666666";
|
|
14270
|
+
const nameColor = isSelected ? "#3eeba3" : "#cccccc";
|
|
14254
14271
|
const itemBg = isConfirming ? "#331111" : isCursor ? "#1a1a1a" : isSelected ? "#0a1a0a" : "#0a0a0a";
|
|
14255
14272
|
if (isConfirming) {
|
|
14256
14273
|
return /* @__PURE__ */ jsxs2("box", { height: 1, backgroundColor: "#331111", paddingX: 1, flexDirection: "row", gap: 1, children: [
|
|
@@ -14258,7 +14275,7 @@ function WorkspaceSidebar({
|
|
|
14258
14275
|
/* @__PURE__ */ jsx2("box", { onMouseDown: () => {
|
|
14259
14276
|
onDeleteWorkspace(item.workspaceId);
|
|
14260
14277
|
setConfirmDelete(null);
|
|
14261
|
-
}, children: /* @__PURE__ */ jsx2("text", { children: /* @__PURE__ */ jsx2("span", { fg: "#
|
|
14278
|
+
}, children: /* @__PURE__ */ jsx2("text", { children: /* @__PURE__ */ jsx2("span", { fg: "#3eeba3", children: "[y]" }) }) }),
|
|
14262
14279
|
/* @__PURE__ */ jsx2("box", { onMouseDown: () => setConfirmDelete(null), children: /* @__PURE__ */ jsx2("text", { children: /* @__PURE__ */ jsx2("span", { fg: "#ff4444", children: "[n]" }) }) })
|
|
14263
14280
|
] }, `w-${item.workspaceId}`);
|
|
14264
14281
|
}
|
|
@@ -14294,7 +14311,7 @@ function WorkspaceSidebar({
|
|
|
14294
14311
|
paddingX: 1,
|
|
14295
14312
|
onMouseDown: () => handleItemClick(globalIndex),
|
|
14296
14313
|
children: /* @__PURE__ */ jsxs2("text", { children: [
|
|
14297
|
-
/* @__PURE__ */ jsx2("span", { fg: isCursor ? "#
|
|
14314
|
+
/* @__PURE__ */ jsx2("span", { fg: isCursor ? "#3eeba3" : "#444444", children: " + " }),
|
|
14298
14315
|
/* @__PURE__ */ jsx2("span", { fg: isCursor ? "#888888" : "#333333", children: "New workspace" })
|
|
14299
14316
|
] })
|
|
14300
14317
|
},
|
|
@@ -14323,11 +14340,11 @@ import { useState as useState5, useMemo as useMemo4 } from "react";
|
|
|
14323
14340
|
import "opentui-spinner/react";
|
|
14324
14341
|
import { createPulse } from "opentui-spinner";
|
|
14325
14342
|
import { jsx as jsx3, jsxs as jsxs3 } from "@opentui/react/jsx-runtime";
|
|
14326
|
-
var thinkingColor = createPulse(["#
|
|
14343
|
+
var thinkingColor = createPulse(["#3eeba3", "#2ca774", "#1c6a49"], 0.5);
|
|
14327
14344
|
function SpinnerLabel({ color, label }) {
|
|
14328
14345
|
return /* @__PURE__ */ jsxs3("box", { flexDirection: "row", gap: 1, children: [
|
|
14329
14346
|
/* @__PURE__ */ jsx3("spinner", { name: "dots", color: color ?? thinkingColor, interval: 80 }),
|
|
14330
|
-
label && /* @__PURE__ */ jsx3("text", { children: /* @__PURE__ */ jsx3("span", { fg: color ?? "#
|
|
14347
|
+
label && /* @__PURE__ */ jsx3("text", { children: /* @__PURE__ */ jsx3("span", { fg: color ?? "#3eeba3", children: label }) })
|
|
14331
14348
|
] });
|
|
14332
14349
|
}
|
|
14333
14350
|
|
|
@@ -14343,14 +14360,14 @@ var sharedSyntaxStyle = null;
|
|
|
14343
14360
|
function getSyntaxStyle() {
|
|
14344
14361
|
if (!sharedSyntaxStyle) {
|
|
14345
14362
|
sharedSyntaxStyle = SyntaxStyle.fromTheme([
|
|
14346
|
-
{ scope: ["markup.heading", "markup.heading.1", "markup.heading.2", "markup.heading.3"], style: { foreground: "#
|
|
14363
|
+
{ scope: ["markup.heading", "markup.heading.1", "markup.heading.2", "markup.heading.3"], style: { foreground: "#3eeba3", bold: true } },
|
|
14347
14364
|
{ scope: ["markup.bold", "markup.strong"], style: { foreground: "#ffffff", bold: true } },
|
|
14348
14365
|
{ scope: ["markup.italic", "markup.emphasis"], style: { foreground: "#e0e0e0", italic: true } },
|
|
14349
14366
|
{ scope: ["markup.link"], style: { foreground: "#7dcfff", underline: true } },
|
|
14350
14367
|
{ scope: ["markup.link.url"], style: { foreground: "#7dcfff", underline: true } },
|
|
14351
|
-
{ scope: ["markup.link.text"], style: { foreground: "#
|
|
14352
|
-
{ scope: ["markup.link.label"], style: { foreground: "#
|
|
14353
|
-
{ scope: ["markup.list"], style: { foreground: "#
|
|
14368
|
+
{ scope: ["markup.link.text"], style: { foreground: "#3eeba3", underline: true } },
|
|
14369
|
+
{ scope: ["markup.link.label"], style: { foreground: "#3eeba3", underline: true } },
|
|
14370
|
+
{ scope: ["markup.list"], style: { foreground: "#3eeba3" } },
|
|
14354
14371
|
{ scope: ["markup.quote"], style: { foreground: "#888888", italic: true } },
|
|
14355
14372
|
{ scope: ["markup.raw", "markup.raw.block"], style: { foreground: "#bb9af7" } },
|
|
14356
14373
|
{ scope: ["markup.raw.inline"], style: { foreground: "#bb9af7", background: "#1a1a2e" } },
|
|
@@ -14456,7 +14473,7 @@ function diffProps(filePath) {
|
|
|
14456
14473
|
addedBg: "#0d2b0d",
|
|
14457
14474
|
removedBg: "#2b0d0d",
|
|
14458
14475
|
contextBg: "#0a0a0a",
|
|
14459
|
-
addedSignColor: "#
|
|
14476
|
+
addedSignColor: "#3eeba3",
|
|
14460
14477
|
removedSignColor: "#ff4444",
|
|
14461
14478
|
lineNumberFg: "#555555",
|
|
14462
14479
|
lineNumberBg: "#0a0a0a",
|
|
@@ -14706,8 +14723,8 @@ function DiffViewer({ diff, repoName, focused }) {
|
|
|
14706
14723
|
flexShrink: 0,
|
|
14707
14724
|
children: [
|
|
14708
14725
|
/* @__PURE__ */ jsx4("box", { paddingX: 1, flexShrink: 0, height: 1, children: /* @__PURE__ */ jsxs4("text", { children: [
|
|
14709
|
-
/* @__PURE__ */ jsx4("span", { fg: filesPaneActive ? "#
|
|
14710
|
-
/* @__PURE__ */ jsx4("span", { fg: filesPaneActive ? "#
|
|
14726
|
+
/* @__PURE__ */ jsx4("span", { fg: filesPaneActive ? "#3eeba3" : "#333333", children: filesPaneActive ? "\u25B8 " : " " }),
|
|
14727
|
+
/* @__PURE__ */ jsx4("span", { fg: filesPaneActive ? "#3eeba3" : "#888888", children: filesPaneActive ? /* @__PURE__ */ jsxs4("strong", { children: [
|
|
14711
14728
|
files.length,
|
|
14712
14729
|
" ",
|
|
14713
14730
|
files.length === 1 ? "file" : "files",
|
|
@@ -14752,7 +14769,7 @@ function DiffViewer({ diff, repoName, focused }) {
|
|
|
14752
14769
|
const removed = node.removed ?? 0;
|
|
14753
14770
|
const addedPart = added > 0 ? `+${added}` : "";
|
|
14754
14771
|
const removedPart = removed > 0 ? `-${removed}` : "";
|
|
14755
|
-
const bubbleColor = added > 0 && removed > 0 ? "#ffaa00" : removed > 0 ? "#ff4444" : "#
|
|
14772
|
+
const bubbleColor = added > 0 && removed > 0 ? "#ffaa00" : removed > 0 ? "#ff4444" : "#3eeba3";
|
|
14756
14773
|
const overhead = indent.length + 2 + statsColumnWidth + 1;
|
|
14757
14774
|
const nameMax = Math.max(1, usable - overhead);
|
|
14758
14775
|
const displayName = truncateName(node.name, nameMax);
|
|
@@ -14774,10 +14791,10 @@ function DiffViewer({ diff, repoName, focused }) {
|
|
|
14774
14791
|
"\u25CF",
|
|
14775
14792
|
" "
|
|
14776
14793
|
] }),
|
|
14777
|
-
/* @__PURE__ */ jsx4("span", { fg: isSelectedFile || isCursor ? "#
|
|
14794
|
+
/* @__PURE__ */ jsx4("span", { fg: isSelectedFile || isCursor ? "#3eeba3" : "#cccccc", children: displayName })
|
|
14778
14795
|
] }),
|
|
14779
14796
|
/* @__PURE__ */ jsx4("box", { width: statsColumnWidth, flexShrink: 0, justifyContent: "flex-end", flexDirection: "row", children: /* @__PURE__ */ jsxs4("text", { children: [
|
|
14780
|
-
addedPart && /* @__PURE__ */ jsx4("span", { fg: "#
|
|
14797
|
+
addedPart && /* @__PURE__ */ jsx4("span", { fg: "#3eeba3", children: addedPart }),
|
|
14781
14798
|
addedPart && removedPart && /* @__PURE__ */ jsx4("span", { fg: "#444444", children: " " }),
|
|
14782
14799
|
removedPart && /* @__PURE__ */ jsx4("span", { fg: "#ff4444", children: removedPart })
|
|
14783
14800
|
] }) })
|
|
@@ -14794,7 +14811,7 @@ function DiffViewer({ diff, repoName, focused }) {
|
|
|
14794
14811
|
/* @__PURE__ */ jsxs4("box", { flexDirection: "row", justifyContent: "space-between", height: 1, children: [
|
|
14795
14812
|
/* @__PURE__ */ jsxs4("text", { children: [
|
|
14796
14813
|
/* @__PURE__ */ jsx4("span", { fg: "#ffffff", children: /* @__PURE__ */ jsx4("strong", { children: repoName }) }),
|
|
14797
|
-
totalAdded > 0 && /* @__PURE__ */ jsxs4("span", { fg: "#
|
|
14814
|
+
totalAdded > 0 && /* @__PURE__ */ jsxs4("span", { fg: "#3eeba3", children: [
|
|
14798
14815
|
" +",
|
|
14799
14816
|
totalAdded
|
|
14800
14817
|
] }),
|
|
@@ -14811,14 +14828,14 @@ function DiffViewer({ diff, repoName, focused }) {
|
|
|
14811
14828
|
] })
|
|
14812
14829
|
] }),
|
|
14813
14830
|
/* @__PURE__ */ jsx4("box", { flexDirection: "row", height: 1, backgroundColor: "#0d0d0d", paddingX: 1, children: /* @__PURE__ */ jsxs4("text", { children: [
|
|
14814
|
-
/* @__PURE__ */ jsx4("span", { fg: diffPaneActive ? "#
|
|
14831
|
+
/* @__PURE__ */ jsx4("span", { fg: diffPaneActive ? "#3eeba3" : "#444444", children: diffPaneActive ? "\u25B8 " : " " }),
|
|
14815
14832
|
(() => {
|
|
14816
14833
|
const lastSlash = selected.path.lastIndexOf("/");
|
|
14817
14834
|
const dir = lastSlash >= 0 ? selected.path.slice(0, lastSlash + 1) : "";
|
|
14818
14835
|
const base = lastSlash >= 0 ? selected.path.slice(lastSlash + 1) : selected.path;
|
|
14819
14836
|
return /* @__PURE__ */ jsxs4(Fragment, { children: [
|
|
14820
14837
|
dir && /* @__PURE__ */ jsx4("span", { fg: "#666666", children: dir }),
|
|
14821
|
-
/* @__PURE__ */ jsx4("span", { fg: diffPaneActive ? "#
|
|
14838
|
+
/* @__PURE__ */ jsx4("span", { fg: diffPaneActive ? "#3eeba3" : "#ffffff", children: /* @__PURE__ */ jsx4("strong", { children: base }) })
|
|
14822
14839
|
] });
|
|
14823
14840
|
})()
|
|
14824
14841
|
] }) })
|
|
@@ -15049,7 +15066,7 @@ function truncate4(text, maxLen) {
|
|
|
15049
15066
|
return text.length > maxLen ? text.slice(0, maxLen - 1) + "\u2026" : text;
|
|
15050
15067
|
}
|
|
15051
15068
|
function StatusIcon({ status }) {
|
|
15052
|
-
if (status === "completed") return /* @__PURE__ */ jsxs6("span", { fg: "#
|
|
15069
|
+
if (status === "completed") return /* @__PURE__ */ jsxs6("span", { fg: "#3eeba3", children: [
|
|
15053
15070
|
" ",
|
|
15054
15071
|
"\u2713"
|
|
15055
15072
|
] });
|
|
@@ -15115,7 +15132,7 @@ function ExpandableAction({
|
|
|
15115
15132
|
] });
|
|
15116
15133
|
}
|
|
15117
15134
|
var CHANGE_STYLE = {
|
|
15118
|
-
add: { color: "#
|
|
15135
|
+
add: { color: "#3eeba3", sign: "+" },
|
|
15119
15136
|
delete: { color: "#ff4444", sign: "-" }
|
|
15120
15137
|
};
|
|
15121
15138
|
var DEFAULT_CHANGE_STYLE = { color: "#ffaa00", sign: "~" };
|
|
@@ -15150,7 +15167,7 @@ function PatchOperation({ op, defaultExpanded = false }) {
|
|
|
15150
15167
|
stats.removed
|
|
15151
15168
|
] }),
|
|
15152
15169
|
stats.removed > 0 && stats.added > 0 && /* @__PURE__ */ jsx6("span", { fg: "#444444", children: " " }),
|
|
15153
|
-
stats.added > 0 && /* @__PURE__ */ jsxs6("span", { fg: "#
|
|
15170
|
+
stats.added > 0 && /* @__PURE__ */ jsxs6("span", { fg: "#3eeba3", children: [
|
|
15154
15171
|
"+",
|
|
15155
15172
|
stats.added
|
|
15156
15173
|
] })
|
|
@@ -15175,7 +15192,7 @@ function UserMessageContent({ content }) {
|
|
|
15175
15192
|
paddingY: 1,
|
|
15176
15193
|
marginX: 1,
|
|
15177
15194
|
children: isStructuredPrompt(parsed) ? /* @__PURE__ */ jsx6(StructuredUserMessage, { parsed }) : /* @__PURE__ */ jsxs6(Fragment3, { children: [
|
|
15178
|
-
/* @__PURE__ */ jsx6("text", { children: /* @__PURE__ */ jsx6("span", { fg: "#
|
|
15195
|
+
/* @__PURE__ */ jsx6("text", { children: /* @__PURE__ */ jsx6("span", { fg: "#3eeba3", children: /* @__PURE__ */ jsx6("strong", { children: "You" }) }) }),
|
|
15179
15196
|
/* @__PURE__ */ jsx6("text", { fg: "#ffffff", selectable: true, children: content })
|
|
15180
15197
|
] })
|
|
15181
15198
|
}
|
|
@@ -15191,7 +15208,7 @@ function ChatMessage({ message, provider }) {
|
|
|
15191
15208
|
}
|
|
15192
15209
|
case "agent":
|
|
15193
15210
|
return /* @__PURE__ */ jsxs6("box", { flexDirection: "column", paddingX: 1, children: [
|
|
15194
|
-
/* @__PURE__ */ jsx6("text", { children: /* @__PURE__ */ jsx6("span", { fg: "#
|
|
15211
|
+
/* @__PURE__ */ jsx6("text", { children: /* @__PURE__ */ jsx6("span", { fg: "#3eeba3", children: /* @__PURE__ */ jsx6("strong", { children: AGENT_LABELS[provider] }) }) }),
|
|
15195
15212
|
/* @__PURE__ */ jsx6(
|
|
15196
15213
|
"markdown",
|
|
15197
15214
|
{
|
|
@@ -15251,7 +15268,7 @@ function ChatMessage({ message, provider }) {
|
|
|
15251
15268
|
")"
|
|
15252
15269
|
] }) }) }),
|
|
15253
15270
|
message.items.map((item, i) => /* @__PURE__ */ jsxs6("text", { children: [
|
|
15254
|
-
/* @__PURE__ */ jsx6("span", { fg: item.completed ? "#
|
|
15271
|
+
/* @__PURE__ */ jsx6("span", { fg: item.completed ? "#3eeba3" : "#555555", children: item.completed ? " \u2611" : " \u2610" }),
|
|
15255
15272
|
/* @__PURE__ */ jsxs6("span", { fg: "#ffffff", children: [
|
|
15256
15273
|
" ",
|
|
15257
15274
|
item.text
|
|
@@ -15284,7 +15301,7 @@ var textareaKeyBindings = [
|
|
|
15284
15301
|
{ name: "return", meta: true, action: "newline" }
|
|
15285
15302
|
];
|
|
15286
15303
|
var MODE_COLORS = {
|
|
15287
|
-
build: { border: "#
|
|
15304
|
+
build: { border: "#3eeba3", text: "#3eeba3" },
|
|
15288
15305
|
plan: { border: "#d97706", text: "#d97706" }
|
|
15289
15306
|
};
|
|
15290
15307
|
function ChatArea({
|
|
@@ -15362,7 +15379,7 @@ function ChatArea({
|
|
|
15362
15379
|
flexGrow: 1,
|
|
15363
15380
|
border: true,
|
|
15364
15381
|
borderStyle: "rounded",
|
|
15365
|
-
borderColor: anyFocused ? "#
|
|
15382
|
+
borderColor: anyFocused ? "#3eeba3" : "#333333",
|
|
15366
15383
|
title: "Chat",
|
|
15367
15384
|
titleAlignment: "center",
|
|
15368
15385
|
flexDirection: "column",
|
|
@@ -15375,7 +15392,7 @@ function ChatArea({
|
|
|
15375
15392
|
paddingX: 1,
|
|
15376
15393
|
marginX: 1,
|
|
15377
15394
|
border: true,
|
|
15378
|
-
borderColor: tabsFocused ? "#
|
|
15395
|
+
borderColor: tabsFocused ? "#3eeba3" : "#333333",
|
|
15379
15396
|
backgroundColor: "#000000",
|
|
15380
15397
|
flexDirection: "row",
|
|
15381
15398
|
gap: 1,
|
|
@@ -15575,7 +15592,7 @@ var AUTH_METHOD_LABELS = {
|
|
|
15575
15592
|
};
|
|
15576
15593
|
function StatusDot({ status }) {
|
|
15577
15594
|
if (status === true || status === "yes") {
|
|
15578
|
-
return /* @__PURE__ */ jsx8("span", { fg: "#
|
|
15595
|
+
return /* @__PURE__ */ jsx8("span", { fg: "#3eeba3", children: "\u2713" });
|
|
15579
15596
|
}
|
|
15580
15597
|
if (status === false || status === "no") {
|
|
15581
15598
|
return /* @__PURE__ */ jsx8("span", { fg: "#ff4444", children: "\u2717" });
|
|
@@ -15628,7 +15645,7 @@ function InteractiveRow({ id, label, highlighted, disabled, onClick }) {
|
|
|
15628
15645
|
paddingX: 1,
|
|
15629
15646
|
backgroundColor: highlighted ? "#1a2a1a" : "#111111",
|
|
15630
15647
|
onMouseDown: onClick,
|
|
15631
|
-
children: /* @__PURE__ */ jsx8("text", { children: /* @__PURE__ */ jsx8("span", { fg: highlighted ? "#
|
|
15648
|
+
children: /* @__PURE__ */ jsx8("text", { children: /* @__PURE__ */ jsx8("span", { fg: highlighted ? "#3eeba3" : "#7dcfff", children: label }) })
|
|
15632
15649
|
}
|
|
15633
15650
|
);
|
|
15634
15651
|
}
|
|
@@ -15641,7 +15658,7 @@ function ViewModeRow({
|
|
|
15641
15658
|
onClick
|
|
15642
15659
|
}) {
|
|
15643
15660
|
const bg = highlighted ? "#1a2a1a" : "#111111";
|
|
15644
|
-
const fg = disabled ? "#444444" : active ? "#
|
|
15661
|
+
const fg = disabled ? "#444444" : active ? "#3eeba3" : "#cccccc";
|
|
15645
15662
|
const marker = active ? "\u25B8" : " ";
|
|
15646
15663
|
return /* @__PURE__ */ jsx8(
|
|
15647
15664
|
"box",
|
|
@@ -15651,7 +15668,7 @@ function ViewModeRow({
|
|
|
15651
15668
|
backgroundColor: bg,
|
|
15652
15669
|
onMouseDown: disabled ? void 0 : onClick,
|
|
15653
15670
|
children: /* @__PURE__ */ jsxs8("text", { children: [
|
|
15654
|
-
/* @__PURE__ */ jsxs8("span", { fg: active ? "#
|
|
15671
|
+
/* @__PURE__ */ jsxs8("span", { fg: active ? "#3eeba3" : "#555555", children: [
|
|
15655
15672
|
marker,
|
|
15656
15673
|
" "
|
|
15657
15674
|
] }),
|
|
@@ -15661,7 +15678,7 @@ function ViewModeRow({
|
|
|
15661
15678
|
);
|
|
15662
15679
|
}
|
|
15663
15680
|
function WorkspaceInfo({ status, workspaceName, workspaceId, focused, loading, agentAvailability, previews, onWakeWorkspace, onViewDiff, wakingWorkspaceId, viewMode, viewingDiffRepoName, onSelectChatMode, onSelectDiffMode, onCreatePr, isPlanMode }) {
|
|
15664
|
-
const borderColor = focused ? "#
|
|
15681
|
+
const borderColor = focused ? "#3eeba3" : "#333333";
|
|
15665
15682
|
const [cursorIndex, setCursorIndex] = useState6(0);
|
|
15666
15683
|
const interactiveItems = useMemo5(() => {
|
|
15667
15684
|
if (!status || !workspaceName) return [];
|
|
@@ -15808,7 +15825,7 @@ function WorkspaceInfo({ status, workspaceName, workspaceId, focused, loading, a
|
|
|
15808
15825
|
}
|
|
15809
15826
|
);
|
|
15810
15827
|
}
|
|
15811
|
-
const statusColor = status.status === "active" ? "#
|
|
15828
|
+
const statusColor = status.status === "active" ? "#3eeba3" : status.status === "sleeping" ? "#ffaa00" : "#ff4444";
|
|
15812
15829
|
const rawEnv = status.environmentDetails;
|
|
15813
15830
|
const env = rawEnv && agentAvailability ? {
|
|
15814
15831
|
...rawEnv,
|
|
@@ -15891,11 +15908,11 @@ function WorkspaceInfo({ status, workspaceName, workspaceId, focused, loading, a
|
|
|
15891
15908
|
env && /* @__PURE__ */ jsxs8(Section, { title: "Agents", children: [
|
|
15892
15909
|
/* @__PURE__ */ jsxs8("box", { flexDirection: "row", justifyContent: "space-between", paddingX: 1, backgroundColor: "#111111", children: [
|
|
15893
15910
|
/* @__PURE__ */ jsx8("text", { children: /* @__PURE__ */ jsx8("span", { fg: "#cccccc", children: "Claude" }) }),
|
|
15894
|
-
/* @__PURE__ */ jsx8("text", { children: AUTH_METHOD_LABELS[env.claudeAuthMethod] ? /* @__PURE__ */ jsx8("span", { fg: "#
|
|
15911
|
+
/* @__PURE__ */ jsx8("text", { children: AUTH_METHOD_LABELS[env.claudeAuthMethod] ? /* @__PURE__ */ jsx8("span", { fg: "#3eeba3", children: AUTH_METHOD_LABELS[env.claudeAuthMethod] }) : /* @__PURE__ */ jsx8("span", { fg: "#ff4444", children: "\u2717" }) })
|
|
15895
15912
|
] }),
|
|
15896
15913
|
/* @__PURE__ */ jsxs8("box", { flexDirection: "row", justifyContent: "space-between", paddingX: 1, backgroundColor: "#111111", children: [
|
|
15897
15914
|
/* @__PURE__ */ jsx8("text", { children: /* @__PURE__ */ jsx8("span", { fg: "#cccccc", children: "Codex" }) }),
|
|
15898
|
-
/* @__PURE__ */ jsx8("text", { children: AUTH_METHOD_LABELS[env.codexAuthMethod] ? /* @__PURE__ */ jsx8("span", { fg: "#
|
|
15915
|
+
/* @__PURE__ */ jsx8("text", { children: AUTH_METHOD_LABELS[env.codexAuthMethod] ? /* @__PURE__ */ jsx8("span", { fg: "#3eeba3", children: AUTH_METHOD_LABELS[env.codexAuthMethod] }) : /* @__PURE__ */ jsx8("span", { fg: "#ff4444", children: "\u2717" }) })
|
|
15899
15916
|
] })
|
|
15900
15917
|
] }),
|
|
15901
15918
|
/* @__PURE__ */ jsx8(Section, { title: "View", children: (() => {
|
|
@@ -15927,7 +15944,7 @@ function WorkspaceInfo({ status, workspaceName, workspaceId, focused, loading, a
|
|
|
15927
15944
|
const isActive = viewMode === "diff" && viewingDiffRepoName === item.repoName;
|
|
15928
15945
|
const cursorOn = isHighlighted(item);
|
|
15929
15946
|
const bg = cursorOn ? "#1a2a1a" : isActive ? "#0d2b0d" : "#111111";
|
|
15930
|
-
const nameColor = isActive || cursorOn ? "#
|
|
15947
|
+
const nameColor = isActive || cursorOn ? "#3eeba3" : "#cccccc";
|
|
15931
15948
|
return /* @__PURE__ */ jsxs8(
|
|
15932
15949
|
"box",
|
|
15933
15950
|
{
|
|
@@ -15939,11 +15956,11 @@ function WorkspaceInfo({ status, workspaceName, workspaceId, focused, loading, a
|
|
|
15939
15956
|
justifyContent: "space-between",
|
|
15940
15957
|
children: [
|
|
15941
15958
|
/* @__PURE__ */ jsxs8("text", { children: [
|
|
15942
|
-
/* @__PURE__ */ jsx8("span", { fg: isActive ? "#
|
|
15959
|
+
/* @__PURE__ */ jsx8("span", { fg: isActive ? "#3eeba3" : "#555555", children: isActive ? " \u25B8 " : " \u2514 " }),
|
|
15943
15960
|
isActive ? /* @__PURE__ */ jsx8("span", { fg: nameColor, children: /* @__PURE__ */ jsx8("strong", { children: item.repoName }) }) : /* @__PURE__ */ jsx8("span", { fg: nameColor, children: item.repoName })
|
|
15944
15961
|
] }),
|
|
15945
15962
|
/* @__PURE__ */ jsxs8("text", { children: [
|
|
15946
|
-
item.added > 0 && /* @__PURE__ */ jsxs8("span", { fg: "#
|
|
15963
|
+
item.added > 0 && /* @__PURE__ */ jsxs8("span", { fg: "#3eeba3", children: [
|
|
15947
15964
|
"+",
|
|
15948
15965
|
item.added
|
|
15949
15966
|
] }),
|
|
@@ -15982,7 +15999,7 @@ function WorkspaceInfo({ status, workspaceName, workspaceId, focused, loading, a
|
|
|
15982
15999
|
":",
|
|
15983
16000
|
preview2.port
|
|
15984
16001
|
] }) }),
|
|
15985
|
-
/* @__PURE__ */ jsx8("text", { children: /* @__PURE__ */ jsx8("span", { fg: previewItem && isHighlighted(previewItem) ? "#
|
|
16002
|
+
/* @__PURE__ */ jsx8("text", { children: /* @__PURE__ */ jsx8("span", { fg: previewItem && isHighlighted(previewItem) ? "#3eeba3" : "#7dcfff", children: "\u2197" }) })
|
|
15986
16003
|
]
|
|
15987
16004
|
},
|
|
15988
16005
|
i
|
|
@@ -15999,7 +16016,7 @@ function WorkspaceInfo({ status, workspaceName, workspaceId, focused, loading, a
|
|
|
15999
16016
|
"\u2514",
|
|
16000
16017
|
" "
|
|
16001
16018
|
] }),
|
|
16002
|
-
/* @__PURE__ */ jsx8("span", { fg: repo.currentBranch !== repo.defaultBranch ? "#ffaa00" : "#
|
|
16019
|
+
/* @__PURE__ */ jsx8("span", { fg: repo.currentBranch !== repo.defaultBranch ? "#ffaa00" : "#3eeba3", children: repo.currentBranch })
|
|
16003
16020
|
] }) }),
|
|
16004
16021
|
prItems.map((prItem) => /* @__PURE__ */ jsx8(
|
|
16005
16022
|
InteractiveRow,
|
|
@@ -16080,8 +16097,8 @@ function ToastProvider({ children }) {
|
|
|
16080
16097
|
// src/interactive/components/Toast.tsx
|
|
16081
16098
|
import { jsx as jsx10 } from "@opentui/react/jsx-runtime";
|
|
16082
16099
|
var VARIANT_COLORS = {
|
|
16083
|
-
info: { border: "#
|
|
16084
|
-
success: { border: "#
|
|
16100
|
+
info: { border: "#3eeba3", bg: "#0a1f17" },
|
|
16101
|
+
success: { border: "#3eeba3", bg: "#0a1f17" },
|
|
16085
16102
|
warning: { border: "#ffaa00", bg: "#1a1a0a" },
|
|
16086
16103
|
error: { border: "#ff4444", bg: "#1a0a0a" }
|
|
16087
16104
|
};
|
|
@@ -16449,7 +16466,7 @@ function AppInner() {
|
|
|
16449
16466
|
flexGrow: 1,
|
|
16450
16467
|
border: true,
|
|
16451
16468
|
borderStyle: "rounded",
|
|
16452
|
-
borderColor: focusPanel !== "sidebar" && focusPanel !== "info" ? "#
|
|
16469
|
+
borderColor: focusPanel !== "sidebar" && focusPanel !== "info" ? "#3eeba3" : "#333333",
|
|
16453
16470
|
backgroundColor: "#000000",
|
|
16454
16471
|
flexDirection: "column",
|
|
16455
16472
|
title: "Diff",
|
|
@@ -16491,7 +16508,7 @@ function AppInner() {
|
|
|
16491
16508
|
] }),
|
|
16492
16509
|
/* @__PURE__ */ jsxs9("text", { fg: "#555555", children: [
|
|
16493
16510
|
"Press ",
|
|
16494
|
-
/* @__PURE__ */ jsx11("span", { fg: "#
|
|
16511
|
+
/* @__PURE__ */ jsx11("span", { fg: "#3eeba3", children: /* @__PURE__ */ jsx11("strong", { children: "w" }) }),
|
|
16495
16512
|
" to wake it up"
|
|
16496
16513
|
] })
|
|
16497
16514
|
]
|