From dd0c89d8aace35620a5ca28feb70088e3286c787 Mon Sep 17 00:00:00 2001 From: Harivansh Rathi Date: Wed, 11 Mar 2026 02:08:27 -0400 Subject: [PATCH 1/2] ubuntu --- .../coding-agent/src/core/tools/browser.ts | 28 +++++++++++++++++++ .../coding-agent/test/browser-tool.test.ts | 27 ++++++++++++++++++ 2 files changed, 55 insertions(+) diff --git a/packages/coding-agent/src/core/tools/browser.ts b/packages/coding-agent/src/core/tools/browser.ts index 5eb53bf..838c2f2 100644 --- a/packages/coding-agent/src/core/tools/browser.ts +++ b/packages/coding-agent/src/core/tools/browser.ts @@ -187,6 +187,7 @@ export interface BrowserToolOptions { profileDir?: string; stateDir?: string; agentDir?: string; + headed?: boolean; } interface BrowserCommandContext { @@ -262,6 +263,30 @@ function ensureBrowserDirs(profilePath: string, stateDir: string): void { mkdirSync(stateDir, { recursive: true }); } +function isTruthyEnv(value: string | undefined): boolean { + if (!value) { + return false; + } + + switch (value.trim().toLowerCase()) { + case "": + case "0": + case "false": + case "no": + case "off": + return false; + default: + return true; + } +} + +function shouldLaunchHeaded(options?: BrowserToolOptions): boolean { + if (options?.headed !== undefined) { + return options.headed; + } + return isTruthyEnv(process.env.COMPANION_AGENT_BROWSER_HEADED); +} + function createBrowserCommandContext( profilePath: string, stateDir: string, @@ -328,6 +353,9 @@ function buildBrowserCommand( const profilePath = getBrowserProfilePath(cwd, options); const stateDir = getBrowserStateDir(cwd, options); const baseArgs = ["--profile", profilePath]; + if (shouldLaunchHeaded(options)) { + baseArgs.push("--headed"); + } switch (input.action) { case "open": { diff --git a/packages/coding-agent/test/browser-tool.test.ts b/packages/coding-agent/test/browser-tool.test.ts index 19ded39..c8b9005 100644 --- a/packages/coding-agent/test/browser-tool.test.ts +++ b/packages/coding-agent/test/browser-tool.test.ts @@ -117,6 +117,33 @@ describe("browser tool", () => { expect(details?.profilePath).toBe(profileDir); }); + it("can force agent-browser into headed mode for desktop sandboxes", async () => { + const cwd = createTempDir("coding-agent-browser-headed-"); + const profileDir = join(cwd, "profile"); + const stateDir = join(cwd, "states"); + const { calls, operations } = createMockBrowserOperations(); + + const browserTool = createBrowserTool(cwd, { + operations, + profileDir, + stateDir, + headed: true, + }); + + await browserTool.execute("browser-open-headed", { + action: "open", + url: "https://example.com", + }); + + expect(calls[0]?.args).toEqual([ + "--profile", + profileDir, + "--headed", + "open", + "https://example.com", + ]); + }); + it("uses interactive snapshots by default and returns snapshot text", async () => { const cwd = createTempDir("coding-agent-browser-snapshot-"); const profileDir = join(cwd, "profile"); From d0f85b30cc0cb62ec6af5d0d513d466c7657726c Mon Sep 17 00:00:00 2001 From: Harivansh Rathi Date: Wed, 11 Mar 2026 02:31:07 -0400 Subject: [PATCH 2/2] pull into local --- packages/ai/src/models.generated.ts | 87 +- .../coding-agent/companion-out/CHANGELOG.md | 2968 ++++++ .../coding-agent/companion-out/docs/SOUL.md | 32 + .../companion-out/docs/compaction.md | 410 + .../companion-out/docs/custom-provider.md | 614 ++ .../companion-out/docs/development.md | 70 + .../companion-out/docs/extensions.md | 2026 ++++ .../docs/images/doom-extension.png | Bin 0 -> 171987 bytes .../companion-out/docs/images/exy.png | Bin 0 -> 1510779 bytes .../docs/images/interactive-mode.png | Bin 0 -> 329142 bytes .../companion-out/docs/images/tree-view.png | Bin 0 -> 281981 bytes .../coding-agent/companion-out/docs/json.md | 129 + .../companion-out/docs/keybindings.md | 174 + .../coding-agent/companion-out/docs/models.md | 302 + .../companion-out/docs/packages.md | 210 + .../companion-out/docs/prompt-templates.md | 70 + .../companion-out/docs/providers.md | 188 + .../coding-agent/companion-out/docs/rpc.md | 1434 +++ .../coding-agent/companion-out/docs/sdk.md | 1036 ++ .../companion-out/docs/session.md | 500 + .../companion-out/docs/settings.md | 225 + .../companion-out/docs/shell-aliases.md | 13 + .../coding-agent/companion-out/docs/skills.md | 232 + .../companion-out/docs/terminal-setup.md | 71 + .../coding-agent/companion-out/docs/termux.md | 140 + .../coding-agent/companion-out/docs/themes.md | 296 + .../coding-agent/companion-out/docs/tree.md | 229 + .../coding-agent/companion-out/docs/tui.md | 969 ++ .../companion-out/docs/windows.md | 17 + .../export-html/ansi-to-html.d.ts | 22 + .../export-html/ansi-to-html.d.ts.map | 1 + .../companion-out/export-html/ansi-to-html.js | 239 + .../export-html/ansi-to-html.js.map | 1 + .../companion-out/export-html/index.d.ts | 46 + .../companion-out/export-html/index.d.ts.map | 1 + .../companion-out/export-html/index.js | 254 + .../companion-out/export-html/index.js.map | 1 + .../companion-out/export-html/template.css | 971 ++ .../companion-out/export-html/template.html | 54 + .../companion-out/export-html/template.js | 1831 ++++ .../export-html/tool-renderer.d.ts | 42 + .../export-html/tool-renderer.d.ts.map | 1 + .../export-html/tool-renderer.js | 65 + .../export-html/tool-renderer.js.map | 1 + .../export-html/vendor/highlight.min.js | 8426 +++++++++++++++++ .../export-html/vendor/marked.min.js | 1998 ++++ .../companion-out/photon_rs_bg.wasm | Bin 0 -> 1881634 bytes .../companion-out/theme/dark.json | 85 + .../companion-out/theme/light.json | 84 + .../companion-out/theme/theme-schema.json | 335 + 50 files changed, 26814 insertions(+), 86 deletions(-) create mode 100644 packages/coding-agent/companion-out/CHANGELOG.md create mode 100644 packages/coding-agent/companion-out/docs/SOUL.md create mode 100644 packages/coding-agent/companion-out/docs/compaction.md create mode 100644 packages/coding-agent/companion-out/docs/custom-provider.md create mode 100644 packages/coding-agent/companion-out/docs/development.md create mode 100644 packages/coding-agent/companion-out/docs/extensions.md create mode 100644 packages/coding-agent/companion-out/docs/images/doom-extension.png create mode 100644 packages/coding-agent/companion-out/docs/images/exy.png create mode 100644 packages/coding-agent/companion-out/docs/images/interactive-mode.png create mode 100644 packages/coding-agent/companion-out/docs/images/tree-view.png create mode 100644 packages/coding-agent/companion-out/docs/json.md create mode 100644 packages/coding-agent/companion-out/docs/keybindings.md create mode 100644 packages/coding-agent/companion-out/docs/models.md create mode 100644 packages/coding-agent/companion-out/docs/packages.md create mode 100644 packages/coding-agent/companion-out/docs/prompt-templates.md create mode 100644 packages/coding-agent/companion-out/docs/providers.md create mode 100644 packages/coding-agent/companion-out/docs/rpc.md create mode 100644 packages/coding-agent/companion-out/docs/sdk.md create mode 100644 packages/coding-agent/companion-out/docs/session.md create mode 100644 packages/coding-agent/companion-out/docs/settings.md create mode 100644 packages/coding-agent/companion-out/docs/shell-aliases.md create mode 100644 packages/coding-agent/companion-out/docs/skills.md create mode 100644 packages/coding-agent/companion-out/docs/terminal-setup.md create mode 100644 packages/coding-agent/companion-out/docs/termux.md create mode 100644 packages/coding-agent/companion-out/docs/themes.md create mode 100644 packages/coding-agent/companion-out/docs/tree.md create mode 100644 packages/coding-agent/companion-out/docs/tui.md create mode 100644 packages/coding-agent/companion-out/docs/windows.md create mode 100644 packages/coding-agent/companion-out/export-html/ansi-to-html.d.ts create mode 100644 packages/coding-agent/companion-out/export-html/ansi-to-html.d.ts.map create mode 100644 packages/coding-agent/companion-out/export-html/ansi-to-html.js create mode 100644 packages/coding-agent/companion-out/export-html/ansi-to-html.js.map create mode 100644 packages/coding-agent/companion-out/export-html/index.d.ts create mode 100644 packages/coding-agent/companion-out/export-html/index.d.ts.map create mode 100644 packages/coding-agent/companion-out/export-html/index.js create mode 100644 packages/coding-agent/companion-out/export-html/index.js.map create mode 100644 packages/coding-agent/companion-out/export-html/template.css create mode 100644 packages/coding-agent/companion-out/export-html/template.html create mode 100644 packages/coding-agent/companion-out/export-html/template.js create mode 100644 packages/coding-agent/companion-out/export-html/tool-renderer.d.ts create mode 100644 packages/coding-agent/companion-out/export-html/tool-renderer.d.ts.map create mode 100644 packages/coding-agent/companion-out/export-html/tool-renderer.js create mode 100644 packages/coding-agent/companion-out/export-html/tool-renderer.js.map create mode 100644 packages/coding-agent/companion-out/export-html/vendor/highlight.min.js create mode 100644 packages/coding-agent/companion-out/export-html/vendor/marked.min.js create mode 100644 packages/coding-agent/companion-out/photon_rs_bg.wasm create mode 100644 packages/coding-agent/companion-out/theme/dark.json create mode 100644 packages/coding-agent/companion-out/theme/light.json create mode 100644 packages/coding-agent/companion-out/theme/theme-schema.json diff --git a/packages/ai/src/models.generated.ts b/packages/ai/src/models.generated.ts index 4b7ac4a..1f7e321 100644 --- a/packages/ai/src/models.generated.ts +++ b/packages/ai/src/models.generated.ts @@ -7221,23 +7221,6 @@ export const MODELS = { contextWindow: 163840, maxTokens: 4096, } satisfies Model<"openai-completions">, - "deepseek/deepseek-v3.1-terminus:exacto": { - id: "deepseek/deepseek-v3.1-terminus:exacto", - name: "DeepSeek: DeepSeek V3.1 Terminus (exacto)", - api: "openai-completions", - provider: "openrouter", - baseUrl: "https://openrouter.ai/api/v1", - reasoning: true, - input: ["text"], - cost: { - input: 0.21, - output: 0.7899999999999999, - cacheRead: 0.16799999999999998, - cacheWrite: 0, - }, - contextWindow: 163840, - maxTokens: 4096, - } satisfies Model<"openai-completions">, "deepseek/deepseek-v3.2": { id: "deepseek/deepseek-v3.2", name: "DeepSeek: DeepSeek V3.2", @@ -8258,23 +8241,6 @@ export const MODELS = { contextWindow: 131072, maxTokens: 4096, } satisfies Model<"openai-completions">, - "moonshotai/kimi-k2-0905:exacto": { - id: "moonshotai/kimi-k2-0905:exacto", - name: "MoonshotAI: Kimi K2 0905 (exacto)", - api: "openai-completions", - provider: "openrouter", - baseUrl: "https://openrouter.ai/api/v1", - reasoning: false, - input: ["text"], - cost: { - input: 0.6, - output: 2.5, - cacheRead: 0, - cacheWrite: 0, - }, - contextWindow: 262144, - maxTokens: 4096, - } satisfies Model<"openai-completions">, "moonshotai/kimi-k2-thinking": { id: "moonshotai/kimi-k2-thinking", name: "MoonshotAI: Kimi K2 Thinking", @@ -9125,23 +9091,6 @@ export const MODELS = { contextWindow: 131072, maxTokens: 4096, } satisfies Model<"openai-completions">, - "openai/gpt-oss-120b:exacto": { - id: "openai/gpt-oss-120b:exacto", - name: "OpenAI: gpt-oss-120b (exacto)", - api: "openai-completions", - provider: "openrouter", - baseUrl: "https://openrouter.ai/api/v1", - reasoning: true, - input: ["text"], - cost: { - input: 0.039, - output: 0.19, - cacheRead: 0, - cacheWrite: 0, - }, - contextWindow: 131072, - maxTokens: 4096, - } satisfies Model<"openai-completions">, "openai/gpt-oss-120b:free": { id: "openai/gpt-oss-120b:free", name: "OpenAI: gpt-oss-120b (free)", @@ -9805,23 +9754,6 @@ export const MODELS = { contextWindow: 1000000, maxTokens: 65536, } satisfies Model<"openai-completions">, - "qwen/qwen3-coder:exacto": { - id: "qwen/qwen3-coder:exacto", - name: "Qwen: Qwen3 Coder 480B A35B (exacto)", - api: "openai-completions", - provider: "openrouter", - baseUrl: "https://openrouter.ai/api/v1", - reasoning: false, - input: ["text"], - cost: { - input: 0.22, - output: 1.7999999999999998, - cacheRead: 0.022, - cacheWrite: 0, - }, - contextWindow: 262144, - maxTokens: 65536, - } satisfies Model<"openai-completions">, "qwen/qwen3-coder:free": { id: "qwen/qwen3-coder:free", name: "Qwen: Qwen3 Coder 480B A35B (free)", @@ -10587,23 +10519,6 @@ export const MODELS = { contextWindow: 204800, maxTokens: 204800, } satisfies Model<"openai-completions">, - "z-ai/glm-4.6:exacto": { - id: "z-ai/glm-4.6:exacto", - name: "Z.ai: GLM 4.6 (exacto)", - api: "openai-completions", - provider: "openrouter", - baseUrl: "https://openrouter.ai/api/v1", - reasoning: true, - input: ["text"], - cost: { - input: 0.44, - output: 1.76, - cacheRead: 0.11, - cacheWrite: 0, - }, - contextWindow: 204800, - maxTokens: 131072, - } satisfies Model<"openai-completions">, "z-ai/glm-4.6v": { id: "z-ai/glm-4.6v", name: "Z.ai: GLM 4.6V", @@ -10670,7 +10585,7 @@ export const MODELS = { cacheWrite: 0, }, contextWindow: 202752, - maxTokens: 4096, + maxTokens: 131072, } satisfies Model<"openai-completions">, }, "vercel-ai-gateway": { diff --git a/packages/coding-agent/companion-out/CHANGELOG.md b/packages/coding-agent/companion-out/CHANGELOG.md new file mode 100644 index 0000000..a6b5327 --- /dev/null +++ b/packages/coding-agent/companion-out/CHANGELOG.md @@ -0,0 +1,2968 @@ +# Changelog + +## [Unreleased] + +## [0.56.2] - 2026-03-05 + +### New Features + +- GPT-5.4 support across `openai`, `openai-codex`, `azure-openai-responses`, and `opencode`, with `gpt-5.4` now the default for `openai` and `openai-codex` ([README.md](README.md), [docs/providers.md](docs/providers.md)). +- `treeFilterMode` setting to choose the default `/tree` filter mode (`default`, `no-tools`, `user-only`, `labeled-only`, `all`) ([docs/settings.md](docs/settings.md), [#1852](https://github.com/badlogic/companion-mono/pull/1852) by [@lajarre](https://github.com/lajarre)). +- Mistral native conversations integration with SDK-backed provider behavior, preserving Mistral-specific thinking and replay semantics ([README.md](README.md), [docs/providers.md](docs/providers.md), [#1716](https://github.com/badlogic/companion-mono/issues/1716)). + +### Added + +- Added `gpt-5.4` model availability for `openai`, `openai-codex`, `azure-openai-responses`, and `opencode` providers. +- Added `gpt-5.3-codex` fallback model availability for `github-copilot` until upstream model catalogs include it ([#1853](https://github.com/badlogic/companion-mono/issues/1853)). +- Added `treeFilterMode` setting to choose the default `/tree` filter mode (`default`, `no-tools`, `user-only`, `labeled-only`, `all`) ([#1852](https://github.com/badlogic/companion-mono/pull/1852) by [@lajarre](https://github.com/lajarre)). + +### Changed + +- Updated the default models for the `openai` and `openai-codex` providers to `gpt-5.4`. + +### Fixed + +- Fixed GPT-5.3 Codex follow-up turns dropping OpenAI Responses assistant `phase` metadata by preserving replayable signatures in session history and forwarding `phase` back to the Responses API ([#1819](https://github.com/badlogic/companion-mono/issues/1819)). +- Fixed OpenAI Responses replay to omit empty thinking blocks, avoiding invalid no-op reasoning items in follow-up turns. +- Updated Mistral integration to use the native SDK-backed provider and conversations API, including coding-agent model/provider wiring and Mistral setup documentation ([#1716](https://github.com/badlogic/companion-mono/issues/1716)). +- Fixed Antigravity reliability: endpoint cascade on 403/404, added autopush sandbox fallback, removed extra fingerprint headers ([#1830](https://github.com/badlogic/companion-mono/issues/1830)). +- Fixed `@mariozechner/companion-ai/oauth` extension imports in published installs by resolving the subpath directly from built `dist` files instead of package-root wrapper shims ([#1856](https://github.com/badlogic/companion-mono/issues/1856)). +- Fixed Gemini 3 multi-turn tool use losing structured context by using `skip_thought_signature_validator` sentinel for unsigned function calls instead of text fallback ([#1829](https://github.com/badlogic/companion-mono/issues/1829)). +- Fixed model selector filter not accepting typed characters in VS Code 1.110+ due to missing Kitty CSI-u printable decoding in the `Input` component ([#1857](https://github.com/badlogic/companion-mono/issues/1857)) +- Fixed editor/footer visibility drift during terminal resize by forcing full redraws when terminal width or height changes ([#1844](https://github.com/badlogic/companion-mono/pull/1844) by [@ghoulr](https://github.com/ghoulr)). +- Fixed footer width truncation for wide Unicode text (session name, model, provider) to prevent TUI crashes from rendered lines exceeding terminal width ([#1833](https://github.com/badlogic/companion-mono/issues/1833)). +- Fixed Windows write preview background artifacts by normalizing CRLF content (`\r\n`) to LF for display rendering in tool output previews ([#1854](https://github.com/badlogic/companion-mono/issues/1854)). + +## [0.56.1] - 2026-03-05 + +### Fixed + +- Fixed extension alias fallback resolution to use ESM-aware resolution for `jiti` aliases in global installs ([#1821](https://github.com/badlogic/companion-mono/pull/1821) by [@Perlence](https://github.com/Perlence)) +- Fixed markdown blockquote rendering to isolate blockquote styling from default text style, preventing style leakage. + +## [0.56.0] - 2026-03-04 + +### New Features + +- Added OpenCode Go provider support with `opencode-go` model defaults and `OPENCODE_API_KEY` environment variable support ([docs/providers.md](docs/providers.md), [#1757](https://github.com/badlogic/companion-mono/issues/1757)). +- Added `branchSummary.skipPrompt` setting to skip branch summarization prompts during tree navigation ([docs/settings.md](docs/settings.md), [#1792](https://github.com/badlogic/companion-mono/issues/1792)). +- Added `gemini-3.1-flash-lite-preview` fallback model availability for Google provider catalogs when upstream model metadata lags ([README.md](README.md), [#1785](https://github.com/badlogic/companion-mono/issues/1785)). + +### Breaking Changes + +- Changed scoped model thinking semantics. Scoped entries without an explicit `:` suffix now inherit the current session thinking level when selected, instead of applying a startup-captured default. +- Moved Node OAuth runtime exports off the top-level `@mariozechner/companion-ai` entry. OAuth login and refresh must be imported from `@mariozechner/companion-ai/oauth` ([#1814](https://github.com/badlogic/companion-mono/issues/1814)). + +### Added + +- Added `branchSummary.skipPrompt` setting to skip the summary prompt when navigating branches ([#1792](https://github.com/badlogic/companion-mono/issues/1792)). +- Added OpenCode Go provider support with `opencode-go` model defaults and `OPENCODE_API_KEY` environment variable support ([#1757](https://github.com/badlogic/companion-mono/issues/1757)). +- Added `gemini-3.1-flash-lite-preview` fallback model availability in provider catalogs when upstream catalogs lag ([#1785](https://github.com/badlogic/companion-mono/issues/1785)). + +### Changed + +- Updated Antigravity Gemini 3.1 model metadata and request headers to match upstream behavior. + +### Fixed + +- Fixed IME hardware cursor positioning in the custom extension editor (`ctx.ui.editor()` / extension editor dialog) by propagating focus to the internal `Editor`, preventing the terminal cursor from getting stuck at the bottom-right during composition. +- Added OSC 133 semantic zone markers around rendered user messages to support terminal navigation between prompts in iTerm2, WezTerm, Kitty, Ghostty, and other compatible terminals ([#1805](https://github.com/badlogic/companion-mono/issues/1805)). +- Fixed markdown blockquotes dropping nested list content in the TUI renderer ([#1787](https://github.com/badlogic/companion-mono/issues/1787)). +- Fixed TUI width handling for regional indicator symbols to prevent wrap drift and stale characters during streaming ([#1783](https://github.com/badlogic/companion-mono/issues/1783)). +- Fixed Kitty CSI-u handling to ignore unsupported modifiers so modifier-only events do not insert printable characters ([#1807](https://github.com/badlogic/companion-mono/issues/1807)). +- Fixed single-line paste handling to insert text atomically and avoid repeated `@` autocomplete scans on large pastes ([#1812](https://github.com/badlogic/companion-mono/issues/1812)). +- Fixed extension loading with the new `@mariozechner/companion-ai/oauth` export path by aliasing the oauth subpath in the extension loader and development path mapping ([#1814](https://github.com/badlogic/companion-mono/issues/1814)). +- Fixed browser-safe provider loading regressions by preloading the Bedrock provider module in compiled Bun binaries and rebuilding binaries against fresh workspace dependencies ([#1814](https://github.com/badlogic/companion-mono/issues/1814)). +- Fixed GNU screen terminal detection by downgrading theme output to 256-color mode for `screen*` TERM values ([#1809](https://github.com/badlogic/companion-mono/issues/1809)). +- Fixed branch summarization queue handling so messages typed while summaries are generated are processed correctly ([#1803](https://github.com/badlogic/companion-mono/issues/1803)). +- Fixed compaction summary requests to avoid reasoning output for non-reasoning models ([#1793](https://github.com/badlogic/companion-mono/issues/1793)). +- Fixed overflow auto-compaction cascades so a single overflow does not trigger repeated compaction loops. +- Fixed `models.json` to allow provider-scoped custom model ids and model-level `baseUrl` overrides ([#1759](https://github.com/badlogic/companion-mono/issues/1759), [#1777](https://github.com/badlogic/companion-mono/issues/1777)). +- Fixed session selector display sanitization by stripping control characters from session display text ([#1747](https://github.com/badlogic/companion-mono/issues/1747)). +- Fixed Groq Qwen3 reasoning effort mapping for OpenAI-compatible models ([#1745](https://github.com/badlogic/companion-mono/issues/1745)). +- Fixed Bedrock `AWS_PROFILE` region resolution by honoring profile `region` values ([#1800](https://github.com/badlogic/companion-mono/issues/1800)). +- Fixed Gemini 3.1 thinking-level detection for `google` and `google-vertex` providers ([#1785](https://github.com/badlogic/companion-mono/issues/1785)). +- Fixed browser bundling compatibility for `@mariozechner/companion-ai` by removing Node-only side effects from default browser import paths ([#1814](https://github.com/badlogic/companion-mono/issues/1814)). + +## [0.55.4] - 2026-03-02 + +### New Features + +- Runtime tool registration now applies immediately in active sessions. Tools registered via `companion.registerTool()` after startup are available to `companion.getAllTools()` and the LLM without `/reload` ([docs/extensions.md](docs/extensions.md), [examples/extensions/dynamic-tools.ts](examples/extensions/dynamic-tools.ts), [#1720](https://github.com/badlogic/companion-mono/issues/1720)). +- Tool definitions can customize the default system prompt with `promptSnippet` (`Available tools`) and `promptGuidelines` (`Guidelines`) while the tool is active ([docs/extensions.md](docs/extensions.md), [#1720](https://github.com/badlogic/companion-mono/issues/1720)). +- Custom tool renderers can suppress transcript output without leaving extra spacing or empty transcript footprint in interactive rendering ([docs/extensions.md](docs/extensions.md), [#1719](https://github.com/badlogic/companion-mono/pull/1719)). + +### Added + +- Added optional `promptSnippet` to `ToolDefinition` for one-line entries in the default system prompt's `Available tools` section. Active extension tools appear there when registered and active ([#1237](https://github.com/badlogic/companion-mono/pull/1237) by [@semtexzv](https://github.com/semtexzv)). +- Added optional `promptGuidelines` to `ToolDefinition` so active tools can append tool-specific bullets to the default system prompt `Guidelines` section ([#1720](https://github.com/badlogic/companion-mono/issues/1720)). + +### Fixed + +- Fixed `companion.registerTool()` dynamic registration after session initialization. Tools registered in `session_start` and later handlers now refresh immediately, become active, and are visible to the LLM without `/reload` ([#1720](https://github.com/badlogic/companion-mono/issues/1720)) +- Fixed session message persistence ordering by serializing `AgentSession` event processing, preventing `toolResult` entries from being written before their corresponding assistant tool-call messages when extension handlers are asynchronous ([#1717](https://github.com/badlogic/companion-mono/issues/1717)) +- Fixed spacing artifacts when custom tool renderers intentionally suppress per-call transcript output, including extra blank rows in interactive streaming and non-zero transcript footprint for empty custom renders ([#1719](https://github.com/badlogic/companion-mono/pull/1719) by [@alasano](https://github.com/alasano)) +- Fixed `session.prompt()` returning before retry completion by creating the retry promise synchronously at `agent_end` dispatch, which closes a race when earlier queued event handlers are async ([#1726](https://github.com/badlogic/companion-mono/pull/1726) by [@pasky](https://github.com/pasky)) + +## [0.55.3] - 2026-02-27 + +### Fixed + +- Changed the default image paste keybinding on Windows to `alt+v` to avoid `ctrl+v` conflicts with terminal paste behavior ([#1682](https://github.com/badlogic/companion-mono/pull/1682) by [@mrexodia](https://github.com/mrexodia)). + +## [0.55.2] - 2026-02-27 + +### New Features + +- Extensions can dynamically remove custom providers via `companion.unregisterProvider(name)`, restoring any built-in models that were overridden, without requiring `/reload` ([docs](https://github.com/badlogic/companion-mono/blob/main/packages/coding-agent/docs/custom-provider.md)). +- `companion.registerProvider()` now takes effect immediately when called outside the initial extension load phase (e.g. from a command handler), removing the need for `/reload` after late registrations. + +### Added + +- `companion.unregisterProvider(name)` removes a dynamically registered provider and its models from the registry without requiring `/reload`. Built-in models that were overridden by the provider are restored ([#1669](https://github.com/badlogic/companion-mono/pull/1669) by [@aliou](https://github.com/aliou)). + +### Fixed + +- `companion.registerProvider()` now takes effect immediately when called after the initial extension load phase (e.g. from a command handler). Previously the registration sat in a pending queue that was never flushed until the next `/reload` ([#1669](https://github.com/badlogic/companion-mono/pull/1669) by [@aliou](https://github.com/aliou)). +- Fixed duplicate session headers when forking from a point before any assistant message. `createBranchedSession` now defers file creation to `_persist()` when the branched path has no assistant message, matching the `newSession()` contract ([#1672](https://github.com/badlogic/companion-mono/pull/1672) by [@w-winter](https://github.com/w-winter)). +- Fixed SIGINT being delivered to companion while the process is suspended (e.g. via `ctrl+z`), which could corrupt terminal state on resume ([#1668](https://github.com/badlogic/companion-mono/pull/1668) by [@aliou](https://github.com/aliou)). +- Fixed Z.ai thinking control using wrong parameter name, causing thinking to always be enabled and wasting tokens/latency ([#1674](https://github.com/badlogic/companion-mono/pull/1674) by [@okuyam2y](https://github.com/okuyam2y)) +- Fixed `redacted_thinking` blocks being silently dropped during Anthropic streaming, and related issues with interleaved-thinking beta headers and temperature being sent alongside extended thinking ([#1665](https://github.com/badlogic/companion-mono/pull/1665) by [@tctev](https://github.com/tctev)) +- Fixed `(external, cli)` user-agent flag causing 401 errors on Anthropic setup-token endpoint ([#1677](https://github.com/badlogic/companion-mono/pull/1677) by [@LazerLance777](https://github.com/LazerLance777)) +- Fixed crash when OpenAI-compatible provider returns a chunk with no `choices` array ([#1671](https://github.com/badlogic/companion-mono/issues/1671)) + +## [0.55.1] - 2026-02-26 + +### New Features + +- Added offline startup mode via `--offline` (or `COMPANION_OFFLINE`) to disable startup network operations, with startup network timeouts to avoid hangs in restricted or offline environments. +- Added `gemini-3.1-pro-preview` model support to the `google-gemini-cli` provider ([#1599](https://github.com/badlogic/companion-mono/pull/1599) by [@audichuang](https://github.com/audichuang)). + +### Fixed + +- Fixed offline startup hangs by adding offline startup behavior and network timeouts during managed tool setup ([#1631](https://github.com/badlogic/companion-mono/pull/1631) by [@mcollina](https://github.com/mcollina)) +- Fixed Windows VT input initialization in ESM by loading koffi via createRequire, avoiding runtime and bundling issues in end-user environments ([#1627](https://github.com/badlogic/companion-mono/pull/1627) by [@kaste](https://github.com/kaste)) +- Fixed managed `fd`/`rg` bootstrap on Windows in Git Bash by using `extract-zip` for `.zip` archives, searching extracted layouts more robustly, and isolating extraction temp directories to avoid concurrent download races ([#1348](https://github.com/badlogic/companion-mono/issues/1348)) +- Fixed extension loading on Windows when resolving `@sinclair/typebox` aliases so subpath imports like `@sinclair/typebox/compiler` resolve correctly. +- Fixed adaptive thinking for Claude Sonnet 4.6 in Anthropic and Bedrock providers, and clamped unsupported `xhigh` effort values to supported levels ([#1548](https://github.com/badlogic/companion-mono/pull/1548) by [@tctev](https://github.com/tctev)) +- Fixed Vertex ADC credential detection race by avoiding caching a false negative during async import initialization ([#1550](https://github.com/badlogic/companion-mono/pull/1550) by [@jeremiahgaylord-web](https://github.com/jeremiahgaylord-web)) +- Fixed subagent extension example to resolve user agents from the configured agent directory instead of hardcoded paths ([#1559](https://github.com/badlogic/companion-mono/pull/1559) by [@tianshuwang](https://github.com/tianshuwang)) + +## [0.55.0] - 2026-02-24 + +### Breaking Changes + +- Resource precedence for extensions, skills, prompts, themes, and slash-command name collisions is now project-first (`cwd/.companion`) before user-global (`~/.companion/agent`). If you relied on global resources overriding project resources with the same names, rename or reorder your resources. +- Extension registration conflicts no longer unload the entire later extension. All extensions stay loaded, and conflicting command/tool/flag names are resolved by first registration in load order. + +## [0.54.2] - 2026-02-23 + +### Fixed + +- Fixed `.companion` folder being created unnecessarily when only reading settings. The folder is now only created when writing project-specific settings. +- Fixed extension-driven runtime theme changes to persist in settings so `/settings` reflects the active `currentTheme` after `ctx.ui.setTheme(...)` ([#1483](https://github.com/badlogic/companion-mono/pull/1483) by [@ferologics](https://github.com/ferologics)) +- Fixed interactive mode freezes during large streaming `write` tool calls by using incremental syntax highlighting while partial arguments stream, with a final full re-highlight after tool-call arguments complete. + +## [0.54.1] - 2026-02-22 + +### Fixed + +- Externalized koffi from bun binary builds, reducing archive sizes by ~15MB per platform (e.g. darwin-arm64: 43MB -> 28MB). Koffi's Windows-only `.node` file is now shipped alongside the Windows binary only. + +## [0.54.0] - 2026-02-19 + +### Added + +- Added default skill auto-discovery for `.agents/skills` locations. Pi now discovers project skills from `.agents/skills` in `cwd` and ancestor directories (up to git repo root, or filesystem root when not in a repo), and global skills from `~/.agents/skills`, in addition to existing `.companion` skill paths. + +## [0.53.1] - 2026-02-19 + +### Changed + +- Added Gemini 3.1 model catalog entries for all built-in providers that currently expose it: `google`, `google-vertex`, `opencode`, `openrouter`, and `vercel-ai-gateway`. +- Added Claude Opus 4.6 Thinking to the `google-antigravity` model catalog. + +## [0.53.0] - 2026-02-17 + +### Breaking Changes + +- `SettingsManager` persistence semantics changed for SDK consumers. Setters now update in-memory state immediately and queue disk writes. Code that requires durable on-disk settings must call `await settingsManager.flush()`. +- `AuthStorage` constructor is no longer public. Use static factories (`AuthStorage.create(...)`, `AuthStorage.fromStorage(...)`, `AuthStorage.inMemory(...)`). This breaks code that used `new AuthStorage(...)` directly. + +### Added + +- Added `SettingsManager.drainErrors()` for caller-controlled settings I/O error handling without manager-side console output. +- Added auth storage backends (`FileAuthStorageBackend`, `InMemoryAuthStorageBackend`) and `AuthStorage.fromStorage(...)` for storage-first auth persistence wiring. +- Added Anthropic `claude-sonnet-4-6` model fallback entry to generated model definitions. + +### Changed + +- `SettingsManager` now uses scoped storage abstraction with per-scope locked read/merge/write persistence for global and project settings. + +### Fixed + +- Fixed project settings persistence to preserve unrelated external edits via merge-on-write, while still applying in-memory changes for modified keys. +- Fixed auth credential persistence to preserve unrelated external edits to `auth.json` via locked read/merge/write updates. +- Fixed auth load/persist error surfacing by buffering errors and exposing them via `AuthStorage.drainErrors()`. + +## [0.52.12] - 2026-02-13 + +### Added + +- Added `transport` setting (`"sse"`, `"websocket"`, `"auto"`) to `/settings` and `settings.json` for providers that support multiple transports (currently `openai-codex` via OpenAI Codex Responses). + +### Changed + +- Interactive mode now applies transport changes immediately to the active agent session. +- Settings migration now maps legacy `websockets: boolean` to the new `transport` setting. + +## [0.52.11] - 2026-02-13 + +### Added + +- Added MiniMax M2.5 model entries for `minimax`, `minimax-cn`, `openrouter`, and `vercel-ai-gateway` providers, plus `minimax-m2.5-free` for `opencode`. + +## [0.52.10] - 2026-02-12 + +### New Features + +- Extension terminal input interception via `terminal_input`, allowing extensions to consume or transform raw input before normal TUI handling. See [docs/extensions.md](docs/extensions.md). +- Expanded CLI model selection: `--model` now supports `provider/id`, fuzzy matching, and `:` suffixes. See [README.md](README.md) and [docs/models.md](docs/models.md). +- Safer package source handling with stricter git source parsing and improved local path normalization. See [docs/packages.md](docs/packages.md). +- New built-in model definition `gpt-5.3-codex-spark` for OpenAI and OpenAI Codex providers. +- Improved OpenAI stream robustness for malformed trailing tool-call JSON in partial chunks. +- Added built-in GLM-5 model support via z.ai and OpenRouter provider catalogs. + +### Breaking Changes + +- `ContextUsage.tokens` and `ContextUsage.percent` are now `number | null`. After compaction, context token count is unknown until the next LLM response, so these fields return `null`. Extensions that read `ContextUsage` must handle the `null` case. Removed `usageTokens`, `trailingTokens`, and `lastUsageIndex` fields from `ContextUsage` (implementation details that should not have been public) ([#1382](https://github.com/badlogic/companion-mono/pull/1382) by [@ferologics](https://github.com/ferologics)) +- Git source parsing is now strict without `git:` prefix: only protocol URLs are treated as git (`https://`, `http://`, `ssh://`, `git://`). Shorthand sources like `github.com/org/repo` and `git@github.com:org/repo` now require the `git:` prefix. ([#1426](https://github.com/badlogic/companion-mono/issues/1426)) + +### Added + +- Added extension event forwarding for message and tool execution lifecycles (`message_start`, `message_update`, `message_end`, `tool_execution_start`, `tool_execution_update`, `tool_execution_end`) ([#1375](https://github.com/badlogic/companion-mono/pull/1375) by [@sumeet](https://github.com/sumeet)) +- Added `terminal_input` extension event to intercept, consume, or transform raw terminal input before normal TUI handling. +- Added `gpt-5.3-codex-spark` model definition for OpenAI and OpenAI Codex providers (research preview). + +### Changed + +- Routed GitHub Copilot Claude 4.x models through Anthropic Messages API, with updated Copilot header handling for Claude model requests. + +### Fixed + +- Fixed context usage percentage in footer showing stale pre-compaction values. After compaction the footer now shows `?/200k` until the next LLM response provides accurate usage ([#1382](https://github.com/badlogic/companion-mono/pull/1382) by [@ferologics](https://github.com/ferologics)) +- Fixed `_checkCompaction()` using the first compaction entry instead of the latest, which could cause incorrect overflow detection with multiple compactions ([#1382](https://github.com/badlogic/companion-mono/pull/1382) by [@ferologics](https://github.com/ferologics)) +- `--model` now works without `--provider`, supports `provider/id` syntax, fuzzy matching, and `:` suffix (e.g., `--model sonnet:high`, `--model openai/gpt-4o`) ([#1350](https://github.com/badlogic/companion-mono/pull/1350) by [@mitsuhiko](https://github.com/mitsuhiko)) +- Fixed local package path normalization for extension sources while tightening git source parsing rules ([#1426](https://github.com/badlogic/companion-mono/issues/1426)) +- Fixed extension terminal input listeners not being cleared during session resets, which could leave stale handlers active. +- Fixed Termux bootstrap package name for `fd` installation ([#1433](https://github.com/badlogic/companion-mono/pull/1433)) +- Fixed `@` file autocomplete fuzzy matching to prioritize path-prefix and segment matches for nested paths ([#1423](https://github.com/badlogic/companion-mono/issues/1423)) +- Fixed OpenAI streaming tool-call parsing to tolerate malformed trailing JSON in partial chunks ([#1424](https://github.com/badlogic/companion-mono/issues/1424)) + +## [0.52.9] - 2026-02-08 + +### New Features + +- Extensions can trigger a full runtime reload via `ctx.reload()`, useful for hot-reloading configuration or restarting the agent. See [docs/extensions.md](docs/extensions.md) and the [`reload-runtime` example](examples/extensions/reload-runtime.ts) ([#1371](https://github.com/badlogic/companion-mono/issues/1371)) +- Short CLI disable aliases: `-ne` (`--no-extensions`), `-ns` (`--no-skills`), and `-np` (`--no-prompt-templates`) for faster interactive usage and scripting. +- `/export` HTML now includes collapsible tool input schemas (parameter names, types, and descriptions), improving session review and sharing workflows ([#1416](https://github.com/badlogic/companion-mono/pull/1416) by [@marchellodev](https://github.com/marchellodev)). +- `companion.getAllTools()` now exposes tool parameters in addition to name and description, enabling richer extension integrations ([#1416](https://github.com/badlogic/companion-mono/pull/1416) by [@marchellodev](https://github.com/marchellodev)). + +### Added + +- Added `ctx.reload()` to the extension API for programmatic runtime reload ([#1371](https://github.com/badlogic/companion-mono/issues/1371)) +- Added short aliases for disable flags: `-ne` for `--no-extensions`, `-ns` for `--no-skills`, `-np` for `--no-prompt-templates` +- `/export` HTML now includes tool input schema (parameter names, types, descriptions) in a collapsible section under each tool ([#1416](https://github.com/badlogic/companion-mono/pull/1416) by [@marchellodev](https://github.com/marchellodev)) +- `companion.getAllTools()` now returns tool parameters in addition to name and description ([#1416](https://github.com/badlogic/companion-mono/pull/1416) by [@marchellodev](https://github.com/marchellodev)) + +### Fixed + +- Fixed extension source parsing so dot-prefixed local paths (for example `.companion/extensions/foo.ts`) are treated as local paths instead of git URLs +- Fixed fd/rg download failing on Windows due to `unzip` not being available; now uses `tar` for both `.tar.gz` and `.zip` extraction, with proper error reporting ([#1348](https://github.com/badlogic/companion-mono/issues/1348)) +- Fixed RPC mode documentation incorrectly stating `ctx.hasUI` is `false`; it is `true` because dialog and fire-and-forget UI methods work via the RPC sub-protocol. Also documented missing unsupported/degraded methods (`pasteToEditor`, `getAllThemes`, `getTheme`, `setTheme`) ([#1411](https://github.com/badlogic/companion-mono/pull/1411) by [@aliou](https://github.com/aliou)) +- Fixed `rg` not available in bash tool by downloading it at startup alongside `fd` ([#1348](https://github.com/badlogic/companion-mono/issues/1348)) +- Fixed `custom-compaction` example to use `ModelRegistry` ([#1387](https://github.com/badlogic/companion-mono/issues/1387)) +- Google providers now support full JSON Schema in tool declarations (anyOf, oneOf, const, etc.) ([#1398](https://github.com/badlogic/companion-mono/issues/1398) by [@jarib](https://github.com/jarib)) +- Reverted incorrect Antigravity model change: `claude-opus-4-6-thinking` back to `claude-opus-4-5-thinking` (model does not exist on Antigravity endpoint) +- Updated the Antigravity system instruction to a more compact version for Google Gemini CLI compatibility +- Corrected opencode context windows for Claude Sonnet 4 and 4.5 ([#1383](https://github.com/badlogic/companion-mono/issues/1383)) +- Fixed subagent example unknown-agent errors to include available agent names ([#1414](https://github.com/badlogic/companion-mono/pull/1414) by [@dnouri](https://github.com/dnouri)) + +## [0.52.8] - 2026-02-07 + +### New Features + +- Emacs-style kill ring (`ctrl+k`/`ctrl+y`/`alt+y`) and undo (`ctrl+z`) in the editor input ([#1373](https://github.com/badlogic/companion-mono/pull/1373) by [@Perlence](https://github.com/Perlence)) +- OpenRouter `auto` model alias (`openrouter:auto`) for automatic model routing ([#1361](https://github.com/badlogic/companion-mono/pull/1361) by [@yogasanas](https://github.com/yogasanas)) +- Extensions can programmatically paste content into the editor via `pasteToEditor` in the extension UI context. See [docs/extensions.md](docs/extensions.md) ([#1351](https://github.com/badlogic/companion-mono/pull/1351) by [@kaofelix](https://github.com/kaofelix)) +- `companion --help` and invalid subcommands now show helpful output instead of failing silently ([#1347](https://github.com/badlogic/companion-mono/pull/1347) by [@ferologics](https://github.com/ferologics)) + +### Added + +- Added `pasteToEditor` to extension UI context for programmatic editor paste ([#1351](https://github.com/badlogic/companion-mono/pull/1351) by [@kaofelix](https://github.com/kaofelix)) +- Added package subcommand help and friendly error messages for invalid commands ([#1347](https://github.com/badlogic/companion-mono/pull/1347) by [@ferologics](https://github.com/ferologics)) +- Added OpenRouter `auto` model alias for automatic model routing ([#1361](https://github.com/badlogic/companion-mono/pull/1361) by [@yogasanas](https://github.com/yogasanas)) +- Added kill ring (ctrl+k/ctrl+y/alt+y) and undo (ctrl+z) support to the editor input ([#1373](https://github.com/badlogic/companion-mono/pull/1373) by [@Perlence](https://github.com/Perlence)) + +### Changed + +- Replaced Claude Opus 4.5 with Opus 4.6 as default model ([#1345](https://github.com/badlogic/companion-mono/pull/1345) by [@calvin-hpnet](https://github.com/calvin-hpnet)) + +### Fixed + +- Fixed temporary git package caches (`-e `) to refresh on cache hits for unpinned sources, including detached/no-upstream checkouts +- Fixed aborting retries when an extension customizes the editor ([#1364](https://github.com/badlogic/companion-mono/pull/1364) by [@Perlence](https://github.com/Perlence)) +- Fixed autocomplete not propagating to custom editors created by extensions ([#1372](https://github.com/badlogic/companion-mono/pull/1372) by [@Perlence](https://github.com/Perlence)) +- Fixed extension shutdown to use clean TUI shutdown path, preventing orphaned processes + +## [0.52.7] - 2026-02-06 + +### New Features + +- Per-model overrides in `models.json` via `modelOverrides`, allowing customization of built-in provider models without replacing provider model lists. See [docs/models.md#per-model-overrides](docs/models.md#per-model-overrides). +- `models.json` provider `models` now merge with built-in models by `id`, so custom models can be added or replace matching built-ins without full provider replacement. See [docs/models.md#overriding-built-in-providers](docs/models.md#overriding-built-in-providers). +- Bedrock proxy support for unauthenticated endpoints via `AWS_BEDROCK_SKIP_AUTH` and `AWS_BEDROCK_FORCE_HTTP1`. See [docs/providers.md](docs/providers.md). + +### Breaking Changes + +- Changed `models.json` provider `models` behavior from full replacement to merge-by-id with built-in models. Built-in models are now kept by default, and custom models upsert by `id`. + +### Added + +- Added `modelOverrides` in `models.json` to customize individual built-in models per provider without full provider replacement ([#1332](https://github.com/badlogic/companion-mono/pull/1332) by [@charles-cooper](https://github.com/charles-cooper)) +- Added `AWS_BEDROCK_SKIP_AUTH` and `AWS_BEDROCK_FORCE_HTTP1` environment variables for connecting to unauthenticated Bedrock proxies ([#1320](https://github.com/badlogic/companion-mono/pull/1320) by [@virtuald](https://github.com/virtuald)) + +### Fixed + +- Fixed extra spacing between thinking-only assistant content and subsequent tool execution blocks when assistant messages contain no text +- Fixed queued steering/follow-up/custom messages remaining stuck after threshold auto-compaction by resuming the agent loop when Agent-level queues still contain pending messages ([#1312](https://github.com/badlogic/companion-mono/pull/1312) by [@ferologics](https://github.com/ferologics)) +- Fixed `tool_result` extension handlers to chain result patches across handlers instead of last-handler-wins behavior ([#1280](https://github.com/badlogic/companion-mono/issues/1280)) +- Fixed compromised auth lock files being handled gracefully instead of crashing auth storage initialization ([#1322](https://github.com/badlogic/companion-mono/issues/1322)) +- Fixed Bedrock adaptive thinking handling for Claude Opus 4.6 with interleaved thinking beta responses ([#1323](https://github.com/badlogic/companion-mono/pull/1323) by [@markusylisiurunen](https://github.com/markusylisiurunen)) +- Fixed OpenAI Responses API requests to use `store: false` by default to avoid server-side history logging ([#1308](https://github.com/badlogic/companion-mono/issues/1308)) +- Fixed interactive mode startup by initializing autocomplete after resources are loaded ([#1328](https://github.com/badlogic/companion-mono/issues/1328)) +- Fixed `modelOverrides` merge behavior for nested objects and documented usage details ([#1062](https://github.com/badlogic/companion-mono/issues/1062)) + +## [0.52.6] - 2026-02-05 + +### Breaking Changes + +- Removed `/exit` command handling. Use `/quit` to exit ([#1303](https://github.com/badlogic/companion-mono/issues/1303)) + +### Fixed + +- Fixed `/quit` being shadowed by fuzzy slash command autocomplete matches from skills by adding `/quit` to built-in command autocomplete ([#1303](https://github.com/badlogic/companion-mono/issues/1303)) +- Fixed local package source parsing and settings normalization regression that misclassified relative paths as git URLs and prevented globally installed local packages from loading after restart ([#1304](https://github.com/badlogic/companion-mono/issues/1304)) + +## [0.52.5] - 2026-02-05 + +### Fixed + +- Fixed thinking level capability detection so Anthropic Opus 4.6 models expose `xhigh` in selectors and cycling + +## [0.52.4] - 2026-02-05 + +### Fixed + +- Fixed extensions setting not respecting `package.json` `companion.extensions` manifest when directory is specified directly ([#1302](https://github.com/badlogic/companion-mono/pull/1302) by [@hjanuschka](https://github.com/hjanuschka)) + +## [0.52.3] - 2026-02-05 + +### Fixed + +- Fixed git package parsing fallback for unknown hosts so enterprise git sources like `git:github.tools.sap/org/repo` are treated as git packages instead of local paths +- Fixed git package `@ref` parsing for shorthand, HTTPS, and SSH source formats, including branch refs with slashes +- Fixed Bedrock default model ID from `us.anthropic.claude-opus-4-6-v1:0` to `us.anthropic.claude-opus-4-6-v1` +- Fixed Bedrock Opus 4.6 model metadata (IDs, cache pricing) and added missing EU profile +- Fixed Claude Opus 4.6 context window metadata to 200000 for Anthropic and OpenCode providers + +## [0.52.2] - 2026-02-05 + +### Changed + +- Updated default model for `anthropic` provider to `claude-opus-4-6` +- Updated default model for `openai-codex` provider to `gpt-5.3-codex` +- Updated default model for `amazon-bedrock` provider to `us.anthropic.claude-opus-4-6-v1:0` +- Updated default model for `vercel-ai-gateway` provider to `anthropic/claude-opus-4-6` +- Updated default model for `opencode` provider to `claude-opus-4-6` + +## [0.52.1] - 2026-02-05 + +## [0.52.0] - 2026-02-05 + +### New Features + +- Claude Opus 4.6 model support. +- GPT-5.3 Codex model support (OpenAI Codex provider only). +- SSH URL support for git packages. See [docs/packages.md](docs/packages.md). +- `auth.json` API keys now support shell command resolution (`!command`) and environment variable lookup. See [docs/providers.md](docs/providers.md). +- Model selectors now display the selected model name. + +### Added + +- API keys in `auth.json` now support shell command resolution (`!command`) and environment variable lookup, matching the behavior in `models.json` +- Added `minimal-mode.ts` example extension demonstrating how to override built-in tool rendering for a minimal display mode +- Added Claude Opus 4.6 model to the model catalog +- Added GPT-5.3 Codex model to the model catalog (OpenAI Codex provider only) +- Added SSH URL support for git packages ([#1287](https://github.com/badlogic/companion-mono/pull/1287) by [@markusn](https://github.com/markusn)) +- Model selectors now display the selected model name ([#1275](https://github.com/badlogic/companion-mono/pull/1275) by [@haoqixu](https://github.com/haoqixu)) + +### Fixed + +- Fixed HTML export losing indentation in ANSI-rendered tool output (e.g. JSON code blocks in custom tool results) ([#1269](https://github.com/badlogic/companion-mono/pull/1269) by [@aliou](https://github.com/aliou)) +- Fixed images being silently dropped when `prompt()` is called with both `images` and `streamingBehavior` during streaming. `steer()`, `followUp()`, and the corresponding RPC commands now accept optional images. ([#1271](https://github.com/badlogic/companion-mono/pull/1271) by [@aliou](https://github.com/aliou)) +- CLI `--help`, `--version`, `--list-models`, and `--export` now exit even if extensions keep the event loop alive ([#1285](https://github.com/badlogic/companion-mono/pull/1285) by [@ferologics](https://github.com/ferologics)) +- Fixed crash when models send malformed tool arguments (objects instead of strings) ([#1259](https://github.com/badlogic/companion-mono/issues/1259)) +- Fixed custom message expand state not being respected ([#1258](https://github.com/badlogic/companion-mono/pull/1258) by [@Gurpartap](https://github.com/Gurpartap)) +- Fixed skill loader to respect .gitignore, .ignore, and .fdignore when scanning directories + +## [0.51.6] - 2026-02-04 + +### New Features + +- Configurable resume keybinding action for opening the session resume selector. See [docs/keybindings.md](docs/keybindings.md). ([#1249](https://github.com/badlogic/companion-mono/pull/1249) by [@juanibiapina](https://github.com/juanibiapina)) + +### Added + +- Added `resume` as a configurable keybinding action, allowing users to bind a key to open the session resume selector (like `newSession`, `tree`, and `fork`) ([#1249](https://github.com/badlogic/companion-mono/pull/1249) by [@juanibiapina](https://github.com/juanibiapina)) + +### Changed + +- Slash command menu now triggers on the first line even when other lines have content, allowing commands to be prepended to existing text ([#1227](https://github.com/badlogic/companion-mono/pull/1227) by [@aliou](https://github.com/aliou)) + +### Fixed + +- Ignored unknown skill frontmatter fields when loading skills +- Fixed `/reload` not picking up changes in global settings.json ([#1241](https://github.com/badlogic/companion-mono/issues/1241)) +- Fixed forked sessions to persist the user message after forking +- Fixed forked sessions to write to new session files instead of the parent ([#1242](https://github.com/badlogic/companion-mono/issues/1242)) +- Fixed local package removal to normalize paths before comparison ([#1243](https://github.com/badlogic/companion-mono/issues/1243)) +- Fixed OpenAI Codex Responses provider to respect configured baseUrl ([#1244](https://github.com/badlogic/companion-mono/issues/1244)) +- Fixed `/settings` crashing in narrow terminals by handling small widths in the settings list ([#1246](https://github.com/badlogic/companion-mono/pull/1246) by [@haoqixu](https://github.com/haoqixu)) +- Fixed Unix bash detection to fall back to PATH lookup when `/bin/bash` is unavailable, including Termux setups ([#1230](https://github.com/badlogic/companion-mono/pull/1230) by [@VaclavSynacek](https://github.com/VaclavSynacek)) + +## [0.51.5] - 2026-02-04 + +### Changed + +- Changed Bedrock model generation to drop legacy workarounds now handled upstream ([#1239](https://github.com/badlogic/companion-mono/pull/1239) by [@unexge](https://github.com/unexge)) + +### Fixed + +- Fixed Windows package installs regression by using shell execution instead of `.cmd` resolution ([#1220](https://github.com/badlogic/companion-mono/issues/1220)) + +## [0.51.4] - 2026-02-03 + +### New Features + +- Share URLs now default to companion.dev, graciously donated by exe.dev. + +### Changed + +- Share URLs now use companion.dev by default while shittycodingagent.ai and buildwithpi.ai continue to work. + +### Fixed + +- Fixed input scrolling to avoid splitting emoji sequences ([#1228](https://github.com/badlogic/companion-mono/pull/1228) by [@haoqixu](https://github.com/haoqixu)) + +## [0.51.3] - 2026-02-03 + +### New Features + +- Command discovery for extensions via `ExtensionAPI.getCommands()`, with `commands.ts` example for invocation patterns. See [docs/extensions.md#pigetcommands](docs/extensions.md#pigetcommands) and [examples/extensions/commands.ts](examples/extensions/commands.ts). +- Local path support for `companion install` and `companion remove`, with relative path resolution against the settings file. See [docs/packages.md#local-paths](docs/packages.md#local-paths). + +### Breaking Changes + +- RPC `get_commands` response and `SlashCommandSource` type: renamed `"template"` to `"prompt"` for consistency with the rest of the codebase + +### Added + +- Added `ExtensionAPI.getCommands()` to let extensions list available slash commands (extensions, prompt templates, skills) for invocation via `prompt` ([#1210](https://github.com/badlogic/companion-mono/pull/1210) by [@w-winter](https://github.com/w-winter)) +- Added `commands.ts` example extension and exported `SlashCommandInfo` types for command discovery integrations ([#1210](https://github.com/badlogic/companion-mono/pull/1210) by [@w-winter](https://github.com/w-winter)) +- Added local path support for `companion install` and `companion remove` with relative paths stored against the target settings file ([#1216](https://github.com/badlogic/companion-mono/issues/1216)) + +### Fixed + +- Fixed default thinking level persistence so settings-derived defaults are saved and restored correctly +- Fixed Windows package installs by resolving `npm.cmd` when `npm` is not directly executable ([#1220](https://github.com/badlogic/companion-mono/issues/1220)) +- Fixed xhigh thinking level support check to accept gpt-5.2 model IDs ([#1209](https://github.com/badlogic/companion-mono/issues/1209)) + +## [0.51.2] - 2026-02-03 + +### New Features + +- Extension tool output expansion controls via ExtensionUIContext getToolsExpanded and setToolsExpanded. See [docs/extensions.md](docs/extensions.md) and [docs/rpc.md](docs/rpc.md). + +### Added + +- Added ExtensionUIContext getToolsExpanded and setToolsExpanded for controlling tool output expansion ([#1199](https://github.com/badlogic/companion-mono/pull/1199) by [@academo](https://github.com/academo)) +- Added install method detection to show package manager specific update instructions ([#1203](https://github.com/badlogic/companion-mono/pull/1203) by [@Itsnotaka](https://github.com/Itsnotaka)) + +### Fixed + +- Fixed Kitty key release events leaking to parent shell over slow SSH connections by draining stdin for up to 1s on exit ([#1204](https://github.com/badlogic/companion-mono/issues/1204)) +- Fixed legacy newline handling in the editor to preserve previous newline behavior +- Fixed @ autocomplete to include hidden paths +- Fixed submit fallback to honor configured keybindings +- Fixed extension commands conflicting with built-in commands by skipping them ([#1196](https://github.com/badlogic/companion-mono/pull/1196) by [@haoqixu](https://github.com/haoqixu)) +- Fixed @-prefixed tool paths failing to resolve by stripping the prefix ([#1206](https://github.com/badlogic/companion-mono/issues/1206)) +- Fixed install method detection to avoid stale cached results + +## [0.51.1] - 2026-02-02 + +### New Features + +- **Extension API switchSession**: Extensions can now programmatically switch sessions via `ctx.switchSession(sessionPath)`. See [docs/extensions.md](docs/extensions.md). ([#1187](https://github.com/badlogic/companion-mono/issues/1187)) +- **Clear on shrink setting**: New `terminal.clearOnShrink` setting keeps the editor and footer pinned to the bottom of the terminal when content shrinks. May cause some flicker due to redraws. Disabled by default. Enable via `/settings` or `COMPANION_CLEAR_ON_SHRINK=1` env var. + +### Fixed + +- Fixed scoped models not finding valid credentials after logout ([#1194](https://github.com/badlogic/companion-mono/pull/1194) by [@terrorobe](https://github.com/terrorobe)) +- Fixed Ctrl+D exit closing the parent SSH session due to stdin buffer race condition ([#1185](https://github.com/badlogic/companion-mono/issues/1185)) +- Fixed emoji cursor positioning in editor input ([#1183](https://github.com/badlogic/companion-mono/pull/1183) by [@haoqixu](https://github.com/haoqixu)) + +## [0.51.0] - 2026-02-01 + +### Breaking Changes + +- **Extension tool signature change**: `ToolDefinition.execute` now uses `(toolCallId, params, signal, onUpdate, ctx)` parameter order to match `AgentTool.execute`. Previously it was `(toolCallId, params, onUpdate, ctx, signal)`. This makes wrapping built-in tools trivial since the first four parameters now align. Update your extensions by swapping the `signal` and `onUpdate` parameters: + + ```ts + // Before + async execute(toolCallId, params, onUpdate, ctx, signal) { ... } + + // After + async execute(toolCallId, params, signal, onUpdate, ctx) { ... } + ``` + +### New Features + +- **Android/Termux support**: Pi now runs on Android via Termux. Install with: + ```bash + pkg install nodejs termux-api git + npm install -g @mariozechner/companion-coding-agent + mkdir -p ~/.companion/agent + echo "You are running on Android in Termux." > ~/.companion/agent/AGENTS.md + ``` + Clipboard operations fall back gracefully when `termux-api` is unavailable. ([#1164](https://github.com/badlogic/companion-mono/issues/1164)) +- **Bash spawn hook**: Extensions can now intercept and modify bash commands before execution via `companion.setBashSpawnHook()`. Adjust the command string, working directory, or environment variables. See [docs/extensions.md](docs/extensions.md). ([#1160](https://github.com/badlogic/companion-mono/pull/1160) by [@mitsuhiko](https://github.com/mitsuhiko)) +- **Linux ARM64 musl support**: Pi now runs on Alpine Linux ARM64 (linux-arm64-musl) via updated clipboard dependency. +- **Nix/Guix support**: `COMPANION_PACKAGE_DIR` environment variable overrides the package path for content-addressed package managers where store paths tokenize poorly. See [README.md#environment-variables](README.md#environment-variables). ([#1153](https://github.com/badlogic/companion-mono/pull/1153) by [@odysseus0](https://github.com/odysseus0)) +- **Named session filter**: `/resume` picker now supports filtering to show only named sessions via Ctrl+N. Configurable via `toggleSessionNamedFilter` keybinding. See [docs/keybindings.md](docs/keybindings.md). ([#1128](https://github.com/badlogic/companion-mono/pull/1128) by [@w-winter](https://github.com/w-winter)) +- **Typed tool call events**: Extension developers can narrow `ToolCallEvent` types using `isToolCallEventType()` for better TypeScript support. See [docs/extensions.md#tool-call-events](docs/extensions.md#tool-call-events). ([#1147](https://github.com/badlogic/companion-mono/pull/1147) by [@giuseppeg](https://github.com/giuseppeg)) +- **Extension UI Protocol**: Full RPC documentation and examples for extension dialogs and notifications, enabling headless clients to support interactive extensions. See [docs/rpc.md#extension-ui-protocol](docs/rpc.md#extension-ui-protocol). ([#1144](https://github.com/badlogic/companion-mono/pull/1144) by [@aliou](https://github.com/aliou)) + +### Added + +- Added Linux ARM64 musl (Alpine Linux) support via clipboard dependency update +- Added Android/Termux support with graceful clipboard fallback ([#1164](https://github.com/badlogic/companion-mono/issues/1164)) +- Added bash tool spawn hook support for adjusting command, cwd, and env before execution ([#1160](https://github.com/badlogic/companion-mono/pull/1160) by [@mitsuhiko](https://github.com/mitsuhiko)) +- Added typed `ToolCallEvent.input` per tool with `isToolCallEventType()` type guard for narrowing built-in tool events ([#1147](https://github.com/badlogic/companion-mono/pull/1147) by [@giuseppeg](https://github.com/giuseppeg)) +- Exported `discoverAndLoadExtensions` from package to enable extension testing without a local repo clone ([#1148](https://github.com/badlogic/companion-mono/issues/1148)) +- Added Extension UI Protocol documentation to RPC docs covering all request/response types for extension dialogs and notifications ([#1144](https://github.com/badlogic/companion-mono/pull/1144) by [@aliou](https://github.com/aliou)) +- Added `rpc-demo.ts` example extension exercising all RPC-supported extension UI methods ([#1144](https://github.com/badlogic/companion-mono/pull/1144) by [@aliou](https://github.com/aliou)) +- Added `rpc-extension-ui.ts` TUI example client demonstrating the extension UI protocol with interactive dialogs ([#1144](https://github.com/badlogic/companion-mono/pull/1144) by [@aliou](https://github.com/aliou)) +- Added `COMPANION_PACKAGE_DIR` environment variable to override package path for content-addressed package managers (Nix, Guix) where store paths tokenize poorly ([#1153](https://github.com/badlogic/companion-mono/pull/1153) by [@odysseus0](https://github.com/odysseus0)) +- `/resume` session picker now supports named-only filter toggle (default Ctrl+N, configurable via `toggleSessionNamedFilter`) to show only named sessions ([#1128](https://github.com/badlogic/companion-mono/pull/1128) by [@w-winter](https://github.com/w-winter)) + +### Fixed + +- Fixed `companion update` not updating npm/git packages when called without arguments ([#1151](https://github.com/badlogic/companion-mono/issues/1151)) +- Fixed `models.json` validation requiring fields documented as optional. Model definitions now only require `id`; all other fields (`name`, `reasoning`, `input`, `cost`, `contextWindow`, `maxTokens`) have sensible defaults. ([#1146](https://github.com/badlogic/companion-mono/issues/1146)) +- Fixed models resolving relative paths in skill files from cwd instead of skill directory by adding explicit guidance to skills preamble ([#1136](https://github.com/badlogic/companion-mono/issues/1136)) +- Fixed tree selector losing focus state when navigating entries ([#1142](https://github.com/badlogic/companion-mono/pull/1142) by [@Perlence](https://github.com/Perlence)) +- Fixed `cacheRetention` option not being passed through in `buildBaseOptions` ([#1154](https://github.com/badlogic/companion-mono/issues/1154)) +- Fixed OAuth login/refresh not using HTTP proxy settings (`HTTP_PROXY`, `HTTPS_PROXY` env vars) ([#1132](https://github.com/badlogic/companion-mono/issues/1132)) +- Fixed `companion update ` installing packages locally when the source is only registered globally ([#1163](https://github.com/badlogic/companion-mono/pull/1163) by [@aliou](https://github.com/aliou)) +- Fixed tree navigation with summarization overwriting editor content typed during the summarization wait ([#1169](https://github.com/badlogic/companion-mono/pull/1169) by [@aliou](https://github.com/aliou)) + +## [0.50.9] - 2026-02-01 + +### Added + +- Added `titlebar-spinner.ts` example extension that shows a braille spinner animation in the terminal title while the agent is working. +- Added `COMPANION_AI_ANTIGRAVITY_VERSION` environment variable documentation to help text ([#1129](https://github.com/badlogic/companion-mono/issues/1129)) +- Added `cacheRetention` stream option with provider-specific mappings for prompt cache controls, defaulting to short retention ([#1134](https://github.com/badlogic/companion-mono/issues/1134)) + +## [0.50.8] - 2026-02-01 + +### Added + +- Added `newSession`, `tree`, and `fork` keybinding actions for `/new`, `/tree`, and `/fork` commands. All unbound by default. ([#1114](https://github.com/badlogic/companion-mono/pull/1114) by [@juanibiapina](https://github.com/juanibiapina)) +- Added `retry.maxDelayMs` setting to cap maximum server-requested retry delay. When a provider requests a longer delay (e.g., Google's "quota will reset after 5h"), the request fails immediately with an informative error instead of waiting silently. Default: 60000ms (60 seconds). ([#1123](https://github.com/badlogic/companion-mono/issues/1123)) +- `/resume` session picker: new "Threaded" sort mode (now default) displays sessions in a tree structure based on fork relationships. Compact one-line format with message count and age on the right. ([#1124](https://github.com/badlogic/companion-mono/pull/1124) by [@pasky](https://github.com/pasky)) +- Added Qwen CLI OAuth provider extension example. ([#940](https://github.com/badlogic/companion-mono/pull/940) by [@4h9fbZ](https://github.com/4h9fbZ)) +- Added OAuth `modifyModels` hook support for extension-registered providers at registration time. ([#940](https://github.com/badlogic/companion-mono/pull/940) by [@4h9fbZ](https://github.com/4h9fbZ)) +- Added Qwen thinking format support for OpenAI-compatible completions via `enable_thinking`. ([#940](https://github.com/badlogic/companion-mono/pull/940) by [@4h9fbZ](https://github.com/4h9fbZ)) +- Added sticky column tracking for vertical cursor navigation so the editor restores the preferred column when moving across short lines. ([#1120](https://github.com/badlogic/companion-mono/pull/1120) by [@Perlence](https://github.com/Perlence)) +- Added `resources_discover` extension hook to supply additional skills, prompts, and themes on startup and reload. + +### Fixed + +- Fixed `switchSession()` appending spurious `thinking_level_change` entry to session log on resume. `setThinkingLevel()` is now idempotent. ([#1118](https://github.com/badlogic/companion-mono/issues/1118)) +- Fixed clipboard image paste on WSL2/WSLg writing invalid PNG files when clipboard provides `image/bmp` format. BMP images are now converted to PNG before saving. ([#1112](https://github.com/badlogic/companion-mono/pull/1112) by [@lightningRalf](https://github.com/lightningRalf)) +- Fixed Kitty keyboard protocol base layout fallback so non-QWERTY layouts do not trigger wrong shortcuts ([#1096](https://github.com/badlogic/companion-mono/pull/1096) by [@rytswd](https://github.com/rytswd)) + +## [0.50.7] - 2026-01-31 + +### Fixed + +- Multi-file extensions in packages now work correctly. Package resolution now uses the same discovery logic as local extensions: only `index.ts` (or manifest-declared entries) are loaded from subdirectories, not helper modules. ([#1102](https://github.com/badlogic/companion-mono/issues/1102)) + +## [0.50.6] - 2026-01-30 + +### Added + +- Added `ctx.getSystemPrompt()` to extension context for accessing the current effective system prompt ([#1098](https://github.com/badlogic/companion-mono/pull/1098) by [@kaofelix](https://github.com/kaofelix)) + +### Fixed + +- Fixed empty rows appearing below footer when content shrinks (e.g., closing `/tree`, clearing multi-line editor) ([#1095](https://github.com/badlogic/companion-mono/pull/1095) by [@marckrenn](https://github.com/marckrenn)) +- Fixed terminal cursor remaining hidden after exiting TUI via `stop()` when a render was pending ([#1099](https://github.com/badlogic/companion-mono/pull/1099) by [@haoqixu](https://github.com/haoqixu)) + +## [0.50.5] - 2026-01-30 + +## [0.50.4] - 2026-01-30 + +### New Features + +- **OSC 52 clipboard support for SSH/mosh** - The `/copy` command now works over remote connections using the OSC 52 terminal escape sequence. No more clipboard frustration when using companion over SSH. ([#1069](https://github.com/badlogic/companion-mono/issues/1069) by [@gturkoglu](https://github.com/gturkoglu)) +- **Vercel AI Gateway routing** - Route requests through Vercel's AI Gateway with provider failover and load balancing. Configure via `vercelGatewayRouting` in models.json. ([#1051](https://github.com/badlogic/companion-mono/pull/1051) by [@ben-vargas](https://github.com/ben-vargas)) +- **Character jump navigation** - Bash/Readline-style character search: Ctrl+] jumps forward to the next occurrence of a character, Ctrl+Alt+] jumps backward. ([#1074](https://github.com/badlogic/companion-mono/pull/1074) by [@Perlence](https://github.com/Perlence)) +- **Emacs-style Ctrl+B/Ctrl+F navigation** - Alternative keybindings for word navigation (cursor word left/right) in the editor. ([#1053](https://github.com/badlogic/companion-mono/pull/1053) by [@ninlds](https://github.com/ninlds)) +- **Line boundary navigation** - Editor jumps to line start when pressing Up at first visual line, and line end when pressing Down at last visual line. ([#1050](https://github.com/badlogic/companion-mono/pull/1050) by [@4h9fbZ](https://github.com/4h9fbZ)) +- **Performance improvements** - Optimized image line detection and box rendering cache in the TUI for better rendering performance. ([#1084](https://github.com/badlogic/companion-mono/pull/1084) by [@can1357](https://github.com/can1357)) +- **`set_session_name` RPC command** - Headless clients can now set the session display name programmatically. ([#1075](https://github.com/badlogic/companion-mono/pull/1075) by [@dnouri](https://github.com/dnouri)) +- **Disable double-escape behavior** - New `"none"` option for `doubleEscapeAction` setting completely disables the double-escape shortcut. ([#973](https://github.com/badlogic/companion-mono/issues/973) by [@juanibiapina](https://github.com/juanibiapina)) + +### Added + +- Added "none" option to `doubleEscapeAction` setting to disable double-escape behavior entirely ([#973](https://github.com/badlogic/companion-mono/issues/973) by [@juanibiapina](https://github.com/juanibiapina)) +- Added OSC 52 clipboard support for SSH/mosh sessions. `/copy` now works over remote connections. ([#1069](https://github.com/badlogic/companion-mono/issues/1069) by [@gturkoglu](https://github.com/gturkoglu)) +- Added Vercel AI Gateway routing support via `vercelGatewayRouting` in models.json ([#1051](https://github.com/badlogic/companion-mono/pull/1051) by [@ben-vargas](https://github.com/ben-vargas)) +- Added Ctrl+B and Ctrl+F keybindings for cursor word left/right navigation in the editor ([#1053](https://github.com/badlogic/companion-mono/pull/1053) by [@ninlds](https://github.com/ninlds)) +- Added character jump navigation: Ctrl+] jumps forward to next character, Ctrl+Alt+] jumps backward ([#1074](https://github.com/badlogic/companion-mono/pull/1074) by [@Perlence](https://github.com/Perlence)) +- Editor now jumps to line start when pressing Up at first visual line, and line end when pressing Down at last visual line ([#1050](https://github.com/badlogic/companion-mono/pull/1050) by [@4h9fbZ](https://github.com/4h9fbZ)) +- Optimized image line detection and box rendering cache for better TUI performance ([#1084](https://github.com/badlogic/companion-mono/pull/1084) by [@can1357](https://github.com/can1357)) +- Added `set_session_name` RPC command for headless clients to set session display name ([#1075](https://github.com/badlogic/companion-mono/pull/1075) by [@dnouri](https://github.com/dnouri)) + +### Fixed + +- Read tool now handles macOS filenames with curly quotes (U+2019) and NFD Unicode normalization ([#1078](https://github.com/badlogic/companion-mono/issues/1078)) +- Respect .gitignore, .ignore, and .fdignore files when scanning package resources for skills, prompts, themes, and extensions ([#1072](https://github.com/badlogic/companion-mono/issues/1072)) +- Fixed tool call argument defaults when providers omit inputs ([#1065](https://github.com/badlogic/companion-mono/issues/1065)) +- Invalid JSON in settings.json no longer causes the file to be overwritten with empty settings ([#1054](https://github.com/badlogic/companion-mono/issues/1054)) +- Config selector now shows folder name for extensions with duplicate display names ([#1064](https://github.com/badlogic/companion-mono/pull/1064) by [@Graffioh](https://github.com/Graffioh)) + +## [0.50.3] - 2026-01-29 + +### New Features + +- **Kimi For Coding provider**: Access Moonshot AI's Anthropic-compatible coding API. Set `KIMI_API_KEY` environment variable. See [README.md#kimi-for-coding](README.md#kimi-for-coding). + +### Added + +- Added Kimi For Coding provider support (Moonshot AI's Anthropic-compatible coding API). Set `KIMI_API_KEY` environment variable. See [README.md#kimi-for-coding](README.md#kimi-for-coding). + +### Fixed + +- Resources now appear before messages when resuming a session, preventing loaded context from appearing at the bottom of the chat. + +## [0.50.2] - 2026-01-29 + +### New Features + +- **Hugging Face provider**: Access Hugging Face models via OpenAI-compatible Inference Router. Set `HF_TOKEN` environment variable. See [README.md#hugging-face](README.md#hugging-face). +- **Extended prompt caching**: `COMPANION_CACHE_RETENTION=long` enables 1-hour caching for Anthropic (vs 5min default) and 24-hour for OpenAI (vs in-memory default). Only applies to direct API calls. See [README.md#prompt-caching](README.md#prompt-caching). +- **Configurable autocomplete height**: `autocompleteMaxVisible` setting (3-20 items, default 5) controls dropdown size. Adjust via `/settings` or `settings.json`. +- **Shell-style keybindings**: `alt+b`/`alt+f` for word navigation, `ctrl+d` for delete character forward. See [docs/keybindings.md](docs/keybindings.md). +- **RPC `get_commands`**: Headless clients can now list available commands programmatically. See [docs/rpc.md](docs/rpc.md). + +### Added + +- Added Hugging Face provider support via OpenAI-compatible Inference Router ([#994](https://github.com/badlogic/companion-mono/issues/994)) +- Added `COMPANION_CACHE_RETENTION` environment variable to control cache TTL for Anthropic (5m vs 1h) and OpenAI (in-memory vs 24h). Set to `long` for extended retention. ([#967](https://github.com/badlogic/companion-mono/issues/967)) +- Added `autocompleteMaxVisible` setting for configurable autocomplete dropdown height (3-20 items, default 5) ([#972](https://github.com/badlogic/companion-mono/pull/972) by [@masonc15](https://github.com/masonc15)) +- Added `/files` command to list all file operations (read, write, edit) in the current session +- Added shell-style keybindings: `alt+b`/`alt+f` for word navigation, `ctrl+d` for delete character forward (when editor has text) ([#1043](https://github.com/badlogic/companion-mono/issues/1043) by [@jasonish](https://github.com/jasonish)) +- Added `get_commands` RPC method for headless clients to list available commands ([#995](https://github.com/badlogic/companion-mono/pull/995) by [@dnouri](https://github.com/dnouri)) + +### Changed + +- Improved `extractCursorPosition` performance in TUI: scans lines in reverse order, early-outs when cursor is above viewport ([#1004](https://github.com/badlogic/companion-mono/pull/1004) by [@can1357](https://github.com/can1357)) +- Autocomplete improvements: better handling of partial matches and edge cases ([#1024](https://github.com/badlogic/companion-mono/pull/1024) by [@Perlence](https://github.com/Perlence)) + +### Fixed + +- External edits to `settings.json` are now preserved when companion reloads or saves unrelated settings. Previously, editing settings.json directly (e.g., removing a package from `packages` array) would be silently reverted on next companion startup when automatic setters like `setLastChangelogVersion()` triggered a save. +- Fixed custom header not displaying correctly with `quietStartup` enabled ([#1039](https://github.com/badlogic/companion-mono/pull/1039) by [@tudoroancea](https://github.com/tudoroancea)) +- Empty array in package filter now disables all resources instead of falling back to manifest defaults ([#1044](https://github.com/badlogic/companion-mono/issues/1044)) +- Auto-retry counter now resets after each successful LLM response instead of accumulating across tool-use turns ([#1019](https://github.com/badlogic/companion-mono/issues/1019)) +- Fixed incorrect `.md` file names in warning messages ([#1041](https://github.com/badlogic/companion-mono/issues/1041) by [@llimllib](https://github.com/llimllib)) +- Fixed provider name hidden in footer when terminal is narrow ([#981](https://github.com/badlogic/companion-mono/pull/981) by [@Perlence](https://github.com/Perlence)) +- Fixed backslash input buffering causing delayed character display in editor ([#1037](https://github.com/badlogic/companion-mono/pull/1037) by [@Perlence](https://github.com/Perlence)) +- Fixed markdown table rendering with proper row dividers and minimum column width ([#997](https://github.com/badlogic/companion-mono/pull/997) by [@tmustier](https://github.com/tmustier)) +- Fixed OpenAI completions `toolChoice` handling ([#998](https://github.com/badlogic/companion-mono/pull/998) by [@williamtwomey](https://github.com/williamtwomey)) +- Fixed cross-provider handoff failing when switching from OpenAI Responses API providers due to pipe-separated tool call IDs ([#1022](https://github.com/badlogic/companion-mono/issues/1022)) +- Fixed 429 rate limit errors incorrectly triggering auto-compaction instead of retry with backoff ([#1038](https://github.com/badlogic/companion-mono/issues/1038)) +- Fixed Anthropic provider to handle `sensitive` stop_reason returned by API ([#978](https://github.com/badlogic/companion-mono/issues/978)) +- Fixed DeepSeek API compatibility by detecting `deepseek.com` URLs and disabling unsupported `developer` role ([#1048](https://github.com/badlogic/companion-mono/issues/1048)) +- Fixed Anthropic provider to preserve input token counts when proxies omit them in `message_delta` events ([#1045](https://github.com/badlogic/companion-mono/issues/1045)) +- Fixed `autocompleteMaxVisible` setting not persisting to `settings.json` + +## [0.50.1] - 2026-01-26 + +### Fixed + +- Git extension updates now handle force-pushed remotes gracefully instead of failing ([#961](https://github.com/badlogic/companion-mono/pull/961) by [@aliou](https://github.com/aliou)) +- Extension `ctx.newSession({ setup })` now properly syncs agent state and renders messages after setup callback runs ([#968](https://github.com/badlogic/companion-mono/issues/968)) +- Fixed extension UI bindings not initializing when starting with no extensions, which broke UI methods after `/reload` +- Fixed `/hotkeys` output to title-case extension hotkeys ([#969](https://github.com/badlogic/companion-mono/pull/969) by [@Perlence](https://github.com/Perlence)) +- Fixed model catalog generation to exclude deprecated OpenCode Zen models ([#970](https://github.com/badlogic/companion-mono/pull/970) by [@DanielTatarkin](https://github.com/DanielTatarkin)) +- Fixed git extension removal to prune empty directories + +## [0.50.0] - 2026-01-26 + +### New Features + +- Pi packages for bundling and installing extensions, skills, prompts, and themes. See [docs/packages.md](docs/packages.md). +- Hot reload (`/reload`) of resources including AGENTS.md, SYSTEM.md, APPEND_SYSTEM.md, prompt templates, skills, themes, and extensions. See [README.md#commands](README.md#commands) and [README.md#context-files](README.md#context-files). +- Custom providers via `companion.registerProvider()` for proxies, custom endpoints, OAuth or SSO flows, and non-standard streaming APIs. See [docs/custom-provider.md](docs/custom-provider.md). +- Azure OpenAI Responses provider support with deployment-aware model mapping. See [docs/providers.md#azure-openai](docs/providers.md#azure-openai). +- OpenRouter routing support for custom models via `openRouterRouting`. See [docs/providers.md#api-keys](docs/providers.md#api-keys) and [docs/models.md](docs/models.md). +- Skill invocation messages are now collapsible and skills can opt out of model invocation via `disable-model-invocation`. See [docs/skills.md#frontmatter](docs/skills.md#frontmatter). +- Session selector renaming and configurable keybindings. See [README.md#commands](README.md#commands) and [docs/keybindings.md](docs/keybindings.md). +- `models.json` headers can resolve environment variables and shell commands. See [docs/models.md#value-resolution](docs/models.md#value-resolution). +- `--verbose` CLI flag to override quiet startup. See [README.md#cli-reference](README.md#cli-reference). + +Read the fully revamped docs in `README.md`, or have your clanker read them for you. + +### SDK Migration Guide + +There are multiple SDK breaking changes since v0.49.3. For the quickest migration, point your agent at `packages/coding-agent/docs/sdk.md`, the SDK examples in `packages/coding-agent/examples/sdk`, and the SDK source in `packages/coding-agent/src/core/sdk.ts` and related modules. + +### Breaking Changes + +- Header values in `models.json` now resolve environment variables (if a header value matches an env var name, the env var value is used). This may change behavior if a literal header value accidentally matches an env var name. ([#909](https://github.com/badlogic/companion-mono/issues/909)) +- External packages (npm/git) are now configured via `packages` array in settings.json instead of `extensions`. Existing npm:/git: entries in `extensions` are auto-migrated. ([#645](https://github.com/badlogic/companion-mono/issues/645)) +- Resource loading now uses `ResourceLoader` only and settings.json uses arrays for extensions, skills, prompts, and themes ([#645](https://github.com/badlogic/companion-mono/issues/645)) +- Removed `discoverAuthStorage` and `discoverModels` from the SDK. `AuthStorage` and `ModelRegistry` now default to `~/.companion/agent` paths unless you pass an `agentDir` ([#645](https://github.com/badlogic/companion-mono/issues/645)) + +### Added + +- Session renaming in `/resume` picker via `Ctrl+R` without opening the session ([#863](https://github.com/badlogic/companion-mono/pull/863) by [@svkozak](https://github.com/svkozak)) +- Session selector keybindings are now configurable ([#948](https://github.com/badlogic/companion-mono/pull/948) by [@aos](https://github.com/aos)) +- `disable-model-invocation` frontmatter field for skills to prevent agentic invocation while still allowing explicit `/skill:name` commands ([#927](https://github.com/badlogic/companion-mono/issues/927)) +- Exposed `copyToClipboard` utility for extensions ([#926](https://github.com/badlogic/companion-mono/issues/926) by [@mitsuhiko](https://github.com/mitsuhiko)) +- Skill invocation messages are now collapsible in chat output, showing collapsed by default with skill name and expand hint ([#894](https://github.com/badlogic/companion-mono/issues/894)) +- Header values in `models.json` now support environment variables and shell commands, matching `apiKey` resolution ([#909](https://github.com/badlogic/companion-mono/issues/909)) +- Added HTTP proxy environment variable support for API requests ([#942](https://github.com/badlogic/companion-mono/pull/942) by [@haoqixu](https://github.com/haoqixu)) +- Added OpenRouter provider routing support for custom models via `openRouterRouting` compat field ([#859](https://github.com/badlogic/companion-mono/pull/859) by [@v01dpr1mr0s3](https://github.com/v01dpr1mr0s3)) +- Added `azure-openai-responses` provider support for Azure OpenAI Responses API. ([#890](https://github.com/badlogic/companion-mono/pull/890) by [@markusylisiurunen](https://github.com/markusylisiurunen)) +- Added changelog link to update notifications ([#925](https://github.com/badlogic/companion-mono/pull/925) by [@dannote](https://github.com/dannote)) +- Added `--verbose` CLI flag to override quietStartup setting ([#906](https://github.com/badlogic/companion-mono/pull/906) by [@Perlence](https://github.com/Perlence)) +- `markdown.codeBlockIndent` setting to customize code block indentation in rendered output +- Extension package management with `companion install`, `companion remove`, `companion update`, and `companion list` commands ([#645](https://github.com/badlogic/companion-mono/issues/645)) +- Package filtering: selectively load resources from packages using object form in `packages` array ([#645](https://github.com/badlogic/companion-mono/issues/645)) +- Glob pattern support with minimatch in package filters, top-level settings arrays, and companion manifest (e.g., `"!funky.json"`, `"*.ts"`) ([#645](https://github.com/badlogic/companion-mono/issues/645)) +- `/reload` command to reload extensions, skills, prompts, and themes ([#645](https://github.com/badlogic/companion-mono/issues/645)) +- `companion config` command with TUI to enable/disable package and top-level resources via patterns ([#938](https://github.com/badlogic/companion-mono/issues/938)) +- CLI flags for `--skill`, `--prompt-template`, `--theme`, `--no-prompt-templates`, and `--no-themes` ([#645](https://github.com/badlogic/companion-mono/issues/645)) +- Package deduplication: if same package appears in global and project settings, project wins ([#645](https://github.com/badlogic/companion-mono/issues/645)) +- Unified collision reporting with `ResourceDiagnostic` type for all resource types ([#645](https://github.com/badlogic/companion-mono/issues/645)) +- Show provider alongside the model in the footer if multiple providers are available +- Custom provider support via `companion.registerProvider()` with `streamSimple` for custom API implementations +- Added `custom-provider.ts` example extension demonstrating custom Anthropic provider with OAuth + +### Changed + +- `/resume` picker sort toggle moved to `Ctrl+S` to free `Ctrl+R` for rename ([#863](https://github.com/badlogic/companion-mono/pull/863) by [@svkozak](https://github.com/svkozak)) +- HTML export: clicking a sidebar message now navigates to its newest leaf and scrolls to it, instead of truncating the branch ([#853](https://github.com/badlogic/companion-mono/pull/853) by [@mitsuhiko](https://github.com/mitsuhiko)) +- HTML export: active path is now visually highlighted with dimmed off-path nodes ([#929](https://github.com/badlogic/companion-mono/pull/929) by [@hewliyang](https://github.com/hewliyang)) +- Azure OpenAI Responses provider now uses base URL configuration with deployment-aware model mapping and no longer includes service tier handling +- `/reload` now re-renders the entire scrollback so updated extension components are visible immediately ([#928](https://github.com/badlogic/companion-mono/pull/928) by [@ferologics](https://github.com/ferologics)) +- Skill, prompt template, and theme discovery now use settings and CLI path arrays instead of legacy filters ([#645](https://github.com/badlogic/companion-mono/issues/645)) + +### Fixed + +- Extension `setWorkingMessage()` calls in `agent_start` handlers now work correctly; previously the message was silently ignored because the loading animation didn't exist yet ([#935](https://github.com/badlogic/companion-mono/issues/935)) +- Fixed package auto-discovery to respect loader rules, config overrides, and force-exclude patterns +- Fixed /reload restoring the correct editor after reload ([#949](https://github.com/badlogic/companion-mono/pull/949) by [@Perlence](https://github.com/Perlence)) +- Fixed distributed themes breaking `/export` ([#946](https://github.com/badlogic/companion-mono/pull/946) by [@mitsuhiko](https://github.com/mitsuhiko)) +- Fixed startup hints to clarify thinking level selection and expanded thinking guidance +- Fixed SDK initial model resolution to use `findInitialModel` and default to Claude Opus 4.5 for Anthropic models +- Fixed no-models warning to include the `/model` instruction +- Fixed authentication error messages to point to the authentication documentation +- Fixed bash output hint lines to truncate to terminal width +- Fixed custom editors to honor the `paddingX` setting ([#936](https://github.com/badlogic/companion-mono/pull/936) by [@Perlence](https://github.com/Perlence)) +- Fixed system prompt tool list to show only built-in tools +- Fixed package manager to check npm package versions before using cached copies +- Fixed package manager to run `npm install` after cloning git repositories with a package.json +- Fixed extension provider registrations to apply before model resolution +- Fixed editor multi-line insertion handling and lastAction tracking ([#945](https://github.com/badlogic/companion-mono/pull/945) by [@Perlence](https://github.com/Perlence)) +- Fixed editor word wrapping to reserve a cursor column ([#934](https://github.com/badlogic/companion-mono/pull/934) by [@Perlence](https://github.com/Perlence)) +- Fixed editor word wrapping to use single-pass backtracking for whitespace handling ([#924](https://github.com/badlogic/companion-mono/pull/924) by [@Perlence](https://github.com/Perlence)) +- Fixed Kitty image ID allocation and cleanup to prevent image ID collisions +- Fixed overlays staying centered after terminal resizes ([#950](https://github.com/badlogic/companion-mono/pull/950) by [@nicobailon](https://github.com/nicobailon)) +- Fixed streaming dispatch to use the model api type instead of hardcoded API defaults +- Fixed Google providers to default tool call arguments to an empty object when omitted +- Fixed OpenAI Responses streaming to handle `arguments.done` events on OpenAI-compatible endpoints ([#917](https://github.com/badlogic/companion-mono/pull/917) by [@williballenthin](https://github.com/williballenthin)) +- Fixed OpenAI Codex Responses tool strictness handling after the shared responses refactor +- Fixed Azure OpenAI Responses streaming to guard deltas before content parts and correct metadata and handoff gating +- Fixed OpenAI completions tool-result image batching after consecutive tool results ([#902](https://github.com/badlogic/companion-mono/pull/902) by [@terrorobe](https://github.com/terrorobe)) +- Off-by-one error in bash output "earlier lines" count caused by counting spacing newline as hidden content ([#921](https://github.com/badlogic/companion-mono/issues/921)) +- User package filters now layer on top of manifest filters instead of replacing them ([#645](https://github.com/badlogic/companion-mono/issues/645)) +- Auto-retry now handles "terminated" errors from Codex API mid-stream failures +- Follow-up queue (Alt+Enter) now sends full paste content instead of `[paste #N ...]` markers ([#912](https://github.com/badlogic/companion-mono/issues/912)) +- Fixed Alt-Up not restoring messages queued during compaction ([#923](https://github.com/badlogic/companion-mono/pull/923) by [@aliou](https://github.com/aliou)) +- Fixed session corruption when loading empty or invalid session files via `--session` flag ([#932](https://github.com/badlogic/companion-mono/issues/932) by [@armanddp](https://github.com/armanddp)) +- Fixed extension shortcuts not firing when extension also uses `setEditorComponent()` ([#947](https://github.com/badlogic/companion-mono/pull/947) by [@Perlence](https://github.com/Perlence)) +- Session "modified" time now uses last message timestamp instead of file mtime, so renaming doesn't reorder the recent list ([#863](https://github.com/badlogic/companion-mono/pull/863) by [@svkozak](https://github.com/svkozak)) + +## [0.49.3] - 2026-01-22 + +### Added + +- `markdown.codeBlockIndent` setting to customize code block indentation in rendered output ([#855](https://github.com/badlogic/companion-mono/pull/855) by [@terrorobe](https://github.com/terrorobe)) +- Added `inline-bash.ts` example extension for expanding `!{command}` patterns in prompts ([#881](https://github.com/badlogic/companion-mono/pull/881) by [@scutifer](https://github.com/scutifer)) +- Added `antigravity-image-gen.ts` example extension for AI image generation via Google Antigravity ([#893](https://github.com/badlogic/companion-mono/pull/893) by [@ben-vargas](https://github.com/ben-vargas)) +- Added `COMPANION_SHARE_VIEWER_URL` environment variable for custom share viewer URLs ([#889](https://github.com/badlogic/companion-mono/pull/889) by [@andresaraujo](https://github.com/andresaraujo)) +- Added Alt+Delete as hotkey for delete word forwards ([#878](https://github.com/badlogic/companion-mono/pull/878) by [@Perlence](https://github.com/Perlence)) + +### Changed + +- Tree selector: changed label filter shortcut from `l` to `Shift+L` so users can search for entries containing "l" ([#861](https://github.com/badlogic/companion-mono/pull/861) by [@mitsuhiko](https://github.com/mitsuhiko)) +- Fuzzy matching now scores consecutive matches higher for better search relevance ([#860](https://github.com/badlogic/companion-mono/pull/860) by [@mitsuhiko](https://github.com/mitsuhiko)) + +### Fixed + +- Fixed error messages showing hardcoded `~/.companion/agent/` paths instead of respecting `COMPANION_CODING_AGENT_DIR` ([#887](https://github.com/badlogic/companion-mono/pull/887) by [@aliou](https://github.com/aliou)) +- Fixed `write` tool not displaying errors in the UI when execution fails ([#856](https://github.com/badlogic/companion-mono/issues/856)) +- Fixed HTML export using default theme instead of user's active theme ([#870](https://github.com/badlogic/companion-mono/pull/870) by [@scutifer](https://github.com/scutifer)) +- Show session name in the footer and terminal / tab title ([#876](https://github.com/badlogic/companion-mono/pull/876) by [@scutifer](https://github.com/scutifer)) +- Fixed 256color fallback in Terminal.app to prevent color rendering issues ([#869](https://github.com/badlogic/companion-mono/pull/869) by [@Perlence](https://github.com/Perlence)) +- Fixed viewport tracking and cursor positioning for overlays and content shrink scenarios +- Fixed autocomplete to allow searches with `/` characters (e.g., `folder1/folder2`) ([#882](https://github.com/badlogic/companion-mono/pull/882) by [@richardgill](https://github.com/richardgill)) +- Fixed autolinked emails displaying redundant `(mailto:...)` suffix ([#888](https://github.com/badlogic/companion-mono/pull/888) by [@terrorobe](https://github.com/terrorobe)) +- Fixed `@` file autocomplete adding space after directories, breaking continued autocomplete into subdirectories + +## [0.49.2] - 2026-01-19 + +### Added + +- Added widget placement option for extension widgets via `widgetPlacement` in `companion.addWidget()` ([#850](https://github.com/badlogic/companion-mono/pull/850) by [@marckrenn](https://github.com/marckrenn)) +- Added AWS credential detection for ECS/Kubernetes environments: `AWS_CONTAINER_CREDENTIALS_RELATIVE_URI`, `AWS_CONTAINER_CREDENTIALS_FULL_URI`, `AWS_WEB_IDENTITY_TOKEN_FILE` ([#848](https://github.com/badlogic/companion-mono/issues/848)) +- Add "quiet startup" setting to `/settings` ([#847](https://github.com/badlogic/companion-mono/pull/847) by [@unexge](https://github.com/unexge)) + +### Changed + +- HTML export now includes JSONL download button, jump-to-last-message on click, and fixed missing labels ([#853](https://github.com/badlogic/companion-mono/pull/853) by [@mitsuhiko](https://github.com/mitsuhiko)) +- Improved error message for OAuth authentication failures (expired credentials, offline) instead of generic 'No API key found' ([#849](https://github.com/badlogic/companion-mono/pull/849) by [@zedrdave](https://github.com/zedrdave)) + +### Fixed + +- Fixed `/model` selector scope toggle so you can switch between all and scoped models when scoped models are saved ([#844](https://github.com/badlogic/companion-mono/issues/844)) +- Fixed OpenAI Responses 400 error "reasoning without following item" when replaying aborted turns ([#838](https://github.com/badlogic/companion-mono/pull/838)) +- Fixed companion exiting with code 0 when cancelling resume session selection + +### Removed + +- Removed `strictResponsesPairing` compat option from models.json schema (no longer needed) + +## [0.49.1] - 2026-01-18 + +### Added + +- Added `strictResponsesPairing` compat option for custom OpenAI Responses models on Azure ([#768](https://github.com/badlogic/companion-mono/pull/768) by [@prateekmedia](https://github.com/prateekmedia)) +- Session selector (`/resume`) now supports path display toggle (`Ctrl+P`) and session deletion (`Ctrl+D`) with inline confirmation ([#816](https://github.com/badlogic/companion-mono/pull/816) by [@w-winter](https://github.com/w-winter)) +- Added undo support in interactive mode with Ctrl+- hotkey. ([#831](https://github.com/badlogic/companion-mono/pull/831) by [@Perlence](https://github.com/Perlence)) + +### Changed + +- Share URLs now use hash fragments (`#`) instead of query strings (`?`) to prevent session IDs from being sent to buildwithpi.ai ([#829](https://github.com/badlogic/companion-mono/pull/829) by [@terrorobe](https://github.com/terrorobe)) +- API keys in `models.json` can now be retrieved via shell command using `!` prefix (e.g., `"apiKey": "!security find-generic-password -ws 'anthropic'"` for macOS Keychain) ([#762](https://github.com/badlogic/companion-mono/pull/762) by [@cv](https://github.com/cv)) + +### Fixed + +- Fixed IME candidate window appearing in wrong position when filtering menus with Input Method Editor (e.g., Chinese IME). Components with search inputs now properly propagate focus state for cursor positioning. ([#827](https://github.com/badlogic/companion-mono/issues/827)) +- Fixed extension shortcut conflicts to respect user keybindings when built-in actions are remapped. ([#826](https://github.com/badlogic/companion-mono/pull/826) by [@richardgill](https://github.com/richardgill)) +- Fixed photon WASM loading in standalone compiled binaries. +- Fixed tool call ID normalization for cross-provider handoffs (e.g., Codex to Antigravity Claude) ([#821](https://github.com/badlogic/companion-mono/issues/821)) + +## [0.49.0] - 2026-01-17 + +### Added + +- `companion.setLabel(entryId, label)` in ExtensionAPI for setting per-entry labels from extensions ([#806](https://github.com/badlogic/companion-mono/issues/806)) +- Export `keyHint`, `appKeyHint`, `editorKey`, `appKey`, `rawKeyHint` for extensions to format keybinding hints consistently ([#802](https://github.com/badlogic/companion-mono/pull/802) by [@dannote](https://github.com/dannote)) +- Exported `VERSION` from the package index and updated the custom-header example. ([#798](https://github.com/badlogic/companion-mono/pull/798) by [@tallshort](https://github.com/tallshort)) +- Added `showHardwareCursor` setting to control cursor visibility while still positioning it for IME support. ([#800](https://github.com/badlogic/companion-mono/pull/800) by [@ghoulr](https://github.com/ghoulr)) +- Added Emacs-style kill ring editing with yank and yank-pop keybindings, plus legacy Alt+letter handling and Alt+D delete word forward support in the interactive editor. ([#810](https://github.com/badlogic/companion-mono/pull/810) by [@Perlence](https://github.com/Perlence)) +- Added `ctx.compact()` and `ctx.getContextUsage()` to extension contexts for programmatic compaction and context usage checks. +- Added documentation for delete word forward and kill ring keybindings in interactive mode. ([#810](https://github.com/badlogic/companion-mono/pull/810) by [@Perlence](https://github.com/Perlence)) + +### Changed + +- Updated the default system prompt wording to clarify the companion harness and documentation scope. +- Simplified Codex system prompt handling to use the default system prompt directly for Codex instructions. + +### Fixed + +- Fixed photon module failing to load in ESM context with "require is not defined" error ([#795](https://github.com/badlogic/companion-mono/pull/795) by [@dannote](https://github.com/dannote)) +- Fixed compaction UI not showing when extensions trigger compaction. +- Fixed orphaned tool results after errored assistant messages causing Codex API errors. When an assistant message has `stopReason: "error"`, its tool calls are now excluded from pending tool tracking, preventing synthetic tool results from being generated for calls that will be dropped by provider-specific converters. ([#812](https://github.com/badlogic/companion-mono/issues/812)) +- Fixed Bedrock Claude max_tokens handling to always exceed thinking budget tokens, preventing compaction failures. ([#797](https://github.com/badlogic/companion-mono/pull/797) by [@pjtf93](https://github.com/pjtf93)) +- Fixed Claude Code tool name normalization to match the Claude Code tool list case-insensitively and remove invalid mappings. + +### Removed + +- Removed `companion-internal://` path resolution from the read tool. + +## [0.48.0] - 2026-01-16 + +### Added + +- Added `quietStartup` setting to silence startup output (version header, loaded context info, model scope line). Changelog notifications are still shown. ([#777](https://github.com/badlogic/companion-mono/pull/777) by [@ribelo](https://github.com/ribelo)) +- Added `editorPaddingX` setting for horizontal padding in input editor (0-3, default: 0) +- Added `shellCommandPrefix` setting to prepend commands to every bash execution, enabling alias expansion in non-interactive shells (e.g., `"shellCommandPrefix": "shopt -s expand_aliases"`) ([#790](https://github.com/badlogic/companion-mono/pull/790) by [@richardgill](https://github.com/richardgill)) +- Added bash-style argument slicing for prompt templates ([#770](https://github.com/badlogic/companion-mono/pull/770) by [@airtonix](https://github.com/airtonix)) +- Extension commands can provide argument auto-completions via `getArgumentCompletions` in `companion.registerCommand()` ([#775](https://github.com/badlogic/companion-mono/pull/775) by [@ribelo](https://github.com/ribelo)) +- Bash tool now displays the timeout value in the UI when a timeout is set ([#780](https://github.com/badlogic/companion-mono/pull/780) by [@dannote](https://github.com/dannote)) +- Export `getShellConfig` for extensions to detect user's shell environment ([#766](https://github.com/badlogic/companion-mono/pull/766) by [@dannote](https://github.com/dannote)) +- Added `thinkingText` and `selectedBg` to theme schema ([#763](https://github.com/badlogic/companion-mono/pull/763) by [@scutifer](https://github.com/scutifer)) +- `navigateTree()` now supports `replaceInstructions` option to replace the default summarization prompt entirely, and `label` option to attach a label to the branch summary entry ([#787](https://github.com/badlogic/companion-mono/pull/787) by [@mitsuhiko](https://github.com/mitsuhiko)) + +### Fixed + +- Fixed crash during auto-compaction when summarization fails (e.g., quota exceeded). Now displays error message instead of crashing ([#792](https://github.com/badlogic/companion-mono/issues/792)) +- Fixed `--session ` to search globally across projects if not found locally, with option to fork sessions from other projects ([#785](https://github.com/badlogic/companion-mono/pull/785) by [@ribelo](https://github.com/ribelo)) +- Fixed standalone binary WASM loading on Linux ([#784](https://github.com/badlogic/companion-mono/issues/784)) +- Fixed string numbers in tool arguments not being coerced to numbers during validation ([#786](https://github.com/badlogic/companion-mono/pull/786) by [@dannote](https://github.com/dannote)) +- Fixed `--no-extensions` flag not preventing extension discovery ([#776](https://github.com/badlogic/companion-mono/issues/776)) +- Fixed extension messages rendering twice on startup when `companion.sendMessage({ display: true })` is called during `session_start` ([#765](https://github.com/badlogic/companion-mono/pull/765) by [@dannote](https://github.com/dannote)) +- Fixed `COMPANION_CODING_AGENT_DIR` env var not expanding tilde (`~`) to home directory ([#778](https://github.com/badlogic/companion-mono/pull/778) by [@aliou](https://github.com/aliou)) +- Fixed session picker hint text overflow ([#764](https://github.com/badlogic/companion-mono/issues/764)) +- Fixed Kitty keyboard protocol shifted symbol keys (e.g., `@`, `?`) not working in editor ([#779](https://github.com/badlogic/companion-mono/pull/779) by [@iamd3vil](https://github.com/iamd3vil)) +- Fixed Bedrock tool call IDs causing API errors from invalid characters ([#781](https://github.com/badlogic/companion-mono/pull/781) by [@pjtf93](https://github.com/pjtf93)) + +### Changed + +- Hardware cursor is now disabled by default for better terminal compatibility. Set `COMPANION_HARDWARE_CURSOR=1` to enable (replaces `COMPANION_NO_HARDWARE_CURSOR=1` which disabled it). + +## [0.47.0] - 2026-01-16 + +### Breaking Changes + +- Extensions using `Editor` directly must now pass `TUI` as the first constructor argument: `new Editor(tui, theme)`. The `tui` parameter is available in extension factory functions. ([#732](https://github.com/badlogic/companion-mono/issues/732)) + +### Added + +- **OpenAI Codex official support**: Full compatibility with OpenAI's Codex CLI models (`gpt-5.1`, `gpt-5.2`, `gpt-5.1-codex-mini`, `gpt-5.2-codex`). Features include static system prompt for OpenAI allowlisting, prompt caching via session ID, and reasoning signature retention across turns. Set `OPENAI_API_KEY` and use `--provider openai-codex` or select a Codex model. ([#737](https://github.com/badlogic/companion-mono/pull/737)) +- `companion-internal://` URL scheme in read tool for accessing internal documentation. The model can read files from the coding-agent package (README, docs, examples) to learn about extending companion. +- New `input` event in extension system for intercepting, transforming, or handling user input before the agent processes it. Supports three result types: `continue` (pass through), `transform` (modify text/images), `handled` (respond without LLM). Handlers chain transforms and short-circuit on handled. ([#761](https://github.com/badlogic/companion-mono/pull/761) by [@nicobailon](https://github.com/nicobailon)) +- Extension example: `input-transform.ts` demonstrating input interception patterns (quick mode, instant commands, source routing) ([#761](https://github.com/badlogic/companion-mono/pull/761) by [@nicobailon](https://github.com/nicobailon)) +- Custom tool HTML export: extensions with `renderCall`/`renderResult` now render in `/share` and `/export` output with ANSI-to-HTML color conversion ([#702](https://github.com/badlogic/companion-mono/pull/702) by [@aliou](https://github.com/aliou)) +- Direct filter shortcuts in Tree mode: Ctrl+D (default), Ctrl+T (no-tools), Ctrl+U (user-only), Ctrl+L (labeled-only), Ctrl+A (all) ([#747](https://github.com/badlogic/companion-mono/pull/747) by [@kaofelix](https://github.com/kaofelix)) + +### Changed + +- Skill commands (`/skill:name`) are now expanded in AgentSession instead of interactive mode. This enables skill commands in RPC and print modes, and allows the `input` event to intercept `/skill:name` before expansion. + +### Fixed + +- Editor no longer corrupts terminal display when loading large prompts via `setEditorText`. Content now scrolls vertically with indicators showing lines above/below the viewport. ([#732](https://github.com/badlogic/companion-mono/issues/732)) +- Piped stdin now works correctly: `echo foo | companion` is equivalent to `companion -p foo`. When stdin is piped, print mode is automatically enabled since interactive mode requires a TTY ([#708](https://github.com/badlogic/companion-mono/issues/708)) +- Session tree now preserves branch connectors and indentation when filters hide intermediate entries so descendants attach to the nearest visible ancestor and sibling branches align. Fixed in both TUI and HTML export ([#739](https://github.com/badlogic/companion-mono/pull/739) by [@w-winter](https://github.com/w-winter)) +- Added `upstream connect`, `connection refused`, and `reset before headers` patterns to auto-retry error detection ([#733](https://github.com/badlogic/companion-mono/issues/733)) +- Multi-line YAML frontmatter in skills and prompt templates now parses correctly. Centralized frontmatter parsing using the `yaml` library. ([#728](https://github.com/badlogic/companion-mono/pull/728) by [@richardgill](https://github.com/richardgill)) +- `ctx.shutdown()` now waits for pending UI renders to complete before exiting, ensuring notifications and final output are visible ([#756](https://github.com/badlogic/companion-mono/issues/756)) +- OpenAI Codex provider now retries on transient errors (429, 5xx, connection failures) with exponential backoff ([#733](https://github.com/badlogic/companion-mono/issues/733)) + +## [0.46.0] - 2026-01-15 + +### Fixed + +- Scoped models (`--models` or `enabledModels`) now remember the last selected model across sessions instead of always starting with the first model in the scope ([#736](https://github.com/badlogic/companion-mono/pull/736) by [@ogulcancelik](https://github.com/ogulcancelik)) +- Show `bun install` instead of `npm install` in update notification when running under Bun ([#714](https://github.com/badlogic/companion-mono/pull/714) by [@dannote](https://github.com/dannote)) +- `/skill` prompts now include the skill path ([#711](https://github.com/badlogic/companion-mono/pull/711) by [@jblwilliams](https://github.com/jblwilliams)) +- Use configurable `expandTools` keybinding instead of hardcoded Ctrl+O ([#717](https://github.com/badlogic/companion-mono/pull/717) by [@dannote](https://github.com/dannote)) +- Compaction turn prefix summaries now merge correctly ([#738](https://github.com/badlogic/companion-mono/pull/738) by [@vsabavat](https://github.com/vsabavat)) +- Avoid unsigned Gemini 3 tool calls ([#741](https://github.com/badlogic/companion-mono/pull/741) by [@roshanasingh4](https://github.com/roshanasingh4)) +- Fixed signature support for non-Anthropic models in Amazon Bedrock provider ([#727](https://github.com/badlogic/companion-mono/pull/727) by [@unexge](https://github.com/unexge)) +- Keyboard shortcuts (Ctrl+C, Ctrl+D, etc.) now work on non-Latin keyboard layouts (Russian, Ukrainian, Bulgarian, etc.) in terminals supporting Kitty keyboard protocol with alternate key reporting ([#718](https://github.com/badlogic/companion-mono/pull/718) by [@dannote](https://github.com/dannote)) + +### Added + +- Edit tool now uses fuzzy matching as fallback when exact match fails, tolerating trailing whitespace, smart quotes, Unicode dashes, and special spaces ([#713](https://github.com/badlogic/companion-mono/pull/713) by [@dannote](https://github.com/dannote)) +- Support `APPEND_SYSTEM.md` to append instructions to the system prompt ([#716](https://github.com/badlogic/companion-mono/pull/716) by [@tallshort](https://github.com/tallshort)) +- Session picker search: Ctrl+R toggles sorting between fuzzy match (default) and most recent; supports quoted phrase matching and `re:` regex mode ([#731](https://github.com/badlogic/companion-mono/pull/731) by [@ogulcancelik](https://github.com/ogulcancelik)) +- Export `getAgentDir` for extensions ([#749](https://github.com/badlogic/companion-mono/pull/749) by [@dannote](https://github.com/dannote)) +- Show loaded prompt templates on startup ([#743](https://github.com/badlogic/companion-mono/pull/743) by [@tallshort](https://github.com/tallshort)) +- MiniMax China (`minimax-cn`) provider support ([#725](https://github.com/badlogic/companion-mono/pull/725) by [@tallshort](https://github.com/tallshort)) +- `gpt-5.2-codex` models for GitHub Copilot and OpenCode Zen providers ([#734](https://github.com/badlogic/companion-mono/pull/734) by [@aadishv](https://github.com/aadishv)) + +### Changed + +- Replaced `wasm-vips` with `@silvia-odwyer/photon-node` for image processing ([#710](https://github.com/badlogic/companion-mono/pull/710) by [@can1357](https://github.com/can1357)) +- Extension example: `plan-mode/` shortcut changed from Shift+P to Ctrl+Alt+P to avoid conflict with typing capital P ([#746](https://github.com/badlogic/companion-mono/pull/746) by [@ferologics](https://github.com/ferologics)) +- UI keybinding hints now respect configured keybindings across components ([#724](https://github.com/badlogic/companion-mono/pull/724) by [@dannote](https://github.com/dannote)) +- CLI process title is now set to `companion` for easier process identification ([#742](https://github.com/badlogic/companion-mono/pull/742) by [@richardgill](https://github.com/richardgill)) + +## [0.45.7] - 2026-01-13 + +### Added + +- Exported `highlightCode` and `getLanguageFromPath` for extensions ([#703](https://github.com/badlogic/companion-mono/pull/703) by [@dannote](https://github.com/dannote)) + +## [0.45.6] - 2026-01-13 + +### Added + +- `ctx.ui.custom()` now accepts `overlayOptions` for overlay positioning and sizing (anchor, margins, offsets, percentages, absolute positioning) ([#667](https://github.com/badlogic/companion-mono/pull/667) by [@nicobailon](https://github.com/nicobailon)) +- `ctx.ui.custom()` now accepts `onHandle` callback to receive the `OverlayHandle` for controlling overlay visibility ([#667](https://github.com/badlogic/companion-mono/pull/667) by [@nicobailon](https://github.com/nicobailon)) +- Extension example: `overlay-qa-tests.ts` with 10 commands for testing overlay positioning, animation, and toggle scenarios ([#667](https://github.com/badlogic/companion-mono/pull/667) by [@nicobailon](https://github.com/nicobailon)) +- Extension example: `doom-overlay/` - DOOM game running as an overlay at 35 FPS (auto-downloads WAD on first run) ([#667](https://github.com/badlogic/companion-mono/pull/667) by [@nicobailon](https://github.com/nicobailon)) + +## [0.45.5] - 2026-01-13 + +### Fixed + +- Skip changelog display on fresh install (only show on upgrades) + +## [0.45.4] - 2026-01-13 + +### Changed + +- Light theme colors adjusted for WCAG AA compliance (4.5:1 contrast ratio against white backgrounds) +- Replaced `sharp` with `wasm-vips` for image processing (resize, PNG conversion). Eliminates native build requirements that caused installation failures on some systems. ([#696](https://github.com/badlogic/companion-mono/issues/696)) + +### Added + +- Extension example: `summarize.ts` for summarizing conversations using custom UI and an external model ([#684](https://github.com/badlogic/companion-mono/pull/684) by [@scutifer](https://github.com/scutifer)) +- Extension example: `question.ts` enhanced with custom UI for asking user questions ([#693](https://github.com/badlogic/companion-mono/pull/693) by [@ferologics](https://github.com/ferologics)) +- Extension example: `plan-mode/` enhanced with explicit step tracking and progress widget ([#694](https://github.com/badlogic/companion-mono/pull/694) by [@ferologics](https://github.com/ferologics)) +- Extension example: `questionnaire.ts` for multi-question input with tab bar navigation ([#695](https://github.com/badlogic/companion-mono/pull/695) by [@ferologics](https://github.com/ferologics)) +- Experimental Vercel AI Gateway provider support: set `AI_GATEWAY_API_KEY` and use `--provider vercel-ai-gateway`. Token usage is currently reported incorrectly by Anthropic Messages compatible endpoint. ([#689](https://github.com/badlogic/companion-mono/pull/689) by [@timolins](https://github.com/timolins)) + +### Fixed + +- Fix API key resolution after model switches by using provider argument ([#691](https://github.com/badlogic/companion-mono/pull/691) by [@joshp123](https://github.com/joshp123)) +- Fixed z.ai thinking/reasoning: thinking toggle now correctly enables/disables thinking for z.ai models ([#688](https://github.com/badlogic/companion-mono/issues/688)) +- Fixed extension loading in compiled Bun binary: extensions with local file imports now work correctly. Updated `@mariozechner/jiti` to v2.6.5 which bundles babel for Bun binary compatibility. ([#681](https://github.com/badlogic/companion-mono/issues/681)) +- Fixed theme loading when installed via mise: use wrapper directory in release tarballs for compatibility with mise's `strip_components=1` extraction. ([#681](https://github.com/badlogic/companion-mono/issues/681)) + +## [0.45.3] - 2026-01-13 + +## [0.45.2] - 2026-01-13 + +### Fixed + +- Extensions now load correctly in compiled Bun binary using `@mariozechner/jiti` fork with `virtualModules` support. Bundled packages (`@sinclair/typebox`, `@mariozechner/companion-tui`, `@mariozechner/companion-ai`, `@mariozechner/companion-coding-agent`) are accessible to extensions without filesystem node_modules. + +## [0.45.1] - 2026-01-13 + +### Changed + +- `/share` now outputs `buildwithpi.ai` session preview URLs instead of `shittycodingagent.ai` + +## [0.45.0] - 2026-01-13 + +### Added + +- MiniMax provider support: set `MINIMAX_API_KEY` and use `minimax/MiniMax-M2.1` ([#656](https://github.com/badlogic/companion-mono/pull/656) by [@dannote](https://github.com/dannote)) +- `/scoped-models`: Alt+Up/Down to reorder enabled models. Order is preserved when saving with Ctrl+S and determines Ctrl+P cycling order. ([#676](https://github.com/badlogic/companion-mono/pull/676) by [@thomasmhr](https://github.com/thomasmhr)) +- Amazon Bedrock provider support (experimental, tested with Anthropic Claude models only) ([#494](https://github.com/badlogic/companion-mono/pull/494) by [@unexge](https://github.com/unexge)) +- Extension example: `sandbox/` for OS-level bash sandboxing using `@anthropic-ai/sandbox-runtime` with per-project config ([#673](https://github.com/badlogic/companion-mono/pull/673) by [@dannote](https://github.com/dannote)) +- Print mode JSON output now emits the session header as the first line. + +## [0.44.0] - 2026-01-12 + +### Breaking Changes + +- `companion.getAllTools()` now returns `ToolInfo[]` (with `name` and `description`) instead of `string[]`. Extensions that only need names can use `.map(t => t.name)`. ([#648](https://github.com/badlogic/companion-mono/pull/648) by [@carsonfarmer](https://github.com/carsonfarmer)) + +### Added + +- Session naming: `/name ` command sets a display name shown in the session selector instead of the first message. Useful for distinguishing forked sessions. Extensions can use `companion.setSessionName()` and `companion.getSessionName()`. ([#650](https://github.com/badlogic/companion-mono/pull/650) by [@scutifer](https://github.com/scutifer)) +- Extension example: `notify.ts` for desktop notifications via OSC 777 escape sequence ([#658](https://github.com/badlogic/companion-mono/pull/658) by [@ferologics](https://github.com/ferologics)) +- Inline hint for queued messages showing the `Alt+Up` restore shortcut ([#657](https://github.com/badlogic/companion-mono/pull/657) by [@tmustier](https://github.com/tmustier)) +- Page-up/down navigation in `/resume` session selector to jump by 5 items ([#662](https://github.com/badlogic/companion-mono/pull/662) by [@aliou](https://github.com/aliou)) +- Fuzzy search in `/settings` menu: type to filter settings by label ([#643](https://github.com/badlogic/companion-mono/pull/643) by [@ninlds](https://github.com/ninlds)) + +### Fixed + +- Session selector now stays open when current folder has no sessions, allowing Tab to switch to "all" scope ([#661](https://github.com/badlogic/companion-mono/pull/661) by [@aliou](https://github.com/aliou)) +- Extensions using theme utilities like `getSettingsListTheme()` now work in dev mode with tsx + +## [0.43.0] - 2026-01-11 + +### Breaking Changes + +- Extension editor (`ctx.ui.editor()`) now uses Enter to submit and Shift+Enter for newlines, matching the main editor. Previously used Ctrl+Enter to submit. Extensions with hardcoded "ctrl+enter" hints need updating. ([#642](https://github.com/badlogic/companion-mono/pull/642) by [@mitsuhiko](https://github.com/mitsuhiko)) +- Renamed `/branch` command to `/fork` ([#641](https://github.com/badlogic/companion-mono/issues/641)) + - RPC: `branch` → `fork`, `get_branch_messages` → `get_fork_messages` + - SDK: `branch()` → `fork()`, `getBranchMessages()` → `getForkMessages()` + - AgentSession: `branch()` → `fork()`, `getUserMessagesForBranching()` → `getUserMessagesForForking()` + - Extension events: `session_before_branch` → `session_before_fork`, `session_branch` → `session_fork` + - Settings: `doubleEscapeAction: "branch" | "tree"` → `"fork" | "tree"` +- `SessionManager.list()` and `SessionManager.listAll()` are now async, returning `Promise`. Callers must await them. ([#620](https://github.com/badlogic/companion-mono/pull/620) by [@tmustier](https://github.com/tmustier)) + +### Added + +- `/resume` selector now toggles between current-folder and all sessions with Tab, showing the session cwd in the All view and loading progress. ([#620](https://github.com/badlogic/companion-mono/pull/620) by [@tmustier](https://github.com/tmustier)) +- `SessionManager.list()` and `SessionManager.listAll()` accept optional `onProgress` callback for progress updates +- `SessionInfo.cwd` field containing the session's working directory (empty string for old sessions) +- `SessionListProgress` type export for progress callbacks +- `/scoped-models` command to enable/disable models for Ctrl+P cycling. Changes are session-only by default; press Ctrl+S to persist to settings.json. ([#626](https://github.com/badlogic/companion-mono/pull/626) by [@CarlosGtrz](https://github.com/CarlosGtrz)) +- `model_select` extension hook fires when model changes via `/model`, model cycling, or session restore with `source` field and `previousModel` ([#628](https://github.com/badlogic/companion-mono/pull/628) by [@marckrenn](https://github.com/marckrenn)) +- `ctx.ui.setWorkingMessage()` extension API to customize the "Working..." message during streaming ([#625](https://github.com/badlogic/companion-mono/pull/625) by [@nicobailon](https://github.com/nicobailon)) +- Skill slash commands: loaded skills are registered as `/skill:name` commands for quick access. Toggle via `/settings` or `skills.enableSkillCommands` in settings.json. ([#630](https://github.com/badlogic/companion-mono/pull/630) by [@Dwsy](https://github.com/Dwsy)) +- Slash command autocomplete now uses fuzzy matching (type `/skbra` to match `/skill:brave-search`) +- `/tree` branch summarization now offers three options: "No summary", "Summarize", and "Summarize with custom prompt". Custom prompts are appended as additional focus to the default summarization instructions. ([#642](https://github.com/badlogic/companion-mono/pull/642) by [@mitsuhiko](https://github.com/mitsuhiko)) + +### Fixed + +- Missing spacer between assistant message and text editor ([#655](https://github.com/badlogic/companion-mono/issues/655)) +- Session picker respects custom keybindings when using `--resume` ([#633](https://github.com/badlogic/companion-mono/pull/633) by [@aos](https://github.com/aos)) +- Custom footer extensions now see model changes: `ctx.model` is now a getter that returns the current model instead of a snapshot from when the context was created ([#634](https://github.com/badlogic/companion-mono/pull/634) by [@ogulcancelik](https://github.com/ogulcancelik)) +- Footer git branch not updating after external branch switches. Git uses atomic writes (temp file + rename), which changes the inode and breaks `fs.watch` on the file. Now watches the directory instead. +- Extension loading errors are now displayed to the user instead of being silently ignored ([#639](https://github.com/badlogic/companion-mono/pull/639) by [@aliou](https://github.com/aliou)) + +## [0.42.5] - 2026-01-11 + +### Fixed + +- Reduced flicker by only re-rendering changed lines ([#617](https://github.com/badlogic/companion-mono/pull/617) by [@ogulcancelik](https://github.com/ogulcancelik)). No worries tho, there's still a little flicker in the VS Code Terminal. Praise the flicker. +- Cursor position tracking when content shrinks with unchanged remaining lines +- TUI renders with wrong dimensions after suspend/resume if terminal was resized while suspended ([#599](https://github.com/badlogic/companion-mono/issues/599)) +- Pasted content containing Kitty key release patterns (e.g., `:3F` in MAC addresses) was incorrectly filtered out ([#623](https://github.com/badlogic/companion-mono/pull/623) by [@ogulcancelik](https://github.com/ogulcancelik)) + +## [0.42.4] - 2026-01-10 + +### Fixed + +- Bash output expanded hint now says "(ctrl+o to collapse)" ([#610](https://github.com/badlogic/companion-mono/pull/610) by [@tallshort](https://github.com/tallshort)) +- Fixed UTF-8 text corruption in remote bash execution (SSH, containers) by using streaming TextDecoder ([#608](https://github.com/badlogic/companion-mono/issues/608)) + +## [0.42.3] - 2026-01-10 + +### Changed + +- OpenAI Codex: updated to use bundled system prompt from upstream + +## [0.42.2] - 2026-01-10 + +### Added + +- `/model ` now pre-filters the model selector or auto-selects on exact match. Use `provider/model` syntax to disambiguate (e.g., `/model openai/gpt-4`). ([#587](https://github.com/badlogic/companion-mono/pull/587) by [@zedrdave](https://github.com/zedrdave)) +- `FooterDataProvider` for custom footers: `ctx.ui.setFooter()` now receives a third `footerData` parameter providing `getGitBranch()`, `getExtensionStatuses()`, and `onBranchChange()` for reactive updates ([#600](https://github.com/badlogic/companion-mono/pull/600) by [@nicobailon](https://github.com/nicobailon)) +- `Alt+Up` hotkey to restore queued steering/follow-up messages back into the editor without aborting the current run ([#604](https://github.com/badlogic/companion-mono/pull/604) by [@tmustier](https://github.com/tmustier)) + +### Fixed + +- Fixed LM Studio compatibility for OpenAI Responses tool strict mapping in the ai provider ([#598](https://github.com/badlogic/companion-mono/pull/598) by [@gnattu](https://github.com/gnattu)) + +## [0.42.1] - 2026-01-09 + +### Fixed + +- Symlinked directories in `prompts/` folders are now followed when loading prompt templates ([#601](https://github.com/badlogic/companion-mono/pull/601) by [@aliou](https://github.com/aliou)) + +## [0.42.0] - 2026-01-09 + +### Added + +- Added OpenCode Zen provider support. Set `OPENCODE_API_KEY` env var and use `opencode/` (e.g., `opencode/claude-opus-4-5`). + +## [0.41.0] - 2026-01-09 + +### Added + +- Anthropic OAuth support is back! Use `/login` to authenticate with your Claude Pro/Max subscription. + +## [0.40.1] - 2026-01-09 + +### Removed + +- Anthropic OAuth support (`/login`). Use API keys instead. + +## [0.40.0] - 2026-01-08 + +### Added + +- Documentation on component invalidation and theme changes in `docs/tui.md` + +### Fixed + +- Components now properly rebuild their content on theme change (tool executions, assistant messages, bash executions, custom messages, branch/compaction summaries) + +## [0.39.1] - 2026-01-08 + +### Fixed + +- `setTheme()` now triggers a full rerender so previously rendered components update with the new theme colors +- `mac-system-theme.ts` example now polls every 2 seconds and uses `osascript` for real-time macOS appearance detection + +## [0.39.0] - 2026-01-08 + +### Breaking Changes + +- `before_agent_start` event now receives `systemPrompt` in the event object and returns `systemPrompt` (full replacement) instead of `systemPromptAppend`. Extensions that were appending must now use `event.systemPrompt + extra` pattern. ([#575](https://github.com/badlogic/companion-mono/issues/575)) +- `discoverSkills()` now returns `{ skills: Skill[], warnings: SkillWarning[] }` instead of `Skill[]`. This allows callers to handle skill loading warnings. ([#577](https://github.com/badlogic/companion-mono/pull/577) by [@cv](https://github.com/cv)) + +### Added + +- `ctx.ui.getAllThemes()`, `ctx.ui.getTheme(name)`, and `ctx.ui.setTheme(name | Theme)` methods for extensions to list, load, and switch themes at runtime ([#576](https://github.com/badlogic/companion-mono/pull/576)) +- `--no-tools` flag to disable all built-in tools, allowing extension-only tool setups ([#557](https://github.com/badlogic/companion-mono/pull/557) by [@cv](https://github.com/cv)) +- Pluggable operations for built-in tools enabling remote execution via SSH or other transports ([#564](https://github.com/badlogic/companion-mono/issues/564)). Interfaces: `ReadOperations`, `WriteOperations`, `EditOperations`, `BashOperations`, `LsOperations`, `GrepOperations`, `FindOperations` +- `user_bash` event for intercepting user `!`/`!!` commands, allowing extensions to redirect to remote systems ([#528](https://github.com/badlogic/companion-mono/issues/528)) +- `setActiveTools()` in ExtensionAPI for dynamic tool management +- Built-in renderers used automatically for tool overrides without custom `renderCall`/`renderResult` +- `ssh.ts` example: remote tool execution via `--ssh user@host:/path` +- `interactive-shell.ts` example: run interactive commands (vim, git rebase, htop) with full terminal access via `!i` prefix or auto-detection +- Wayland clipboard support for `/copy` command using wl-copy with xclip/xsel fallback ([#570](https://github.com/badlogic/companion-mono/pull/570) by [@OgulcanCelik](https://github.com/OgulcanCelik)) +- **Experimental:** `ctx.ui.custom()` now accepts `{ overlay: true }` option for floating modal components that composite over existing content without clearing the screen ([#558](https://github.com/badlogic/companion-mono/pull/558) by [@nicobailon](https://github.com/nicobailon)) +- `AgentSession.skills` and `AgentSession.skillWarnings` properties to access loaded skills without rediscovery ([#577](https://github.com/badlogic/companion-mono/pull/577) by [@cv](https://github.com/cv)) + +### Fixed + +- String `systemPrompt` in `createAgentSession()` now works as a full replacement instead of having context files and skills appended, matching documented behavior ([#543](https://github.com/badlogic/companion-mono/issues/543)) +- Update notification for bun binary installs now shows release download URL instead of npm command ([#567](https://github.com/badlogic/companion-mono/pull/567) by [@ferologics](https://github.com/ferologics)) +- ESC key now works during "Working..." state after auto-retry ([#568](https://github.com/badlogic/companion-mono/pull/568) by [@tmustier](https://github.com/tmustier)) +- Abort messages now show correct retry attempt count (e.g., "Aborted after 2 retry attempts") ([#568](https://github.com/badlogic/companion-mono/pull/568) by [@tmustier](https://github.com/tmustier)) +- Fixed Antigravity provider returning 429 errors despite available quota ([#571](https://github.com/badlogic/companion-mono/pull/571) by [@ben-vargas](https://github.com/ben-vargas)) +- Fixed malformed thinking text in Gemini/Antigravity responses where thinking content appeared as regular text or vice versa. Cross-model conversations now properly convert thinking blocks to plain text. ([#561](https://github.com/badlogic/companion-mono/issues/561)) +- `--no-skills` flag now correctly prevents skills from loading in interactive mode ([#577](https://github.com/badlogic/companion-mono/pull/577) by [@cv](https://github.com/cv)) + +## [0.38.0] - 2026-01-08 + +### Breaking Changes + +- `ctx.ui.custom()` factory signature changed from `(tui, theme, done)` to `(tui, theme, keybindings, done)` for keybinding access in custom components +- `LoadedExtension` type renamed to `Extension` +- `LoadExtensionsResult.setUIContext()` removed, replaced with `runtime: ExtensionRuntime` +- `ExtensionRunner` constructor now requires `runtime: ExtensionRuntime` as second parameter +- `ExtensionRunner.initialize()` signature changed from options object to positional params `(actions, contextActions, commandContextActions?, uiContext?)` +- `ExtensionRunner.getHasUI()` renamed to `hasUI()` +- OpenAI Codex model aliases removed (`gpt-5`, `gpt-5-mini`, `gpt-5-nano`, `codex-mini-latest`). Use canonical IDs: `gpt-5.1`, `gpt-5.1-codex-mini`, `gpt-5.2`, `gpt-5.2-codex`. ([#536](https://github.com/badlogic/companion-mono/pull/536) by [@ghoulr](https://github.com/ghoulr)) + +### Added + +- `--no-extensions` flag to disable extension discovery while still allowing explicit `-e` paths ([#524](https://github.com/badlogic/companion-mono/pull/524) by [@cv](https://github.com/cv)) +- SDK: `InteractiveMode`, `runPrintMode()`, `runRpcMode()` exported for building custom run modes. See `docs/sdk.md`. +- `COMPANION_SKIP_VERSION_CHECK` environment variable to disable new version notifications at startup ([#549](https://github.com/badlogic/companion-mono/pull/549) by [@aos](https://github.com/aos)) +- `thinkingBudgets` setting to customize token budgets per thinking level for token-based providers ([#529](https://github.com/badlogic/companion-mono/pull/529) by [@melihmucuk](https://github.com/melihmucuk)) +- Extension UI dialogs (`ctx.ui.select()`, `ctx.ui.confirm()`, `ctx.ui.input()`) now support a `timeout` option with live countdown display ([#522](https://github.com/badlogic/companion-mono/pull/522) by [@nicobailon](https://github.com/nicobailon)) +- Extensions can now provide custom editor components via `ctx.ui.setEditorComponent()`. See `examples/extensions/modal-editor.ts` and `docs/tui.md` Pattern 7. +- Extension factories can now be async, enabling dynamic imports and lazy-loaded dependencies ([#513](https://github.com/badlogic/companion-mono/pull/513) by [@austinm911](https://github.com/austinm911)) +- `ctx.shutdown()` is now available in extension contexts for requesting a graceful shutdown. In interactive mode, shutdown is deferred until the agent becomes idle (after processing all queued steering and follow-up messages). In RPC mode, shutdown is deferred until after completing the current command response. In print mode, shutdown is a no-op as the process exits automatically when prompts complete. ([#542](https://github.com/badlogic/companion-mono/pull/542) by [@kaofelix](https://github.com/kaofelix)) + +### Fixed + +- Default thinking level from settings now applies correctly when `enabledModels` is configured ([#540](https://github.com/badlogic/companion-mono/pull/540) by [@ferologics](https://github.com/ferologics)) +- External edits to `settings.json` while companion is running are now preserved when companion saves settings ([#527](https://github.com/badlogic/companion-mono/pull/527) by [@ferologics](https://github.com/ferologics)) +- Overflow-based compaction now skips if error came from a different model or was already handled by a previous compaction ([#535](https://github.com/badlogic/companion-mono/pull/535) by [@mitsuhiko](https://github.com/mitsuhiko)) +- OpenAI Codex context window reduced from 400k to 272k tokens to match Codex CLI defaults and prevent 400 errors ([#536](https://github.com/badlogic/companion-mono/pull/536) by [@ghoulr](https://github.com/ghoulr)) +- Context overflow detection now recognizes `context_length_exceeded` errors. +- Key presses no longer dropped when input is batched over SSH ([#538](https://github.com/badlogic/companion-mono/issues/538)) +- Clipboard image support now works on Alpine Linux and other musl-based distros ([#533](https://github.com/badlogic/companion-mono/issues/533)) + +## [0.37.8] - 2026-01-07 + +## [0.37.7] - 2026-01-07 + +## [0.37.6] - 2026-01-06 + +### Added + +- Extension UI dialogs (`ctx.ui.select()`, `ctx.ui.confirm()`, `ctx.ui.input()`) now accept an optional `AbortSignal` to programmatically dismiss dialogs. Useful for implementing timeouts. See `examples/extensions/timed-confirm.ts`. ([#474](https://github.com/badlogic/companion-mono/issues/474)) +- HTML export now shows bridge prompts in model change messages for Codex sessions ([#510](https://github.com/badlogic/companion-mono/pull/510) by [@mitsuhiko](https://github.com/mitsuhiko)) + +## [0.37.5] - 2026-01-06 + +### Added + +- ExtensionAPI: `setModel()`, `getThinkingLevel()`, `setThinkingLevel()` methods for extensions to change model and thinking level at runtime ([#509](https://github.com/badlogic/companion-mono/issues/509)) +- Exported truncation utilities for custom tools: `truncateHead`, `truncateTail`, `truncateLine`, `formatSize`, `DEFAULT_MAX_BYTES`, `DEFAULT_MAX_LINES`, `TruncationOptions`, `TruncationResult` +- New example `truncated-tool.ts` demonstrating proper output truncation with custom rendering for extensions +- New example `preset.ts` demonstrating preset configurations with model/thinking/tools switching ([#347](https://github.com/badlogic/companion-mono/issues/347)) +- Documentation for output truncation best practices in `docs/extensions.md` +- Exported all UI components for extensions: `ArminComponent`, `AssistantMessageComponent`, `BashExecutionComponent`, `BorderedLoader`, `BranchSummaryMessageComponent`, `CompactionSummaryMessageComponent`, `CustomEditor`, `CustomMessageComponent`, `DynamicBorder`, `ExtensionEditorComponent`, `ExtensionInputComponent`, `ExtensionSelectorComponent`, `FooterComponent`, `LoginDialogComponent`, `ModelSelectorComponent`, `OAuthSelectorComponent`, `SessionSelectorComponent`, `SettingsSelectorComponent`, `ShowImagesSelectorComponent`, `ThemeSelectorComponent`, `ThinkingSelectorComponent`, `ToolExecutionComponent`, `TreeSelectorComponent`, `UserMessageComponent`, `UserMessageSelectorComponent`, plus utilities `renderDiff`, `truncateToVisualLines` +- `docs/tui.md`: Common Patterns section with copy-paste code for SelectList, BorderedLoader, SettingsList, setStatus, setWidget, setFooter +- `docs/tui.md`: Key Rules section documenting critical patterns for extension UI development +- `docs/extensions.md`: Exhaustive example links for all ExtensionAPI methods and events +- System prompt now references `docs/tui.md` for TUI component development + +## [0.37.4] - 2026-01-06 + +### Added + +- Session picker (`companion -r`) and `--session` flag now support searching/resuming by session ID (UUID prefix) ([#495](https://github.com/badlogic/companion-mono/issues/495) by [@arunsathiya](https://github.com/arunsathiya)) +- Extensions can now replace the startup header with `ctx.ui.setHeader()`, see `examples/extensions/custom-header.ts` ([#500](https://github.com/badlogic/companion-mono/pull/500) by [@tudoroancea](https://github.com/tudoroancea)) + +### Changed + +- Startup help text: fixed misleading "ctrl+k to delete line" to "ctrl+k to delete to end" +- Startup help text and `/hotkeys`: added `!!` shortcut for running bash without adding output to context + +### Fixed + +- Queued steering/follow-up messages no longer wipe unsent editor input ([#503](https://github.com/badlogic/companion-mono/pull/503) by [@tmustier](https://github.com/tmustier)) +- OAuth token refresh failure no longer crashes app at startup, allowing user to `/login` to re-authenticate ([#498](https://github.com/badlogic/companion-mono/issues/498)) + +## [0.37.3] - 2026-01-06 + +### Added + +- Extensions can now replace the footer with `ctx.ui.setFooter()`, see `examples/extensions/custom-footer.ts` ([#481](https://github.com/badlogic/companion-mono/issues/481)) +- Session ID is now forwarded to LLM providers for session-based caching (used by OpenAI Codex for prompt caching). +- Added `blockImages` setting to prevent images from being sent to LLM providers ([#492](https://github.com/badlogic/companion-mono/pull/492) by [@jsinge97](https://github.com/jsinge97)) +- Extensions can now send user messages via `companion.sendUserMessage()` ([#483](https://github.com/badlogic/companion-mono/issues/483)) + +### Fixed + +- Add `minimatch` as a direct dependency for explicit imports. +- Status bar now shows correct git branch when running in a git worktree ([#490](https://github.com/badlogic/companion-mono/pull/490) by [@kcosr](https://github.com/kcosr)) +- Interactive mode: Ctrl+V clipboard image paste now works on Wayland sessions by using `wl-paste` with `xclip` fallback ([#488](https://github.com/badlogic/companion-mono/pull/488) by [@ghoulr](https://github.com/ghoulr)) + +## [0.37.2] - 2026-01-05 + +### Fixed + +- Extension directories in `settings.json` now respect `package.json` manifests, matching global extension behavior ([#480](https://github.com/badlogic/companion-mono/pull/480) by [@prateekmedia](https://github.com/prateekmedia)) +- Share viewer: deep links now scroll to the target message when opened via `/share` +- Bash tool now handles spawn errors gracefully instead of crashing the agent (missing cwd, invalid shell path) ([#479](https://github.com/badlogic/companion-mono/pull/479) by [@robinwander](https://github.com/robinwander)) + +## [0.37.1] - 2026-01-05 + +### Fixed + +- Share viewer: copy-link buttons now generate correct URLs when session is viewed via `/share` (iframe context) + +## [0.37.0] - 2026-01-05 + +### Added + +- Share viewer: copy-link button on messages to share URLs that navigate directly to a specific message ([#477](https://github.com/badlogic/companion-mono/pull/477) by [@lockmeister](https://github.com/lockmeister)) +- Extension example: add `claude-rules` to load `.claude/rules/` entries into the system prompt ([#461](https://github.com/badlogic/companion-mono/pull/461) by [@vaayne](https://github.com/vaayne)) +- Headless OAuth login: all providers now show paste input for manual URL/code entry, works over SSH without DISPLAY ([#428](https://github.com/badlogic/companion-mono/pull/428) by [@ben-vargas](https://github.com/ben-vargas), [#468](https://github.com/badlogic/companion-mono/pull/468) by [@crcatala](https://github.com/crcatala)) + +### Changed + +- OAuth login UI now uses dedicated dialog component with consistent borders +- Assume truecolor support for all terminals except `dumb`, empty, or `linux` (fixes colors over SSH) +- OpenAI Codex clean-up: removed per-thinking-level model variants, thinking level is now set separately and the provider clamps to what each model supports internally (initial implementation in [#472](https://github.com/badlogic/companion-mono/pull/472) by [@ben-vargas](https://github.com/ben-vargas)) + +### Fixed + +- Messages submitted during compaction are queued and delivered after compaction completes, preserving steering and follow-up behavior. Extension commands execute immediately during compaction. ([#476](https://github.com/badlogic/companion-mono/pull/476) by [@tmustier](https://github.com/tmustier)) +- Managed binaries (`fd`, `rg`) now stored in `~/.companion/agent/bin/` instead of `tools/`, eliminating false deprecation warnings ([#470](https://github.com/badlogic/companion-mono/pull/470) by [@mcinteerj](https://github.com/mcinteerj)) +- Extensions defined in `settings.json` were not loaded ([#463](https://github.com/badlogic/companion-mono/pull/463) by [@melihmucuk](https://github.com/melihmucuk)) +- OAuth refresh no longer logs users out when multiple companion instances are running ([#466](https://github.com/badlogic/companion-mono/pull/466) by [@Cursivez](https://github.com/Cursivez)) +- Migration warnings now ignore `fd.exe` and `rg.exe` in `tools/` on Windows ([#458](https://github.com/badlogic/companion-mono/pull/458) by [@carlosgtrz](https://github.com/carlosgtrz)) +- CI: add `examples/extensions/with-deps` to workspaces to fix typecheck ([#467](https://github.com/badlogic/companion-mono/pull/467) by [@aliou](https://github.com/aliou)) +- SDK: passing `extensions: []` now disables extension discovery as documented ([#465](https://github.com/badlogic/companion-mono/pull/465) by [@aliou](https://github.com/aliou)) + +## [0.36.0] - 2026-01-05 + +### Added + +- Experimental: OpenAI Codex OAuth provider support: access Codex models via ChatGPT Plus/Pro subscription using `/login openai-codex` ([#451](https://github.com/badlogic/companion-mono/pull/451) by [@kim0](https://github.com/kim0)) + +## [0.35.0] - 2026-01-05 + +This release unifies hooks and custom tools into a single "extensions" system and renames "slash commands" to "prompt templates". ([#454](https://github.com/badlogic/companion-mono/issues/454)) + +**Before migrating, read:** + +- [docs/extensions.md](docs/extensions.md) - Full API reference +- [README.md](README.md) - Extensions section with examples +- [examples/extensions/](examples/extensions/) - Working examples + +### Extensions Migration + +Hooks and custom tools are now unified as **extensions**. Both were TypeScript modules exporting a factory function that receives an API object. Now there's one concept, one discovery location, one CLI flag, one settings.json entry. + +**Automatic migration:** + +- `commands/` directories are automatically renamed to `prompts/` on startup (both `~/.companion/agent/commands/` and `.companion/commands/`) + +**Manual migration required:** + +1. Move files from `hooks/` and `tools/` directories to `extensions/` (deprecation warnings shown on startup) +2. Update imports and type names in your extension code +3. Update `settings.json` if you have explicit hook and custom tool paths configured + +**Directory changes:** + +``` +# Before +~/.companion/agent/hooks/*.ts → ~/.companion/agent/extensions/*.ts +~/.companion/agent/tools/*.ts → ~/.companion/agent/extensions/*.ts +.companion/hooks/*.ts → .companion/extensions/*.ts +.companion/tools/*.ts → .companion/extensions/*.ts +``` + +**Extension discovery rules** (in `extensions/` directories): + +1. **Direct files:** `extensions/*.ts` or `*.js` → loaded directly +2. **Subdirectory with index:** `extensions/myext/index.ts` → loaded as single extension +3. **Subdirectory with package.json:** `extensions/myext/package.json` with `"companion"` field → loads declared paths + +```json +// extensions/my-package/package.json +{ + "name": "my-extension-package", + "dependencies": { "zod": "^3.0.0" }, + "companion": { + "extensions": ["./src/main.ts", "./src/tools.ts"] + } +} +``` + +No recursion beyond one level. Complex packages must use the `package.json` manifest. Dependencies are resolved via jiti, and extensions can be published to and installed from npm. + +**Type renames:** + +- `HookAPI` → `ExtensionAPI` +- `HookContext` → `ExtensionContext` +- `HookCommandContext` → `ExtensionCommandContext` +- `HookUIContext` → `ExtensionUIContext` +- `CustomToolAPI` → `ExtensionAPI` (merged) +- `CustomToolContext` → `ExtensionContext` (merged) +- `CustomToolUIContext` → `ExtensionUIContext` +- `CustomTool` → `ToolDefinition` +- `CustomToolFactory` → `ExtensionFactory` +- `HookMessage` → `CustomMessage` + +**Import changes:** + +```typescript +// Before (hook) +import type { HookAPI, HookContext } from "@mariozechner/companion-coding-agent"; +export default function (companion: HookAPI) { ... } + +// Before (custom tool) +import type { CustomToolFactory } from "@mariozechner/companion-coding-agent"; +const factory: CustomToolFactory = (companion) => ({ name: "my_tool", ... }); +export default factory; + +// After (both are now extensions) +import type { ExtensionAPI } from "@mariozechner/companion-coding-agent"; +export default function (companion: ExtensionAPI) { + companion.on("tool_call", async (event, ctx) => { ... }); + companion.registerTool({ name: "my_tool", ... }); +} +``` + +**Custom tools now have full context access.** Tools registered via `companion.registerTool()` now receive the same `ctx` object that event handlers receive. Previously, custom tools had limited context. Now all extension code shares the same capabilities: + +- `companion.registerTool()` - Register tools the LLM can call +- `companion.registerCommand()` - Register commands like `/mycommand` +- `companion.registerShortcut()` - Register keyboard shortcuts (shown in `/hotkeys`) +- `companion.registerFlag()` - Register CLI flags (shown in `--help`) +- `companion.registerMessageRenderer()` - Custom TUI rendering for message types +- `companion.on()` - Subscribe to lifecycle events (tool_call, session_start, etc.) +- `companion.sendMessage()` - Inject messages into the conversation +- `companion.appendEntry()` - Persist custom data in session (survives restart/branch) +- `companion.exec()` - Run shell commands +- `companion.getActiveTools()` / `companion.setActiveTools()` - Dynamic tool enable/disable +- `companion.getAllTools()` - List all available tools +- `companion.events` - Event bus for cross-extension communication +- `ctx.ui.confirm()` / `select()` / `input()` - User prompts +- `ctx.ui.notify()` - Toast notifications +- `ctx.ui.setStatus()` - Persistent status in footer (multiple extensions can set their own) +- `ctx.ui.setWidget()` - Widget display above editor +- `ctx.ui.setTitle()` - Set terminal window title +- `ctx.ui.custom()` - Full TUI component with keyboard handling +- `ctx.ui.editor()` - Multi-line text editor with external editor support +- `ctx.sessionManager` - Read session entries, get branch history + +**Settings changes:** + +```json +// Before +{ + "hooks": ["./my-hook.ts"], + "customTools": ["./my-tool.ts"] +} + +// After +{ + "extensions": ["./my-extension.ts"] +} +``` + +**CLI changes:** + +```bash +# Before +companion --hook ./safety.ts --tool ./todo.ts + +# After +companion --extension ./safety.ts -e ./todo.ts +``` + +### Prompt Templates Migration + +"Slash commands" (markdown files defining reusable prompts invoked via `/name`) are renamed to "prompt templates" to avoid confusion with extension-registered commands. + +**Automatic migration:** The `commands/` directory is automatically renamed to `prompts/` on startup (if `prompts/` doesn't exist). Works for both regular directories and symlinks. + +**Directory changes:** + +``` +~/.companion/agent/commands/*.md → ~/.companion/agent/prompts/*.md +.companion/commands/*.md → .companion/prompts/*.md +``` + +**SDK type renames:** + +- `FileSlashCommand` → `PromptTemplate` +- `LoadSlashCommandsOptions` → `LoadPromptTemplatesOptions` + +**SDK function renames:** + +- `discoverSlashCommands()` → `discoverPromptTemplates()` +- `loadSlashCommands()` → `loadPromptTemplates()` +- `expandSlashCommand()` → `expandPromptTemplate()` +- `getCommandsDir()` → `getPromptsDir()` + +**SDK option renames:** + +- `CreateAgentSessionOptions.slashCommands` → `.promptTemplates` +- `AgentSession.fileCommands` → `.promptTemplates` +- `PromptOptions.expandSlashCommands` → `.expandPromptTemplates` + +### SDK Migration + +**Discovery functions:** + +- `discoverAndLoadHooks()` → `discoverAndLoadExtensions()` +- `discoverAndLoadCustomTools()` → merged into `discoverAndLoadExtensions()` +- `loadHooks()` → `loadExtensions()` +- `loadCustomTools()` → merged into `loadExtensions()` + +**Runner and wrapper:** + +- `HookRunner` → `ExtensionRunner` +- `wrapToolsWithHooks()` → `wrapToolsWithExtensions()` +- `wrapToolWithHooks()` → `wrapToolWithExtensions()` + +**CreateAgentSessionOptions:** + +- `.hooks` → removed (use `.additionalExtensionPaths` for paths) +- `.additionalHookPaths` → `.additionalExtensionPaths` +- `.preloadedHooks` → `.preloadedExtensions` +- `.customTools` type changed: `Array<{ path?; tool: CustomTool }>` → `ToolDefinition[]` +- `.additionalCustomToolPaths` → merged into `.additionalExtensionPaths` +- `.slashCommands` → `.promptTemplates` + +**AgentSession:** + +- `.hookRunner` → `.extensionRunner` +- `.fileCommands` → `.promptTemplates` +- `.sendHookMessage()` → `.sendCustomMessage()` + +### Session Migration + +**Automatic.** Session version bumped from 2 to 3. Existing sessions are migrated on first load: + +- Message role `"hookMessage"` → `"custom"` + +### Breaking Changes + +- **Settings:** `hooks` and `customTools` arrays replaced with single `extensions` array +- **CLI:** `--hook` and `--tool` flags replaced with `--extension` / `-e` +- **Directories:** `hooks/`, `tools/` → `extensions/`; `commands/` → `prompts/` +- **Types:** See type renames above +- **SDK:** See SDK migration above + +### Changed + +- Extensions can have their own `package.json` with dependencies (resolved via jiti) +- Documentation: `docs/hooks.md` and `docs/custom-tools.md` merged into `docs/extensions.md` +- Examples: `examples/hooks/` and `examples/custom-tools/` merged into `examples/extensions/` +- README: Extensions section expanded with custom tools, commands, events, state persistence, shortcuts, flags, and UI examples +- SDK: `customTools` option now accepts `ToolDefinition[]` directly (simplified from `Array<{ path?, tool }>`) +- SDK: `extensions` option accepts `ExtensionFactory[]` for inline extensions +- SDK: `additionalExtensionPaths` replaces both `additionalHookPaths` and `additionalCustomToolPaths` + +## [0.34.2] - 2026-01-04 + +## [0.34.1] - 2026-01-04 + +### Added + +- Hook API: `ctx.ui.setTitle(title)` allows hooks to set the terminal window/tab title ([#446](https://github.com/badlogic/companion-mono/pull/446) by [@aliou](https://github.com/aliou)) + +### Changed + +- Expanded keybinding documentation to list all 32 supported symbol keys with notes on ctrl+symbol behavior ([#450](https://github.com/badlogic/companion-mono/pull/450) by [@kaofelix](https://github.com/kaofelix)) + +## [0.34.0] - 2026-01-04 + +### Added + +- Hook API: `companion.getActiveTools()` and `companion.setActiveTools(toolNames)` for dynamically enabling/disabling tools from hooks +- Hook API: `companion.getAllTools()` to enumerate all configured tools (built-in via --tools or default, plus custom tools) +- Hook API: `companion.registerFlag(name, options)` and `companion.getFlag(name)` for hooks to register custom CLI flags (parsed automatically) +- Hook API: `companion.registerShortcut(shortcut, options)` for hooks to register custom keyboard shortcuts using `KeyId` (e.g., `Key.shift("p")`). Conflicts with built-in shortcuts are skipped, conflicts between hooks logged as warnings. +- Hook API: `ctx.ui.setWidget(key, content)` for status displays above the editor. Accepts either a string array or a component factory function. +- Hook API: `theme.strikethrough(text)` for strikethrough text styling +- Hook API: `before_agent_start` handlers can now return `systemPromptAppend` to dynamically append text to the system prompt for that turn. Multiple hooks' appends are concatenated. +- Hook API: `before_agent_start` handlers can now return multiple messages (all are injected, not just the first) +- `/hotkeys` command now shows hook-registered shortcuts in a separate "Hooks" section +- New example hook: `plan-mode.ts` - Claude Code-style read-only exploration mode: + - Toggle via `/plan` command, `Shift+P` shortcut, or `--plan` CLI flag + - Read-only tools: `read`, `bash`, `grep`, `find`, `ls` (no `edit`/`write`) + - Bash commands restricted to non-destructive operations (blocks `rm`, `mv`, `git commit`, `npm install`, etc.) + - Interactive prompt after each response: execute plan, stay in plan mode, or refine + - Todo list widget showing progress with checkboxes and strikethrough for completed items + - Each todo has a unique ID; agent marks items done by outputting `[DONE:id]` + - Progress updates via `agent_end` hook (parses completed items from final message) + - `/todos` command to view current plan progress + - Shows `⏸ plan` indicator in footer when in plan mode, `📋 2/5` when executing + - State persists across sessions (including todo progress) +- New example hook: `tools.ts` - Interactive `/tools` command to enable/disable tools with session persistence +- New example hook: `pirate.ts` - Demonstrates `systemPromptAppend` to make the agent speak like a pirate +- Tool registry now contains all built-in tools (read, bash, edit, write, grep, find, ls) even when `--tools` limits the initially active set. Hooks can enable any tool from the registry via `companion.setActiveTools()`. +- System prompt now automatically rebuilds when tools change via `setActiveTools()`, updating tool descriptions and guidelines to match the new tool set +- Hook errors now display full stack traces for easier debugging +- Event bus (`companion.events`) for tool/hook communication: shared pub/sub between custom tools and hooks +- Custom tools now have `companion.sendMessage()` to send messages directly to the agent session without needing the event bus +- `sendMessage()` supports `deliverAs: "nextTurn"` to queue messages for the next user prompt + +### Changed + +- Removed image placeholders after copy & paste, replaced with inserting image file paths directly. ([#442](https://github.com/badlogic/companion-mono/pull/442) by [@mitsuhiko](https://github.com/mitsuhiko)) + +### Fixed + +- Fixed potential text decoding issues in bash executor by using streaming TextDecoder instead of Buffer.toString() +- External editor (Ctrl-G) now shows full pasted content instead of `[paste #N ...]` placeholders ([#444](https://github.com/badlogic/companion-mono/pull/444) by [@aliou](https://github.com/aliou)) + +## [0.33.0] - 2026-01-04 + +### Breaking Changes + +- **Key detection functions removed from `@mariozechner/companion-tui`**: All `isXxx()` key detection functions (`isEnter()`, `isEscape()`, `isCtrlC()`, etc.) have been removed. Use `matchesKey(data, keyId)` instead (e.g., `matchesKey(data, "enter")`, `matchesKey(data, "ctrl+c")`). This affects hooks and custom tools that use `ctx.ui.custom()` with keyboard input handling. ([#405](https://github.com/badlogic/companion-mono/pull/405)) + +### Added + +- Clipboard image paste support via `Ctrl+V`. Images are saved to a temp file and attached to the message. Works on macOS, Windows, and Linux (X11). ([#419](https://github.com/badlogic/companion-mono/issues/419)) +- Configurable keybindings via `~/.companion/agent/keybindings.json`. All keyboard shortcuts (editor navigation, deletion, app actions like model cycling, etc.) can now be customized. Supports multiple bindings per action. ([#405](https://github.com/badlogic/companion-mono/pull/405) by [@hjanuschka](https://github.com/hjanuschka)) +- `/quit` and `/exit` slash commands to gracefully exit the application. Unlike double Ctrl+C, these properly await hook and custom tool cleanup handlers before exiting. ([#426](https://github.com/badlogic/companion-mono/pull/426) by [@ben-vargas](https://github.com/ben-vargas)) + +### Fixed + +- Subagent example README referenced incorrect filename `subagent.ts` instead of `index.ts` ([#427](https://github.com/badlogic/companion-mono/pull/427) by [@Whamp](https://github.com/Whamp)) + +## [0.32.3] - 2026-01-03 + +### Fixed + +- `--list-models` no longer shows Google Vertex AI models without explicit authentication configured +- JPEG/GIF/WebP images not displaying in terminals using Kitty graphics protocol (Kitty, Ghostty, WezTerm). The protocol requires PNG format, so non-PNG images are now converted before display. +- Version check URL typo preventing update notifications from working ([#423](https://github.com/badlogic/companion-mono/pull/423) by [@skuridin](https://github.com/skuridin)) +- Large images exceeding Anthropic's 5MB limit now retry with progressive quality/size reduction ([#424](https://github.com/badlogic/companion-mono/pull/424) by [@mitsuhiko](https://github.com/mitsuhiko)) + +## [0.32.2] - 2026-01-03 + +### Added + +- `$ARGUMENTS` syntax for custom slash commands as alternative to `$@` for all arguments joined. Aligns with patterns used by Claude, Codex, and OpenCode. Both syntaxes remain fully supported. ([#418](https://github.com/badlogic/companion-mono/pull/418) by [@skuridin](https://github.com/skuridin)) + +### Changed + +- **Slash commands and hook commands now work during streaming**: Previously, using a slash command or hook command while the agent was streaming would crash with "Agent is already processing". Now: + - Hook commands execute immediately (they manage their own LLM interaction via `companion.sendMessage()`) + - File-based slash commands are expanded and queued via steer/followUp + - `steer()` and `followUp()` now expand file-based slash commands and error on hook commands (hook commands cannot be queued) + - `prompt()` accepts new `streamingBehavior` option (`"steer"` or `"followUp"`) to specify queueing behavior during streaming + - RPC `prompt` command now accepts optional `streamingBehavior` field + ([#420](https://github.com/badlogic/companion-mono/issues/420)) + +### Fixed + +- Slash command argument substitution now processes positional arguments (`$1`, `$2`, etc.) before all-arguments (`$@`, `$ARGUMENTS`) to prevent recursive substitution when argument values contain dollar-digit patterns like `$100`. ([#418](https://github.com/badlogic/companion-mono/pull/418) by [@skuridin](https://github.com/skuridin)) + +## [0.32.1] - 2026-01-03 + +### Added + +- Shell commands without context contribution: use `!!command` to execute a bash command that is shown in the TUI and saved to session history but excluded from LLM context. Useful for running commands you don't want the AI to see. ([#414](https://github.com/badlogic/companion-mono/issues/414)) + +### Fixed + +- Edit tool diff not displaying in TUI due to race condition between async preview computation and tool execution + +## [0.32.0] - 2026-01-03 + +### Breaking Changes + +- **Queue API replaced with steer/followUp**: The `queueMessage()` method has been split into two methods with different delivery semantics ([#403](https://github.com/badlogic/companion-mono/issues/403)): + - `steer(text)`: Interrupts the agent mid-run (Enter while streaming). Delivered after current tool execution. + - `followUp(text)`: Waits until the agent finishes (Alt+Enter while streaming). Delivered only when agent stops. +- **Settings renamed**: `queueMode` setting renamed to `steeringMode`. Added new `followUpMode` setting. Old settings.json files are migrated automatically. +- **AgentSession methods renamed**: + - `queueMessage()` → `steer()` and `followUp()` + - `queueMode` getter → `steeringMode` and `followUpMode` getters + - `setQueueMode()` → `setSteeringMode()` and `setFollowUpMode()` + - `queuedMessageCount` → `pendingMessageCount` + - `getQueuedMessages()` → `getSteeringMessages()` and `getFollowUpMessages()` + - `clearQueue()` now returns `{ steering: string[], followUp: string[] }` + - `hasQueuedMessages()` → `hasPendingMessages()` +- **Hook API signature changed**: `companion.sendMessage()` second parameter changed from `triggerTurn?: boolean` to `options?: { triggerTurn?, deliverAs? }`. Use `deliverAs: "followUp"` for follow-up delivery. Affects both hooks and internal `sendHookMessage()` method. +- **RPC API changes**: + - `queue_message` command → `steer` and `follow_up` commands + - `set_queue_mode` command → `set_steering_mode` and `set_follow_up_mode` commands + - `RpcSessionState.queueMode` → `steeringMode` and `followUpMode` +- **Settings UI**: "Queue mode" setting split into "Steering mode" and "Follow-up mode" + +### Added + +- Configurable double-escape action: choose whether double-escape with empty editor opens `/tree` (default) or `/branch`. Configure via `/settings` or `doubleEscapeAction` in settings.json ([#404](https://github.com/badlogic/companion-mono/issues/404)) +- Vertex AI provider (`google-vertex`): access Gemini models via Google Cloud Vertex AI using Application Default Credentials ([#300](https://github.com/badlogic/companion-mono/pull/300) by [@default-anton](https://github.com/default-anton)) +- Built-in provider overrides in `models.json`: override just `baseUrl` to route a built-in provider through a proxy while keeping all its models, or define `models` to fully replace the provider ([#406](https://github.com/badlogic/companion-mono/pull/406) by [@yevhen](https://github.com/yevhen)) +- Automatic image resizing: images larger than 2000x2000 are resized for better model compatibility. Original dimensions are injected into the prompt. Controlled via `/settings` or `images.autoResize` in settings.json. ([#402](https://github.com/badlogic/companion-mono/pull/402) by [@mitsuhiko](https://github.com/mitsuhiko)) +- Alt+Enter keybind to queue follow-up messages while agent is streaming +- `Theme` and `ThemeColor` types now exported for hooks using `ctx.ui.custom()` +- Terminal window title now displays "companion - dirname" to identify which project session you're in ([#407](https://github.com/badlogic/companion-mono/pull/407) by [@kaofelix](https://github.com/kaofelix)) + +### Changed + +- Editor component now uses word wrapping instead of character-level wrapping for better readability ([#382](https://github.com/badlogic/companion-mono/pull/382) by [@nickseelert](https://github.com/nickseelert)) + +### Fixed + +- `/model` selector now opens instantly instead of waiting for OAuth token refresh. Token refresh is deferred until a model is actually used. +- Shift+Space, Shift+Backspace, and Shift+Delete now work correctly in Kitty-protocol terminals (Kitty, WezTerm, etc.) instead of being silently ignored ([#411](https://github.com/badlogic/companion-mono/pull/411) by [@nathyong](https://github.com/nathyong)) +- `AgentSession.prompt()` now throws if called while the agent is already streaming, preventing race conditions. Use `steer()` or `followUp()` to queue messages during streaming. +- Ctrl+C now works like Escape in selector components, so mashing Ctrl+C will eventually close the program ([#400](https://github.com/badlogic/companion-mono/pull/400) by [@mitsuhiko](https://github.com/mitsuhiko)) + +## [0.31.1] - 2026-01-02 + +### Fixed + +- Model selector no longer allows negative index when pressing arrow keys before models finish loading ([#398](https://github.com/badlogic/companion-mono/pull/398) by [@mitsuhiko](https://github.com/mitsuhiko)) +- Type guard functions (`isBashToolResult`, etc.) now exported at runtime, not just in type declarations ([#397](https://github.com/badlogic/companion-mono/issues/397)) + +## [0.31.0] - 2026-01-02 + +This release introduces session trees for in-place branching, major API changes to hooks and custom tools, and structured compaction with file tracking. + +### Session Tree + +Sessions now use a tree structure with `id`/`parentId` fields. This enables in-place branching: navigate to any previous point with `/tree`, continue from there, and switch between branches while preserving all history in a single file. + +**Existing sessions are automatically migrated** (v1 → v2) on first load. No manual action required. + +New entry types: `BranchSummaryEntry` (context from abandoned branches), `CustomEntry` (hook state), `CustomMessageEntry` (hook-injected messages), `LabelEntry` (bookmarks). + +See [docs/session.md](docs/session.md) for the file format and `SessionManager` API. + +### Hooks Migration + +The hooks API has been restructured with more granular events and better session access. + +**Type renames:** + +- `HookEventContext` → `HookContext` +- `HookCommandContext` is now a new interface extending `HookContext` with session control methods + +**Event changes:** + +- The monolithic `session` event is now split into granular events: `session_start`, `session_before_switch`, `session_switch`, `session_before_branch`, `session_branch`, `session_before_compact`, `session_compact`, `session_shutdown` +- `session_before_switch` and `session_switch` events now include `reason: "new" | "resume"` to distinguish between `/new` and `/resume` +- New `session_before_tree` and `session_tree` events for `/tree` navigation (hook can provide custom branch summary) +- New `before_agent_start` event: inject messages before the agent loop starts +- New `context` event: modify messages non-destructively before each LLM call +- Session entries are no longer passed in events. Use `ctx.sessionManager.getEntries()` or `ctx.sessionManager.getBranch()` instead + +**API changes:** + +- `companion.send(text, attachments?)` → `companion.sendMessage(message, triggerTurn?)` (creates `CustomMessageEntry`) +- New `companion.appendEntry(customType, data?)` for hook state persistence (not in LLM context) +- New `companion.registerCommand(name, options)` for custom slash commands (handler receives `HookCommandContext`) +- New `companion.registerMessageRenderer(customType, renderer)` for custom TUI rendering +- New `ctx.isIdle()`, `ctx.abort()`, `ctx.hasQueuedMessages()` for agent state (available in all events) +- New `ctx.ui.editor(title, prefill?)` for multi-line text editing with Ctrl+G external editor support +- New `ctx.ui.custom(component)` for full TUI component rendering with keyboard focus +- New `ctx.ui.setStatus(key, text)` for persistent status text in footer (multiple hooks can set their own) +- New `ctx.ui.theme` getter for styling text with theme colors +- `ctx.exec()` moved to `companion.exec()` +- `ctx.sessionFile` → `ctx.sessionManager.getSessionFile()` +- New `ctx.modelRegistry` and `ctx.model` for API key resolution + +**HookCommandContext (slash commands only):** + +- `ctx.waitForIdle()` - wait for agent to finish streaming +- `ctx.newSession(options?)` - create new sessions with optional setup callback +- `ctx.fork(entryId) - fork from a specific entry, creating a new session file +- `ctx.navigateTree(targetId, options?)` - navigate the session tree + +These methods are only on `HookCommandContext` (not `HookContext`) because they can deadlock if called from event handlers that run inside the agent loop. + +**Removed:** + +- `hookTimeout` setting (hooks no longer have timeouts; use Ctrl+C to abort) +- `resolveApiKey` parameter (use `ctx.modelRegistry.getApiKey(model)`) + +See [docs/hooks.md](docs/hooks.md) and [examples/hooks/](examples/hooks/) for the current API. + +### Custom Tools Migration + +The custom tools API has been restructured to mirror the hooks pattern with a context object. + +**Type renames:** + +- `CustomAgentTool` → `CustomTool` +- `ToolAPI` → `CustomToolAPI` +- `ToolContext` → `CustomToolContext` +- `ToolSessionEvent` → `CustomToolSessionEvent` + +**Execute signature changed:** + +```typescript +// Before (v0.30.2) +execute(toolCallId, params, signal, onUpdate) + +// After +execute(toolCallId, params, onUpdate, ctx, signal?) +``` + +The new `ctx: CustomToolContext` provides `sessionManager`, `modelRegistry`, `model`, and agent state methods: + +- `ctx.isIdle()` - check if agent is streaming +- `ctx.hasQueuedMessages()` - check if user has queued messages (skip interactive prompts) +- `ctx.abort()` - abort current operation (fire-and-forget) + +**Session event changes:** + +- `CustomToolSessionEvent` now only has `reason` and `previousSessionFile` +- Session entries are no longer in the event. Use `ctx.sessionManager.getBranch()` or `ctx.sessionManager.getEntries()` to reconstruct state +- Reasons: `"start" | "switch" | "branch" | "tree" | "shutdown"` (no separate `"new"` reason; `/new` triggers `"switch"`) +- `dispose()` method removed. Use `onSession` with `reason: "shutdown"` for cleanup + +See [docs/custom-tools.md](docs/custom-tools.md) and [examples/custom-tools/](examples/custom-tools/) for the current API. + +### SDK Migration + +**Type changes:** + +- `CustomAgentTool` → `CustomTool` +- `AppMessage` → `AgentMessage` +- `sessionFile` returns `string | undefined` (was `string | null`) +- `model` returns `Model | undefined` (was `Model | null`) +- `Attachment` type removed. Use `ImageContent` from `@mariozechner/companion-ai` instead. Add images directly to message content arrays. + +**AgentSession API:** + +- `branch(entryIndex: number)` → `branch(entryId: string)` +- `getUserMessagesForBranching()` returns `{ entryId, text }` instead of `{ entryIndex, text }` +- `reset()` → `newSession(options?)` where options has optional `parentSession` for lineage tracking +- `newSession()` and `switchSession()` now return `Promise` (false if cancelled by hook) +- New `navigateTree(targetId, options?)` for in-place tree navigation + +**Hook integration:** + +- New `sendHookMessage(message, triggerTurn?)` for hook message injection + +**SessionManager API:** + +- Method renames: `saveXXX()` → `appendXXX()` (e.g., `appendMessage`, `appendCompaction`) +- `branchInPlace()` → `branch()` +- `reset()` → `newSession(options?)` with optional `parentSession` for lineage tracking +- `createBranchedSessionFromEntries(entries, index)` → `createBranchedSession(leafId)` +- `SessionHeader.branchedFrom` → `SessionHeader.parentSession` +- `saveCompaction(entry)` → `appendCompaction(summary, firstKeptEntryId, tokensBefore, details?)` +- `getEntries()` now excludes the session header (use `getHeader()` separately) +- `getSessionFile()` returns `string | undefined` (undefined for in-memory sessions) +- New tree methods: `getTree()`, `getBranch()`, `getLeafId()`, `getLeafEntry()`, `getEntry()`, `getChildren()`, `getLabel()` +- New append methods: `appendCustomEntry()`, `appendCustomMessageEntry()`, `appendLabelChange()` +- New branch methods: `branch(entryId)`, `branchWithSummary()` + +**ModelRegistry (new):** + +`ModelRegistry` is a new class that manages model discovery and API key resolution. It combines built-in models with custom models from `models.json` and resolves API keys via `AuthStorage`. + +```typescript +import { + discoverAuthStorage, + discoverModels, +} from "@mariozechner/companion-coding-agent"; + +const authStorage = discoverAuthStorage(); // ~/.companion/agent/auth.json +const modelRegistry = discoverModels(authStorage); // + ~/.companion/agent/models.json + +// Get all models (built-in + custom) +const allModels = modelRegistry.getAll(); + +// Get only models with valid API keys +const available = await modelRegistry.getAvailable(); + +// Find specific model +const model = modelRegistry.find("anthropic", "claude-sonnet-4-20250514"); + +// Get API key for a model +const apiKey = await modelRegistry.getApiKey(model); +``` + +This replaces the old `resolveApiKey` callback pattern. Hooks and custom tools access it via `ctx.modelRegistry`. + +**Renamed exports:** + +- `messageTransformer` → `convertToLlm` +- `SessionContext` alias `LoadedSession` removed + +See [docs/sdk.md](docs/sdk.md) and [examples/sdk/](examples/sdk/) for the current API. + +### RPC Migration + +**Session commands:** + +- `reset` command → `new_session` command with optional `parentSession` field + +**Branching commands:** + +- `branch` command: `entryIndex` → `entryId` +- `get_branch_messages` response: `entryIndex` → `entryId` + +**Type changes:** + +- Messages are now `AgentMessage` (was `AppMessage`) +- `prompt` command: `attachments` field replaced with `images` field using `ImageContent` format + +**Compaction events:** + +- `auto_compaction_start` now includes `reason` field (`"threshold"` or `"overflow"`) +- `auto_compaction_end` now includes `willRetry` field +- `compact` response includes full `CompactionResult` (`summary`, `firstKeptEntryId`, `tokensBefore`, `details`) + +See [docs/rpc.md](docs/rpc.md) for the current protocol. + +### Structured Compaction + +Compaction and branch summarization now use a structured output format: + +- Clear sections: Goal, Progress, Key Information, File Operations +- File tracking: `readFiles` and `modifiedFiles` arrays in `details`, accumulated across compactions +- Conversations are serialized to text before summarization to prevent the model from "continuing" them + +The `before_compact` and `before_tree` hook events allow custom compaction implementations. See [docs/compaction.md](docs/compaction.md). + +### Interactive Mode + +**`/tree` command:** + +- Navigate the full session tree in-place +- Search by typing, page with ←/→ +- Filter modes (Ctrl+O): default → no-tools → user-only → labeled-only → all +- Press `l` to label entries as bookmarks +- Selecting a branch switches context and optionally injects a summary of the abandoned branch + +**Entry labels:** + +- Bookmark any entry via `/tree` → select → `l` +- Labels appear in tree view and persist as `LabelEntry` + +**Theme changes (breaking for custom themes):** + +Custom themes must add these new color tokens or they will fail to load: + +- `selectedBg`: background for selected/highlighted items in tree selector and other components +- `customMessageBg`: background for hook-injected messages (`CustomMessageEntry`) +- `customMessageText`: text color for hook messages +- `customMessageLabel`: label color for hook messages (the `[customType]` prefix) + +Total color count increased from 46 to 50. See [docs/themes.md](docs/themes.md) for the full color list and copy values from the built-in dark/light themes. + +**Settings:** + +- `enabledModels`: allowlist models in `settings.json` (same format as `--models` CLI) + +### Added + +- `ctx.ui.setStatus(key, text)` for hooks to display persistent status text in the footer ([#385](https://github.com/badlogic/companion-mono/pull/385) by [@prateekmedia](https://github.com/prateekmedia)) +- `ctx.ui.theme` getter for styling status text and other output with theme colors +- `/share` command to upload session as a secret GitHub gist and get a shareable URL via shittycodingagent.ai ([#380](https://github.com/badlogic/companion-mono/issues/380)) +- HTML export now includes a tree visualization sidebar for navigating session branches ([#375](https://github.com/badlogic/companion-mono/issues/375)) +- HTML export supports keyboard shortcuts: Ctrl+T to toggle thinking blocks, Ctrl+O to toggle tool outputs +- HTML export supports theme-configurable background colors via optional `export` section in theme JSON ([#387](https://github.com/badlogic/companion-mono/pull/387) by [@mitsuhiko](https://github.com/mitsuhiko)) +- HTML export syntax highlighting now uses theme colors and matches TUI rendering +- **Snake game example hook**: Demonstrates `ui.custom()`, `registerCommand()`, and session persistence. See [examples/hooks/snake.ts](examples/hooks/snake.ts). +- **`thinkingText` theme token**: Configurable color for thinking block text. ([#366](https://github.com/badlogic/companion-mono/pull/366) by [@paulbettner](https://github.com/paulbettner)) + +### Changed + +- **Entry IDs**: Session entries now use short 8-character hex IDs instead of full UUIDs +- **API key priority**: `ANTHROPIC_OAUTH_TOKEN` now takes precedence over `ANTHROPIC_API_KEY` +- HTML export template split into separate files (template.html, template.css, template.js) for easier maintenance + +### Fixed + +- HTML export now properly sanitizes user messages containing HTML tags like ` + + + + +
+ +
+
+
+
+
+ +
+
+ + + + + + + + + + + + + diff --git a/packages/coding-agent/companion-out/export-html/template.js b/packages/coding-agent/companion-out/export-html/template.js new file mode 100644 index 0000000..3eb0517 --- /dev/null +++ b/packages/coding-agent/companion-out/export-html/template.js @@ -0,0 +1,1831 @@ +(function () { + "use strict"; + + // ============================================================ + // DATA LOADING + // ============================================================ + + const base64 = document.getElementById("session-data").textContent; + const binary = atob(base64); + const bytes = new Uint8Array(binary.length); + for (let i = 0; i < binary.length; i++) { + bytes[i] = binary.charCodeAt(i); + } + const data = JSON.parse(new TextDecoder("utf-8").decode(bytes)); + const { + header, + entries, + leafId: defaultLeafId, + systemPrompt, + tools, + renderedTools, + } = data; + + // ============================================================ + // URL PARAMETER HANDLING + // ============================================================ + + // Parse URL parameters for deep linking: leafId and targetId + // Check for injected params (when loaded in iframe via srcdoc) or use window.location + const injectedParams = document.querySelector('meta[name="pi-url-params"]'); + const searchString = injectedParams + ? injectedParams.content + : window.location.search.substring(1); + const urlParams = new URLSearchParams(searchString); + const urlLeafId = urlParams.get("leafId"); + const urlTargetId = urlParams.get("targetId"); + // Use URL leafId if provided, otherwise fall back to session default + const leafId = urlLeafId || defaultLeafId; + + // ============================================================ + // DATA STRUCTURES + // ============================================================ + + // Entry lookup by ID + const byId = new Map(); + for (const entry of entries) { + byId.set(entry.id, entry); + } + + // Tool call lookup (toolCallId -> {name, arguments}) + const toolCallMap = new Map(); + for (const entry of entries) { + if (entry.type === "message" && entry.message.role === "assistant") { + const content = entry.message.content; + if (Array.isArray(content)) { + for (const block of content) { + if (block.type === "toolCall") { + toolCallMap.set(block.id, { + name: block.name, + arguments: block.arguments, + }); + } + } + } + } + } + + // Label lookup (entryId -> label string) + // Labels are stored in 'label' entries that reference their target via targetId + const labelMap = new Map(); + for (const entry of entries) { + if (entry.type === "label" && entry.targetId && entry.label) { + labelMap.set(entry.targetId, entry.label); + } + } + + // ============================================================ + // TREE DATA PREPARATION (no DOM, pure data) + // ============================================================ + + /** + * Build tree structure from flat entries. + * Returns array of root nodes, each with { entry, children, label }. + */ + function buildTree() { + const nodeMap = new Map(); + const roots = []; + + // Create nodes + for (const entry of entries) { + nodeMap.set(entry.id, { + entry, + children: [], + label: labelMap.get(entry.id), + }); + } + + // Build parent-child relationships + for (const entry of entries) { + const node = nodeMap.get(entry.id); + if ( + entry.parentId === null || + entry.parentId === undefined || + entry.parentId === entry.id + ) { + roots.push(node); + } else { + const parent = nodeMap.get(entry.parentId); + if (parent) { + parent.children.push(node); + } else { + roots.push(node); + } + } + } + + // Sort children by timestamp + function sortChildren(node) { + node.children.sort( + (a, b) => + new Date(a.entry.timestamp).getTime() - + new Date(b.entry.timestamp).getTime(), + ); + node.children.forEach(sortChildren); + } + roots.forEach(sortChildren); + + return roots; + } + + /** + * Build set of entry IDs on path from root to target. + */ + function buildActivePathIds(targetId) { + const ids = new Set(); + let current = byId.get(targetId); + while (current) { + ids.add(current.id); + // Stop if no parent or self-referencing (root) + if (!current.parentId || current.parentId === current.id) { + break; + } + current = byId.get(current.parentId); + } + return ids; + } + + /** + * Get array of entries from root to target (the conversation path). + */ + function getPath(targetId) { + const path = []; + let current = byId.get(targetId); + while (current) { + path.unshift(current); + // Stop if no parent or self-referencing (root) + if (!current.parentId || current.parentId === current.id) { + break; + } + current = byId.get(current.parentId); + } + return path; + } + + // Tree node lookup for finding leaves + let treeNodeMap = null; + + /** + * Find the newest leaf node reachable from a given node. + * This allows clicking any node in a branch to show the full branch. + * Children are sorted by timestamp, so the newest is always last. + */ + function findNewestLeaf(nodeId) { + // Build tree node map lazily + if (!treeNodeMap) { + treeNodeMap = new Map(); + const tree = buildTree(); + function mapNodes(node) { + treeNodeMap.set(node.entry.id, node); + node.children.forEach(mapNodes); + } + tree.forEach(mapNodes); + } + + const node = treeNodeMap.get(nodeId); + if (!node) return nodeId; + + // Follow the newest (last) child at each level + let current = node; + while (current.children.length > 0) { + current = current.children[current.children.length - 1]; + } + return current.entry.id; + } + + /** + * Flatten tree into list with indentation and connector info. + * Returns array of { node, indent, showConnector, isLast, gutters, isVirtualRootChild, multipleRoots }. + * Matches tree-selector.ts logic exactly. + */ + function flattenTree(roots, activePathIds) { + const result = []; + const multipleRoots = roots.length > 1; + + // Mark which subtrees contain the active leaf + const containsActive = new Map(); + function markActive(node) { + let has = activePathIds.has(node.entry.id); + for (const child of node.children) { + if (markActive(child)) has = true; + } + containsActive.set(node, has); + return has; + } + roots.forEach(markActive); + + // Stack: [node, indent, justBranched, showConnector, isLast, gutters, isVirtualRootChild] + const stack = []; + + // Add roots (prioritize branch containing active leaf) + const orderedRoots = [...roots].sort( + (a, b) => Number(containsActive.get(b)) - Number(containsActive.get(a)), + ); + for (let i = orderedRoots.length - 1; i >= 0; i--) { + const isLast = i === orderedRoots.length - 1; + stack.push([ + orderedRoots[i], + multipleRoots ? 1 : 0, + multipleRoots, + multipleRoots, + isLast, + [], + multipleRoots, + ]); + } + + while (stack.length > 0) { + const [ + node, + indent, + justBranched, + showConnector, + isLast, + gutters, + isVirtualRootChild, + ] = stack.pop(); + + result.push({ + node, + indent, + showConnector, + isLast, + gutters, + isVirtualRootChild, + multipleRoots, + }); + + const children = node.children; + const multipleChildren = children.length > 1; + + // Order children (active branch first) + const orderedChildren = [...children].sort( + (a, b) => Number(containsActive.get(b)) - Number(containsActive.get(a)), + ); + + // Calculate child indent (matches tree-selector.ts) + let childIndent; + if (multipleChildren) { + // Parent branches: children get +1 + childIndent = indent + 1; + } else if (justBranched && indent > 0) { + // First generation after a branch: +1 for visual grouping + childIndent = indent + 1; + } else { + // Single-child chain: stay flat + childIndent = indent; + } + + // Build gutters for children + const connectorDisplayed = showConnector && !isVirtualRootChild; + const currentDisplayIndent = multipleRoots + ? Math.max(0, indent - 1) + : indent; + const connectorPosition = Math.max(0, currentDisplayIndent - 1); + const childGutters = connectorDisplayed + ? [...gutters, { position: connectorPosition, show: !isLast }] + : gutters; + + // Add children in reverse order for stack + for (let i = orderedChildren.length - 1; i >= 0; i--) { + const childIsLast = i === orderedChildren.length - 1; + stack.push([ + orderedChildren[i], + childIndent, + multipleChildren, + multipleChildren, + childIsLast, + childGutters, + false, + ]); + } + } + + return result; + } + + /** + * Build ASCII prefix string for tree node. + */ + function buildTreePrefix(flatNode) { + const { + indent, + showConnector, + isLast, + gutters, + isVirtualRootChild, + multipleRoots, + } = flatNode; + const displayIndent = multipleRoots ? Math.max(0, indent - 1) : indent; + const connector = + showConnector && !isVirtualRootChild ? (isLast ? "└─ " : "├─ ") : ""; + const connectorPosition = connector ? displayIndent - 1 : -1; + + const totalChars = displayIndent * 3; + const prefixChars = []; + for (let i = 0; i < totalChars; i++) { + const level = Math.floor(i / 3); + const posInLevel = i % 3; + + const gutter = gutters.find((g) => g.position === level); + if (gutter) { + prefixChars.push(posInLevel === 0 ? (gutter.show ? "│" : " ") : " "); + } else if (connector && level === connectorPosition) { + if (posInLevel === 0) { + prefixChars.push(isLast ? "└" : "├"); + } else if (posInLevel === 1) { + prefixChars.push("─"); + } else { + prefixChars.push(" "); + } + } else { + prefixChars.push(" "); + } + } + return prefixChars.join(""); + } + + // ============================================================ + // FILTERING (pure data) + // ============================================================ + + let filterMode = "default"; + let searchQuery = ""; + + function hasTextContent(content) { + if (typeof content === "string") return content.trim().length > 0; + if (Array.isArray(content)) { + for (const c of content) { + if (c.type === "text" && c.text && c.text.trim().length > 0) + return true; + } + } + return false; + } + + function extractContent(content) { + if (typeof content === "string") return content; + if (Array.isArray(content)) { + return content + .filter((c) => c.type === "text" && c.text) + .map((c) => c.text) + .join(""); + } + return ""; + } + + function getSearchableText(entry, label) { + const parts = []; + if (label) parts.push(label); + + switch (entry.type) { + case "message": { + const msg = entry.message; + parts.push(msg.role); + if (msg.content) parts.push(extractContent(msg.content)); + if (msg.role === "bashExecution" && msg.command) + parts.push(msg.command); + break; + } + case "custom_message": + parts.push(entry.customType); + parts.push( + typeof entry.content === "string" + ? entry.content + : extractContent(entry.content), + ); + break; + case "compaction": + parts.push("compaction"); + break; + case "branch_summary": + parts.push("branch summary", entry.summary); + break; + case "model_change": + parts.push("model", entry.modelId); + break; + case "thinking_level_change": + parts.push("thinking", entry.thinkingLevel); + break; + } + + return parts.join(" ").toLowerCase(); + } + + /** + * Filter flat nodes based on current filterMode and searchQuery. + */ + function filterNodes(flatNodes, currentLeafId) { + const searchTokens = searchQuery.toLowerCase().split(/\s+/).filter(Boolean); + + const filtered = flatNodes.filter((flatNode) => { + const entry = flatNode.node.entry; + const label = flatNode.node.label; + const isCurrentLeaf = entry.id === currentLeafId; + + // Always show current leaf + if (isCurrentLeaf) return true; + + // Hide assistant messages with only tool calls (no text) unless error/aborted + if (entry.type === "message" && entry.message.role === "assistant") { + const msg = entry.message; + const hasText = hasTextContent(msg.content); + const isErrorOrAborted = + msg.stopReason && + msg.stopReason !== "stop" && + msg.stopReason !== "toolUse"; + if (!hasText && !isErrorOrAborted) return false; + } + + // Apply filter mode + const isSettingsEntry = [ + "label", + "custom", + "model_change", + "thinking_level_change", + ].includes(entry.type); + let passesFilter = true; + + switch (filterMode) { + case "user-only": + passesFilter = + entry.type === "message" && entry.message.role === "user"; + break; + case "no-tools": + passesFilter = + !isSettingsEntry && + !(entry.type === "message" && entry.message.role === "toolResult"); + break; + case "labeled-only": + passesFilter = label !== undefined; + break; + case "all": + passesFilter = true; + break; + default: // 'default' + passesFilter = !isSettingsEntry; + break; + } + + if (!passesFilter) return false; + + // Apply search filter + if (searchTokens.length > 0) { + const nodeText = getSearchableText(entry, label); + if (!searchTokens.every((t) => nodeText.includes(t))) return false; + } + + return true; + }); + + // Recalculate visual structure based on visible tree + recalculateVisualStructure(filtered, flatNodes); + + return filtered; + } + + /** + * Recompute indentation/connectors for the filtered view + * + * Filtering can hide intermediate entries; descendants attach to the nearest visible ancestor. + * Keep indentation semantics aligned with flattenTree() so single-child chains don't drift right. + */ + function recalculateVisualStructure(filteredNodes, allFlatNodes) { + if (filteredNodes.length === 0) return; + + const visibleIds = new Set(filteredNodes.map((n) => n.node.entry.id)); + + // Build entry map for parent lookup (using full tree) + const entryMap = new Map(); + for (const flatNode of allFlatNodes) { + entryMap.set(flatNode.node.entry.id, flatNode); + } + + // Find nearest visible ancestor for a node + function findVisibleAncestor(nodeId) { + let currentId = entryMap.get(nodeId)?.node.entry.parentId; + while (currentId != null) { + if (visibleIds.has(currentId)) { + return currentId; + } + currentId = entryMap.get(currentId)?.node.entry.parentId; + } + return null; + } + + // Build visible tree structure + const visibleParent = new Map(); + const visibleChildren = new Map(); + visibleChildren.set(null, []); // root-level nodes + + for (const flatNode of filteredNodes) { + const nodeId = flatNode.node.entry.id; + const ancestorId = findVisibleAncestor(nodeId); + visibleParent.set(nodeId, ancestorId); + + if (!visibleChildren.has(ancestorId)) { + visibleChildren.set(ancestorId, []); + } + visibleChildren.get(ancestorId).push(nodeId); + } + + // Update multipleRoots based on visible roots + const visibleRootIds = visibleChildren.get(null); + const multipleRoots = visibleRootIds.length > 1; + + // Build a map for quick lookup: nodeId → FlatNode + const filteredNodeMap = new Map(); + for (const flatNode of filteredNodes) { + filteredNodeMap.set(flatNode.node.entry.id, flatNode); + } + + // DFS traversal of visible tree, applying same indentation rules as flattenTree() + // Stack items: [nodeId, indent, justBranched, showConnector, isLast, gutters, isVirtualRootChild] + const stack = []; + + // Add visible roots in reverse order (to process in forward order via stack) + for (let i = visibleRootIds.length - 1; i >= 0; i--) { + const isLast = i === visibleRootIds.length - 1; + stack.push([ + visibleRootIds[i], + multipleRoots ? 1 : 0, + multipleRoots, + multipleRoots, + isLast, + [], + multipleRoots, + ]); + } + + while (stack.length > 0) { + const [ + nodeId, + indent, + justBranched, + showConnector, + isLast, + gutters, + isVirtualRootChild, + ] = stack.pop(); + + const flatNode = filteredNodeMap.get(nodeId); + if (!flatNode) continue; + + // Update this node's visual properties + flatNode.indent = indent; + flatNode.showConnector = showConnector; + flatNode.isLast = isLast; + flatNode.gutters = gutters; + flatNode.isVirtualRootChild = isVirtualRootChild; + flatNode.multipleRoots = multipleRoots; + + // Get visible children of this node + const children = visibleChildren.get(nodeId) || []; + const multipleChildren = children.length > 1; + + // Calculate child indent using same rules as flattenTree(): + // - Parent branches (multiple children): children get +1 + // - Just branched and indent > 0: children get +1 for visual grouping + // - Single-child chain: stay flat + let childIndent; + if (multipleChildren) { + childIndent = indent + 1; + } else if (justBranched && indent > 0) { + childIndent = indent + 1; + } else { + childIndent = indent; + } + + // Build gutters for children (same logic as flattenTree) + const connectorDisplayed = showConnector && !isVirtualRootChild; + const currentDisplayIndent = multipleRoots + ? Math.max(0, indent - 1) + : indent; + const connectorPosition = Math.max(0, currentDisplayIndent - 1); + const childGutters = connectorDisplayed + ? [...gutters, { position: connectorPosition, show: !isLast }] + : gutters; + + // Add children in reverse order (to process in forward order via stack) + for (let i = children.length - 1; i >= 0; i--) { + const childIsLast = i === children.length - 1; + stack.push([ + children[i], + childIndent, + multipleChildren, + multipleChildren, + childIsLast, + childGutters, + false, + ]); + } + } + } + + // ============================================================ + // TREE DISPLAY TEXT (pure data -> string) + // ============================================================ + + function shortenPath(p) { + if (typeof p !== "string") return ""; + if (p.startsWith("/Users/")) { + const parts = p.split("/"); + if (parts.length > 2) return "~" + p.slice(("/Users/" + parts[2]).length); + } + if (p.startsWith("/home/")) { + const parts = p.split("/"); + if (parts.length > 2) return "~" + p.slice(("/home/" + parts[2]).length); + } + return p; + } + + function formatToolCall(name, args) { + switch (name) { + case "read": { + const path = shortenPath(String(args.path || args.file_path || "")); + const offset = args.offset; + const limit = args.limit; + let display = path; + if (offset !== undefined || limit !== undefined) { + const start = offset ?? 1; + const end = limit !== undefined ? start + limit - 1 : ""; + display += `:${start}${end ? `-${end}` : ""}`; + } + return `[read: ${display}]`; + } + case "write": + return `[write: ${shortenPath(String(args.path || args.file_path || ""))}]`; + case "edit": + return `[edit: ${shortenPath(String(args.path || args.file_path || ""))}]`; + case "bash": { + const rawCmd = String(args.command || ""); + const cmd = rawCmd + .replace(/[\n\t]/g, " ") + .trim() + .slice(0, 50); + return `[bash: ${cmd}${rawCmd.length > 50 ? "..." : ""}]`; + } + case "grep": + return `[grep: /${args.pattern || ""}/ in ${shortenPath(String(args.path || "."))}]`; + case "find": + return `[find: ${args.pattern || ""} in ${shortenPath(String(args.path || "."))}]`; + case "ls": + return `[ls: ${shortenPath(String(args.path || "."))}]`; + default: { + const argsStr = JSON.stringify(args).slice(0, 40); + return `[${name}: ${argsStr}${JSON.stringify(args).length > 40 ? "..." : ""}]`; + } + } + } + + function escapeHtml(text) { + const div = document.createElement("div"); + div.textContent = text; + return div.innerHTML; + } + + /** + * Truncate string to maxLen chars, append "..." if truncated. + */ + function truncate(s, maxLen = 100) { + if (s.length <= maxLen) return s; + return s.slice(0, maxLen) + "..."; + } + + /** + * Get display text for tree node (returns HTML string). + */ + function getTreeNodeDisplayHtml(entry, label) { + const normalize = (s) => s.replace(/[\n\t]/g, " ").trim(); + const labelHtml = label + ? `[${escapeHtml(label)}] ` + : ""; + + switch (entry.type) { + case "message": { + const msg = entry.message; + if (msg.role === "user") { + const content = truncate(normalize(extractContent(msg.content))); + return ( + labelHtml + + `user: ${escapeHtml(content)}` + ); + } + if (msg.role === "assistant") { + const textContent = truncate(normalize(extractContent(msg.content))); + if (textContent) { + return ( + labelHtml + + `assistant: ${escapeHtml(textContent)}` + ); + } + if (msg.stopReason === "aborted") { + return ( + labelHtml + + `assistant: (aborted)` + ); + } + if (msg.errorMessage) { + return ( + labelHtml + + `assistant: ${escapeHtml(truncate(msg.errorMessage))}` + ); + } + return ( + labelHtml + + `assistant: (no text)` + ); + } + if (msg.role === "toolResult") { + const toolCall = msg.toolCallId + ? toolCallMap.get(msg.toolCallId) + : null; + if (toolCall) { + return ( + labelHtml + + `${escapeHtml(formatToolCall(toolCall.name, toolCall.arguments))}` + ); + } + return ( + labelHtml + + `[${msg.toolName || "tool"}]` + ); + } + if (msg.role === "bashExecution") { + const cmd = truncate(normalize(msg.command || "")); + return ( + labelHtml + + `[bash]: ${escapeHtml(cmd)}` + ); + } + return labelHtml + `[${msg.role}]`; + } + case "compaction": + return ( + labelHtml + + `[compaction: ${Math.round(entry.tokensBefore / 1000)}k tokens]` + ); + case "branch_summary": { + const summary = truncate(normalize(entry.summary || "")); + return ( + labelHtml + + `[branch summary]: ${escapeHtml(summary)}` + ); + } + case "custom_message": { + const content = + typeof entry.content === "string" + ? entry.content + : extractContent(entry.content); + return ( + labelHtml + + `[${escapeHtml(entry.customType)}]: ${escapeHtml(truncate(normalize(content)))}` + ); + } + case "model_change": + return ( + labelHtml + + `[model: ${entry.modelId}]` + ); + case "thinking_level_change": + return ( + labelHtml + + `[thinking: ${entry.thinkingLevel}]` + ); + default: + return labelHtml + `[${entry.type}]`; + } + } + + // ============================================================ + // TREE RENDERING (DOM manipulation) + // ============================================================ + + let currentLeafId = leafId; + let currentTargetId = urlTargetId || leafId; + let treeRendered = false; + + function renderTree() { + const tree = buildTree(); + const activePathIds = buildActivePathIds(currentLeafId); + const flatNodes = flattenTree(tree, activePathIds); + const filtered = filterNodes(flatNodes, currentLeafId); + const container = document.getElementById("tree-container"); + + // Full render only on first call or when filter/search changes + if (!treeRendered) { + container.innerHTML = ""; + + for (const flatNode of filtered) { + const entry = flatNode.node.entry; + const isOnPath = activePathIds.has(entry.id); + const isTarget = entry.id === currentTargetId; + + const div = document.createElement("div"); + div.className = "tree-node"; + if (isOnPath) div.classList.add("in-path"); + if (isTarget) div.classList.add("active"); + div.dataset.id = entry.id; + + const prefix = buildTreePrefix(flatNode); + const prefixSpan = document.createElement("span"); + prefixSpan.className = "tree-prefix"; + prefixSpan.textContent = prefix; + + const marker = document.createElement("span"); + marker.className = "tree-marker"; + marker.textContent = isOnPath ? "•" : " "; + + const content = document.createElement("span"); + content.className = "tree-content"; + content.innerHTML = getTreeNodeDisplayHtml(entry, flatNode.node.label); + + div.appendChild(prefixSpan); + div.appendChild(marker); + div.appendChild(content); + // Navigate to the newest leaf through this node, but scroll to the clicked node + div.addEventListener("click", () => { + const leafId = findNewestLeaf(entry.id); + navigateTo(leafId, "target", entry.id); + }); + + container.appendChild(div); + } + + treeRendered = true; + } else { + // Just update markers and classes + const nodes = container.querySelectorAll(".tree-node"); + for (const node of nodes) { + const id = node.dataset.id; + const isOnPath = activePathIds.has(id); + const isTarget = id === currentTargetId; + + node.classList.toggle("in-path", isOnPath); + node.classList.toggle("active", isTarget); + + const marker = node.querySelector(".tree-marker"); + if (marker) { + marker.textContent = isOnPath ? "•" : " "; + } + } + } + + document.getElementById("tree-status").textContent = + `${filtered.length} / ${flatNodes.length} entries`; + + // Scroll active node into view after layout + setTimeout(() => { + const activeNode = container.querySelector(".tree-node.active"); + if (activeNode) { + activeNode.scrollIntoView({ block: "nearest" }); + } + }, 0); + } + + function forceTreeRerender() { + treeRendered = false; + renderTree(); + } + + // ============================================================ + // MESSAGE RENDERING + // ============================================================ + + function formatTokens(count) { + if (count < 1000) return count.toString(); + if (count < 10000) return (count / 1000).toFixed(1) + "k"; + if (count < 1000000) return Math.round(count / 1000) + "k"; + return (count / 1000000).toFixed(1) + "M"; + } + + function formatTimestamp(ts) { + if (!ts) return ""; + const date = new Date(ts); + return date.toLocaleTimeString(undefined, { + hour: "2-digit", + minute: "2-digit", + second: "2-digit", + }); + } + + function replaceTabs(text) { + return text.replace(/\t/g, " "); + } + + /** Safely coerce value to string for display. Returns null if invalid type. */ + function str(value) { + if (typeof value === "string") return value; + if (value == null) return ""; + return null; + } + + function getLanguageFromPath(filePath) { + const ext = filePath.split(".").pop()?.toLowerCase(); + const extToLang = { + ts: "typescript", + tsx: "typescript", + js: "javascript", + jsx: "javascript", + py: "python", + rb: "ruby", + rs: "rust", + go: "go", + java: "java", + c: "c", + cpp: "cpp", + h: "c", + hpp: "cpp", + cs: "csharp", + php: "php", + sh: "bash", + bash: "bash", + zsh: "bash", + sql: "sql", + html: "html", + css: "css", + scss: "scss", + json: "json", + yaml: "yaml", + yml: "yaml", + xml: "xml", + md: "markdown", + dockerfile: "dockerfile", + }; + return extToLang[ext]; + } + + function findToolResult(toolCallId) { + for (const entry of entries) { + if (entry.type === "message" && entry.message.role === "toolResult") { + if (entry.message.toolCallId === toolCallId) { + return entry.message; + } + } + } + return null; + } + + function formatExpandableOutput(text, maxLines, lang) { + text = replaceTabs(text); + const lines = text.split("\n"); + const displayLines = lines.slice(0, maxLines); + const remaining = lines.length - maxLines; + + if (lang) { + let highlighted; + try { + highlighted = hljs.highlight(text, { language: lang }).value; + } catch { + highlighted = escapeHtml(text); + } + + if (remaining > 0) { + const previewCode = displayLines.join("\n"); + let previewHighlighted; + try { + previewHighlighted = hljs.highlight(previewCode, { + language: lang, + }).value; + } catch { + previewHighlighted = escapeHtml(previewCode); + } + + return ``; + } + + return `
${highlighted}
`; + } + + // Plain text output + if (remaining > 0) { + let out = + '"; + return out; + } + + let out = '
'; + for (const line of displayLines) { + out += `
${escapeHtml(replaceTabs(line))}
`; + } + out += "
"; + return out; + } + + function renderToolCall(call) { + const result = findToolResult(call.id); + const isError = result?.isError || false; + const statusClass = result ? (isError ? "error" : "success") : "pending"; + + const getResultText = () => { + if (!result) return ""; + const textBlocks = result.content.filter((c) => c.type === "text"); + return textBlocks.map((c) => c.text).join("\n"); + }; + + const getResultImages = () => { + if (!result) return []; + return result.content.filter((c) => c.type === "image"); + }; + + const renderResultImages = () => { + const images = getResultImages(); + if (images.length === 0) return ""; + return ( + '
' + + images + .map( + (img) => + ``, + ) + .join("") + + "
" + ); + }; + + let html = `
`; + const args = call.arguments || {}; + const name = call.name; + + const invalidArg = '[invalid arg]'; + + switch (name) { + case "bash": { + const command = str(args.command); + const cmdDisplay = + command === null ? invalidArg : escapeHtml(command || "..."); + html += `
$ ${cmdDisplay}
`; + if (result) { + const output = getResultText().trim(); + if (output) html += formatExpandableOutput(output, 5); + } + break; + } + case "read": { + const filePath = str(args.file_path ?? args.path); + const offset = args.offset; + const limit = args.limit; + + let pathHtml = + filePath === null + ? invalidArg + : escapeHtml(shortenPath(filePath || "")); + if ( + filePath !== null && + (offset !== undefined || limit !== undefined) + ) { + const startLine = offset ?? 1; + const endLine = limit !== undefined ? startLine + limit - 1 : ""; + pathHtml += `:${startLine}${endLine ? "-" + endLine : ""}`; + } + + html += `
read ${pathHtml}
`; + if (result) { + html += renderResultImages(); + const output = getResultText(); + const lang = filePath ? getLanguageFromPath(filePath) : null; + if (output) html += formatExpandableOutput(output, 10, lang); + } + break; + } + case "write": { + const filePath = str(args.file_path ?? args.path); + const content = str(args.content); + + html += `
write ${filePath === null ? invalidArg : escapeHtml(shortenPath(filePath || ""))}`; + if (content !== null && content) { + const lines = content.split("\n"); + if (lines.length > 10) + html += ` (${lines.length} lines)`; + } + html += "
"; + + if (content === null) { + html += `
[invalid content arg - expected string]
`; + } else if (content) { + const lang = filePath ? getLanguageFromPath(filePath) : null; + html += formatExpandableOutput(content, 10, lang); + } + if (result) { + const output = getResultText().trim(); + if (output) + html += `
${escapeHtml(output)}
`; + } + break; + } + case "edit": { + const filePath = str(args.file_path ?? args.path); + html += `
edit ${filePath === null ? invalidArg : escapeHtml(shortenPath(filePath || ""))}
`; + + if (result?.details?.diff) { + const diffLines = result.details.diff.split("\n"); + html += '
'; + for (const line of diffLines) { + const cls = line.match(/^\+/) + ? "diff-added" + : line.match(/^-/) + ? "diff-removed" + : "diff-context"; + html += `
${escapeHtml(replaceTabs(line))}
`; + } + html += "
"; + } else if (result) { + const output = getResultText().trim(); + if (output) + html += `
${escapeHtml(output)}
`; + } + break; + } + default: { + // Check for pre-rendered custom tool HTML + const rendered = renderedTools?.[call.id]; + if (rendered?.callHtml || rendered?.resultHtml) { + // Custom tool with pre-rendered HTML from TUI renderer + if (rendered.callHtml) { + html += `
${rendered.callHtml}
`; + } else { + html += `
${escapeHtml(name)}
`; + } + + if (rendered.resultHtml) { + // Apply same truncation as built-in tools (10 lines) + const lines = rendered.resultHtml.split("\n"); + if (lines.length > 10) { + const preview = lines.slice(0, 10).join("\n"); + html += ``; + } else { + html += `
${rendered.resultHtml}
`; + } + } else if (result) { + // Fallback to JSON for result if no pre-rendered HTML + const output = getResultText(); + if (output) html += formatExpandableOutput(output, 10); + } + } else { + // Fallback to JSON display (existing behavior) + html += `
${escapeHtml(name)}
`; + html += `
${escapeHtml(JSON.stringify(args, null, 2))}
`; + if (result) { + const output = getResultText(); + if (output) html += formatExpandableOutput(output, 10); + } + } + } + } + + html += "
"; + return html; + } + + /** + * Download the session data as a JSONL file. + * Reconstructs the original format: header line + entry lines. + */ + window.downloadSessionJson = function () { + // Build JSONL content: header first, then all entries + const lines = []; + if (header) { + lines.push(JSON.stringify({ type: "header", ...header })); + } + for (const entry of entries) { + lines.push(JSON.stringify(entry)); + } + const jsonlContent = lines.join("\n"); + + // Create download + const blob = new Blob([jsonlContent], { type: "application/x-ndjson" }); + const url = URL.createObjectURL(blob); + const a = document.createElement("a"); + a.href = url; + a.download = `${header?.id || "session"}.jsonl`; + document.body.appendChild(a); + a.click(); + document.body.removeChild(a); + URL.revokeObjectURL(url); + }; + + /** + * Build a shareable URL for a specific message. + * URL format: base?gistId&leafId=&targetId= + */ + function buildShareUrl(entryId) { + // Check for injected base URL (used when loaded in iframe via srcdoc) + const baseUrlMeta = document.querySelector( + 'meta[name="pi-share-base-url"]', + ); + const baseUrl = baseUrlMeta + ? baseUrlMeta.content + : window.location.href.split("?")[0]; + + const url = new URL(window.location.href); + // Find the gist ID (first query param without value, e.g., ?abc123) + const gistId = Array.from(url.searchParams.keys()).find( + (k) => !url.searchParams.get(k), + ); + + // Build the share URL + const params = new URLSearchParams(); + params.set("leafId", currentLeafId); + params.set("targetId", entryId); + + // If we have an injected base URL (iframe context), use it directly + if (baseUrlMeta) { + return `${baseUrl}&${params.toString()}`; + } + + // Otherwise build from current location (direct file access) + url.search = gistId + ? `?${gistId}&${params.toString()}` + : `?${params.toString()}`; + return url.toString(); + } + + /** + * Copy text to clipboard with visual feedback. + * Uses navigator.clipboard with fallback to execCommand for HTTP contexts. + */ + async function copyToClipboard(text, button) { + let success = false; + try { + if (navigator.clipboard && navigator.clipboard.writeText) { + await navigator.clipboard.writeText(text); + success = true; + } + } catch (err) { + // Clipboard API failed, try fallback + } + + // Fallback for HTTP or when Clipboard API is unavailable + if (!success) { + try { + const textarea = document.createElement("textarea"); + textarea.value = text; + textarea.style.position = "fixed"; + textarea.style.opacity = "0"; + document.body.appendChild(textarea); + textarea.select(); + success = document.execCommand("copy"); + document.body.removeChild(textarea); + } catch (err) { + console.error("Failed to copy:", err); + } + } + + if (success && button) { + const originalHtml = button.innerHTML; + button.innerHTML = "✓"; + button.classList.add("copied"); + setTimeout(() => { + button.innerHTML = originalHtml; + button.classList.remove("copied"); + }, 1500); + } + } + + /** + * Render the copy-link button HTML for a message. + */ + function renderCopyLinkButton(entryId) { + return ``; + } + + function renderEntry(entry) { + const ts = formatTimestamp(entry.timestamp); + const tsHtml = ts ? `
${ts}
` : ""; + const entryId = `entry-${entry.id}`; + const copyBtnHtml = renderCopyLinkButton(entry.id); + + if (entry.type === "message") { + const msg = entry.message; + + if (msg.role === "user") { + let html = `
${copyBtnHtml}${tsHtml}`; + const content = msg.content; + + if (Array.isArray(content)) { + const images = content.filter((c) => c.type === "image"); + if (images.length > 0) { + html += '
'; + for (const img of images) { + html += ``; + } + html += "
"; + } + } + + const text = + typeof content === "string" + ? content + : content + .filter((c) => c.type === "text") + .map((c) => c.text) + .join("\n"); + if (text.trim()) { + html += `
${safeMarkedParse(text)}
`; + } + html += "
"; + return html; + } + + if (msg.role === "assistant") { + let html = `
${copyBtnHtml}${tsHtml}`; + + for (const block of msg.content) { + if (block.type === "text" && block.text.trim()) { + html += `
${safeMarkedParse(block.text)}
`; + } else if (block.type === "thinking" && block.thinking.trim()) { + html += `
+
${escapeHtml(block.thinking)}
+
Thinking ...
+
`; + } + } + + for (const block of msg.content) { + if (block.type === "toolCall") { + html += renderToolCall(block); + } + } + + if (msg.stopReason === "aborted") { + html += '
Aborted
'; + } else if (msg.stopReason === "error") { + html += `
Error: ${escapeHtml(msg.errorMessage || "Unknown error")}
`; + } + + html += "
"; + return html; + } + + if (msg.role === "bashExecution") { + const isError = + msg.cancelled || (msg.exitCode !== 0 && msg.exitCode !== null); + let html = `
${tsHtml}`; + html += `
$ ${escapeHtml(msg.command)}
`; + if (msg.output) html += formatExpandableOutput(msg.output, 10); + if (msg.cancelled) { + html += '
(cancelled)
'; + } else if (msg.exitCode !== 0 && msg.exitCode !== null) { + html += `
(exit ${msg.exitCode})
`; + } + html += "
"; + return html; + } + + if (msg.role === "toolResult") return ""; + } + + if (entry.type === "model_change") { + return `
${tsHtml}Switched to model: ${escapeHtml(entry.provider)}/${escapeHtml(entry.modelId)}
`; + } + + if (entry.type === "compaction") { + return `
+
[compaction]
+
Compacted from ${entry.tokensBefore.toLocaleString()} tokens
+
Compacted from ${entry.tokensBefore.toLocaleString()} tokens\n\n${escapeHtml(entry.summary)}
+
`; + } + + if (entry.type === "branch_summary") { + return `
${tsHtml} +
Branch Summary
+
${safeMarkedParse(entry.summary)}
+
`; + } + + if (entry.type === "custom_message" && entry.display) { + return `
${tsHtml} +
[${escapeHtml(entry.customType)}]
+
${safeMarkedParse(typeof entry.content === "string" ? entry.content : JSON.stringify(entry.content))}
+
`; + } + + return ""; + } + + // ============================================================ + // HEADER / STATS + // ============================================================ + + function computeStats(entryList) { + let userMessages = 0, + assistantMessages = 0, + toolResults = 0; + let customMessages = 0, + compactions = 0, + branchSummaries = 0, + toolCalls = 0; + const tokens = { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }; + const cost = { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }; + const models = new Set(); + + for (const entry of entryList) { + if (entry.type === "message") { + const msg = entry.message; + if (msg.role === "user") userMessages++; + if (msg.role === "assistant") { + assistantMessages++; + if (msg.model) + models.add( + msg.provider ? `${msg.provider}/${msg.model}` : msg.model, + ); + if (msg.usage) { + tokens.input += msg.usage.input || 0; + tokens.output += msg.usage.output || 0; + tokens.cacheRead += msg.usage.cacheRead || 0; + tokens.cacheWrite += msg.usage.cacheWrite || 0; + if (msg.usage.cost) { + cost.input += msg.usage.cost.input || 0; + cost.output += msg.usage.cost.output || 0; + cost.cacheRead += msg.usage.cost.cacheRead || 0; + cost.cacheWrite += msg.usage.cost.cacheWrite || 0; + } + } + toolCalls += msg.content.filter((c) => c.type === "toolCall").length; + } + if (msg.role === "toolResult") toolResults++; + } else if (entry.type === "compaction") { + compactions++; + } else if (entry.type === "branch_summary") { + branchSummaries++; + } else if (entry.type === "custom_message") { + customMessages++; + } + } + + return { + userMessages, + assistantMessages, + toolResults, + customMessages, + compactions, + branchSummaries, + toolCalls, + tokens, + cost, + models: Array.from(models), + }; + } + + const globalStats = computeStats(entries); + + function renderHeader() { + const totalCost = + globalStats.cost.input + + globalStats.cost.output + + globalStats.cost.cacheRead + + globalStats.cost.cacheWrite; + + const tokenParts = []; + if (globalStats.tokens.input) + tokenParts.push(`↑${formatTokens(globalStats.tokens.input)}`); + if (globalStats.tokens.output) + tokenParts.push(`↓${formatTokens(globalStats.tokens.output)}`); + if (globalStats.tokens.cacheRead) + tokenParts.push(`R${formatTokens(globalStats.tokens.cacheRead)}`); + if (globalStats.tokens.cacheWrite) + tokenParts.push(`W${formatTokens(globalStats.tokens.cacheWrite)}`); + + const msgParts = []; + if (globalStats.userMessages) + msgParts.push(`${globalStats.userMessages} user`); + if (globalStats.assistantMessages) + msgParts.push(`${globalStats.assistantMessages} assistant`); + if (globalStats.toolResults) + msgParts.push(`${globalStats.toolResults} tool results`); + if (globalStats.customMessages) + msgParts.push(`${globalStats.customMessages} custom`); + if (globalStats.compactions) + msgParts.push(`${globalStats.compactions} compactions`); + if (globalStats.branchSummaries) + msgParts.push(`${globalStats.branchSummaries} branch summaries`); + + let html = ` +
+

Session: ${escapeHtml(header?.id || "unknown")}

+
+ Ctrl+T toggle thinking · Ctrl+O toggle tools + +
+
+
Date:${header?.timestamp ? new Date(header.timestamp).toLocaleString() : "unknown"}
+
Models:${globalStats.models.join(", ") || "unknown"}
+
Messages:${msgParts.join(", ") || "0"}
+
Tool Calls:${globalStats.toolCalls}
+
Tokens:${tokenParts.join(" ") || "0"}
+
Cost:$${totalCost.toFixed(3)}
+
+
`; + + // Render system prompt (user's base prompt, applies to all providers) + if (systemPrompt) { + const lines = systemPrompt.split("\n"); + const previewLines = 10; + if (lines.length > previewLines) { + const preview = lines.slice(0, previewLines).join("\n"); + const remaining = lines.length - previewLines; + html += ``; + } else { + html += `
+
System Prompt
+
${escapeHtml(systemPrompt)}
+
`; + } + } + + if (tools && tools.length > 0) { + html += `
+
Available Tools
+
+ ${tools + .map((t) => { + const hasParams = + t.parameters && + typeof t.parameters === "object" && + t.parameters.properties && + Object.keys(t.parameters.properties).length > 0; + if (!hasParams) { + return `
${escapeHtml(t.name)} - ${escapeHtml(t.description)}
`; + } + const params = t.parameters; + const properties = params.properties; + const required = params.required || []; + let paramsHtml = ""; + for (const [name, prop] of Object.entries(properties)) { + const isRequired = required.includes(name); + const typeStr = prop.type || "any"; + const reqLabel = isRequired + ? 'required' + : 'optional'; + paramsHtml += `
${escapeHtml(name)} ${escapeHtml(typeStr)} ${reqLabel}`; + if (prop.description) { + paramsHtml += `
${escapeHtml(prop.description)}
`; + } + paramsHtml += `
`; + } + return `
${escapeHtml(t.name)} - ${escapeHtml(t.description)}
${paramsHtml}
`; + }) + .join("")} +
+
`; + } + + return html; + } + + // ============================================================ + // NAVIGATION + // ============================================================ + + // Cache for rendered entry DOM nodes + const entryCache = new Map(); + + function renderEntryToNode(entry) { + // Check cache first + if (entryCache.has(entry.id)) { + return entryCache.get(entry.id).cloneNode(true); + } + + // Render to HTML string, then parse to node + const html = renderEntry(entry); + if (!html) return null; + + const template = document.createElement("template"); + template.innerHTML = html; + const node = template.content.firstElementChild; + + // Cache the node + if (node) { + entryCache.set(entry.id, node.cloneNode(true)); + } + return node; + } + + function navigateTo(targetId, scrollMode = "target", scrollToEntryId = null) { + currentLeafId = targetId; + currentTargetId = scrollToEntryId || targetId; + const path = getPath(targetId); + + renderTree(); + + document.getElementById("header-container").innerHTML = renderHeader(); + + // Build messages using cached DOM nodes + const messagesEl = document.getElementById("messages"); + const fragment = document.createDocumentFragment(); + + for (const entry of path) { + const node = renderEntryToNode(entry); + if (node) { + fragment.appendChild(node); + } + } + + messagesEl.innerHTML = ""; + messagesEl.appendChild(fragment); + + // Attach click handlers for copy-link buttons + messagesEl.querySelectorAll(".copy-link-btn").forEach((btn) => { + btn.addEventListener("click", (e) => { + e.stopPropagation(); + const entryId = btn.dataset.entryId; + const shareUrl = buildShareUrl(entryId); + copyToClipboard(shareUrl, btn); + }); + }); + + // Use setTimeout(0) to ensure DOM is fully laid out before scrolling + setTimeout(() => { + const content = document.getElementById("content"); + if (scrollMode === "bottom") { + content.scrollTop = content.scrollHeight; + } else if (scrollMode === "target") { + // If scrollToEntryId is provided, scroll to that specific entry + const scrollTargetId = scrollToEntryId || targetId; + const targetEl = document.getElementById(`entry-${scrollTargetId}`); + if (targetEl) { + targetEl.scrollIntoView({ block: "center" }); + // Briefly highlight the target message + if (scrollToEntryId) { + targetEl.classList.add("highlight"); + setTimeout(() => targetEl.classList.remove("highlight"), 2000); + } + } + } + }, 0); + } + + // ============================================================ + // INITIALIZATION + // ============================================================ + + // Escape HTML tags in text (but not code blocks) + function escapeHtmlTags(text) { + return text.replace(/<(?=[a-zA-Z\/])/g, "<"); + } + + // Configure marked with syntax highlighting and HTML escaping for text + marked.use({ + breaks: true, + gfm: true, + renderer: { + // Code blocks: syntax highlight, no HTML escaping + code(token) { + const code = token.text; + const lang = token.lang; + let highlighted; + if (lang && hljs.getLanguage(lang)) { + try { + highlighted = hljs.highlight(code, { language: lang }).value; + } catch { + highlighted = escapeHtml(code); + } + } else { + // Auto-detect language if not specified + try { + highlighted = hljs.highlightAuto(code).value; + } catch { + highlighted = escapeHtml(code); + } + } + return `
${highlighted}
`; + }, + // Text content: escape HTML tags + text(token) { + return escapeHtmlTags(escapeHtml(token.text)); + }, + // Inline code: escape HTML + codespan(token) { + return `${escapeHtml(token.text)}`; + }, + }, + }); + + // Simple marked parse (escaping handled in renderers) + function safeMarkedParse(text) { + return marked.parse(text); + } + + // Search input + const searchInput = document.getElementById("tree-search"); + searchInput.addEventListener("input", (e) => { + searchQuery = e.target.value; + forceTreeRerender(); + }); + + // Filter buttons + document.querySelectorAll(".filter-btn").forEach((btn) => { + btn.addEventListener("click", () => { + document + .querySelectorAll(".filter-btn") + .forEach((b) => b.classList.remove("active")); + btn.classList.add("active"); + filterMode = btn.dataset.filter; + forceTreeRerender(); + }); + }); + + // Sidebar toggle + const sidebar = document.getElementById("sidebar"); + const overlay = document.getElementById("sidebar-overlay"); + const hamburger = document.getElementById("hamburger"); + + hamburger.addEventListener("click", () => { + sidebar.classList.add("open"); + overlay.classList.add("open"); + hamburger.style.display = "none"; + }); + + const closeSidebar = () => { + sidebar.classList.remove("open"); + overlay.classList.remove("open"); + hamburger.style.display = ""; + }; + + overlay.addEventListener("click", closeSidebar); + document + .getElementById("sidebar-close") + .addEventListener("click", closeSidebar); + + // Toggle states + let thinkingExpanded = true; + let toolOutputsExpanded = false; + + const toggleThinking = () => { + thinkingExpanded = !thinkingExpanded; + document.querySelectorAll(".thinking-text").forEach((el) => { + el.style.display = thinkingExpanded ? "" : "none"; + }); + document.querySelectorAll(".thinking-collapsed").forEach((el) => { + el.style.display = thinkingExpanded ? "none" : "block"; + }); + }; + + const toggleToolOutputs = () => { + toolOutputsExpanded = !toolOutputsExpanded; + document.querySelectorAll(".tool-output.expandable").forEach((el) => { + el.classList.toggle("expanded", toolOutputsExpanded); + }); + document.querySelectorAll(".compaction").forEach((el) => { + el.classList.toggle("expanded", toolOutputsExpanded); + }); + }; + + // Keyboard shortcuts + document.addEventListener("keydown", (e) => { + if (e.key === "Escape") { + searchInput.value = ""; + searchQuery = ""; + navigateTo(leafId, "bottom"); + } + if (e.ctrlKey && e.key === "t") { + e.preventDefault(); + toggleThinking(); + } + if (e.ctrlKey && e.key === "o") { + e.preventDefault(); + toggleToolOutputs(); + } + }); + + // Initial render + // If URL has targetId, scroll to that specific message; otherwise stay at top + if (leafId) { + if (urlTargetId && byId.has(urlTargetId)) { + // Deep link: navigate to leaf and scroll to target message + navigateTo(leafId, "target", urlTargetId); + } else { + navigateTo(leafId, "none"); + } + } else if (entries.length > 0) { + // Fallback: use last entry if no leafId + navigateTo(entries[entries.length - 1].id, "none"); + } +})(); diff --git a/packages/coding-agent/companion-out/export-html/tool-renderer.d.ts b/packages/coding-agent/companion-out/export-html/tool-renderer.d.ts new file mode 100644 index 0000000..029245a --- /dev/null +++ b/packages/coding-agent/companion-out/export-html/tool-renderer.d.ts @@ -0,0 +1,42 @@ +/** + * Tool HTML renderer for custom tools in HTML export. + * + * Renders custom tool calls and results to HTML by invoking their TUI renderers + * and converting the ANSI output to HTML. + */ +import type { Theme } from "../../modes/interactive/theme/theme.js"; +import type { ToolDefinition } from "../extensions/types.js"; +export interface ToolHtmlRendererDeps { + /** Function to look up tool definition by name */ + getToolDefinition: (name: string) => ToolDefinition | undefined; + /** Theme for styling */ + theme: Theme; + /** Terminal width for rendering (default: 100) */ + width?: number; +} +export interface ToolHtmlRenderer { + /** Render a tool call to HTML. Returns undefined if tool has no custom renderer. */ + renderCall(toolName: string, args: unknown): string | undefined; + /** Render a tool result to HTML. Returns undefined if tool has no custom renderer. */ + renderResult( + toolName: string, + result: Array<{ + type: string; + text?: string; + data?: string; + mimeType?: string; + }>, + details: unknown, + isError: boolean, + ): string | undefined; +} +/** + * Create a tool HTML renderer. + * + * The renderer looks up tool definitions and invokes their renderCall/renderResult + * methods, converting the resulting TUI Component output (ANSI) to HTML. + */ +export declare function createToolHtmlRenderer( + deps: ToolHtmlRendererDeps, +): ToolHtmlRenderer; +//# sourceMappingURL=tool-renderer.d.ts.map diff --git a/packages/coding-agent/companion-out/export-html/tool-renderer.d.ts.map b/packages/coding-agent/companion-out/export-html/tool-renderer.d.ts.map new file mode 100644 index 0000000..c293525 --- /dev/null +++ b/packages/coding-agent/companion-out/export-html/tool-renderer.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"tool-renderer.d.ts","sourceRoot":"","sources":["../../../src/core/export-html/tool-renderer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,wCAAwC,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D,MAAM,WAAW,oBAAoB;IACnC,kDAAkD;IAClD,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,cAAc,GAAG,SAAS,CAAC;IAChE,wBAAwB;IACxB,KAAK,EAAE,KAAK,CAAC;IACb,kDAAkD;IAClD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAC/B,oFAAoF;IACpF,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;IAChE,sFAAsF;IACtF,YAAY,CACV,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,KAAK,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,EACF,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,OAAO,GACf,MAAM,GAAG,SAAS,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,oBAAoB,GACzB,gBAAgB,CAiElB","sourcesContent":["/**\n * Tool HTML renderer for custom tools in HTML export.\n *\n * Renders custom tool calls and results to HTML by invoking their TUI renderers\n * and converting the ANSI output to HTML.\n */\n\nimport type { ImageContent, TextContent } from \"@mariozechner/companion-ai\";\nimport type { Theme } from \"../../modes/interactive/theme/theme.js\";\nimport type { ToolDefinition } from \"../extensions/types.js\";\nimport { ansiLinesToHtml } from \"./ansi-to-html.js\";\n\nexport interface ToolHtmlRendererDeps {\n /** Function to look up tool definition by name */\n getToolDefinition: (name: string) => ToolDefinition | undefined;\n /** Theme for styling */\n theme: Theme;\n /** Terminal width for rendering (default: 100) */\n width?: number;\n}\n\nexport interface ToolHtmlRenderer {\n /** Render a tool call to HTML. Returns undefined if tool has no custom renderer. */\n renderCall(toolName: string, args: unknown): string | undefined;\n /** Render a tool result to HTML. Returns undefined if tool has no custom renderer. */\n renderResult(\n toolName: string,\n result: Array<{\n type: string;\n text?: string;\n data?: string;\n mimeType?: string;\n }>,\n details: unknown,\n isError: boolean,\n ): string | undefined;\n}\n\n/**\n * Create a tool HTML renderer.\n *\n * The renderer looks up tool definitions and invokes their renderCall/renderResult\n * methods, converting the resulting TUI Component output (ANSI) to HTML.\n */\nexport function createToolHtmlRenderer(\n deps: ToolHtmlRendererDeps,\n): ToolHtmlRenderer {\n const { getToolDefinition, theme, width = 100 } = deps;\n\n return {\n renderCall(toolName: string, args: unknown): string | undefined {\n try {\n const toolDef = getToolDefinition(toolName);\n if (!toolDef?.renderCall) {\n return undefined;\n }\n\n const component = toolDef.renderCall(args, theme);\n if (!component) {\n return undefined;\n }\n const lines = component.render(width);\n return ansiLinesToHtml(lines);\n } catch {\n // On error, return undefined to trigger JSON fallback\n return undefined;\n }\n },\n\n renderResult(\n toolName: string,\n result: Array<{\n type: string;\n text?: string;\n data?: string;\n mimeType?: string;\n }>,\n details: unknown,\n isError: boolean,\n ): string | undefined {\n try {\n const toolDef = getToolDefinition(toolName);\n if (!toolDef?.renderResult) {\n return undefined;\n }\n\n // Build AgentToolResult from content array\n // Cast content since session storage uses generic object types\n const agentToolResult = {\n content: result as (TextContent | ImageContent)[],\n details,\n isError,\n };\n\n // Always render expanded, client-side will apply truncation\n const component = toolDef.renderResult(\n agentToolResult,\n { expanded: true, isPartial: false },\n theme,\n );\n if (!component) {\n return undefined;\n }\n const lines = component.render(width);\n return ansiLinesToHtml(lines);\n } catch {\n // On error, return undefined to trigger JSON fallback\n return undefined;\n }\n },\n };\n}\n"]} \ No newline at end of file diff --git a/packages/coding-agent/companion-out/export-html/tool-renderer.js b/packages/coding-agent/companion-out/export-html/tool-renderer.js new file mode 100644 index 0000000..ef47886 --- /dev/null +++ b/packages/coding-agent/companion-out/export-html/tool-renderer.js @@ -0,0 +1,65 @@ +/** + * Tool HTML renderer for custom tools in HTML export. + * + * Renders custom tool calls and results to HTML by invoking their TUI renderers + * and converting the ANSI output to HTML. + */ +import { ansiLinesToHtml } from "./ansi-to-html.js"; +/** + * Create a tool HTML renderer. + * + * The renderer looks up tool definitions and invokes their renderCall/renderResult + * methods, converting the resulting TUI Component output (ANSI) to HTML. + */ +export function createToolHtmlRenderer(deps) { + const { getToolDefinition, theme, width = 100 } = deps; + return { + renderCall(toolName, args) { + try { + const toolDef = getToolDefinition(toolName); + if (!toolDef?.renderCall) { + return undefined; + } + const component = toolDef.renderCall(args, theme); + if (!component) { + return undefined; + } + const lines = component.render(width); + return ansiLinesToHtml(lines); + } catch { + // On error, return undefined to trigger JSON fallback + return undefined; + } + }, + renderResult(toolName, result, details, isError) { + try { + const toolDef = getToolDefinition(toolName); + if (!toolDef?.renderResult) { + return undefined; + } + // Build AgentToolResult from content array + // Cast content since session storage uses generic object types + const agentToolResult = { + content: result, + details, + isError, + }; + // Always render expanded, client-side will apply truncation + const component = toolDef.renderResult( + agentToolResult, + { expanded: true, isPartial: false }, + theme, + ); + if (!component) { + return undefined; + } + const lines = component.render(width); + return ansiLinesToHtml(lines); + } catch { + // On error, return undefined to trigger JSON fallback + return undefined; + } + }, + }; +} +//# sourceMappingURL=tool-renderer.js.map diff --git a/packages/coding-agent/companion-out/export-html/tool-renderer.js.map b/packages/coding-agent/companion-out/export-html/tool-renderer.js.map new file mode 100644 index 0000000..f935011 --- /dev/null +++ b/packages/coding-agent/companion-out/export-html/tool-renderer.js.map @@ -0,0 +1 @@ +{"version":3,"file":"tool-renderer.js","sourceRoot":"","sources":["../../../src/core/export-html/tool-renderer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AA4BpD;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,IAA0B,EACR;IAClB,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,KAAK,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC;IAEvD,OAAO;QACL,UAAU,CAAC,QAAgB,EAAE,IAAa,EAAsB;YAC9D,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;gBAC5C,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC;oBACzB,OAAO,SAAS,CAAC;gBACnB,CAAC;gBAED,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAClD,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,OAAO,SAAS,CAAC;gBACnB,CAAC;gBACD,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtC,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;YAChC,CAAC;YAAC,MAAM,CAAC;gBACP,sDAAsD;gBACtD,OAAO,SAAS,CAAC;YACnB,CAAC;QAAA,CACF;QAED,YAAY,CACV,QAAgB,EAChB,MAKE,EACF,OAAgB,EAChB,OAAgB,EACI;YACpB,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;gBAC5C,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC;oBAC3B,OAAO,SAAS,CAAC;gBACnB,CAAC;gBAED,2CAA2C;gBAC3C,+DAA+D;gBAC/D,MAAM,eAAe,GAAG;oBACtB,OAAO,EAAE,MAAwC;oBACjD,OAAO;oBACP,OAAO;iBACR,CAAC;gBAEF,4DAA4D;gBAC5D,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CACpC,eAAe,EACf,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,EACpC,KAAK,CACN,CAAC;gBACF,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,OAAO,SAAS,CAAC;gBACnB,CAAC;gBACD,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACtC,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;YAChC,CAAC;YAAC,MAAM,CAAC;gBACP,sDAAsD;gBACtD,OAAO,SAAS,CAAC;YACnB,CAAC;QAAA,CACF;KACF,CAAC;AAAA,CACH","sourcesContent":["/**\n * Tool HTML renderer for custom tools in HTML export.\n *\n * Renders custom tool calls and results to HTML by invoking their TUI renderers\n * and converting the ANSI output to HTML.\n */\n\nimport type { ImageContent, TextContent } from \"@mariozechner/companion-ai\";\nimport type { Theme } from \"../../modes/interactive/theme/theme.js\";\nimport type { ToolDefinition } from \"../extensions/types.js\";\nimport { ansiLinesToHtml } from \"./ansi-to-html.js\";\n\nexport interface ToolHtmlRendererDeps {\n /** Function to look up tool definition by name */\n getToolDefinition: (name: string) => ToolDefinition | undefined;\n /** Theme for styling */\n theme: Theme;\n /** Terminal width for rendering (default: 100) */\n width?: number;\n}\n\nexport interface ToolHtmlRenderer {\n /** Render a tool call to HTML. Returns undefined if tool has no custom renderer. */\n renderCall(toolName: string, args: unknown): string | undefined;\n /** Render a tool result to HTML. Returns undefined if tool has no custom renderer. */\n renderResult(\n toolName: string,\n result: Array<{\n type: string;\n text?: string;\n data?: string;\n mimeType?: string;\n }>,\n details: unknown,\n isError: boolean,\n ): string | undefined;\n}\n\n/**\n * Create a tool HTML renderer.\n *\n * The renderer looks up tool definitions and invokes their renderCall/renderResult\n * methods, converting the resulting TUI Component output (ANSI) to HTML.\n */\nexport function createToolHtmlRenderer(\n deps: ToolHtmlRendererDeps,\n): ToolHtmlRenderer {\n const { getToolDefinition, theme, width = 100 } = deps;\n\n return {\n renderCall(toolName: string, args: unknown): string | undefined {\n try {\n const toolDef = getToolDefinition(toolName);\n if (!toolDef?.renderCall) {\n return undefined;\n }\n\n const component = toolDef.renderCall(args, theme);\n if (!component) {\n return undefined;\n }\n const lines = component.render(width);\n return ansiLinesToHtml(lines);\n } catch {\n // On error, return undefined to trigger JSON fallback\n return undefined;\n }\n },\n\n renderResult(\n toolName: string,\n result: Array<{\n type: string;\n text?: string;\n data?: string;\n mimeType?: string;\n }>,\n details: unknown,\n isError: boolean,\n ): string | undefined {\n try {\n const toolDef = getToolDefinition(toolName);\n if (!toolDef?.renderResult) {\n return undefined;\n }\n\n // Build AgentToolResult from content array\n // Cast content since session storage uses generic object types\n const agentToolResult = {\n content: result as (TextContent | ImageContent)[],\n details,\n isError,\n };\n\n // Always render expanded, client-side will apply truncation\n const component = toolDef.renderResult(\n agentToolResult,\n { expanded: true, isPartial: false },\n theme,\n );\n if (!component) {\n return undefined;\n }\n const lines = component.render(width);\n return ansiLinesToHtml(lines);\n } catch {\n // On error, return undefined to trigger JSON fallback\n return undefined;\n }\n },\n };\n}\n"]} \ No newline at end of file diff --git a/packages/coding-agent/companion-out/export-html/vendor/highlight.min.js b/packages/coding-agent/companion-out/export-html/vendor/highlight.min.js new file mode 100644 index 0000000..bfdefc7 --- /dev/null +++ b/packages/coding-agent/companion-out/export-html/vendor/highlight.min.js @@ -0,0 +1,8426 @@ +/*! + Highlight.js v11.9.0 (git: f47103d4f1) + (c) 2006-2023 undefined and other contributors + License: BSD-3-Clause + */ +var hljs = (function () { + "use strict"; + function e(n) { + return ( + n instanceof Map + ? (n.clear = + n.delete = + n.set = + () => { + throw Error("map is read-only"); + }) + : n instanceof Set && + (n.add = + n.clear = + n.delete = + () => { + throw Error("set is read-only"); + }), + Object.freeze(n), + Object.getOwnPropertyNames(n).forEach((t) => { + const a = n[t], + i = typeof a; + ("object" !== i && "function" !== i) || Object.isFrozen(a) || e(a); + }), + n + ); + } + class n { + constructor(e) { + (void 0 === e.data && (e.data = {}), + (this.data = e.data), + (this.isMatchIgnored = !1)); + } + ignoreMatch() { + this.isMatchIgnored = !0; + } + } + function t(e) { + return e + .replace(/&/g, "&") + .replace(//g, ">") + .replace(/"/g, """) + .replace(/'/g, "'"); + } + function a(e, ...n) { + const t = Object.create(null); + for (const n in e) t[n] = e[n]; + return ( + n.forEach((e) => { + for (const n in e) t[n] = e[n]; + }), + t + ); + } + const i = (e) => !!e.scope; + class r { + constructor(e, n) { + ((this.buffer = ""), (this.classPrefix = n.classPrefix), e.walk(this)); + } + addText(e) { + this.buffer += t(e); + } + openNode(e) { + if (!i(e)) return; + const n = ((e, { prefix: n }) => { + if (e.startsWith("language:")) + return e.replace("language:", "language-"); + if (e.includes(".")) { + const t = e.split("."); + return [ + `${n}${t.shift()}`, + ...t.map((e, n) => `${e}${"_".repeat(n + 1)}`), + ].join(" "); + } + return `${n}${e}`; + })(e.scope, { prefix: this.classPrefix }); + this.span(n); + } + closeNode(e) { + i(e) && (this.buffer += ""); + } + value() { + return this.buffer; + } + span(e) { + this.buffer += ``; + } + } + const s = (e = {}) => { + const n = { children: [] }; + return (Object.assign(n, e), n); + }; + class o { + constructor() { + ((this.rootNode = s()), (this.stack = [this.rootNode])); + } + get top() { + return this.stack[this.stack.length - 1]; + } + get root() { + return this.rootNode; + } + add(e) { + this.top.children.push(e); + } + openNode(e) { + const n = s({ scope: e }); + (this.add(n), this.stack.push(n)); + } + closeNode() { + if (this.stack.length > 1) return this.stack.pop(); + } + closeAllNodes() { + for (; this.closeNode(); ); + } + toJSON() { + return JSON.stringify(this.rootNode, null, 4); + } + walk(e) { + return this.constructor._walk(e, this.rootNode); + } + static _walk(e, n) { + return ( + "string" == typeof n + ? e.addText(n) + : n.children && + (e.openNode(n), + n.children.forEach((n) => this._walk(e, n)), + e.closeNode(n)), + e + ); + } + static _collapse(e) { + "string" != typeof e && + e.children && + (e.children.every((e) => "string" == typeof e) + ? (e.children = [e.children.join("")]) + : e.children.forEach((e) => { + o._collapse(e); + })); + } + } + class l extends o { + constructor(e) { + (super(), (this.options = e)); + } + addText(e) { + "" !== e && this.add(e); + } + startScope(e) { + this.openNode(e); + } + endScope() { + this.closeNode(); + } + __addSublanguage(e, n) { + const t = e.root; + (n && (t.scope = "language:" + n), this.add(t)); + } + toHTML() { + return new r(this, this.options).value(); + } + finalize() { + return (this.closeAllNodes(), !0); + } + } + function c(e) { + return e ? ("string" == typeof e ? e : e.source) : null; + } + function d(e) { + return b("(?=", e, ")"); + } + function g(e) { + return b("(?:", e, ")*"); + } + function u(e) { + return b("(?:", e, ")?"); + } + function b(...e) { + return e.map((e) => c(e)).join(""); + } + function m(...e) { + const n = ((e) => { + const n = e[e.length - 1]; + return "object" == typeof n && n.constructor === Object + ? (e.splice(e.length - 1, 1), n) + : {}; + })(e); + return "(" + (n.capture ? "" : "?:") + e.map((e) => c(e)).join("|") + ")"; + } + function p(e) { + return RegExp(e.toString() + "|").exec("").length - 1; + } + const _ = /\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./; + function h(e, { joinWith: n }) { + let t = 0; + return e + .map((e) => { + t += 1; + const n = t; + let a = c(e), + i = ""; + for (; a.length > 0; ) { + const e = _.exec(a); + if (!e) { + i += a; + break; + } + ((i += a.substring(0, e.index)), + (a = a.substring(e.index + e[0].length)), + "\\" === e[0][0] && e[1] + ? (i += "\\" + (Number(e[1]) + n)) + : ((i += e[0]), "(" === e[0] && t++)); + } + return i; + }) + .map((e) => `(${e})`) + .join(n); + } + const f = "[a-zA-Z]\\w*", + E = "[a-zA-Z_]\\w*", + y = "\\b\\d+(\\.\\d+)?", + N = + "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)", + w = "\\b(0b[01]+)", + v = { + begin: "\\\\[\\s\\S]", + relevance: 0, + }, + O = { + scope: "string", + begin: "'", + end: "'", + illegal: "\\n", + contains: [v], + }, + k = { + scope: "string", + begin: '"', + end: '"', + illegal: "\\n", + contains: [v], + }, + x = (e, n, t = {}) => { + const i = a({ scope: "comment", begin: e, end: n, contains: [] }, t); + i.contains.push({ + scope: "doctag", + begin: "[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)", + end: /(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/, + excludeBegin: !0, + relevance: 0, + }); + const r = m( + "I", + "a", + "is", + "so", + "us", + "to", + "at", + "if", + "in", + "it", + "on", + /[A-Za-z]+['](d|ve|re|ll|t|s|n)/, + /[A-Za-z]+[-][a-z]+/, + /[A-Za-z][a-z]{2,}/, + ); + return ( + i.contains.push({ + begin: b(/[ ]+/, "(", r, /[.]?[:]?([.][ ]|[ ])/, "){3}"), + }), + i + ); + }, + M = x("//", "$"), + S = x("/\\*", "\\*/"), + A = x("#", "$"); + var C = Object.freeze({ + __proto__: null, + APOS_STRING_MODE: O, + BACKSLASH_ESCAPE: v, + BINARY_NUMBER_MODE: { + scope: "number", + begin: w, + relevance: 0, + }, + BINARY_NUMBER_RE: w, + COMMENT: x, + C_BLOCK_COMMENT_MODE: S, + C_LINE_COMMENT_MODE: M, + C_NUMBER_MODE: { scope: "number", begin: N, relevance: 0 }, + C_NUMBER_RE: N, + END_SAME_AS_BEGIN: (e) => + Object.assign(e, { + "on:begin": (e, n) => { + n.data._beginMatch = e[1]; + }, + "on:end": (e, n) => { + n.data._beginMatch !== e[1] && n.ignoreMatch(); + }, + }), + HASH_COMMENT_MODE: A, + IDENT_RE: f, + MATCH_NOTHING_RE: /\b\B/, + METHOD_GUARD: { begin: "\\.\\s*" + E, relevance: 0 }, + NUMBER_MODE: { scope: "number", begin: y, relevance: 0 }, + NUMBER_RE: y, + PHRASAL_WORDS_MODE: { + begin: + /\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/, + }, + QUOTE_STRING_MODE: k, + REGEXP_MODE: { + scope: "regexp", + begin: /\/(?=[^/\n]*\/)/, + end: /\/[gimuy]*/, + contains: [v, { begin: /\[/, end: /\]/, relevance: 0, contains: [v] }], + }, + RE_STARTERS_RE: + "!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", + SHEBANG: (e = {}) => { + const n = /^#![ ]*\//; + return ( + e.binary && (e.begin = b(n, /.*\b/, e.binary, /\b.*/)), + a( + { + scope: "meta", + begin: n, + end: /$/, + relevance: 0, + "on:begin": (e, n) => { + 0 !== e.index && n.ignoreMatch(); + }, + }, + e, + ) + ); + }, + TITLE_MODE: { scope: "title", begin: f, relevance: 0 }, + UNDERSCORE_IDENT_RE: E, + UNDERSCORE_TITLE_MODE: { scope: "title", begin: E, relevance: 0 }, + }); + function T(e, n) { + "." === e.input[e.index - 1] && n.ignoreMatch(); + } + function R(e, n) { + void 0 !== e.className && ((e.scope = e.className), delete e.className); + } + function D(e, n) { + n && + e.beginKeywords && + ((e.begin = + "\\b(" + e.beginKeywords.split(" ").join("|") + ")(?!\\.)(?=\\b|\\s)"), + (e.__beforeBegin = T), + (e.keywords = e.keywords || e.beginKeywords), + delete e.beginKeywords, + void 0 === e.relevance && (e.relevance = 0)); + } + function I(e, n) { + Array.isArray(e.illegal) && (e.illegal = m(...e.illegal)); + } + function L(e, n) { + if (e.match) { + if (e.begin || e.end) + throw Error("begin & end are not supported with match"); + ((e.begin = e.match), delete e.match); + } + } + function B(e, n) { + void 0 === e.relevance && (e.relevance = 1); + } + const $ = (e, n) => { + if (!e.beforeMatch) return; + if (e.starts) throw Error("beforeMatch cannot be used with starts"); + const t = Object.assign({}, e); + (Object.keys(e).forEach((n) => { + delete e[n]; + }), + (e.keywords = t.keywords), + (e.begin = b(t.beforeMatch, d(t.begin))), + (e.starts = { + relevance: 0, + contains: [Object.assign(t, { endsParent: !0 })], + }), + (e.relevance = 0), + delete t.beforeMatch); + }, + z = [ + "of", + "and", + "for", + "in", + "not", + "or", + "if", + "then", + "parent", + "list", + "value", + ], + F = "keyword"; + function U(e, n, t = F) { + const a = Object.create(null); + return ( + "string" == typeof e + ? i(t, e.split(" ")) + : Array.isArray(e) + ? i(t, e) + : Object.keys(e).forEach((t) => { + Object.assign(a, U(e[t], n, t)); + }), + a + ); + function i(e, t) { + (n && (t = t.map((e) => e.toLowerCase())), + t.forEach((n) => { + const t = n.split("|"); + a[t[0]] = [e, j(t[0], t[1])]; + })); + } + } + function j(e, n) { + return n ? Number(n) : ((e) => z.includes(e.toLowerCase()))(e) ? 0 : 1; + } + const P = {}, + K = (e) => { + console.error(e); + }, + H = (e, ...n) => { + console.log("WARN: " + e, ...n); + }, + q = (e, n) => { + P[`${e}/${n}`] || + (console.log(`Deprecated as of ${e}. ${n}`), (P[`${e}/${n}`] = !0)); + }, + G = Error(); + function Z(e, n, { key: t }) { + let a = 0; + const i = e[t], + r = {}, + s = {}; + for (let e = 1; e <= n.length; e++) + ((s[e + a] = i[e]), (r[e + a] = !0), (a += p(n[e - 1]))); + ((e[t] = s), (e[t]._emit = r), (e[t]._multi = !0)); + } + function W(e) { + (((e) => { + e.scope && + "object" == typeof e.scope && + null !== e.scope && + ((e.beginScope = e.scope), delete e.scope); + })(e), + "string" == typeof e.beginScope && + (e.beginScope = { + _wrap: e.beginScope, + }), + "string" == typeof e.endScope && (e.endScope = { _wrap: e.endScope }), + ((e) => { + if (Array.isArray(e.begin)) { + if (e.skip || e.excludeBegin || e.returnBegin) + throw ( + K( + "skip, excludeBegin, returnBegin not compatible with beginScope: {}", + ), + G + ); + if ("object" != typeof e.beginScope || null === e.beginScope) + throw (K("beginScope must be object"), G); + (Z(e, e.begin, { key: "beginScope" }), + (e.begin = h(e.begin, { joinWith: "" }))); + } + })(e), + ((e) => { + if (Array.isArray(e.end)) { + if (e.skip || e.excludeEnd || e.returnEnd) + throw ( + K("skip, excludeEnd, returnEnd not compatible with endScope: {}"), + G + ); + if ("object" != typeof e.endScope || null === e.endScope) + throw (K("endScope must be object"), G); + (Z(e, e.end, { key: "endScope" }), + (e.end = h(e.end, { joinWith: "" }))); + } + })(e)); + } + function Q(e) { + function n(n, t) { + return RegExp( + c(n), + "m" + + (e.case_insensitive ? "i" : "") + + (e.unicodeRegex ? "u" : "") + + (t ? "g" : ""), + ); + } + class t { + constructor() { + ((this.matchIndexes = {}), + (this.regexes = []), + (this.matchAt = 1), + (this.position = 0)); + } + addRule(e, n) { + ((n.position = this.position++), + (this.matchIndexes[this.matchAt] = n), + this.regexes.push([n, e]), + (this.matchAt += p(e) + 1)); + } + compile() { + 0 === this.regexes.length && (this.exec = () => null); + const e = this.regexes.map((e) => e[1]); + ((this.matcherRe = n(h(e, { joinWith: "|" }), !0)), + (this.lastIndex = 0)); + } + exec(e) { + this.matcherRe.lastIndex = this.lastIndex; + const n = this.matcherRe.exec(e); + if (!n) return null; + const t = n.findIndex((e, n) => n > 0 && void 0 !== e), + a = this.matchIndexes[t]; + return (n.splice(0, t), Object.assign(n, a)); + } + } + class i { + constructor() { + ((this.rules = []), + (this.multiRegexes = []), + (this.count = 0), + (this.lastIndex = 0), + (this.regexIndex = 0)); + } + getMatcher(e) { + if (this.multiRegexes[e]) return this.multiRegexes[e]; + const n = new t(); + return ( + this.rules.slice(e).forEach(([e, t]) => n.addRule(e, t)), + n.compile(), + (this.multiRegexes[e] = n), + n + ); + } + resumingScanAtSamePosition() { + return 0 !== this.regexIndex; + } + considerAll() { + this.regexIndex = 0; + } + addRule(e, n) { + (this.rules.push([e, n]), "begin" === n.type && this.count++); + } + exec(e) { + const n = this.getMatcher(this.regexIndex); + n.lastIndex = this.lastIndex; + let t = n.exec(e); + if (this.resumingScanAtSamePosition()) + if (t && t.index === this.lastIndex); + else { + const n = this.getMatcher(0); + ((n.lastIndex = this.lastIndex + 1), (t = n.exec(e))); + } + return ( + t && + ((this.regexIndex += t.position + 1), + this.regexIndex === this.count && this.considerAll()), + t + ); + } + } + if ( + (e.compilerExtensions || (e.compilerExtensions = []), + e.contains && e.contains.includes("self")) + ) + throw Error( + "ERR: contains `self` is not supported at the top-level of a language. See documentation.", + ); + return ( + (e.classNameAliases = a(e.classNameAliases || {})), + (function t(r, s) { + const o = r; + if (r.isCompiled) return o; + ([R, L, W, $].forEach((e) => e(r, s)), + e.compilerExtensions.forEach((e) => e(r, s)), + (r.__beforeBegin = null), + [D, I, B].forEach((e) => e(r, s)), + (r.isCompiled = !0)); + let l = null; + return ( + "object" == typeof r.keywords && + r.keywords.$pattern && + ((r.keywords = Object.assign({}, r.keywords)), + (l = r.keywords.$pattern), + delete r.keywords.$pattern), + (l = l || /\w+/), + r.keywords && (r.keywords = U(r.keywords, e.case_insensitive)), + (o.keywordPatternRe = n(l, !0)), + s && + (r.begin || (r.begin = /\B|\b/), + (o.beginRe = n(o.begin)), + r.end || r.endsWithParent || (r.end = /\B|\b/), + r.end && (o.endRe = n(o.end)), + (o.terminatorEnd = c(o.end) || ""), + r.endsWithParent && + s.terminatorEnd && + (o.terminatorEnd += (r.end ? "|" : "") + s.terminatorEnd)), + r.illegal && (o.illegalRe = n(r.illegal)), + r.contains || (r.contains = []), + (r.contains = [].concat( + ...r.contains.map((e) => + ((e) => ( + e.variants && + !e.cachedVariants && + (e.cachedVariants = e.variants.map((n) => + a( + e, + { + variants: null, + }, + n, + ), + )), + e.cachedVariants + ? e.cachedVariants + : X(e) + ? a(e, { + starts: e.starts ? a(e.starts) : null, + }) + : Object.isFrozen(e) + ? a(e) + : e + ))("self" === e ? r : e), + ), + )), + r.contains.forEach((e) => { + t(e, o); + }), + r.starts && t(r.starts, s), + (o.matcher = ((e) => { + const n = new i(); + return ( + e.contains.forEach((e) => + n.addRule(e.begin, { rule: e, type: "begin" }), + ), + e.terminatorEnd && n.addRule(e.terminatorEnd, { type: "end" }), + e.illegal && n.addRule(e.illegal, { type: "illegal" }), + n + ); + })(o)), + o + ); + })(e) + ); + } + function X(e) { + return !!e && (e.endsWithParent || X(e.starts)); + } + class V extends Error { + constructor(e, n) { + (super(e), (this.name = "HTMLInjectionError"), (this.html = n)); + } + } + const J = t, + Y = a, + ee = Symbol("nomatch"), + ne = (t) => { + const a = Object.create(null), + i = Object.create(null), + r = []; + let s = !0; + const o = + "Could not find the language '{}', did you forget to load/include a language module?", + c = { + disableAutodetect: !0, + name: "Plain text", + contains: [], + }; + let p = { + ignoreUnescapedHTML: !1, + throwUnescapedHTML: !1, + noHighlightRe: /^(no-?highlight)$/i, + languageDetectRe: /\blang(?:uage)?-([\w-]+)\b/i, + classPrefix: "hljs-", + cssSelector: "pre code", + languages: null, + __emitter: l, + }; + function _(e) { + return p.noHighlightRe.test(e); + } + function h(e, n, t) { + let a = "", + i = ""; + ("object" == typeof n + ? ((a = e), (t = n.ignoreIllegals), (i = n.language)) + : (q("10.7.0", "highlight(lang, code, ...args) has been deprecated."), + q( + "10.7.0", + "Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277", + ), + (i = e), + (a = n)), + void 0 === t && (t = !0)); + const r = { code: a, language: i }; + x("before:highlight", r); + const s = r.result ? r.result : f(r.language, r.code, t); + return ((s.code = r.code), x("after:highlight", s), s); + } + function f(e, t, i, r) { + const l = Object.create(null); + function c() { + if (!x.keywords) return void S.addText(A); + let e = 0; + x.keywordPatternRe.lastIndex = 0; + let n = x.keywordPatternRe.exec(A), + t = ""; + for (; n; ) { + t += A.substring(e, n.index); + const i = w.case_insensitive ? n[0].toLowerCase() : n[0], + r = ((a = i), x.keywords[a]); + if (r) { + const [e, a] = r; + if ( + (S.addText(t), + (t = ""), + (l[i] = (l[i] || 0) + 1), + l[i] <= 7 && (C += a), + e.startsWith("_")) + ) + t += n[0]; + else { + const t = w.classNameAliases[e] || e; + g(n[0], t); + } + } else t += n[0]; + ((e = x.keywordPatternRe.lastIndex), + (n = x.keywordPatternRe.exec(A))); + } + var a; + ((t += A.substring(e)), S.addText(t)); + } + function d() { + (null != x.subLanguage + ? (() => { + if ("" === A) return; + let e = null; + if ("string" == typeof x.subLanguage) { + if (!a[x.subLanguage]) return void S.addText(A); + ((e = f(x.subLanguage, A, !0, M[x.subLanguage])), + (M[x.subLanguage] = e._top)); + } else e = E(A, x.subLanguage.length ? x.subLanguage : null); + (x.relevance > 0 && (C += e.relevance), + S.__addSublanguage(e._emitter, e.language)); + })() + : c(), + (A = "")); + } + function g(e, n) { + "" !== e && (S.startScope(n), S.addText(e), S.endScope()); + } + function u(e, n) { + let t = 1; + const a = n.length - 1; + for (; t <= a; ) { + if (!e._emit[t]) { + t++; + continue; + } + const a = w.classNameAliases[e[t]] || e[t], + i = n[t]; + (a ? g(i, a) : ((A = i), c(), (A = "")), t++); + } + } + function b(e, n) { + return ( + e.scope && + "string" == typeof e.scope && + S.openNode(w.classNameAliases[e.scope] || e.scope), + e.beginScope && + (e.beginScope._wrap + ? (g( + A, + w.classNameAliases[e.beginScope._wrap] || + e.beginScope._wrap, + ), + (A = "")) + : e.beginScope._multi && (u(e.beginScope, n), (A = ""))), + (x = Object.create(e, { + parent: { + value: x, + }, + })), + x + ); + } + function m(e, t, a) { + let i = ((e, n) => { + const t = e && e.exec(n); + return t && 0 === t.index; + })(e.endRe, a); + if (i) { + if (e["on:end"]) { + const a = new n(e); + (e["on:end"](t, a), a.isMatchIgnored && (i = !1)); + } + if (i) { + for (; e.endsParent && e.parent; ) e = e.parent; + return e; + } + } + if (e.endsWithParent) return m(e.parent, t, a); + } + function _(e) { + return 0 === x.matcher.regexIndex ? ((A += e[0]), 1) : ((D = !0), 0); + } + function h(e) { + const n = e[0], + a = t.substring(e.index), + i = m(x, e, a); + if (!i) return ee; + const r = x; + x.endScope && x.endScope._wrap + ? (d(), g(n, x.endScope._wrap)) + : x.endScope && x.endScope._multi + ? (d(), u(x.endScope, e)) + : r.skip + ? (A += n) + : (r.returnEnd || r.excludeEnd || (A += n), + d(), + r.excludeEnd && (A = n)); + do { + (x.scope && S.closeNode(), + x.skip || x.subLanguage || (C += x.relevance), + (x = x.parent)); + } while (x !== i.parent); + return (i.starts && b(i.starts, e), r.returnEnd ? 0 : n.length); + } + let y = {}; + function N(a, r) { + const o = r && r[0]; + if (((A += a), null == o)) return (d(), 0); + if ( + "begin" === y.type && + "end" === r.type && + y.index === r.index && + "" === o + ) { + if (((A += t.slice(r.index, r.index + 1)), !s)) { + const n = Error(`0 width match regex (${e})`); + throw ((n.languageName = e), (n.badRule = y.rule), n); + } + return 1; + } + if (((y = r), "begin" === r.type)) + return ((e) => { + const t = e[0], + a = e.rule, + i = new n(a), + r = [a.__beforeBegin, a["on:begin"]]; + for (const n of r) + if (n && (n(e, i), i.isMatchIgnored)) return _(t); + return ( + a.skip + ? (A += t) + : (a.excludeBegin && (A += t), + d(), + a.returnBegin || a.excludeBegin || (A = t)), + b(a, e), + a.returnBegin ? 0 : t.length + ); + })(r); + if ("illegal" === r.type && !i) { + const e = Error( + 'Illegal lexeme "' + + o + + '" for mode "' + + (x.scope || "") + + '"', + ); + throw ((e.mode = x), e); + } + if ("end" === r.type) { + const e = h(r); + if (e !== ee) return e; + } + if ("illegal" === r.type && "" === o) return 1; + if (R > 1e5 && R > 3 * r.index) + throw Error( + "potential infinite loop, way more iterations than matches", + ); + return ((A += o), o.length); + } + const w = v(e); + if (!w) + throw (K(o.replace("{}", e)), Error('Unknown language: "' + e + '"')); + const O = Q(w); + let k = "", + x = r || O; + const M = {}, + S = new p.__emitter(p); + (() => { + const e = []; + for (let n = x; n !== w; n = n.parent) n.scope && e.unshift(n.scope); + e.forEach((e) => S.openNode(e)); + })(); + let A = "", + C = 0, + T = 0, + R = 0, + D = !1; + try { + if (w.__emitTokens) w.__emitTokens(t, S); + else { + for (x.matcher.considerAll(); ; ) { + (R++, + D ? (D = !1) : x.matcher.considerAll(), + (x.matcher.lastIndex = T)); + const e = x.matcher.exec(t); + if (!e) break; + const n = N(t.substring(T, e.index), e); + T = e.index + n; + } + N(t.substring(T)); + } + return ( + S.finalize(), + (k = S.toHTML()), + { + language: e, + value: k, + relevance: C, + illegal: !1, + _emitter: S, + _top: x, + } + ); + } catch (n) { + if (n.message && n.message.includes("Illegal")) + return { + language: e, + value: J(t), + illegal: !0, + relevance: 0, + _illegalBy: { + message: n.message, + index: T, + context: t.slice(T - 100, T + 100), + mode: n.mode, + resultSoFar: k, + }, + _emitter: S, + }; + if (s) + return { + language: e, + value: J(t), + illegal: !1, + relevance: 0, + errorRaised: n, + _emitter: S, + _top: x, + }; + throw n; + } + } + function E(e, n) { + n = n || p.languages || Object.keys(a); + const t = ((e) => { + const n = { + value: J(e), + illegal: !1, + relevance: 0, + _top: c, + _emitter: new p.__emitter(p), + }; + return (n._emitter.addText(e), n); + })(e), + i = n + .filter(v) + .filter(k) + .map((n) => f(n, e, !1)); + i.unshift(t); + const r = i.sort((e, n) => { + if (e.relevance !== n.relevance) return n.relevance - e.relevance; + if (e.language && n.language) { + if (v(e.language).supersetOf === n.language) return 1; + if (v(n.language).supersetOf === e.language) return -1; + } + return 0; + }), + [s, o] = r, + l = s; + return ((l.secondBest = o), l); + } + function y(e) { + let n = null; + const t = ((e) => { + let n = e.className + " "; + n += e.parentNode ? e.parentNode.className : ""; + const t = p.languageDetectRe.exec(n); + if (t) { + const n = v(t[1]); + return ( + n || + (H(o.replace("{}", t[1])), + H("Falling back to no-highlight mode for this block.", e)), + n ? t[1] : "no-highlight" + ); + } + return n.split(/\s+/).find((e) => _(e) || v(e)); + })(e); + if (_(t)) return; + if ( + (x("before:highlightElement", { el: e, language: t }), + e.dataset.highlighted) + ) + return void console.log( + "Element previously highlighted. To highlight again, first unset `dataset.highlighted`.", + e, + ); + if ( + e.children.length > 0 && + (p.ignoreUnescapedHTML || + (console.warn( + "One of your code blocks includes unescaped HTML. This is a potentially serious security risk.", + ), + console.warn( + "https://github.com/highlightjs/highlight.js/wiki/security", + ), + console.warn("The element with unescaped HTML:"), + console.warn(e)), + p.throwUnescapedHTML) + ) + throw new V( + "One of your code blocks includes unescaped HTML.", + e.innerHTML, + ); + n = e; + const a = n.textContent, + r = t ? h(a, { language: t, ignoreIllegals: !0 }) : E(a); + ((e.innerHTML = r.value), + (e.dataset.highlighted = "yes"), + ((e, n, t) => { + const a = (n && i[n]) || t; + (e.classList.add("hljs"), e.classList.add("language-" + a)); + })(e, t, r.language), + (e.result = { + language: r.language, + re: r.relevance, + relevance: r.relevance, + }), + r.secondBest && + (e.secondBest = { + language: r.secondBest.language, + relevance: r.secondBest.relevance, + }), + x("after:highlightElement", { el: e, result: r, text: a })); + } + let N = !1; + function w() { + "loading" !== document.readyState + ? document.querySelectorAll(p.cssSelector).forEach(y) + : (N = !0); + } + function v(e) { + return ((e = (e || "").toLowerCase()), a[e] || a[i[e]]); + } + function O(e, { languageName: n }) { + ("string" == typeof e && (e = [e]), + e.forEach((e) => { + i[e.toLowerCase()] = n; + })); + } + function k(e) { + const n = v(e); + return n && !n.disableAutodetect; + } + function x(e, n) { + const t = e; + r.forEach((e) => { + e[t] && e[t](n); + }); + } + ("undefined" != typeof window && + window.addEventListener && + window.addEventListener( + "DOMContentLoaded", + () => { + N && w(); + }, + !1, + ), + Object.assign(t, { + highlight: h, + highlightAuto: E, + highlightAll: w, + highlightElement: y, + highlightBlock: (e) => ( + q("10.7.0", "highlightBlock will be removed entirely in v12.0"), + q("10.7.0", "Please use highlightElement now."), + y(e) + ), + configure: (e) => { + p = Y(p, e); + }, + initHighlighting: () => { + (w(), + q( + "10.6.0", + "initHighlighting() deprecated. Use highlightAll() now.", + )); + }, + initHighlightingOnLoad: () => { + (w(), + q( + "10.6.0", + "initHighlightingOnLoad() deprecated. Use highlightAll() now.", + )); + }, + registerLanguage: (e, n) => { + let i = null; + try { + i = n(t); + } catch (n) { + if ( + (K( + "Language definition for '{}' could not be registered.".replace( + "{}", + e, + ), + ), + !s) + ) + throw n; + (K(n), (i = c)); + } + (i.name || (i.name = e), + (a[e] = i), + (i.rawDefinition = n.bind(null, t)), + i.aliases && + O(i.aliases, { + languageName: e, + })); + }, + unregisterLanguage: (e) => { + delete a[e]; + for (const n of Object.keys(i)) i[n] === e && delete i[n]; + }, + listLanguages: () => Object.keys(a), + getLanguage: v, + registerAliases: O, + autoDetection: k, + inherit: Y, + addPlugin: (e) => { + (((e) => { + (e["before:highlightBlock"] && + !e["before:highlightElement"] && + (e["before:highlightElement"] = (n) => { + e["before:highlightBlock"](Object.assign({ block: n.el }, n)); + }), + e["after:highlightBlock"] && + !e["after:highlightElement"] && + (e["after:highlightElement"] = (n) => { + e["after:highlightBlock"]( + Object.assign({ block: n.el }, n), + ); + })); + })(e), + r.push(e)); + }, + removePlugin: (e) => { + const n = r.indexOf(e); + -1 !== n && r.splice(n, 1); + }, + }), + (t.debugMode = () => { + s = !1; + }), + (t.safeMode = () => { + s = !0; + }), + (t.versionString = "11.9.0"), + (t.regex = { + concat: b, + lookahead: d, + either: m, + optional: u, + anyNumberOfTimes: g, + })); + for (const n in C) "object" == typeof C[n] && e(C[n]); + return (Object.assign(t, C), t); + }, + te = ne({}); + te.newInstance = () => ne({}); + var ae = te; + const ie = (e) => ({ + IMPORTANT: { + scope: "meta", + begin: "!important", + }, + BLOCK_COMMENT: e.C_BLOCK_COMMENT_MODE, + HEXCOLOR: { + scope: "number", + begin: /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/, + }, + FUNCTION_DISPATCH: { className: "built_in", begin: /[\w-]+(?=\()/ }, + ATTRIBUTE_SELECTOR_MODE: { + scope: "selector-attr", + begin: /\[/, + end: /\]/, + illegal: "$", + contains: [e.APOS_STRING_MODE, e.QUOTE_STRING_MODE], + }, + CSS_NUMBER_MODE: { + scope: "number", + begin: + e.NUMBER_RE + + "(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", + relevance: 0, + }, + CSS_VARIABLE: { className: "attr", begin: /--[A-Za-z_][A-Za-z0-9_-]*/ }, + }), + re = [ + "a", + "abbr", + "address", + "article", + "aside", + "audio", + "b", + "blockquote", + "body", + "button", + "canvas", + "caption", + "cite", + "code", + "dd", + "del", + "details", + "dfn", + "div", + "dl", + "dt", + "em", + "fieldset", + "figcaption", + "figure", + "footer", + "form", + "h1", + "h2", + "h3", + "h4", + "h5", + "h6", + "header", + "hgroup", + "html", + "i", + "iframe", + "img", + "input", + "ins", + "kbd", + "label", + "legend", + "li", + "main", + "mark", + "menu", + "nav", + "object", + "ol", + "p", + "q", + "quote", + "samp", + "section", + "span", + "strong", + "summary", + "sup", + "table", + "tbody", + "td", + "textarea", + "tfoot", + "th", + "thead", + "time", + "tr", + "ul", + "var", + "video", + ], + se = [ + "any-hover", + "any-pointer", + "aspect-ratio", + "color", + "color-gamut", + "color-index", + "device-aspect-ratio", + "device-height", + "device-width", + "display-mode", + "forced-colors", + "grid", + "height", + "hover", + "inverted-colors", + "monochrome", + "orientation", + "overflow-block", + "overflow-inline", + "pointer", + "prefers-color-scheme", + "prefers-contrast", + "prefers-reduced-motion", + "prefers-reduced-transparency", + "resolution", + "scan", + "scripting", + "update", + "width", + "min-width", + "max-width", + "min-height", + "max-height", + ], + oe = [ + "active", + "any-link", + "blank", + "checked", + "current", + "default", + "defined", + "dir", + "disabled", + "drop", + "empty", + "enabled", + "first", + "first-child", + "first-of-type", + "fullscreen", + "future", + "focus", + "focus-visible", + "focus-within", + "has", + "host", + "host-context", + "hover", + "indeterminate", + "in-range", + "invalid", + "is", + "lang", + "last-child", + "last-of-type", + "left", + "link", + "local-link", + "not", + "nth-child", + "nth-col", + "nth-last-child", + "nth-last-col", + "nth-last-of-type", + "nth-of-type", + "only-child", + "only-of-type", + "optional", + "out-of-range", + "past", + "placeholder-shown", + "read-only", + "read-write", + "required", + "right", + "root", + "scope", + "target", + "target-within", + "user-invalid", + "valid", + "visited", + "where", + ], + le = [ + "after", + "backdrop", + "before", + "cue", + "cue-region", + "first-letter", + "first-line", + "grammar-error", + "marker", + "part", + "placeholder", + "selection", + "slotted", + "spelling-error", + ], + ce = [ + "align-content", + "align-items", + "align-self", + "all", + "animation", + "animation-delay", + "animation-direction", + "animation-duration", + "animation-fill-mode", + "animation-iteration-count", + "animation-name", + "animation-play-state", + "animation-timing-function", + "backface-visibility", + "background", + "background-attachment", + "background-blend-mode", + "background-clip", + "background-color", + "background-image", + "background-origin", + "background-position", + "background-repeat", + "background-size", + "block-size", + "border", + "border-block", + "border-block-color", + "border-block-end", + "border-block-end-color", + "border-block-end-style", + "border-block-end-width", + "border-block-start", + "border-block-start-color", + "border-block-start-style", + "border-block-start-width", + "border-block-style", + "border-block-width", + "border-bottom", + "border-bottom-color", + "border-bottom-left-radius", + "border-bottom-right-radius", + "border-bottom-style", + "border-bottom-width", + "border-collapse", + "border-color", + "border-image", + "border-image-outset", + "border-image-repeat", + "border-image-slice", + "border-image-source", + "border-image-width", + "border-inline", + "border-inline-color", + "border-inline-end", + "border-inline-end-color", + "border-inline-end-style", + "border-inline-end-width", + "border-inline-start", + "border-inline-start-color", + "border-inline-start-style", + "border-inline-start-width", + "border-inline-style", + "border-inline-width", + "border-left", + "border-left-color", + "border-left-style", + "border-left-width", + "border-radius", + "border-right", + "border-right-color", + "border-right-style", + "border-right-width", + "border-spacing", + "border-style", + "border-top", + "border-top-color", + "border-top-left-radius", + "border-top-right-radius", + "border-top-style", + "border-top-width", + "border-width", + "bottom", + "box-decoration-break", + "box-shadow", + "box-sizing", + "break-after", + "break-before", + "break-inside", + "caption-side", + "caret-color", + "clear", + "clip", + "clip-path", + "clip-rule", + "color", + "column-count", + "column-fill", + "column-gap", + "column-rule", + "column-rule-color", + "column-rule-style", + "column-rule-width", + "column-span", + "column-width", + "columns", + "contain", + "content", + "content-visibility", + "counter-increment", + "counter-reset", + "cue", + "cue-after", + "cue-before", + "cursor", + "direction", + "display", + "empty-cells", + "filter", + "flex", + "flex-basis", + "flex-direction", + "flex-flow", + "flex-grow", + "flex-shrink", + "flex-wrap", + "float", + "flow", + "font", + "font-display", + "font-family", + "font-feature-settings", + "font-kerning", + "font-language-override", + "font-size", + "font-size-adjust", + "font-smoothing", + "font-stretch", + "font-style", + "font-synthesis", + "font-variant", + "font-variant-caps", + "font-variant-east-asian", + "font-variant-ligatures", + "font-variant-numeric", + "font-variant-position", + "font-variation-settings", + "font-weight", + "gap", + "glyph-orientation-vertical", + "grid", + "grid-area", + "grid-auto-columns", + "grid-auto-flow", + "grid-auto-rows", + "grid-column", + "grid-column-end", + "grid-column-start", + "grid-gap", + "grid-row", + "grid-row-end", + "grid-row-start", + "grid-template", + "grid-template-areas", + "grid-template-columns", + "grid-template-rows", + "hanging-punctuation", + "height", + "hyphens", + "icon", + "image-orientation", + "image-rendering", + "image-resolution", + "ime-mode", + "inline-size", + "isolation", + "justify-content", + "left", + "letter-spacing", + "line-break", + "line-height", + "list-style", + "list-style-image", + "list-style-position", + "list-style-type", + "margin", + "margin-block", + "margin-block-end", + "margin-block-start", + "margin-bottom", + "margin-inline", + "margin-inline-end", + "margin-inline-start", + "margin-left", + "margin-right", + "margin-top", + "marks", + "mask", + "mask-border", + "mask-border-mode", + "mask-border-outset", + "mask-border-repeat", + "mask-border-slice", + "mask-border-source", + "mask-border-width", + "mask-clip", + "mask-composite", + "mask-image", + "mask-mode", + "mask-origin", + "mask-position", + "mask-repeat", + "mask-size", + "mask-type", + "max-block-size", + "max-height", + "max-inline-size", + "max-width", + "min-block-size", + "min-height", + "min-inline-size", + "min-width", + "mix-blend-mode", + "nav-down", + "nav-index", + "nav-left", + "nav-right", + "nav-up", + "none", + "normal", + "object-fit", + "object-position", + "opacity", + "order", + "orphans", + "outline", + "outline-color", + "outline-offset", + "outline-style", + "outline-width", + "overflow", + "overflow-wrap", + "overflow-x", + "overflow-y", + "padding", + "padding-block", + "padding-block-end", + "padding-block-start", + "padding-bottom", + "padding-inline", + "padding-inline-end", + "padding-inline-start", + "padding-left", + "padding-right", + "padding-top", + "page-break-after", + "page-break-before", + "page-break-inside", + "pause", + "pause-after", + "pause-before", + "perspective", + "perspective-origin", + "pointer-events", + "position", + "quotes", + "resize", + "rest", + "rest-after", + "rest-before", + "right", + "row-gap", + "scroll-margin", + "scroll-margin-block", + "scroll-margin-block-end", + "scroll-margin-block-start", + "scroll-margin-bottom", + "scroll-margin-inline", + "scroll-margin-inline-end", + "scroll-margin-inline-start", + "scroll-margin-left", + "scroll-margin-right", + "scroll-margin-top", + "scroll-padding", + "scroll-padding-block", + "scroll-padding-block-end", + "scroll-padding-block-start", + "scroll-padding-bottom", + "scroll-padding-inline", + "scroll-padding-inline-end", + "scroll-padding-inline-start", + "scroll-padding-left", + "scroll-padding-right", + "scroll-padding-top", + "scroll-snap-align", + "scroll-snap-stop", + "scroll-snap-type", + "scrollbar-color", + "scrollbar-gutter", + "scrollbar-width", + "shape-image-threshold", + "shape-margin", + "shape-outside", + "speak", + "speak-as", + "src", + "tab-size", + "table-layout", + "text-align", + "text-align-all", + "text-align-last", + "text-combine-upright", + "text-decoration", + "text-decoration-color", + "text-decoration-line", + "text-decoration-style", + "text-emphasis", + "text-emphasis-color", + "text-emphasis-position", + "text-emphasis-style", + "text-indent", + "text-justify", + "text-orientation", + "text-overflow", + "text-rendering", + "text-shadow", + "text-transform", + "text-underline-position", + "top", + "transform", + "transform-box", + "transform-origin", + "transform-style", + "transition", + "transition-delay", + "transition-duration", + "transition-property", + "transition-timing-function", + "unicode-bidi", + "vertical-align", + "visibility", + "voice-balance", + "voice-duration", + "voice-family", + "voice-pitch", + "voice-range", + "voice-rate", + "voice-stress", + "voice-volume", + "white-space", + "widows", + "width", + "will-change", + "word-break", + "word-spacing", + "word-wrap", + "writing-mode", + "z-index", + ].reverse(), + de = oe.concat(le); + var ge = "[0-9](_*[0-9])*", + ue = `\\.(${ge})`, + be = "[0-9a-fA-F](_*[0-9a-fA-F])*", + me = { + className: "number", + variants: [ + { + begin: `(\\b(${ge})((${ue})|\\.)?|(${ue}))[eE][+-]?(${ge})[fFdD]?\\b`, + }, + { + begin: `\\b(${ge})((${ue})[fFdD]?\\b|\\.([fFdD]\\b)?)`, + }, + { + begin: `(${ue})[fFdD]?\\b`, + }, + { begin: `\\b(${ge})[fFdD]\\b` }, + { + begin: `\\b0[xX]((${be})\\.?|(${be})?\\.(${be}))[pP][+-]?(${ge})[fFdD]?\\b`, + }, + { + begin: "\\b(0|[1-9](_*[0-9])*)[lL]?\\b", + }, + { begin: `\\b0[xX](${be})[lL]?\\b` }, + { + begin: "\\b0(_*[0-7])*[lL]?\\b", + }, + { begin: "\\b0[bB][01](_*[01])*[lL]?\\b" }, + ], + relevance: 0, + }; + function pe(e, n, t) { + return -1 === t ? "" : e.replace(n, (a) => pe(e, n, t - 1)); + } + const _e = "[A-Za-z$_][0-9A-Za-z$_]*", + he = [ + "as", + "in", + "of", + "if", + "for", + "while", + "finally", + "var", + "new", + "function", + "do", + "return", + "void", + "else", + "break", + "catch", + "instanceof", + "with", + "throw", + "case", + "default", + "try", + "switch", + "continue", + "typeof", + "delete", + "let", + "yield", + "const", + "class", + "debugger", + "async", + "await", + "static", + "import", + "from", + "export", + "extends", + ], + fe = ["true", "false", "null", "undefined", "NaN", "Infinity"], + Ee = [ + "Object", + "Function", + "Boolean", + "Symbol", + "Math", + "Date", + "Number", + "BigInt", + "String", + "RegExp", + "Array", + "Float32Array", + "Float64Array", + "Int8Array", + "Uint8Array", + "Uint8ClampedArray", + "Int16Array", + "Int32Array", + "Uint16Array", + "Uint32Array", + "BigInt64Array", + "BigUint64Array", + "Set", + "Map", + "WeakSet", + "WeakMap", + "ArrayBuffer", + "SharedArrayBuffer", + "Atomics", + "DataView", + "JSON", + "Promise", + "Generator", + "GeneratorFunction", + "AsyncFunction", + "Reflect", + "Proxy", + "Intl", + "WebAssembly", + ], + ye = [ + "Error", + "EvalError", + "InternalError", + "RangeError", + "ReferenceError", + "SyntaxError", + "TypeError", + "URIError", + ], + Ne = [ + "setInterval", + "setTimeout", + "clearInterval", + "clearTimeout", + "require", + "exports", + "eval", + "isFinite", + "isNaN", + "parseFloat", + "parseInt", + "decodeURI", + "decodeURIComponent", + "encodeURI", + "encodeURIComponent", + "escape", + "unescape", + ], + we = [ + "arguments", + "this", + "super", + "console", + "window", + "document", + "localStorage", + "sessionStorage", + "module", + "global", + ], + ve = [].concat(Ne, Ee, ye); + function Oe(e) { + const n = e.regex, + t = _e, + a = { + begin: /<[A-Za-z0-9\\._:-]+/, + end: /\/[A-Za-z0-9\\._:-]+>|\/>/, + isTrulyOpeningTag: (e, n) => { + const t = e[0].length + e.index, + a = e.input[t]; + if ("<" === a || "," === a) return void n.ignoreMatch(); + let i; + ">" === a && + (((e, { after: n }) => { + const t = "", + M = { + match: [ + /const|var|let/, + /\s+/, + t, + /\s*/, + /=\s*/, + /(async\s*)?/, + n.lookahead(x), + ], + keywords: "async", + className: { 1: "keyword", 3: "title.function" }, + contains: [f], + }; + return { + name: "JavaScript", + aliases: ["js", "jsx", "mjs", "cjs"], + keywords: i, + exports: { + PARAMS_CONTAINS: h, + CLASS_REFERENCE: y, + }, + illegal: /#(?![$_A-z])/, + contains: [ + e.SHEBANG({ label: "shebang", binary: "node", relevance: 5 }), + { + label: "use_strict", + className: "meta", + relevance: 10, + begin: /^\s*['"]use (strict|asm)['"]/, + }, + e.APOS_STRING_MODE, + e.QUOTE_STRING_MODE, + d, + g, + u, + b, + m, + { match: /\$\d+/ }, + l, + y, + { + className: "attr", + begin: t + n.lookahead(":"), + relevance: 0, + }, + M, + { + begin: "(" + e.RE_STARTERS_RE + "|\\b(case|return|throw)\\b)\\s*", + keywords: "return throw case", + relevance: 0, + contains: [ + m, + e.REGEXP_MODE, + { + className: "function", + begin: x, + returnBegin: !0, + end: "\\s*=>", + contains: [ + { + className: "params", + variants: [ + { begin: e.UNDERSCORE_IDENT_RE, relevance: 0 }, + { + className: null, + begin: /\(\s*\)/, + skip: !0, + }, + { + begin: /\(/, + end: /\)/, + excludeBegin: !0, + excludeEnd: !0, + keywords: i, + contains: h, + }, + ], + }, + ], + }, + { begin: /,/, relevance: 0 }, + { match: /\s+/, relevance: 0 }, + { + variants: [ + { begin: "<>", end: "" }, + { + match: /<[A-Za-z0-9\\._:-]+\s*\/>/, + }, + { begin: a.begin, "on:begin": a.isTrulyOpeningTag, end: a.end }, + ], + subLanguage: "xml", + contains: [ + { + begin: a.begin, + end: a.end, + skip: !0, + contains: ["self"], + }, + ], + }, + ], + }, + N, + { + beginKeywords: "while if switch catch for", + }, + { + begin: + "\\b(?!function)" + + e.UNDERSCORE_IDENT_RE + + "\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", + returnBegin: !0, + label: "func.def", + contains: [ + f, + e.inherit(e.TITLE_MODE, { begin: t, className: "title.function" }), + ], + }, + { match: /\.\.\./, relevance: 0 }, + O, + { match: "\\$" + t, relevance: 0 }, + { + match: [/\bconstructor(?=\s*\()/], + className: { 1: "title.function" }, + contains: [f], + }, + w, + { + relevance: 0, + match: /\b[A-Z][A-Z_0-9]+\b/, + className: "variable.constant", + }, + E, + k, + { match: /\$[(.]/ }, + ], + }; + } + const ke = (e) => b(/\b/, e, /\w$/.test(e) ? /\b/ : /\B/), + xe = ["Protocol", "Type"].map(ke), + Me = ["init", "self"].map(ke), + Se = ["Any", "Self"], + Ae = [ + "actor", + "any", + "associatedtype", + "async", + "await", + /as\?/, + /as!/, + "as", + "borrowing", + "break", + "case", + "catch", + "class", + "consume", + "consuming", + "continue", + "convenience", + "copy", + "default", + "defer", + "deinit", + "didSet", + "distributed", + "do", + "dynamic", + "each", + "else", + "enum", + "extension", + "fallthrough", + /fileprivate\(set\)/, + "fileprivate", + "final", + "for", + "func", + "get", + "guard", + "if", + "import", + "indirect", + "infix", + /init\?/, + /init!/, + "inout", + /internal\(set\)/, + "internal", + "in", + "is", + "isolated", + "nonisolated", + "lazy", + "let", + "macro", + "mutating", + "nonmutating", + /open\(set\)/, + "open", + "operator", + "optional", + "override", + "postfix", + "precedencegroup", + "prefix", + /private\(set\)/, + "private", + "protocol", + /public\(set\)/, + "public", + "repeat", + "required", + "rethrows", + "return", + "set", + "some", + "static", + "struct", + "subscript", + "super", + "switch", + "throws", + "throw", + /try\?/, + /try!/, + "try", + "typealias", + /unowned\(safe\)/, + /unowned\(unsafe\)/, + "unowned", + "var", + "weak", + "where", + "while", + "willSet", + ], + Ce = ["false", "nil", "true"], + Te = [ + "assignment", + "associativity", + "higherThan", + "left", + "lowerThan", + "none", + "right", + ], + Re = [ + "#colorLiteral", + "#column", + "#dsohandle", + "#else", + "#elseif", + "#endif", + "#error", + "#file", + "#fileID", + "#fileLiteral", + "#filePath", + "#function", + "#if", + "#imageLiteral", + "#keyPath", + "#line", + "#selector", + "#sourceLocation", + "#warning", + ], + De = [ + "abs", + "all", + "any", + "assert", + "assertionFailure", + "debugPrint", + "dump", + "fatalError", + "getVaList", + "isKnownUniquelyReferenced", + "max", + "min", + "numericCast", + "pointwiseMax", + "pointwiseMin", + "precondition", + "preconditionFailure", + "print", + "readLine", + "repeatElement", + "sequence", + "stride", + "swap", + "swift_unboxFromSwiftValueWithType", + "transcode", + "type", + "unsafeBitCast", + "unsafeDowncast", + "withExtendedLifetime", + "withUnsafeMutablePointer", + "withUnsafePointer", + "withVaList", + "withoutActuallyEscaping", + "zip", + ], + Ie = m( + /[/=\-+!*%<>&|^~?]/, + /[\u00A1-\u00A7]/, + /[\u00A9\u00AB]/, + /[\u00AC\u00AE]/, + /[\u00B0\u00B1]/, + /[\u00B6\u00BB\u00BF\u00D7\u00F7]/, + /[\u2016-\u2017]/, + /[\u2020-\u2027]/, + /[\u2030-\u203E]/, + /[\u2041-\u2053]/, + /[\u2055-\u205E]/, + /[\u2190-\u23FF]/, + /[\u2500-\u2775]/, + /[\u2794-\u2BFF]/, + /[\u2E00-\u2E7F]/, + /[\u3001-\u3003]/, + /[\u3008-\u3020]/, + /[\u3030]/, + ), + Le = m( + Ie, + /[\u0300-\u036F]/, + /[\u1DC0-\u1DFF]/, + /[\u20D0-\u20FF]/, + /[\uFE00-\uFE0F]/, + /[\uFE20-\uFE2F]/, + ), + Be = b(Ie, Le, "*"), + $e = m( + /[a-zA-Z_]/, + /[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/, + /[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/, + /[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/, + /[\u1E00-\u1FFF]/, + /[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/, + /[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/, + /[\u2C00-\u2DFF\u2E80-\u2FFF]/, + /[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/, + /[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/, + /[\uFE47-\uFEFE\uFF00-\uFFFD]/, + ), + ze = m($e, /\d/, /[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/), + Fe = b($e, ze, "*"), + Ue = b(/[A-Z]/, ze, "*"), + je = [ + "attached", + "autoclosure", + b(/convention\(/, m("swift", "block", "c"), /\)/), + "discardableResult", + "dynamicCallable", + "dynamicMemberLookup", + "escaping", + "freestanding", + "frozen", + "GKInspectable", + "IBAction", + "IBDesignable", + "IBInspectable", + "IBOutlet", + "IBSegueAction", + "inlinable", + "main", + "nonobjc", + "NSApplicationMain", + "NSCopying", + "NSManaged", + b(/objc\(/, Fe, /\)/), + "objc", + "objcMembers", + "propertyWrapper", + "requires_stored_property_inits", + "resultBuilder", + "Sendable", + "testable", + "UIApplicationMain", + "unchecked", + "unknown", + "usableFromInline", + "warn_unqualified_access", + ], + Pe = [ + "iOS", + "iOSApplicationExtension", + "macOS", + "macOSApplicationExtension", + "macCatalyst", + "macCatalystApplicationExtension", + "watchOS", + "watchOSApplicationExtension", + "tvOS", + "tvOSApplicationExtension", + "swift", + ]; + var Ke = Object.freeze({ + __proto__: null, + grmr_bash: (e) => { + const n = e.regex, + t = {}, + a = { + begin: /\$\{/, + end: /\}/, + contains: ["self", { begin: /:-/, contains: [t] }], + }; + Object.assign(t, { + className: "variable", + variants: [ + { + begin: n.concat(/\$[\w\d#@][\w\d_]*/, "(?![\\w\\d])(?![$])"), + }, + a, + ], + }); + const i = { + className: "subst", + begin: /\$\(/, + end: /\)/, + contains: [e.BACKSLASH_ESCAPE], + }, + r = { + begin: /<<-?\s*(?=\w+)/, + starts: { + contains: [ + e.END_SAME_AS_BEGIN({ + begin: /(\w+)/, + end: /(\w+)/, + className: "string", + }), + ], + }, + }, + s = { + className: "string", + begin: /"/, + end: /"/, + contains: [e.BACKSLASH_ESCAPE, t, i], + }; + i.contains.push(s); + const o = { + begin: /\$?\(\(/, + end: /\)\)/, + contains: [ + { begin: /\d+#[0-9a-f]+/, className: "number" }, + e.NUMBER_MODE, + t, + ], + }, + l = e.SHEBANG({ + binary: "(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)", + relevance: 10, + }), + c = { + className: "function", + begin: /\w[\w\d_]*\s*\(\s*\)\s*\{/, + returnBegin: !0, + contains: [e.inherit(e.TITLE_MODE, { begin: /\w[\w\d_]*/ })], + relevance: 0, + }; + return { + name: "Bash", + aliases: ["sh"], + keywords: { + $pattern: /\b[a-z][a-z0-9._-]+\b/, + keyword: [ + "if", + "then", + "else", + "elif", + "fi", + "for", + "while", + "until", + "in", + "do", + "done", + "case", + "esac", + "function", + "select", + ], + literal: ["true", "false"], + built_in: [ + "break", + "cd", + "continue", + "eval", + "exec", + "exit", + "export", + "getopts", + "hash", + "pwd", + "readonly", + "return", + "shift", + "test", + "times", + "trap", + "umask", + "unset", + "alias", + "bind", + "builtin", + "caller", + "command", + "declare", + "echo", + "enable", + "help", + "let", + "local", + "logout", + "mapfile", + "printf", + "read", + "readarray", + "source", + "type", + "typeset", + "ulimit", + "unalias", + "set", + "shopt", + "autoload", + "bg", + "bindkey", + "bye", + "cap", + "chdir", + "clone", + "comparguments", + "compcall", + "compctl", + "compdescribe", + "compfiles", + "compgroups", + "compquote", + "comptags", + "comptry", + "compvalues", + "dirs", + "disable", + "disown", + "echotc", + "echoti", + "emulate", + "fc", + "fg", + "float", + "functions", + "getcap", + "getln", + "history", + "integer", + "jobs", + "kill", + "limit", + "log", + "noglob", + "popd", + "print", + "pushd", + "pushln", + "rehash", + "sched", + "setcap", + "setopt", + "stat", + "suspend", + "ttyctl", + "unfunction", + "unhash", + "unlimit", + "unsetopt", + "vared", + "wait", + "whence", + "where", + "which", + "zcompile", + "zformat", + "zftp", + "zle", + "zmodload", + "zparseopts", + "zprof", + "zpty", + "zregexparse", + "zsocket", + "zstyle", + "ztcp", + "chcon", + "chgrp", + "chown", + "chmod", + "cp", + "dd", + "df", + "dir", + "dircolors", + "ln", + "ls", + "mkdir", + "mkfifo", + "mknod", + "mktemp", + "mv", + "realpath", + "rm", + "rmdir", + "shred", + "sync", + "touch", + "truncate", + "vdir", + "b2sum", + "base32", + "base64", + "cat", + "cksum", + "comm", + "csplit", + "cut", + "expand", + "fmt", + "fold", + "head", + "join", + "md5sum", + "nl", + "numfmt", + "od", + "paste", + "ptx", + "pr", + "sha1sum", + "sha224sum", + "sha256sum", + "sha384sum", + "sha512sum", + "shuf", + "sort", + "split", + "sum", + "tac", + "tail", + "tr", + "tsort", + "unexpand", + "uniq", + "wc", + "arch", + "basename", + "chroot", + "date", + "dirname", + "du", + "echo", + "env", + "expr", + "factor", + "groups", + "hostid", + "id", + "link", + "logname", + "nice", + "nohup", + "nproc", + "pathchk", + "pinky", + "printenv", + "printf", + "pwd", + "readlink", + "runcon", + "seq", + "sleep", + "stat", + "stdbuf", + "stty", + "tee", + "test", + "timeout", + "tty", + "uname", + "unlink", + "uptime", + "users", + "who", + "whoami", + "yes", + ], + }, + contains: [ + l, + e.SHEBANG(), + c, + o, + e.HASH_COMMENT_MODE, + r, + { match: /(\/[a-z._-]+)+/ }, + s, + { + match: /\\"/, + }, + { className: "string", begin: /'/, end: /'/ }, + { match: /\\'/ }, + t, + ], + }; + }, + grmr_c: (e) => { + const n = e.regex, + t = e.COMMENT("//", "$", { contains: [{ begin: /\\\n/ }] }), + a = "decltype\\(auto\\)", + i = "[a-zA-Z_]\\w*::", + r = + "(" + + a + + "|" + + n.optional(i) + + "[a-zA-Z_]\\w*" + + n.optional("<[^<>]+>") + + ")", + s = { + className: "type", + variants: [ + { begin: "\\b[a-z\\d_]*_t\\b" }, + { + match: /\batomic_[a-z]{3,6}\b/, + }, + ], + }, + o = { + className: "string", + variants: [ + { + begin: '(u8?|U|L)?"', + end: '"', + illegal: "\\n", + contains: [e.BACKSLASH_ESCAPE], + }, + { + begin: + "(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", + end: "'", + illegal: ".", + }, + e.END_SAME_AS_BEGIN({ + begin: /(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/, + end: /\)([^()\\ ]{0,16})"/, + }), + ], + }, + l = { + className: "number", + variants: [ + { begin: "\\b(0b[01']+)" }, + { + begin: + "(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)", + }, + { + begin: + "(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)", + }, + ], + relevance: 0, + }, + c = { + className: "meta", + begin: /#\s*[a-z]+\b/, + end: /$/, + keywords: { + keyword: + "if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include", + }, + contains: [ + { begin: /\\\n/, relevance: 0 }, + e.inherit(o, { className: "string" }), + { + className: "string", + begin: /<.*?>/, + }, + t, + e.C_BLOCK_COMMENT_MODE, + ], + }, + d = { + className: "title", + begin: n.optional(i) + e.IDENT_RE, + relevance: 0, + }, + g = n.optional(i) + e.IDENT_RE + "\\s*\\(", + u = { + keyword: [ + "asm", + "auto", + "break", + "case", + "continue", + "default", + "do", + "else", + "enum", + "extern", + "for", + "fortran", + "goto", + "if", + "inline", + "register", + "restrict", + "return", + "sizeof", + "struct", + "switch", + "typedef", + "union", + "volatile", + "while", + "_Alignas", + "_Alignof", + "_Atomic", + "_Generic", + "_Noreturn", + "_Static_assert", + "_Thread_local", + "alignas", + "alignof", + "noreturn", + "static_assert", + "thread_local", + "_Pragma", + ], + type: [ + "float", + "double", + "signed", + "unsigned", + "int", + "short", + "long", + "char", + "void", + "_Bool", + "_Complex", + "_Imaginary", + "_Decimal32", + "_Decimal64", + "_Decimal128", + "const", + "static", + "complex", + "bool", + "imaginary", + ], + literal: "true false NULL", + built_in: + "std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr", + }, + b = [c, s, t, e.C_BLOCK_COMMENT_MODE, l, o], + m = { + variants: [ + { begin: /=/, end: /;/ }, + { + begin: /\(/, + end: /\)/, + }, + { beginKeywords: "new throw return else", end: /;/ }, + ], + keywords: u, + contains: b.concat([ + { + begin: /\(/, + end: /\)/, + keywords: u, + contains: b.concat(["self"]), + relevance: 0, + }, + ]), + relevance: 0, + }, + p = { + begin: "(" + r + "[\\*&\\s]+)+" + g, + returnBegin: !0, + end: /[{;=]/, + excludeEnd: !0, + keywords: u, + illegal: /[^\w\s\*&:<>.]/, + contains: [ + { begin: a, keywords: u, relevance: 0 }, + { + begin: g, + returnBegin: !0, + contains: [e.inherit(d, { className: "title.function" })], + relevance: 0, + }, + { relevance: 0, match: /,/ }, + { + className: "params", + begin: /\(/, + end: /\)/, + keywords: u, + relevance: 0, + contains: [ + t, + e.C_BLOCK_COMMENT_MODE, + o, + l, + s, + { + begin: /\(/, + end: /\)/, + keywords: u, + relevance: 0, + contains: ["self", t, e.C_BLOCK_COMMENT_MODE, o, l, s], + }, + ], + }, + s, + t, + e.C_BLOCK_COMMENT_MODE, + c, + ], + }; + return { + name: "C", + aliases: ["h"], + keywords: u, + disableAutodetect: !0, + illegal: "=]/, + contains: [ + { + beginKeywords: "final class struct", + }, + e.TITLE_MODE, + ], + }, + ]), + exports: { preprocessor: c, strings: o, keywords: u }, + }; + }, + grmr_cpp: (e) => { + const n = e.regex, + t = e.COMMENT("//", "$", { + contains: [{ begin: /\\\n/ }], + }), + a = "decltype\\(auto\\)", + i = "[a-zA-Z_]\\w*::", + r = + "(?!struct)(" + + a + + "|" + + n.optional(i) + + "[a-zA-Z_]\\w*" + + n.optional("<[^<>]+>") + + ")", + s = { + className: "type", + begin: "\\b[a-z\\d_]*_t\\b", + }, + o = { + className: "string", + variants: [ + { + begin: '(u8?|U|L)?"', + end: '"', + illegal: "\\n", + contains: [e.BACKSLASH_ESCAPE], + }, + { + begin: + "(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", + end: "'", + illegal: ".", + }, + e.END_SAME_AS_BEGIN({ + begin: /(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/, + end: /\)([^()\\ ]{0,16})"/, + }), + ], + }, + l = { + className: "number", + variants: [ + { begin: "\\b(0b[01']+)" }, + { + begin: + "(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)", + }, + { + begin: + "(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)", + }, + ], + relevance: 0, + }, + c = { + className: "meta", + begin: /#\s*[a-z]+\b/, + end: /$/, + keywords: { + keyword: + "if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include", + }, + contains: [ + { begin: /\\\n/, relevance: 0 }, + e.inherit(o, { className: "string" }), + { + className: "string", + begin: /<.*?>/, + }, + t, + e.C_BLOCK_COMMENT_MODE, + ], + }, + d = { + className: "title", + begin: n.optional(i) + e.IDENT_RE, + relevance: 0, + }, + g = n.optional(i) + e.IDENT_RE + "\\s*\\(", + u = { + type: [ + "bool", + "char", + "char16_t", + "char32_t", + "char8_t", + "double", + "float", + "int", + "long", + "short", + "void", + "wchar_t", + "unsigned", + "signed", + "const", + "static", + ], + keyword: [ + "alignas", + "alignof", + "and", + "and_eq", + "asm", + "atomic_cancel", + "atomic_commit", + "atomic_noexcept", + "auto", + "bitand", + "bitor", + "break", + "case", + "catch", + "class", + "co_await", + "co_return", + "co_yield", + "compl", + "concept", + "const_cast|10", + "consteval", + "constexpr", + "constinit", + "continue", + "decltype", + "default", + "delete", + "do", + "dynamic_cast|10", + "else", + "enum", + "explicit", + "export", + "extern", + "false", + "final", + "for", + "friend", + "goto", + "if", + "import", + "inline", + "module", + "mutable", + "namespace", + "new", + "noexcept", + "not", + "not_eq", + "nullptr", + "operator", + "or", + "or_eq", + "override", + "private", + "protected", + "public", + "reflexpr", + "register", + "reinterpret_cast|10", + "requires", + "return", + "sizeof", + "static_assert", + "static_cast|10", + "struct", + "switch", + "synchronized", + "template", + "this", + "thread_local", + "throw", + "transaction_safe", + "transaction_safe_dynamic", + "true", + "try", + "typedef", + "typeid", + "typename", + "union", + "using", + "virtual", + "volatile", + "while", + "xor", + "xor_eq", + ], + literal: ["NULL", "false", "nullopt", "nullptr", "true"], + built_in: ["_Pragma"], + _type_hints: [ + "any", + "auto_ptr", + "barrier", + "binary_semaphore", + "bitset", + "complex", + "condition_variable", + "condition_variable_any", + "counting_semaphore", + "deque", + "false_type", + "future", + "imaginary", + "initializer_list", + "istringstream", + "jthread", + "latch", + "lock_guard", + "multimap", + "multiset", + "mutex", + "optional", + "ostringstream", + "packaged_task", + "pair", + "promise", + "priority_queue", + "queue", + "recursive_mutex", + "recursive_timed_mutex", + "scoped_lock", + "set", + "shared_future", + "shared_lock", + "shared_mutex", + "shared_timed_mutex", + "shared_ptr", + "stack", + "string_view", + "stringstream", + "timed_mutex", + "thread", + "true_type", + "tuple", + "unique_lock", + "unique_ptr", + "unordered_map", + "unordered_multimap", + "unordered_multiset", + "unordered_set", + "variant", + "vector", + "weak_ptr", + "wstring", + "wstring_view", + ], + }, + b = { + className: "function.dispatch", + relevance: 0, + keywords: { + _hint: [ + "abort", + "abs", + "acos", + "apply", + "as_const", + "asin", + "atan", + "atan2", + "calloc", + "ceil", + "cerr", + "cin", + "clog", + "cos", + "cosh", + "cout", + "declval", + "endl", + "exchange", + "exit", + "exp", + "fabs", + "floor", + "fmod", + "forward", + "fprintf", + "fputs", + "free", + "frexp", + "fscanf", + "future", + "invoke", + "isalnum", + "isalpha", + "iscntrl", + "isdigit", + "isgraph", + "islower", + "isprint", + "ispunct", + "isspace", + "isupper", + "isxdigit", + "labs", + "launder", + "ldexp", + "log", + "log10", + "make_pair", + "make_shared", + "make_shared_for_overwrite", + "make_tuple", + "make_unique", + "malloc", + "memchr", + "memcmp", + "memcpy", + "memset", + "modf", + "move", + "pow", + "printf", + "putchar", + "puts", + "realloc", + "scanf", + "sin", + "sinh", + "snprintf", + "sprintf", + "sqrt", + "sscanf", + "std", + "stderr", + "stdin", + "stdout", + "strcat", + "strchr", + "strcmp", + "strcpy", + "strcspn", + "strlen", + "strncat", + "strncmp", + "strncpy", + "strpbrk", + "strrchr", + "strspn", + "strstr", + "swap", + "tan", + "tanh", + "terminate", + "to_underlying", + "tolower", + "toupper", + "vfprintf", + "visit", + "vprintf", + "vsprintf", + ], + }, + begin: n.concat( + /\b/, + /(?!decltype)/, + /(?!if)/, + /(?!for)/, + /(?!switch)/, + /(?!while)/, + e.IDENT_RE, + n.lookahead(/(<[^<>]+>|)\s*\(/), + ), + }, + m = [b, c, s, t, e.C_BLOCK_COMMENT_MODE, l, o], + p = { + variants: [ + { begin: /=/, end: /;/ }, + { + begin: /\(/, + end: /\)/, + }, + { beginKeywords: "new throw return else", end: /;/ }, + ], + keywords: u, + contains: m.concat([ + { + begin: /\(/, + end: /\)/, + keywords: u, + contains: m.concat(["self"]), + relevance: 0, + }, + ]), + relevance: 0, + }, + _ = { + className: "function", + begin: "(" + r + "[\\*&\\s]+)+" + g, + returnBegin: !0, + end: /[{;=]/, + excludeEnd: !0, + keywords: u, + illegal: /[^\w\s\*&:<>.]/, + contains: [ + { begin: a, keywords: u, relevance: 0 }, + { + begin: g, + returnBegin: !0, + contains: [d], + relevance: 0, + }, + { begin: /::/, relevance: 0 }, + { + begin: /:/, + endsWithParent: !0, + contains: [o, l], + }, + { relevance: 0, match: /,/ }, + { + className: "params", + begin: /\(/, + end: /\)/, + keywords: u, + relevance: 0, + contains: [ + t, + e.C_BLOCK_COMMENT_MODE, + o, + l, + s, + { + begin: /\(/, + end: /\)/, + keywords: u, + relevance: 0, + contains: ["self", t, e.C_BLOCK_COMMENT_MODE, o, l, s], + }, + ], + }, + s, + t, + e.C_BLOCK_COMMENT_MODE, + c, + ], + }; + return { + name: "C++", + aliases: ["cc", "c++", "h++", "hpp", "hh", "hxx", "cxx"], + keywords: u, + illegal: "", + keywords: u, + contains: ["self", s], + }, + { begin: e.IDENT_RE + "::", keywords: u }, + { + match: [ + /\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/, + /\s+/, + /\w+/, + ], + className: { 1: "keyword", 3: "title.class" }, + }, + ]), + }; + }, + grmr_csharp: (e) => { + const n = { + keyword: [ + "abstract", + "as", + "base", + "break", + "case", + "catch", + "class", + "const", + "continue", + "do", + "else", + "event", + "explicit", + "extern", + "finally", + "fixed", + "for", + "foreach", + "goto", + "if", + "implicit", + "in", + "interface", + "internal", + "is", + "lock", + "namespace", + "new", + "operator", + "out", + "override", + "params", + "private", + "protected", + "public", + "readonly", + "record", + "ref", + "return", + "scoped", + "sealed", + "sizeof", + "stackalloc", + "static", + "struct", + "switch", + "this", + "throw", + "try", + "typeof", + "unchecked", + "unsafe", + "using", + "virtual", + "void", + "volatile", + "while", + ].concat([ + "add", + "alias", + "and", + "ascending", + "async", + "await", + "by", + "descending", + "equals", + "from", + "get", + "global", + "group", + "init", + "into", + "join", + "let", + "nameof", + "not", + "notnull", + "on", + "or", + "orderby", + "partial", + "remove", + "select", + "set", + "unmanaged", + "value|0", + "var", + "when", + "where", + "with", + "yield", + ]), + built_in: [ + "bool", + "byte", + "char", + "decimal", + "delegate", + "double", + "dynamic", + "enum", + "float", + "int", + "long", + "nint", + "nuint", + "object", + "sbyte", + "short", + "string", + "ulong", + "uint", + "ushort", + ], + literal: ["default", "false", "null", "true"], + }, + t = e.inherit(e.TITLE_MODE, { + begin: "[a-zA-Z](\\.?\\w)*", + }), + a = { + className: "number", + variants: [ + { + begin: "\\b(0b[01']+)", + }, + { + begin: + "(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)", + }, + { + begin: + "(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)", + }, + ], + relevance: 0, + }, + i = { + className: "string", + begin: '@"', + end: '"', + contains: [{ begin: '""' }], + }, + r = e.inherit(i, { illegal: /\n/ }), + s = { className: "subst", begin: /\{/, end: /\}/, keywords: n }, + o = e.inherit(s, { illegal: /\n/ }), + l = { + className: "string", + begin: /\$"/, + end: '"', + illegal: /\n/, + contains: [ + { begin: /\{\{/ }, + { begin: /\}\}/ }, + e.BACKSLASH_ESCAPE, + o, + ], + }, + c = { + className: "string", + begin: /\$@"/, + end: '"', + contains: [ + { + begin: /\{\{/, + }, + { begin: /\}\}/ }, + { begin: '""' }, + s, + ], + }, + d = e.inherit(c, { + illegal: /\n/, + contains: [{ begin: /\{\{/ }, { begin: /\}\}/ }, { begin: '""' }, o], + }); + ((s.contains = [ + c, + l, + i, + e.APOS_STRING_MODE, + e.QUOTE_STRING_MODE, + a, + e.C_BLOCK_COMMENT_MODE, + ]), + (o.contains = [ + d, + l, + r, + e.APOS_STRING_MODE, + e.QUOTE_STRING_MODE, + a, + e.inherit(e.C_BLOCK_COMMENT_MODE, { + illegal: /\n/, + }), + ])); + const g = { + variants: [c, l, i, e.APOS_STRING_MODE, e.QUOTE_STRING_MODE], + }, + u = { + begin: "<", + end: ">", + contains: [{ beginKeywords: "in out" }, t], + }, + b = + e.IDENT_RE + + "(<" + + e.IDENT_RE + + "(\\s*,\\s*" + + e.IDENT_RE + + ")*>)?(\\[\\])?", + m = { + begin: "@" + e.IDENT_RE, + relevance: 0, + }; + return { + name: "C#", + aliases: ["cs", "c#"], + keywords: n, + illegal: /::/, + contains: [ + e.COMMENT("///", "$", { + returnBegin: !0, + contains: [ + { + className: "doctag", + variants: [ + { begin: "///", relevance: 0 }, + { + begin: "\x3c!--|--\x3e", + }, + { begin: "" }, + ], + }, + ], + }), + e.C_LINE_COMMENT_MODE, + e.C_BLOCK_COMMENT_MODE, + { + className: "meta", + begin: "#", + end: "$", + keywords: { + keyword: + "if else elif endif define undef warning error line region endregion pragma checksum", + }, + }, + g, + a, + { + beginKeywords: "class interface", + relevance: 0, + end: /[{;=]/, + illegal: /[^\s:,]/, + contains: [ + { beginKeywords: "where class" }, + t, + u, + e.C_LINE_COMMENT_MODE, + e.C_BLOCK_COMMENT_MODE, + ], + }, + { + beginKeywords: "namespace", + relevance: 0, + end: /[{;=]/, + illegal: /[^\s:]/, + contains: [t, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE], + }, + { + beginKeywords: "record", + relevance: 0, + end: /[{;=]/, + illegal: /[^\s:]/, + contains: [t, u, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE], + }, + { + className: "meta", + begin: "^\\s*\\[(?=[\\w])", + excludeBegin: !0, + end: "\\]", + excludeEnd: !0, + contains: [ + { + className: "string", + begin: /"/, + end: /"/, + }, + ], + }, + { + beginKeywords: "new return throw await else", + relevance: 0, + }, + { + className: "function", + begin: "(" + b + "\\s+)+" + e.IDENT_RE + "\\s*(<[^=]+>\\s*)?\\(", + returnBegin: !0, + end: /\s*[{;=]/, + excludeEnd: !0, + keywords: n, + contains: [ + { + beginKeywords: + "public private protected static internal protected abstract async extern override unsafe virtual new sealed partial", + relevance: 0, + }, + { + begin: e.IDENT_RE + "\\s*(<[^=]+>\\s*)?\\(", + returnBegin: !0, + contains: [e.TITLE_MODE, u], + relevance: 0, + }, + { match: /\(\)/ }, + { + className: "params", + begin: /\(/, + end: /\)/, + excludeBegin: !0, + excludeEnd: !0, + keywords: n, + relevance: 0, + contains: [g, a, e.C_BLOCK_COMMENT_MODE], + }, + e.C_LINE_COMMENT_MODE, + e.C_BLOCK_COMMENT_MODE, + ], + }, + m, + ], + }; + }, + grmr_css: (e) => { + const n = e.regex, + t = ie(e), + a = [e.APOS_STRING_MODE, e.QUOTE_STRING_MODE]; + return { + name: "CSS", + case_insensitive: !0, + illegal: /[=|'\$]/, + keywords: { + keyframePosition: "from to", + }, + classNameAliases: { keyframePosition: "selector-tag" }, + contains: [ + t.BLOCK_COMMENT, + { begin: /-(webkit|moz|ms|o)-(?=[a-z])/ }, + t.CSS_NUMBER_MODE, + { className: "selector-id", begin: /#[A-Za-z0-9_-]+/, relevance: 0 }, + { + className: "selector-class", + begin: "\\.[a-zA-Z-][a-zA-Z0-9_-]*", + relevance: 0, + }, + t.ATTRIBUTE_SELECTOR_MODE, + { + className: "selector-pseudo", + variants: [ + { + begin: ":(" + oe.join("|") + ")", + }, + { begin: ":(:)?(" + le.join("|") + ")" }, + ], + }, + t.CSS_VARIABLE, + { className: "attribute", begin: "\\b(" + ce.join("|") + ")\\b" }, + { + begin: /:/, + end: /[;}{]/, + contains: [ + t.BLOCK_COMMENT, + t.HEXCOLOR, + t.IMPORTANT, + t.CSS_NUMBER_MODE, + ...a, + { + begin: /(url|data-uri)\(/, + end: /\)/, + relevance: 0, + keywords: { built_in: "url data-uri" }, + contains: [ + ...a, + { + className: "string", + begin: /[^)]/, + endsWithParent: !0, + excludeEnd: !0, + }, + ], + }, + t.FUNCTION_DISPATCH, + ], + }, + { + begin: n.lookahead(/@/), + end: "[{;]", + relevance: 0, + illegal: /:/, + contains: [ + { className: "keyword", begin: /@-?\w[\w]*(-\w+)*/ }, + { + begin: /\s/, + endsWithParent: !0, + excludeEnd: !0, + relevance: 0, + keywords: { + $pattern: /[a-z-]+/, + keyword: "and or not only", + attribute: se.join(" "), + }, + contains: [ + { + begin: /[a-z-]+(?=:)/, + className: "attribute", + }, + ...a, + t.CSS_NUMBER_MODE, + ], + }, + ], + }, + { + className: "selector-tag", + begin: "\\b(" + re.join("|") + ")\\b", + }, + ], + }; + }, + grmr_diff: (e) => { + const n = e.regex; + return { + name: "Diff", + aliases: ["patch"], + contains: [ + { + className: "meta", + relevance: 10, + match: n.either( + /^@@ +-\d+,\d+ +\+\d+,\d+ +@@/, + /^\*\*\* +\d+,\d+ +\*\*\*\*$/, + /^--- +\d+,\d+ +----$/, + ), + }, + { + className: "comment", + variants: [ + { + begin: n.either( + /Index: /, + /^index/, + /={3,}/, + /^-{3}/, + /^\*{3} /, + /^\+{3}/, + /^diff --git/, + ), + end: /$/, + }, + { match: /^\*{15}$/ }, + ], + }, + { className: "addition", begin: /^\+/, end: /$/ }, + { + className: "deletion", + begin: /^-/, + end: /$/, + }, + { className: "addition", begin: /^!/, end: /$/ }, + ], + }; + }, + grmr_go: (e) => { + const n = { + keyword: [ + "break", + "case", + "chan", + "const", + "continue", + "default", + "defer", + "else", + "fallthrough", + "for", + "func", + "go", + "goto", + "if", + "import", + "interface", + "map", + "package", + "range", + "return", + "select", + "struct", + "switch", + "type", + "var", + ], + type: [ + "bool", + "byte", + "complex64", + "complex128", + "error", + "float32", + "float64", + "int8", + "int16", + "int32", + "int64", + "string", + "uint8", + "uint16", + "uint32", + "uint64", + "int", + "uint", + "uintptr", + "rune", + ], + literal: ["true", "false", "iota", "nil"], + built_in: [ + "append", + "cap", + "close", + "complex", + "copy", + "imag", + "len", + "make", + "new", + "panic", + "print", + "println", + "real", + "recover", + "delete", + ], + }; + return { + name: "Go", + aliases: ["golang"], + keywords: n, + illegal: " { + const n = e.regex; + return { + name: "GraphQL", + aliases: ["gql"], + case_insensitive: !0, + disableAutodetect: !1, + keywords: { + keyword: [ + "query", + "mutation", + "subscription", + "type", + "input", + "schema", + "directive", + "interface", + "union", + "scalar", + "fragment", + "enum", + "on", + ], + literal: ["true", "false", "null"], + }, + contains: [ + e.HASH_COMMENT_MODE, + e.QUOTE_STRING_MODE, + e.NUMBER_MODE, + { + scope: "punctuation", + match: /[.]{3}/, + relevance: 0, + }, + { + scope: "punctuation", + begin: /[\!\(\)\:\=\[\]\{\|\}]{1}/, + relevance: 0, + }, + { + scope: "variable", + begin: /\$/, + end: /\W/, + excludeEnd: !0, + relevance: 0, + }, + { scope: "meta", match: /@\w+/, excludeEnd: !0 }, + { + scope: "symbol", + begin: n.concat(/[_A-Za-z][_0-9A-Za-z]*/, n.lookahead(/\s*:/)), + relevance: 0, + }, + ], + illegal: [/[;<']/, /BEGIN/], + }; + }, + grmr_ini: (e) => { + const n = e.regex, + t = { + className: "number", + relevance: 0, + variants: [ + { begin: /([+-]+)?[\d]+_[\d_]+/ }, + { + begin: e.NUMBER_RE, + }, + ], + }, + a = e.COMMENT(); + a.variants = [ + { begin: /;/, end: /$/ }, + { begin: /#/, end: /$/ }, + ]; + const i = { + className: "variable", + variants: [ + { begin: /\$[\w\d"][\w\d_]*/ }, + { + begin: /\$\{(.*?)\}/, + }, + ], + }, + r = { className: "literal", begin: /\bon|off|true|false|yes|no\b/ }, + s = { + className: "string", + contains: [e.BACKSLASH_ESCAPE], + variants: [ + { begin: "'''", end: "'''", relevance: 10 }, + { + begin: '"""', + end: '"""', + relevance: 10, + }, + { begin: '"', end: '"' }, + { begin: "'", end: "'" }, + ], + }, + o = { + begin: /\[/, + end: /\]/, + contains: [a, r, i, s, t, "self"], + relevance: 0, + }, + l = n.either(/[A-Za-z0-9_-]+/, /"(\\"|[^"])*"/, /'[^']*'/); + return { + name: "TOML, also INI", + aliases: ["toml"], + case_insensitive: !0, + illegal: /\S/, + contains: [ + a, + { className: "section", begin: /\[+/, end: /\]+/ }, + { + begin: n.concat( + l, + "(\\s*\\.\\s*", + l, + ")*", + n.lookahead(/\s*=\s*[^#\s]/), + ), + className: "attr", + starts: { end: /$/, contains: [a, o, r, i, s, t] }, + }, + ], + }; + }, + grmr_java: (e) => { + const n = e.regex, + t = "[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*", + a = t + pe("(?:<" + t + "~~~(?:\\s*,\\s*" + t + "~~~)*>)?", /~~~/g, 2), + i = { + keyword: [ + "synchronized", + "abstract", + "private", + "var", + "static", + "if", + "const ", + "for", + "while", + "strictfp", + "finally", + "protected", + "import", + "native", + "final", + "void", + "enum", + "else", + "break", + "transient", + "catch", + "instanceof", + "volatile", + "case", + "assert", + "package", + "default", + "public", + "try", + "switch", + "continue", + "throws", + "protected", + "public", + "private", + "module", + "requires", + "exports", + "do", + "sealed", + "yield", + "permits", + ], + literal: ["false", "true", "null"], + type: [ + "char", + "boolean", + "long", + "float", + "int", + "byte", + "short", + "double", + ], + built_in: ["super", "this"], + }, + r = { + className: "meta", + begin: "@" + t, + contains: [ + { + begin: /\(/, + end: /\)/, + contains: ["self"], + }, + ], + }, + s = { + className: "params", + begin: /\(/, + end: /\)/, + keywords: i, + relevance: 0, + contains: [e.C_BLOCK_COMMENT_MODE], + endsParent: !0, + }; + return { + name: "Java", + aliases: ["jsp"], + keywords: i, + illegal: /<\/|#/, + contains: [ + e.COMMENT("/\\*\\*", "\\*/", { + relevance: 0, + contains: [ + { begin: /\w+@/, relevance: 0 }, + { className: "doctag", begin: "@[A-Za-z]+" }, + ], + }), + { + begin: /import java\.[a-z]+\./, + keywords: "import", + relevance: 2, + }, + e.C_LINE_COMMENT_MODE, + e.C_BLOCK_COMMENT_MODE, + { + begin: /"""/, + end: /"""/, + className: "string", + contains: [e.BACKSLASH_ESCAPE], + }, + e.APOS_STRING_MODE, + e.QUOTE_STRING_MODE, + { + match: [ + /\b(?:class|interface|enum|extends|implements|new)/, + /\s+/, + t, + ], + className: { + 1: "keyword", + 3: "title.class", + }, + }, + { match: /non-sealed/, scope: "keyword" }, + { + begin: [n.concat(/(?!else)/, t), /\s+/, t, /\s+/, /=(?!=)/], + className: { 1: "type", 3: "variable", 5: "operator" }, + }, + { + begin: [/record/, /\s+/, t], + className: { 1: "keyword", 3: "title.class" }, + contains: [s, e.C_LINE_COMMENT_MODE, e.C_BLOCK_COMMENT_MODE], + }, + { + beginKeywords: "new throw return else", + relevance: 0, + }, + { + begin: ["(?:" + a + "\\s+)", e.UNDERSCORE_IDENT_RE, /\s*(?=\()/], + className: { + 2: "title.function", + }, + keywords: i, + contains: [ + { + className: "params", + begin: /\(/, + end: /\)/, + keywords: i, + relevance: 0, + contains: [ + r, + e.APOS_STRING_MODE, + e.QUOTE_STRING_MODE, + me, + e.C_BLOCK_COMMENT_MODE, + ], + }, + e.C_LINE_COMMENT_MODE, + e.C_BLOCK_COMMENT_MODE, + ], + }, + me, + r, + ], + }; + }, + grmr_javascript: Oe, + grmr_json: (e) => { + const n = ["true", "false", "null"], + t = { scope: "literal", beginKeywords: n.join(" ") }; + return { + name: "JSON", + keywords: { literal: n }, + contains: [ + { + className: "attr", + begin: /"(\\.|[^\\"\r\n])*"(?=\s*:)/, + relevance: 1.01, + }, + { + match: /[{}[\],:]/, + className: "punctuation", + relevance: 0, + }, + e.QUOTE_STRING_MODE, + t, + e.C_NUMBER_MODE, + e.C_LINE_COMMENT_MODE, + e.C_BLOCK_COMMENT_MODE, + ], + illegal: "\\S", + }; + }, + grmr_kotlin: (e) => { + const n = { + keyword: + "abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual", + built_in: + "Byte Short Char Int Long Boolean Float Double Void Unit Nothing", + literal: "true false null", + }, + t = { className: "symbol", begin: e.UNDERSCORE_IDENT_RE + "@" }, + a = { + className: "subst", + begin: /\$\{/, + end: /\}/, + contains: [e.C_NUMBER_MODE], + }, + i = { + className: "variable", + begin: "\\$" + e.UNDERSCORE_IDENT_RE, + }, + r = { + className: "string", + variants: [ + { begin: '"""', end: '"""(?=[^"])', contains: [i, a] }, + { + begin: "'", + end: "'", + illegal: /\n/, + contains: [e.BACKSLASH_ESCAPE], + }, + { + begin: '"', + end: '"', + illegal: /\n/, + contains: [e.BACKSLASH_ESCAPE, i, a], + }, + ], + }; + a.contains.push(r); + const s = { + className: "meta", + begin: + "@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*" + + e.UNDERSCORE_IDENT_RE + + ")?", + }, + o = { + className: "meta", + begin: "@" + e.UNDERSCORE_IDENT_RE, + contains: [ + { + begin: /\(/, + end: /\)/, + contains: [e.inherit(r, { className: "string" }), "self"], + }, + ], + }, + l = me, + c = e.COMMENT("/\\*", "\\*/", { contains: [e.C_BLOCK_COMMENT_MODE] }), + d = { + variants: [ + { className: "type", begin: e.UNDERSCORE_IDENT_RE }, + { begin: /\(/, end: /\)/, contains: [] }, + ], + }, + g = d; + return ( + (g.variants[1].contains = [d]), + (d.variants[1].contains = [g]), + { + name: "Kotlin", + aliases: ["kt", "kts"], + keywords: n, + contains: [ + e.COMMENT("/\\*\\*", "\\*/", { + relevance: 0, + contains: [{ className: "doctag", begin: "@[A-Za-z]+" }], + }), + e.C_LINE_COMMENT_MODE, + c, + { + className: "keyword", + begin: /\b(break|continue|return|this)\b/, + starts: { contains: [{ className: "symbol", begin: /@\w+/ }] }, + }, + t, + s, + o, + { + className: "function", + beginKeywords: "fun", + end: "[(]|$", + returnBegin: !0, + excludeEnd: !0, + keywords: n, + relevance: 5, + contains: [ + { + begin: e.UNDERSCORE_IDENT_RE + "\\s*\\(", + returnBegin: !0, + relevance: 0, + contains: [e.UNDERSCORE_TITLE_MODE], + }, + { + className: "type", + begin: //, + keywords: "reified", + relevance: 0, + }, + { + className: "params", + begin: /\(/, + end: /\)/, + endsParent: !0, + keywords: n, + relevance: 0, + contains: [ + { + begin: /:/, + end: /[=,\/]/, + endsWithParent: !0, + contains: [d, e.C_LINE_COMMENT_MODE, c], + relevance: 0, + }, + e.C_LINE_COMMENT_MODE, + c, + s, + o, + r, + e.C_NUMBER_MODE, + ], + }, + c, + ], + }, + { + begin: [/class|interface|trait/, /\s+/, e.UNDERSCORE_IDENT_RE], + beginScope: { + 3: "title.class", + }, + keywords: "class interface trait", + end: /[:\{(]|$/, + excludeEnd: !0, + illegal: "extends implements", + contains: [ + { + beginKeywords: + "public protected internal private constructor", + }, + e.UNDERSCORE_TITLE_MODE, + { + className: "type", + begin: //, + excludeBegin: !0, + excludeEnd: !0, + relevance: 0, + }, + { + className: "type", + begin: /[,:]\s*/, + end: /[<\(,){\s]|$/, + excludeBegin: !0, + returnEnd: !0, + }, + s, + o, + ], + }, + r, + { + className: "meta", + begin: "^#!/usr/bin/env", + end: "$", + illegal: "\n", + }, + l, + ], + } + ); + }, + grmr_less: (e) => { + const n = ie(e), + t = de, + a = "[\\w-]+", + i = "(" + a + "|@\\{" + a + "\\})", + r = [], + s = [], + o = (e) => ({ + className: "string", + begin: "~?" + e + ".*?" + e, + }), + l = (e, n, t) => ({ className: e, begin: n, relevance: t }), + c = { + $pattern: /[a-z-]+/, + keyword: "and or not only", + attribute: se.join(" "), + }, + d = { + begin: "\\(", + end: "\\)", + contains: s, + keywords: c, + relevance: 0, + }; + s.push( + e.C_LINE_COMMENT_MODE, + e.C_BLOCK_COMMENT_MODE, + o("'"), + o('"'), + n.CSS_NUMBER_MODE, + { + begin: "(url|data-uri)\\(", + starts: { className: "string", end: "[\\)\\n]", excludeEnd: !0 }, + }, + n.HEXCOLOR, + d, + l("variable", "@@?" + a, 10), + l("variable", "@\\{" + a + "\\}"), + l("built_in", "~?`[^`]*?`"), + { + className: "attribute", + begin: a + "\\s*:", + end: ":", + returnBegin: !0, + excludeEnd: !0, + }, + n.IMPORTANT, + { beginKeywords: "and not" }, + n.FUNCTION_DISPATCH, + ); + const g = s.concat({ + begin: /\{/, + end: /\}/, + contains: r, + }), + u = { + beginKeywords: "when", + endsWithParent: !0, + contains: [{ beginKeywords: "and not" }].concat(s), + }, + b = { + begin: i + "\\s*:", + returnBegin: !0, + end: /[;}]/, + relevance: 0, + contains: [ + { begin: /-(webkit|moz|ms|o)-/ }, + n.CSS_VARIABLE, + { + className: "attribute", + begin: "\\b(" + ce.join("|") + ")\\b", + end: /(?=:)/, + starts: { + endsWithParent: !0, + illegal: "[<=$]", + relevance: 0, + contains: s, + }, + }, + ], + }, + m = { + className: "keyword", + begin: + "@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b", + starts: { + end: "[;{}]", + keywords: c, + returnEnd: !0, + contains: s, + relevance: 0, + }, + }, + p = { + className: "variable", + variants: [ + { begin: "@" + a + "\\s*:", relevance: 15 }, + { begin: "@" + a }, + ], + starts: { end: "[;}]", returnEnd: !0, contains: g }, + }, + _ = { + variants: [ + { + begin: "[\\.#:&\\[>]", + end: "[;{}]", + }, + { begin: i, end: /\{/ }, + ], + returnBegin: !0, + returnEnd: !0, + illegal: "[<='$\"]", + relevance: 0, + contains: [ + e.C_LINE_COMMENT_MODE, + e.C_BLOCK_COMMENT_MODE, + u, + l("keyword", "all\\b"), + l("variable", "@\\{" + a + "\\}"), + { + begin: "\\b(" + re.join("|") + ")\\b", + className: "selector-tag", + }, + n.CSS_NUMBER_MODE, + l("selector-tag", i, 0), + l("selector-id", "#" + i), + l("selector-class", "\\." + i, 0), + l("selector-tag", "&", 0), + n.ATTRIBUTE_SELECTOR_MODE, + { + className: "selector-pseudo", + begin: ":(" + oe.join("|") + ")", + }, + { + className: "selector-pseudo", + begin: ":(:)?(" + le.join("|") + ")", + }, + { begin: /\(/, end: /\)/, relevance: 0, contains: g }, + { begin: "!important" }, + n.FUNCTION_DISPATCH, + ], + }, + h = { + begin: a + ":(:)?" + `(${t.join("|")})`, + returnBegin: !0, + contains: [_], + }; + return ( + r.push( + e.C_LINE_COMMENT_MODE, + e.C_BLOCK_COMMENT_MODE, + m, + p, + h, + b, + _, + u, + n.FUNCTION_DISPATCH, + ), + { + name: "Less", + case_insensitive: !0, + illegal: "[=>'/<($\"]", + contains: r, + } + ); + }, + grmr_lua: (e) => { + const n = "\\[=*\\[", + t = "\\]=*\\]", + a = { begin: n, end: t, contains: ["self"] }, + i = [ + e.COMMENT("--(?!" + n + ")", "$"), + e.COMMENT("--" + n, t, { contains: [a], relevance: 10 }), + ]; + return { + name: "Lua", + keywords: { + $pattern: e.UNDERSCORE_IDENT_RE, + literal: "true false nil", + keyword: + "and break do else elseif end for goto if in local not or repeat return then until while", + built_in: + "_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove", + }, + contains: i.concat([ + { + className: "function", + beginKeywords: "function", + end: "\\)", + contains: [ + e.inherit(e.TITLE_MODE, { + begin: "([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*", + }), + { + className: "params", + begin: "\\(", + endsWithParent: !0, + contains: i, + }, + ].concat(i), + }, + e.C_NUMBER_MODE, + e.APOS_STRING_MODE, + e.QUOTE_STRING_MODE, + { + className: "string", + begin: n, + end: t, + contains: [a], + relevance: 5, + }, + ]), + }; + }, + grmr_makefile: (e) => { + const n = { + className: "variable", + variants: [ + { + begin: "\\$\\(" + e.UNDERSCORE_IDENT_RE + "\\)", + contains: [e.BACKSLASH_ESCAPE], + }, + { begin: /\$[@% { + const n = { + begin: /<\/?[A-Za-z_]/, + end: ">", + subLanguage: "xml", + relevance: 0, + }, + t = { + variants: [ + { begin: /\[.+?\]\[.*?\]/, relevance: 0 }, + { + begin: + /\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/, + relevance: 2, + }, + { + begin: e.regex.concat( + /\[.+?\]\(/, + /[A-Za-z][A-Za-z0-9+.-]*/, + /:\/\/.*?\)/, + ), + relevance: 2, + }, + { begin: /\[.+?\]\([./?&#].*?\)/, relevance: 1 }, + { + begin: /\[.*?\]\(.*?\)/, + relevance: 0, + }, + ], + returnBegin: !0, + contains: [ + { match: /\[(?=\])/ }, + { + className: "string", + relevance: 0, + begin: "\\[", + end: "\\]", + excludeBegin: !0, + returnEnd: !0, + }, + { + className: "link", + relevance: 0, + begin: "\\]\\(", + end: "\\)", + excludeBegin: !0, + excludeEnd: !0, + }, + { + className: "symbol", + relevance: 0, + begin: "\\]\\[", + end: "\\]", + excludeBegin: !0, + excludeEnd: !0, + }, + ], + }, + a = { + className: "strong", + contains: [], + variants: [ + { begin: /_{2}(?!\s)/, end: /_{2}/ }, + { begin: /\*{2}(?!\s)/, end: /\*{2}/ }, + ], + }, + i = { + className: "emphasis", + contains: [], + variants: [ + { begin: /\*(?![*\s])/, end: /\*/ }, + { + begin: /_(?![_\s])/, + end: /_/, + relevance: 0, + }, + ], + }, + r = e.inherit(a, { contains: [] }), + s = e.inherit(i, { contains: [] }); + (a.contains.push(s), i.contains.push(r)); + let o = [n, t]; + return ( + [a, i, r, s].forEach((e) => { + e.contains = e.contains.concat(o); + }), + (o = o.concat(a, i)), + { + name: "Markdown", + aliases: ["md", "mkdown", "mkd"], + contains: [ + { + className: "section", + variants: [ + { begin: "^#{1,6}", end: "$", contains: o }, + { + begin: "(?=^.+?\\n[=-]{2,}$)", + contains: [ + { begin: "^[=-]*$" }, + { begin: "^", end: "\\n", contains: o }, + ], + }, + ], + }, + n, + { + className: "bullet", + begin: "^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)", + end: "\\s+", + excludeEnd: !0, + }, + a, + i, + { className: "quote", begin: "^>\\s+", contains: o, end: "$" }, + { + className: "code", + variants: [ + { begin: "(`{3,})[^`](.|\\n)*?\\1`*[ ]*" }, + { + begin: "(~{3,})[^~](.|\\n)*?\\1~*[ ]*", + }, + { begin: "```", end: "```+[ ]*$" }, + { + begin: "~~~", + end: "~~~+[ ]*$", + }, + { begin: "`.+?`" }, + { + begin: "(?=^( {4}|\\t))", + contains: [{ begin: "^( {4}|\\t)", end: "(\\n)$" }], + relevance: 0, + }, + ], + }, + { + begin: "^[-\\*]{3,}", + end: "$", + }, + t, + { + begin: /^\[[^\n]+\]:/, + returnBegin: !0, + contains: [ + { + className: "symbol", + begin: /\[/, + end: /\]/, + excludeBegin: !0, + excludeEnd: !0, + }, + { + className: "link", + begin: /:\s*/, + end: /$/, + excludeBegin: !0, + }, + ], + }, + ], + } + ); + }, + grmr_objectivec: (e) => { + const n = /[a-zA-Z@][a-zA-Z0-9_]*/, + t = { + $pattern: n, + keyword: ["@interface", "@class", "@protocol", "@implementation"], + }; + return { + name: "Objective-C", + aliases: ["mm", "objc", "obj-c", "obj-c++", "objective-c++"], + keywords: { + "variable.language": ["this", "super"], + $pattern: n, + keyword: [ + "while", + "export", + "sizeof", + "typedef", + "const", + "struct", + "for", + "union", + "volatile", + "static", + "mutable", + "if", + "do", + "return", + "goto", + "enum", + "else", + "break", + "extern", + "asm", + "case", + "default", + "register", + "explicit", + "typename", + "switch", + "continue", + "inline", + "readonly", + "assign", + "readwrite", + "self", + "@synchronized", + "id", + "typeof", + "nonatomic", + "IBOutlet", + "IBAction", + "strong", + "weak", + "copy", + "in", + "out", + "inout", + "bycopy", + "byref", + "oneway", + "__strong", + "__weak", + "__block", + "__autoreleasing", + "@private", + "@protected", + "@public", + "@try", + "@property", + "@end", + "@throw", + "@catch", + "@finally", + "@autoreleasepool", + "@synthesize", + "@dynamic", + "@selector", + "@optional", + "@required", + "@encode", + "@package", + "@import", + "@defs", + "@compatibility_alias", + "__bridge", + "__bridge_transfer", + "__bridge_retained", + "__bridge_retain", + "__covariant", + "__contravariant", + "__kindof", + "_Nonnull", + "_Nullable", + "_Null_unspecified", + "__FUNCTION__", + "__PRETTY_FUNCTION__", + "__attribute__", + "getter", + "setter", + "retain", + "unsafe_unretained", + "nonnull", + "nullable", + "null_unspecified", + "null_resettable", + "class", + "instancetype", + "NS_DESIGNATED_INITIALIZER", + "NS_UNAVAILABLE", + "NS_REQUIRES_SUPER", + "NS_RETURNS_INNER_POINTER", + "NS_INLINE", + "NS_AVAILABLE", + "NS_DEPRECATED", + "NS_ENUM", + "NS_OPTIONS", + "NS_SWIFT_UNAVAILABLE", + "NS_ASSUME_NONNULL_BEGIN", + "NS_ASSUME_NONNULL_END", + "NS_REFINED_FOR_SWIFT", + "NS_SWIFT_NAME", + "NS_SWIFT_NOTHROW", + "NS_DURING", + "NS_HANDLER", + "NS_ENDHANDLER", + "NS_VALUERETURN", + "NS_VOIDRETURN", + ], + literal: [ + "false", + "true", + "FALSE", + "TRUE", + "nil", + "YES", + "NO", + "NULL", + ], + built_in: [ + "dispatch_once_t", + "dispatch_queue_t", + "dispatch_sync", + "dispatch_async", + "dispatch_once", + ], + type: [ + "int", + "float", + "char", + "unsigned", + "signed", + "short", + "long", + "double", + "wchar_t", + "unichar", + "void", + "bool", + "BOOL", + "id|0", + "_Bool", + ], + }, + illegal: "/, end: /$/, illegal: "\\n" }, + e.C_LINE_COMMENT_MODE, + e.C_BLOCK_COMMENT_MODE, + ], + }, + { + className: "class", + begin: "(" + t.keyword.join("|") + ")\\b", + end: /(\{|$)/, + excludeEnd: !0, + keywords: t, + contains: [e.UNDERSCORE_TITLE_MODE], + }, + { begin: "\\." + e.UNDERSCORE_IDENT_RE, relevance: 0 }, + ], + }; + }, + grmr_perl: (e) => { + const n = e.regex, + t = /[dualxmsipngr]{0,12}/, + a = { + $pattern: /[\w.]+/, + keyword: + "abs accept alarm and atan2 bind binmode bless break caller chdir chmod chomp chop chown chr chroot close closedir connect continue cos crypt dbmclose dbmopen defined delete die do dump each else elsif endgrent endhostent endnetent endprotoent endpwent endservent eof eval exec exists exit exp fcntl fileno flock for foreach fork format formline getc getgrent getgrgid getgrnam gethostbyaddr gethostbyname gethostent getlogin getnetbyaddr getnetbyname getnetent getpeername getpgrp getpriority getprotobyname getprotobynumber getprotoent getpwent getpwnam getpwuid getservbyname getservbyport getservent getsockname getsockopt given glob gmtime goto grep gt hex if index int ioctl join keys kill last lc lcfirst length link listen local localtime log lstat lt ma map mkdir msgctl msgget msgrcv msgsnd my ne next no not oct open opendir or ord our pack package pipe pop pos print printf prototype push q|0 qq quotemeta qw qx rand read readdir readline readlink readpipe recv redo ref rename require reset return reverse rewinddir rindex rmdir say scalar seek seekdir select semctl semget semop send setgrent sethostent setnetent setpgrp setpriority setprotoent setpwent setservent setsockopt shift shmctl shmget shmread shmwrite shutdown sin sleep socket socketpair sort splice split sprintf sqrt srand stat state study sub substr symlink syscall sysopen sysread sysseek system syswrite tell telldir tie tied time times tr truncate uc ucfirst umask undef unless unlink unpack unshift untie until use utime values vec wait waitpid wantarray warn when while write x|0 xor y|0", + }, + i = { className: "subst", begin: "[$@]\\{", end: "\\}", keywords: a }, + r = { begin: /->\{/, end: /\}/ }, + s = { + variants: [ + { begin: /\$\d/ }, + { + begin: n.concat( + /[$%@](\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/, + "(?![A-Za-z])(?![@$%])", + ), + }, + { begin: /[$%@][^\s\w{]/, relevance: 0 }, + ], + }, + o = [e.BACKSLASH_ESCAPE, i, s], + l = [/!/, /\//, /\|/, /\?/, /'/, /"/, /#/], + c = (e, a, i = "\\1") => { + const r = "\\1" === i ? i : n.concat(i, a); + return n.concat( + n.concat("(?:", e, ")"), + a, + /(?:\\.|[^\\\/])*?/, + r, + /(?:\\.|[^\\\/])*?/, + i, + t, + ); + }, + d = (e, a, i) => + n.concat(n.concat("(?:", e, ")"), a, /(?:\\.|[^\\\/])*?/, i, t), + g = [ + s, + e.HASH_COMMENT_MODE, + e.COMMENT(/^=\w/, /=cut/, { + endsWithParent: !0, + }), + r, + { + className: "string", + contains: o, + variants: [ + { + begin: "q[qwxr]?\\s*\\(", + end: "\\)", + relevance: 5, + }, + { begin: "q[qwxr]?\\s*\\[", end: "\\]", relevance: 5 }, + { begin: "q[qwxr]?\\s*\\{", end: "\\}", relevance: 5 }, + { + begin: "q[qwxr]?\\s*\\|", + end: "\\|", + relevance: 5, + }, + { begin: "q[qwxr]?\\s*<", end: ">", relevance: 5 }, + { begin: "qw\\s+q", end: "q", relevance: 5 }, + { begin: "'", end: "'", contains: [e.BACKSLASH_ESCAPE] }, + { begin: '"', end: '"' }, + { begin: "`", end: "`", contains: [e.BACKSLASH_ESCAPE] }, + { begin: /\{\w+\}/, relevance: 0 }, + { + begin: "-?\\w+\\s*=>", + relevance: 0, + }, + ], + }, + { + className: "number", + begin: + "(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b", + relevance: 0, + }, + { + begin: + "(\\/\\/|" + + e.RE_STARTERS_RE + + "|\\b(split|return|print|reverse|grep)\\b)\\s*", + keywords: "split return print reverse grep", + relevance: 0, + contains: [ + e.HASH_COMMENT_MODE, + { + className: "regexp", + variants: [ + { + begin: c("s|tr|y", n.either(...l, { capture: !0 })), + }, + { begin: c("s|tr|y", "\\(", "\\)") }, + { + begin: c("s|tr|y", "\\[", "\\]"), + }, + { begin: c("s|tr|y", "\\{", "\\}") }, + ], + relevance: 2, + }, + { + className: "regexp", + variants: [ + { begin: /(m|qr)\/\//, relevance: 0 }, + { + begin: d("(?:m|qr)?", /\//, /\//), + }, + { begin: d("m|qr", n.either(...l, { capture: !0 }), /\1/) }, + { begin: d("m|qr", /\(/, /\)/) }, + { begin: d("m|qr", /\[/, /\]/) }, + { + begin: d("m|qr", /\{/, /\}/), + }, + ], + }, + ], + }, + { + className: "function", + beginKeywords: "sub", + end: "(\\s*\\(.*?\\))?[;{]", + excludeEnd: !0, + relevance: 5, + contains: [e.TITLE_MODE], + }, + { + begin: "-\\w\\b", + relevance: 0, + }, + { + begin: "^__DATA__$", + end: "^__END__$", + subLanguage: "mojolicious", + contains: [{ begin: "^@@.*", end: "$", className: "comment" }], + }, + ]; + return ( + (i.contains = g), + (r.contains = g), + { name: "Perl", aliases: ["pl", "pm"], keywords: a, contains: g } + ); + }, + grmr_php: (e) => { + const n = e.regex, + t = /(?![A-Za-z0-9])(?![$])/, + a = n.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/, t), + i = n.concat( + /(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/, + t, + ), + r = { + scope: "variable", + match: "\\$+" + a, + }, + s = { + scope: "subst", + variants: [ + { begin: /\$\w+/ }, + { + begin: /\{\$/, + end: /\}/, + }, + ], + }, + o = e.inherit(e.APOS_STRING_MODE, { illegal: null }), + l = "[ \t\n]", + c = { + scope: "string", + variants: [ + e.inherit(e.QUOTE_STRING_MODE, { + illegal: null, + contains: e.QUOTE_STRING_MODE.contains.concat(s), + }), + o, + { + begin: /<<<[ \t]*(?:(\w+)|"(\w+)")\n/, + end: /[ \t]*(\w+)\b/, + contains: e.QUOTE_STRING_MODE.contains.concat(s), + "on:begin": (e, n) => { + n.data._beginMatch = e[1] || e[2]; + }, + "on:end": (e, n) => { + n.data._beginMatch !== e[1] && n.ignoreMatch(); + }, + }, + e.END_SAME_AS_BEGIN({ + begin: /<<<[ \t]*'(\w+)'\n/, + end: /[ \t]*(\w+)\b/, + }), + ], + }, + d = { + scope: "number", + variants: [ + { + begin: "\\b0[bB][01]+(?:_[01]+)*\\b", + }, + { begin: "\\b0[oO][0-7]+(?:_[0-7]+)*\\b" }, + { + begin: "\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b", + }, + { + begin: + "(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?", + }, + ], + relevance: 0, + }, + g = ["false", "null", "true"], + u = [ + "__CLASS__", + "__DIR__", + "__FILE__", + "__FUNCTION__", + "__COMPILER_HALT_OFFSET__", + "__LINE__", + "__METHOD__", + "__NAMESPACE__", + "__TRAIT__", + "die", + "echo", + "exit", + "include", + "include_once", + "print", + "require", + "require_once", + "array", + "abstract", + "and", + "as", + "binary", + "bool", + "boolean", + "break", + "callable", + "case", + "catch", + "class", + "clone", + "const", + "continue", + "declare", + "default", + "do", + "double", + "else", + "elseif", + "empty", + "enddeclare", + "endfor", + "endforeach", + "endif", + "endswitch", + "endwhile", + "enum", + "eval", + "extends", + "final", + "finally", + "float", + "for", + "foreach", + "from", + "global", + "goto", + "if", + "implements", + "instanceof", + "insteadof", + "int", + "integer", + "interface", + "isset", + "iterable", + "list", + "match|0", + "mixed", + "new", + "never", + "object", + "or", + "private", + "protected", + "public", + "readonly", + "real", + "return", + "string", + "switch", + "throw", + "trait", + "try", + "unset", + "use", + "var", + "void", + "while", + "xor", + "yield", + ], + b = [ + "Error|0", + "AppendIterator", + "ArgumentCountError", + "ArithmeticError", + "ArrayIterator", + "ArrayObject", + "AssertionError", + "BadFunctionCallException", + "BadMethodCallException", + "CachingIterator", + "CallbackFilterIterator", + "CompileError", + "Countable", + "DirectoryIterator", + "DivisionByZeroError", + "DomainException", + "EmptyIterator", + "ErrorException", + "Exception", + "FilesystemIterator", + "FilterIterator", + "GlobIterator", + "InfiniteIterator", + "InvalidArgumentException", + "IteratorIterator", + "LengthException", + "LimitIterator", + "LogicException", + "MultipleIterator", + "NoRewindIterator", + "OutOfBoundsException", + "OutOfRangeException", + "OuterIterator", + "OverflowException", + "ParentIterator", + "ParseError", + "RangeException", + "RecursiveArrayIterator", + "RecursiveCachingIterator", + "RecursiveCallbackFilterIterator", + "RecursiveDirectoryIterator", + "RecursiveFilterIterator", + "RecursiveIterator", + "RecursiveIteratorIterator", + "RecursiveRegexIterator", + "RecursiveTreeIterator", + "RegexIterator", + "RuntimeException", + "SeekableIterator", + "SplDoublyLinkedList", + "SplFileInfo", + "SplFileObject", + "SplFixedArray", + "SplHeap", + "SplMaxHeap", + "SplMinHeap", + "SplObjectStorage", + "SplObserver", + "SplPriorityQueue", + "SplQueue", + "SplStack", + "SplSubject", + "SplTempFileObject", + "TypeError", + "UnderflowException", + "UnexpectedValueException", + "UnhandledMatchError", + "ArrayAccess", + "BackedEnum", + "Closure", + "Fiber", + "Generator", + "Iterator", + "IteratorAggregate", + "Serializable", + "Stringable", + "Throwable", + "Traversable", + "UnitEnum", + "WeakReference", + "WeakMap", + "Directory", + "__PHP_Incomplete_Class", + "parent", + "php_user_filter", + "self", + "static", + "stdClass", + ], + m = { + keyword: u, + literal: ((e) => { + const n = []; + return ( + e.forEach((e) => { + (n.push(e), + e.toLowerCase() === e + ? n.push(e.toUpperCase()) + : n.push(e.toLowerCase())); + }), + n + ); + })(g), + built_in: b, + }, + p = (e) => e.map((e) => e.replace(/\|\d+$/, "")), + _ = { + variants: [ + { + match: [ + /new/, + n.concat(l, "+"), + n.concat("(?!", p(b).join("\\b|"), "\\b)"), + i, + ], + scope: { + 1: "keyword", + 4: "title.class", + }, + }, + ], + }, + h = n.concat(a, "\\b(?!\\()"), + f = { + variants: [ + { + match: [n.concat(/::/, n.lookahead(/(?!class\b)/)), h], + scope: { 2: "variable.constant" }, + }, + { match: [/::/, /class/], scope: { 2: "variable.language" } }, + { + match: [i, n.concat(/::/, n.lookahead(/(?!class\b)/)), h], + scope: { 1: "title.class", 3: "variable.constant" }, + }, + { + match: [i, n.concat("::", n.lookahead(/(?!class\b)/))], + scope: { 1: "title.class" }, + }, + { + match: [i, /::/, /class/], + scope: { 1: "title.class", 3: "variable.language" }, + }, + ], + }, + E = { + scope: "attr", + match: n.concat(a, n.lookahead(":"), n.lookahead(/(?!::)/)), + }, + y = { + relevance: 0, + begin: /\(/, + end: /\)/, + keywords: m, + contains: [E, r, f, e.C_BLOCK_COMMENT_MODE, c, d, _], + }, + N = { + relevance: 0, + match: [ + /\b/, + n.concat( + "(?!fn\\b|function\\b|", + p(u).join("\\b|"), + "|", + p(b).join("\\b|"), + "\\b)", + ), + a, + n.concat(l, "*"), + n.lookahead(/(?=\()/), + ], + scope: { 3: "title.function.invoke" }, + contains: [y], + }; + y.contains.push(N); + const w = [E, f, e.C_BLOCK_COMMENT_MODE, c, d, _]; + return { + case_insensitive: !1, + keywords: m, + contains: [ + { + begin: n.concat(/#\[\s*/, i), + beginScope: "meta", + end: /]/, + endScope: "meta", + keywords: { literal: g, keyword: ["new", "array"] }, + contains: [ + { + begin: /\[/, + end: /]/, + keywords: { literal: g, keyword: ["new", "array"] }, + contains: ["self", ...w], + }, + ...w, + { scope: "meta", match: i }, + ], + }, + e.HASH_COMMENT_MODE, + e.COMMENT("//", "$"), + e.COMMENT("/\\*", "\\*/", { + contains: [ + { + scope: "doctag", + match: "@[A-Za-z]+", + }, + ], + }), + { + match: /__halt_compiler\(\);/, + keywords: "__halt_compiler", + starts: { + scope: "comment", + end: e.MATCH_NOTHING_RE, + contains: [{ match: /\?>/, scope: "meta", endsParent: !0 }], + }, + }, + { + scope: "meta", + variants: [ + { + begin: /<\?php/, + relevance: 10, + }, + { begin: /<\?=/ }, + { begin: /<\?/, relevance: 0.1 }, + { + begin: /\?>/, + }, + ], + }, + { scope: "variable.language", match: /\$this\b/ }, + r, + N, + f, + { + match: [/const/, /\s/, a], + scope: { 1: "keyword", 3: "variable.constant" }, + }, + _, + { + scope: "function", + relevance: 0, + beginKeywords: "fn function", + end: /[;{]/, + excludeEnd: !0, + illegal: "[$%\\[]", + contains: [ + { beginKeywords: "use" }, + e.UNDERSCORE_TITLE_MODE, + { begin: "=>", endsParent: !0 }, + { + scope: "params", + begin: "\\(", + end: "\\)", + excludeBegin: !0, + excludeEnd: !0, + keywords: m, + contains: ["self", r, f, e.C_BLOCK_COMMENT_MODE, c, d], + }, + ], + }, + { + scope: "class", + variants: [ + { + beginKeywords: "enum", + illegal: /[($"]/, + }, + { beginKeywords: "class interface trait", illegal: /[:($"]/ }, + ], + relevance: 0, + end: /\{/, + excludeEnd: !0, + contains: [ + { + beginKeywords: "extends implements", + }, + e.UNDERSCORE_TITLE_MODE, + ], + }, + { + beginKeywords: "namespace", + relevance: 0, + end: ";", + illegal: /[.']/, + contains: [ + e.inherit(e.UNDERSCORE_TITLE_MODE, { scope: "title.class" }), + ], + }, + { + beginKeywords: "use", + relevance: 0, + end: ";", + contains: [ + { + match: /\b(as|const|function)\b/, + scope: "keyword", + }, + e.UNDERSCORE_TITLE_MODE, + ], + }, + c, + d, + ], + }; + }, + grmr_php_template: (e) => ({ + name: "PHP template", + subLanguage: "xml", + contains: [ + { + begin: /<\?(php|=)?/, + end: /\?>/, + subLanguage: "php", + contains: [ + { begin: "/\\*", end: "\\*/", skip: !0 }, + { begin: 'b"', end: '"', skip: !0 }, + { begin: "b'", end: "'", skip: !0 }, + e.inherit(e.APOS_STRING_MODE, { + illegal: null, + className: null, + contains: null, + skip: !0, + }), + e.inherit(e.QUOTE_STRING_MODE, { + illegal: null, + className: null, + contains: null, + skip: !0, + }), + ], + }, + ], + }), + grmr_plaintext: (e) => ({ + name: "Plain text", + aliases: ["text", "txt"], + disableAutodetect: !0, + }), + grmr_python: (e) => { + const n = e.regex, + t = /[\p{XID_Start}_]\p{XID_Continue}*/u, + a = [ + "and", + "as", + "assert", + "async", + "await", + "break", + "case", + "class", + "continue", + "def", + "del", + "elif", + "else", + "except", + "finally", + "for", + "from", + "global", + "if", + "import", + "in", + "is", + "lambda", + "match", + "nonlocal|10", + "not", + "or", + "pass", + "raise", + "return", + "try", + "while", + "with", + "yield", + ], + i = { + $pattern: /[A-Za-z]\w+|__\w+__/, + keyword: a, + built_in: [ + "__import__", + "abs", + "all", + "any", + "ascii", + "bin", + "bool", + "breakpoint", + "bytearray", + "bytes", + "callable", + "chr", + "classmethod", + "compile", + "complex", + "delattr", + "dict", + "dir", + "divmod", + "enumerate", + "eval", + "exec", + "filter", + "float", + "format", + "frozenset", + "getattr", + "globals", + "hasattr", + "hash", + "help", + "hex", + "id", + "input", + "int", + "isinstance", + "issubclass", + "iter", + "len", + "list", + "locals", + "map", + "max", + "memoryview", + "min", + "next", + "object", + "oct", + "open", + "ord", + "pow", + "print", + "property", + "range", + "repr", + "reversed", + "round", + "set", + "setattr", + "slice", + "sorted", + "staticmethod", + "str", + "sum", + "super", + "tuple", + "type", + "vars", + "zip", + ], + literal: [ + "__debug__", + "Ellipsis", + "False", + "None", + "NotImplemented", + "True", + ], + type: [ + "Any", + "Callable", + "Coroutine", + "Dict", + "List", + "Literal", + "Generic", + "Optional", + "Sequence", + "Set", + "Tuple", + "Type", + "Union", + ], + }, + r = { className: "meta", begin: /^(>>>|\.\.\.) / }, + s = { + className: "subst", + begin: /\{/, + end: /\}/, + keywords: i, + illegal: /#/, + }, + o = { begin: /\{\{/, relevance: 0 }, + l = { + className: "string", + contains: [e.BACKSLASH_ESCAPE], + variants: [ + { + begin: /([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/, + end: /'''/, + contains: [e.BACKSLASH_ESCAPE, r], + relevance: 10, + }, + { + begin: /([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/, + end: /"""/, + contains: [e.BACKSLASH_ESCAPE, r], + relevance: 10, + }, + { + begin: /([fF][rR]|[rR][fF]|[fF])'''/, + end: /'''/, + contains: [e.BACKSLASH_ESCAPE, r, o, s], + }, + { + begin: /([fF][rR]|[rR][fF]|[fF])"""/, + end: /"""/, + contains: [e.BACKSLASH_ESCAPE, r, o, s], + }, + { begin: /([uU]|[rR])'/, end: /'/, relevance: 10 }, + { begin: /([uU]|[rR])"/, end: /"/, relevance: 10 }, + { + begin: /([bB]|[bB][rR]|[rR][bB])'/, + end: /'/, + }, + { begin: /([bB]|[bB][rR]|[rR][bB])"/, end: /"/ }, + { + begin: /([fF][rR]|[rR][fF]|[fF])'/, + end: /'/, + contains: [e.BACKSLASH_ESCAPE, o, s], + }, + { + begin: /([fF][rR]|[rR][fF]|[fF])"/, + end: /"/, + contains: [e.BACKSLASH_ESCAPE, o, s], + }, + e.APOS_STRING_MODE, + e.QUOTE_STRING_MODE, + ], + }, + c = "[0-9](_?[0-9])*", + d = `(\\b(${c}))?\\.(${c})|\\b(${c})\\.`, + g = "\\b|" + a.join("|"), + u = { + className: "number", + relevance: 0, + variants: [ + { + begin: `(\\b(${c})|(${d}))[eE][+-]?(${c})[jJ]?(?=${g})`, + }, + { begin: `(${d})[jJ]?` }, + { + begin: `\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${g})`, + }, + { + begin: `\\b0[bB](_?[01])+[lL]?(?=${g})`, + }, + { begin: `\\b0[oO](_?[0-7])+[lL]?(?=${g})` }, + { begin: `\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${g})` }, + { begin: `\\b(${c})[jJ](?=${g})` }, + ], + }, + b = { + className: "comment", + begin: n.lookahead(/# type:/), + end: /$/, + keywords: i, + contains: [ + { begin: /# type:/ }, + { begin: /#/, end: /\b\B/, endsWithParent: !0 }, + ], + }, + m = { + className: "params", + variants: [ + { className: "", begin: /\(\s*\)/, skip: !0 }, + { + begin: /\(/, + end: /\)/, + excludeBegin: !0, + excludeEnd: !0, + keywords: i, + contains: ["self", r, u, l, e.HASH_COMMENT_MODE], + }, + ], + }; + return ( + (s.contains = [l, u, r]), + { + name: "Python", + aliases: ["py", "gyp", "ipython"], + unicodeRegex: !0, + keywords: i, + illegal: /(<\/|\?)|=>/, + contains: [ + r, + u, + { begin: /\bself\b/ }, + { beginKeywords: "if", relevance: 0 }, + l, + b, + e.HASH_COMMENT_MODE, + { + match: [/\bdef/, /\s+/, t], + scope: { + 1: "keyword", + 3: "title.function", + }, + contains: [m], + }, + { + variants: [ + { + match: [/\bclass/, /\s+/, t, /\s*/, /\(\s*/, t, /\s*\)/], + }, + { match: [/\bclass/, /\s+/, t] }, + ], + scope: { + 1: "keyword", + 3: "title.class", + 6: "title.class.inherited", + }, + }, + { + className: "meta", + begin: /^[\t ]*@/, + end: /(?=#)|$/, + contains: [u, m, l], + }, + ], + } + ); + }, + grmr_python_repl: (e) => ({ + aliases: ["pycon"], + contains: [ + { + className: "meta.prompt", + starts: { end: / |$/, starts: { end: "$", subLanguage: "python" } }, + variants: [ + { + begin: /^>>>(?=[ ]|$)/, + }, + { begin: /^\.\.\.(?=[ ]|$)/ }, + ], + }, + ], + }), + grmr_r: (e) => { + const n = e.regex, + t = /(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/, + a = n.either( + /0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/, + /0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/, + /(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/, + ), + i = /[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/, + r = n.either(/[()]/, /[{}]/, /\[\[/, /[[\]]/, /\\/, /,/); + return { + name: "R", + keywords: { + $pattern: t, + keyword: "function if in break next repeat else for while", + literal: + "NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10", + built_in: + "LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm", + }, + contains: [ + e.COMMENT(/#'/, /$/, { + contains: [ + { + scope: "doctag", + match: /@examples/, + starts: { + end: n.lookahead( + n.either(/\n^#'\s*(?=@[a-zA-Z]+)/, /\n^(?!#')/), + ), + endsParent: !0, + }, + }, + { + scope: "doctag", + begin: "@param", + end: /$/, + contains: [ + { + scope: "variable", + variants: [{ match: t }, { match: /`(?:\\.|[^`\\])+`/ }], + endsParent: !0, + }, + ], + }, + { scope: "doctag", match: /@[a-zA-Z]+/ }, + { scope: "keyword", match: /\\[a-zA-Z]+/ }, + ], + }), + e.HASH_COMMENT_MODE, + { + scope: "string", + contains: [e.BACKSLASH_ESCAPE], + variants: [ + e.END_SAME_AS_BEGIN({ begin: /[rR]"(-*)\(/, end: /\)(-*)"/ }), + e.END_SAME_AS_BEGIN({ begin: /[rR]"(-*)\{/, end: /\}(-*)"/ }), + e.END_SAME_AS_BEGIN({ begin: /[rR]"(-*)\[/, end: /\](-*)"/ }), + e.END_SAME_AS_BEGIN({ begin: /[rR]'(-*)\(/, end: /\)(-*)'/ }), + e.END_SAME_AS_BEGIN({ begin: /[rR]'(-*)\{/, end: /\}(-*)'/ }), + e.END_SAME_AS_BEGIN({ begin: /[rR]'(-*)\[/, end: /\](-*)'/ }), + { begin: '"', end: '"', relevance: 0 }, + { begin: "'", end: "'", relevance: 0 }, + ], + }, + { + relevance: 0, + variants: [ + { + scope: { + 1: "operator", + 2: "number", + }, + match: [i, a], + }, + { scope: { 1: "operator", 2: "number" }, match: [/%[^%]*%/, a] }, + { scope: { 1: "punctuation", 2: "number" }, match: [r, a] }, + { + scope: { + 2: "number", + }, + match: [/[^a-zA-Z0-9._]|^/, a], + }, + ], + }, + { scope: { 3: "operator" }, match: [t, /\s+/, /<-/, /\s+/] }, + { + scope: "operator", + relevance: 0, + variants: [ + { match: i }, + { + match: /%[^%]*%/, + }, + ], + }, + { scope: "punctuation", relevance: 0, match: r }, + { begin: "`", end: "`", contains: [{ begin: /\\./ }] }, + ], + }; + }, + grmr_ruby: (e) => { + const n = e.regex, + t = + "([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)", + a = n.either(/\b([A-Z]+[a-z0-9]+)+/, /\b([A-Z]+[a-z0-9]+)+[A-Z]+/), + i = n.concat(a, /(::\w+)*/), + r = { + "variable.constant": ["__FILE__", "__LINE__", "__ENCODING__"], + "variable.language": ["self", "super"], + keyword: [ + "alias", + "and", + "begin", + "BEGIN", + "break", + "case", + "class", + "defined", + "do", + "else", + "elsif", + "end", + "END", + "ensure", + "for", + "if", + "in", + "module", + "next", + "not", + "or", + "redo", + "require", + "rescue", + "retry", + "return", + "then", + "undef", + "unless", + "until", + "when", + "while", + "yield", + "include", + "extend", + "prepend", + "public", + "private", + "protected", + "raise", + "throw", + ], + built_in: [ + "proc", + "lambda", + "attr_accessor", + "attr_reader", + "attr_writer", + "define_method", + "private_constant", + "module_function", + ], + literal: ["true", "false", "nil"], + }, + s = { className: "doctag", begin: "@[A-Za-z]+" }, + o = { + begin: "#<", + end: ">", + }, + l = [ + e.COMMENT("#", "$", { contains: [s] }), + e.COMMENT("^=begin", "^=end", { contains: [s], relevance: 10 }), + e.COMMENT("^__END__", e.MATCH_NOTHING_RE), + ], + c = { className: "subst", begin: /#\{/, end: /\}/, keywords: r }, + d = { + className: "string", + contains: [e.BACKSLASH_ESCAPE, c], + variants: [ + { begin: /'/, end: /'/ }, + { begin: /"/, end: /"/ }, + { begin: /`/, end: /`/ }, + { + begin: /%[qQwWx]?\(/, + end: /\)/, + }, + { begin: /%[qQwWx]?\[/, end: /\]/ }, + { + begin: /%[qQwWx]?\{/, + end: /\}/, + }, + { begin: /%[qQwWx]?/ }, + { begin: /%[qQwWx]?\//, end: /\// }, + { begin: /%[qQwWx]?%/, end: /%/ }, + { begin: /%[qQwWx]?-/, end: /-/ }, + { + begin: /%[qQwWx]?\|/, + end: /\|/, + }, + { begin: /\B\?(\\\d{1,3})/ }, + { + begin: /\B\?(\\x[A-Fa-f0-9]{1,2})/, + }, + { begin: /\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/ }, + { + begin: /\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/, + }, + { + begin: /\B\?\\(c|C-)[\x20-\x7e]/, + }, + { begin: /\B\?\\?\S/ }, + { + begin: n.concat( + /<<[-~]?'?/, + n.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/), + ), + contains: [ + e.END_SAME_AS_BEGIN({ + begin: /(\w+)/, + end: /(\w+)/, + contains: [e.BACKSLASH_ESCAPE, c], + }), + ], + }, + ], + }, + g = "[0-9](_?[0-9])*", + u = { + className: "number", + relevance: 0, + variants: [ + { + begin: `\\b([1-9](_?[0-9])*|0)(\\.(${g}))?([eE][+-]?(${g})|r)?i?\\b`, + }, + { + begin: "\\b0[dD][0-9](_?[0-9])*r?i?\\b", + }, + { begin: "\\b0[bB][0-1](_?[0-1])*r?i?\\b" }, + { begin: "\\b0[oO][0-7](_?[0-7])*r?i?\\b" }, + { + begin: "\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b", + }, + { + begin: "\\b0(_?[0-7])+r?i?\\b", + }, + ], + }, + b = { + variants: [ + { match: /\(\)/ }, + { + className: "params", + begin: /\(/, + end: /(?=\))/, + excludeBegin: !0, + endsParent: !0, + keywords: r, + }, + ], + }, + m = [ + d, + { + variants: [ + { match: [/class\s+/, i, /\s+<\s+/, i] }, + { + match: [/\b(class|module)\s+/, i], + }, + ], + scope: { 2: "title.class", 4: "title.class.inherited" }, + keywords: r, + }, + { + match: [/(include|extend)\s+/, i], + scope: { + 2: "title.class", + }, + keywords: r, + }, + { + relevance: 0, + match: [i, /\.new[. (]/], + scope: { + 1: "title.class", + }, + }, + { + relevance: 0, + match: /\b[A-Z][A-Z_0-9]+\b/, + className: "variable.constant", + }, + { relevance: 0, match: a, scope: "title.class" }, + { + match: [/def/, /\s+/, t], + scope: { 1: "keyword", 3: "title.function" }, + contains: [b], + }, + { + begin: e.IDENT_RE + "::", + }, + { + className: "symbol", + begin: e.UNDERSCORE_IDENT_RE + "(!|\\?)?:", + relevance: 0, + }, + { + className: "symbol", + begin: ":(?!\\s)", + contains: [d, { begin: t }], + relevance: 0, + }, + u, + { + className: "variable", + begin: "(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])", + }, + { + className: "params", + begin: /\|/, + end: /\|/, + excludeBegin: !0, + excludeEnd: !0, + relevance: 0, + keywords: r, + }, + { + begin: "(" + e.RE_STARTERS_RE + "|unless)\\s*", + keywords: "unless", + contains: [ + { + className: "regexp", + contains: [e.BACKSLASH_ESCAPE, c], + illegal: /\n/, + variants: [ + { begin: "/", end: "/[a-z]*" }, + { begin: /%r\{/, end: /\}[a-z]*/ }, + { + begin: "%r\\(", + end: "\\)[a-z]*", + }, + { begin: "%r!", end: "![a-z]*" }, + { begin: "%r\\[", end: "\\][a-z]*" }, + ], + }, + ].concat(o, l), + relevance: 0, + }, + ].concat(o, l); + ((c.contains = m), (b.contains = m)); + const p = [ + { begin: /^\s*=>/, starts: { end: "$", contains: m } }, + { + className: "meta.prompt", + begin: + "^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])", + starts: { end: "$", keywords: r, contains: m }, + }, + ]; + return ( + l.unshift(o), + { + name: "Ruby", + aliases: ["rb", "gemspec", "podspec", "thor", "irb"], + keywords: r, + illegal: /\/\*/, + contains: [e.SHEBANG({ binary: "ruby" })] + .concat(p) + .concat(l) + .concat(m), + } + ); + }, + grmr_rust: (e) => { + const n = e.regex, + t = { + className: "title.function.invoke", + relevance: 0, + begin: n.concat( + /\b/, + /(?!let|for|while|if|else|match\b)/, + e.IDENT_RE, + n.lookahead(/\s*\(/), + ), + }, + a = "([ui](8|16|32|64|128|size)|f(32|64))?", + i = [ + "drop ", + "Copy", + "Send", + "Sized", + "Sync", + "Drop", + "Fn", + "FnMut", + "FnOnce", + "ToOwned", + "Clone", + "Debug", + "PartialEq", + "PartialOrd", + "Eq", + "Ord", + "AsRef", + "AsMut", + "Into", + "From", + "Default", + "Iterator", + "Extend", + "IntoIterator", + "DoubleEndedIterator", + "ExactSizeIterator", + "SliceConcatExt", + "ToString", + "assert!", + "assert_eq!", + "bitflags!", + "bytes!", + "cfg!", + "col!", + "concat!", + "concat_idents!", + "debug_assert!", + "debug_assert_eq!", + "env!", + "eprintln!", + "panic!", + "file!", + "format!", + "format_args!", + "include_bytes!", + "include_str!", + "line!", + "local_data_key!", + "module_path!", + "option_env!", + "print!", + "println!", + "select!", + "stringify!", + "try!", + "unimplemented!", + "unreachable!", + "vec!", + "write!", + "writeln!", + "macro_rules!", + "assert_ne!", + "debug_assert_ne!", + ], + r = [ + "i8", + "i16", + "i32", + "i64", + "i128", + "isize", + "u8", + "u16", + "u32", + "u64", + "u128", + "usize", + "f32", + "f64", + "str", + "char", + "bool", + "Box", + "Option", + "Result", + "String", + "Vec", + ]; + return { + name: "Rust", + aliases: ["rs"], + keywords: { + $pattern: e.IDENT_RE + "!?", + type: r, + keyword: [ + "abstract", + "as", + "async", + "await", + "become", + "box", + "break", + "const", + "continue", + "crate", + "do", + "dyn", + "else", + "enum", + "extern", + "false", + "final", + "fn", + "for", + "if", + "impl", + "in", + "let", + "loop", + "macro", + "match", + "mod", + "move", + "mut", + "override", + "priv", + "pub", + "ref", + "return", + "self", + "Self", + "static", + "struct", + "super", + "trait", + "true", + "try", + "type", + "typeof", + "unsafe", + "unsized", + "use", + "virtual", + "where", + "while", + "yield", + ], + literal: ["true", "false", "Some", "None", "Ok", "Err"], + built_in: i, + }, + illegal: "" }, + t, + ], + }; + }, + grmr_scss: (e) => { + const n = ie(e), + t = le, + a = oe, + i = "@[a-z-]+", + r = { + className: "variable", + begin: "(\\$[a-zA-Z-][a-zA-Z0-9_-]*)\\b", + relevance: 0, + }; + return { + name: "SCSS", + case_insensitive: !0, + illegal: "[=/|']", + contains: [ + e.C_LINE_COMMENT_MODE, + e.C_BLOCK_COMMENT_MODE, + n.CSS_NUMBER_MODE, + { + className: "selector-id", + begin: "#[A-Za-z0-9_-]+", + relevance: 0, + }, + { + className: "selector-class", + begin: "\\.[A-Za-z0-9_-]+", + relevance: 0, + }, + n.ATTRIBUTE_SELECTOR_MODE, + { + className: "selector-tag", + begin: "\\b(" + re.join("|") + ")\\b", + relevance: 0, + }, + { className: "selector-pseudo", begin: ":(" + a.join("|") + ")" }, + { className: "selector-pseudo", begin: ":(:)?(" + t.join("|") + ")" }, + r, + { begin: /\(/, end: /\)/, contains: [n.CSS_NUMBER_MODE] }, + n.CSS_VARIABLE, + { className: "attribute", begin: "\\b(" + ce.join("|") + ")\\b" }, + { + begin: + "\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b", + }, + { + begin: /:/, + end: /[;}{]/, + relevance: 0, + contains: [ + n.BLOCK_COMMENT, + r, + n.HEXCOLOR, + n.CSS_NUMBER_MODE, + e.QUOTE_STRING_MODE, + e.APOS_STRING_MODE, + n.IMPORTANT, + n.FUNCTION_DISPATCH, + ], + }, + { + begin: "@(page|font-face)", + keywords: { $pattern: i, keyword: "@page @font-face" }, + }, + { + begin: "@", + end: "[{;]", + returnBegin: !0, + keywords: { + $pattern: /[a-z-]+/, + keyword: "and or not only", + attribute: se.join(" "), + }, + contains: [ + { begin: i, className: "keyword" }, + { begin: /[a-z-]+(?=:)/, className: "attribute" }, + r, + e.QUOTE_STRING_MODE, + e.APOS_STRING_MODE, + n.HEXCOLOR, + n.CSS_NUMBER_MODE, + ], + }, + n.FUNCTION_DISPATCH, + ], + }; + }, + grmr_shell: (e) => ({ + name: "Shell Session", + aliases: ["console", "shellsession"], + contains: [ + { + className: "meta.prompt", + begin: /^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/, + starts: { end: /[^\\](?=\s*$)/, subLanguage: "bash" }, + }, + ], + }), + grmr_sql: (e) => { + const n = e.regex, + t = e.COMMENT("--", "$"), + a = ["true", "false", "unknown"], + i = [ + "bigint", + "binary", + "blob", + "boolean", + "char", + "character", + "clob", + "date", + "dec", + "decfloat", + "decimal", + "float", + "int", + "integer", + "interval", + "nchar", + "nclob", + "national", + "numeric", + "real", + "row", + "smallint", + "time", + "timestamp", + "varchar", + "varying", + "varbinary", + ], + r = [ + "abs", + "acos", + "array_agg", + "asin", + "atan", + "avg", + "cast", + "ceil", + "ceiling", + "coalesce", + "corr", + "cos", + "cosh", + "count", + "covar_pop", + "covar_samp", + "cume_dist", + "dense_rank", + "deref", + "element", + "exp", + "extract", + "first_value", + "floor", + "json_array", + "json_arrayagg", + "json_exists", + "json_object", + "json_objectagg", + "json_query", + "json_table", + "json_table_primitive", + "json_value", + "lag", + "last_value", + "lead", + "listagg", + "ln", + "log", + "log10", + "lower", + "max", + "min", + "mod", + "nth_value", + "ntile", + "nullif", + "percent_rank", + "percentile_cont", + "percentile_disc", + "position", + "position_regex", + "power", + "rank", + "regr_avgx", + "regr_avgy", + "regr_count", + "regr_intercept", + "regr_r2", + "regr_slope", + "regr_sxx", + "regr_sxy", + "regr_syy", + "row_number", + "sin", + "sinh", + "sqrt", + "stddev_pop", + "stddev_samp", + "substring", + "substring_regex", + "sum", + "tan", + "tanh", + "translate", + "translate_regex", + "treat", + "trim", + "trim_array", + "unnest", + "upper", + "value_of", + "var_pop", + "var_samp", + "width_bucket", + ], + s = [ + "create table", + "insert into", + "primary key", + "foreign key", + "not null", + "alter table", + "add constraint", + "grouping sets", + "on overflow", + "character set", + "respect nulls", + "ignore nulls", + "nulls first", + "nulls last", + "depth first", + "breadth first", + ], + o = r, + l = [ + "abs", + "acos", + "all", + "allocate", + "alter", + "and", + "any", + "are", + "array", + "array_agg", + "array_max_cardinality", + "as", + "asensitive", + "asin", + "asymmetric", + "at", + "atan", + "atomic", + "authorization", + "avg", + "begin", + "begin_frame", + "begin_partition", + "between", + "bigint", + "binary", + "blob", + "boolean", + "both", + "by", + "call", + "called", + "cardinality", + "cascaded", + "case", + "cast", + "ceil", + "ceiling", + "char", + "char_length", + "character", + "character_length", + "check", + "classifier", + "clob", + "close", + "coalesce", + "collate", + "collect", + "column", + "commit", + "condition", + "connect", + "constraint", + "contains", + "convert", + "copy", + "corr", + "corresponding", + "cos", + "cosh", + "count", + "covar_pop", + "covar_samp", + "create", + "cross", + "cube", + "cume_dist", + "current", + "current_catalog", + "current_date", + "current_default_transform_group", + "current_path", + "current_role", + "current_row", + "current_schema", + "current_time", + "current_timestamp", + "current_path", + "current_role", + "current_transform_group_for_type", + "current_user", + "cursor", + "cycle", + "date", + "day", + "deallocate", + "dec", + "decimal", + "decfloat", + "declare", + "default", + "define", + "delete", + "dense_rank", + "deref", + "describe", + "deterministic", + "disconnect", + "distinct", + "double", + "drop", + "dynamic", + "each", + "element", + "else", + "empty", + "end", + "end_frame", + "end_partition", + "end-exec", + "equals", + "escape", + "every", + "except", + "exec", + "execute", + "exists", + "exp", + "external", + "extract", + "false", + "fetch", + "filter", + "first_value", + "float", + "floor", + "for", + "foreign", + "frame_row", + "free", + "from", + "full", + "function", + "fusion", + "get", + "global", + "grant", + "group", + "grouping", + "groups", + "having", + "hold", + "hour", + "identity", + "in", + "indicator", + "initial", + "inner", + "inout", + "insensitive", + "insert", + "int", + "integer", + "intersect", + "intersection", + "interval", + "into", + "is", + "join", + "json_array", + "json_arrayagg", + "json_exists", + "json_object", + "json_objectagg", + "json_query", + "json_table", + "json_table_primitive", + "json_value", + "lag", + "language", + "large", + "last_value", + "lateral", + "lead", + "leading", + "left", + "like", + "like_regex", + "listagg", + "ln", + "local", + "localtime", + "localtimestamp", + "log", + "log10", + "lower", + "match", + "match_number", + "match_recognize", + "matches", + "max", + "member", + "merge", + "method", + "min", + "minute", + "mod", + "modifies", + "module", + "month", + "multiset", + "national", + "natural", + "nchar", + "nclob", + "new", + "no", + "none", + "normalize", + "not", + "nth_value", + "ntile", + "null", + "nullif", + "numeric", + "octet_length", + "occurrences_regex", + "of", + "offset", + "old", + "omit", + "on", + "one", + "only", + "open", + "or", + "order", + "out", + "outer", + "over", + "overlaps", + "overlay", + "parameter", + "partition", + "pattern", + "per", + "percent", + "percent_rank", + "percentile_cont", + "percentile_disc", + "period", + "portion", + "position", + "position_regex", + "power", + "precedes", + "precision", + "prepare", + "primary", + "procedure", + "ptf", + "range", + "rank", + "reads", + "real", + "recursive", + "ref", + "references", + "referencing", + "regr_avgx", + "regr_avgy", + "regr_count", + "regr_intercept", + "regr_r2", + "regr_slope", + "regr_sxx", + "regr_sxy", + "regr_syy", + "release", + "result", + "return", + "returns", + "revoke", + "right", + "rollback", + "rollup", + "row", + "row_number", + "rows", + "running", + "savepoint", + "scope", + "scroll", + "search", + "second", + "seek", + "select", + "sensitive", + "session_user", + "set", + "show", + "similar", + "sin", + "sinh", + "skip", + "smallint", + "some", + "specific", + "specifictype", + "sql", + "sqlexception", + "sqlstate", + "sqlwarning", + "sqrt", + "start", + "static", + "stddev_pop", + "stddev_samp", + "submultiset", + "subset", + "substring", + "substring_regex", + "succeeds", + "sum", + "symmetric", + "system", + "system_time", + "system_user", + "table", + "tablesample", + "tan", + "tanh", + "then", + "time", + "timestamp", + "timezone_hour", + "timezone_minute", + "to", + "trailing", + "translate", + "translate_regex", + "translation", + "treat", + "trigger", + "trim", + "trim_array", + "true", + "truncate", + "uescape", + "union", + "unique", + "unknown", + "unnest", + "update", + "upper", + "user", + "using", + "value", + "values", + "value_of", + "var_pop", + "var_samp", + "varbinary", + "varchar", + "varying", + "versioning", + "when", + "whenever", + "where", + "width_bucket", + "window", + "with", + "within", + "without", + "year", + "add", + "asc", + "collation", + "desc", + "final", + "first", + "last", + "view", + ].filter((e) => !r.includes(e)), + c = { + begin: n.concat(/\b/, n.either(...o), /\s*\(/), + relevance: 0, + keywords: { built_in: o }, + }; + return { + name: "SQL", + case_insensitive: !0, + illegal: /[{}]|<\//, + keywords: { + $pattern: /\b[\w\.]+/, + keyword: ((e, { exceptions: n, when: t } = {}) => { + const a = t; + return ( + (n = n || []), + e.map((e) => + e.match(/\|\d+$/) || n.includes(e) ? e : a(e) ? e + "|0" : e, + ) + ); + })(l, { when: (e) => e.length < 3 }), + literal: a, + type: i, + built_in: [ + "current_catalog", + "current_date", + "current_default_transform_group", + "current_path", + "current_role", + "current_schema", + "current_transform_group_for_type", + "current_user", + "session_user", + "system_time", + "system_user", + "current_time", + "localtime", + "current_timestamp", + "localtimestamp", + ], + }, + contains: [ + { + begin: n.either(...s), + relevance: 0, + keywords: { + $pattern: /[\w\.]+/, + keyword: l.concat(s), + literal: a, + type: i, + }, + }, + { + className: "type", + begin: n.either( + "double precision", + "large object", + "with timezone", + "without timezone", + ), + }, + c, + { className: "variable", begin: /@[a-z0-9][a-z0-9_]*/ }, + { + className: "string", + variants: [{ begin: /'/, end: /'/, contains: [{ begin: /''/ }] }], + }, + { begin: /"/, end: /"/, contains: [{ begin: /""/ }] }, + e.C_NUMBER_MODE, + e.C_BLOCK_COMMENT_MODE, + t, + { + className: "operator", + begin: /[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/, + relevance: 0, + }, + ], + }; + }, + grmr_swift: (e) => { + const n = { match: /\s+/, relevance: 0 }, + t = e.COMMENT("/\\*", "\\*/", { contains: ["self"] }), + a = [e.C_LINE_COMMENT_MODE, t], + i = { + match: [/\./, m(...xe, ...Me)], + className: { 2: "keyword" }, + }, + r = { match: b(/\./, m(...Ae)), relevance: 0 }, + s = Ae.filter((e) => "string" == typeof e).concat(["_|0"]), + o = { + variants: [ + { + className: "keyword", + match: m( + ...Ae.filter((e) => "string" != typeof e) + .concat(Se) + .map(ke), + ...Me, + ), + }, + ], + }, + l = { + $pattern: m(/\b\w+/, /#\w+/), + keyword: s.concat(Re), + literal: Ce, + }, + c = [i, r, o], + g = [ + { + match: b(/\./, m(...De)), + relevance: 0, + }, + { className: "built_in", match: b(/\b/, m(...De), /(?=\()/) }, + ], + u = { match: /->/, relevance: 0 }, + p = [ + u, + { + className: "operator", + relevance: 0, + variants: [{ match: Be }, { match: `\\.(\\.|${Le})+` }], + }, + ], + _ = "([0-9]_*)+", + h = "([0-9a-fA-F]_*)+", + f = { + className: "number", + relevance: 0, + variants: [ + { match: `\\b(${_})(\\.(${_}))?([eE][+-]?(${_}))?\\b` }, + { + match: `\\b0x(${h})(\\.(${h}))?([pP][+-]?(${_}))?\\b`, + }, + { match: /\b0o([0-7]_*)+\b/ }, + { match: /\b0b([01]_*)+\b/ }, + ], + }, + E = (e = "") => ({ + className: "subst", + variants: [ + { + match: b(/\\/, e, /[0\\tnr"']/), + }, + { match: b(/\\/, e, /u\{[0-9a-fA-F]{1,8}\}/) }, + ], + }), + y = (e = "") => ({ + className: "subst", + match: b(/\\/, e, /[\t ]*(?:[\r\n]|\r\n)/), + }), + N = (e = "") => ({ + className: "subst", + label: "interpol", + begin: b(/\\/, e, /\(/), + end: /\)/, + }), + w = (e = "") => ({ + begin: b(e, /"""/), + end: b(/"""/, e), + contains: [E(e), y(e), N(e)], + }), + v = (e = "") => ({ + begin: b(e, /"/), + end: b(/"/, e), + contains: [E(e), N(e)], + }), + O = { + className: "string", + variants: [ + w(), + w("#"), + w("##"), + w("###"), + v(), + v("#"), + v("##"), + v("###"), + ], + }, + k = [ + e.BACKSLASH_ESCAPE, + { + begin: /\[/, + end: /\]/, + relevance: 0, + contains: [e.BACKSLASH_ESCAPE], + }, + ], + x = { begin: /\/[^\s](?=[^/\n]*\/)/, end: /\//, contains: k }, + M = (e) => { + const n = b(e, /\//), + t = b(/\//, e); + return { + begin: n, + end: t, + contains: [ + ...k, + { scope: "comment", begin: `#(?!.*${t})`, end: /$/ }, + ], + }; + }, + S = { + scope: "regexp", + variants: [M("###"), M("##"), M("#"), x], + }, + A = { match: b(/`/, Fe, /`/) }, + C = [ + A, + { className: "variable", match: /\$\d+/ }, + { className: "variable", match: `\\$${ze}+` }, + ], + T = [ + { + match: /(@|#(un)?)available/, + scope: "keyword", + starts: { + contains: [ + { + begin: /\(/, + end: /\)/, + keywords: Pe, + contains: [...p, f, O], + }, + ], + }, + }, + { + scope: "keyword", + match: b(/@/, m(...je)), + }, + { scope: "meta", match: b(/@/, Fe) }, + ], + R = { + match: d(/\b[A-Z]/), + relevance: 0, + contains: [ + { + className: "type", + match: b( + /(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/, + ze, + "+", + ), + }, + { className: "type", match: Ue, relevance: 0 }, + { match: /[?!]+/, relevance: 0 }, + { + match: /\.\.\./, + relevance: 0, + }, + { match: b(/\s+&\s+/, d(Ue)), relevance: 0 }, + ], + }, + D = { + begin: //, + keywords: l, + contains: [...a, ...c, ...T, u, R], + }; + R.contains.push(D); + const I = { + begin: /\(/, + end: /\)/, + relevance: 0, + keywords: l, + contains: [ + "self", + { + match: b(Fe, /\s*:/), + keywords: "_|0", + relevance: 0, + }, + ...a, + S, + ...c, + ...g, + ...p, + f, + O, + ...C, + ...T, + R, + ], + }, + L = { + begin: //, + keywords: "repeat each", + contains: [...a, R], + }, + B = { + begin: /\(/, + end: /\)/, + keywords: l, + contains: [ + { + begin: m(d(b(Fe, /\s*:/)), d(b(Fe, /\s+/, Fe, /\s*:/))), + end: /:/, + relevance: 0, + contains: [ + { className: "keyword", match: /\b_\b/ }, + { className: "params", match: Fe }, + ], + }, + ...a, + ...c, + ...p, + f, + O, + ...T, + R, + I, + ], + endsParent: !0, + illegal: /["']/, + }, + $ = { + match: [/(func|macro)/, /\s+/, m(A.match, Fe, Be)], + className: { 1: "keyword", 3: "title.function" }, + contains: [L, B, n], + illegal: [/\[/, /%/], + }, + z = { + match: [/\b(?:subscript|init[?!]?)/, /\s*(?=[<(])/], + className: { 1: "keyword" }, + contains: [L, B, n], + illegal: /\[|%/, + }, + F = { + match: [/operator/, /\s+/, Be], + className: { + 1: "keyword", + 3: "title", + }, + }, + U = { + begin: [/precedencegroup/, /\s+/, Ue], + className: { + 1: "keyword", + 3: "title", + }, + contains: [R], + keywords: [...Te, ...Ce], + end: /}/, + }; + for (const e of O.variants) { + const n = e.contains.find((e) => "interpol" === e.label); + n.keywords = l; + const t = [...c, ...g, ...p, f, O, ...C]; + n.contains = [ + ...t, + { begin: /\(/, end: /\)/, contains: ["self", ...t] }, + ]; + } + return { + name: "Swift", + keywords: l, + contains: [ + ...a, + $, + z, + { + beginKeywords: "struct protocol class extension enum actor", + end: "\\{", + excludeEnd: !0, + keywords: l, + contains: [ + e.inherit(e.TITLE_MODE, { + className: "title.class", + begin: /[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/, + }), + ...c, + ], + }, + F, + U, + { beginKeywords: "import", end: /$/, contains: [...a], relevance: 0 }, + S, + ...c, + ...g, + ...p, + f, + O, + ...C, + ...T, + R, + I, + ], + }; + }, + grmr_typescript: (e) => { + const n = Oe(e), + t = _e, + a = [ + "any", + "void", + "number", + "boolean", + "string", + "object", + "never", + "symbol", + "bigint", + "unknown", + ], + i = { + beginKeywords: "namespace", + end: /\{/, + excludeEnd: !0, + contains: [n.exports.CLASS_REFERENCE], + }, + r = { + beginKeywords: "interface", + end: /\{/, + excludeEnd: !0, + keywords: { keyword: "interface extends", built_in: a }, + contains: [n.exports.CLASS_REFERENCE], + }, + s = { + $pattern: _e, + keyword: he.concat([ + "type", + "namespace", + "interface", + "public", + "private", + "protected", + "implements", + "declare", + "abstract", + "readonly", + "enum", + "override", + ]), + literal: fe, + built_in: ve.concat(a), + "variable.language": we, + }, + o = { className: "meta", begin: "@" + t }, + l = (e, n, t) => { + const a = e.contains.findIndex((e) => e.label === n); + if (-1 === a) throw Error("can not find mode to replace"); + e.contains.splice(a, 1, t); + }; + return ( + Object.assign(n.keywords, s), + n.exports.PARAMS_CONTAINS.push(o), + (n.contains = n.contains.concat([o, i, r])), + l(n, "shebang", e.SHEBANG()), + l(n, "use_strict", { + className: "meta", + relevance: 10, + begin: /^\s*['"]use strict['"]/, + }), + (n.contains.find((e) => "func.def" === e.label).relevance = 0), + Object.assign(n, { + name: "TypeScript", + aliases: ["ts", "tsx", "mts", "cts"], + }), + n + ); + }, + grmr_vbnet: (e) => { + const n = e.regex, + t = /\d{1,2}\/\d{1,2}\/\d{4}/, + a = /\d{4}-\d{1,2}-\d{1,2}/, + i = /(\d|1[012])(:\d+){0,2} *(AM|PM)/, + r = /\d{1,2}(:\d{1,2}){1,2}/, + s = { + className: "literal", + variants: [ + { begin: n.concat(/# */, n.either(a, t), / *#/) }, + { + begin: n.concat(/# */, r, / *#/), + }, + { begin: n.concat(/# */, i, / *#/) }, + { + begin: n.concat( + /# */, + n.either(a, t), + / +/, + n.either(i, r), + / *#/, + ), + }, + ], + }, + o = e.COMMENT(/'''/, /$/, { + contains: [{ className: "doctag", begin: /<\/?/, end: />/ }], + }), + l = e.COMMENT(null, /$/, { + variants: [{ begin: /'/ }, { begin: /([\t ]|^)REM(?=\s)/ }], + }); + return { + name: "Visual Basic .NET", + aliases: ["vb"], + case_insensitive: !0, + classNameAliases: { label: "symbol" }, + keywords: { + keyword: + "addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield", + built_in: + "addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort", + type: "boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort", + literal: "true false nothing", + }, + illegal: "//|\\{|\\}|endif|gosub|variant|wend|^\\$ ", + contains: [ + { + className: "string", + begin: /"(""|[^/n])"C\b/, + }, + { + className: "string", + begin: /"/, + end: /"/, + illegal: /\n/, + contains: [{ begin: /""/ }], + }, + s, + { + className: "number", + relevance: 0, + variants: [ + { + begin: + /\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/, + }, + { begin: /\b\d[\d_]*((U?[SIL])|[%&])?/ }, + { begin: /&H[\dA-F_]+((U?[SIL])|[%&])?/ }, + { + begin: /&O[0-7_]+((U?[SIL])|[%&])?/, + }, + { begin: /&B[01_]+((U?[SIL])|[%&])?/ }, + ], + }, + { + className: "label", + begin: /^\w+:/, + }, + o, + l, + { + className: "meta", + begin: + /[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/, + end: /$/, + keywords: { + keyword: + "const disable else elseif enable end externalsource if region then", + }, + contains: [l], + }, + ], + }; + }, + grmr_wasm: (e) => { + e.regex; + const n = e.COMMENT(/\(;/, /;\)/); + return ( + n.contains.push("self"), + { + name: "WebAssembly", + keywords: { + $pattern: /[\w.]+/, + keyword: [ + "anyfunc", + "block", + "br", + "br_if", + "br_table", + "call", + "call_indirect", + "data", + "drop", + "elem", + "else", + "end", + "export", + "func", + "global.get", + "global.set", + "local.get", + "local.set", + "local.tee", + "get_global", + "get_local", + "global", + "if", + "import", + "local", + "loop", + "memory", + "memory.grow", + "memory.size", + "module", + "mut", + "nop", + "offset", + "param", + "result", + "return", + "select", + "set_global", + "set_local", + "start", + "table", + "tee_local", + "then", + "type", + "unreachable", + ], + }, + contains: [ + e.COMMENT(/;;/, /$/), + n, + { + match: [/(?:offset|align)/, /\s*/, /=/], + className: { 1: "keyword", 3: "operator" }, + }, + { className: "variable", begin: /\$[\w_]+/ }, + { + match: /(\((?!;)|\))+/, + className: "punctuation", + relevance: 0, + }, + { + begin: [/(?:func|call|call_indirect)/, /\s+/, /\$[^\s)]+/], + className: { 1: "keyword", 3: "title.function" }, + }, + e.QUOTE_STRING_MODE, + { match: /(i32|i64|f32|f64)(?!\.)/, className: "type" }, + { + className: "keyword", + match: + /\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/, + }, + { + className: "number", + relevance: 0, + match: + /[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/, + }, + ], + } + ); + }, + grmr_xml: (e) => { + const n = e.regex, + t = n.concat( + /[\p{L}_]/u, + n.optional(/[\p{L}0-9_.-]*:/u), + /[\p{L}0-9_.-]*/u, + ), + a = { + className: "symbol", + begin: /&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/, + }, + i = { + begin: /\s/, + contains: [ + { + className: "keyword", + begin: /#?[a-z_][a-z1-9_-]+/, + illegal: /\n/, + }, + ], + }, + r = e.inherit(i, { begin: /\(/, end: /\)/ }), + s = e.inherit(e.APOS_STRING_MODE, { + className: "string", + }), + o = e.inherit(e.QUOTE_STRING_MODE, { className: "string" }), + l = { + endsWithParent: !0, + illegal: /`]+/ }, + ], + }, + ], + }, + ], + }; + return { + name: "HTML, XML", + aliases: [ + "html", + "xhtml", + "rss", + "atom", + "xjb", + "xsd", + "xsl", + "plist", + "wsf", + "svg", + ], + case_insensitive: !0, + unicodeRegex: !0, + contains: [ + { + className: "meta", + begin: //, + relevance: 10, + contains: [ + i, + o, + s, + r, + { + begin: /\[/, + end: /\]/, + contains: [ + { + className: "meta", + begin: //, + contains: [i, r, o, s], + }, + ], + }, + ], + }, + e.COMMENT(//, { relevance: 10 }), + { begin: //, relevance: 10 }, + a, + { + className: "meta", + end: /\?>/, + variants: [ + { begin: /<\?xml/, relevance: 10, contains: [o] }, + { begin: /<\?[a-z][a-z0-9]+/ }, + ], + }, + { + className: "tag", + begin: /)/, + end: />/, + keywords: { name: "style" }, + contains: [l], + starts: { + end: /<\/style>/, + returnEnd: !0, + subLanguage: ["css", "xml"], + }, + }, + { + className: "tag", + begin: /)/, + end: />/, + keywords: { name: "script" }, + contains: [l], + starts: { + end: /<\/script>/, + returnEnd: !0, + subLanguage: ["javascript", "handlebars", "xml"], + }, + }, + { + className: "tag", + begin: /<>|<\/>/, + }, + { + className: "tag", + begin: n.concat( + //, />/, /\s/))), + ), + end: /\/?>/, + contains: [ + { className: "name", begin: t, relevance: 0, starts: l }, + ], + }, + { + className: "tag", + begin: n.concat(/<\//, n.lookahead(n.concat(t, />/))), + contains: [ + { + className: "name", + begin: t, + relevance: 0, + }, + { begin: />/, relevance: 0, endsParent: !0 }, + ], + }, + ], + }; + }, + grmr_yaml: (e) => { + const n = "true false yes no null", + t = "[\\w#;/?:@&=+$,.~*'()[\\]]+", + a = { + className: "string", + relevance: 0, + variants: [ + { begin: /'/, end: /'/ }, + { begin: /"/, end: /"/ }, + { begin: /\S+/ }, + ], + contains: [ + e.BACKSLASH_ESCAPE, + { + className: "template-variable", + variants: [ + { begin: /\{\{/, end: /\}\}/ }, + { begin: /%\{/, end: /\}/ }, + ], + }, + ], + }, + i = e.inherit(a, { + variants: [ + { begin: /'/, end: /'/ }, + { begin: /"/, end: /"/ }, + { begin: /[^\s,{}[\]]+/ }, + ], + }), + r = { + end: ",", + endsWithParent: !0, + excludeEnd: !0, + keywords: n, + relevance: 0, + }, + s = { + begin: /\{/, + end: /\}/, + contains: [r], + illegal: "\\n", + relevance: 0, + }, + o = { + begin: "\\[", + end: "\\]", + contains: [r], + illegal: "\\n", + relevance: 0, + }, + l = [ + { + className: "attr", + variants: [ + { + begin: "\\w[\\w :\\/.-]*:(?=[ \t]|$)", + }, + { begin: '"\\w[\\w :\\/.-]*":(?=[ \t]|$)' }, + { + begin: "'\\w[\\w :\\/.-]*':(?=[ \t]|$)", + }, + ], + }, + { className: "meta", begin: "^---\\s*$", relevance: 10 }, + { + className: "string", + begin: + "[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*", + }, + { + begin: "<%[%=-]?", + end: "[%-]?%>", + subLanguage: "ruby", + excludeBegin: !0, + excludeEnd: !0, + relevance: 0, + }, + { className: "type", begin: "!\\w+!" + t }, + { className: "type", begin: "!<" + t + ">" }, + { className: "type", begin: "!" + t }, + { className: "type", begin: "!!" + t }, + { className: "meta", begin: "&" + e.UNDERSCORE_IDENT_RE + "$" }, + { className: "meta", begin: "\\*" + e.UNDERSCORE_IDENT_RE + "$" }, + { className: "bullet", begin: "-(?=[ ]|$)", relevance: 0 }, + e.HASH_COMMENT_MODE, + { beginKeywords: n, keywords: { literal: n } }, + { + className: "number", + begin: + "\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b", + }, + { className: "number", begin: e.C_NUMBER_RE + "\\b", relevance: 0 }, + s, + o, + a, + ], + c = [...l]; + return ( + c.pop(), + c.push(i), + (r.contains = c), + { name: "YAML", case_insensitive: !0, aliases: ["yml"], contains: l } + ); + }, + }); + const He = ae; + for (const e of Object.keys(Ke)) { + const n = e.replace("grmr_", "").replace("_", "-"); + He.registerLanguage(n, Ke[e]); + } + return He; +})(); +"object" == typeof exports && + "undefined" != typeof module && + (module.exports = hljs); diff --git a/packages/coding-agent/companion-out/export-html/vendor/marked.min.js b/packages/coding-agent/companion-out/export-html/vendor/marked.min.js new file mode 100644 index 0000000..6a57642 --- /dev/null +++ b/packages/coding-agent/companion-out/export-html/vendor/marked.min.js @@ -0,0 +1,1998 @@ +/** + * marked v15.0.4 - a markdown parser + * Copyright (c) 2011-2024, Christopher Jeffrey. (MIT Licensed) + * https://github.com/markedjs/marked + */ +!(function (e, t) { + "object" == typeof exports && "undefined" != typeof module + ? t(exports) + : "function" == typeof define && define.amd + ? define(["exports"], t) + : t( + ((e = + "undefined" != typeof globalThis ? globalThis : e || self).marked = + {}), + ); +})(this, function (e) { + "use strict"; + function t() { + return { + async: !1, + breaks: !1, + extensions: null, + gfm: !0, + hooks: null, + pedantic: !1, + renderer: null, + silent: !1, + tokenizer: null, + walkTokens: null, + }; + } + function n(t) { + e.defaults = t; + } + e.defaults = { + async: !1, + breaks: !1, + extensions: null, + gfm: !0, + hooks: null, + pedantic: !1, + renderer: null, + silent: !1, + tokenizer: null, + walkTokens: null, + }; + const s = { exec: () => null }; + function r(e, t = "") { + let n = "string" == typeof e ? e : e.source; + const s = { + replace: (e, t) => { + let r = "string" == typeof t ? t : t.source; + return ((r = r.replace(i.caret, "$1")), (n = n.replace(e, r)), s); + }, + getRegex: () => new RegExp(n, t), + }; + return s; + } + const i = { + codeRemoveIndent: /^(?: {1,4}| {0,3}\t)/gm, + outputLinkReplace: /\\([\[\]])/g, + indentCodeCompensation: /^(\s+)(?:```)/, + beginningSpace: /^\s+/, + endingHash: /#$/, + startingSpaceChar: /^ /, + endingSpaceChar: / $/, + nonSpaceChar: /[^ ]/, + newLineCharGlobal: /\n/g, + tabCharGlobal: /\t/g, + multipleSpaceGlobal: /\s+/g, + blankLine: /^[ \t]*$/, + doubleBlankLine: /\n[ \t]*\n[ \t]*$/, + blockquoteStart: /^ {0,3}>/, + blockquoteSetextReplace: /\n {0,3}((?:=+|-+) *)(?=\n|$)/g, + blockquoteSetextReplace2: /^ {0,3}>[ \t]?/gm, + listReplaceTabs: /^\t+/, + listReplaceNesting: /^ {1,4}(?=( {4})*[^ ])/g, + listIsTask: /^\[[ xX]\] /, + listReplaceTask: /^\[[ xX]\] +/, + anyLine: /\n.*\n/, + hrefBrackets: /^<(.*)>$/, + tableDelimiter: /[:|]/, + tableAlignChars: /^\||\| *$/g, + tableRowBlankLine: /\n[ \t]*$/, + tableAlignRight: /^ *-+: *$/, + tableAlignCenter: /^ *:-+: *$/, + tableAlignLeft: /^ *:-+ *$/, + startATag: /^/i, + startPreScriptTag: /^<(pre|code|kbd|script)(\s|>)/i, + endPreScriptTag: /^<\/(pre|code|kbd|script)(\s|>)/i, + startAngleBracket: /^$/, + pedanticHrefTitle: /^([^'"]*[^\s])\s+(['"])(.*)\2/, + unicodeAlphaNumeric: /[\p{L}\p{N}]/u, + escapeTest: /[&<>"']/, + escapeReplace: /[&<>"']/g, + escapeTestNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/, + escapeReplaceNoEncode: + /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g, + unescapeTest: /&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi, + caret: /(^|[^\[])\^/g, + percentDecode: /%25/g, + findPipe: /\|/g, + splitPipe: / \|/, + slashPipe: /\\\|/g, + carriageReturn: /\r\n|\r/g, + spaceLine: /^ +$/gm, + notSpaceStart: /^\S*/, + endingNewline: /\n$/, + listItemRegex: (e) => + new RegExp(`^( {0,3}${e})((?:[\t ][^\\n]*)?(?:\\n|$))`), + nextBulletRegex: (e) => + new RegExp( + `^ {0,${Math.min(3, e - 1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))`, + ), + hrRegex: (e) => + new RegExp( + `^ {0,${Math.min(3, e - 1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`, + ), + fencesBeginRegex: (e) => + new RegExp(`^ {0,${Math.min(3, e - 1)}}(?:\`\`\`|~~~)`), + headingBeginRegex: (e) => new RegExp(`^ {0,${Math.min(3, e - 1)}}#`), + htmlBeginRegex: (e) => + new RegExp(`^ {0,${Math.min(3, e - 1)}}<(?:[a-z].*>|!--)`, "i"), + }, + l = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, + o = /(?:[*+-]|\d{1,9}[.)])/, + a = r( + /^(?!bull |blockCode|fences|blockquote|heading|html)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, + ) + .replace(/bull/g, o) + .replace(/blockCode/g, /(?: {4}| {0,3}\t)/) + .replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/) + .replace(/blockquote/g, / {0,3}>/) + .replace(/heading/g, / {0,3}#{1,6}/) + .replace(/html/g, / {0,3}<[^\n>]+>\n/) + .getRegex(), + c = + /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, + h = /(?!\s*\])(?:\\.|[^\[\]\\])+/, + p = r( + /^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/, + ) + .replace("label", h) + .replace( + "title", + /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/, + ) + .getRegex(), + u = r(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/) + .replace(/bull/g, o) + .getRegex(), + g = + "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", + k = /|$))/, + f = r( + "^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$))", + "i", + ) + .replace("comment", k) + .replace("tag", g) + .replace( + "attribute", + / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/, + ) + .getRegex(), + d = r(c) + .replace("hr", l) + .replace("heading", " {0,3}#{1,6}(?:\\s|$)") + .replace("|lheading", "") + .replace("|table", "") + .replace("blockquote", " {0,3}>") + .replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n") + .replace("list", " {0,3}(?:[*+-]|1[.)]) ") + .replace( + "html", + ")|<(?:script|pre|style|textarea|!--)", + ) + .replace("tag", g) + .getRegex(), + x = { + blockquote: r(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/) + .replace("paragraph", d) + .getRegex(), + code: /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, + def: p, + fences: + /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, + heading: /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, + hr: l, + html: f, + lheading: a, + list: u, + newline: /^(?:[ \t]*(?:\n|$))+/, + paragraph: d, + table: s, + text: /^[^\n]+/, + }, + b = r( + "^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)", + ) + .replace("hr", l) + .replace("heading", " {0,3}#{1,6}(?:\\s|$)") + .replace("blockquote", " {0,3}>") + .replace("code", "(?: {4}| {0,3}\t)[^\\n]") + .replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n") + .replace("list", " {0,3}(?:[*+-]|1[.)]) ") + .replace( + "html", + ")|<(?:script|pre|style|textarea|!--)", + ) + .replace("tag", g) + .getRegex(), + w = { + ...x, + table: b, + paragraph: r(c) + .replace("hr", l) + .replace("heading", " {0,3}#{1,6}(?:\\s|$)") + .replace("|lheading", "") + .replace("table", b) + .replace("blockquote", " {0,3}>") + .replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n") + .replace("list", " {0,3}(?:[*+-]|1[.)]) ") + .replace( + "html", + ")|<(?:script|pre|style|textarea|!--)", + ) + .replace("tag", g) + .getRegex(), + }, + m = { + ...x, + html: r( + "^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))", + ) + .replace("comment", k) + .replace( + /tag/g, + "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b", + ) + .getRegex(), + def: /^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/, + heading: /^(#{1,6})(.*)(?:\n+|$)/, + fences: s, + lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/, + paragraph: r(c) + .replace("hr", l) + .replace("heading", " *#{1,6} *[^\n]") + .replace("lheading", a) + .replace("|table", "") + .replace("blockquote", " {0,3}>") + .replace("|fences", "") + .replace("|list", "") + .replace("|html", "") + .replace("|tag", "") + .getRegex(), + }, + y = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, + $ = /^( {2,}|\\)\n(?!\s*$)/, + R = /[\p{P}\p{S}]/u, + S = /[\s\p{P}\p{S}]/u, + T = /[^\s\p{P}\p{S}]/u, + z = r(/^((?![*_])punctSpace)/, "u") + .replace(/punctSpace/g, S) + .getRegex(), + A = r(/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/, "u") + .replace(/punct/g, R) + .getRegex(), + _ = r( + "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", + "gu", + ) + .replace(/notPunctSpace/g, T) + .replace(/punctSpace/g, S) + .replace(/punct/g, R) + .getRegex(), + P = r( + "^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", + "gu", + ) + .replace(/notPunctSpace/g, T) + .replace(/punctSpace/g, S) + .replace(/punct/g, R) + .getRegex(), + I = r(/\\(punct)/, "gu") + .replace(/punct/g, R) + .getRegex(), + L = r(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/) + .replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/) + .replace( + "email", + /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/, + ) + .getRegex(), + B = r(k).replace("(?:--\x3e|$)", "--\x3e").getRegex(), + C = r( + "^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^", + ) + .replace("comment", B) + .replace( + "attribute", + /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/, + ) + .getRegex(), + E = /(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/, + q = r(/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/) + .replace("label", E) + .replace("href", /<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/) + .replace( + "title", + /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/, + ) + .getRegex(), + Z = r(/^!?\[(label)\]\[(ref)\]/) + .replace("label", E) + .replace("ref", h) + .getRegex(), + v = r(/^!?\[(ref)\](?:\[\])?/) + .replace("ref", h) + .getRegex(), + D = { + _backpedal: s, + anyPunctuation: I, + autolink: L, + blockSkip: + /\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<[^<>]*?>/g, + br: $, + code: /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, + del: s, + emStrongLDelim: A, + emStrongRDelimAst: _, + emStrongRDelimUnd: P, + escape: y, + link: q, + nolink: v, + punctuation: z, + reflink: Z, + reflinkSearch: r("reflink|nolink(?!\\()", "g") + .replace("reflink", Z) + .replace("nolink", v) + .getRegex(), + tag: C, + text: /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\": ">", '"': """, "'": "'" }, + H = (e) => G[e]; + function X(e, t) { + if (t) { + if (i.escapeTest.test(e)) return e.replace(i.escapeReplace, H); + } else if (i.escapeTestNoEncode.test(e)) + return e.replace(i.escapeReplaceNoEncode, H); + return e; + } + function F(e) { + try { + e = encodeURI(e).replace(i.percentDecode, "%"); + } catch { + return null; + } + return e; + } + function U(e, t) { + const n = e + .replace(i.findPipe, (e, t, n) => { + let s = !1, + r = t; + for (; --r >= 0 && "\\" === n[r]; ) s = !s; + return s ? "|" : " |"; + }) + .split(i.splitPipe); + let s = 0; + if ( + (n[0].trim() || n.shift(), + n.length > 0 && !n.at(-1)?.trim() && n.pop(), + t) + ) + if (n.length > t) n.splice(t); + else for (; n.length < t; ) n.push(""); + for (; s < n.length; s++) n[s] = n[s].trim().replace(i.slashPipe, "|"); + return n; + } + function J(e, t, n) { + const s = e.length; + if (0 === s) return ""; + let r = 0; + for (; r < s; ) { + const i = e.charAt(s - r - 1); + if (i !== t || n) { + if (i === t || !n) break; + r++; + } else r++; + } + return e.slice(0, s - r); + } + function K(e, t, n, s, r) { + const i = t.href, + l = t.title || null, + o = e[1].replace(r.other.outputLinkReplace, "$1"); + if ("!" !== e[0].charAt(0)) { + s.state.inLink = !0; + const e = { + type: "link", + raw: n, + href: i, + title: l, + text: o, + tokens: s.inlineTokens(o), + }; + return ((s.state.inLink = !1), e); + } + return { type: "image", raw: n, href: i, title: l, text: o }; + } + class V { + options; + rules; + lexer; + constructor(t) { + this.options = t || e.defaults; + } + space(e) { + const t = this.rules.block.newline.exec(e); + if (t && t[0].length > 0) return { type: "space", raw: t[0] }; + } + code(e) { + const t = this.rules.block.code.exec(e); + if (t) { + const e = t[0].replace(this.rules.other.codeRemoveIndent, ""); + return { + type: "code", + raw: t[0], + codeBlockStyle: "indented", + text: this.options.pedantic ? e : J(e, "\n"), + }; + } + } + fences(e) { + const t = this.rules.block.fences.exec(e); + if (t) { + const e = t[0], + n = (function (e, t, n) { + const s = e.match(n.other.indentCodeCompensation); + if (null === s) return t; + const r = s[1]; + return t + .split("\n") + .map((e) => { + const t = e.match(n.other.beginningSpace); + if (null === t) return e; + const [s] = t; + return s.length >= r.length ? e.slice(r.length) : e; + }) + .join("\n"); + })(e, t[3] || "", this.rules); + return { + type: "code", + raw: e, + lang: t[2] + ? t[2].trim().replace(this.rules.inline.anyPunctuation, "$1") + : t[2], + text: n, + }; + } + } + heading(e) { + const t = this.rules.block.heading.exec(e); + if (t) { + let e = t[2].trim(); + if (this.rules.other.endingHash.test(e)) { + const t = J(e, "#"); + this.options.pedantic + ? (e = t.trim()) + : (t && !this.rules.other.endingSpaceChar.test(t)) || + (e = t.trim()); + } + return { + type: "heading", + raw: t[0], + depth: t[1].length, + text: e, + tokens: this.lexer.inline(e), + }; + } + } + hr(e) { + const t = this.rules.block.hr.exec(e); + if (t) return { type: "hr", raw: J(t[0], "\n") }; + } + blockquote(e) { + const t = this.rules.block.blockquote.exec(e); + if (t) { + let e = J(t[0], "\n").split("\n"), + n = "", + s = ""; + const r = []; + for (; e.length > 0; ) { + let t = !1; + const i = []; + let l; + for (l = 0; l < e.length; l++) + if (this.rules.other.blockquoteStart.test(e[l])) + (i.push(e[l]), (t = !0)); + else { + if (t) break; + i.push(e[l]); + } + e = e.slice(l); + const o = i.join("\n"), + a = o + .replace(this.rules.other.blockquoteSetextReplace, "\n $1") + .replace(this.rules.other.blockquoteSetextReplace2, ""); + ((n = n ? `${n}\n${o}` : o), (s = s ? `${s}\n${a}` : a)); + const c = this.lexer.state.top; + if ( + ((this.lexer.state.top = !0), + this.lexer.blockTokens(a, r, !0), + (this.lexer.state.top = c), + 0 === e.length) + ) + break; + const h = r.at(-1); + if ("code" === h?.type) break; + if ("blockquote" === h?.type) { + const t = h, + i = t.raw + "\n" + e.join("\n"), + l = this.blockquote(i); + ((r[r.length - 1] = l), + (n = n.substring(0, n.length - t.raw.length) + l.raw), + (s = s.substring(0, s.length - t.text.length) + l.text)); + break; + } + if ("list" !== h?.type); + else { + const t = h, + i = t.raw + "\n" + e.join("\n"), + l = this.list(i); + ((r[r.length - 1] = l), + (n = n.substring(0, n.length - h.raw.length) + l.raw), + (s = s.substring(0, s.length - t.raw.length) + l.raw), + (e = i.substring(r.at(-1).raw.length).split("\n"))); + } + } + return { type: "blockquote", raw: n, tokens: r, text: s }; + } + } + list(e) { + let t = this.rules.block.list.exec(e); + if (t) { + let n = t[1].trim(); + const s = n.length > 1, + r = { + type: "list", + raw: "", + ordered: s, + start: s ? +n.slice(0, -1) : "", + loose: !1, + items: [], + }; + ((n = s ? `\\d{1,9}\\${n.slice(-1)}` : `\\${n}`), + this.options.pedantic && (n = s ? n : "[*+-]")); + const i = this.rules.other.listItemRegex(n); + let l = !1; + for (; e; ) { + let n = !1, + s = "", + o = ""; + if (!(t = i.exec(e))) break; + if (this.rules.block.hr.test(e)) break; + ((s = t[0]), (e = e.substring(s.length))); + let a = t[2] + .split("\n", 1)[0] + .replace(this.rules.other.listReplaceTabs, (e) => + " ".repeat(3 * e.length), + ), + c = e.split("\n", 1)[0], + h = !a.trim(), + p = 0; + if ( + (this.options.pedantic + ? ((p = 2), (o = a.trimStart())) + : h + ? (p = t[1].length + 1) + : ((p = t[2].search(this.rules.other.nonSpaceChar)), + (p = p > 4 ? 1 : p), + (o = a.slice(p)), + (p += t[1].length)), + h && + this.rules.other.blankLine.test(c) && + ((s += c + "\n"), (e = e.substring(c.length + 1)), (n = !0)), + !n) + ) { + const t = this.rules.other.nextBulletRegex(p), + n = this.rules.other.hrRegex(p), + r = this.rules.other.fencesBeginRegex(p), + i = this.rules.other.headingBeginRegex(p), + l = this.rules.other.htmlBeginRegex(p); + for (; e; ) { + const u = e.split("\n", 1)[0]; + let g; + if ( + ((c = u), + this.options.pedantic + ? ((c = c.replace(this.rules.other.listReplaceNesting, " ")), + (g = c)) + : (g = c.replace(this.rules.other.tabCharGlobal, " ")), + r.test(c)) + ) + break; + if (i.test(c)) break; + if (l.test(c)) break; + if (t.test(c)) break; + if (n.test(c)) break; + if (g.search(this.rules.other.nonSpaceChar) >= p || !c.trim()) + o += "\n" + g.slice(p); + else { + if (h) break; + if ( + a + .replace(this.rules.other.tabCharGlobal, " ") + .search(this.rules.other.nonSpaceChar) >= 4 + ) + break; + if (r.test(a)) break; + if (i.test(a)) break; + if (n.test(a)) break; + o += "\n" + c; + } + (h || c.trim() || (h = !0), + (s += u + "\n"), + (e = e.substring(u.length + 1)), + (a = g.slice(p))); + } + } + r.loose || + (l + ? (r.loose = !0) + : this.rules.other.doubleBlankLine.test(s) && (l = !0)); + let u, + g = null; + (this.options.gfm && + ((g = this.rules.other.listIsTask.exec(o)), + g && + ((u = "[ ] " !== g[0]), + (o = o.replace(this.rules.other.listReplaceTask, "")))), + r.items.push({ + type: "list_item", + raw: s, + task: !!g, + checked: u, + loose: !1, + text: o, + tokens: [], + }), + (r.raw += s)); + } + const o = r.items.at(-1); + if (!o) return; + ((o.raw = o.raw.trimEnd()), + (o.text = o.text.trimEnd()), + (r.raw = r.raw.trimEnd())); + for (let e = 0; e < r.items.length; e++) + if ( + ((this.lexer.state.top = !1), + (r.items[e].tokens = this.lexer.blockTokens(r.items[e].text, [])), + !r.loose) + ) { + const t = r.items[e].tokens.filter((e) => "space" === e.type), + n = + t.length > 0 && + t.some((e) => this.rules.other.anyLine.test(e.raw)); + r.loose = n; + } + if (r.loose) + for (let e = 0; e < r.items.length; e++) r.items[e].loose = !0; + return r; + } + } + html(e) { + const t = this.rules.block.html.exec(e); + if (t) { + return { + type: "html", + block: !0, + raw: t[0], + pre: "pre" === t[1] || "script" === t[1] || "style" === t[1], + text: t[0], + }; + } + } + def(e) { + const t = this.rules.block.def.exec(e); + if (t) { + const e = t[1] + .toLowerCase() + .replace(this.rules.other.multipleSpaceGlobal, " "), + n = t[2] + ? t[2] + .replace(this.rules.other.hrefBrackets, "$1") + .replace(this.rules.inline.anyPunctuation, "$1") + : "", + s = t[3] + ? t[3] + .substring(1, t[3].length - 1) + .replace(this.rules.inline.anyPunctuation, "$1") + : t[3]; + return { type: "def", tag: e, raw: t[0], href: n, title: s }; + } + } + table(e) { + const t = this.rules.block.table.exec(e); + if (!t) return; + if (!this.rules.other.tableDelimiter.test(t[2])) return; + const n = U(t[1]), + s = t[2].replace(this.rules.other.tableAlignChars, "").split("|"), + r = t[3]?.trim() + ? t[3].replace(this.rules.other.tableRowBlankLine, "").split("\n") + : [], + i = { type: "table", raw: t[0], header: [], align: [], rows: [] }; + if (n.length === s.length) { + for (const e of s) + this.rules.other.tableAlignRight.test(e) + ? i.align.push("right") + : this.rules.other.tableAlignCenter.test(e) + ? i.align.push("center") + : this.rules.other.tableAlignLeft.test(e) + ? i.align.push("left") + : i.align.push(null); + for (let e = 0; e < n.length; e++) + i.header.push({ + text: n[e], + tokens: this.lexer.inline(n[e]), + header: !0, + align: i.align[e], + }); + for (const e of r) + i.rows.push( + U(e, i.header.length).map((e, t) => ({ + text: e, + tokens: this.lexer.inline(e), + header: !1, + align: i.align[t], + })), + ); + return i; + } + } + lheading(e) { + const t = this.rules.block.lheading.exec(e); + if (t) + return { + type: "heading", + raw: t[0], + depth: "=" === t[2].charAt(0) ? 1 : 2, + text: t[1], + tokens: this.lexer.inline(t[1]), + }; + } + paragraph(e) { + const t = this.rules.block.paragraph.exec(e); + if (t) { + const e = + "\n" === t[1].charAt(t[1].length - 1) ? t[1].slice(0, -1) : t[1]; + return { + type: "paragraph", + raw: t[0], + text: e, + tokens: this.lexer.inline(e), + }; + } + } + text(e) { + const t = this.rules.block.text.exec(e); + if (t) + return { + type: "text", + raw: t[0], + text: t[0], + tokens: this.lexer.inline(t[0]), + }; + } + escape(e) { + const t = this.rules.inline.escape.exec(e); + if (t) return { type: "escape", raw: t[0], text: t[1] }; + } + tag(e) { + const t = this.rules.inline.tag.exec(e); + if (t) + return ( + !this.lexer.state.inLink && this.rules.other.startATag.test(t[0]) + ? (this.lexer.state.inLink = !0) + : this.lexer.state.inLink && + this.rules.other.endATag.test(t[0]) && + (this.lexer.state.inLink = !1), + !this.lexer.state.inRawBlock && + this.rules.other.startPreScriptTag.test(t[0]) + ? (this.lexer.state.inRawBlock = !0) + : this.lexer.state.inRawBlock && + this.rules.other.endPreScriptTag.test(t[0]) && + (this.lexer.state.inRawBlock = !1), + { + type: "html", + raw: t[0], + inLink: this.lexer.state.inLink, + inRawBlock: this.lexer.state.inRawBlock, + block: !1, + text: t[0], + } + ); + } + link(e) { + const t = this.rules.inline.link.exec(e); + if (t) { + const e = t[2].trim(); + if ( + !this.options.pedantic && + this.rules.other.startAngleBracket.test(e) + ) { + if (!this.rules.other.endAngleBracket.test(e)) return; + const t = J(e.slice(0, -1), "\\"); + if ((e.length - t.length) % 2 == 0) return; + } else { + const e = (function (e, t) { + if (-1 === e.indexOf(t[1])) return -1; + let n = 0; + for (let s = 0; s < e.length; s++) + if ("\\" === e[s]) s++; + else if (e[s] === t[0]) n++; + else if (e[s] === t[1] && (n--, n < 0)) return s; + return -1; + })(t[2], "()"); + if (e > -1) { + const n = (0 === t[0].indexOf("!") ? 5 : 4) + t[1].length + e; + ((t[2] = t[2].substring(0, e)), + (t[0] = t[0].substring(0, n).trim()), + (t[3] = "")); + } + } + let n = t[2], + s = ""; + if (this.options.pedantic) { + const e = this.rules.other.pedanticHrefTitle.exec(n); + e && ((n = e[1]), (s = e[3])); + } else s = t[3] ? t[3].slice(1, -1) : ""; + return ( + (n = n.trim()), + this.rules.other.startAngleBracket.test(n) && + (n = + this.options.pedantic && !this.rules.other.endAngleBracket.test(e) + ? n.slice(1) + : n.slice(1, -1)), + K( + t, + { + href: n ? n.replace(this.rules.inline.anyPunctuation, "$1") : n, + title: s ? s.replace(this.rules.inline.anyPunctuation, "$1") : s, + }, + t[0], + this.lexer, + this.rules, + ) + ); + } + } + reflink(e, t) { + let n; + if ( + (n = this.rules.inline.reflink.exec(e)) || + (n = this.rules.inline.nolink.exec(e)) + ) { + const e = + t[ + (n[2] || n[1]) + .replace(this.rules.other.multipleSpaceGlobal, " ") + .toLowerCase() + ]; + if (!e) { + const e = n[0].charAt(0); + return { type: "text", raw: e, text: e }; + } + return K(n, e, n[0], this.lexer, this.rules); + } + } + emStrong(e, t, n = "") { + let s = this.rules.inline.emStrongLDelim.exec(e); + if (!s) return; + if (s[3] && n.match(this.rules.other.unicodeAlphaNumeric)) return; + if ( + !(s[1] || s[2] || "") || + !n || + this.rules.inline.punctuation.exec(n) + ) { + const n = [...s[0]].length - 1; + let r, + i, + l = n, + o = 0; + const a = + "*" === s[0][0] + ? this.rules.inline.emStrongRDelimAst + : this.rules.inline.emStrongRDelimUnd; + for ( + a.lastIndex = 0, t = t.slice(-1 * e.length + n); + null != (s = a.exec(t)); + ) { + if (((r = s[1] || s[2] || s[3] || s[4] || s[5] || s[6]), !r)) + continue; + if (((i = [...r].length), s[3] || s[4])) { + l += i; + continue; + } + if ((s[5] || s[6]) && n % 3 && !((n + i) % 3)) { + o += i; + continue; + } + if (((l -= i), l > 0)) continue; + i = Math.min(i, i + l + o); + const t = [...s[0]][0].length, + a = e.slice(0, n + s.index + t + i); + if (Math.min(n, i) % 2) { + const e = a.slice(1, -1); + return { + type: "em", + raw: a, + text: e, + tokens: this.lexer.inlineTokens(e), + }; + } + const c = a.slice(2, -2); + return { + type: "strong", + raw: a, + text: c, + tokens: this.lexer.inlineTokens(c), + }; + } + } + } + codespan(e) { + const t = this.rules.inline.code.exec(e); + if (t) { + let e = t[2].replace(this.rules.other.newLineCharGlobal, " "); + const n = this.rules.other.nonSpaceChar.test(e), + s = + this.rules.other.startingSpaceChar.test(e) && + this.rules.other.endingSpaceChar.test(e); + return ( + n && s && (e = e.substring(1, e.length - 1)), + { type: "codespan", raw: t[0], text: e } + ); + } + } + br(e) { + const t = this.rules.inline.br.exec(e); + if (t) return { type: "br", raw: t[0] }; + } + del(e) { + const t = this.rules.inline.del.exec(e); + if (t) + return { + type: "del", + raw: t[0], + text: t[2], + tokens: this.lexer.inlineTokens(t[2]), + }; + } + autolink(e) { + const t = this.rules.inline.autolink.exec(e); + if (t) { + let e, n; + return ( + "@" === t[2] + ? ((e = t[1]), (n = "mailto:" + e)) + : ((e = t[1]), (n = e)), + { + type: "link", + raw: t[0], + text: e, + href: n, + tokens: [{ type: "text", raw: e, text: e }], + } + ); + } + } + url(e) { + let t; + if ((t = this.rules.inline.url.exec(e))) { + let e, n; + if ("@" === t[2]) ((e = t[0]), (n = "mailto:" + e)); + else { + let s; + do { + ((s = t[0]), + (t[0] = this.rules.inline._backpedal.exec(t[0])?.[0] ?? "")); + } while (s !== t[0]); + ((e = t[0]), (n = "www." === t[1] ? "http://" + t[0] : t[0])); + } + return { + type: "link", + raw: t[0], + text: e, + href: n, + tokens: [{ type: "text", raw: e, text: e }], + }; + } + } + inlineText(e) { + const t = this.rules.inline.text.exec(e); + if (t) { + const e = this.lexer.state.inRawBlock; + return { type: "text", raw: t[0], text: t[0], escaped: e }; + } + } + } + class W { + tokens; + options; + state; + tokenizer; + inlineQueue; + constructor(t) { + ((this.tokens = []), + (this.tokens.links = Object.create(null)), + (this.options = t || e.defaults), + (this.options.tokenizer = this.options.tokenizer || new V()), + (this.tokenizer = this.options.tokenizer), + (this.tokenizer.options = this.options), + (this.tokenizer.lexer = this), + (this.inlineQueue = []), + (this.state = { inLink: !1, inRawBlock: !1, top: !0 })); + const n = { other: i, block: j.normal, inline: N.normal }; + (this.options.pedantic + ? ((n.block = j.pedantic), (n.inline = N.pedantic)) + : this.options.gfm && + ((n.block = j.gfm), + this.options.breaks ? (n.inline = N.breaks) : (n.inline = N.gfm)), + (this.tokenizer.rules = n)); + } + static get rules() { + return { block: j, inline: N }; + } + static lex(e, t) { + return new W(t).lex(e); + } + static lexInline(e, t) { + return new W(t).inlineTokens(e); + } + lex(e) { + ((e = e.replace(i.carriageReturn, "\n")), + this.blockTokens(e, this.tokens)); + for (let e = 0; e < this.inlineQueue.length; e++) { + const t = this.inlineQueue[e]; + this.inlineTokens(t.src, t.tokens); + } + return ((this.inlineQueue = []), this.tokens); + } + blockTokens(e, t = [], n = !1) { + for ( + this.options.pedantic && + (e = e.replace(i.tabCharGlobal, " ").replace(i.spaceLine, "")); + e; + ) { + let s; + if ( + this.options.extensions?.block?.some( + (n) => + !!(s = n.call({ lexer: this }, e, t)) && + ((e = e.substring(s.raw.length)), t.push(s), !0), + ) + ) + continue; + if ((s = this.tokenizer.space(e))) { + e = e.substring(s.raw.length); + const n = t.at(-1); + 1 === s.raw.length && void 0 !== n ? (n.raw += "\n") : t.push(s); + continue; + } + if ((s = this.tokenizer.code(e))) { + e = e.substring(s.raw.length); + const n = t.at(-1); + "paragraph" === n?.type || "text" === n?.type + ? ((n.raw += "\n" + s.raw), + (n.text += "\n" + s.text), + (this.inlineQueue.at(-1).src = n.text)) + : t.push(s); + continue; + } + if ((s = this.tokenizer.fences(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.heading(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.hr(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.blockquote(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.list(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.html(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.def(e))) { + e = e.substring(s.raw.length); + const n = t.at(-1); + "paragraph" === n?.type || "text" === n?.type + ? ((n.raw += "\n" + s.raw), + (n.text += "\n" + s.raw), + (this.inlineQueue.at(-1).src = n.text)) + : this.tokens.links[s.tag] || + (this.tokens.links[s.tag] = { href: s.href, title: s.title }); + continue; + } + if ((s = this.tokenizer.table(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.lheading(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + let r = e; + if (this.options.extensions?.startBlock) { + let t = 1 / 0; + const n = e.slice(1); + let s; + (this.options.extensions.startBlock.forEach((e) => { + ((s = e.call({ lexer: this }, n)), + "number" == typeof s && s >= 0 && (t = Math.min(t, s))); + }), + t < 1 / 0 && t >= 0 && (r = e.substring(0, t + 1))); + } + if (this.state.top && (s = this.tokenizer.paragraph(r))) { + const i = t.at(-1); + (n && "paragraph" === i?.type + ? ((i.raw += "\n" + s.raw), + (i.text += "\n" + s.text), + this.inlineQueue.pop(), + (this.inlineQueue.at(-1).src = i.text)) + : t.push(s), + (n = r.length !== e.length), + (e = e.substring(s.raw.length))); + } else if ((s = this.tokenizer.text(e))) { + e = e.substring(s.raw.length); + const n = t.at(-1); + "text" === n?.type + ? ((n.raw += "\n" + s.raw), + (n.text += "\n" + s.text), + this.inlineQueue.pop(), + (this.inlineQueue.at(-1).src = n.text)) + : t.push(s); + } else if (e) { + const t = "Infinite loop on byte: " + e.charCodeAt(0); + if (this.options.silent) { + console.error(t); + break; + } + throw new Error(t); + } + } + return ((this.state.top = !0), t); + } + inline(e, t = []) { + return (this.inlineQueue.push({ src: e, tokens: t }), t); + } + inlineTokens(e, t = []) { + let n = e, + s = null; + if (this.tokens.links) { + const e = Object.keys(this.tokens.links); + if (e.length > 0) + for ( + ; + null != (s = this.tokenizer.rules.inline.reflinkSearch.exec(n)); + ) + e.includes(s[0].slice(s[0].lastIndexOf("[") + 1, -1)) && + (n = + n.slice(0, s.index) + + "[" + + "a".repeat(s[0].length - 2) + + "]" + + n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex)); + } + for (; null != (s = this.tokenizer.rules.inline.blockSkip.exec(n)); ) + n = + n.slice(0, s.index) + + "[" + + "a".repeat(s[0].length - 2) + + "]" + + n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex); + for (; null != (s = this.tokenizer.rules.inline.anyPunctuation.exec(n)); ) + n = + n.slice(0, s.index) + + "++" + + n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex); + let r = !1, + i = ""; + for (; e; ) { + let s; + if ( + (r || (i = ""), + (r = !1), + this.options.extensions?.inline?.some( + (n) => + !!(s = n.call({ lexer: this }, e, t)) && + ((e = e.substring(s.raw.length)), t.push(s), !0), + )) + ) + continue; + if ((s = this.tokenizer.escape(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.tag(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.link(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.reflink(e, this.tokens.links))) { + e = e.substring(s.raw.length); + const n = t.at(-1); + "text" === s.type && "text" === n?.type + ? ((n.raw += s.raw), (n.text += s.text)) + : t.push(s); + continue; + } + if ((s = this.tokenizer.emStrong(e, n, i))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.codespan(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.br(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.del(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if ((s = this.tokenizer.autolink(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + if (!this.state.inLink && (s = this.tokenizer.url(e))) { + ((e = e.substring(s.raw.length)), t.push(s)); + continue; + } + let l = e; + if (this.options.extensions?.startInline) { + let t = 1 / 0; + const n = e.slice(1); + let s; + (this.options.extensions.startInline.forEach((e) => { + ((s = e.call({ lexer: this }, n)), + "number" == typeof s && s >= 0 && (t = Math.min(t, s))); + }), + t < 1 / 0 && t >= 0 && (l = e.substring(0, t + 1))); + } + if ((s = this.tokenizer.inlineText(l))) { + ((e = e.substring(s.raw.length)), + "_" !== s.raw.slice(-1) && (i = s.raw.slice(-1)), + (r = !0)); + const n = t.at(-1); + "text" === n?.type + ? ((n.raw += s.raw), (n.text += s.text)) + : t.push(s); + } else if (e) { + const t = "Infinite loop on byte: " + e.charCodeAt(0); + if (this.options.silent) { + console.error(t); + break; + } + throw new Error(t); + } + } + return t; + } + } + class Y { + options; + parser; + constructor(t) { + this.options = t || e.defaults; + } + space(e) { + return ""; + } + code({ text: e, lang: t, escaped: n }) { + const s = (t || "").match(i.notSpaceStart)?.[0], + r = e.replace(i.endingNewline, "") + "\n"; + return s + ? '
' +
+            (n ? r : X(r, !0)) +
+            "
\n" + : "
" + (n ? r : X(r, !0)) + "
\n"; + } + blockquote({ tokens: e }) { + return `
\n${this.parser.parse(e)}
\n`; + } + html({ text: e }) { + return e; + } + heading({ tokens: e, depth: t }) { + return `${this.parser.parseInline(e)}\n`; + } + hr(e) { + return "
\n"; + } + list(e) { + const t = e.ordered, + n = e.start; + let s = ""; + for (let t = 0; t < e.items.length; t++) { + const n = e.items[t]; + s += this.listitem(n); + } + const r = t ? "ol" : "ul"; + return ( + "<" + + r + + (t && 1 !== n ? ' start="' + n + '"' : "") + + ">\n" + + s + + "\n" + ); + } + listitem(e) { + let t = ""; + if (e.task) { + const n = this.checkbox({ checked: !!e.checked }); + e.loose + ? "paragraph" === e.tokens[0]?.type + ? ((e.tokens[0].text = n + " " + e.tokens[0].text), + e.tokens[0].tokens && + e.tokens[0].tokens.length > 0 && + "text" === e.tokens[0].tokens[0].type && + ((e.tokens[0].tokens[0].text = + n + " " + X(e.tokens[0].tokens[0].text)), + (e.tokens[0].tokens[0].escaped = !0))) + : e.tokens.unshift({ + type: "text", + raw: n + " ", + text: n + " ", + escaped: !0, + }) + : (t += n + " "); + } + return ((t += this.parser.parse(e.tokens, !!e.loose)), `
  • ${t}
  • \n`); + } + checkbox({ checked: e }) { + return ( + "' + ); + } + paragraph({ tokens: e }) { + return `

    ${this.parser.parseInline(e)}

    \n`; + } + table(e) { + let t = "", + n = ""; + for (let t = 0; t < e.header.length; t++) + n += this.tablecell(e.header[t]); + t += this.tablerow({ text: n }); + let s = ""; + for (let t = 0; t < e.rows.length; t++) { + const r = e.rows[t]; + n = ""; + for (let e = 0; e < r.length; e++) n += this.tablecell(r[e]); + s += this.tablerow({ text: n }); + } + return ( + s && (s = `${s}`), + "\n\n" + t + "\n" + s + "
    \n" + ); + } + tablerow({ text: e }) { + return `\n${e}\n`; + } + tablecell(e) { + const t = this.parser.parseInline(e.tokens), + n = e.header ? "th" : "td"; + return ( + (e.align ? `<${n} align="${e.align}">` : `<${n}>`) + t + `\n` + ); + } + strong({ tokens: e }) { + return `${this.parser.parseInline(e)}`; + } + em({ tokens: e }) { + return `${this.parser.parseInline(e)}`; + } + codespan({ text: e }) { + return `${X(e, !0)}`; + } + br(e) { + return "
    "; + } + del({ tokens: e }) { + return `${this.parser.parseInline(e)}`; + } + link({ href: e, title: t, tokens: n }) { + const s = this.parser.parseInline(n), + r = F(e); + if (null === r) return s; + let i = '
    "), i); + } + image({ href: e, title: t, text: n }) { + const s = F(e); + if (null === s) return X(n); + let r = `${n} { + const r = e[s].flat(1 / 0); + n = n.concat(this.walkTokens(r, t)); + }) + : e.tokens && (n = n.concat(this.walkTokens(e.tokens, t))); + } + } + return n; + } + use(...e) { + const t = this.defaults.extensions || { renderers: {}, childTokens: {} }; + return ( + e.forEach((e) => { + const n = { ...e }; + if ( + ((n.async = this.defaults.async || n.async || !1), + e.extensions && + (e.extensions.forEach((e) => { + if (!e.name) throw new Error("extension name required"); + if ("renderer" in e) { + const n = t.renderers[e.name]; + t.renderers[e.name] = n + ? function (...t) { + let s = e.renderer.apply(this, t); + return (!1 === s && (s = n.apply(this, t)), s); + } + : e.renderer; + } + if ("tokenizer" in e) { + if (!e.level || ("block" !== e.level && "inline" !== e.level)) + throw new Error( + "extension level must be 'block' or 'inline'", + ); + const n = t[e.level]; + (n ? n.unshift(e.tokenizer) : (t[e.level] = [e.tokenizer]), + e.start && + ("block" === e.level + ? t.startBlock + ? t.startBlock.push(e.start) + : (t.startBlock = [e.start]) + : "inline" === e.level && + (t.startInline + ? t.startInline.push(e.start) + : (t.startInline = [e.start])))); + } + "childTokens" in e && + e.childTokens && + (t.childTokens[e.name] = e.childTokens); + }), + (n.extensions = t)), + e.renderer) + ) { + const t = this.defaults.renderer || new Y(this.defaults); + for (const n in e.renderer) { + if (!(n in t)) throw new Error(`renderer '${n}' does not exist`); + if (["options", "parser"].includes(n)) continue; + const s = n, + r = e.renderer[s], + i = t[s]; + t[s] = (...e) => { + let n = r.apply(t, e); + return (!1 === n && (n = i.apply(t, e)), n || ""); + }; + } + n.renderer = t; + } + if (e.tokenizer) { + const t = this.defaults.tokenizer || new V(this.defaults); + for (const n in e.tokenizer) { + if (!(n in t)) throw new Error(`tokenizer '${n}' does not exist`); + if (["options", "rules", "lexer"].includes(n)) continue; + const s = n, + r = e.tokenizer[s], + i = t[s]; + t[s] = (...e) => { + let n = r.apply(t, e); + return (!1 === n && (n = i.apply(t, e)), n); + }; + } + n.tokenizer = t; + } + if (e.hooks) { + const t = this.defaults.hooks || new ne(); + for (const n in e.hooks) { + if (!(n in t)) throw new Error(`hook '${n}' does not exist`); + if (["options", "block"].includes(n)) continue; + const s = n, + r = e.hooks[s], + i = t[s]; + ne.passThroughHooks.has(n) + ? (t[s] = (e) => { + if (this.defaults.async) + return Promise.resolve(r.call(t, e)).then((e) => + i.call(t, e), + ); + const n = r.call(t, e); + return i.call(t, n); + }) + : (t[s] = (...e) => { + let n = r.apply(t, e); + return (!1 === n && (n = i.apply(t, e)), n); + }); + } + n.hooks = t; + } + if (e.walkTokens) { + const t = this.defaults.walkTokens, + s = e.walkTokens; + n.walkTokens = function (e) { + let n = []; + return ( + n.push(s.call(this, e)), + t && (n = n.concat(t.call(this, e))), + n + ); + }; + } + this.defaults = { ...this.defaults, ...n }; + }), + this + ); + } + setOptions(e) { + return ((this.defaults = { ...this.defaults, ...e }), this); + } + lexer(e, t) { + return W.lex(e, t ?? this.defaults); + } + parser(e, t) { + return te.parse(e, t ?? this.defaults); + } + parseMarkdown(e) { + return (t, n) => { + const s = { ...n }, + r = { ...this.defaults, ...s }, + i = this.onError(!!r.silent, !!r.async); + if (!0 === this.defaults.async && !1 === s.async) + return i( + new Error( + "marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise.", + ), + ); + if (null == t) + return i(new Error("marked(): input parameter is undefined or null")); + if ("string" != typeof t) + return i( + new Error( + "marked(): input parameter is of type " + + Object.prototype.toString.call(t) + + ", string expected", + ), + ); + r.hooks && ((r.hooks.options = r), (r.hooks.block = e)); + const l = r.hooks ? r.hooks.provideLexer() : e ? W.lex : W.lexInline, + o = r.hooks ? r.hooks.provideParser() : e ? te.parse : te.parseInline; + if (r.async) + return Promise.resolve(r.hooks ? r.hooks.preprocess(t) : t) + .then((e) => l(e, r)) + .then((e) => (r.hooks ? r.hooks.processAllTokens(e) : e)) + .then((e) => + r.walkTokens + ? Promise.all(this.walkTokens(e, r.walkTokens)).then(() => e) + : e, + ) + .then((e) => o(e, r)) + .then((e) => (r.hooks ? r.hooks.postprocess(e) : e)) + .catch(i); + try { + r.hooks && (t = r.hooks.preprocess(t)); + let e = l(t, r); + (r.hooks && (e = r.hooks.processAllTokens(e)), + r.walkTokens && this.walkTokens(e, r.walkTokens)); + let n = o(e, r); + return (r.hooks && (n = r.hooks.postprocess(n)), n); + } catch (e) { + return i(e); + } + }; + } + onError(e, t) { + return (n) => { + if ( + ((n.message += + "\nPlease report this to https://github.com/markedjs/marked."), + e) + ) { + const e = + "

    An error occurred:

    " + X(n.message + "", !0) + "
    "; + return t ? Promise.resolve(e) : e; + } + if (t) return Promise.reject(n); + throw n; + }; + } + } + const re = new se(); + function ie(e, t) { + return re.parse(e, t); + } + ((ie.options = ie.setOptions = + function (e) { + return ( + re.setOptions(e), + (ie.defaults = re.defaults), + n(ie.defaults), + ie + ); + }), + (ie.getDefaults = t), + (ie.defaults = e.defaults), + (ie.use = function (...e) { + return (re.use(...e), (ie.defaults = re.defaults), n(ie.defaults), ie); + }), + (ie.walkTokens = function (e, t) { + return re.walkTokens(e, t); + }), + (ie.parseInline = re.parseInline), + (ie.Parser = te), + (ie.parser = te.parse), + (ie.Renderer = Y), + (ie.TextRenderer = ee), + (ie.Lexer = W), + (ie.lexer = W.lex), + (ie.Tokenizer = V), + (ie.Hooks = ne), + (ie.parse = ie)); + const le = ie.options, + oe = ie.setOptions, + ae = ie.use, + ce = ie.walkTokens, + he = ie.parseInline, + pe = ie, + ue = te.parse, + ge = W.lex; + ((e.Hooks = ne), + (e.Lexer = W), + (e.Marked = se), + (e.Parser = te), + (e.Renderer = Y), + (e.TextRenderer = ee), + (e.Tokenizer = V), + (e.getDefaults = t), + (e.lexer = ge), + (e.marked = ie), + (e.options = le), + (e.parse = pe), + (e.parseInline = he), + (e.parser = ue), + (e.setOptions = oe), + (e.use = ae), + (e.walkTokens = ce)); +}); diff --git a/packages/coding-agent/companion-out/photon_rs_bg.wasm b/packages/coding-agent/companion-out/photon_rs_bg.wasm new file mode 100644 index 0000000000000000000000000000000000000000..fa30d9232af7f90cf64509dc3bfb94b77e2603da GIT binary patch literal 1881634 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

    ;dOdd}KIRzd!X+<8; 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�zwp*HHyV(?YK&F5Ws|H1d5;Mph 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

    %yR*G!~aBw1JxIkJIr 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%0D+q(4Kp5mqE^uIhf=vuGzY2}0MVyMFNHHJ+a$XoD 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 $I&>YPhy$*OM}Z?t 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

    LD+bVQGoTup&x)ag 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

    ~fhrT`KFU2z630+c{rbKGC=l?A#HHVfopD2EA| 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�|hjy1gU3O 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ǡ*C6H{b018@AT5?VVB?fq0 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�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

    ZdX1c8(hm-Y-Ea8@;Ts)~ z5zMig#w|Px%y+1_*$iDT4CV{W_g1*=v0LiU-Vb2@l{UFA9lTouW|mC@@f%!3gbiN@ zJX&He0$Q5KupsoN_+QnhQholCuR-!0tIx;oGe3V}$Hn)cqof#~o>~~SmX(=R{n%>I z(M=BXY`s289(O*rVf!@DR?Z8oXXoVRL)RxWFfc4qW@viS{rQPh)Bf1a3=9ojIt`2N z<{8Xen51v|fPq0_t+@jCRo8n=OXu1u_AoG*oKgCs=6Y?aGaqZO=6VJO$9nCJ1=D=0 zuLQb%_G*yik($_AAjsWJ~cz>`X|N3yjj|kLAu}9Tkd9h-IM?7^aPi( z`OAKMnaz=PShaxr>Ax*kgWWHfePV*Gzn+jfMaL=WI^(rf4RharP&)p#Zs+z(R=!T% zS0A)!uYLVv)4k=X?VS%UmACR3Tl-9&t^c}X{+G}*$yb-1|L-YZap<>d_VL2({We__ z4%f@5i+!$o?`rAi_P#sJ>el(f8*itt*?Ri%hwjqpZ%$lr?(=)OSA6k4nYZtPY+>uY z?|Q#WUa@Mq&kvd3D)FvyQ?lNd*sVPEqTlR^<-2XyN_V$xrQZV8hicWL!Q6C-)ir#dVZblW%bFp65~66 zZ@t(ubIpgg#f5KecWW%j+#{&0bm01$6+GuMcwZTD9MQhET5ALEjY|_44^LQP&-E3y zp8eN@%3H_M)hdJR!xnBlwPT4zq{PG>j0NFp=T~#a{e5<}EkACn8k5i4ibU>XQE?j@ zwy;JUMl|||T(j&e|5$owf#UIvw(Am;Gks1JUd^2>eDbA*+*wJhJ~FO9!cuF7RNl$usU=@4Qy$m7ap^y$ z5dUI#*8Yr{r{(<43wO_~dr|f%%k}-C{dLO}58rreKW~x9?4x3U%%ul7zhlDf{R`xUlc zKWt8Xfts34q~60t=gSX2*p|~=&a*+kJHKjX_uTb&Gx5#ah=;-74$O|Tz5n*HdHS|=P5qoNGb0qE+qz5M zH8EUzP`S6g@W8s4AJf+fu3Fr{7J1{%OX&W9sZ-7H}|<|MVUCQ3;@p4}}oGW_|h zh|CQydn-zf%{!+b*4JHla9y)Z%EoI!3@y<853`mi?~UzAKVX!6F2MJ->+}b1X47_U zclh!DH{();H1WMNZXC8=`7~hL|0<_*E9_(6>^rxmOIZHt;`==>8&10KnrzOv(JaR} z|Csm(<%hd(uGrDy80+HBz`aBEP0md%fy>XHPAn0PJixnblJJw`Qm>pR=-Vha|6R+~{35&CM15Y+qaL2Li1=ksW=cGH$+*$= zxzvXKdcE)GV-Li|rZ~xpFI2o!EdT3^b7?`@t~$@6bu3dmR|LycdU>*CW!}5ZcgywH z>PZ>N;&X4evoK$qG%4Wvk89hUY+_q3t#pO$@7T1`b=M^2E^edkO`ps%J}s9Mxt>wJ zCa3Rzit>6FruP@sZt^%!z0PhVFJJaHE77!h2m1@pz0X|gpD(+-;^Tvst+h!?IPqUR2l^Qyy>)Ze)@XF)|R4`nR9;U1&gqhY5nKD{z&z_ zaLeIcUKx_D!e9Sg?1_GVNFw!1X6&K(w1`c0Ocpb*R_gDckyv%}w|%+(d*-(PUJ<|F z?fZ4({4f5{->X{E_s8n(TJ_H2eDlv>tzA<$LHDmTCw{6fiJEfveuu4PNn+`)CqLiK z5-j{VMf`P-`^B9?FJpJCVhlTLUiD6B#~Gz9t0!7*<~kVqAZg7i@n`kg3&pl^Ciog= z&!`TcGWULbndh9x+&dQhZLN!XTYKpB@0V*G``C+H_6he#h{$YyR+S=oY2%50)pa*E zjY*kmkL|IWG<*{xoO(5}vuj!eZ|(YLnm9ERwm)a;gv`3;oxhy*-m?oG+Qf8z_ZQ~4 zC+R<@)P8mG-nl-p@oUAQUGE-9%ib{(o3~tg*Fq!l;!LfZNhy=}&u*Q#NaNJMJLj28 z`>Sg!)-ydfJ-z9V-Ic>GLB+RXRHr4p)g) zT^!NS{Xnj^>f!T3)^^QIwqMq+U^C0Rt>W9GkTquYHs||SYMefBce&UW>8$XU`P_#; zU;gy>!_`2Ug^OHrQ=OkjRvg(rZ<^}njZ2<-rOX#eESR=6)osr^`Fp(cV{O|bD|!AX z{SSZrYI*2IwyiuXZ=7zwTl!yY@~4igPAVUlbHer?>A&s@&V4J$)2OGSrSbmq(_c$- zSDeTY>lc_CCRJIwq<>GlOJ*%&-p^2%Hwo7#^=@9Xa_ZqbjVH~sLe(vMzZX0Z7peXd z{AhP;($pQ!J7&4{^u0M#QIb1#^6p*BLed-~)^Ad0n11m@l|@$Og_rvS^={8IJn)CL zdL|oezZ0|kkG+rI$h$;cTJ`R(zRl{xYGrF>UZ`LF*cO^~)tdWS$%e}}lphs#g_V>h zrLrDx_4I2=57TY`mUB^P_r7Bm%Wo&9GOqcdvE_K{^~}51Ob6byBy4aJEAm}Dfid>yb*2yMu>DnE9JhS$WqxCLZkq84CnnARg+U8T z3t7_Z9PJeLW-hFp-*&m><*_6N{)@gDI!8Doj%RQ@TU=3nAjmbb$=sAj?`Koj{WD>+ z3YMR)+32+J_@3Dlw{bg^B`oXscRO}+=g-xLOqcLonEc~>*1sUrAFscMeRlR0IpDk6z>f3I7rv;gkZIcZ=Q@->=O7a4$*ldAHrM zi&t8wtk7QL8g}|_*F(K?=4@WecTO@BzpiaJHFxH&gGbwC1Yel5+�c_t%L9A~SDa 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

    #$xc6aL^Ql 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 IH?^V!00UW2CjbBd literal 0 HcmV?d00001 diff --git a/packages/coding-agent/companion-out/theme/dark.json b/packages/coding-agent/companion-out/theme/dark.json new file mode 100644 index 0000000..17d0e0c --- /dev/null +++ b/packages/coding-agent/companion-out/theme/dark.json @@ -0,0 +1,85 @@ +{ + "$schema": "https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json", + "name": "dark", + "vars": { + "cyan": "#00d7ff", + "blue": "#5f87ff", + "green": "#b5bd68", + "red": "#cc6666", + "yellow": "#ffff00", + "gray": "#808080", + "dimGray": "#666666", + "darkGray": "#505050", + "accent": "#8abeb7", + "selectedBg": "#3a3a4a", + "userMsgBg": "#343541", + "toolPendingBg": "#282832", + "toolSuccessBg": "#283228", + "toolErrorBg": "#3c2828", + "customMsgBg": "#2d2838" + }, + "colors": { + "accent": "accent", + "border": "blue", + "borderAccent": "cyan", + "borderMuted": "darkGray", + "success": "green", + "error": "red", + "warning": "yellow", + "muted": "gray", + "dim": "dimGray", + "text": "", + "thinkingText": "gray", + + "selectedBg": "selectedBg", + "userMessageBg": "userMsgBg", + "userMessageText": "", + "customMessageBg": "customMsgBg", + "customMessageText": "", + "customMessageLabel": "#9575cd", + "toolPendingBg": "toolPendingBg", + "toolSuccessBg": "toolSuccessBg", + "toolErrorBg": "toolErrorBg", + "toolTitle": "", + "toolOutput": "gray", + + "mdHeading": "#f0c674", + "mdLink": "#81a2be", + "mdLinkUrl": "dimGray", + "mdCode": "accent", + "mdCodeBlock": "green", + "mdCodeBlockBorder": "gray", + "mdQuote": "gray", + "mdQuoteBorder": "gray", + "mdHr": "gray", + "mdListBullet": "accent", + + "toolDiffAdded": "green", + "toolDiffRemoved": "red", + "toolDiffContext": "gray", + + "syntaxComment": "#6A9955", + "syntaxKeyword": "#569CD6", + "syntaxFunction": "#DCDCAA", + "syntaxVariable": "#9CDCFE", + "syntaxString": "#CE9178", + "syntaxNumber": "#B5CEA8", + "syntaxType": "#4EC9B0", + "syntaxOperator": "#D4D4D4", + "syntaxPunctuation": "#D4D4D4", + + "thinkingOff": "darkGray", + "thinkingMinimal": "#6e6e6e", + "thinkingLow": "#5f87af", + "thinkingMedium": "#81a2be", + "thinkingHigh": "#b294bb", + "thinkingXhigh": "#d183e8", + + "bashMode": "green" + }, + "export": { + "pageBg": "#18181e", + "cardBg": "#1e1e24", + "infoBg": "#3c3728" + } +} diff --git a/packages/coding-agent/companion-out/theme/light.json b/packages/coding-agent/companion-out/theme/light.json new file mode 100644 index 0000000..04109ca --- /dev/null +++ b/packages/coding-agent/companion-out/theme/light.json @@ -0,0 +1,84 @@ +{ + "$schema": "https://raw.githubusercontent.com/badlogic/pi-mono/main/packages/coding-agent/src/modes/interactive/theme/theme-schema.json", + "name": "light", + "vars": { + "teal": "#5a8080", + "blue": "#547da7", + "green": "#588458", + "red": "#aa5555", + "yellow": "#9a7326", + "mediumGray": "#6c6c6c", + "dimGray": "#767676", + "lightGray": "#b0b0b0", + "selectedBg": "#d0d0e0", + "userMsgBg": "#e8e8e8", + "toolPendingBg": "#e8e8f0", + "toolSuccessBg": "#e8f0e8", + "toolErrorBg": "#f0e8e8", + "customMsgBg": "#ede7f6" + }, + "colors": { + "accent": "teal", + "border": "blue", + "borderAccent": "teal", + "borderMuted": "lightGray", + "success": "green", + "error": "red", + "warning": "yellow", + "muted": "mediumGray", + "dim": "dimGray", + "text": "", + "thinkingText": "mediumGray", + + "selectedBg": "selectedBg", + "userMessageBg": "userMsgBg", + "userMessageText": "", + "customMessageBg": "customMsgBg", + "customMessageText": "", + "customMessageLabel": "#7e57c2", + "toolPendingBg": "toolPendingBg", + "toolSuccessBg": "toolSuccessBg", + "toolErrorBg": "toolErrorBg", + "toolTitle": "", + "toolOutput": "mediumGray", + + "mdHeading": "yellow", + "mdLink": "blue", + "mdLinkUrl": "dimGray", + "mdCode": "teal", + "mdCodeBlock": "green", + "mdCodeBlockBorder": "mediumGray", + "mdQuote": "mediumGray", + "mdQuoteBorder": "mediumGray", + "mdHr": "mediumGray", + "mdListBullet": "green", + + "toolDiffAdded": "green", + "toolDiffRemoved": "red", + "toolDiffContext": "mediumGray", + + "syntaxComment": "#008000", + "syntaxKeyword": "#0000FF", + "syntaxFunction": "#795E26", + "syntaxVariable": "#001080", + "syntaxString": "#A31515", + "syntaxNumber": "#098658", + "syntaxType": "#267F99", + "syntaxOperator": "#000000", + "syntaxPunctuation": "#000000", + + "thinkingOff": "lightGray", + "thinkingMinimal": "#767676", + "thinkingLow": "blue", + "thinkingMedium": "teal", + "thinkingHigh": "#875f87", + "thinkingXhigh": "#8b008b", + + "bashMode": "green" + }, + "export": { + "pageBg": "#f8f8f8", + "cardBg": "#ffffff", + "infoBg": "#fffae6" + } +} diff --git a/packages/coding-agent/companion-out/theme/theme-schema.json b/packages/coding-agent/companion-out/theme/theme-schema.json new file mode 100644 index 0000000..66b2f00 --- /dev/null +++ b/packages/coding-agent/companion-out/theme/theme-schema.json @@ -0,0 +1,335 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "Pi Coding Agent Theme", + "description": "Theme schema for Pi coding agent", + "type": "object", + "required": ["name", "colors"], + "properties": { + "$schema": { + "type": "string", + "description": "JSON schema reference" + }, + "name": { + "type": "string", + "description": "Theme name" + }, + "vars": { + "type": "object", + "description": "Reusable color variables", + "additionalProperties": { + "oneOf": [ + { + "type": "string", + "description": "Hex color (#RRGGBB), variable reference, or empty string for terminal default" + }, + { + "type": "integer", + "minimum": 0, + "maximum": 255, + "description": "256-color palette index (0-255)" + } + ] + } + }, + "colors": { + "type": "object", + "description": "Theme color definitions (all required)", + "required": [ + "accent", + "border", + "borderAccent", + "borderMuted", + "success", + "error", + "warning", + "muted", + "dim", + "text", + "thinkingText", + "selectedBg", + "userMessageBg", + "userMessageText", + "customMessageBg", + "customMessageText", + "customMessageLabel", + "toolPendingBg", + "toolSuccessBg", + "toolErrorBg", + "toolTitle", + "toolOutput", + "mdHeading", + "mdLink", + "mdLinkUrl", + "mdCode", + "mdCodeBlock", + "mdCodeBlockBorder", + "mdQuote", + "mdQuoteBorder", + "mdHr", + "mdListBullet", + "toolDiffAdded", + "toolDiffRemoved", + "toolDiffContext", + "syntaxComment", + "syntaxKeyword", + "syntaxFunction", + "syntaxVariable", + "syntaxString", + "syntaxNumber", + "syntaxType", + "syntaxOperator", + "syntaxPunctuation", + "thinkingOff", + "thinkingMinimal", + "thinkingLow", + "thinkingMedium", + "thinkingHigh", + "thinkingXhigh", + "bashMode" + ], + "properties": { + "accent": { + "$ref": "#/$defs/colorValue", + "description": "Primary accent color (logo, selected items, cursor)" + }, + "border": { + "$ref": "#/$defs/colorValue", + "description": "Normal borders" + }, + "borderAccent": { + "$ref": "#/$defs/colorValue", + "description": "Highlighted borders" + }, + "borderMuted": { + "$ref": "#/$defs/colorValue", + "description": "Subtle borders" + }, + "success": { + "$ref": "#/$defs/colorValue", + "description": "Success states" + }, + "error": { + "$ref": "#/$defs/colorValue", + "description": "Error states" + }, + "warning": { + "$ref": "#/$defs/colorValue", + "description": "Warning states" + }, + "muted": { + "$ref": "#/$defs/colorValue", + "description": "Secondary/dimmed text" + }, + "dim": { + "$ref": "#/$defs/colorValue", + "description": "Very dimmed text (more subtle than muted)" + }, + "text": { + "$ref": "#/$defs/colorValue", + "description": "Default text color (usually empty string)" + }, + "thinkingText": { + "$ref": "#/$defs/colorValue", + "description": "Thinking block text color" + }, + "selectedBg": { + "$ref": "#/$defs/colorValue", + "description": "Selected item background" + }, + "userMessageBg": { + "$ref": "#/$defs/colorValue", + "description": "User message background" + }, + "userMessageText": { + "$ref": "#/$defs/colorValue", + "description": "User message text color" + }, + "customMessageBg": { + "$ref": "#/$defs/colorValue", + "description": "Custom message background (hook-injected messages)" + }, + "customMessageText": { + "$ref": "#/$defs/colorValue", + "description": "Custom message text color" + }, + "customMessageLabel": { + "$ref": "#/$defs/colorValue", + "description": "Custom message type label color" + }, + "toolPendingBg": { + "$ref": "#/$defs/colorValue", + "description": "Tool execution box (pending state)" + }, + "toolSuccessBg": { + "$ref": "#/$defs/colorValue", + "description": "Tool execution box (success state)" + }, + "toolErrorBg": { + "$ref": "#/$defs/colorValue", + "description": "Tool execution box (error state)" + }, + "toolTitle": { + "$ref": "#/$defs/colorValue", + "description": "Tool execution box title color" + }, + "toolOutput": { + "$ref": "#/$defs/colorValue", + "description": "Tool execution box output text color" + }, + "mdHeading": { + "$ref": "#/$defs/colorValue", + "description": "Markdown heading text" + }, + "mdLink": { + "$ref": "#/$defs/colorValue", + "description": "Markdown link text" + }, + "mdLinkUrl": { + "$ref": "#/$defs/colorValue", + "description": "Markdown link URL" + }, + "mdCode": { + "$ref": "#/$defs/colorValue", + "description": "Markdown inline code" + }, + "mdCodeBlock": { + "$ref": "#/$defs/colorValue", + "description": "Markdown code block content" + }, + "mdCodeBlockBorder": { + "$ref": "#/$defs/colorValue", + "description": "Markdown code block fences" + }, + "mdQuote": { + "$ref": "#/$defs/colorValue", + "description": "Markdown blockquote text" + }, + "mdQuoteBorder": { + "$ref": "#/$defs/colorValue", + "description": "Markdown blockquote border" + }, + "mdHr": { + "$ref": "#/$defs/colorValue", + "description": "Markdown horizontal rule" + }, + "mdListBullet": { + "$ref": "#/$defs/colorValue", + "description": "Markdown list bullets/numbers" + }, + "toolDiffAdded": { + "$ref": "#/$defs/colorValue", + "description": "Added lines in tool diffs" + }, + "toolDiffRemoved": { + "$ref": "#/$defs/colorValue", + "description": "Removed lines in tool diffs" + }, + "toolDiffContext": { + "$ref": "#/$defs/colorValue", + "description": "Context lines in tool diffs" + }, + "syntaxComment": { + "$ref": "#/$defs/colorValue", + "description": "Syntax highlighting: comments" + }, + "syntaxKeyword": { + "$ref": "#/$defs/colorValue", + "description": "Syntax highlighting: keywords" + }, + "syntaxFunction": { + "$ref": "#/$defs/colorValue", + "description": "Syntax highlighting: function names" + }, + "syntaxVariable": { + "$ref": "#/$defs/colorValue", + "description": "Syntax highlighting: variable names" + }, + "syntaxString": { + "$ref": "#/$defs/colorValue", + "description": "Syntax highlighting: string literals" + }, + "syntaxNumber": { + "$ref": "#/$defs/colorValue", + "description": "Syntax highlighting: number literals" + }, + "syntaxType": { + "$ref": "#/$defs/colorValue", + "description": "Syntax highlighting: type names" + }, + "syntaxOperator": { + "$ref": "#/$defs/colorValue", + "description": "Syntax highlighting: operators" + }, + "syntaxPunctuation": { + "$ref": "#/$defs/colorValue", + "description": "Syntax highlighting: punctuation" + }, + "thinkingOff": { + "$ref": "#/$defs/colorValue", + "description": "Thinking level border: off" + }, + "thinkingMinimal": { + "$ref": "#/$defs/colorValue", + "description": "Thinking level border: minimal" + }, + "thinkingLow": { + "$ref": "#/$defs/colorValue", + "description": "Thinking level border: low" + }, + "thinkingMedium": { + "$ref": "#/$defs/colorValue", + "description": "Thinking level border: medium" + }, + "thinkingHigh": { + "$ref": "#/$defs/colorValue", + "description": "Thinking level border: high" + }, + "thinkingXhigh": { + "$ref": "#/$defs/colorValue", + "description": "Thinking level border: xhigh (OpenAI codex-max only)" + }, + "bashMode": { + "$ref": "#/$defs/colorValue", + "description": "Editor border color in bash mode" + } + }, + "additionalProperties": false + }, + "export": { + "type": "object", + "description": "Optional colors for HTML export (defaults derived from userMessageBg if not specified)", + "properties": { + "pageBg": { + "$ref": "#/$defs/colorValue", + "description": "Page background color" + }, + "cardBg": { + "$ref": "#/$defs/colorValue", + "description": "Card/container background color" + }, + "infoBg": { + "$ref": "#/$defs/colorValue", + "description": "Info sections background (system prompt, notices)" + } + }, + "additionalProperties": false + } + }, + "additionalProperties": false, + "$defs": { + "colorValue": { + "oneOf": [ + { + "type": "string", + "description": "Hex color (#RRGGBB), variable reference, or empty string for terminal default" + }, + { + "type": "integer", + "minimum": 0, + "maximum": 255, + "description": "256-color palette index (0-255)" + } + ] + } + } +}