@kolisachint/hoocode-agent 0.5.6 → 0.5.7

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/docs/themes.md CHANGED
@@ -40,8 +40,12 @@ Disable discovery with `--no-themes`.
40
40
  | `warm-light` | warm paper | Dark ink on cream, less glare than pure white |
41
41
  | `colorsafe-dark` | dark | Okabe-Ito hues, no red/green pairs |
42
42
  | `colorsafe-light` | white | Okabe-Ito hues, no red/green pairs |
43
+ | `vox-dark` | newsprint black | Explanatory-journalism yellow; `warning` is orange |
44
+ | `vox-light` | cream | Ink on paper; yellow survives as highlight and brand chip |
43
45
 
44
- The six themes after `dark`/`light` are built for low vision. Every color they
46
+ The six accessible themes are `high-contrast-*`, `warm-*`, and `colorsafe-*`; the
47
+ `vox-*` pair is a style theme and is described separately below. The six are built
48
+ for low vision. Every color they
45
49
  draw clears **WCAG AAA (7:1)** against every surface the TUI paints behind it —
46
50
  the page, selected rows, user messages, and all three tool-box states — and none
47
51
  of them defer to the terminal's default foreground, so contrast does not depend
@@ -61,6 +65,37 @@ Set the matching terminal background for the theme you pick (black-ish for the
61
65
  dark themes, white-ish for the light ones) — hoocode colors the text, but the
62
66
  canvas behind it belongs to your terminal.
63
67
 
68
+ ### The `vox-*` pair
69
+
70
+ Explanatory-journalism styling: one loud yellow used sparingly, everything else
71
+ newsprint-quiet. The yellow is reserved for four roles — `accent`, `mdHeading`,
72
+ `selectedBg`, and `borderAccent` — and it never carries a status. That forces one
73
+ departure from the other themes: **`warning` is orange, not yellow**, because a
74
+ yellow `◐` or a yellow context gauge stops reading as a signal when yellow is
75
+ already the accent.
76
+
77
+ In `vox-light` the accent drops to a deep amber, since a yellow bright enough to
78
+ read as a highlight is not legible as text on cream. The brand yellow survives in
79
+ two places: the selected-row background, and the footer's brand chip (see
80
+ `brandBg`/`brandText` below).
81
+
82
+ These two are **AA, not AAA** — they are not covered by
83
+ `test/theme-contrast.test.ts`. Every text token clears 4.5:1 on every surface it
84
+ paints, rules and inactive chrome clear 2.8:1, no two tokens that mean different
85
+ things are closer than ΔE 11 (CIEDE2000), and the selection tint separates from
86
+ the page. If you need a guaranteed 7:1 floor, use one of the six accessible
87
+ themes.
88
+
89
+ Two deliberate departures from the standard the default `light` theme is held to:
90
+
91
+ - **Rules are neutral, not saturated.** `border`, `mdHr`, and the code/quote
92
+ borders are warm grays rather than a saturated hue. A rule carries no meaning
93
+ through color, and newsprint separators are the point of the theme. They still
94
+ have to be *visible* — all of them clear the 2.8:1 decorative floor.
95
+ - **`brandText` is exempt from the surface sweep.** It only ever renders on
96
+ `brandBg`, never on a page surface, so measuring it against the page is
97
+ meaningless. On its own chip it sits at 14.8:1.
98
+
64
99
  ## Selecting a Theme
65
100
 
66
101
  Select a theme via `/settings` or in `settings.json`:
@@ -181,7 +216,9 @@ The `$schema` field enables editor auto-completion and validation.
181
216
 
182
217
  ## Color Tokens
183
218
 
184
- Every theme must define all 51 color tokens. There are no optional colors.
219
+ Every theme must define all 51 required color tokens. A few further tokens are
220
+ optional — see [Optional Tokens](#optional-tokens) — and a theme that omits them
221
+ falls back to the behavior described there.
185
222
 
186
223
  ### Core UI (11 colors)
187
224
 
@@ -271,6 +308,32 @@ Editor border colors indicating thinking level (visual hierarchy from subtle to
271
308
  |-------|---------|
272
309
  | `bashMode` | Editor border in bash mode (`!` prefix) |
273
310
 
311
+ ### Optional Tokens
312
+
313
+ Omitting any of these is valid — each has a defined fallback, so older custom
314
+ themes keep working.
315
+
316
+ | Token | Purpose | If omitted |
317
+ |-------|---------|------------|
318
+ | `agent1`–`agent6` | Subagent identity palette; agent types hash into these slots | Falls back to `accent` |
319
+ | `mcp` | MCP server identity color | Falls back to `accent` |
320
+ | `brandBg` | Background of the footer brand chip | Brand mark renders as `accent`-colored text |
321
+ | `brandText` | Text color of the footer brand chip | Brand mark renders as `accent`-colored text |
322
+
323
+ `brandBg` and `brandText` are honored **only as a pair** — set both, or neither.
324
+ They exist for light themes, where a brand hue vivid enough to be recognizable is
325
+ usually illegible as text on a light canvas but reads well inside a filled chip.
326
+ `vox-light` is the only built-in that sets them.
327
+
328
+ ```json
329
+ {
330
+ "colors": {
331
+ "brandBg": "#141209",
332
+ "brandText": "#ffe600"
333
+ }
334
+ }
335
+ ```
336
+
274
337
  ### HTML Export (optional)
275
338
 
276
339
  The `export` section controls colors for `/export` HTML output. If omitted, colors are derived from `userMessageBg`.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kolisachint/hoocode-extension-custom-provider-anthropic",
3
3
  "private": true,
4
- "version": "0.3.6",
4
+ "version": "0.3.7",
5
5
  "type": "module",
6
6
  "engines": {
7
7
  "bun": ">=1.0.0"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kolisachint/hoocode-extension-custom-provider-gitlab-duo",
3
3
  "private": true,
4
- "version": "0.3.6",
4
+ "version": "0.3.7",
5
5
  "type": "module",
6
6
  "engines": {
7
7
  "bun": ">=1.0.0"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kolisachint/hoocode-extension-sandbox",
3
3
  "private": true,
4
- "version": "0.3.6",
4
+ "version": "0.3.7",
5
5
  "type": "module",
6
6
  "engines": {
7
7
  "bun": ">=1.0.0"
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kolisachint/hoocode-extension-with-deps",
3
3
  "private": true,
4
- "version": "0.3.6",
4
+ "version": "0.3.7",
5
5
  "type": "module",
6
6
  "engines": {
7
7
  "bun": ">=1.0.0"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kolisachint/hoocode-agent",
3
- "version": "0.5.6",
3
+ "version": "0.5.7",
4
4
  "description": "Coding agent CLI with read, bash, edit, write tools and session management",
5
5
  "type": "module",
6
6
  "hoocodeConfig": {
@@ -49,9 +49,9 @@
49
49
  "prepublishOnly": "npm run clean && npm run build"
50
50
  },
51
51
  "dependencies": {
52
- "@kolisachint/hoocode-agent-core": "^0.5.6",
53
- "@kolisachint/hoocode-ai": "^0.5.6",
54
- "@kolisachint/hoocode-tui": "^0.5.6",
52
+ "@kolisachint/hoocode-agent-core": "^0.5.7",
53
+ "@kolisachint/hoocode-ai": "^0.5.7",
54
+ "@kolisachint/hoocode-tui": "^0.5.7",
55
55
  "@silvia-odwyer/photon-node": "^0.3.4",
56
56
  "chalk": "^5.5.0",
57
57
  "cli-highlight": "^2.1.11",