@aiwayds/dsh-tui-pi 0.1.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.
Files changed (83) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +324 -0
  3. package/bin/dsh-tui-pi +5 -0
  4. package/cordis.patch.yml +9 -0
  5. package/lib/append-system.d.ts +66 -0
  6. package/lib/append-system.js +161 -0
  7. package/lib/append-system.js.map +1 -0
  8. package/lib/commands.d.ts +53 -0
  9. package/lib/commands.js +167 -0
  10. package/lib/commands.js.map +1 -0
  11. package/lib/dsh-events.d.ts +106 -0
  12. package/lib/dsh-events.js +30 -0
  13. package/lib/dsh-events.js.map +1 -0
  14. package/lib/editor.d.ts +28 -0
  15. package/lib/editor.js +70 -0
  16. package/lib/editor.js.map +1 -0
  17. package/lib/footer.d.ts +36 -0
  18. package/lib/footer.js +112 -0
  19. package/lib/footer.js.map +1 -0
  20. package/lib/frame.d.ts +35 -0
  21. package/lib/frame.js +75 -0
  22. package/lib/frame.js.map +1 -0
  23. package/lib/git.d.ts +17 -0
  24. package/lib/git.js +51 -0
  25. package/lib/git.js.map +1 -0
  26. package/lib/index.d.ts +15 -0
  27. package/lib/index.js +781 -0
  28. package/lib/index.js.map +1 -0
  29. package/lib/instructions.d.ts +29 -0
  30. package/lib/instructions.js +67 -0
  31. package/lib/instructions.js.map +1 -0
  32. package/lib/live-widgets.d.ts +85 -0
  33. package/lib/live-widgets.js +218 -0
  34. package/lib/live-widgets.js.map +1 -0
  35. package/lib/messages.d.ts +277 -0
  36. package/lib/messages.js +734 -0
  37. package/lib/messages.js.map +1 -0
  38. package/lib/permission.d.ts +27 -0
  39. package/lib/permission.js +48 -0
  40. package/lib/permission.js.map +1 -0
  41. package/lib/provider-catalog.d.ts +114 -0
  42. package/lib/provider-catalog.js +124 -0
  43. package/lib/provider-catalog.js.map +1 -0
  44. package/lib/quotes.d.ts +28 -0
  45. package/lib/quotes.js +144 -0
  46. package/lib/quotes.js.map +1 -0
  47. package/lib/reload.d.ts +23 -0
  48. package/lib/reload.js +171 -0
  49. package/lib/reload.js.map +1 -0
  50. package/lib/selectors.d.ts +48 -0
  51. package/lib/selectors.js +261 -0
  52. package/lib/selectors.js.map +1 -0
  53. package/lib/session.d.ts +157 -0
  54. package/lib/session.js +555 -0
  55. package/lib/session.js.map +1 -0
  56. package/lib/sessions.d.ts +73 -0
  57. package/lib/sessions.js +253 -0
  58. package/lib/sessions.js.map +1 -0
  59. package/lib/settings.d.ts +180 -0
  60. package/lib/settings.js +1328 -0
  61. package/lib/settings.js.map +1 -0
  62. package/lib/text.d.ts +22 -0
  63. package/lib/text.js +45 -0
  64. package/lib/text.js.map +1 -0
  65. package/lib/theme/index.d.ts +79 -0
  66. package/lib/theme/index.js +121 -0
  67. package/lib/theme/index.js.map +1 -0
  68. package/lib/theme/palette.d.ts +56 -0
  69. package/lib/theme/palette.js +154 -0
  70. package/lib/theme/palette.js.map +1 -0
  71. package/lib/theme-settings.d.ts +68 -0
  72. package/lib/theme-settings.js +223 -0
  73. package/lib/theme-settings.js.map +1 -0
  74. package/lib/tui.d.ts +70 -0
  75. package/lib/tui.js +206 -0
  76. package/lib/tui.js.map +1 -0
  77. package/lib/welcome.d.ts +91 -0
  78. package/lib/welcome.js +281 -0
  79. package/lib/welcome.js.map +1 -0
  80. package/package.json +50 -0
  81. package/patches/@earendil-works__pi-tui.patch +72 -0
  82. package/pnpm-workspace.yaml +2 -0
  83. package/templates/APPEND_SYSTEM.md +34 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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"}
package/lib/text.d.ts ADDED
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Terminal-column text utilities — every width decision in this TUI goes
3
+ * through this module, never raw String.length: CJK full-width characters
4
+ * occupy two terminal columns, and surrogate pairs / grapheme clusters
5
+ * (emoji) must never be split.
6
+ *
7
+ * `visibleWidth` is pi-tui's own (east-asian-width aware, grapheme-clustered,
8
+ * ANSI-stripping) — re-exported here so call sites share one width vocabulary.
9
+ */
10
+ import { visibleWidth } from '@earendil-works/pi-tui';
11
+ export { visibleWidth };
12
+ /**
13
+ * Clip `text` to at most `maxWidth` terminal columns, whole graphemes only.
14
+ *
15
+ * Semantics (content first, ellipsis only when it fits):
16
+ * - visible width ≤ maxWidth → returned unchanged, no ellipsis;
17
+ * - otherwise the longest whole-grapheme prefix that fits is kept, and a
18
+ * trailing "…" is appended only when it still fits within maxWidth (i.e.
19
+ * the kept prefix left at least one column free); the result is never
20
+ * wider than maxWidth.
21
+ */
22
+ export declare function clipToWidth(text: string, maxWidth: number): string;
package/lib/text.js ADDED
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Terminal-column text utilities — every width decision in this TUI goes
3
+ * through this module, never raw String.length: CJK full-width characters
4
+ * occupy two terminal columns, and surrogate pairs / grapheme clusters
5
+ * (emoji) must never be split.
6
+ *
7
+ * `visibleWidth` is pi-tui's own (east-asian-width aware, grapheme-clustered,
8
+ * ANSI-stripping) — re-exported here so call sites share one width vocabulary.
9
+ */
10
+ import { visibleWidth } from '@earendil-works/pi-tui';
11
+ export { visibleWidth };
12
+ /** Truncation marker; U+2026 is one terminal column wide. */
13
+ const ELLIPSIS = '…';
14
+ /** Grapheme-clustered iteration (Intl.Segmenter) — never splits a surrogate pair. */
15
+ const segmenter = new Intl.Segmenter(undefined, { granularity: 'grapheme' });
16
+ /**
17
+ * Clip `text` to at most `maxWidth` terminal columns, whole graphemes only.
18
+ *
19
+ * Semantics (content first, ellipsis only when it fits):
20
+ * - visible width ≤ maxWidth → returned unchanged, no ellipsis;
21
+ * - otherwise the longest whole-grapheme prefix that fits is kept, and a
22
+ * trailing "…" is appended only when it still fits within maxWidth (i.e.
23
+ * the kept prefix left at least one column free); the result is never
24
+ * wider than maxWidth.
25
+ */
26
+ export function clipToWidth(text, maxWidth) {
27
+ if (maxWidth <= 0)
28
+ return '';
29
+ if (visibleWidth(text) <= maxWidth)
30
+ return text;
31
+ let kept = '';
32
+ let keptWidth = 0;
33
+ for (const { segment } of segmenter.segment(text)) {
34
+ const width = visibleWidth(segment);
35
+ if (keptWidth + width > maxWidth)
36
+ break;
37
+ kept += segment;
38
+ keptWidth += width;
39
+ }
40
+ if (kept === '')
41
+ return '';
42
+ // One column free after the kept prefix → the ellipsis fits (it is width 1).
43
+ return keptWidth + 1 <= maxWidth ? `${kept}${ELLIPSIS}` : kept;
44
+ }
45
+ //# sourceMappingURL=text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../src/text.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAA;AAErD,OAAO,EAAE,YAAY,EAAE,CAAA;AAEvB,6DAA6D;AAC7D,MAAM,QAAQ,GAAG,GAAG,CAAA;AAEpB,qFAAqF;AACrF,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAA;AAE5E;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,IAAY,EAAE,QAAgB;IACxD,IAAI,QAAQ,IAAI,CAAC;QAAE,OAAO,EAAE,CAAA;IAC5B,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,QAAQ;QAAE,OAAO,IAAI,CAAA;IAC/C,IAAI,IAAI,GAAG,EAAE,CAAA;IACb,IAAI,SAAS,GAAG,CAAC,CAAA;IACjB,KAAK,MAAM,EAAE,OAAO,EAAE,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;QACnC,IAAI,SAAS,GAAG,KAAK,GAAG,QAAQ;YAAE,MAAK;QACvC,IAAI,IAAI,OAAO,CAAA;QACf,SAAS,IAAI,KAAK,CAAA;IACpB,CAAC;IACD,IAAI,IAAI,KAAK,EAAE;QAAE,OAAO,EAAE,CAAA;IAC1B,6EAA6E;IAC7E,OAAO,SAAS,GAAG,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AAChE,CAAC"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Theme assembly: turns a GitHub Palette into the pi-tui theme objects
3
+ * (EditorTheme / MarkdownTheme / SelectListTheme) plus our own chat and
4
+ * powerline roles. The powerline segment palette is theme-agnostic — vivid
5
+ * segment backgrounds carry their own white bold text on both themes.
6
+ */
7
+ import type { EditorTheme, MarkdownTheme, SelectListTheme } from '@earendil-works/pi-tui';
8
+ import { type Palette } from './palette.ts';
9
+ /** Truecolor ANSI foreground for a hex color. */
10
+ export declare function ansiFg(hex: string): string;
11
+ /** Truecolor ANSI background for a hex color. */
12
+ export declare function ansiBg(hex: string): string;
13
+ export declare const BOLD = "\u001B[1m";
14
+ export declare const RESET = "\u001B[0m";
15
+ /** Chat surface roles (our own component set, modeled on pi's theme JSON). */
16
+ export interface ChatTheme {
17
+ userMessageBg: (text: string) => string;
18
+ userMessageText: (text: string) => string;
19
+ toolPendingBg: (text: string) => string;
20
+ toolSuccessBg: (text: string) => string;
21
+ toolErrorBg: (text: string) => string;
22
+ /** Background of the fixed-height thinking panel (header + body rows). */
23
+ thinkingPanelBg: (text: string) => string;
24
+ /** Background of the tool card body rows. */
25
+ toolBodyBg: (text: string) => string;
26
+ thinkingText: (text: string) => string;
27
+ todoDone: (text: string) => string;
28
+ todoOpen: (text: string) => string;
29
+ }
30
+ /** Powerline footer segment backgrounds, ported from pi-powerline-footer. */
31
+ export interface ThinkingLevelColors {
32
+ off: string;
33
+ minimal: string;
34
+ low: string;
35
+ medium: string;
36
+ high: string;
37
+ xhigh: string;
38
+ max: string;
39
+ }
40
+ export declare const POWERLINE: {
41
+ /** Fixed brand segment ("dsh") pinned to the footer's left edge. */
42
+ readonly brand: "#4D6BFE";
43
+ readonly provider: "#6A1B9A";
44
+ readonly thinking: {
45
+ off: string;
46
+ minimal: string;
47
+ low: string;
48
+ medium: string;
49
+ high: string;
50
+ xhigh: string;
51
+ max: string;
52
+ };
53
+ readonly contextOk: "#4CAF50";
54
+ readonly contextWarn: "#FFC107";
55
+ readonly contextOrange: "#FF9800";
56
+ readonly contextDanger: "#F44336";
57
+ readonly cache: "#00796B";
58
+ readonly messages: "#7B1FA2";
59
+ readonly tools: "#E64A19";
60
+ };
61
+ /** Complete theme bundle handed to the TUI. */
62
+ export interface TuiTheme {
63
+ readonly palette: Palette;
64
+ readonly editor: EditorTheme;
65
+ readonly markdown: MarkdownTheme;
66
+ readonly selectList: SelectListTheme;
67
+ readonly chat: ChatTheme;
68
+ }
69
+ /** Build a TuiTheme from a GitHub palette. */
70
+ export declare function buildTheme(palette: Palette): TuiTheme;
71
+ export declare const lightTheme: TuiTheme;
72
+ export declare const darkTheme: TuiTheme;
73
+ /** Theme selection: 'auto' falls back to terminal detection. */
74
+ export type ThemePreference = 'auto' | 'light' | 'dark';
75
+ /**
76
+ * Resolve the active theme bundle: the DSH_TUI_THEME env override wins, then
77
+ * an explicit light/dark preference, then terminal detection for 'auto'.
78
+ */
79
+ export declare function resolveTheme(env?: NodeJS.ProcessEnv, preference?: ThemePreference): TuiTheme;
@@ -0,0 +1,121 @@
1
+ /**
2
+ * Theme assembly: turns a GitHub Palette into the pi-tui theme objects
3
+ * (EditorTheme / MarkdownTheme / SelectListTheme) plus our own chat and
4
+ * powerline roles. The powerline segment palette is theme-agnostic — vivid
5
+ * segment backgrounds carry their own white bold text on both themes.
6
+ */
7
+ import { detectDarkPalette, githubDark, githubLight } from "./palette.js";
8
+ /** Truecolor ANSI foreground for a hex color. */
9
+ export function ansiFg(hex) {
10
+ const r = parseInt(hex.slice(1, 3), 16);
11
+ const g = parseInt(hex.slice(3, 5), 16);
12
+ const b = parseInt(hex.slice(5, 7), 16);
13
+ return `\x1b[38;2;${r};${g};${b}m`;
14
+ }
15
+ /** Truecolor ANSI background for a hex color. */
16
+ export function ansiBg(hex) {
17
+ const r = parseInt(hex.slice(1, 3), 16);
18
+ const g = parseInt(hex.slice(3, 5), 16);
19
+ const b = parseInt(hex.slice(5, 7), 16);
20
+ return `\x1b[48;2;${r};${g};${b}m`;
21
+ }
22
+ export const BOLD = '\x1b[1m';
23
+ export const RESET = '\x1b[0m';
24
+ export const POWERLINE = {
25
+ /** Fixed brand segment ("dsh") pinned to the footer's left edge. */
26
+ brand: '#4D6BFE',
27
+ provider: '#6A1B9A',
28
+ thinking: {
29
+ off: '#616161',
30
+ minimal: '#78909C',
31
+ low: '#5C6BC0',
32
+ medium: '#42A5F5',
33
+ high: '#26A69A',
34
+ xhigh: '#FFA726',
35
+ max: '#EF5350',
36
+ },
37
+ contextOk: '#4CAF50',
38
+ contextWarn: '#FFC107',
39
+ contextOrange: '#FF9800',
40
+ contextDanger: '#F44336',
41
+ cache: '#00796B',
42
+ messages: '#7B1FA2',
43
+ tools: '#E64A19',
44
+ };
45
+ /** Build a TuiTheme from a GitHub palette. */
46
+ export function buildTheme(palette) {
47
+ const fg = (hex) => (text) => ansiFg(hex) + text + RESET;
48
+ const bg = (hex) => (text) => ansiBg(hex) + text + RESET;
49
+ const bold = (text) => BOLD + text + RESET;
50
+ // canvasSubtle backdrop behind every picker line. pi-tui 0.84.2 patched
51
+ // (see patches/@earendil-works__pi-tui.patch): SelectList renderItem now
52
+ // routes unselected rows through the optional `unselectedText` theme hook
53
+ // (they used to be raw `prefix + value` with no theme call), so every
54
+ // row — selected, unselected, description, scroll info — gets the
55
+ // backdrop. Editor-inline slash autocomplete shares this selectList
56
+ // theme, so its rows get the same full-row treatment.
57
+ const selectList = {
58
+ selectedPrefix: text => bg(palette.canvasSubtle)(fg(palette.accent)(bold(`▸ ${text}`))),
59
+ selectedText: text => bg(palette.canvasSubtle)(fg(palette.fgDefault)(bold(text))),
60
+ description: text => bg(palette.canvasSubtle)(fg(palette.fgSubtle)(text)),
61
+ scrollInfo: text => bg(palette.canvasSubtle)(fg(palette.fgSubtle)(text)),
62
+ noMatch: text => bg(palette.canvasSubtle)(fg(palette.danger)(text)),
63
+ unselectedText: text => bg(palette.canvasSubtle)(fg(palette.fgDefault)(text)),
64
+ };
65
+ const editor = {
66
+ borderColor: fg(palette.borderDefault),
67
+ selectList,
68
+ };
69
+ const markdown = {
70
+ heading: text => fg(palette.fgDefault)(bold(text)),
71
+ link: text => fg(palette.accent)(text),
72
+ linkUrl: text => fg(palette.fgSubtle)(text),
73
+ code: text => fg(palette.fgDefault)(bg(palette.canvasSubtle)(text)),
74
+ codeBlock: text => fg(palette.fgDefault)(bg(palette.canvasSubtle)(text)),
75
+ codeBlockBorder: text => fg(palette.borderDefault)(text),
76
+ quote: text => fg(palette.fgMuted)(text),
77
+ quoteBorder: text => fg(palette.borderDefault)(text),
78
+ hr: text => fg(palette.borderDefault)(text),
79
+ listBullet: text => fg(palette.accent)(text),
80
+ bold,
81
+ italic: text => `\x1b[3m${text}\x1b[0m`,
82
+ strikethrough: text => `\x1b[9m${text}\x1b[0m`,
83
+ underline: text => `\x1b[4m${text}\x1b[0m`,
84
+ codeBlockIndent: ' ',
85
+ };
86
+ const chat = {
87
+ userMessageBg: bg(palette.canvasSubtle),
88
+ userMessageText: fg(palette.fgDefault),
89
+ // Tool card surfaces share the blue tool surface; only the settle status
90
+ // swaps the header tint (success green / error red).
91
+ toolPendingBg: bg(palette.toolPanelBg),
92
+ toolSuccessBg: bg(palette.successMuted),
93
+ toolErrorBg: bg(palette.dangerMuted),
94
+ // The thinking panel has its own purple surface, distinct from the blue
95
+ // tool cards and the green-gray message bubbles.
96
+ thinkingPanelBg: bg(palette.thinkingPanelBg),
97
+ toolBodyBg: bg(palette.toolPanelBg),
98
+ thinkingText: text => `\x1b[3m${fg(palette.thinking)(text)}\x1b[0m`,
99
+ todoDone: text => fg(palette.success)(`☑ ${text}`),
100
+ todoOpen: text => fg(palette.fgSubtle)(`☐ ${text}`),
101
+ };
102
+ return { palette, editor, markdown, selectList, chat };
103
+ }
104
+ export const lightTheme = buildTheme(githubLight);
105
+ export const darkTheme = buildTheme(githubDark);
106
+ /**
107
+ * Resolve the active theme bundle: the DSH_TUI_THEME env override wins, then
108
+ * an explicit light/dark preference, then terminal detection for 'auto'.
109
+ */
110
+ export function resolveTheme(env = process.env, preference = 'auto') {
111
+ if (env.DSH_TUI_THEME === 'light')
112
+ return lightTheme;
113
+ if (env.DSH_TUI_THEME === 'dark')
114
+ return darkTheme;
115
+ if (preference === 'light')
116
+ return lightTheme;
117
+ if (preference === 'dark')
118
+ return darkTheme;
119
+ return detectDarkPalette(env) ? darkTheme : lightTheme;
120
+ }
121
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/theme/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * GitHub palettes for the dsh-tui-pi themes.
3
+ *
4
+ * Design direction (2026-08 redesign, "paper feel"):
5
+ * - Light: near-white canvas with a faint cool-green cast, clear gray-green
6
+ * surfaces, graphite-green body text and a steel-blue accent — white /
7
+ * pale green / pale blue / clear gray, no fluorescent hues.
8
+ * - Dark: deep gray-blue canvas (#0d1117 family), accent/success/thinking
9
+ * hues mirror the light theme's families (brightened for dark), muted
10
+ * fills are solid approximations of alpha tints blended over `canvas`
11
+ * (the terminal can't carry alpha) — same values as `blend()` below.
12
+ *
13
+ * The TUI never paints the main canvas (the terminal background shows
14
+ * through), so `canvas` is the semantic base used by the dark muted blends
15
+ * and by contrast design; `canvasSubtle` is the visible raised surface.
16
+ */
17
+ export interface Palette {
18
+ /** Theme id, used by the theme switcher. */
19
+ readonly name: string;
20
+ /** Main background (chat canvas). */
21
+ readonly canvas: string;
22
+ /** Slightly offset surface (message bubbles, code blocks, tool cards). */
23
+ readonly canvasSubtle: string;
24
+ /** Inset surface (editor border row, footer background). */
25
+ readonly canvasInset: string;
26
+ readonly fgDefault: string;
27
+ readonly fgMuted: string;
28
+ readonly fgSubtle: string;
29
+ readonly borderDefault: string;
30
+ readonly borderMuted: string;
31
+ readonly accent: string;
32
+ /** Solid approximation of Primer `accent.muted` (light fills on accent). */
33
+ readonly accentMuted: string;
34
+ readonly success: string;
35
+ readonly successMuted: string;
36
+ readonly danger: string;
37
+ readonly dangerMuted: string;
38
+ readonly attention: string;
39
+ readonly attentionMuted: string;
40
+ /** Thinking/reasoning block text. */
41
+ readonly thinking: string;
42
+ /** Think panel surface (distinct pale purple on light / purple tint on dark). */
43
+ readonly thinkingPanelBg: string;
44
+ /** Tool card surface (distinct pale blue on light / blue tint on dark). */
45
+ readonly toolPanelBg: string;
46
+ /** Panel box border (think/tool boxes), one step stronger than borderDefault. */
47
+ readonly panelBorder: string;
48
+ }
49
+ export declare const githubLight: Palette;
50
+ export declare const githubDark: Palette;
51
+ /**
52
+ * Detect whether the terminal background is dark.
53
+ * `resolveTheme` handles the explicit DSH_TUI_THEME override before calling
54
+ * this, so this only inspects terminal environment signals.
55
+ */
56
+ export declare function detectDarkPalette(env?: NodeJS.ProcessEnv): boolean;
@@ -0,0 +1,154 @@
1
+ /**
2
+ * GitHub palettes for the dsh-tui-pi themes.
3
+ *
4
+ * Design direction (2026-08 redesign, "paper feel"):
5
+ * - Light: near-white canvas with a faint cool-green cast, clear gray-green
6
+ * surfaces, graphite-green body text and a steel-blue accent — white /
7
+ * pale green / pale blue / clear gray, no fluorescent hues.
8
+ * - Dark: deep gray-blue canvas (#0d1117 family), accent/success/thinking
9
+ * hues mirror the light theme's families (brightened for dark), muted
10
+ * fills are solid approximations of alpha tints blended over `canvas`
11
+ * (the terminal can't carry alpha) — same values as `blend()` below.
12
+ *
13
+ * The TUI never paints the main canvas (the terminal background shows
14
+ * through), so `canvas` is the semantic base used by the dark muted blends
15
+ * and by contrast design; `canvasSubtle` is the visible raised surface.
16
+ */
17
+ export const githubLight = {
18
+ name: 'github-light',
19
+ // Main canvas: near-white with a faint cool-green cast (not the harsh
20
+ // pure #fff); paper feel. The TUI never paints it — the terminal
21
+ // background (#f6f8fa) shows through; kept as the semantic base for the
22
+ // dark muted blends and contrast design.
23
+ canvas: '#fcfdfc',
24
+ // Raised surface (message bubbles, think/tool panels, overlays, code
25
+ // blocks): one step darker than the canvas, clear gray-green.
26
+ canvasSubtle: '#eef3ee',
27
+ // Inset surface (editor border row, footer background): one more step.
28
+ canvasInset: '#e5ebe5',
29
+ // Body text graphite-green (cool gray-green): 14.6:1 on canvas, 13.2:1
30
+ // on canvasSubtle.
31
+ fgDefault: '#1f2a24',
32
+ // Secondary text (tool details, hints): clear gray-green, ~6:1.
33
+ fgMuted: '#5a6b60',
34
+ // De-emphasized text (link URLs, unstarted todos, panel ellipsis rows):
35
+ // clear gray-green, ~4.5:1 on canvasSubtle (WCAG AA for small text).
36
+ fgSubtle: '#637269',
37
+ // Default border (editor border, separators): soft clear gray, derived
38
+ // from GitHub #d0d7de.
39
+ borderDefault: '#ccd6cc',
40
+ // Weak border: lighter clear gray.
41
+ borderMuted: '#d9e1d9',
42
+ // Primary accent (selection, links, arrows, session status): soft steel
43
+ // blue, 5.6:1 on canvasSubtle.
44
+ accent: '#0a60b5',
45
+ // Accent tint (pale ice blue): weak blue fill.
46
+ accentMuted: '#e2eff8',
47
+ // Success (completed todos, ✔ tool cards): soft green, 4.7:1 on canvas,
48
+ // 4.1:1 on successMuted.
49
+ success: '#1e843b',
50
+ // Success tint (successful tool cards): soft green fill.
51
+ successMuted: '#e2f1df',
52
+ // Danger (errors, ✘ tool cards): low-saturation rose, 5.2:1 on canvas,
53
+ // 4.4:1 on dangerMuted.
54
+ danger: '#b64550',
55
+ // Danger tint (failed tool cards): soft rose fill.
56
+ dangerMuted: '#f9e7e4',
57
+ // Attention (in-progress todos, token limit): soft amber, 4.8:1 on canvas.
58
+ attention: '#9a6700',
59
+ // Attention tint: soft amber fill.
60
+ attentionMuted: '#f6edd8',
61
+ // Thinking text (think panel, italic): soft violet, 5.2:1 on canvasSubtle.
62
+ thinking: '#7b4fae',
63
+ // Think panel surface: pale lavender, off the green-gray bubble surfaces so
64
+ // the reasoning block reads as its own surface.
65
+ thinkingPanelBg: '#f4effa',
66
+ // Tool card surface: pale ice blue, same family as accentMuted but a touch
67
+ // bluer than the green-gray bubble surface.
68
+ toolPanelBg: '#eef4fb',
69
+ // Panel box border (think/tool boxes): green-gray, one step stronger than
70
+ // borderDefault so the box lines read against the canvas.
71
+ panelBorder: '#a9c0ab',
72
+ };
73
+ const HEX6 = /^#[0-9a-fA-F]{6}$/;
74
+ /** Alpha tint of `over` on `base`, as a solid hex approximation of an alpha blend. */
75
+ function blend(base, over, alpha) {
76
+ if (!HEX6.test(base) || !HEX6.test(over)) {
77
+ throw new TypeError(`blend(): expected #rrggbb hex colors, got "${base}" and "${over}"`);
78
+ }
79
+ const b = [1, 3, 5].map(i => parseInt(base.slice(i, i + 2), 16));
80
+ const o = [1, 3, 5].map(i => parseInt(over.slice(i, i + 2), 16));
81
+ const mixed = b.map((v, i) => Math.round(v * (1 - alpha) + o[i] * alpha));
82
+ return `#${mixed.map(v => v.toString(16).padStart(2, '0')).join('')}`;
83
+ }
84
+ export const githubDark = {
85
+ name: 'github-dark',
86
+ // Main canvas: deep gray-blue (the GitHub dark family).
87
+ canvas: '#0d1117',
88
+ // Raised surface (bubbles, panels, overlays): one step lighter gray-blue.
89
+ canvasSubtle: '#161b22',
90
+ // Inset surface: deepest near-black gray-blue.
91
+ canvasInset: '#010409',
92
+ // Body text: cool off-white, 16:1 on canvas.
93
+ fgDefault: '#e6edf3',
94
+ // Secondary text: gray-blue, ~6:1.
95
+ fgMuted: '#8b949e',
96
+ // De-emphasized text: brightened from the original #6e7681, 4.5:1 on
97
+ // canvas (low emphasis must still be legible).
98
+ fgSubtle: '#737d87',
99
+ // Default border: gray-blue.
100
+ borderDefault: '#30363d',
101
+ // Weak border: deeper gray-blue.
102
+ borderMuted: '#21262d',
103
+ // Primary accent: same blue family as the light accent, brightened for
104
+ // dark, 7.5:1 on canvas.
105
+ accent: '#58a6ff',
106
+ // Accent tint: 25% blue tint over canvas, one step brighter than
107
+ // canvasSubtle for card faces.
108
+ accentMuted: blend('#0d1117', '#58a6ff', 0.25),
109
+ // Success: same green family as the light success, brightened, 4.9:1 on
110
+ // successMuted.
111
+ success: '#3fb950',
112
+ // Success tint (successful tool cards): 25% green tint over canvas.
113
+ successMuted: blend('#0d1117', '#3fb950', 0.25),
114
+ // Danger: same red family as the light danger, brightened, 4.9:1 on
115
+ // dangerMuted.
116
+ danger: '#ff7b72',
117
+ // Danger tint (failed tool cards): 25% red tint over canvas.
118
+ dangerMuted: blend('#0d1117', '#ff7b72', 0.25),
119
+ // Attention: same amber family as the light attention, brightened, 4.9:1
120
+ // on attentionMuted.
121
+ attention: '#d29922',
122
+ // Attention tint: 25% amber tint over canvas.
123
+ attentionMuted: blend('#0d1117', '#d29922', 0.25),
124
+ // Thinking text: same violet family as the light thinking, brightened,
125
+ // 6.9:1 on canvasSubtle.
126
+ thinking: '#bc8cff',
127
+ // Think panel surface: 25% violet tint over canvas (same blend convention
128
+ // as the other dark muted fills).
129
+ thinkingPanelBg: blend('#0d1117', '#bc8cff', 0.25),
130
+ // Tool card surface: same 25% blue tint as accentMuted (the two surfaces
131
+ // are one family; the blue reads as "tool" next to the purple "think").
132
+ toolPanelBg: blend('#0d1117', '#58a6ff', 0.25),
133
+ // Panel box border (think/tool boxes): green-gray, one step stronger than
134
+ // borderDefault so the box lines read against the dark canvas.
135
+ panelBorder: '#34433b',
136
+ };
137
+ /**
138
+ * Detect whether the terminal background is dark.
139
+ * `resolveTheme` handles the explicit DSH_TUI_THEME override before calling
140
+ * this, so this only inspects terminal environment signals.
141
+ */
142
+ export function detectDarkPalette(env = process.env) {
143
+ // COLORFGBG (xterm family): "fg;bg". In the standard 16-color set, 7 (white)
144
+ // and 15 (bright white) are the light backgrounds; everything else is dark.
145
+ const colorFgBg = env.COLORFGBG;
146
+ if (colorFgBg !== undefined) {
147
+ const bg = parseInt(colorFgBg.split(';')[1] ?? '', 10);
148
+ if (!Number.isNaN(bg))
149
+ return !(bg === 7 || bg === 15);
150
+ }
151
+ // Default to dark — GitHub's terminal default and the safer contrast choice.
152
+ return true;
153
+ }
154
+ //# sourceMappingURL=palette.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"palette.js","sourceRoot":"","sources":["../../src/theme/palette.ts"],"names":[],"mappings":"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"}