@markusylisiurunen/tau 0.2.119 → 0.2.121

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 (34) hide show
  1. package/README.md +10 -8
  2. package/dist/core/cli.js +1 -1
  3. package/dist/core/config/schema.js +80 -0
  4. package/dist/core/config/schema.js.map +1 -1
  5. package/dist/core/personas.js +4 -4
  6. package/dist/core/utils/project_files.js +39 -92
  7. package/dist/core/utils/project_files.js.map +1 -1
  8. package/dist/core/version.js +1 -1
  9. package/dist/diff_tool/app/dist/assets/index-BwEyvVod.css +1 -0
  10. package/dist/diff_tool/app/dist/assets/index-CFfllSc9.js +258 -0
  11. package/dist/diff_tool/app/dist/assets/pierre-dark-Dy3oF52j.js +1 -0
  12. package/dist/diff_tool/app/dist/assets/pierre-dark-soft-K7D5SChL.js +1 -0
  13. package/dist/diff_tool/app/dist/assets/pierre-light-DhMpYZcV.js +1 -0
  14. package/dist/diff_tool/app/dist/assets/pierre-light-soft-cPlVRKcQ.js +1 -0
  15. package/dist/diff_tool/app/dist/index.html +2 -2
  16. package/dist/diff_tool/http_server.js +22 -7
  17. package/dist/diff_tool/http_server.js.map +1 -1
  18. package/dist/diff_tool/index.js +1 -1
  19. package/dist/diff_tool/index.js.map +1 -1
  20. package/dist/diff_tool/launcher.js +2 -0
  21. package/dist/diff_tool/launcher.js.map +1 -1
  22. package/dist/diff_tool/protocol_client.js +7 -0
  23. package/dist/diff_tool/protocol_client.js.map +1 -1
  24. package/dist/diff_tool/review_state.js +25 -11
  25. package/dist/diff_tool/review_state.js.map +1 -1
  26. package/dist/diff_tool/shared_types.js +48 -1
  27. package/dist/diff_tool/shared_types.js.map +1 -1
  28. package/dist/main.js +1 -0
  29. package/dist/main.js.map +1 -1
  30. package/package.json +3 -3
  31. package/dist/diff_tool/app/dist/assets/index-BuEYkrDR.css +0 -1
  32. package/dist/diff_tool/app/dist/assets/index-Cpuc6JJD.js +0 -252
  33. package/dist/diff_tool/app/dist/assets/pierre-dark-DF2SEV7i.js +0 -1
  34. package/dist/diff_tool/app/dist/assets/pierre-light-DOlZxES8.js +0 -1
package/README.md CHANGED
@@ -272,7 +272,7 @@ tau uses `caffeinate -i` and only holds the sleep assertion during active assist
272
272
  tau comes with several built-in personas across different models:
273
273
 
274
274
  - **Claude Opus 4.6** (Anthropic): `opus-4.6-chat`, `opus-4.6-coder`
275
- - **Claude Opus 4.7** (Anthropic): `opus-4.7-chat`, `opus-4.7-coder`
275
+ - **Claude Opus 4.8** (Anthropic): `opus-4.8-chat`, `opus-4.8-coder`
276
276
  - **GPT-5.3-Codex** (OpenAI): `gpt-5.3-codex`
277
277
  - **GPT-5.4** (OpenAI): `gpt-5.4-chat`, `gpt-5.4-coder`
278
278
  - **GPT-5.3-Codex (ChatGPT)** (OpenAI Codex): `gpt-5.3-codex-chatgpt`
@@ -289,7 +289,7 @@ switch personas at startup with `--persona` or mid-session with `/persona:<id>`:
289
289
  persona id matching is exact/case-sensitive.
290
290
 
291
291
  ```sh
292
- tau --persona opus-4.7-coder
292
+ tau --persona opus-4.8-coder
293
293
  ```
294
294
 
295
295
  ## sub-agents
@@ -319,7 +319,7 @@ when you write custom skills, you can specify trigger sensitivity in the skill d
319
319
  some models support extended thinking, where they reason through problems before responding. cycle through reasoning levels with `shift+tab`, or set one at startup:
320
320
 
321
321
  ```sh
322
- tau --persona opus-4.7-chat:high
322
+ tau --persona opus-4.8-chat:high
323
323
  ```
324
324
 
325
325
  toggle visibility of the model's thinking with `ctrl+t`.
@@ -335,7 +335,7 @@ to explicitly target a sub-agent, use `@@agent:<name>` (for example, `@@agent:de
335
335
  you can also pipe content directly:
336
336
 
337
337
  ```sh
338
- cat src/tui/app.ts | tau --persona opus-4.7-chat
338
+ cat src/tui/app.ts | tau --persona opus-4.8-chat
339
339
  ```
340
340
 
341
341
  by default, tau injects your AGENTS.md into the system prompt. use `--no-agent-context-files` to disable this behavior. tau searches for AGENTS.md in the current directory and parent directories up to your home folder (or filesystem root if cwd is outside home). tau also includes a paths-only listing of `AGENTS.md` files in child directories under the current working directory, excluding any file already injected in full.
@@ -481,7 +481,9 @@ the `defaultRisk` field sets the initial risk level (`read-only` or `read-write`
481
481
 
482
482
  the `defaultTheme` field sets the theme id to load at startup. it must be non-empty, and matching is exact/case-sensitive. if not specified, it defaults to `gold`.
483
483
 
484
- tau ships a built-in browser diff review demo tool, so `/diff` works without any `diffTool` config. set `diffTool` only when you want to override that default launcher. `command` is required when `diffTool` is present. `args` and `env` are optional. relative `command` paths resolve from the config level root (directory containing `.tau`, or home for the global config).
484
+ tau ships a built-in browser diff review demo tool, so `/diff` works without any `diffTool` config. set `diffTool` only when you want to override that default launcher. `command` is required when `diffTool` is present. `args` and `env` are optional. relative `command` paths resolve from the config level root (directory containing `.tau`, or home for the global config). set `builtInDiffTool.codeTheme` to choose the built-in diff tool's initial code theme, for example `{ "builtInDiffTool": { "codeTheme": "github-dark-dimmed" } }`. the default is `github-dark-dimmed`.
485
+
486
+ supported built-in diff tool code themes are: `andromeeda`, `aurora-x`, `ayu-dark`, `ayu-mirage`, `catppuccin-frappe`, `catppuccin-macchiato`, `catppuccin-mocha`, `dark-plus`, `dracula`, `dracula-soft`, `everforest-dark`, `github-dark`, `github-dark-default`, `github-dark-dimmed`, `github-dark-high-contrast`, `gruvbox-dark-hard`, `gruvbox-dark-medium`, `gruvbox-dark-soft`, `horizon`, `horizon-bright`, `houston`, `kanagawa-dragon`, `kanagawa-wave`, `laserwave`, `material-theme`, `material-theme-darker`, `material-theme-ocean`, `material-theme-palenight`, `min-dark`, `monokai`, `night-owl`, `nord`, `one-dark-pro`, `plastic`, `poimandres`, `red`, `rose-pine`, `rose-pine-moon`, `slack-dark`, `solarized-dark`, `synthwave-84`, `tokyo-night`, `vesper`, `vitesse-black`, `vitesse-dark`.
485
487
 
486
488
  the `subagents.defaultLaunchModels` field configures allowed `spawn_agent` launch overrides for the built-in `default` sub-agent. values must use `<provider>/<model>:<effort>`.
487
489
 
@@ -549,7 +551,7 @@ commands run with cwd set to the config level root (directory containing `.tau`,
549
551
 
550
552
  ### diff review tool
551
553
 
552
- tau ships `tau diff-tool`, a built-in browser diff review demo tool. `/diff` launches it by default when `diffTool` is not configured.
554
+ tau ships `tau diff-tool`, a built-in browser diff review demo tool. `/diff` launches it by default when `diffTool` is not configured. configure `builtInDiffTool.codeTheme` to choose the built-in tool's initial code theme; the default is `github-dark-dimmed`.
553
555
 
554
556
  if you want a different launcher, configure `diffTool` in any in-scope config file. when present, it overrides the built-in fallback:
555
557
 
@@ -587,7 +589,7 @@ create your own personas by adding markdown files to `~/.config/tau/personas/` (
587
589
  ---
588
590
  id: my-assistant
589
591
  provider: anthropic
590
- model: claude-opus-4-7
592
+ model: claude-opus-4-8
591
593
  ---
592
594
 
593
595
  you are a helpful assistant specialized in my workflow. focus on clarity and efficiency.
@@ -597,7 +599,7 @@ the frontmatter defines the persona. required fields:
597
599
 
598
600
  - `id`: unique id used by `--persona` and `/persona:<id>`
599
601
  - `provider`: model provider id (for example `openai`, `anthropic`, `google`)
600
- - `model`: model id for the provider (for example `gpt-5.4`, `claude-opus-4-7`)
602
+ - `model`: model id for the provider (for example `gpt-5.4`, `claude-opus-4-8`)
601
603
 
602
604
  custom personas/subagents can reference model ids that are not bundled yet, as long as the provider is known. built-in personas use the merged model catalog, so `models.json` can override bundled model definitions. see [docs/models.md](docs/models.md).
603
605
 
package/dist/core/cli.js CHANGED
@@ -178,7 +178,7 @@ export function printHelp(personas) {
178
178
  "",
179
179
  "examples:",
180
180
  " tau --persona gpt-5.4-chat:high",
181
- " tau -p opus-4.7-coder",
181
+ " tau -p opus-4.8-coder",
182
182
  " tau --persona gpt-5.4-chat:medium --risk read-write",
183
183
  " tau -p gpt-5.4-coder:high -r read-write",
184
184
  " tau -l /tmp/tau-checkpoint-abc123/checkpoint.json",
@@ -17,6 +17,58 @@ export const DEFAULT_AUTO_COMPACT_CONFIG = {
17
17
  export function normalizeAutoCompactConfig(config) {
18
18
  return { ...DEFAULT_AUTO_COMPACT_CONFIG, ...config };
19
19
  }
20
+ const BUILT_IN_DIFF_TOOL_CODE_THEMES = new Set([
21
+ "andromeeda",
22
+ "aurora-x",
23
+ "ayu-dark",
24
+ "ayu-mirage",
25
+ "catppuccin-frappe",
26
+ "catppuccin-macchiato",
27
+ "catppuccin-mocha",
28
+ "dark-plus",
29
+ "dracula",
30
+ "dracula-soft",
31
+ "everforest-dark",
32
+ "github-dark",
33
+ "github-dark-default",
34
+ "github-dark-dimmed",
35
+ "github-dark-high-contrast",
36
+ "gruvbox-dark-hard",
37
+ "gruvbox-dark-medium",
38
+ "gruvbox-dark-soft",
39
+ "horizon",
40
+ "horizon-bright",
41
+ "houston",
42
+ "kanagawa-dragon",
43
+ "kanagawa-wave",
44
+ "laserwave",
45
+ "material-theme",
46
+ "material-theme-darker",
47
+ "material-theme-ocean",
48
+ "material-theme-palenight",
49
+ "min-dark",
50
+ "monokai",
51
+ "night-owl",
52
+ "nord",
53
+ "one-dark-pro",
54
+ "plastic",
55
+ "poimandres",
56
+ "red",
57
+ "rose-pine",
58
+ "rose-pine-moon",
59
+ "slack-dark",
60
+ "solarized-dark",
61
+ "synthwave-84",
62
+ "tokyo-night",
63
+ "vesper",
64
+ "vitesse-black",
65
+ "vitesse-dark",
66
+ ]);
67
+ const BuiltInDiffToolSchema = z
68
+ .object({
69
+ codeTheme: z.string().trim().min(1).optional(),
70
+ })
71
+ .passthrough();
20
72
  const KNOWN_TOP_LEVEL_CONFIG_KEYS = new Set([
21
73
  "apiKeys",
22
74
  "defaultPersona",
@@ -26,6 +78,7 @@ const KNOWN_TOP_LEVEL_CONFIG_KEYS = new Set([
26
78
  "defaultTheme",
27
79
  "bashCommands",
28
80
  "diffTool",
81
+ "builtInDiffTool",
29
82
  "agentContextFiles",
30
83
  "subagents",
31
84
  "autoCompact",
@@ -182,6 +235,8 @@ function validateConfigData(raw, sourceLabel, options) {
182
235
  assignParsedConfigValue(config, errors, "bashCommands", bashResult.commands.length > 0 ? bashResult.commands : undefined, bashResult.errors);
183
236
  const diffToolResult = parseDiffToolConfig(data.diffTool, sourceLabel);
184
237
  assignParsedConfigValue(config, errors, "diffTool", diffToolResult.config, diffToolResult.errors);
238
+ const builtInDiffToolResult = parseBuiltInDiffToolConfig(data.builtInDiffTool, sourceLabel);
239
+ assignParsedConfigValue(config, errors, "builtInDiffTool", builtInDiffToolResult.config, builtInDiffToolResult.errors);
185
240
  const agentResult = parseAgentContextFiles(data.agentContextFiles, sourceLabel);
186
241
  assignParsedConfigValue(config, errors, "agentContextFiles", agentResult.paths.length > 0 ? agentResult.paths : undefined, agentResult.errors);
187
242
  const subagentsResult = parseSubagentsConfig(data.subagents, sourceLabel, options.resolveModel);
@@ -207,6 +262,24 @@ function parseAgentContextFiles(raw, sourceLabel) {
207
262
  }
208
263
  return { paths: parsed.data, errors: [] };
209
264
  }
265
+ function parseBuiltInDiffToolConfig(raw, sourceLabel) {
266
+ if (raw === undefined) {
267
+ return { errors: [] };
268
+ }
269
+ const parsed = BuiltInDiffToolSchema.safeParse(raw);
270
+ if (!parsed.success) {
271
+ return { errors: [`${sourceLabel}: 'builtInDiffTool' must be an object.`] };
272
+ }
273
+ const config = {};
274
+ const codeTheme = parsed.data.codeTheme;
275
+ if (codeTheme !== undefined) {
276
+ if (!BUILT_IN_DIFF_TOOL_CODE_THEMES.has(codeTheme)) {
277
+ return { errors: [`${sourceLabel}: builtInDiffTool.codeTheme is not supported.`] };
278
+ }
279
+ config.codeTheme = codeTheme;
280
+ }
281
+ return { config: Object.keys(config).length > 0 ? config : undefined, errors: [] };
282
+ }
210
283
  function parseSubagentsConfig(raw, sourceLabel, modelResolver) {
211
284
  if (raw === undefined) {
212
285
  return { errors: [] };
@@ -530,6 +603,7 @@ function mergeConfigLevels(levels, configs) {
530
603
  const merged = getVirtualConfigDefaults();
531
604
  let apiKeys;
532
605
  let diffTool;
606
+ let builtInDiffTool;
533
607
  let subagents;
534
608
  let modelSystemNotices;
535
609
  let asyncConfig;
@@ -542,6 +616,9 @@ function mergeConfigLevels(levels, configs) {
542
616
  if (config.diffTool !== undefined) {
543
617
  diffTool = resolveDiffToolConfig(level, config.diffTool);
544
618
  }
619
+ if (config.builtInDiffTool !== undefined) {
620
+ builtInDiffTool = { ...config.builtInDiffTool };
621
+ }
545
622
  subagents = mergeSubagentsConfig(subagents, config.subagents);
546
623
  if (config.autoCompact !== undefined) {
547
624
  merged.autoCompact = mergeOptionalObject(merged.autoCompact, config.autoCompact);
@@ -578,6 +655,9 @@ function mergeConfigLevels(levels, configs) {
578
655
  if (diffTool) {
579
656
  merged.diffTool = diffTool;
580
657
  }
658
+ if (builtInDiffTool) {
659
+ merged.builtInDiffTool = builtInDiffTool;
660
+ }
581
661
  if (subagents && Object.keys(subagents).length > 0) {
582
662
  merged.subagents = subagents;
583
663
  }
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/core/config/schema.ts"],"names":[],"mappings":"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"}
@@ -163,10 +163,10 @@ const CODER_SYSTEM_PROMPT = [
163
163
  ].join("\n\n");
164
164
  const PERSONA_SPECS = [
165
165
  {
166
- id: "opus-4.7",
167
- description: "Claude Opus 4.7",
166
+ id: "opus-4.8",
167
+ description: "Claude Opus 4.8",
168
168
  provider: "anthropic",
169
- modelId: "claude-opus-4-7",
169
+ modelId: "claude-opus-4-8",
170
170
  allowedReasoningLevels: ["low", "medium", "high", "xhigh"],
171
171
  settings: { reasoning: "medium" },
172
172
  skills: "*",
@@ -280,7 +280,7 @@ const PERSONA_SPECS = [
280
280
  skills: "*",
281
281
  },
282
282
  ];
283
- export const DEFAULT_BUILTIN_PERSONA_ID = "opus-4.7-chat";
283
+ export const DEFAULT_BUILTIN_PERSONA_ID = "opus-4.8-chat";
284
284
  const VARIANT_CONFIG = {
285
285
  chat: { suffix: "-chat", systemPrompt: BASIC_SYSTEM_PROMPT },
286
286
  coder: { suffix: "-coder", systemPrompt: CODER_SYSTEM_PROMPT },
@@ -1,21 +1,32 @@
1
- import { readdir, realpath, stat } from "node:fs/promises";
2
- import { join } from "node:path";
3
1
  import { spawnWithCapture } from "./spawn_capture.js";
4
- const DEFAULT_IGNORED_DIRS = new Set([".git", "node_modules"]);
5
- async function runCommand(cwd, cmd, args) {
6
- const MAX_STDOUT_BYTES = 10 * 1024 * 1024;
7
- const result = await spawnWithCapture(cmd, args, {
2
+ const MAX_STDOUT_BYTES = 10 * 1024 * 1024;
3
+ const MAX_FILE_COUNT = 50_000;
4
+ const MAX_DIRECTORY_COUNT = 25_000;
5
+ const MAX_ENTRY_COUNT = MAX_FILE_COUNT + MAX_DIRECTORY_COUNT;
6
+ const RIPGREP_TIMEOUT_MS = 5000;
7
+ async function runRipgrepFiles(cwd) {
8
+ const result = await spawnWithCapture("rg", ["--files", "--hidden", "--glob", "!.git/"], {
8
9
  cwd,
9
10
  maxCaptureBytes: MAX_STDOUT_BYTES,
11
+ timeoutMs: RIPGREP_TIMEOUT_MS,
10
12
  stdio: ["ignore", "pipe", "ignore"],
11
13
  });
12
- if (result.captureLimitExceeded) {
13
- const err = new Error(`command stdout exceeded ${MAX_STDOUT_BYTES} bytes: ${cmd}`);
14
- err.name = "StdoutLimitExceededError";
15
- throw err;
16
- }
17
14
  return { status: result.exitCode ?? 1, stdout: result.stdout };
18
15
  }
16
+ function listFilesFromOutput(stdout) {
17
+ const files = [];
18
+ const seen = new Set();
19
+ for (const line of stdout.split("\n")) {
20
+ const file = line.trim();
21
+ if (!file || seen.has(file))
22
+ continue;
23
+ files.push(file);
24
+ seen.add(file);
25
+ if (files.length >= MAX_FILE_COUNT)
26
+ break;
27
+ }
28
+ return files;
29
+ }
19
30
  function listDirectoriesFromFiles(files) {
20
31
  const out = new Set();
21
32
  for (const file of files) {
@@ -26,102 +37,38 @@ function listDirectoriesFromFiles(files) {
26
37
  const dir = parts.slice(0, i).join("/");
27
38
  if (dir)
28
39
  out.add(`${dir}/`);
40
+ if (out.size >= MAX_DIRECTORY_COUNT)
41
+ return [...out];
29
42
  }
30
43
  }
31
44
  return [...out];
32
45
  }
33
46
  function combineEntries(files, dirs) {
34
47
  const out = new Set();
35
- for (const file of files)
48
+ for (const file of files) {
36
49
  out.add(file);
37
- for (const dir of dirs)
38
- out.add(dir);
50
+ if (out.size >= MAX_ENTRY_COUNT)
51
+ break;
52
+ }
53
+ if (out.size < MAX_ENTRY_COUNT) {
54
+ for (const dir of dirs) {
55
+ out.add(dir);
56
+ if (out.size >= MAX_ENTRY_COUNT)
57
+ break;
58
+ }
59
+ }
39
60
  return [...out].sort();
40
61
  }
41
62
  export async function listProjectFilesAsync(cwd) {
42
- const fromRipgrep = await listProjectFilesFromRipgrepAsync(cwd);
43
- if (fromRipgrep.length)
44
- return fromRipgrep;
45
- return listProjectFilesByWalkingAsync(cwd);
46
- }
47
- async function listProjectFilesFromRipgrepAsync(cwd) {
48
63
  try {
49
- const res = await runCommand(cwd, "rg", ["--files", "--hidden", "--glob", "!.git/"]);
50
- if (res.status !== 0)
64
+ const res = await runRipgrepFiles(cwd);
65
+ if (res.status !== 0 && !res.stdout)
51
66
  return [];
52
- const files = (res.stdout ?? "")
53
- .split("\n")
54
- .map((l) => l.trim())
55
- .filter(Boolean);
56
- const uniqueFiles = [...new Set(files)];
57
- return combineEntries(uniqueFiles, listDirectoriesFromFiles(uniqueFiles));
67
+ const files = listFilesFromOutput(res.stdout);
68
+ return combineEntries(files, listDirectoriesFromFiles(files));
58
69
  }
59
70
  catch {
60
71
  return [];
61
72
  }
62
73
  }
63
- async function listProjectFilesByWalkingAsync(cwd) {
64
- const files = new Set();
65
- const dirs = new Set();
66
- const realpathStack = new Set();
67
- const walk = async (dirAbs, dirRel) => {
68
- let dirReal;
69
- try {
70
- dirReal = await realpath(dirAbs);
71
- }
72
- catch {
73
- return;
74
- }
75
- if (realpathStack.has(dirReal))
76
- return;
77
- realpathStack.add(dirReal);
78
- try {
79
- const entries = await readdir(dirAbs, { withFileTypes: true, encoding: "utf8" });
80
- for (const entry of entries) {
81
- if (entry.isDirectory()) {
82
- if (DEFAULT_IGNORED_DIRS.has(entry.name))
83
- continue;
84
- const nextAbs = join(dirAbs, entry.name);
85
- const nextRel = dirRel ? join(dirRel, entry.name) : entry.name;
86
- dirs.add(`${nextRel}/`);
87
- await walk(nextAbs, nextRel);
88
- continue;
89
- }
90
- if (entry.isSymbolicLink()) {
91
- try {
92
- const targetPath = join(dirAbs, entry.name);
93
- const st = await stat(targetPath);
94
- if (st.isDirectory()) {
95
- if (DEFAULT_IGNORED_DIRS.has(entry.name))
96
- continue;
97
- const nextRel = dirRel ? join(dirRel, entry.name) : entry.name;
98
- dirs.add(`${nextRel}/`);
99
- await walk(targetPath, nextRel);
100
- }
101
- else if (st.isFile()) {
102
- const rel = dirRel ? join(dirRel, entry.name) : entry.name;
103
- files.add(rel);
104
- }
105
- }
106
- catch {
107
- // Broken symlink or permission error, skip
108
- }
109
- continue;
110
- }
111
- if (entry.isFile()) {
112
- const rel = dirRel ? join(dirRel, entry.name) : entry.name;
113
- files.add(rel);
114
- }
115
- }
116
- }
117
- catch {
118
- return;
119
- }
120
- finally {
121
- realpathStack.delete(dirReal);
122
- }
123
- };
124
- await walk(cwd, "");
125
- return combineEntries(files, dirs);
126
- }
127
74
  //# sourceMappingURL=project_files.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"project_files.js","sourceRoot":"","sources":["../../../src/core/utils/project_files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project_files.js","sourceRoot":"","sources":["../../../src/core/utils/project_files.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export const APP_VERSION = "0.2.119";
1
+ export const APP_VERSION = "0.2.121";
2
2
  //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ *,:after,:before{box-sizing:border-box}html{font-family:system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";line-height:1.15;-webkit-text-size-adjust:100%;tab-size:4}body{margin:0}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-color:currentcolor}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}.btn{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:0;padding:4px 10px;font-size:var(--font-size-ui);cursor:pointer;white-space:nowrap}.btn:hover{background:var(--surface-hover)}.btn:disabled{opacity:.35;cursor:not-allowed}.btn.primary{background:var(--accent-primary);color:var(--text-inverse);border-color:transparent;font-weight:500}.btn.primary:hover{background:var(--accent-primary-hover)}.btn.ghost{background:transparent;border-color:transparent;color:var(--text-muted)}.btn.ghost:hover{background:var(--surface-hover);color:var(--text)}.btn-group{display:inline-flex;align-items:center;gap:2px}.icon-btn{align-items:center;aspect-ratio:1;background:transparent;border-radius:0;border:1px solid transparent;color:var(--text-muted);cursor:pointer;display:inline-flex;height:28px;justify-content:center;width:28px}.icon-btn:hover{background:var(--surface-hover);color:var(--text)}.icon-btn.active{background:var(--surface-hover);border-color:var(--border);color:var(--text)}.icon-btn.ghost{color:var(--text-muted)}.icon-btn.ghost:hover{color:var(--text)}.text-input-area{display:block;width:100%;border:1px solid var(--border);border-radius:0;background:var(--bg);color:var(--text);font:inherit;padding:6px 8px}.text-input-area:focus{outline:none;border-color:var(--border-focus)}@font-face{font-family:JetBrains Mono;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/JetBrainsMono-Regular.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/JetBrainsMono-Medium.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:600;font-style:normal;font-display:swap;src:url(/fonts/JetBrainsMono-SemiBold.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/JetBrainsMono-Bold.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:400;font-style:italic;font-display:swap;src:url(/fonts/JetBrainsMono-Italic.woff2) format("woff2")}:root{color-scheme:dark;--bg: hsl(0 0% 6.8%);--surface: hsl(0 0% 7.2%);--surface-hover: hsl(0 0% 9.2%);--file-header-bg: color-mix(in srgb, var(--bg) 97%, var(--text));--file-header-bg-hover: color-mix(in srgb, var(--bg) 95%, var(--text));--border: hsl(0 0% 12%);--border-focus: hsl(0 0% 20%);--text: hsl(0 0% 74%);--text-muted: hsl(0 0% 40%);--accent-add: hsl(142 70% 62%);--accent-del: hsl(0 91% 68%);--accent-change: hsl(262 90% 76%);--accent-del-muted: hsl(0 91% 71% / .72);--accent-del-subtle: hsl(0 91% 71% / .08);--accent-del-subtle-hover: hsl(0 91% 71% / .14);--accent-primary: hsl(0 0% 88%);--text-inverse: hsl(0 0% 3.6%);--accent-primary-hover: hsl(0 0% 94%);--thread-border-muted: hsl(0 0% 84% / .15);--thread-border-strong: hsl(0 0% 84% / .16);--thread-border-subtle: hsl(0 0% 84% / .08);--thread-surface-subtle: hsl(0 0% 100% / .02);--thread-agent-surface: color-mix(in srgb, var(--accent-add) 4%, transparent);--sidebar-status-add: color-mix( in srgb, var(--accent-add) 55%, var(--text-muted) );--sidebar-status-del: color-mix( in srgb, var(--accent-del) 45%, var(--text-muted) );--sidebar-status-change: color-mix( in srgb, var(--accent-change) 45%, var(--text-muted) );--dialog-backdrop: color-mix(in srgb, black 80%, transparent);--popover-shadow: color-mix(in srgb, black 45%, transparent);--button-split-border: color-mix( in srgb, var(--text-inverse) 18%, transparent );--code-inline-bg: color-mix(in srgb, var(--accent-add) 7%, transparent);--code-inline-text: color-mix(in srgb, var(--accent-add) 82%, var(--text));--bar-height: 48px;--sidebar-width: 300px;--content-padding-x: 12px;--file-gap: 12px;--font-size-ui: 1rem;--font-size-lg: 1.071429rem;--font-size-sm: .928571rem;--font-size-xs: .857143rem;--font-size-code: .928571rem;--font-weight-ui: 400;--font-weight-code: 400;--letter-spacing-ui: 0;--letter-spacing-code: 0;--font-family-ui: system-ui, sans-serif;--font-family-code: "JetBrains Mono", monospace;--line-height-ui: 1.5;--diffs-font-family: var(--font-family-code);--diffs-line-height: 1.75;font-family:var(--font-family-ui);font-size:14px;font-weight:var(--font-weight-ui);letter-spacing:var(--letter-spacing-ui);line-height:var(--line-height-ui)}*,*:before,*:after{box-sizing:border-box;margin:0}body{background:var(--bg);color:var(--text);min-height:100vh}button,input,textarea{color:inherit;font:inherit}.app{min-height:100vh}.content{min-height:calc(100vh - var(--bar-height));padding:var(--content-padding-x)}.app.sidebar-open .content{margin-left:var(--sidebar-width)}.submit-popover{background:var(--surface);border:1px solid var(--border);box-shadow:0 18px 48px var(--popover-shadow);display:flex;flex-direction:column;gap:12px;padding:12px;position:fixed;width:min(420px,calc(100vw - 24px));z-index:35}.submit-popover-input{min-height:calc(7.5em + 1.5rem);resize:vertical}.submit-popover-actions{align-items:center;display:flex;gap:6px;justify-content:flex-end}.empty{color:var(--text-muted);padding:32px 16px}.diff-stats{display:inline-flex;align-items:center;gap:6px}.stat-add{color:var(--accent-add)}.stat-del{color:var(--accent-del)}.brief-dialog-body-wrap{display:block;flex:1 1 auto;min-height:0;overflow:auto}.brief-dialog-empty{color:var(--text-muted);font-size:16px;padding:1rem}.brief-dialog-body{font-size:16px;padding:1rem}.dialog-backdrop{align-items:flex-start;background:var(--dialog-backdrop);display:flex;inset:0;justify-content:center;padding-block:40px 20px;padding-inline:20px;position:fixed;z-index:40}.dialog{background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;max-height:calc(100vh - 60px);min-height:0;overflow:hidden;width:min(760px,100%)}.dialog-header{align-items:center;background:var(--bg);border-bottom:1px solid var(--border);display:flex;gap:8px;justify-content:space-between;padding:1rem;position:sticky;top:0;z-index:1}.dialog-heading{min-width:0}.dialog-title{color:var(--text);font-size:16px}.dialog-actions{flex-shrink:0}.dialog-close{height:24px;padding:0;width:24px}.dialog-body-wrap{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow:auto}.markdown-content{--markdown-code-block-border-color: color-mix( in srgb, var(--border) 86%, var(--bg) );line-height:var(--line-height-ui);--markdown-code-block-font-size: calc(14 / 15 * 1rem);--markdown-code-block-margin-block: 1em;--markdown-code-block-padding: 8px 10px;--markdown-heading-letter-spacing: -.01em;--markdown-heading-margin-block: 1em .75em;--markdown-heading-size: 1.2em;--markdown-heading-weight: 650;--markdown-inline-code-font-size: .9375em;--markdown-inline-code-padding-x: 5px;--markdown-inline-code-padding-y: 1px;--markdown-list-item-gap: .125em;--markdown-list-margin-block: 1em;--markdown-list-nested-gap: .25em;--markdown-list-padding: 1.5em;--markdown-paragraph-margin-block: 1em;--markdown-prose-color: color-mix( in srgb, var(--text) 74%, var(--text-muted) );--markdown-blockquote-color: color-mix( in srgb, var(--text) 47%, var(--text-muted) );max-width:100%;min-width:0;overflow-wrap:anywhere;white-space:normal;width:100%}.markdown-content>:first-child{margin-block-start:0!important}.markdown-content>:last-child{margin-block-end:0!important}.markdown-content :where(h1,h2,h3,h4,h5,h6){color:var(--text);font-size:var(--markdown-heading-size);font-weight:var(--markdown-heading-weight);letter-spacing:var(--markdown-heading-letter-spacing);line-height:1.2;margin-block:var(--markdown-heading-margin-block)}.markdown-content p{margin-block:var(--markdown-paragraph-margin-block)}.markdown-content p,.markdown-content li{color:var(--markdown-prose-color)}.markdown-content code{background:var(--code-inline-bg);color:var(--code-inline-text);font-family:var(--font-family-code);font-size:var(--markdown-inline-code-font-size);font-weight:var(--font-weight-code);letter-spacing:var(--letter-spacing-code);padding-block:var(--markdown-inline-code-padding-y);padding-inline:var(--markdown-inline-code-padding-x)}.markdown-content pre{background:var(--bg)!important;border:1px solid var(--markdown-code-block-border-color);box-sizing:border-box;contain:inline-size;margin-block:var(--markdown-code-block-margin-block);max-width:100%;min-width:0;overflow-x:auto;padding:var(--markdown-code-block-padding);white-space:pre}.markdown-content pre code{background:none;color:var(--text-muted);display:block;font-size:var(--markdown-code-block-font-size);max-width:100%;min-width:0;padding:0;white-space:inherit}.markdown-content ul,.markdown-content ol{margin-block:var(--markdown-list-margin-block);padding-left:var(--markdown-list-padding)}.markdown-content :where(h1,h2,h3,h4,h5,h6)+ul,.markdown-content :where(h1,h2,h3,h4,h5,h6)+ol{margin-block-start:0}.markdown-content ul{list-style:disc}.markdown-content ol{list-style:decimal}.markdown-content li+li{margin-top:var(--markdown-list-item-gap)}.markdown-content li::marker{color:var(--text-muted)}.markdown-content li>p{margin:0}.markdown-content li>p+p{margin-top:var(--markdown-list-nested-gap)}.markdown-content li>ul,.markdown-content li>ol{margin-block:var(--markdown-list-nested-gap) 0}.markdown-content blockquote{border-inline-start:2px solid var(--text-muted);color:var(--markdown-blockquote-color);padding-inline-start:.75em}.markdown-content strong{color:var(--text);font-weight:600}.markdown-content hr{border-bottom:0;border-inline:0;border-top:1px solid var(--thread-border-subtle);margin:1.5em 0}.markdown-content a{color:var(--text);text-decoration:underline;text-underline-offset:2px}.checkbox-btn{align-items:center;color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:var(--font-size-xs);gap:6px;padding:4px 0;position:relative;white-space:nowrap}.checkbox-btn:hover{color:var(--text)}.checkbox-input{inset:0;opacity:0;position:absolute}.checkbox-box{align-items:center;background:transparent;border-radius:0;border:1px solid var(--text-muted);color:var(--text-inverse);display:inline-flex;flex:0 0 14px;height:14px;justify-content:center;width:14px}.checkbox-btn:hover .checkbox-box{border-color:var(--text)}.checkbox-input:focus-visible+.checkbox-box{border-color:var(--border-focus)}.checkbox-input:checked+.checkbox-box{background:var(--accent-add);border-color:var(--accent-add);color:var(--text-inverse)}.detached-thread-dialog-body-wrap{display:flex;flex:1 1 auto;font-size:15px;min-height:0;overflow:hidden}.detached-thread-dialog-layout{display:flex;flex:1 1 auto;min-height:0;flex-direction:column}.detached-thread-dialog-messages{flex:1 1 auto;min-height:0;overflow:auto}.detached-thread-dialog-message{padding:1rem}.detached-thread-dialog-message+.detached-thread-dialog-message{border-top:1px solid var(--border)}.detached-thread-dialog-message-assistant{background:var(--thread-agent-surface)}.detached-thread-dialog-role{color:var(--text);display:inline-block;font-weight:600;margin-bottom:.5rem}.detached-thread-dialog-thinking{color:var(--text-muted);display:block}.detached-thread-dialog-composer{background:var(--bg);border-top:1px solid var(--border);flex:0 0 auto;padding:1rem}.detached-thread-dialog-composer .btn,.detached-thread-dialog-composer .checkbox-btn{font-size:15px}.detached-thread-dialog-input{min-height:96px;resize:vertical}.detached-thread-dialog-actions{align-items:center;display:flex;gap:8px;justify-content:flex-end;margin-top:.5rem}.detached-thread-dialog-secondary{border-color:var(--thread-border-subtle);background:transparent;color:var(--text-muted)}.detached-thread-dialog-secondary:hover{border-color:var(--border);background:var(--surface-hover);color:var(--text)}.comment-editor{margin:6px 10px 8px;padding:8px 10px 8px 12px;border-radius:0;border:1px solid var(--border);border-left:2px solid var(--thread-border-muted);background:var(--surface);box-sizing:border-box;font-size:var(--font-size-ui);max-width:800px}.comment-input{min-height:56px;font-size:var(--font-size-ui);resize:vertical}.comment-actions{align-items:center;display:flex;gap:4px;justify-content:flex-end;margin-top:6px}.comment-actions .checkbox-btn{font-size:var(--font-size-ui);margin-inline-end:auto}.thread-card{background:var(--surface);border:1px solid var(--border);font-size:var(--font-size-lg);margin:.25rem;max-width:800px}.thread-card.resolved{border-color:var(--thread-border-strong)}.thread-header-row,.thread-collapsed-row{font-size:var(--font-size-sm);padding-block:.375rem;padding-inline:1rem}.thread-toggle{align-items:center;appearance:none;background:transparent;border:none;color:var(--text-muted);cursor:pointer;display:inline-flex;gap:.25rem;margin-block:0;margin-inline:-.5rem;padding-block:.25rem;padding-inline:.5rem;text-align:left}.thread-toggle:hover{color:var(--text)}.thread-msg{padding-block:1rem;padding-inline:1rem}.thread-messages>:first-child{padding-block-start:0;padding-inline:1rem}.thread-msg+.thread-msg{border-top:1px solid var(--border)}.thread-msg-assistant{background:var(--thread-agent-surface)}.thread-msg-role{color:var(--text);display:inline-block;font-weight:600;margin-block-end:.25rem}.thread-msg-thinking{color:var(--text-muted);display:block}.thread-footer{background:var(--bg);border-block-start:1px solid var(--border);padding-block:.5rem;padding-inline:1rem}.thread-reply-input{min-height:calc(4.5em + 1.5rem);padding:.75rem;resize:vertical}.thread-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.25rem;justify-content:flex-end}.thread-reply-input+.thread-actions{margin-block-start:.75rem}.thread-actions .checkbox-btn{font-size:var(--font-size-ui);margin-inline-end:auto}.file-section{border:1px solid var(--border);border-radius:0;background:var(--surface);scroll-margin-top:calc(var(--bar-height) + var(--file-gap))}.file-section+.file-section{margin-top:var(--file-gap)}.file-header{position:sticky;top:var(--bar-height);z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 var(--content-padding-x);height:36px;background:var(--file-header-bg);border-bottom:1px solid var(--border)}.file-header:hover{background:var(--file-header-bg-hover)}.file-section.collapsed .file-header{border-bottom:none}.file-toggle{display:flex;align-items:center;gap:4px;border:none;background:transparent;color:var(--text-muted);cursor:pointer;min-width:0;padding:0}.file-toggle:hover{color:var(--text)}.file-path{font-size:var(--font-size-ui);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-thread-count{align-items:center;color:var(--text-muted);display:inline-flex;flex-shrink:0;font-size:var(--font-size-xs);gap:4px;margin-left:4px}.file-meta{display:flex;align-items:center;gap:10px;flex-shrink:0;font-size:var(--font-size-ui)}.viewed-checkbox{font-size:var(--font-size-xs)}.file-body{background:var(--bg);border-bottom-left-radius:8px;border-bottom-right-radius:8px}.diff-view{display:block;width:100%;font-size:var(--font-size-code);font-weight:var(--font-weight-code);letter-spacing:var(--letter-spacing-code)}.sidebar{background:var(--surface);border-right:1px solid var(--border);bottom:0;display:flex;flex-direction:column;gap:12px;left:0;overflow-y:auto;padding-block:12px;position:fixed;top:var(--bar-height);transform:translate(-100%);width:var(--sidebar-width);z-index:15}.sidebar.open{transform:translate(0)}.sidebar-section{display:flex;flex-direction:column;gap:6px}.sidebar-section-header{align-items:center;display:flex;gap:8px;justify-content:space-between;padding-inline:12px}.sidebar-section-title{color:var(--text);font-size:var(--font-size-sm);font-weight:500}.sidebar-action{min-height:28px;padding:0 8px}.sidebar-conversations,.sidebar-file-list{display:flex;flex-direction:column}.sidebar-divider{background:var(--border);flex:0 0 1px;height:1px}.sidebar-empty{color:var(--text-muted);font-size:var(--font-size-sm);padding-inline:12px}.sidebar-thread-item{background:transparent;border:none;color:var(--text);cursor:pointer;display:block;padding-block:4px;padding-inline:12px;text-align:left;width:100%}.sidebar-thread-item:hover,.sidebar-thread-item.selected{background:var(--surface-hover)}.sidebar-thread-item.resolved{color:var(--text-muted)}.sidebar-thread-row{align-items:center;display:flex;gap:8px;justify-content:space-between;width:100%}.sidebar-thread-kind{color:currentColor;flex:0 0 auto;opacity:.5}.sidebar-thread-name{color:currentColor;display:block;flex:1 1 auto;font-size:var(--font-size-ui);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-thread-status-dot{background:var(--text-muted);border-radius:999px;flex:0 0 6px;height:6px;width:6px}.sidebar-thread-status-dot.active{background:var(--accent-add)}.sidebar-file-group{display:flex;flex-direction:column}.sidebar-file-directory{color:var(--text-muted);font-family:var(--font-family-code);height:28px;line-height:1.25;overflow:hidden;padding:4px 12px;text-overflow:ellipsis;white-space:nowrap}.sidebar-item{background:transparent;border:none;color:var(--text);cursor:pointer;display:block;font-family:var(--font-family-code);height:28px;line-height:1.25;padding:4px 12px 4px 18px;text-align:left;width:100%}.sidebar-row{align-items:center;display:flex;gap:8px;height:100%;justify-content:space-between;width:100%}.sidebar-item:hover{background:var(--surface-hover)}.sidebar-item.viewed{color:var(--text-muted)}.sidebar-item.viewed .sidebar-file-status,.sidebar-item.viewed .stat-add,.sidebar-item.viewed .stat-del{opacity:.55}.sidebar-file-status{color:var(--text-muted);flex:0 0 auto}.sidebar-file-status.added{color:var(--sidebar-status-add)}.sidebar-file-status.deleted{color:var(--sidebar-status-del)}.sidebar-file-status.modified,.sidebar-file-status.renamed,.sidebar-file-status.copied,.sidebar-file-status.type-changed,.sidebar-file-status.unmerged{color:var(--sidebar-status-change)}.sidebar-file-name{display:block;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-stats{display:flex;flex-shrink:0;gap:8px}.top-bar{--top-bar-gap: 8px;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;width:100%;max-width:100vw;height:var(--bar-height);padding:0 12px;overflow:hidden;background:var(--surface);border-bottom:1px solid var(--border)}.top-bar-left,.top-bar-right{display:flex;align-items:center;gap:var(--top-bar-gap);min-width:0}.top-bar-left{flex:1 1 0;overflow:hidden}.top-bar-right{flex:0 0 auto}.top-bar-meta{color:var(--text-muted);font-size:var(--font-size-sm)}.top-bar-meta-dim{opacity:.5}.top-bar-status{font-size:var(--font-size-xs)}.top-bar-brief-action{min-height:26px;padding:0 8px;border-color:var(--thread-border-subtle);background:transparent;color:var(--text)}.top-bar-brief-action:hover{background:var(--surface-hover)}.top-bar-diff-meta{display:inline-flex;align-items:center;flex:1 1 0;gap:var(--top-bar-gap);min-width:0;overflow:hidden;font-size:var(--font-size-sm)}.top-bar-diff-meta .diff-stats{flex:0 0 auto}.top-bar-diff-command{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.4}.top-bar-viewed{display:inline-flex;align-items:center;gap:var(--top-bar-gap);color:var(--text-muted);font-size:var(--font-size-sm);white-space:nowrap}.top-bar-viewed-ring{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:999px;flex:0 0 16px}.top-bar-viewed-ring-inner{display:block;width:10px;height:10px;border-radius:999px;background:var(--surface)}.top-bar-viewed-text{color:var(--text-muted)}.top-bar-toggle{display:inline-flex;align-items:center;gap:var(--top-bar-gap);border:none;background:transparent;color:var(--text-muted);font-size:var(--font-size-xs);cursor:pointer;padding:2px 0;white-space:nowrap}.top-bar-toggle:hover{color:var(--text)}.top-bar-toggle-switch{display:inline-flex;align-items:center;width:24px;height:14px;padding:1px;border:1px solid var(--border);border-radius:0;background:var(--surface-hover)}.top-bar-toggle-thumb{display:block;width:10px;height:10px;border-radius:0;background:var(--text-muted)}.top-bar-toggle.active{color:var(--text)}.top-bar-toggle.active .top-bar-toggle-switch{background:var(--accent-add);border-color:var(--accent-add)}.top-bar-toggle.active .top-bar-toggle-thumb{transform:translate(10px);background:var(--text-inverse)}.top-bar-action{gap:6px;min-height:28px;padding:0 10px;border:1px solid var(--border);background:var(--surface);font-size:var(--font-size-ui)}.top-bar-action:hover{background:var(--surface-hover)}.top-bar-action-primary{color:var(--text-inverse);border-color:var(--accent-primary);background:var(--accent-primary);font-weight:500}.top-bar-action-primary:hover{color:var(--text-inverse);background:var(--accent-primary-hover)}.top-bar-submit-group{display:inline-flex}.top-bar-submit-main{border-right-color:var(--button-split-border)}.top-bar-submit-menu{justify-content:center;min-width:28px;padding-inline:6px}.top-bar-submit-main+.top-bar-submit-menu{border-left:0}.top-bar-action-cancel{justify-content:center;min-width:28px;padding:0;color:var(--accent-del-muted);border-color:transparent;background:var(--accent-del-subtle)}.top-bar-action-cancel:hover{color:var(--accent-del);border-color:transparent;background:var(--accent-del-subtle-hover)}.toggle-group{display:inline-flex;border:1px solid var(--border);border-radius:0;overflow:hidden}.toggle-group-item{border:none;background:transparent;color:var(--text-muted);padding:4px 10px;font-size:var(--font-size-ui);cursor:pointer}.toggle-group-item.active{background:var(--surface-hover);color:var(--text)}.toggle-group-item:hover:not(.active){color:var(--text)}