omnius 1.0.683 → 1.0.684
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.js +44 -14
- package/docs/guides/tui-workflows.md +2 -2
- package/npm-shrinkwrap.json +5 -5
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -724851,26 +724851,33 @@ var init_dist9 = __esm({
|
|
|
724851
724851
|
function enabled2(value2) {
|
|
724852
724852
|
return /^(?:1|true|yes|on)$/i.test(value2?.trim() ?? "");
|
|
724853
724853
|
}
|
|
724854
|
-
function hasNoColor(env2) {
|
|
724855
|
-
return env2["NO_COLOR"] !== void 0 && env2["NO_COLOR"] !== "";
|
|
724856
|
-
}
|
|
724857
724854
|
function isLimitedTerminal(env2) {
|
|
724858
724855
|
const term = (env2["TERM"] ?? "").trim().toLowerCase();
|
|
724859
724856
|
return /^(?:dumb|linux|cons25|vt100|ansi|unknown)$/.test(term);
|
|
724860
724857
|
}
|
|
724861
|
-
function
|
|
724862
|
-
|
|
724858
|
+
function requestsCompatibleChrome(env2) {
|
|
724859
|
+
const profile = (env2["OMNIUS_TUI_PROFILE"] ?? "").trim().toLowerCase();
|
|
724860
|
+
const client = (env2["OMNIUS_TUI_CLIENT_PLATFORM"] ?? "").trim().toLowerCase();
|
|
724861
|
+
return profile === "compatible" || profile === "static" || enabled2(env2["OMNIUS_TUI_STATIC_CHROME"]) || client === "darwin" || client === "macos" || client === "win32" || client === "windows";
|
|
724863
724862
|
}
|
|
724864
724863
|
function prefersStaticTuiChrome(options2 = {}) {
|
|
724865
724864
|
const platform13 = options2.platform ?? process.platform;
|
|
724866
724865
|
const env2 = options2.env ?? process.env;
|
|
724867
724866
|
if (platform13 === "darwin" || platform13 === "win32") return true;
|
|
724868
|
-
if (
|
|
724867
|
+
if (requestsCompatibleChrome(env2)) return true;
|
|
724869
724868
|
if (enabled2(env2["OMNIUS_TUI_ANIMATED_CHROME"])) return false;
|
|
724870
|
-
if (
|
|
724871
|
-
if (hasNoColor(env2) || isLimitedTerminal(env2)) return true;
|
|
724869
|
+
if (isLimitedTerminal(env2)) return true;
|
|
724872
724870
|
return false;
|
|
724873
724871
|
}
|
|
724872
|
+
function supportsOrnamentalTuiButtonEdges(options2 = {}) {
|
|
724873
|
+
const platform13 = options2.platform ?? process.platform;
|
|
724874
|
+
const env2 = options2.env ?? process.env;
|
|
724875
|
+
if (platform13 === "darwin" || platform13 === "win32") return false;
|
|
724876
|
+
if (requestsCompatibleChrome(env2) || isLimitedTerminal(env2)) return false;
|
|
724877
|
+
const locale = (env2["LC_ALL"] || env2["LC_CTYPE"] || env2["LANG"] || "").trim();
|
|
724878
|
+
if (locale && !/utf-?8/i.test(locale)) return false;
|
|
724879
|
+
return true;
|
|
724880
|
+
}
|
|
724874
724881
|
var init_terminal_capabilities = __esm({
|
|
724875
724882
|
"packages/cli/src/tui/terminal-capabilities.ts"() {
|
|
724876
724883
|
}
|
|
@@ -727991,6 +727998,10 @@ __export(status_bar_exports, {
|
|
|
727991
727998
|
});
|
|
727992
727999
|
import { basename as basename35, dirname as dirname63 } from "node:path";
|
|
727993
728000
|
import { readFile as readFileAsync } from "node:fs/promises";
|
|
728001
|
+
function headerButtonGlyphFg() {
|
|
728002
|
+
const a2 = tuiAccent();
|
|
728003
|
+
return a2 < 0 ? "\x1B[39m" : `\x1B[38;5;${a2}m`;
|
|
728004
|
+
}
|
|
727994
728005
|
function headerButtonBg() {
|
|
727995
728006
|
const a2 = tuiAccent();
|
|
727996
728007
|
return a2 < 0 ? "\x1B[7m" : `\x1B[48;5;${a2}m`;
|
|
@@ -728062,6 +728073,7 @@ function refreshThemeVars() {
|
|
|
728062
728073
|
BOX_FG = tuiBoxFg();
|
|
728063
728074
|
TEXT_PRIMARY = tuiTextPrimary() < 0 ? 252 : tuiTextPrimary();
|
|
728064
728075
|
TEXT_DIM = tuiTextDim();
|
|
728076
|
+
HEADER_BUTTON_GLYPH_FG = headerButtonGlyphFg();
|
|
728065
728077
|
HEADER_BUTTON_BG = headerButtonBg();
|
|
728066
728078
|
HEADER_BUTTON_FG = headerButtonFg();
|
|
728067
728079
|
HEADER_ACCENT_BOLD_FG = headerAccentBoldFg();
|
|
@@ -728100,7 +728112,7 @@ function setTerminalTitle(task, version5) {
|
|
|
728100
728112
|
process.stdout.write(data);
|
|
728101
728113
|
}
|
|
728102
728114
|
}
|
|
728103
|
-
var EXPERT_TOOL_BASELINES, CONTEXT_SWITCH_OVERHEAD, TURN_PLANNING_OVERHEAD, DEFAULT_TOOL_BASELINE, CODE_READ_CHARS_PER_SEC, PROSE_READ_CHARS_PER_SEC, MIN_CONTENT_FOR_READING, CODE_CONTENT_TOOLS, PROSE_CONTENT_TOOLS, HumanSpeedTracker, PANEL_BG_SEQ, CONTENT_BG_SEQ, BOX_FG, TEXT_PRIMARY, TEXT_DIM, NO_SUB_AGENTS_HEADER_LABEL, HEADER_BUTTON_BG, HEADER_BUTTON_FG, HEADER_ACCENT_BOLD_FG, HEADER_TELEGRAM_FG, BOX_TL3, BOX_TR3, BOX_BL3, BOX_BR3, BOX_H3, BOX_V3, BOX_BJ, BOX_TJ, ENHANCE_SEG_INNER, ENHANCE_SPIN_FRAMES, _globalFooterLock, RESET4, CURSOR_BLINK_BLOCK, HEADER_BUTTON_LEFT, HEADER_BUTTON_RIGHT, SPONSOR_HEADER_LABEL_MAX, _termTitleWriter, StatusBar;
|
|
728115
|
+
var EXPERT_TOOL_BASELINES, CONTEXT_SWITCH_OVERHEAD, TURN_PLANNING_OVERHEAD, DEFAULT_TOOL_BASELINE, CODE_READ_CHARS_PER_SEC, PROSE_READ_CHARS_PER_SEC, MIN_CONTENT_FOR_READING, CODE_CONTENT_TOOLS, PROSE_CONTENT_TOOLS, HumanSpeedTracker, PANEL_BG_SEQ, CONTENT_BG_SEQ, BOX_FG, TEXT_PRIMARY, TEXT_DIM, NO_SUB_AGENTS_HEADER_LABEL, HEADER_BUTTON_GLYPH_FG, HEADER_BUTTON_BG, HEADER_BUTTON_FG, HEADER_ACCENT_BOLD_FG, HEADER_TELEGRAM_FG, BOX_TL3, BOX_TR3, BOX_BL3, BOX_BR3, BOX_H3, BOX_V3, BOX_BJ, BOX_TJ, ENHANCE_SEG_INNER, ENHANCE_SPIN_FRAMES, _globalFooterLock, RESET4, CURSOR_BLINK_BLOCK, HEADER_BUTTON_LEFT, HEADER_BUTTON_RIGHT, HEADER_BUTTON_SQUARE_PAD, SPONSOR_HEADER_LABEL_MAX, _termTitleWriter, StatusBar;
|
|
728104
728116
|
var init_status_bar = __esm({
|
|
728105
728117
|
"packages/cli/src/tui/status-bar.ts"() {
|
|
728106
728118
|
init_render();
|
|
@@ -728115,6 +728127,7 @@ var init_status_bar = __esm({
|
|
|
728115
728127
|
init_text_selection();
|
|
728116
728128
|
init_overlay_lock();
|
|
728117
728129
|
init_dist5();
|
|
728130
|
+
init_terminal_capabilities();
|
|
728118
728131
|
init_theme();
|
|
728119
728132
|
init_tool_collapse_store();
|
|
728120
728133
|
init_layout2();
|
|
@@ -728285,6 +728298,7 @@ var init_status_bar = __esm({
|
|
|
728285
728298
|
TEXT_PRIMARY = tuiTextPrimary() < 0 ? 252 : tuiTextPrimary();
|
|
728286
728299
|
TEXT_DIM = tuiTextDim();
|
|
728287
728300
|
NO_SUB_AGENTS_HEADER_LABEL = " no sub-agents ";
|
|
728301
|
+
HEADER_BUTTON_GLYPH_FG = headerButtonGlyphFg();
|
|
728288
728302
|
HEADER_BUTTON_BG = headerButtonBg();
|
|
728289
728303
|
HEADER_BUTTON_FG = headerButtonFg();
|
|
728290
728304
|
HEADER_ACCENT_BOLD_FG = headerAccentBoldFg();
|
|
@@ -728302,8 +728316,9 @@ var init_status_bar = __esm({
|
|
|
728302
728316
|
_globalFooterLock = false;
|
|
728303
728317
|
RESET4 = "\x1B[0m";
|
|
728304
728318
|
CURSOR_BLINK_BLOCK = "\x1B[1 q";
|
|
728305
|
-
HEADER_BUTTON_LEFT = "
|
|
728306
|
-
HEADER_BUTTON_RIGHT = "
|
|
728319
|
+
HEADER_BUTTON_LEFT = "🭁";
|
|
728320
|
+
HEADER_BUTTON_RIGHT = "🭝";
|
|
728321
|
+
HEADER_BUTTON_SQUARE_PAD = " ";
|
|
728307
728322
|
SPONSOR_HEADER_LABEL_MAX = 48;
|
|
728308
728323
|
_termTitleWriter = null;
|
|
728309
728324
|
StatusBar = class _StatusBar {
|
|
@@ -729056,7 +729071,10 @@ var init_status_bar = __esm({
|
|
|
729056
729071
|
/** Filled header button whose hue band follows the child agent's current action. */
|
|
729057
729072
|
paintAgentButton(content, stage2, active) {
|
|
729058
729073
|
const useTruecolor = supportsAnimatedTuiChrome();
|
|
729059
|
-
const
|
|
729074
|
+
const ornamentalEdges = supportsOrnamentalTuiButtonEdges();
|
|
729075
|
+
const chars = Array.from(
|
|
729076
|
+
ornamentalEdges ? content : `${HEADER_BUTTON_SQUARE_PAD}${content}${HEADER_BUTTON_SQUARE_PAD}`
|
|
729077
|
+
);
|
|
729060
729078
|
let body = "";
|
|
729061
729079
|
for (let i2 = 0; i2 < chars.length; i2++) {
|
|
729062
729080
|
const char = chars[i2];
|
|
@@ -729070,7 +729088,16 @@ var init_status_bar = __esm({
|
|
|
729070
729088
|
body += `${active ? "\x1B[1m" : ""}\x1B[38;5;${contrastTextColor(fallback)}m\x1B[48;5;${fallback}m${char}\x1B[0m`;
|
|
729071
729089
|
}
|
|
729072
729090
|
}
|
|
729073
|
-
return `${body}${RESET4}${PANEL_BG_SEQ}`;
|
|
729091
|
+
if (!ornamentalEdges) return `${body}${RESET4}${PANEL_BG_SEQ}`;
|
|
729092
|
+
const [lr, lg, lb] = stageGradientRgb(stage2, 0, this._stagePhase);
|
|
729093
|
+
const leftBorder = useTruecolor ? `\x1B[38;2;${lr};${lg};${lb}m` : `\x1B[38;5;${stageFallbackColor(stage2)}m`;
|
|
729094
|
+
const [rr, rg, rb] = stageGradientRgb(
|
|
729095
|
+
stage2,
|
|
729096
|
+
Math.max(0, chars.length - 1),
|
|
729097
|
+
this._stagePhase
|
|
729098
|
+
);
|
|
729099
|
+
const rightBorder = useTruecolor ? `\x1B[38;2;${rr};${rg};${rb}m` : `\x1B[38;5;${stageFallbackColor(stage2)}m`;
|
|
729100
|
+
return `${leftBorder}${HEADER_BUTTON_LEFT}${RESET4}` + body + `${RESET4}${PANEL_BG_SEQ}${rightBorder}${HEADER_BUTTON_RIGHT}${RESET4}${PANEL_BG_SEQ}`;
|
|
729074
729101
|
}
|
|
729075
729102
|
paintAgentText(value2, stage2, offset = 0) {
|
|
729076
729103
|
const chars = Array.from(value2);
|
|
@@ -729094,7 +729121,10 @@ var init_status_bar = __esm({
|
|
|
729094
729121
|
return `\x1B]8;;${cmdPrefix}\x07${label}\x1B]8;;\x07`;
|
|
729095
729122
|
};
|
|
729096
729123
|
const decorateMenuButton = (cmd, label) => {
|
|
729097
|
-
|
|
729124
|
+
if (!supportsOrnamentalTuiButtonEdges()) {
|
|
729125
|
+
return `${HEADER_BUTTON_BG}${HEADER_BUTTON_FG}${HEADER_BUTTON_SQUARE_PAD}${label}${HEADER_BUTTON_SQUARE_PAD}\x1B[0m${PANEL_BG_SEQ}`;
|
|
729126
|
+
}
|
|
729127
|
+
return `${HEADER_BUTTON_GLYPH_FG}${HEADER_BUTTON_LEFT}\x1B[0m${HEADER_BUTTON_BG}${HEADER_BUTTON_FG}${label}\x1B[0m${PANEL_BG_SEQ}${HEADER_BUTTON_GLYPH_FG}${HEADER_BUTTON_RIGHT}\x1B[0m${PANEL_BG_SEQ}`;
|
|
729098
729128
|
};
|
|
729099
729129
|
const renderBtn = (cmd, label) => {
|
|
729100
729130
|
return linkify(cmd, decorateMenuButton(cmd, label));
|
|
@@ -27,9 +27,9 @@ The input box should preserve Unicode line boundaries and avoid overwriting prev
|
|
|
27
27
|
|
|
28
28
|
## Terminal Compatibility
|
|
29
29
|
|
|
30
|
-
Header controls
|
|
30
|
+
Header controls retain ornamental Unicode edges on capable Linux terminals. macOS, Windows, limited terminals, and compatible-profile sessions use background-filled square padding so missing Symbols for Legacy Computing glyphs cannot become replacement boxes.
|
|
31
31
|
|
|
32
|
-
Animated border colors are disabled on macOS, Windows, limited terminals, and
|
|
32
|
+
Animated border colors are disabled on macOS, Windows, limited terminals, and explicit compatible-profile sessions. SSH alone does not disable Linux rendering because the host cannot reliably infer the client system or font. Set `OMNIUS_TUI_PROFILE=compatible` or `OMNIUS_TUI_STATIC_CHROME=1` for a limited SSH client. An SSH launcher can instead forward `OMNIUS_TUI_CLIENT_PLATFORM=macos` or `windows`.
|
|
33
33
|
|
|
34
34
|
## Shell Output
|
|
35
35
|
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "omnius",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.684",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "omnius",
|
|
9
|
-
"version": "1.0.
|
|
9
|
+
"version": "1.0.684",
|
|
10
10
|
"bundleDependencies": [
|
|
11
11
|
"image-to-ascii"
|
|
12
12
|
],
|
|
@@ -2327,9 +2327,9 @@
|
|
|
2327
2327
|
}
|
|
2328
2328
|
},
|
|
2329
2329
|
"node_modules/@types/node": {
|
|
2330
|
-
"version": "26.4.
|
|
2331
|
-
"resolved": "https://registry.npmjs.org/@types/node/-/node-26.4.
|
|
2332
|
-
"integrity": "sha512-
|
|
2330
|
+
"version": "26.4.1",
|
|
2331
|
+
"resolved": "https://registry.npmjs.org/@types/node/-/node-26.4.1.tgz",
|
|
2332
|
+
"integrity": "sha512-k97ENvZWtvA6yqz5/FS6a7duDgOPEeOQOc2iKS/nY6mX6qJUKtLnWzQS+Xj6tXweyj6ZcTAK2Qecetnvi9nCLA==",
|
|
2333
2333
|
"license": "MIT",
|
|
2334
2334
|
"dependencies": {
|
|
2335
2335
|
"undici-types": "~8.3.0"
|
package/package.json
CHANGED