auq-mcp-server 2.6.4 → 2.7.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 (96) hide show
  1. package/README.md +56 -2
  2. package/dist/bin/auq.js +36 -3
  3. package/dist/bin/tui-app.js +27 -6
  4. package/dist/package.json +7 -2
  5. package/dist/src/__tests__/schema-validation.test.js +61 -1
  6. package/dist/src/cli/commands/__tests__/fetch-answers.test.js +310 -0
  7. package/dist/src/cli/commands/__tests__/history.test.js +211 -0
  8. package/dist/src/cli/commands/answer.js +11 -0
  9. package/dist/src/cli/commands/config.js +48 -0
  10. package/dist/src/cli/commands/fetch-answers.js +205 -0
  11. package/dist/src/cli/commands/history.js +375 -0
  12. package/dist/src/config/__tests__/ConfigLoader.test.js +38 -0
  13. package/dist/src/config/defaults.js +1 -0
  14. package/dist/src/config/types.js +1 -0
  15. package/dist/src/core/ask-user-questions.js +63 -0
  16. package/dist/src/i18n/locales/en.js +2 -2
  17. package/dist/src/server.js +59 -2
  18. package/dist/src/session/ResponseFormatter.js +79 -2
  19. package/dist/src/session/SessionManager.js +36 -0
  20. package/dist/src/session/__tests__/ResponseFormatter.test.js +86 -0
  21. package/dist/src/session/__tests__/SessionManager.test.js +129 -0
  22. package/dist/src/shared/schemas.js +8 -0
  23. package/dist/src/tui/ThemeProvider.js +3 -3
  24. package/dist/src/tui/components/Header.js +2 -1
  25. package/dist/src/tui/components/OptionsList.js +1 -1
  26. package/dist/src/tui/components/SessionPicker.js +1 -1
  27. package/dist/src/tui/components/StepperView.js +1 -1
  28. package/dist/src/tui/components/__tests__/ConfirmationDialog.test.js +1 -1
  29. package/dist/src/tui/components/__tests__/Footer.test.js +1 -1
  30. package/dist/src/tui/components/__tests__/MarkdownPrompt.test.js +1 -1
  31. package/dist/src/tui/components/__tests__/ReviewScreen.test.js +1 -1
  32. package/dist/src/tui/components/__tests__/SessionDots.test.js +1 -1
  33. package/dist/src/tui/components/__tests__/SessionPicker.test.js +1 -1
  34. package/dist/src/tui/components/__tests__/StepperView.abandoned.test.js +1 -1
  35. package/dist/src/tui/components/__tests__/StepperView.keyboard.test.js +1 -1
  36. package/dist/src/tui/components/__tests__/StepperView.state.test.js +1 -1
  37. package/dist/src/tui/components/__tests__/WaitingScreen.test.js +1 -1
  38. package/dist/src/tui/shared/session-events.js +4 -0
  39. package/dist/src/tui/shared/themes/catppuccin-latte.js +130 -0
  40. package/dist/src/tui/shared/themes/catppuccin-mocha.js +131 -0
  41. package/dist/src/tui/shared/themes/dark.js +131 -0
  42. package/dist/src/tui/shared/themes/dracula.js +131 -0
  43. package/dist/src/tui/shared/themes/github-dark.js +129 -0
  44. package/dist/src/tui/shared/themes/github-light.js +129 -0
  45. package/dist/src/tui/shared/themes/gruvbox-dark.js +130 -0
  46. package/dist/src/tui/shared/themes/gruvbox-light.js +130 -0
  47. package/dist/src/tui/shared/themes/index.js +70 -0
  48. package/dist/src/tui/shared/themes/light.js +130 -0
  49. package/dist/src/tui/shared/themes/loader.js +111 -0
  50. package/dist/src/tui/shared/themes/monokai.js +132 -0
  51. package/dist/src/tui/shared/themes/nord.js +130 -0
  52. package/dist/src/tui/shared/themes/one-dark.js +131 -0
  53. package/dist/src/tui/shared/themes/rose-pine.js +131 -0
  54. package/dist/src/tui/shared/themes/solarized-dark.js +130 -0
  55. package/dist/src/tui/shared/themes/solarized-light.js +130 -0
  56. package/dist/src/tui/shared/themes/tokyo-night.js +131 -0
  57. package/dist/src/tui/shared/themes/types.js +1 -0
  58. package/dist/src/tui/shared/types.js +1 -0
  59. package/dist/src/tui/shared/utils/config.js +80 -0
  60. package/dist/src/tui/shared/utils/detectTheme.js +33 -0
  61. package/dist/src/tui/shared/utils/index.js +6 -0
  62. package/dist/src/tui/shared/utils/recommended.js +52 -0
  63. package/dist/src/tui/shared/utils/relativeTime.js +24 -0
  64. package/dist/src/tui/shared/utils/sessionSwitching.js +56 -0
  65. package/dist/src/tui/shared/utils/staleDetection.js +51 -0
  66. package/dist/src/tui/themes/catppuccin-latte.js +2 -127
  67. package/dist/src/tui/themes/catppuccin-mocha.js +2 -127
  68. package/dist/src/tui/themes/dark.js +2 -128
  69. package/dist/src/tui/themes/dracula.js +2 -127
  70. package/dist/src/tui/themes/github-dark.js +2 -126
  71. package/dist/src/tui/themes/github-light.js +2 -126
  72. package/dist/src/tui/themes/gruvbox-dark.js +2 -127
  73. package/dist/src/tui/themes/gruvbox-light.js +2 -127
  74. package/dist/src/tui/themes/index.js +2 -70
  75. package/dist/src/tui/themes/light.js +2 -127
  76. package/dist/src/tui/themes/loader.js +2 -111
  77. package/dist/src/tui/themes/monokai.js +2 -128
  78. package/dist/src/tui/themes/nord.js +2 -127
  79. package/dist/src/tui/themes/one-dark.js +2 -127
  80. package/dist/src/tui/themes/rose-pine.js +2 -128
  81. package/dist/src/tui/themes/solarized-dark.js +2 -127
  82. package/dist/src/tui/themes/solarized-light.js +2 -127
  83. package/dist/src/tui/themes/tokyo-night.js +2 -127
  84. package/dist/src/tui/themes/types.js +2 -1
  85. package/dist/src/tui/types.js +1 -1
  86. package/dist/src/tui/utils/__tests__/recommended.test.js +1 -1
  87. package/dist/src/tui/utils/__tests__/relativeTime.test.js +1 -1
  88. package/dist/src/tui/utils/__tests__/sessionSwitching.test.js +1 -1
  89. package/dist/src/tui/utils/__tests__/staleDetection.test.js +1 -1
  90. package/dist/src/tui/utils/config.js +1 -80
  91. package/dist/src/tui/utils/detectTheme.js +1 -22
  92. package/dist/src/tui/utils/recommended.js +1 -52
  93. package/dist/src/tui/utils/relativeTime.js +1 -24
  94. package/dist/src/tui/utils/sessionSwitching.js +1 -56
  95. package/dist/src/tui/utils/staleDetection.js +1 -51
  96. package/package.json +7 -2
@@ -0,0 +1,130 @@
1
+ /**
2
+ * Catppuccin Latte Theme
3
+ * Soothing pastel theme - light flavor.
4
+ * https://github.com/catppuccin/catppuccin
5
+ */
6
+ export const catppuccinLatteTheme = {
7
+ name: "catppuccin-latte",
8
+ gradient: {
9
+ start: "#1e66f5", // blue
10
+ middle: "#8839ef", // mauve
11
+ end: "#1e66f5",
12
+ },
13
+ colors: {
14
+ bg: "#EFF1F5",
15
+ surface: "#E6E9EF",
16
+ surfaceAlt: "#CCD0DA",
17
+ primary: "#1e66f5", // blue
18
+ success: "#40a02b", // green
19
+ warning: "#df8e1d", // yellow
20
+ error: "#d20f39", // red
21
+ info: "#04a5e5", // sky
22
+ focused: "#1e66f5",
23
+ selected: "#40a02b",
24
+ pending: "#fe640b", // peach
25
+ unansweredHighlight: "#d20f39",
26
+ text: "#4c4f69", // text
27
+ textDim: "#8C90A0", // overlay0 darkened for visibility
28
+ textBold: "#4c4f69",
29
+ },
30
+ borders: {
31
+ primary: "#1e66f5",
32
+ warning: "#df8e1d",
33
+ error: "#d20f39",
34
+ neutral: "#ccd0da", // surface0
35
+ },
36
+ components: {
37
+ header: {
38
+ border: "#9ca0b0", // overlay0 - slightly more visible
39
+ queueActive: "#1e66f5",
40
+ queueEmpty: "#acb0c0",
41
+ queueFlash: "#8839ef",
42
+ pillBg: "#ccd0da",
43
+ },
44
+ directory: {
45
+ label: "#8C90A0",
46
+ path: "#4c4f69",
47
+ },
48
+ tabBar: {
49
+ selected: "#4c4f69",
50
+ selectedBg: "#ccd0da",
51
+ default: "#8C90A0",
52
+ answered: "#40a02b",
53
+ unanswered: "#acb0c0",
54
+ divider: "#ccd0da",
55
+ },
56
+ options: {
57
+ focused: "#40a02b",
58
+ focusedBg: "#ccd0da",
59
+ selected: "#1e66f5",
60
+ selectedBg: "#ccd0da",
61
+ default: "#4c4f69",
62
+ description: "#6c6f85", // subtext0 - darker for readability
63
+ hint: "#6c6f85", // subtext0 - darker for readability
64
+ },
65
+ input: {
66
+ border: "#ccd0da",
67
+ borderFocused: "#1e66f5",
68
+ placeholder: "#acb0c0",
69
+ cursor: "#1e66f5",
70
+ cursorDim: "#8839ef",
71
+ },
72
+ review: {
73
+ border: "#ccd0da",
74
+ confirmBorder: "#1e66f5",
75
+ selectedOption: "#40a02b",
76
+ customAnswer: "#df8e1d",
77
+ questionId: "#acb0c0",
78
+ divider: "#ccd0da",
79
+ },
80
+ questionDisplay: {
81
+ questionId: "#1e66f5",
82
+ typeIndicator: "#acb0c0",
83
+ elapsed: "#acb0c0",
84
+ },
85
+ footer: {
86
+ border: "#ccd0da",
87
+ keyBg: "#ccd0da",
88
+ keyFg: "#1e66f5",
89
+ action: "#7c7f93", // overlay1 - darker for visibility
90
+ separator: "#ccd0da",
91
+ },
92
+ toast: {
93
+ success: "#40a02b",
94
+ successPillBg: "#dce0e8",
95
+ error: "#d20f39",
96
+ info: "#1e66f5",
97
+ warning: "#df8e1d",
98
+ border: "#ccd0da",
99
+ },
100
+ markdown: {
101
+ codeBlockBg: "#eff1f5",
102
+ codeBlockText: "#4c4f69",
103
+ codeBlockBorder: "#ccd0da",
104
+ },
105
+ sessionDots: {
106
+ active: "#1e66f5",
107
+ answered: "#40a02b",
108
+ inProgress: "#df8e1d",
109
+ untouched: "#acb0c0",
110
+ number: "#4c4f69",
111
+ activeNumber: "#1e66f5",
112
+ stale: "#df8e1d",
113
+ abandoned: "#d20f39",
114
+ },
115
+ sessionPicker: {
116
+ border: "#1e66f5",
117
+ title: "#1e66f5",
118
+ rowText: "#4c4f69",
119
+ rowDim: "#acb0c0",
120
+ highlightBg: "#ccd0da",
121
+ highlightFg: "#40a02b",
122
+ activeMark: "#1e66f5",
123
+ progress: "#04a5e5",
124
+ staleIcon: "#df8e1d",
125
+ staleText: "#df8e1d",
126
+ staleAge: "#df8e1d",
127
+ staleSubtitle: "#acb0c0",
128
+ },
129
+ },
130
+ };
@@ -0,0 +1,131 @@
1
+ /**
2
+ * Catppuccin Mocha Theme
3
+ * Soothing pastel theme - darkest flavor.
4
+ * https://github.com/catppuccin/catppuccin
5
+ */
6
+ export const catppuccinMochaTheme = {
7
+ name: "catppuccin-mocha",
8
+ gradient: {
9
+ start: "#89b4fa", // blue
10
+ middle: "#cba6f7", // mauve
11
+ end: "#89b4fa",
12
+ },
13
+ colors: {
14
+ // Background layers (OpenCode-style filled surfaces)
15
+ bg: "#181825",
16
+ surface: "#1E1E2E",
17
+ surfaceAlt: "#313244",
18
+ primary: "#89b4fa", // blue
19
+ success: "#a6e3a1", // green
20
+ warning: "#f9e2af", // yellow
21
+ error: "#f38ba8", // red
22
+ info: "#89dceb", // sky
23
+ focused: "#89b4fa",
24
+ selected: "#a6e3a1",
25
+ pending: "#fab387", // peach
26
+ unansweredHighlight: "#f38ba8",
27
+ text: "#cdd6f4", // text
28
+ textDim: "#9395B0", // overlay0 brightened
29
+ textBold: "#cdd6f4",
30
+ },
31
+ borders: {
32
+ primary: "#89b4fa",
33
+ warning: "#f9e2af",
34
+ error: "#f38ba8",
35
+ neutral: "#313244", // surface0
36
+ },
37
+ components: {
38
+ header: {
39
+ border: "#45475a", // surface1 - slightly more visible
40
+ queueActive: "#89b4fa",
41
+ queueEmpty: "#8688a0",
42
+ queueFlash: "#cba6f7",
43
+ pillBg: "#313244",
44
+ },
45
+ directory: {
46
+ label: "#8688a0",
47
+ path: "#cdd6f4",
48
+ },
49
+ tabBar: {
50
+ selected: "#cdd6f4",
51
+ selectedBg: "#313244",
52
+ default: "#8688a0",
53
+ answered: "#a6e3a1",
54
+ unanswered: "#8688a0",
55
+ divider: "#313244",
56
+ },
57
+ options: {
58
+ focused: "#a6e3a1",
59
+ focusedBg: "#313244",
60
+ selected: "#89b4fa",
61
+ selectedBg: "#313244",
62
+ default: "#cdd6f4",
63
+ description: "#a6adc8", // subtext0 - lighter for readability
64
+ hint: "#a6adc8", // subtext0 - lighter for readability
65
+ },
66
+ input: {
67
+ border: "#313244",
68
+ borderFocused: "#89b4fa",
69
+ placeholder: "#8688a0",
70
+ cursor: "#89b4fa",
71
+ cursorDim: "#cba6f7",
72
+ },
73
+ review: {
74
+ border: "#313244",
75
+ confirmBorder: "#89b4fa",
76
+ selectedOption: "#a6e3a1",
77
+ customAnswer: "#f9e2af",
78
+ questionId: "#8688a0",
79
+ divider: "#313244",
80
+ },
81
+ questionDisplay: {
82
+ questionId: "#89b4fa",
83
+ typeIndicator: "#8688a0",
84
+ elapsed: "#8688a0",
85
+ },
86
+ footer: {
87
+ border: "#313244",
88
+ keyBg: "#313244",
89
+ keyFg: "#89b4fa",
90
+ action: "#A5AABF", // overlay2 - brighter for visibility
91
+ separator: "#313244",
92
+ },
93
+ toast: {
94
+ success: "#a6e3a1",
95
+ successPillBg: "#313244",
96
+ error: "#f38ba8",
97
+ info: "#89b4fa",
98
+ warning: "#f9e2af",
99
+ border: "#313244",
100
+ },
101
+ markdown: {
102
+ codeBlockBg: "#1e1e2e",
103
+ codeBlockText: "#cdd6f4",
104
+ codeBlockBorder: "#313244",
105
+ },
106
+ sessionDots: {
107
+ active: "#89b4fa",
108
+ answered: "#a6e3a1",
109
+ inProgress: "#f9e2af",
110
+ untouched: "#8688a0",
111
+ number: "#cdd6f4",
112
+ activeNumber: "#89b4fa",
113
+ stale: "#f9e2af",
114
+ abandoned: "#f38ba8",
115
+ },
116
+ sessionPicker: {
117
+ border: "#89b4fa",
118
+ title: "#89b4fa",
119
+ rowText: "#cdd6f4",
120
+ rowDim: "#8688a0",
121
+ highlightBg: "#313244",
122
+ highlightFg: "#a6e3a1",
123
+ activeMark: "#89b4fa",
124
+ progress: "#89dceb",
125
+ staleIcon: "#f9e2af",
126
+ staleText: "#f9e2af",
127
+ staleAge: "#f9e2af",
128
+ staleSubtitle: "#8688a0",
129
+ },
130
+ },
131
+ };
@@ -0,0 +1,131 @@
1
+ /**
2
+ * Visual direction: graphite + electric-cyan accent.
3
+ * Keep the palette tight; lean on neutrals for structure.
4
+ *
5
+ * This is the original AUQ theme, optimized for dark terminals.
6
+ */
7
+ export const darkTheme = {
8
+ name: "AUQ dark",
9
+ gradient: {
10
+ start: "#46D9FF",
11
+ middle: "#B8F2FF",
12
+ end: "#46D9FF",
13
+ },
14
+ colors: {
15
+ bg: "#0F1419",
16
+ surface: "#242C34",
17
+ surfaceAlt: "#2F3840",
18
+ primary: "#46D9FF",
19
+ success: "#5AF78E",
20
+ warning: "#FFD36A",
21
+ error: "#FF5C57",
22
+ info: "#46D9FF",
23
+ focused: "#46D9FF",
24
+ selected: "#5AF78E",
25
+ pending: "#FFD36A",
26
+ unansweredHighlight: "#FF6B6B",
27
+ text: "#E7EEF5",
28
+ textDim: "#A0AAB4",
29
+ textBold: "#F5FAFF",
30
+ },
31
+ borders: {
32
+ primary: "#46D9FF",
33
+ warning: "#FFD36A",
34
+ error: "#FF5C57",
35
+ neutral: "#2A3238",
36
+ },
37
+ components: {
38
+ header: {
39
+ border: "#3D4852", // slightly more visible
40
+ queueActive: "#46D9FF",
41
+ queueEmpty: "#A0AAB4",
42
+ queueFlash: "#B8F2FF",
43
+ pillBg: "#0B1F26",
44
+ },
45
+ directory: {
46
+ label: "#A0AAB4",
47
+ path: "#E7EEF5",
48
+ },
49
+ tabBar: {
50
+ selected: "#E7EEF5",
51
+ selectedBg: "#0B1F26",
52
+ default: "#A0AAB4",
53
+ answered: "#5AF78E",
54
+ unanswered: "#A0AAB4",
55
+ divider: "#2A3238",
56
+ },
57
+ options: {
58
+ focused: "#5AF78E",
59
+ focusedBg: "#0F2417",
60
+ selected: "#46D9FF",
61
+ selectedBg: "#0B1F26",
62
+ default: "#E7EEF5",
63
+ description: "#A8B2BC",
64
+ hint: "#A8B2BC",
65
+ },
66
+ input: {
67
+ border: "#2A3238",
68
+ borderFocused: "#46D9FF",
69
+ placeholder: "#A0AAB4",
70
+ cursor: "#46D9FF",
71
+ cursorDim: "#B8F2FF",
72
+ },
73
+ review: {
74
+ border: "#2A3238",
75
+ confirmBorder: "#46D9FF",
76
+ selectedOption: "#5AF78E",
77
+ customAnswer: "#FFD36A",
78
+ questionId: "#A0AAB4",
79
+ divider: "#2A3238",
80
+ },
81
+ questionDisplay: {
82
+ questionId: "#46D9FF",
83
+ typeIndicator: "#A0AAB4",
84
+ elapsed: "#A0AAB4",
85
+ },
86
+ footer: {
87
+ border: "#2A3238",
88
+ keyBg: "#0B1F26",
89
+ keyFg: "#46D9FF",
90
+ action: "#A8B2BC",
91
+ separator: "#2A3238",
92
+ },
93
+ toast: {
94
+ success: "#5AF78E",
95
+ successPillBg: "#0F2417",
96
+ error: "#FF5C57",
97
+ info: "#46D9FF",
98
+ warning: "#FFD36A",
99
+ border: "#2A3238",
100
+ },
101
+ markdown: {
102
+ codeBlockBg: "#0F1419",
103
+ codeBlockText: "#E7EEF5",
104
+ codeBlockBorder: "#2A3238",
105
+ },
106
+ sessionDots: {
107
+ active: "#46D9FF",
108
+ answered: "#5AF78E",
109
+ inProgress: "#FFD36A",
110
+ untouched: "#A0AAB4",
111
+ number: "#E7EEF5",
112
+ activeNumber: "#46D9FF",
113
+ stale: "#FFD36A",
114
+ abandoned: "#FF5C57",
115
+ },
116
+ sessionPicker: {
117
+ border: "#46D9FF",
118
+ title: "#46D9FF",
119
+ rowText: "#E7EEF5",
120
+ rowDim: "#A0AAB4",
121
+ highlightBg: "#0F2417",
122
+ highlightFg: "#5AF78E",
123
+ activeMark: "#46D9FF",
124
+ progress: "#46D9FF",
125
+ staleIcon: "#FFD36A",
126
+ staleText: "#FFD36A",
127
+ staleAge: "#FFD36A",
128
+ staleSubtitle: "#A0AAB4",
129
+ },
130
+ },
131
+ };
@@ -0,0 +1,131 @@
1
+ /**
2
+ * Dracula Theme
3
+ * A dark theme for code editors and terminal applications.
4
+ * https://draculatheme.com/
5
+ */
6
+ export const draculaTheme = {
7
+ name: "dracula",
8
+ gradient: {
9
+ start: "#bd93f9", // purple
10
+ middle: "#ff79c6", // pink
11
+ end: "#bd93f9",
12
+ },
13
+ colors: {
14
+ // Background layers (OpenCode-style filled surfaces)
15
+ bg: "#21222C",
16
+ surface: "#282A36",
17
+ surfaceAlt: "#383A4A",
18
+ primary: "#bd93f9", // purple
19
+ success: "#50fa7b", // green
20
+ warning: "#f1fa8c", // yellow
21
+ error: "#ff5555", // red
22
+ info: "#8be9fd", // cyan
23
+ focused: "#bd93f9",
24
+ selected: "#50fa7b",
25
+ pending: "#ffb86c", // orange
26
+ unansweredHighlight: "#ff5555", // dracula red
27
+ text: "#f8f8f2", // foreground
28
+ textDim: "#8B9BCF", // comment brightened
29
+ textBold: "#f8f8f2",
30
+ },
31
+ borders: {
32
+ primary: "#bd93f9",
33
+ warning: "#f1fa8c",
34
+ error: "#ff5555",
35
+ neutral: "#44475a", // current line
36
+ },
37
+ components: {
38
+ header: {
39
+ border: "#6272a4", // comment - slightly more visible
40
+ queueActive: "#bd93f9",
41
+ queueEmpty: "#7C8BBE",
42
+ queueFlash: "#ff79c6",
43
+ pillBg: "#44475a",
44
+ },
45
+ directory: {
46
+ label: "#7C8BBE",
47
+ path: "#f8f8f2",
48
+ },
49
+ tabBar: {
50
+ selected: "#f8f8f2",
51
+ selectedBg: "#44475a",
52
+ default: "#7C8BBE",
53
+ answered: "#50fa7b",
54
+ unanswered: "#7C8BBE",
55
+ divider: "#44475a",
56
+ },
57
+ options: {
58
+ focused: "#50fa7b",
59
+ focusedBg: "#44475a",
60
+ selected: "#bd93f9",
61
+ selectedBg: "#44475a",
62
+ default: "#f8f8f2",
63
+ description: "#CAA8FC", // lighter purple for readability
64
+ hint: "#f8f8f2", // foreground for readability
65
+ },
66
+ input: {
67
+ border: "#44475a",
68
+ borderFocused: "#bd93f9",
69
+ placeholder: "#7C8BBE",
70
+ cursor: "#bd93f9",
71
+ cursorDim: "#ff79c6",
72
+ },
73
+ review: {
74
+ border: "#44475a",
75
+ confirmBorder: "#bd93f9",
76
+ selectedOption: "#50fa7b",
77
+ customAnswer: "#f1fa8c",
78
+ questionId: "#7C8BBE",
79
+ divider: "#44475a",
80
+ },
81
+ questionDisplay: {
82
+ questionId: "#bd93f9",
83
+ typeIndicator: "#7C8BBE",
84
+ elapsed: "#7C8BBE",
85
+ },
86
+ footer: {
87
+ border: "#44475a",
88
+ keyBg: "#44475a",
89
+ keyFg: "#bd93f9",
90
+ action: "#9AA5D4",
91
+ separator: "#44475a",
92
+ },
93
+ toast: {
94
+ success: "#50fa7b",
95
+ successPillBg: "#44475a", // current line
96
+ error: "#ff5555",
97
+ info: "#bd93f9",
98
+ warning: "#f1fa8c",
99
+ border: "#44475a",
100
+ },
101
+ markdown: {
102
+ codeBlockBg: "#282a36",
103
+ codeBlockText: "#f8f8f2",
104
+ codeBlockBorder: "#44475a",
105
+ },
106
+ sessionDots: {
107
+ active: "#bd93f9",
108
+ answered: "#50fa7b",
109
+ inProgress: "#f1fa8c",
110
+ untouched: "#7C8BBE",
111
+ number: "#f8f8f2",
112
+ activeNumber: "#bd93f9",
113
+ stale: "#f1fa8c",
114
+ abandoned: "#ff5555",
115
+ },
116
+ sessionPicker: {
117
+ border: "#bd93f9",
118
+ title: "#bd93f9",
119
+ rowText: "#f8f8f2",
120
+ rowDim: "#7C8BBE",
121
+ highlightBg: "#44475a",
122
+ highlightFg: "#50fa7b",
123
+ activeMark: "#bd93f9",
124
+ progress: "#8be9fd",
125
+ staleIcon: "#f1fa8c",
126
+ staleText: "#f1fa8c",
127
+ staleAge: "#f1fa8c",
128
+ staleSubtitle: "#7C8BBE",
129
+ },
130
+ },
131
+ };
@@ -0,0 +1,129 @@
1
+ /**
2
+ * GitHub Dark theme - Authentic GitHub color palette.
3
+ * Based on GitHub's official dark mode colors.
4
+ */
5
+ export const githubDarkTheme = {
6
+ name: "github-dark",
7
+ gradient: {
8
+ start: "#58a6ff",
9
+ middle: "#79c0ff",
10
+ end: "#58a6ff",
11
+ },
12
+ colors: {
13
+ bg: "#010409",
14
+ surface: "#0D1117",
15
+ surfaceAlt: "#161B22",
16
+ primary: "#58a6ff",
17
+ success: "#3fb950",
18
+ warning: "#d29922",
19
+ error: "#f85149",
20
+ info: "#58a6ff",
21
+ focused: "#58a6ff",
22
+ selected: "#3fb950",
23
+ pending: "#d29922",
24
+ unansweredHighlight: "#f85149",
25
+ text: "#c9d1d9",
26
+ textDim: "#a0a8b4", // brightened
27
+ textBold: "#f0f6fc",
28
+ },
29
+ borders: {
30
+ primary: "#58a6ff",
31
+ warning: "#d29922",
32
+ error: "#f85149",
33
+ neutral: "#30363d",
34
+ },
35
+ components: {
36
+ header: {
37
+ border: "#3D444D", // differentiated from neutral #30363d
38
+ queueActive: "#58a6ff",
39
+ queueEmpty: "#a0a8b4",
40
+ queueFlash: "#79c0ff",
41
+ pillBg: "#161b22",
42
+ },
43
+ directory: {
44
+ label: "#a0a8b4",
45
+ path: "#c9d1d9",
46
+ },
47
+ tabBar: {
48
+ selected: "#c9d1d9",
49
+ selectedBg: "#161b22",
50
+ default: "#a0a8b4",
51
+ answered: "#3fb950",
52
+ unanswered: "#a0a8b4",
53
+ divider: "#30363d",
54
+ },
55
+ options: {
56
+ focused: "#3fb950",
57
+ focusedBg: "#0d1117",
58
+ selected: "#58a6ff",
59
+ selectedBg: "#161b22",
60
+ default: "#c9d1d9",
61
+ description: "#b1bac4", // brighter for readability
62
+ hint: "#b1bac4", // brighter for readability
63
+ },
64
+ input: {
65
+ border: "#30363d",
66
+ borderFocused: "#58a6ff",
67
+ placeholder: "#a0a8b4",
68
+ cursor: "#58a6ff",
69
+ cursorDim: "#79c0ff",
70
+ },
71
+ review: {
72
+ border: "#30363d",
73
+ confirmBorder: "#58a6ff",
74
+ selectedOption: "#3fb950",
75
+ customAnswer: "#d29922",
76
+ questionId: "#a0a8b4",
77
+ divider: "#30363d",
78
+ },
79
+ questionDisplay: {
80
+ questionId: "#58a6ff",
81
+ typeIndicator: "#a0a8b4",
82
+ elapsed: "#a0a8b4",
83
+ },
84
+ footer: {
85
+ border: "#30363d",
86
+ keyBg: "#161b22",
87
+ keyFg: "#58a6ff",
88
+ action: "#b1bac4", // brighter for visibility
89
+ separator: "#30363d",
90
+ },
91
+ toast: {
92
+ success: "#3fb950",
93
+ successPillBg: "#161b22",
94
+ error: "#f85149",
95
+ info: "#58a6ff",
96
+ warning: "#d29922",
97
+ border: "#30363d",
98
+ },
99
+ markdown: {
100
+ codeBlockBg: "#0d1117",
101
+ codeBlockText: "#c9d1d9",
102
+ codeBlockBorder: "#30363d",
103
+ },
104
+ sessionDots: {
105
+ active: "#58a6ff",
106
+ answered: "#3fb950",
107
+ inProgress: "#d29922",
108
+ untouched: "#a0a8b4",
109
+ number: "#c9d1d9",
110
+ activeNumber: "#58a6ff",
111
+ stale: "#d29922",
112
+ abandoned: "#f85149",
113
+ },
114
+ sessionPicker: {
115
+ border: "#58a6ff",
116
+ title: "#58a6ff",
117
+ rowText: "#c9d1d9",
118
+ rowDim: "#a0a8b4",
119
+ highlightBg: "#0d1117",
120
+ highlightFg: "#3fb950",
121
+ activeMark: "#58a6ff",
122
+ progress: "#58a6ff",
123
+ staleIcon: "#d29922",
124
+ staleText: "#d29922",
125
+ staleAge: "#d29922",
126
+ staleSubtitle: "#a0a8b4",
127
+ },
128
+ },
129
+ };