Add ctx.ui.theme getter for styling status text with theme colors

- Add theme property to HookUIContext interface
- Implement in interactive, RPC, and no-op contexts
- Add status-line.ts example hook
- Document styling with theme colors in hooks.md
This commit is contained in:
Mario Zechner 2026-01-01 21:58:01 +01:00
parent 48ca55ab3c
commit dccdf91b8c
11 changed files with 96 additions and 2 deletions

View file

@ -14,6 +14,7 @@ import * as path from "node:path";
import { fileURLToPath } from "node:url";
import { createJiti } from "jiti";
import { getAgentDir, isBunBinary } from "../../config.js";
import { theme } from "../../modes/interactive/theme/theme.js";
import type { ExecOptions } from "../exec.js";
import { execCommand } from "../exec.js";
import type { HookUIContext } from "../hooks/types.js";
@ -94,6 +95,9 @@ function createNoOpUIContext(): HookUIContext {
custom: async () => undefined as never,
setEditorText: () => {},
getEditorText: () => "",
get theme() {
return theme;
},
};
}