From dd3fc3fa7f274e05244612edd2de4193826a3df4 Mon Sep 17 00:00:00 2001 From: Andrew Chan Date: Thu, 20 Aug 2026 19:00:25 -0700 Subject: [PATCH 1/9] Ship the Monaco editor as a builtin plugin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replaces BB's read-only file preview with Monaco for ~86 text and code extensions: editing with compare-and-swap saves, find, syntax highlighting, and a file tree with filtering and copy actions. Enabled by default under the Interface category, so the panel becomes an editor rather than a viewer; per-extension opt-out stays in Settings → File openers, and binaries still fall through to BB's preview via experimental_Original. Monaco loads its prebuilt AMD bundle from disk rather than being bundled: the plugin build has no loader for its font asset, cannot code split, and inlining it would add ~4.4 MB to every app boot. Packaging copies only a builtin's dist/, so scripts/stage-assets.mjs stages monaco-editor/min/vs into dist/vs and the server serves it over a files.createPreview lease. copy-builtin-plugins.ts gains a generic hook that runs a plugin's stage-assets.mjs when it has one — the mechanism any plugin needing runtime files on disk would use. This adds ~25 MB to the packaged app. Ported from the standalone plugin: imports @bb/shared-ui instead of vendored components, resolves project-backed workspace sources (which carry no environment and may name a host), and accepts the experimental_hostId field main added to PluginFileOpenerSource. Co-Authored-By: Claude Opus 5 (1M context) --- apps/server/scripts/copy-builtin-plugins.ts | 16 + .../src/services/plugins/builtin-registry.ts | 6 + .../services/plugins/builtin-plugins.test.ts | 1 + .../services/plugins/official-plugins.test.ts | 1 + packages/bb-app/scripts/smoke-tarball.mjs | 1 + plugins/monaco/README.md | 70 +++ plugins/monaco/app.tsx | 535 ++++++++++++++++++ plugins/monaco/assets/monaco-editor.png | Bin 0 -> 401507 bytes plugins/monaco/components/ContextMenu.tsx | 138 +++++ plugins/monaco/components/FileToolbar.tsx | 288 ++++++++++ plugins/monaco/components/FileTreePanel.tsx | 306 ++++++++++ plugins/monaco/lib/file-tree.test.ts | 86 +++ plugins/monaco/lib/file-tree.ts | 144 +++++ plugins/monaco/lib/languages.ts | 139 +++++ plugins/monaco/lib/monaco-loader.ts | 222 ++++++++ plugins/monaco/package.json | 64 +++ plugins/monaco/scripts/stage-assets.mjs | 35 ++ plugins/monaco/server.ts | 322 +++++++++++ plugins/monaco/tsconfig.json | 25 + plugins/monaco/vitest.config.ts | 10 + pnpm-lock.yaml | 79 ++- turbo.json | 6 + 22 files changed, 2491 insertions(+), 3 deletions(-) create mode 100644 plugins/monaco/README.md create mode 100644 plugins/monaco/app.tsx create mode 100644 plugins/monaco/assets/monaco-editor.png create mode 100644 plugins/monaco/components/ContextMenu.tsx create mode 100644 plugins/monaco/components/FileToolbar.tsx create mode 100644 plugins/monaco/components/FileTreePanel.tsx create mode 100644 plugins/monaco/lib/file-tree.test.ts create mode 100644 plugins/monaco/lib/file-tree.ts create mode 100644 plugins/monaco/lib/languages.ts create mode 100644 plugins/monaco/lib/monaco-loader.ts create mode 100644 plugins/monaco/package.json create mode 100644 plugins/monaco/scripts/stage-assets.mjs create mode 100644 plugins/monaco/server.ts create mode 100644 plugins/monaco/tsconfig.json create mode 100644 plugins/monaco/vitest.config.ts diff --git a/apps/server/scripts/copy-builtin-plugins.ts b/apps/server/scripts/copy-builtin-plugins.ts index e9c10ad996..ff204e30a0 100644 --- a/apps/server/scripts/copy-builtin-plugins.ts +++ b/apps/server/scripts/copy-builtin-plugins.ts @@ -96,6 +96,18 @@ async function writeRuntimePackageJson(args: { ); } +/** + * Runs `/scripts/stage-assets.mjs` when a plugin has one. The + * script's side effects are its contract: it populates `dist/` with runtime + * files the bundlers cannot produce (the Monaco plugin copies Monaco's AMD + * build in this way). + */ +async function runStageAssets(sourceRoot: string): Promise { + const scriptPath = path.join(sourceRoot, "scripts", "stage-assets.mjs"); + if (!(await exists(scriptPath))) return; + await import(pathToFileURL(scriptPath).href); +} + async function copyBuiltinPlugin(args: { bbVersion: string; build: boolean; @@ -120,6 +132,10 @@ async function copyBuiltinPlugin(args: { if (packageJson.bb.host !== undefined) { await buildPluginHost(args.sourceRoot, args.bbVersion, toolchain); } + // A plugin that needs files on disk at runtime (rather than bundled into + // its server/app) stages them into `dist/` here, because `RUNTIME_DIRS` + // below is all that ships. Optional: most plugins have no such script. + await runStageAssets(args.sourceRoot); } const targetDir = path.join(args.targetRoot, args.name); diff --git a/apps/server/src/services/plugins/builtin-registry.ts b/apps/server/src/services/plugins/builtin-registry.ts index ef113f83d7..714f5c3387 100644 --- a/apps/server/src/services/plugins/builtin-registry.ts +++ b/apps/server/src/services/plugins/builtin-registry.ts @@ -78,6 +78,12 @@ export const BUILTIN_PLUGINS = [ defaultEnabled: true, category: "Interface", }, + { + name: "monaco", + pluginId: "monaco", + defaultEnabled: true, + category: "Interface", + }, { name: "pdf-preview", pluginId: "pdf-preview", diff --git a/apps/server/test/services/plugins/builtin-plugins.test.ts b/apps/server/test/services/plugins/builtin-plugins.test.ts index c1a4949662..32dd4c3eb9 100644 --- a/apps/server/test/services/plugins/builtin-plugins.test.ts +++ b/apps/server/test/services/plugins/builtin-plugins.test.ts @@ -229,6 +229,7 @@ describe("builtin plugin reconciliation", () => { ["plugin-api-tester", "Beaker"], ["inline-vis", "AppWindow"], ["keep-awake", "Coffee"], + ["monaco", "Code"], ["pdf-preview", "FileText"], ["provider-acp", "./icons/acp.svg"], ["provider-claude-code", "./icons/claude-code.svg"], diff --git a/apps/server/test/services/plugins/official-plugins.test.ts b/apps/server/test/services/plugins/official-plugins.test.ts index 3396fd191b..1a53ecfe6c 100644 --- a/apps/server/test/services/plugins/official-plugins.test.ts +++ b/apps/server/test/services/plugins/official-plugins.test.ts @@ -100,6 +100,7 @@ describe("official plugin registry invariants", () => { "inline-vis": "Interface", "keep-awake": "Host access", memory: "Context & knowledge", + monaco: "Interface", "pdf-preview": "Interface", "provider-acp": "Agent interaction", "provider-claude-code": "Agent interaction", diff --git a/packages/bb-app/scripts/smoke-tarball.mjs b/packages/bb-app/scripts/smoke-tarball.mjs index 5b2745eac8..adb2cd6015 100644 --- a/packages/bb-app/scripts/smoke-tarball.mjs +++ b/packages/bb-app/scripts/smoke-tarball.mjs @@ -33,6 +33,7 @@ const EXPECTED_RUNNING_BUILTIN_PLUGINS = [ "custom-instructions", "inline-vis", "keep-awake", + "monaco", "pdf-preview", "provider-retry", "secrets", diff --git a/plugins/monaco/README.md b/plugins/monaco/README.md new file mode 100644 index 0000000000..7cf52a4300 --- /dev/null +++ b/plugins/monaco/README.md @@ -0,0 +1,70 @@ +# bb-plugin-monaco + +Opens files in BB using [Monaco](https://microsoft.github.io/monaco-editor/), +the editor from VS Code, instead of BB's read-only file preview. + +It applies everywhere BB opens a file: links clicked in chat, the secondary +panel's file search, and `bb thread open`. + +![The Monaco editor in BB's secondary panel, with the file tree open above +it: a filter box, the project tree expanded to reveal the open +packages/process-utils/src/index.ts, and the file bar showing that path with +reload and tree-toggle buttons.](assets/monaco-editor.png) + +## Features + +- **Edit and save.** ⌘S writes the file. If it changed on disk + since you opened it — often because the agent edited it — the save stops and + offers Reload or Overwrite rather than clobbering the change. +- **Find in file** with ⌘F, plus Monaco's usual editing: multiple + cursors, block selection, bracket matching, code folding. +- **Syntax highlighting** for ~86 common file types. +- **File tree.** Toggle it from the file bar to browse the project, filter by + path, expand and collapse directories, and jump to another file. It opens + with the current file revealed. Right-click any row to copy its absolute + path, relative path, or filename. +- **Follows your theme,** including light/dark switches and custom palettes. + +## Development + +Ships with BB as a builtin; there is nothing to install. + +``` +pnpm exec turbo run typecheck test --filter=bb-plugin-monaco +``` + +Monaco's AMD build is what the editor loads at runtime, and packaging copies +only a builtin's `dist/`, so `scripts/stage-assets.mjs` copies +`monaco-editor/min/vs` into `dist/vs` during the build +(`apps/server/scripts/copy-builtin-plugins.ts` runs it). Running from source +there is no `dist/`, and the server falls back to resolving `monaco-editor` +from `node_modules`. + +## Which files it opens + +The plugin claims the extensions listed in `lib/languages.ts` — common code, +config, and text formats. Binaries like `png` and `pdf` are left to BB's own +preview, which renders them properly. + +To change any file type back, use **Settings → File openers**, which offers +Automatic, BB's built-in preview, or Monaco per extension. Right-clicking a +file link also offers a one-off "Open with…". + +## Roadmap + +- **Language intelligence.** There is no language server, so no + go-to-definition, find-references, or type checking. Monaco ships a + TypeScript checker, but it can only see the one open file, so every import + looks unresolved — it is switched off rather than showing errors that are + wrong. +- **File operations.** The tree is read-only; renaming, creating, and + deleting files are not implemented yet. +- **Hidden files and `node_modules`** never appear in the tree. BB's path + listing excludes them and offers no way to ask for them + ([#2093](https://github.com/get-bb/bb/issues/2093)). +- **Opening a file from the tree reuses the current tab,** so the tab title + keeps naming the file it was opened with. A plugin cannot ask BB to open a + file or retitle its tab ([#2102](https://github.com/get-bb/bb/issues/2102)). +- **No "open in editor" button** like BB's preview has; that capability is not + available to plugins. +- **Thread-storage files on a remote machine** fail to open. diff --git a/plugins/monaco/app.tsx b/plugins/monaco/app.tsx new file mode 100644 index 0000000000..fdc7d4b1cc --- /dev/null +++ b/plugins/monaco/app.tsx @@ -0,0 +1,535 @@ +// bb-plugin-monaco — frontend entry. +// +// Registers a `fileOpener`, which is BB's seam for replacing the built-in +// file preview. Every file-open flow in the app funnels through one call site +// (`useThreadFileTabs`'s `openTab`), so this single registration covers file +// links clicked in chat, the secondary panel's "+" file search, and +// `bb thread open` alike. +import { useCallback, useEffect, useRef, useState } from "react"; +import { + definePluginApp, + useRpc, + type PluginFileOpenerProps, +} from "@get-bb/plugin-sdk/app"; +import type * as MonacoNs from "monaco-editor"; +import type { rpcContract } from "./server.js"; +import { CLAIMED_EXTENSIONS, languageForPath } from "./lib/languages.js"; +import { + loadMonaco, + overflowWidgetsNode, + setOverflowWidgetsTheme, +} from "./lib/monaco-loader.js"; +import { cn } from "@bb/shared-ui/lib/utils"; +import { FileToolbar, type SaveIndicator } from "./components/FileToolbar.js"; +import { FileTreePanel } from "./components/FileTreePanel.js"; +import type { FlatEntry } from "./lib/file-tree.js"; + +type SaveState = + | { kind: "clean" } + | { kind: "dirty" } + | { kind: "saving" } + | { kind: "error"; message: string } + | { kind: "conflict" }; + +/** Monaco's dark/light pair, following the app's ``. */ +function useMonacoTheme(): "vs-dark" | "vs" { + const [isDark, setIsDark] = useState( + () => document.documentElement.classList.contains("dark"), + ); + useEffect(() => { + const target = document.documentElement; + const observer = new MutationObserver(() => { + setIsDark(target.classList.contains("dark")); + }); + observer.observe(target, { attributes: true, attributeFilter: ["class"] }); + return () => observer.disconnect(); + }, []); + return isDark ? "vs-dark" : "vs"; +} + +function MonacoFileOpener({ + path, + source, + experimental_Original: Original, +}: PluginFileOpenerProps) { + const rpc = useRpc(); + const theme = useMonacoTheme(); + const containerRef = useRef(null); + const editorRef = useRef(null); + + // The file actually in the editor. It starts as the one BB opened the tab + // for and changes when the user picks another from the file tree, so every + // read and write below targets this rather than the prop. BB's tab title + // keeps naming the original file: a plugin cannot retitle its own tab. + const [activePath, setActivePath] = useState(path); + useEffect(() => setActivePath(path), [path]); + + // The hash the file had when we last agreed with disk. It guards every + // save, and a save advances it — so it lives in a ref rather than state: + // the cmd+S handler is registered once and must see the current value. + const sha256Ref = useRef(null); + const saveStateRef = useRef({ kind: "clean" }); + + const [saveState, setSaveStateValue] = useState({ kind: "clean" }); + const [isRefreshing, setIsRefreshing] = useState(false); + const [pendingDiscard, setPendingDiscard] = useState(false); + const [isFilesOpen, setIsFilesOpen] = useState(false); + // A file picked from the tree while the buffer was dirty, held until the + // user says whether to discard. + const [pendingOpen, setPendingOpen] = useState(null); + const [tree, setTree] = useState<{ + entries: readonly FlatEntry[]; + root: string; + truncated: boolean; + isLoading: boolean; + error: string | null; + }>({ + entries: [], + root: "", + truncated: false, + isLoading: false, + error: null, + }); + const [status, setStatus] = useState< + | { kind: "loading" } + | { kind: "ready" } + | { kind: "delegate"; reason: string } + | { kind: "error"; message: string } + >({ kind: "loading" }); + + const setSaveState = useCallback((next: SaveState) => { + saveStateRef.current = next; + setSaveStateValue(next); + }, []); + + const save = useCallback(async () => { + const editor = editorRef.current; + if (!editor) return; + if (saveStateRef.current.kind === "saving") return; + setSaveState({ kind: "saving" }); + try { + const result = await rpc.call("write", { + path: activePath, + source, + content: editor.getValue(), + expectedSha256: sha256Ref.current, + }); + if (result.outcome === "conflict") { + // Someone else — very often the agent working in this thread — wrote + // the file after we read it. Never clobber: surface it and let the + // user choose. + setSaveState({ kind: "conflict" }); + return; + } + sha256Ref.current = result.sha256; + setSaveState({ kind: "clean" }); + } catch (error) { + setSaveState({ + kind: "error", + message: error instanceof Error ? error.message : "Save failed", + }); + } + }, [activePath, rpc, setSaveState, source]); + + const saveRef = useRef(save); + saveRef.current = save; + + /** Discard local edits and take what is on disk now. */ + const reloadFromDisk = useCallback(async () => { + const editor = editorRef.current; + if (!editor) return; + setIsRefreshing(true); + try { + const file = await rpc.call("read", { path: activePath, source }); + if (file.kind !== "text") return; + sha256Ref.current = file.sha256; + // `setValue` resets undo history, which is correct here: the buffer no + // longer descends from what the user was editing. + editor.setValue(file.content); + setSaveState({ kind: "clean" }); + } catch (error) { + setSaveState({ + kind: "error", + message: error instanceof Error ? error.message : "Reload failed", + }); + } finally { + setIsRefreshing(false); + } + }, [activePath, rpc, setSaveState, source]); + + /** + * Lists the project once, the first time the panel is opened. The listing + * is a snapshot; the reload button is the way to pick up files created + * since. Fetching lazily keeps a 5,000-entry request off the open path for + * everyone who never opens the tree. + */ + // "Have we already asked?" is a ref, not state, on purpose. Deriving it + // from `tree` would put `tree.isLoading` in this effect's dependencies — + // and since the effect's own first act is to set that flag, React would + // tear the effect down mid-flight, the cleanup would mark the in-flight + // request cancelled, and the response would be dropped. The panel then sits + // on "Loading files…" forever. + const treeRequestedRef = useRef(false); + useEffect(() => { + if (!isFilesOpen || treeRequestedRef.current) return; + treeRequestedRef.current = true; + let cancelled = false; + setTree((current) => ({ ...current, isLoading: true, error: null })); + void rpc + .call("tree", { source }) + .then((result) => { + if (cancelled) return; + setTree({ + entries: result.entries, + root: result.root, + truncated: result.truncated, + isLoading: false, + error: null, + }); + }) + .catch((error: unknown) => { + if (cancelled) return; + // Let the next open retry rather than latching the failure forever. + treeRequestedRef.current = false; + setTree({ + entries: [], + root: "", + truncated: false, + isLoading: false, + error: + error instanceof Error ? error.message : "Could not list files", + }); + }); + return () => { + cancelled = true; + }; + }, [isFilesOpen, rpc, source]); + + /** Switch the editor to another file, guarding unsaved work. */ + const openFromTree = useCallback( + (next: string) => { + if (next === activePath) return; + if (saveStateRef.current.kind === "dirty") { + setPendingOpen(next); + return; + } + setActivePath(next); + }, + [activePath], + ); + + /** + * Toolbar reload. With unsaved edits this asks first — reloading is the one + * control here that can destroy work the user has not committed to disk. + */ + const requestRefresh = useCallback(() => { + if (saveStateRef.current.kind === "dirty") { + setPendingDiscard(true); + return; + } + void reloadFromDisk(); + }, [reloadFromDisk]); + + /** Take our buffer as the truth, dropping the hash guard for one write. */ + const overwrite = useCallback(async () => { + sha256Ref.current = null; + const editor = editorRef.current; + if (!editor) return; + setSaveState({ kind: "saving" }); + try { + const result = await rpc.call("write", { + path: activePath, + source, + content: editor.getValue(), + // An absent guard is an unconditional write; `null` would mean + // create-only, which is not what "overwrite" means here. + expectedSha256: null, + }); + if (result.outcome === "conflict") { + setSaveState({ kind: "conflict" }); + return; + } + sha256Ref.current = result.sha256; + setSaveState({ kind: "clean" }); + } catch (error) { + setSaveState({ + kind: "error", + message: error instanceof Error ? error.message : "Save failed", + }); + } + }, [activePath, rpc, setSaveState, source]); + + // Boot: fetch the asset URL and the file content in parallel, then create + // the editor. Re-runs when the tab is pointed at a different file. + useEffect(() => { + let disposed = false; + setStatus({ kind: "loading" }); + + void (async () => { + try { + const [{ baseUrl }, file] = await Promise.all([ + rpc.call("assets"), + rpc.call("read", { path: activePath, source }), + ]); + if (disposed) return; + if (file.kind === "unsupported") { + setStatus({ kind: "delegate", reason: file.reason }); + return; + } + + const monaco = await loadMonaco(baseUrl); + if (disposed) return; + const container = containerRef.current; + if (!container) return; + + sha256Ref.current = file.sha256; + const editor = monaco.editor.create(container, { + value: file.content, + language: languageForPath(activePath), + automaticLayout: true, + lineNumbers: "on", + // Read from the DOM rather than the hook so the editor is created + // in the right theme; re-theming on toggle is a separate effect. + theme: document.documentElement.classList.contains("dark") + ? "vs-dark" + : "vs", + minimap: { enabled: false }, + scrollBeyondLastLine: false, + // Matches BB's own file preview, which renders its code table as + // `font-mono text-xs leading-5` — 12px on 20px, since the app + // leaves Tailwind's default `--text-xs` alone at desktop widths. + fontSize: 12, + lineHeight: 20, + // Read the app's mono stack rather than restating it, so a custom + // theme's font follows through to the editor. + fontFamily: + getComputedStyle(document.documentElement).getPropertyValue( + "--font-mono", + ) || undefined, + // Hovers, suggestions, and parameter hints render into a body-level + // node so BB's panel cannot clip them. Both options are required — + // see overflowWidgetsNode(). + fixedOverflowWidgets: true, + overflowWidgetsDomNode: overflowWidgetsNode(), + }); + editorRef.current = editor; + setStatus({ kind: "ready" }); + + editor.onDidChangeModelContent(() => { + if (saveStateRef.current.kind === "clean") { + setSaveState({ kind: "dirty" }); + } + }); + editor.addCommand( + monaco.KeyMod.CtrlCmd | monaco.KeyCode.KeyS, + () => void saveRef.current(), + ); + } catch (error) { + if (disposed) return; + setStatus({ + kind: "error", + message: + error instanceof Error ? error.message : "Could not open this file", + }); + } + })(); + + return () => { + disposed = true; + editorRef.current?.getModel()?.dispose(); + editorRef.current?.dispose(); + editorRef.current = null; + }; + }, [activePath, rpc, setSaveState, source]); + + useEffect(() => { + editorRef.current?.updateOptions({ theme }); + // The overflow host lives outside the editor, so Monaco does not re-theme + // it for us. + setOverflowWidgetsTheme(theme); + }, [theme, status]); + + // Binary and oversized files are ordinary things to click on, and this + // plugin claims broad extensions. Hand them back to BB's own preview, which + // renders them properly, rather than showing an editor that cannot. + if (status.kind === "delegate") return ; + + return ( +
+ {isFilesOpen ? ( + setIsFilesOpen(false)} + onOpenFile={openFromTree} + truncated={tree.truncated} + /> + ) : null} + setIsFilesOpen((open) => !open)} + /> + setPendingDiscard(false)} + onDiscardConfirm={() => { + setPendingDiscard(false); + void reloadFromDisk(); + }} + onOpenCancel={() => setPendingOpen(null)} + onOpenConfirm={() => { + const next = pendingOpen; + setPendingOpen(null); + if (next !== null) setActivePath(next); + }} + onOverwrite={() => void overwrite()} + onReload={() => void reloadFromDisk()} + pendingDiscard={pendingDiscard} + pendingOpen={pendingOpen} + saveState={saveState} + status={status} + /> +
+
+ ); +} + +/** Collapses the editor's internal states into the toolbar's one dot. */ +function indicatorFor( + saveState: SaveState, + status: { kind: string }, +): SaveIndicator { + if (status.kind === "error") return "error"; + switch (saveState.kind) { + case "saving": + return "saving"; + case "dirty": + return "dirty"; + case "error": + case "conflict": + return "error"; + default: + return "clean"; + } +} + +/** + * A thin row under the toolbar, shown only when there is something the user + * must decide or know. The dot carries routine state; this carries the rest, + * so nothing that needs a choice is reduced to a colored circle. + */ +function Notice({ + onDiscardCancel, + onDiscardConfirm, + onOpenCancel, + onOpenConfirm, + onOverwrite, + onReload, + pendingDiscard, + pendingOpen, + saveState, + status, +}: { + onDiscardCancel: () => void; + onDiscardConfirm: () => void; + onOpenCancel: () => void; + onOpenConfirm: () => void; + onOverwrite: () => void; + onReload: () => void; + pendingDiscard: boolean; + pendingOpen: string | null; + saveState: SaveState; + status: { kind: string; message?: string }; +}) { + if (status.kind === "error") { + return {status.message}; + } + if (saveState.kind === "conflict") { + return ( + + This file changed on disk since you opened it. + Reload + Overwrite + + ); + } + if (pendingOpen !== null) { + return ( + + Open {pendingOpen.split("/").at(-1)} and discard your unsaved changes? + Discard and open + Cancel + + ); + } + // Reloading would throw away edits, so the toolbar's reload turns into a + // question rather than doing it. + if (pendingDiscard) { + return ( + + Reload from disk and discard your unsaved changes? + Discard + Cancel + + ); + } + if (saveState.kind === "error") { + return {saveState.message}; + } + return null; +} + +function NoticeRow({ + children, + tone, +}: { + children: React.ReactNode; + tone: "error" | "warning"; +}) { + return ( +
+ {children} +
+ ); +} + +function NoticeAction({ + children, + onClick, +}: { + children: React.ReactNode; + onClick: () => void; +}) { + return ( + + ); +} + +export default definePluginApp((app) => { + app.slots.fileOpener({ + id: "monaco", + title: "Monaco", + extensions: CLAIMED_EXTENSIONS, + component: MonacoFileOpener, + }); +}); diff --git a/plugins/monaco/assets/monaco-editor.png b/plugins/monaco/assets/monaco-editor.png new file mode 100644 index 0000000000000000000000000000000000000000..f124e9ead0a47b67c295189291c98ae0f5f58e88 GIT binary patch literal 401507 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೾rWg_EYFu6J&^4mN6e9`4 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∓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�go{`KSe=Gc?w26;F*+ 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

6^` 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 z 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 void; +} + +export interface ContextMenuState { + x: number; + y: number; + items: ContextMenuItem[]; +} + +const VIEWPORT_MARGIN_PX = 8; + +/** + * Chrome copied from BB's timeline selection menu (the "Reply in side chat" + * popover) so the two read as the same surface. Container and item classes + * are its `SELECTION_MENU_CONTENT_CLASS` and `SELECTION_ACTION_BUTTON_CLASS`, + * minus the radix `data-[state]` variants — this menu is not radix, so it + * animates in unconditionally on mount. + */ +const MENU_CLASS = + "fixed z-50 w-auto rounded-md border bg-popover p-0.5 text-popover-foreground shadow-md outline-none animate-in fade-in-0 zoom-in-95"; +const ITEM_CLASS = + "flex w-full cursor-pointer items-center gap-1 rounded px-1.5 py-0.5 text-left text-xs text-foreground transition-colors select-none hover:bg-surface-recessed focus-visible:ring-1 focus-visible:ring-ring focus-visible:outline-none max-md:pointer-coarse:min-h-7 max-md:pointer-coarse:px-2 max-md:pointer-coarse:py-1"; + +export function ContextMenu({ + state, + onClose, +}: { + state: ContextMenuState | null; + onClose: () => void; +}) { + const menuRef = useRef(null); + const [position, setPosition] = useState({ x: 0, y: 0 }); + + // Measure before paint, so a menu opened near an edge never renders + // off-screen for a frame first. + useLayoutEffect(() => { + if (state === null) return; + // Width is measured rather than fixed: the menu sizes to its labels, like + // the selection menu it mirrors. + const menu = menuRef.current; + const width = menu?.offsetWidth ?? 0; + const height = menu?.offsetHeight ?? 0; + setPosition({ + x: Math.max( + VIEWPORT_MARGIN_PX, + Math.min(state.x, window.innerWidth - width - VIEWPORT_MARGIN_PX), + ), + y: Math.max( + VIEWPORT_MARGIN_PX, + Math.min(state.y, window.innerHeight - height - VIEWPORT_MARGIN_PX), + ), + }); + }, [state]); + + useEffect(() => { + if (state === null) return; + menuRef.current?.querySelector("button")?.focus(); + const onPointerDown = (event: PointerEvent) => { + if (!menuRef.current?.contains(event.target as Node)) onClose(); + }; + const onKeyDown = (event: KeyboardEvent) => { + if (event.key === "Escape") { + event.stopPropagation(); + onClose(); + return; + } + if (event.key !== "ArrowDown" && event.key !== "ArrowUp") return; + event.preventDefault(); + const menu = menuRef.current; + if (menu === null) return; + const buttons = Array.from(menu.querySelectorAll("button")); + if (buttons.length === 0) return; + const index = buttons.indexOf(document.activeElement as HTMLButtonElement); + const delta = event.key === "ArrowDown" ? 1 : -1; + const next = (index + delta + buttons.length) % buttons.length; + buttons[next]?.focus(); + }; + // `true` so a scroll anywhere — including inside the tree — dismisses + // rather than leaving the menu floating over unrelated rows. + window.addEventListener("pointerdown", onPointerDown, true); + window.addEventListener("keydown", onKeyDown, true); + window.addEventListener("scroll", onClose, true); + window.addEventListener("resize", onClose); + return () => { + window.removeEventListener("pointerdown", onPointerDown, true); + window.removeEventListener("keydown", onKeyDown, true); + window.removeEventListener("scroll", onClose, true); + window.removeEventListener("resize", onClose); + }; + }, [state, onClose]); + + if (state === null) return null; + + return createPortal( +

, + document.body, + ); +} diff --git a/plugins/monaco/components/FileToolbar.tsx b/plugins/monaco/components/FileToolbar.tsx new file mode 100644 index 0000000000..8765f6b9d4 --- /dev/null +++ b/plugins/monaco/components/FileToolbar.tsx @@ -0,0 +1,288 @@ +import { useCallback, useEffect, useRef, useState } from "react"; +import { toast } from "sonner"; +import { cn } from "@bb/shared-ui/lib/utils"; + +/** + * The bar above the editor. Mirrors BB's own file-preview header (`h-9`, + * `bg-surface-raised`, monospace `text-file-accent` path) so a plugin-opened + * file does not look like a different application from a BB-opened one. + */ + +export type SaveIndicator = "clean" | "dirty" | "saving" | "error"; + +export interface FileToolbarProps { + path: string; + indicator: SaveIndicator; + isRefreshing: boolean; + onRefresh: () => void; + isFilesOpen: boolean; + onToggleFiles: () => void; +} + +export function FileToolbar({ + path, + indicator, + isRefreshing, + onRefresh, + isFilesOpen, + onToggleFiles, +}: FileToolbarProps) { + return ( +
+
+ + + + + +
+ + + + +
+ ); +} + +/** + * Present only while the file differs from disk, the way editors do it — a + * saved file is the resting state and needs no ornament. The slot keeps its + * width either way so the reload button does not shift when the dot appears. + */ +function SaveDot({ indicator }: { indicator: SaveIndicator }) { + if (indicator === "clean") { + return ; + } + const label = + indicator === "saving" + ? "Saving…" + : indicator === "error" + ? "Could not save — unsaved changes" + : "Unsaved changes"; + return ( + + + + ); +} + +/** Truncates from the start, so the file name stays visible in a narrow panel. */ +function CopyablePath({ path }: { path: string }) { + const [copied, setCopied] = useState(false); + const timerRef = useRef | null>(null); + + useEffect( + () => () => { + if (timerRef.current !== null) clearTimeout(timerRef.current); + }, + [], + ); + + const copy = useCallback(() => { + void navigator.clipboard + .writeText(path) + .then(() => { + setCopied(true); + if (timerRef.current !== null) clearTimeout(timerRef.current); + timerRef.current = setTimeout(() => setCopied(false), 1500); + toast.success("File path copied"); + }) + .catch(() => toast.error("Failed to copy file path")); + }, [path]); + + return ( + + ); +} + +function ToolbarButton({ + label, + onClick, + disabled, + pressed, + children, +}: { + label: string; + onClick: () => void; + disabled?: boolean; + pressed?: boolean; + children: React.ReactNode; +}) { + return ( + + ); +} + +function TreeIcon() { + return ( + + + + ); +} + +/** + * Inline glyphs rather than an icon dependency: the plugin needs three shapes, + * and pulling in an icon package to get them would bundle a whole map. + */ +function FileGlyph({ path, className }: { path: string; className?: string }) { + const kind = glyphKindForPath(path); + if (kind === "code") { + return ( + + + + ); + } + if (kind === "data") { + return ( + + + + ); + } + return ( + + + + + ); +} + +const DATA_EXTENSIONS = new Set([ + "json", + "jsonc", + "yaml", + "yml", + "toml", + "ini", + "cfg", + "conf", + "xml", + "csv", + "tsv", +]); + +const DOC_EXTENSIONS = new Set([ + "md", + "mdx", + "markdown", + "txt", + "text", + "rst", + "adoc", + "log", +]); + +function glyphKindForPath(path: string): "code" | "data" | "doc" { + const name = path.split("/").at(-1) ?? path; + const dotIndex = name.lastIndexOf("."); + const extension = dotIndex <= 0 ? "" : name.slice(dotIndex + 1).toLowerCase(); + if (DATA_EXTENSIONS.has(extension)) return "data"; + if (DOC_EXTENSIONS.has(extension)) return "doc"; + return "code"; +} + +function RotateIcon({ className }: { className?: string }) { + return ( + + + + ); +} diff --git a/plugins/monaco/components/FileTreePanel.tsx b/plugins/monaco/components/FileTreePanel.tsx new file mode 100644 index 0000000000..534300e3c0 --- /dev/null +++ b/plugins/monaco/components/FileTreePanel.tsx @@ -0,0 +1,306 @@ +import { useEffect, useMemo, useRef, useState } from "react"; +import { + ancestorsOf, + buildTree, + filterTree, + type FlatEntry, + type TreeNode, +} from "../lib/file-tree.js"; +import { toast } from "sonner"; +import { ContextMenu, type ContextMenuState } from "./ContextMenu.js"; +import { cn } from "@bb/shared-ui/lib/utils"; + +export interface FileTreePanelProps { + entries: readonly FlatEntry[]; + /** Absolute path the entries are relative to; "" until the listing lands. */ + root: string; + /** True while the listing is in flight; the panel opens before it lands. */ + isLoading: boolean; + error: string | null; + truncated: boolean; + /** The file currently in the editor, revealed and highlighted. */ + activePath: string; + onOpenFile: (path: string) => void; + onClose: () => void; +} + +const INDENT_PER_LEVEL_PX = 12; + +export function FileTreePanel({ + entries, + root, + isLoading, + error, + truncated, + activePath, + onOpenFile, + onClose, +}: FileTreePanelProps) { + const [query, setQuery] = useState(""); + const [expanded, setExpanded] = useState>(new Set()); + const [menu, setMenu] = useState(null); + const activeRowRef = useRef(null); + + const openMenu = (event: React.MouseEvent, node: TreeNode) => { + event.preventDefault(); + setMenu({ + x: event.clientX, + y: event.clientY, + items: [ + { + label: "Copy absolute path", + onSelect: () => + copy( + // The daemon may hand back a Windows root; joining with "/" + // there would produce a path nothing on that host accepts. + root === "" + ? node.path + : root.includes("\\") + ? `${root}\\${node.path.replace(/\//g, "\\")}` + : `${root}/${node.path}`, + "Absolute path copied", + ), + }, + { + label: "Copy relative path", + onSelect: () => copy(node.path, "Relative path copied"), + }, + { + label: "Copy filename", + onSelect: () => copy(node.name, "Filename copied"), + }, + ], + }); + }; + + const tree = useMemo(() => buildTree(entries), [entries]); + const filtered = useMemo(() => filterTree(tree, query), [tree, query]); + + // Reveal the open file: every directory above it starts expanded. Re-runs + // when the editor moves to another file, so the tree follows along. + useEffect(() => { + setExpanded((current) => { + const next = new Set(current); + for (const ancestor of ancestorsOf(activePath)) next.add(ancestor); + return next; + }); + }, [activePath]); + + // Scroll the revealed file into view once the rows for it exist. + useEffect(() => { + activeRowRef.current?.scrollIntoView({ block: "nearest" }); + }, [activePath, entries.length]); + + const effectiveExpanded = useMemo(() => { + if (filtered.expand.size === 0) return expanded; + // While filtering, matches are shown regardless of what the user has + // collapsed; their own expansion state is preserved for when the query + // is cleared. + return new Set([...expanded, ...filtered.expand]); + }, [expanded, filtered.expand]); + + const toggle = (path: string) => { + setExpanded((current) => { + const next = new Set(current); + if (next.has(path)) next.delete(path); + else next.add(path); + return next; + }); + }; + + return ( + // Sits above the toolbar, so the divider goes on the bottom edge to + // separate the tree from the file bar beneath it. +
+
+ setQuery(event.target.value)} + onKeyDown={(event) => { + // Escape clears a query first, and closes only once the box is + // empty — so it never discards a filter and the panel in one press. + if (event.key !== "Escape") return; + event.stopPropagation(); + if (query !== "") setQuery(""); + else onClose(); + }} + placeholder="Filter files…" + aria-label="Filter files" + spellCheck={false} + className={cn( + "h-6 min-w-0 flex-1 rounded-sm bg-background px-2 text-sm text-foreground", + "placeholder:text-muted-foreground", + "focus-visible:ring-1 focus-visible:ring-ring focus-visible:outline-none", + )} + /> + +
+
+ {error !== null ? ( + {error} + ) : isLoading ? ( + Loading files… + ) : filtered.nodes.length === 0 ? ( + + {query.trim() === "" ? "No files" : `No files match “${query}”`} + + ) : ( + + )} + {truncated && error === null ? ( + + Showing the first {entries.length.toLocaleString()} entries; this + project is larger. + + ) : null} +
+ setMenu(null)} /> +
+ ); +} + +/** Clipboard write with the same toast treatment as the toolbar's path copy. */ +function copy(text: string, successMessage: string): void { + void navigator.clipboard + .writeText(text) + .then(() => toast.success(successMessage)) + .catch(() => toast.error("Failed to copy")); +} + +function Rows({ + activePath, + activeRowRef, + expanded, + level, + nodes, + onContextMenu, + onOpenFile, + onToggle, +}: { + activePath: string; + activeRowRef: React.RefObject; + expanded: ReadonlySet; + level: number; + nodes: readonly TreeNode[]; + onContextMenu: (event: React.MouseEvent, node: TreeNode) => void; + onOpenFile: (path: string) => void; + onToggle: (path: string) => void; +}) { + return ( + <> + {nodes.map((node) => { + const isDirectory = node.kind === "directory"; + const isOpen = isDirectory && expanded.has(node.path); + const isActive = !isDirectory && node.path === activePath; + return ( +
+ + {isDirectory && isOpen ? ( + + ) : null} +
+ ); + })} + + ); +} + +function Chevron({ isOpen }: { isOpen: boolean }) { + return ( + + + + ); +} + +function Message({ + children, + tone, +}: { + children: React.ReactNode; + tone?: "error"; +}) { + return ( +

+ {children} +

+ ); +} diff --git a/plugins/monaco/lib/file-tree.test.ts b/plugins/monaco/lib/file-tree.test.ts new file mode 100644 index 0000000000..c5b1ca5a5c --- /dev/null +++ b/plugins/monaco/lib/file-tree.test.ts @@ -0,0 +1,86 @@ +import { describe, expect, it } from "vitest"; +import { ancestorsOf, buildTree, filterTree } from "./file-tree.js"; + +describe("buildTree", () => { + it("nests flat paths and sorts directories before files", () => { + const tree = buildTree([ + { path: "readme.md", kind: "file" }, + { path: "src", kind: "directory" }, + { path: "src/index.ts", kind: "file" }, + { path: "src/lib", kind: "directory" }, + { path: "src/lib/util.ts", kind: "file" }, + ]); + + expect(tree.map((node) => node.name)).toEqual(["src", "readme.md"]); + const src = tree[0]!; + expect(src.children.map((node) => node.name)).toEqual([ + "lib", + "index.ts", + ]); + expect(src.children[0]!.children[0]!.path).toBe("src/lib/util.ts"); + }); + + // A truncated listing can carry a file whose parent directory entry was cut, + // and dropping it would misrepresent the tree as smaller than it is. + it("synthesises directories that the listing omitted", () => { + const tree = buildTree([{ path: "a/b/c.ts", kind: "file" }]); + + expect(tree).toHaveLength(1); + expect(tree[0]!.kind).toBe("directory"); + expect(tree[0]!.children[0]!.path).toBe("a/b"); + expect(tree[0]!.children[0]!.children[0]!.path).toBe("a/b/c.ts"); + }); + + it("sorts case-insensitively", () => { + const tree = buildTree([ + { path: "beta.ts", kind: "file" }, + { path: "Alpha.ts", kind: "file" }, + ]); + + expect(tree.map((node) => node.name)).toEqual(["Alpha.ts", "beta.ts"]); + }); +}); + +describe("ancestorsOf", () => { + it("lists each containing directory, nearest last", () => { + expect(ancestorsOf("a/b/c.ts")).toEqual(["a", "a/b"]); + }); + + it("has none for a root-level file", () => { + expect(ancestorsOf("readme.md")).toEqual([]); + }); +}); + +describe("filterTree", () => { + const tree = buildTree([ + { path: "src/index.ts", kind: "file" }, + { path: "src/ui/button.tsx", kind: "file" }, + { path: "docs/guide.md", kind: "file" }, + ]); + + it("keeps matches with the directories leading to them, and says which to open", () => { + const filtered = filterTree(tree, "button"); + + expect(filtered.matchCount).toBe(1); + expect(filtered.nodes.map((node) => node.name)).toEqual(["src"]); + // Both ancestors must expand or the match stays hidden behind a collapsed + // row, which is the whole point of filtering. + expect([...filtered.expand].sort()).toEqual(["src", "src/ui"]); + }); + + it("matches on the whole relative path, not just the file name", () => { + expect(filterTree(tree, "src/ui").matchCount).toBe(1); + }); + + it("is case-insensitive and returns nothing when nothing matches", () => { + expect(filterTree(tree, "BUTTON").matchCount).toBe(1); + expect(filterTree(tree, "nothing-here").nodes).toEqual([]); + }); + + it("passes the tree through untouched when the query is blank", () => { + const filtered = filterTree(tree, " "); + + expect(filtered.nodes).toHaveLength(2); + expect(filtered.expand.size).toBe(0); + }); +}); diff --git a/plugins/monaco/lib/file-tree.ts b/plugins/monaco/lib/file-tree.ts new file mode 100644 index 0000000000..228f1c661e --- /dev/null +++ b/plugins/monaco/lib/file-tree.ts @@ -0,0 +1,144 @@ +/** + * Turning the server's flat path list into something a tree view can render. + * Kept free of React so the nesting, filtering, and reveal rules can be read + * (and reasoned about) on their own. + */ + +export type EntryKind = "file" | "directory"; + +export interface FlatEntry { + path: string; + kind: EntryKind; +} + +export interface TreeNode { + /** Root-relative, `/`-separated. Unique; used as the React key. */ + path: string; + name: string; + kind: EntryKind; + /** Empty for files. Directories first, then case-insensitive by name. */ + children: TreeNode[]; +} + +/** + * Nests flat entries. Intermediate directories are synthesised when missing — + * a truncated listing can contain `a/b/c.ts` with no entry for `a/b`, and + * dropping that file would misrepresent the tree as smaller than it is. + */ +export function buildTree(entries: readonly FlatEntry[]): TreeNode[] { + const root: TreeNode = { + path: "", + name: "", + kind: "directory", + children: [], + }; + const byPath = new Map([["", root]]); + + const directoryAt = (path: string): TreeNode => { + const existing = byPath.get(path); + if (existing !== undefined) return existing; + const separator = path.lastIndexOf("/"); + const parent = directoryAt(separator === -1 ? "" : path.slice(0, separator)); + const node: TreeNode = { + path, + name: path.slice(separator + 1), + kind: "directory", + children: [], + }; + byPath.set(path, node); + parent.children.push(node); + return node; + }; + + for (const entry of entries) { + const path = normalize(entry.path); + if (path === "") continue; + if (entry.kind === "directory") { + directoryAt(path); + continue; + } + if (byPath.has(path)) continue; + const separator = path.lastIndexOf("/"); + const parent = directoryAt(separator === -1 ? "" : path.slice(0, separator)); + const node: TreeNode = { + path, + name: path.slice(separator + 1), + kind: "file", + children: [], + }; + byPath.set(path, node); + parent.children.push(node); + } + + sortRecursively(root); + return root.children; +} + +function normalize(path: string): string { + return path.replace(/^\.?\//, "").replace(/\/+$/, ""); +} + +function sortRecursively(node: TreeNode): void { + node.children.sort((left, right) => { + if (left.kind !== right.kind) return left.kind === "directory" ? -1 : 1; + return left.name.localeCompare(right.name, undefined, { + sensitivity: "base", + }); + }); + for (const child of node.children) sortRecursively(child); +} + +/** Every directory containing `path`, nearest last: `a`, `a/b` for `a/b/c.ts`. */ +export function ancestorsOf(path: string): string[] { + const segments = normalize(path).split("/"); + segments.pop(); + const ancestors: string[] = []; + let current = ""; + for (const segment of segments) { + current = current === "" ? segment : `${current}/${segment}`; + ancestors.push(current); + } + return ancestors; +} + +export interface FilteredTree { + nodes: TreeNode[]; + /** Directories to force open so every match is visible without clicking. */ + expand: Set; + matchCount: number; +} + +/** + * Filters to files whose path contains `query`, keeping the directories that + * lead to them. Matching is on the whole relative path, not just the file + * name, so "components/ui" narrows by directory as readily as by file. + */ +export function filterTree(nodes: readonly TreeNode[], query: string): FilteredTree { + const needle = query.trim().toLowerCase(); + if (needle === "") { + return { nodes: [...nodes], expand: new Set(), matchCount: 0 }; + } + + const expand = new Set(); + let matchCount = 0; + + const visit = (node: TreeNode): TreeNode | null => { + if (node.kind === "file") { + if (!node.path.toLowerCase().includes(needle)) return null; + matchCount += 1; + return node; + } + const children = node.children + .map(visit) + .filter((child): child is TreeNode => child !== null); + if (children.length === 0) return null; + expand.add(node.path); + return { ...node, children }; + }; + + return { + nodes: nodes.map(visit).filter((node): node is TreeNode => node !== null), + expand, + matchCount, + }; +} diff --git a/plugins/monaco/lib/languages.ts b/plugins/monaco/lib/languages.ts new file mode 100644 index 0000000000..9b462b462c --- /dev/null +++ b/plugins/monaco/lib/languages.ts @@ -0,0 +1,139 @@ +/** + * The extensions this plugin claims as a file opener, and their Monaco + * language ids. + * + * Claiming an extension makes Monaco the *default* viewer for it the moment + * the plugin is installed: BB picks the first registration matching an + * extension whenever the user has no per-extension preference. Users opt back + * out one extension at a time under Settings → File openers, and that + * settings page renders one row per distinct claimed extension — so this list + * is deliberately "common text and code" rather than exhaustive. + * + * Two kinds of file can never reach us regardless of what is listed here: + * binaries we deliberately leave out (png, pdf, zip — BB's preview renders + * them properly), and files BB reads as having no extension at all, which + * includes dotfiles: its `getFileExtension` returns null when the last dot is + * at index 0 or absent, so `Makefile`, `LICENSE`, and `.gitignore` always use + * the built-in preview. + * + * Extensions must be lowercase alphanumerics with no dot — the SDK rejects + * the registration otherwise. + */ +const LANGUAGE_BY_EXTENSION: Record = { + // Web + js: "javascript", + jsx: "javascript", + mjs: "javascript", + cjs: "javascript", + ts: "typescript", + tsx: "typescript", + mts: "typescript", + cts: "typescript", + html: "html", + htm: "html", + css: "css", + scss: "scss", + less: "less", + vue: "html", + svelte: "html", + + // Data and config + json: "json", + jsonc: "json", + yaml: "yaml", + yml: "yaml", + toml: "ini", + ini: "ini", + cfg: "ini", + conf: "ini", + env: "shell", + xml: "xml", + csv: "plaintext", + tsv: "plaintext", + + // Docs + md: "markdown", + mdx: "markdown", + markdown: "markdown", + txt: "plaintext", + text: "plaintext", + rst: "plaintext", + adoc: "plaintext", + + // Systems + c: "c", + h: "c", + cc: "cpp", + cpp: "cpp", + cxx: "cpp", + hpp: "cpp", + hh: "cpp", + rs: "rust", + go: "go", + zig: "plaintext", + swift: "swift", + m: "objective-c", + mm: "objective-c", + + // JVM / .NET + java: "java", + kt: "kotlin", + kts: "kotlin", + scala: "scala", + groovy: "plaintext", + cs: "csharp", + fs: "fsharp", + + // Scripting + py: "python", + pyi: "python", + rb: "ruby", + php: "php", + pl: "perl", + lua: "lua", + r: "r", + sh: "shell", + bash: "shell", + zsh: "shell", + fish: "shell", + ps1: "powershell", + bat: "bat", + cmd: "bat", + + // Query and schema + sql: "sql", + graphql: "graphql", + gql: "graphql", + proto: "plaintext", + + // Infra + tf: "hcl", + tfvars: "hcl", + hcl: "hcl", + dockerfile: "dockerfile", + + // Other + dart: "dart", + ex: "plaintext", + exs: "plaintext", + erl: "plaintext", + clj: "clojure", + hs: "plaintext", + jl: "julia", + patch: "plaintext", + diff: "plaintext", + log: "plaintext", +}; + +/** Every extension this plugin claims, for `app.slots.fileOpener`. */ +export const CLAIMED_EXTENSIONS: readonly string[] = + Object.keys(LANGUAGE_BY_EXTENSION); + +/** The Monaco language id for a path, defaulting to plaintext. */ +export function languageForPath(path: string): string { + const name = path.split("/").at(-1) ?? path; + const dotIndex = name.lastIndexOf("."); + if (dotIndex <= 0 || dotIndex === name.length - 1) return "plaintext"; + const extension = name.slice(dotIndex + 1).toLowerCase(); + return LANGUAGE_BY_EXTENSION[extension] ?? "plaintext"; +} diff --git a/plugins/monaco/lib/monaco-loader.ts b/plugins/monaco/lib/monaco-loader.ts new file mode 100644 index 0000000000..ccdd7165fb --- /dev/null +++ b/plugins/monaco/lib/monaco-loader.ts @@ -0,0 +1,222 @@ +import type * as MonacoNs from "monaco-editor"; + +/** + * Loads Monaco's prebuilt AMD bundle from a URL at runtime. + * + * Monaco is deliberately NOT bundled into app.js. `bb plugin build` runs one + * fixed esbuild config — single entry, single outfile, no code splitting and + * no loader map — which means the ESM build fails outright (its stylesheet + * pulls in codicon.ttf, and no loader is configured for `.ttf`), and even + * patched around it, a dynamic import cannot split, so all ~4.4 MB would + * parse at app boot for every user with the plugin enabled. Loading the AMD + * build from a URL keeps our bundle at a few KB, defers every byte of Monaco + * until a file tab actually opens, and gets the stylesheet, fonts, workers, + * and on-demand language definitions working exactly as Microsoft ships them. + * + * The URL comes from `bb.sdk.files.createPreview` over `monaco-editor/min/vs` + * (see server.ts) — same origin as the app, so workers are not cross-origin. + * + * Caveat worth knowing: Monaco's README marks the AMD build deprecated. It + * ships in 0.56 and works; if it is ever dropped, the replacement is to serve + * a self-built ESM bundle from the same preview URL, which changes this file + * and nothing else. + */ + +type AmdRequire = { + (modules: string[], onLoad: () => void, onError: (error: unknown) => void): void; + config(options: { paths: Record }): void; +}; + +type MonacoGlobals = { + require?: AmdRequire; + define?: unknown; + monaco?: typeof MonacoNs; + MonacoEnvironment?: unknown; +}; + +/** + * One load per app window, shared by every open editor tab. Keyed by nothing: + * the asset URL can change when a lease is re-issued, but the loader is + * already configured by then and Monaco is in memory, so re-booting it would + * be wasteful and would re-register its global `define`. + */ +let bootPromise: Promise | null = null; + +export function loadMonaco(baseUrl: string): Promise { + bootPromise ??= boot(baseUrl); + return bootPromise; +} + +async function boot(baseUrl: string): Promise { + // Monaco's loader installs `require`/`define`/`monaco` as page globals; + // TypeScript's view of globalThis knows nothing about them. + const globals = globalThis as unknown as MonacoGlobals; + + await injectScript(`${baseUrl}/loader.js`); + const amdRequire = globals.require; + if (!amdRequire) { + throw new Error("Monaco's AMD loader did not install itself"); + } + amdRequire.config({ paths: { vs: baseUrl } }); + + // Deliberately NOT setting MonacoEnvironment: Monaco 0.56's AMD build + // assigns `self.MonacoEnvironment` itself during `editor.main`, with a + // getWorker that builds blob workers from its own bundled worker assets. + // Anything set here is overwritten by it. + await new Promise((resolve, reject) => { + amdRequire( + ["vs/editor/editor.main"], + () => resolve(), + (error) => + reject(error instanceof Error ? error : new Error(String(error))), + ); + }); + + const monaco = globals.monaco; + if (!monaco) { + throw new Error("Monaco loaded but did not expose its API"); + } + configureDiagnostics(monaco); + return monaco; +} + +/** + * Turns off type checking, leaving syntax checking on. + * + * `monaco-editor` bundles the whole TypeScript compiler (its `ts.worker` is + * ~7 MB) and `editor.main` wires it up by default, so opening a `.ts` file + * silently starts a type checker in a web worker. Nothing in BB asks for + * this and BB has no LSP — it is Monaco's own batteries. + * + * That checker has no file system. It sees exactly one file: the open model. + * Every import therefore fails to resolve, and the editor fills with + * "Cannot find module" on imports that are perfectly correct on disk. The + * diagnostics are not just noisy, they are wrong. + * + * Syntax diagnostics stay on: an unbalanced brace is a real error in a + * single file, and reporting it needs no project graph. If BB ever grows + * real language-server support, semantic checking belongs there — with the + * whole project behind it — not in this worker. + */ +interface DiagnosticsDefaults { + setDiagnosticsOptions(options: { + noSemanticValidation: boolean; + noSyntaxValidation: boolean; + noSuggestionDiagnostics: boolean; + }): void; +} + +interface TypescriptNamespace { + typescriptDefaults?: unknown; + javascriptDefaults?: unknown; +} + +function isDiagnosticsDefaults(value: unknown): value is DiagnosticsDefaults { + return ( + typeof value === "object" && + value !== null && + typeof (value as { setDiagnosticsOptions?: unknown }) + .setDiagnosticsOptions === "function" + ); +} + +/** + * Monaco 0.56 deprecated `languages.typescript` in favour of a top-level + * `typescript` namespace, but the AMD build still installs the working + * implementation on `languages` and types the deprecated path as an inert + * `{ deprecated: true }` stub. The declarations and the runtime disagree, so + * probe both and narrow what comes back. + */ +function typescriptNamespaceOf(monaco: typeof MonacoNs): TypescriptNamespace[] { + const candidates: unknown[] = [ + (monaco as { typescript?: unknown }).typescript, + (monaco.languages as { typescript?: unknown } | undefined)?.typescript, + ]; + return candidates.filter( + (candidate): candidate is TypescriptNamespace => + typeof candidate === "object" && candidate !== null, + ); +} + +function configureDiagnostics(monaco: typeof MonacoNs): void { + let configured = 0; + for (const namespace of typescriptNamespaceOf(monaco)) { + for (const defaults of [ + namespace.typescriptDefaults, + namespace.javascriptDefaults, + ]) { + if (!isDiagnosticsDefaults(defaults)) continue; + defaults.setDiagnosticsOptions({ + noSemanticValidation: true, + noSyntaxValidation: false, + noSuggestionDiagnostics: true, + }); + configured += 1; + } + } + if (configured === 0) { + // Not fatal, but the editor will fill with false "Cannot find module" + // errors, and the cause would otherwise be invisible. + console.warn( + "[monaco] could not disable semantic diagnostics: Monaco's typescript" + + " defaults were not found at either the current or deprecated path", + ); + } +} + +const OVERFLOW_NODE_ID = "bb-plugin-monaco-overflow-widgets"; + +/** + * A body-level host for Monaco's "overflow widgets" — hovers, the suggest + * list, the parameter hints, the context menu. + * + * By default Monaco renders these inside the editor's own DOM, where BB's + * panel chrome clips them: a hover wider than the panel is cut off at its + * edge rather than overflowing across the conversation. + * + * `fixedOverflowWidgets: true` alone is not enough here. It switches the + * widgets to `position: fixed`, which normally escapes ancestor clipping — + * but one of the panel's ancestors is a Tailwind `@container`, and + * `container-type: inline-size` establishes a containing block for fixed + * descendants, so they stay trapped. Giving Monaco a node outside that + * subtree is what actually frees them. + * + * Shared by every open editor (Monaco supports that) and deliberately not + * torn down: it is one empty div, and removing it while another tab's editor + * still references it would break that editor's widgets. + */ +export function overflowWidgetsNode(): HTMLElement { + const existing = document.getElementById(OVERFLOW_NODE_ID); + if (existing !== null) return existing; + const node = document.createElement("div"); + node.id = OVERFLOW_NODE_ID; + // Monaco's widget CSS is scoped under `.monaco-editor`, so the host node + // has to carry that class or the hovers render unstyled. + node.className = "monaco-editor"; + node.style.position = "absolute"; + node.style.top = "0"; + node.style.left = "0"; + // Above BB's panel chrome. Kept below the 50+ band that dialogs and the + // app header occupy, and since radix portals mount later in the body they + // still stack over this. + node.style.zIndex = "40"; + document.body.appendChild(node); + return node; +} + +/** Keeps the overflow host on the same Monaco theme as the editors. */ +export function setOverflowWidgetsTheme(theme: "vs" | "vs-dark"): void { + const node = document.getElementById(OVERFLOW_NODE_ID); + if (node !== null) node.className = `monaco-editor ${theme}`; +} + +function injectScript(src: string): Promise { + return new Promise((resolve, reject) => { + const script = document.createElement("script"); + script.src = src; + script.async = true; + script.onload = () => resolve(); + script.onerror = () => reject(new Error(`Failed to load ${src}`)); + document.head.appendChild(script); + }); +} diff --git a/plugins/monaco/package.json b/plugins/monaco/package.json new file mode 100644 index 0000000000..7f92a494aa --- /dev/null +++ b/plugins/monaco/package.json @@ -0,0 +1,64 @@ +{ + "name": "bb-plugin-monaco", + "version": "0.1.0", + "private": true, + "type": "module", + "description": "Edit files in BB with the Monaco editor instead of the read-only preview.", + "license": "MIT", + "homepage": "https://github.com/get-bb/bb#readme", + "bugs": { + "url": "https://github.com/get-bb/bb/issues" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/get-bb/bb.git", + "directory": "plugins/monaco" + }, + "files": [ + "dist", + "server.ts", + "app.tsx", + "components", + "lib", + "README.md" + ], + "engines": { + "bb": ">=0.0", + "bbPluginSdk": ">=0.4.9" + }, + "bb": { + "name": "Monaco", + "description": "Edit files in BB with the Monaco editor instead of the read-only preview.", + "branding": { + "icon": "Code" + }, + "server": "./server.ts", + "app": "./app.tsx" + }, + "keywords": [ + "bb-plugin" + ], + "scripts": { + "test": "vitest run --config vitest.config.ts", + "typecheck": "tsc --noEmit -p tsconfig.json" + }, + "dependencies": { + "@bb/shared-ui": "workspace:*", + "monaco-editor": "^0.56.0", + "zod": "^4.3.6" + }, + "devDependencies": { + "@get-bb/plugin-sdk": "workspace:*", + "@testing-library/react": "^16.3.2", + "@types/node": "^22.0.0", + "@types/react": "^19.0.0", + "@types/react-dom": "^19.0.0", + "jsdom": "^29.0.1", + "react": "^19.0.0", + "react-dom": "^19.0.0", + "sonner": "^1.7.4", + "typescript": "npm:@typescript/typescript6@^6.0.2", + "typescript-7": "npm:typescript@^7.0.2", + "vitest": "^4.1.1" + } +} diff --git a/plugins/monaco/scripts/stage-assets.mjs b/plugins/monaco/scripts/stage-assets.mjs new file mode 100644 index 0000000000..a4629f44b9 --- /dev/null +++ b/plugins/monaco/scripts/stage-assets.mjs @@ -0,0 +1,35 @@ +/** + * Copies Monaco's prebuilt AMD bundle into `dist/vs`. + * + * Packaging ships only a builtin plugin's `dist/` and `skills/` directories + * (`apps/server/scripts/copy-builtin-plugins.ts`), so anything the plugin + * needs on disk at runtime has to be inside `dist/`. The server serves this + * directory over a `files.createPreview` URL and the frontend loads Monaco + * from it; without the copy, a released BB has no Monaco to serve. + * + * Run after `build-official-plugins.mjs`, which clears `dist/` first. + */ +import { cp, mkdir, stat } from "node:fs/promises"; +import { createRequire } from "node:module"; +import path from "node:path"; + +const pluginRoot = path.resolve(import.meta.dirname, ".."); +const require = createRequire(path.join(pluginRoot, "package.json")); + +// `exports` rewrites every subpath to ./esm/vs/*, so resolve the package root +// (whose `require` condition is min/vs/index.js) and take its directory. +const sourceDir = path.dirname(require.resolve("monaco-editor")); +const targetDir = path.join(pluginRoot, "dist", "vs"); + +const loader = path.join(sourceDir, "loader.js"); +try { + await stat(loader); +} catch { + throw new Error( + `monaco-editor's AMD build is missing (${loader}); run npm/pnpm install first`, + ); +} + +await mkdir(path.dirname(targetDir), { recursive: true }); +await cp(sourceDir, targetDir, { recursive: true }); +console.log(`monaco: staged ${sourceDir} -> ${targetDir}`); diff --git a/plugins/monaco/server.ts b/plugins/monaco/server.ts new file mode 100644 index 0000000000..da530629dc --- /dev/null +++ b/plugins/monaco/server.ts @@ -0,0 +1,322 @@ +// bb-plugin-monaco — backend entry. +// +// Three jobs, all in service of the `fileOpener` slot in app.tsx: +// 1. `assets` — hand the frontend a URL it can load Monaco's AMD build from. +// 2. `read` — read the opened file off whichever host owns it. +// 3. `write` — save it back, guarded by a content hash. +// +// Everything file-shaped goes through `bb.sdk.files`, never `node:fs`: the +// file being edited may live on an enrolled remote machine, and `rootPath` +// confinement plus the compare-and-swap guard are the reason to use it even +// when it does not. +import path from "node:path"; +import { existsSync } from "node:fs"; +import { createRequire } from "node:module"; +import { fileURLToPath } from "node:url"; +import { defineRpcContract, type BbPluginApi } from "@get-bb/plugin-sdk"; +import { z } from "zod"; + +/** Files above this are refused: Monaco bogs down and the tab is unusable. */ +const MAX_EDITABLE_BYTES = 8 * 1024 * 1024; + +/** + * Ceiling on the file-tree listing — also the daemon's own maximum, which + * rejects anything larger with "Too big: expected number to be <=10000". + * A repository bigger than this lists partially and says so. + */ +const MAX_TREE_ENTRIES = 10_000; + +/** + * Preview lease lifetime. One hour is the server's maximum — it rejects + * anything larger with "Too big: expected number to be <=3600000" — so the + * lease is re-issued rather than held. + */ +const ASSET_LEASE_TTL_MS = 60 * 60 * 1000; + +/** + * Re-issue the lease when it has less than this left. Comfortably longer than + * a page load, so a tab opening near expiry never races it. + */ +const ASSET_LEASE_REFRESH_MARGIN_MS = 5 * 60 * 1000; + +/** + * `PluginFileOpenerSource` as it arrives over the wire. BB owns this shape; + * we re-validate it because RPC input is a boundary like any other. + */ +const sourceSchema = z + .object({ + kind: z.enum(["workspace", "host", "thread-storage"]), + threadId: z.string().nullable(), + environmentId: z.string().nullable(), + projectId: z.string().nullable(), + /** Set for a project-backed workspace file opened on a non-primary host. */ + experimental_hostId: z.string().optional(), + }) + .strict(); + +const fileSchema = z + .object({ path: z.string().min(1), source: sourceSchema }) + .strict(); + +export const rpcContract = defineRpcContract({ + assets: { + input: z.null(), + output: z.object({ baseUrl: z.string(), expiresAtMs: z.number() }), + }, + read: { + input: fileSchema, + output: z.discriminatedUnion("kind", [ + z.object({ + kind: z.literal("text"), + content: z.string(), + sha256: z.string(), + }), + // Not an error: binary and oversized files are ordinary things to click + // on. The frontend renders BB's own preview for these instead. + z.object({ kind: z.literal("unsupported"), reason: z.string() }), + ]), + }, + tree: { + input: z.object({ source: sourceSchema }).strict(), + output: z.object({ + /** Absolute root the entries are relative to, for "copy absolute path". */ + root: z.string(), + entries: z.array( + z.object({ + path: z.string(), + kind: z.enum(["file", "directory"]), + }), + ), + // The daemon caps its own listing; surfacing the flag lets the UI say + // "showing the first N" instead of quietly presenting a partial tree + // as if it were the whole project. + truncated: z.boolean(), + }), + }, + write: { + input: fileSchema.extend({ + content: z.string(), + // The hash `read` returned. Null means "create only" — we never send it + // today, but the SDK distinguishes it from an absent guard, so the + // contract keeps the distinction rather than collapsing it. + expectedSha256: z.string().nullable(), + }), + output: z.discriminatedUnion("outcome", [ + z.object({ outcome: z.literal("written"), sha256: z.string() }), + z.object({ + outcome: z.literal("conflict"), + currentSha256: z.string().nullable(), + }), + ]), + }, +}); + +/** + * Monaco's prebuilt AMD bundle directory. + * + * Two layouts, because a builtin plugin ships differently from how it is + * developed. Packaging copies only `dist/` and `skills/` (see + * `apps/server/scripts/copy-builtin-plugins.ts`), so `stage-monaco.mjs` puts + * a copy of `min/vs` at `dist/vs` at build time and that is what a released + * BB serves. Running from source there is no `dist/`, so fall back to + * node_modules. + * + * The node_modules lookup resolves the package root rather than the file: + * monaco's `exports` map rewrites every subpath to `./esm/vs/*`, so + * `require.resolve("monaco-editor/min/vs/loader.js")` fails, while resolving + * the root under the `require` condition lands on `min/vs/index.js`. + */ +function resolveMonacoVsDir(): string { + const staged = path.join(path.dirname(fileURLToPath(import.meta.url)), "vs"); + if (existsSync(path.join(staged, "loader.js"))) return staged; + const require = createRequire(import.meta.url); + return path.dirname(require.resolve("monaco-editor")); +} + +export default async function plugin(bb: BbPluginApi) { + const vsDir = resolveMonacoVsDir(); + + let assetLease: { baseUrl: string; expiresAtMs: number } | null = null; + + /** + * A preview URL over Monaco's asset directory, refreshed before it lapses. + * `createPreview` serves any file beneath the root from BB's own origin, + * which is what lets the AMD loader pull `editor.main.js`, the stylesheet, + * and each language definition on demand. + */ + async function assets() { + const now = Date.now(); + if ( + assetLease === null || + assetLease.expiresAtMs - now < ASSET_LEASE_REFRESH_MARGIN_MS + ) { + // No hostId: Monaco lives in this plugin's node_modules, on the server. + assetLease = await bb.sdk.files.createPreview({ + rootPath: vsDir, + ttlMs: ASSET_LEASE_TTL_MS, + }); + } + return assetLease; + } + + /** + * The thread-storage root, mirroring the server's own resolution: the + * `BB_THREAD_STORAGE` override if set, else `/thread-storage`. + * Reading `process.env` is legitimate here — plugins run in-process inside + * the server, so this is the same environment the server resolved from. + */ + async function threadStorageRoot(): Promise { + const override = process.env.BB_THREAD_STORAGE; + if (override && override.trim().length > 0) return path.resolve(override); + const { dataDir } = await bb.sdk.system.config(); + return path.join(dataDir, "thread-storage"); + } + + /** + * Where a file the user clicked actually lives. `workspace` paths are + * worktree-relative and need the environment to become absolute; `host` + * paths are already absolute; thread-storage paths are relative to the + * thread's own storage directory. All three are confined to a root, so a + * traversal in the path cannot escape the worktree, the file's directory, + * or the thread's storage. + * + * BB's public API is read-only over thread storage, so we resolve it to a + * plain filesystem path instead and get editing for free. Known limitation: + * `dataDir` is the *server's*, so a thread whose environment lives on an + * enrolled remote machine resolves to a path that does not exist there and + * fails to open rather than silently touching the wrong host's disk. + */ + async function resolveTarget( + source: z.infer, + filePath: string, + ): Promise<{ path: string; rootPath: string; hostId?: string }> { + if (source.kind === "thread-storage") { + if (source.threadId === null) { + throw new Error("This thread-storage file has no thread"); + } + const rootPath = path.join(await threadStorageRoot(), source.threadId); + return { path: path.join(rootPath, filePath), rootPath }; + } + // A workspace file opened from a project surface has no environment: it + // lives directly in one of the project's source checkouts. `hostId` is + // explicit there, because a project's sources can span hosts. + if (source.environmentId === null && source.kind === "workspace") { + if (source.projectId === null) { + throw new Error("This file has no environment or project"); + } + const project = await bb.sdk.projects.get({ + projectId: source.projectId, + }); + const sources = project.sources; + const checkout = + source.experimental_hostId === undefined + ? (sources.find((entry) => entry.isDefault) ?? sources[0]) + : sources.find( + (entry) => entry.hostId === source.experimental_hostId, + ); + if (checkout === undefined) { + throw new Error("This project has no matching source checkout"); + } + return { + path: path.join(checkout.path, filePath), + rootPath: checkout.path, + hostId: checkout.hostId, + }; + } + if (source.environmentId === null) { + throw new Error("This file has no environment to resolve it against"); + } + const environment = await bb.sdk.environments.get({ + environmentId: source.environmentId, + }); + + if (source.kind === "host") { + // Absolute already; confine to its own directory so the path cannot + // walk somewhere else on the host. + const api = path.win32.isAbsolute(filePath) ? path.win32 : path.posix; + return { + path: filePath, + rootPath: api.dirname(filePath), + ...(environment.hostId ? { hostId: environment.hostId } : {}), + }; + } + + if (!environment.path) { + throw new Error("This environment has no workspace path"); + } + return { + path: path.join(environment.path, filePath), + rootPath: environment.path, + ...(environment.hostId ? { hostId: environment.hostId } : {}), + }; + } + + bb.rpc.register(rpcContract, { + assets: () => assets(), + + async read({ path: filePath, source }) { + const target = await resolveTarget(source, filePath); + const file = await bb.sdk.files.read(target); + + // The daemon returns base64 when the bytes are not valid UTF-8. Handing + // that to Monaco would render mojibake and, worse, saving it would + // corrupt the file. + if (file.contentEncoding !== "utf8") { + return { kind: "unsupported" as const, reason: "This file is not text" }; + } + if (file.sizeBytes > MAX_EDITABLE_BYTES) { + return { + kind: "unsupported" as const, + reason: `This file is too large to edit (${Math.round(file.sizeBytes / 1024 / 1024)} MB)`, + }; + } + return { + kind: "text" as const, + content: file.content, + sha256: file.sha256, + }; + }, + + /** + * The file tree the "Show in files" panel renders, as a flat list of + * root-relative paths; the frontend nests them. + * + * Rooted at the same place `read`/`write` confine to — the worktree for a + * workspace file, the thread's storage directory, the file's own + * directory for a bare host path (there is no project to speak of there). + */ + async tree({ source }) { + const target = await resolveTarget(source, "."); + const result = await bb.sdk.files.listPaths({ + path: target.rootPath, + includeFiles: true, + includeDirectories: true, + limit: MAX_TREE_ENTRIES, + ...(target.hostId !== undefined ? { hostId: target.hostId } : {}), + }); + return { + root: target.rootPath, + entries: result.paths.map((entry) => ({ + path: entry.path, + kind: entry.kind, + })), + truncated: result.truncated, + }; + }, + + async write({ path: filePath, source, content, expectedSha256 }) { + const target = await resolveTarget(source, filePath); + const result = await bb.sdk.files.write({ + ...target, + content, + contentEncoding: "utf8", + expectedSha256, + }); + return result.outcome === "written" + ? { outcome: "written" as const, sha256: result.sha256 } + : { outcome: "conflict" as const, currentSha256: result.currentSha256 }; + }, + }); + + bb.log.info(`serving Monaco from ${vsDir}`); +} diff --git a/plugins/monaco/tsconfig.json b/plugins/monaco/tsconfig.json new file mode 100644 index 0000000000..09f569141b --- /dev/null +++ b/plugins/monaco/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "strict": true, + "target": "ES2022", + "module": "ESNext", + "moduleResolution": "bundler", + "jsx": "react-jsx", + "lib": [ + "ES2022", + "DOM" + ], + "noEmit": true, + "skipLibCheck": true, + "types": [ + "node" + ] + }, + "include": [ + "server.ts", + "app.tsx", + "components", + "lib", + "vitest.config.ts" + ] +} diff --git a/plugins/monaco/vitest.config.ts b/plugins/monaco/vitest.config.ts new file mode 100644 index 0000000000..e7108d919b --- /dev/null +++ b/plugins/monaco/vitest.config.ts @@ -0,0 +1,10 @@ +import { defineWorkspaceTestConfig } from "../../vitest.shared.js"; + +export default defineWorkspaceTestConfig({ + test: { + silent: "passed-only", + name: "bb-plugin-monaco", + include: ["**/*.test.{ts,tsx}"], + exclude: ["node_modules/**"], + }, +}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6ca0dca6a8..ce9691a574 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -3233,6 +3233,55 @@ importers: specifier: ^4.1.1 version: 4.1.1(@opentelemetry/api@1.9.1)(@types/node@22.19.10)(jsdom@29.0.1(@noble/hashes@2.0.1))(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)) + plugins/monaco: + dependencies: + '@bb/shared-ui': + specifier: workspace:* + version: link:../../packages/shared-ui + monaco-editor: + specifier: ^0.56.0 + version: 0.56.0 + zod: + specifier: 4.3.6 + version: 4.3.6 + devDependencies: + '@get-bb/plugin-sdk': + specifier: workspace:* + version: link:../../packages/plugin-sdk + '@testing-library/react': + specifier: ^16.3.2 + version: 16.3.2(@testing-library/dom@10.4.1)(@types/react-dom@19.2.3(@types/react@19.2.13))(@types/react@19.2.13)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + '@types/node': + specifier: ^22.0.0 + version: 22.19.10 + '@types/react': + specifier: ^19.0.0 + version: 19.2.13 + '@types/react-dom': + specifier: ^19.0.0 + version: 19.2.3(@types/react@19.2.13) + jsdom: + specifier: ^29.0.1 + version: 29.0.1(@noble/hashes@2.0.1) + react: + specifier: ^19.0.0 + version: 19.2.4 + react-dom: + specifier: ^19.0.0 + version: 19.2.4(react@19.2.4) + sonner: + specifier: ^1.7.4 + version: 1.7.4(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + typescript: + specifier: npm:@typescript/typescript6@^6.0.2 + version: '@typescript/typescript6@6.0.2' + typescript-7: + specifier: npm:typescript@^7.0.2 + version: typescript@7.0.2 + vitest: + specifier: ^4.1.1 + version: 4.1.1(@opentelemetry/api@1.9.1)(@types/node@22.19.10)(jsdom@29.0.1(@noble/hashes@2.0.1))(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)) + plugins/pdf-preview: devDependencies: '@get-bb/plugin-sdk': @@ -4797,11 +4846,11 @@ packages: '@esbuild-kit/core-utils@3.3.2': resolution: {integrity: sha512-sPRAnw9CdSsRmEtnsl2WXWdyquogVpB3yZ3dgwJfe8zrOzTsV7cJvmwrKVa+0ma5BoiGJ+BoqkMvawbayKUsqQ==} - deprecated: 'Merged into tsx: https://tsx.is' + deprecated: 'Merged into tsx: https://tsx.hirok.io' '@esbuild-kit/esm-loader@2.6.5': resolution: {integrity: sha512-FxEMIkJKnodyA1OaCUoEvbYRkoZlLZ4d/eXFu9Fh8CbBBgP5EmZxrfTRyN0qpXZ4vOvqnE5YdRdcrmUUXuU+dA==} - deprecated: 'Merged into tsx: https://tsx.is' + deprecated: 'Merged into tsx: https://tsx.hirok.io' '@esbuild/aix-ppc64@0.19.12': resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} @@ -5409,7 +5458,7 @@ packages: '@expo/bunyan@4.0.1': resolution: {integrity: sha512-+Lla7nYSiHZirgK+U/uYzsLv/X+HaJienbD5AKX1UQZHYfWaP+9uuQluRB4GrEVWF0GZ7vEVp/jzaOT9k/SQlg==} - engines: {'0': node >=0.10.0} + engines: {node: '>=0.10.0'} '@expo/cli@57.0.16': resolution: {integrity: sha512-+HyMY2nAS6QBJb0nSeMz92p11bZ1AtWSRnhWnklznN07IRoQirisnKq2vr18Ayjb/fnb5F/um+n6FRhF0fZm1Q==} @@ -10343,6 +10392,9 @@ packages: domino@2.1.8: resolution: {integrity: sha512-qLkTcPRkqvifAB0bweVznkWgAu2hwin8An+HbLy0bH1ZtMyJzwXiHKMhynwR1Wq4PgBvEyg2Y749j4JJnlfDKg==} + dompurify@3.4.8: + resolution: {integrity: sha512-yb1cEmaOum7wFvOCSQxyfgVlv5D47Rc30iZWoMpbDIWTnJ6grDDQyu2KFJzB2k7u0pMuJcQ1zphH//fFnw2tjQ==} + dompurify@3.4.9: resolution: {integrity: sha512-4dPSRMRDqHvs0V4YDFCsaIZo4if5u0xM+llyxiM2fwuZFdKArUBAF3VtI2+n8NKg9P870WMdYk0UhqQNoWXbfQ==} @@ -12335,6 +12387,11 @@ packages: markdown-table@3.0.4: resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} + marked@14.0.0: + resolution: {integrity: sha512-uIj4+faQ+MgHgwUW1l2PsPglZLOLOT1uErt06dAPtx2kjteLAkbsd/0FiYg/MGS+i7ZKLb7w2WClxHkzOOuryQ==} + engines: {node: '>= 18'} + hasBin: true + marked@16.4.2: resolution: {integrity: sha512-TI3V8YYWvkVf3KJe1dRkpnjs68JUPyEa5vjKrp1XEEJUAOaQc+Qj+L1qWbPd0SJuAdQkFU0h73sXXqwDYxsiDA==} engines: {node: '>= 20'} @@ -12786,6 +12843,9 @@ packages: moment@2.30.1: resolution: {integrity: sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==} + monaco-editor@0.56.0: + resolution: {integrity: sha512-sXboRm3BeBeLm938eaiyLMe0OxzfXIlZvbv4ir/jVgQy1zDhWjgmny0WoN45fuDKhCCQsYMbBJrv/A6jd8aCUg==} + ms@2.0.0: resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} @@ -19373,7 +19433,9 @@ snapshots: metro-runtime: 0.84.5 transitivePeerDependencies: - '@babel/core' + - bufferutil - supports-color + - utf-8-validate '@react-native/normalize-colors@0.79.6': {} @@ -22618,6 +22680,10 @@ snapshots: domino@2.1.8: {} + dompurify@3.4.8: + optionalDependencies: + '@types/trusted-types': 2.0.7 + dompurify@3.4.9: optionalDependencies: '@types/trusted-types': 2.0.7 @@ -24915,6 +24981,8 @@ snapshots: markdown-table@3.0.4: {} + marked@14.0.0: {} + marked@16.4.2: {} marked@18.0.5: {} @@ -25890,6 +25958,11 @@ snapshots: moment@2.30.1: optional: true + monaco-editor@0.56.0: + dependencies: + dompurify: 3.4.8 + marked: 14.0.0 + ms@2.0.0: {} ms@2.1.3: {} diff --git a/turbo.json b/turbo.json index 0b34e45d4b..96bb39d176 100644 --- a/turbo.json +++ b/turbo.json @@ -707,6 +707,12 @@ "bb-plugin-memory#typecheck": { "dependsOn": ["@get-bb/plugin-sdk#build:types", "topo"] }, + "bb-plugin-monaco#typecheck": { + "dependsOn": [ + "@get-bb/plugin-sdk#build:types", + "topo" + ] + }, "bb-plugin-pdf-preview#typecheck": { "dependsOn": ["@get-bb/plugin-sdk#build:types", "topo"] }, From a5187239998396ba2bc2f18150653aafb8aead5d Mon Sep 17 00:00:00 2001 From: Andrew Chan Date: Thu, 20 Aug 2026 19:07:57 -0700 Subject: [PATCH 2/9] Drop the screenshot from the upstreamed plugin README A 400 KB PNG in the repo for a README heading is weight the tree does not need to carry; the standalone plugin keeps it. Co-Authored-By: Claude Opus 5 (1M context) --- plugins/monaco/README.md | 5 ----- plugins/monaco/assets/monaco-editor.png | Bin 401507 -> 0 bytes 2 files changed, 5 deletions(-) delete mode 100644 plugins/monaco/assets/monaco-editor.png diff --git a/plugins/monaco/README.md b/plugins/monaco/README.md index 7cf52a4300..ddf1a5405d 100644 --- a/plugins/monaco/README.md +++ b/plugins/monaco/README.md @@ -6,11 +6,6 @@ the editor from VS Code, instead of BB's read-only file preview. It applies everywhere BB opens a file: links clicked in chat, the secondary panel's file search, and `bb thread open`. -![The Monaco editor in BB's secondary panel, with the file tree open above -it: a filter box, the project tree expanded to reveal the open -packages/process-utils/src/index.ts, and the file bar showing that path with -reload and tree-toggle buttons.](assets/monaco-editor.png) - ## Features - **Edit and save.** ⌘S writes the file. If it changed on disk diff --git a/plugins/monaco/assets/monaco-editor.png b/plugins/monaco/assets/monaco-editor.png deleted file mode 100644 index f124e9ead0a47b67c295189291c98ae0f5f58e88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 401507 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೾rWg_EYFu6J&^4mN6e9`4 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∓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�go{`KSe=Gc?w26;F*+ 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

6^` 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 z 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 Date: Tue, 25 Aug 2026 14:19:18 -0700 Subject: [PATCH 3/9] Add the Monaco quick-palette commands MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ports the folding, sorting, and copy-path rows from the standalone plugin. The palette's `run` gets a thread id and a project id but no route to a file tab, so editors publish themselves to a module-level last-focused slot that the commands read back — the palette and every mounted fileOpener are the same bundle in one browser context. Sort rows require a real multi-line selection: Monaco treats an empty or single-line selection as "sort the whole document", which is a lot of damage from a row reached by typing "sort". `read` now returns the file's absolute and root-relative paths so the copy rows need no second round trip. Drops the standalone version's guard for a missing commandPaletteAction slot: a builtin ships with the BB that defines it. Co-Authored-By: Claude Opus 5 (1M context) --- plugins/monaco/README.md | 6 + plugins/monaco/app.tsx | 33 ++++- plugins/monaco/lib/editor-commands.ts | 185 ++++++++++++++++++++++++++ plugins/monaco/server.ts | 26 ++++ 4 files changed, 249 insertions(+), 1 deletion(-) create mode 100644 plugins/monaco/lib/editor-commands.ts diff --git a/plugins/monaco/README.md b/plugins/monaco/README.md index ddf1a5405d..5f19ed4b37 100644 --- a/plugins/monaco/README.md +++ b/plugins/monaco/README.md @@ -18,6 +18,12 @@ panel's file search, and `bb thread open`. path, expand and collapse directories, and jump to another file. It opens with the current file revealed. Right-click any row to copy its absolute path, relative path, or filename. +- **Quick palette commands.** Open the quick palette (⌘⇧P) and + type "fold", "sort", or "copy" to reach *fold level 1–5*, *fold + recursively*, *unfold all*, *unfold recursively*, *unfold at cursor*, + *sort selected lines ascending/descending*, and *copy the path / relative + path of the current file*. The sort rows appear only with a multi-line + selection, and every row acts on the Monaco tab you last worked in. - **Follows your theme,** including light/dark switches and custom palettes. ## Development diff --git a/plugins/monaco/app.tsx b/plugins/monaco/app.tsx index fdc7d4b1cc..744365a044 100644 --- a/plugins/monaco/app.tsx +++ b/plugins/monaco/app.tsx @@ -23,6 +23,13 @@ import { cn } from "@bb/shared-ui/lib/utils"; import { FileToolbar, type SaveIndicator } from "./components/FileToolbar.js"; import { FileTreePanel } from "./components/FileTreePanel.js"; import type { FlatEntry } from "./lib/file-tree.js"; +import { + EDITOR_COMMANDS, + forgetEditor, + isCommandAvailable, + markEditorActive, + runEditorCommand, +} from "./lib/editor-commands.js"; type SaveState = | { kind: "clean" } @@ -50,7 +57,7 @@ function useMonacoTheme(): "vs-dark" | "vs" { function MonacoFileOpener({ path, source, - experimental_Original: Original, + Original, }: PluginFileOpenerProps) { const rpc = useRpc(); const theme = useMonacoTheme(); @@ -313,6 +320,17 @@ function MonacoFileOpener({ overflowWidgetsDomNode: overflowWidgetsNode(), }); editorRef.current = editor; + // Publish to the quick-palette commands, which have no other route to + // a file tab. Creating counts as becoming active — the tab the user + // just opened is the one they mean — and focus keeps it current + // afterwards as they move between tabs and panes. + const active = { + editor, + absolutePath: file.absolutePath, + relativePath: file.relativePath, + }; + markEditorActive(active); + editor.onDidFocusEditorWidget(() => markEditorActive(active)); setStatus({ kind: "ready" }); editor.onDidChangeModelContent(() => { @@ -336,6 +354,7 @@ function MonacoFileOpener({ return () => { disposed = true; + if (editorRef.current) forgetEditor(editorRef.current); editorRef.current?.getModel()?.dispose(); editorRef.current?.dispose(); editorRef.current = null; @@ -532,4 +551,16 @@ export default definePluginApp((app) => { extensions: CLAIMED_EXTENSIONS, component: MonacoFileOpener, }); + + // Folding and sorting are Monaco's, not ours — the palette rows only give + // them a name the user can type, since BB owns the editor's keybindings + // and its own chords reach the palette first. + for (const command of EDITOR_COMMANDS) { + app.slots.commandPaletteAction({ + id: command.id, + title: command.title, + isAvailable: () => isCommandAvailable(command), + run: () => runEditorCommand(command), + }); + } }); diff --git a/plugins/monaco/lib/editor-commands.ts b/plugins/monaco/lib/editor-commands.ts new file mode 100644 index 0000000000..5b5b9a8c08 --- /dev/null +++ b/plugins/monaco/lib/editor-commands.ts @@ -0,0 +1,185 @@ +import { toast } from "sonner"; +import type * as MonacoNs from "monaco-editor"; + +type Editor = MonacoNs.editor.IStandaloneCodeEditor; + +/** An editor plus what a command needs to know about the file in it. */ +export type ActiveEditor = { + editor: Editor; + /** Where the file lives on the host that owns it. */ + absolutePath: string; + /** That path within the workspace (or storage directory) root. */ + relativePath: string; +}; + +/** + * The editor a quick-palette command should act on. + * + * The palette is host chrome mounted beside the routes: its `run` receives a + * thread id, a project id, and an `openPanel` — nothing that reaches a file + * tab. But the palette and every mounted `fileOpener` are the same plugin + * bundle in one browser context, so the editors can simply publish + * themselves here and the commands can read them back. + * + * "Which editor" is the whole problem. A user can have several Monaco tabs + * open across split panes, all mounted at once. Last-focused is the answer + * that matches what the palette user means by "the editor": they clicked or + * typed in it a moment ago, then hit the palette shortcut, which moved focus + * to the palette input. + */ +let lastFocused: ActiveEditor | null = null; + +/** Called on create and on every focus, so the newest tab wins immediately. */ +export function markEditorActive(active: ActiveEditor): void { + lastFocused = active; +} + +/** Called when an editor unmounts; a disposed editor must never be reachable. */ +export function forgetEditor(editor: Editor): void { + if (lastFocused?.editor === editor) lastFocused = null; +} + +/** + * The last-focused editor, if it is still on screen. + * + * Being remembered is not enough: the user can switch to another tab, leaving + * our editor mounted but hidden, and folding a buffer nobody can see would be + * a command that appears to do nothing. `isConnected` rules out a torn-down + * node, `offsetParent` a hidden one — the container is statically positioned, + * so a null parent means an ancestor is `display: none`. + */ +function targetEditor(): ActiveEditor | null { + const node = lastFocused?.editor.getDomNode(); + if (!node || !node.isConnected || node.offsetParent === null) return null; + return lastFocused; +} + +/** + * True when the selection spans more than one line. + * + * Monaco's sort actions treat an empty or single-line selection as "sort the + * whole document", which is a surprising amount of damage to do to a file + * from a palette row the user reached by typing "sort". Requiring a real + * multi-line selection keeps the command meaning what its title says. + */ +function hasMultiLineSelection({ editor }: ActiveEditor): boolean { + return ( + editor + .getSelections() + ?.some( + (selection) => + !selection.isEmpty() && + selection.startLineNumber !== selection.endLineNumber, + ) ?? false + ); +} + +export type EditorCommand = { + /** Palette row id, unique within this plugin. */ + id: string; + /** Palette row label. The palette matches on this text. */ + title: string; + /** Extra condition beyond "there is a visible editor". */ + precondition?: (active: ActiveEditor) => boolean; + run: (active: ActiveEditor) => void | Promise; +}; + +/** A palette row that runs one of Monaco's own editor actions. */ +function monacoAction( + id: string, + title: string, + actionId: string, + precondition?: (active: ActiveEditor) => boolean, +): EditorCommand { + return { + id, + title, + precondition, + run: async ({ editor }) => { + // The palette took focus, and the fold actions are gated on + // `editorTextFocus`. + editor.focus(); + await editor.getAction(actionId)?.run(); + }, + }; +} + +/** Clipboard write with the same toast treatment as the file tree's copies. */ +function copy(text: string, successMessage: string): Promise { + return navigator.clipboard + .writeText(text) + .then(() => { + toast.success(successMessage); + }) + .catch(() => { + toast.error("Failed to copy"); + }); +} + +export const EDITOR_COMMANDS: readonly EditorCommand[] = [ + // Monaco registers `editor.foldLevel1` through `editor.foldLevel7`; the + // first five are the ones with any practical use on real files. + ...[1, 2, 3, 4, 5].map((level) => + monacoAction( + `fold-level-${level}`, + `Monaco: fold level ${level}`, + `editor.foldLevel${level}`, + ), + ), + monacoAction( + "fold-recursively", + "Monaco: fold recursively", + "editor.foldRecursively", + ), + // Monaco has no "unfold level N" to mirror the rows above — collapsing is + // level-based, expanding is not — so "unfold all" is what undoes them. + monacoAction("unfold-all", "Monaco: unfold all", "editor.unfoldAll"), + monacoAction( + "unfold-recursively", + "Monaco: unfold recursively", + "editor.unfoldRecursively", + ), + monacoAction("unfold", "Monaco: unfold at cursor", "editor.unfold"), + monacoAction( + "sort-lines-ascending", + "Monaco: sort selected lines ascending", + "editor.action.sortLinesAscending", + hasMultiLineSelection, + ), + monacoAction( + "sort-lines-descending", + "Monaco: sort selected lines descending", + "editor.action.sortLinesDescending", + hasMultiLineSelection, + ), + { + id: "copy-path", + title: "Monaco: copy path of current file", + run: ({ absolutePath }) => copy(absolutePath, "Absolute path copied"), + }, + { + id: "copy-relative-path", + title: "Monaco: copy relative path of current file", + run: ({ relativePath }) => copy(relativePath, "Relative path copied"), + }, +]; + +/** Whether the palette should list this command right now. */ +export function isCommandAvailable(command: EditorCommand): boolean { + const active = targetEditor(); + if (!active) return false; + return command.precondition?.(active) ?? true; +} + +/** + * Runs the command against the editor in view. + * + * Re-checking availability here rather than trusting the earlier + * `isAvailable` matters because the palette can sit open while the tab it was + * listed for closes. + */ +export async function runEditorCommand(command: EditorCommand): Promise { + const active = targetEditor(); + if (!active || !(command.precondition?.(active) ?? true)) return; + await command.run(active); +} diff --git a/plugins/monaco/server.ts b/plugins/monaco/server.ts index da530629dc..bd7dca8e98 100644 --- a/plugins/monaco/server.ts +++ b/plugins/monaco/server.ts @@ -70,6 +70,16 @@ export const rpcContract = defineRpcContract({ kind: z.literal("text"), content: z.string(), sha256: z.string(), + /** + * Where the file actually lives, and its path within the root + * `read`/`write` confine to. The frontend has neither: BB hands the + * opener a path relative to the workspace (or an absolute one, for a + * host file), and resolving it needs the environment lookup that only + * happens here. Returned with the content so the "copy path" palette + * commands need no second round trip. + */ + absolutePath: z.string(), + relativePath: z.string(), }), // Not an error: binary and oversized files are ordinary things to click // on. The frontend renders BB's own preview for these instead. @@ -251,6 +261,16 @@ export default async function plugin(bb: BbPluginApi) { }; } + /** + * `root`-relative form of `target`. The daemon may hand back a Windows + * root, so pick the path flavour from the root rather than the host we + * happen to be running on. + */ + function relativeTo(root: string, target: string): string { + const api = path.win32.isAbsolute(root) ? path.win32 : path.posix; + return api.relative(root, target) || api.basename(target); + } + bb.rpc.register(rpcContract, { assets: () => assets(), @@ -274,6 +294,12 @@ export default async function plugin(bb: BbPluginApi) { kind: "text" as const, content: file.content, sha256: file.sha256, + absolutePath: target.path, + // Same rooting as `tree`, so the two agree on what "relative" means: + // the worktree for a workspace file, the thread's storage directory, + // and — for a bare host path — the file's own directory, which leaves + // just the filename. + relativePath: relativeTo(target.rootPath, target.path), }; }, From 786df89da5e17174a8e5cf96cd258b55440845d1 Mon Sep 17 00:00:00 2001 From: Andrew Chan Date: Tue, 25 Aug 2026 14:35:55 -0700 Subject: [PATCH 4/9] Build Monaco instead of shipping its prebuilt tree: 25 MB to 4.8 MB MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The packaged builtin carried Monaco's whole AMD distribution because that was the only browser-loadable form on hand. Most of it was never used: ~14 MB is the TypeScript language service and its worker, which this plugin disables outright, and another ~2.6 MB is the CSS, HTML, and JSON services it never asks for. `scripts/stage-assets.mjs` now runs esbuild over a narrow entry — the editor plus `basic-languages`, which is what syntax highlighting actually is — and emits `dist/monaco/{editor.js,editor.css, editor.worker.js}`. Reachability is proven by the bundler rather than decided by deleting directories, so nothing pruned can be requested later at runtime; the alternative was instrumenting every fetch across all 86 claimed languages and hoping the matrix was complete. The loader moves from AMD to a plain `import()` of the built module, which also retires the deprecated AMD path Monaco's README warns about. The diagnostics-disabling code goes with it: the trimmed bundle has no TypeScript language service to switch off. JSON now highlights as JavaScript. Monaco has no basic-language for it — JSON support is a full language service costing ~1.6 MB — and JSON is a subset of JavaScript's object syntax, so tokenization is correct. A new test asserts every claimed extension maps to a language the built bundle actually registers. It caught exactly this JSON gap on its first run, which is the failure mode the whole change risks. Shipped builtin: 25 MB to 4.8 MB (Monaco 3.3 MB; the rest is the plugin bundles and the server sourcemap). app.js is unchanged at 24 KB. Co-Authored-By: Claude Opus 5 (1M context) --- plugins/monaco/README.md | 23 ++- plugins/monaco/lib/languages.test.ts | 60 +++++++ plugins/monaco/lib/languages.ts | 12 +- plugins/monaco/lib/monaco-loader.ts | 200 ++++++------------------ plugins/monaco/monaco-bundle/editor.js | 17 ++ plugins/monaco/monaco-bundle/worker.js | 6 + plugins/monaco/package.json | 4 +- plugins/monaco/scripts/stage-assets.mjs | 77 ++++++--- plugins/monaco/server.ts | 43 ++--- pnpm-lock.yaml | 36 ++++- 10 files changed, 270 insertions(+), 208 deletions(-) create mode 100644 plugins/monaco/lib/languages.test.ts create mode 100644 plugins/monaco/monaco-bundle/editor.js create mode 100644 plugins/monaco/monaco-bundle/worker.js diff --git a/plugins/monaco/README.md b/plugins/monaco/README.md index 5f19ed4b37..a54e72808d 100644 --- a/plugins/monaco/README.md +++ b/plugins/monaco/README.md @@ -34,12 +34,23 @@ Ships with BB as a builtin; there is nothing to install. pnpm exec turbo run typecheck test --filter=bb-plugin-monaco ``` -Monaco's AMD build is what the editor loads at runtime, and packaging copies -only a builtin's `dist/`, so `scripts/stage-assets.mjs` copies -`monaco-editor/min/vs` into `dist/vs` during the build -(`apps/server/scripts/copy-builtin-plugins.ts` runs it). Running from source -there is no `dist/`, and the server falls back to resolving `monaco-editor` -from `node_modules`. +`scripts/stage-assets.mjs` builds the Monaco bundle the editor loads, into +`dist/monaco` — packaging copies only a builtin's `dist/`, and +`apps/server/scripts/copy-builtin-plugins.ts` runs the script. Build it +directly with `pnpm --filter bb-plugin-monaco build:monaco`. + +Monaco is built rather than bundled into `app.js` because `bb plugin build` +emits one file with no code splitting: Monaco would parse at app boot for +everyone, including users who never open a file, and its worker could not be +emitted at all. `lib/monaco-loader.ts` loads the built files from a +`files.createPreview` URL the first time a file tab opens. + +`monaco-bundle/editor.js` is the entry, and it is deliberately narrow: the +editor plus `basic-languages` (the Monarch grammars), without the CSS, HTML, +JSON, and TypeScript *language services* this plugin does not use. esbuild +proves what is reachable from it, so the result is 3.3 MB rather than the +24 MB of Monaco's prebuilt tree, with no risk that something pruned is +requested later at runtime. ## Which files it opens diff --git a/plugins/monaco/lib/languages.test.ts b/plugins/monaco/lib/languages.test.ts new file mode 100644 index 0000000000..7c2a421b0b --- /dev/null +++ b/plugins/monaco/lib/languages.test.ts @@ -0,0 +1,60 @@ +import { describe, expect, it } from "vitest"; +import { CLAIMED_EXTENSIONS, languageForPath } from "./languages.js"; + +/** + * The Monaco bundle is trimmed to `basic-languages` (see + * `monaco-bundle/editor.js`), so a language this plugin maps to must still be + * one Monaco registers. Reads the built bundle rather than importing Monaco: + * the point is to check what actually ships, and importing `monaco-editor` + * here would prove nothing about the artifact. + */ +async function bundledLanguageIds(): Promise | null> { + const { readFile } = await import("node:fs/promises"); + const { fileURLToPath } = await import("node:url"); + const path = await import("node:path"); + const bundle = path.join( + path.dirname(fileURLToPath(import.meta.url)), + "..", + "dist", + "monaco", + "editor.js", + ); + let source: string; + try { + source = await readFile(bundle, "utf8"); + } catch { + return null; + } + // Every basic-language registers itself with `id:""` in its + // language declaration; the minified bundle keeps those string literals. + return new Set( + [...source.matchAll(/id:"([a-z0-9+#-]+)"/g)].map((match) => match[1]!), + ); +} + +describe("claimed languages", () => { + it("maps every claimed extension to a language id", () => { + for (const extension of CLAIMED_EXTENSIONS) { + expect(languageForPath(`file.${extension}`)).toBeTruthy(); + } + }); + + it("only maps to languages the shipped bundle registers", async () => { + const bundled = await bundledLanguageIds(); + if (bundled === null) { + // The bundle is a build artifact; a source checkout that has not run + // `build:monaco` should not fail here. + expect(CLAIMED_EXTENSIONS.length).toBeGreaterThan(0); + return; + } + const missing = [ + ...new Set( + CLAIMED_EXTENSIONS.map((extension) => languageForPath(`f.${extension}`)), + ), + ] + // Monaco always has plaintext; it has no basic-language declaration. + .filter((language) => language !== "plaintext" && !bundled.has(language)); + + expect(missing).toEqual([]); + }); +}); diff --git a/plugins/monaco/lib/languages.ts b/plugins/monaco/lib/languages.ts index 9b462b462c..49c5cf973a 100644 --- a/plugins/monaco/lib/languages.ts +++ b/plugins/monaco/lib/languages.ts @@ -38,8 +38,16 @@ const LANGUAGE_BY_EXTENSION: Record = { svelte: "html", // Data and config - json: "json", - jsonc: "json", + // JSON is highlighted as JavaScript on purpose. Monaco has no + // basic-language for JSON — its JSON support is a full language service, + // and pulling that in costs ~1.6 MB (bundle, stylesheet, and its own + // worker) for what is, without a schema, highlighting we already have: + // JSON is a subset of JavaScript's object syntax, so strings, numbers, + // keywords, and brackets all tokenize correctly, and `jsonc` comments do + // too. If JSON schema validation is ever wanted, that is the point to + // reconsider — `monaco-bundle/editor.js` is where it would go. + json: "javascript", + jsonc: "javascript", yaml: "yaml", yml: "yaml", toml: "ini", diff --git a/plugins/monaco/lib/monaco-loader.ts b/plugins/monaco/lib/monaco-loader.ts index ccdd7165fb..b541c70b6e 100644 --- a/plugins/monaco/lib/monaco-loader.ts +++ b/plugins/monaco/lib/monaco-loader.ts @@ -1,45 +1,21 @@ import type * as MonacoNs from "monaco-editor"; /** - * Loads Monaco's prebuilt AMD bundle from a URL at runtime. + * Loads the Monaco bundle this plugin builds for itself, from a URL, the + * first time a file tab opens. * - * Monaco is deliberately NOT bundled into app.js. `bb plugin build` runs one - * fixed esbuild config — single entry, single outfile, no code splitting and - * no loader map — which means the ESM build fails outright (its stylesheet - * pulls in codicon.ttf, and no loader is configured for `.ttf`), and even - * patched around it, a dynamic import cannot split, so all ~4.4 MB would - * parse at app boot for every user with the plugin enabled. Loading the AMD - * build from a URL keeps our bundle at a few KB, defers every byte of Monaco - * until a file tab actually opens, and gets the stylesheet, fonts, workers, - * and on-demand language definitions working exactly as Microsoft ships them. + * Not bundled into app.js: `bb plugin build` emits one file with no code + * splitting, so Monaco would parse at app boot for every user — including + * everyone who never opens a file — and its worker could not be emitted at + * all. Loading it from a URL keeps the plugin bundle at a few KB and defers + * every byte of Monaco until it is needed. * - * The URL comes from `bb.sdk.files.createPreview` over `monaco-editor/min/vs` - * (see server.ts) — same origin as the app, so workers are not cross-origin. - * - * Caveat worth knowing: Monaco's README marks the AMD build deprecated. It - * ships in 0.56 and works; if it is ever dropped, the replacement is to serve - * a self-built ESM bundle from the same preview URL, which changes this file - * and nothing else. + * The bundle is built by `scripts/stage-assets.mjs` into `dist/monaco` and + * served by `bb.sdk.files.createPreview` (see server.ts) — same origin as the + * app, so the worker is not cross-origin. */ -type AmdRequire = { - (modules: string[], onLoad: () => void, onError: (error: unknown) => void): void; - config(options: { paths: Record }): void; -}; - -type MonacoGlobals = { - require?: AmdRequire; - define?: unknown; - monaco?: typeof MonacoNs; - MonacoEnvironment?: unknown; -}; - -/** - * One load per app window, shared by every open editor tab. Keyed by nothing: - * the asset URL can change when a lease is re-issued, but the loader is - * already configured by then and Monaco is in memory, so re-booting it would - * be wasteful and would re-register its global `define`. - */ +/** One load per app window, shared by every open editor tab. */ let bootPromise: Promise | null = null; export function loadMonaco(baseUrl: string): Promise { @@ -47,121 +23,46 @@ export function loadMonaco(baseUrl: string): Promise { return bootPromise; } -async function boot(baseUrl: string): Promise { - // Monaco's loader installs `require`/`define`/`monaco` as page globals; - // TypeScript's view of globalThis knows nothing about them. - const globals = globalThis as unknown as MonacoGlobals; - - await injectScript(`${baseUrl}/loader.js`); - const amdRequire = globals.require; - if (!amdRequire) { - throw new Error("Monaco's AMD loader did not install itself"); - } - amdRequire.config({ paths: { vs: baseUrl } }); - - // Deliberately NOT setting MonacoEnvironment: Monaco 0.56's AMD build - // assigns `self.MonacoEnvironment` itself during `editor.main`, with a - // getWorker that builds blob workers from its own bundled worker assets. - // Anything set here is overwritten by it. - await new Promise((resolve, reject) => { - amdRequire( - ["vs/editor/editor.main"], - () => resolve(), - (error) => - reject(error instanceof Error ? error : new Error(String(error))), - ); - }); +interface MonacoModule { + monaco?: typeof MonacoNs; +} - const monaco = globals.monaco; +async function boot(baseUrl: string): Promise { + // Monaco styles its widgets from a stylesheet esbuild emits beside the + // bundle; without it the editor mounts and paints nothing. + await injectStylesheet(`${baseUrl}/editor.css`); + + // Workers are same-origin, so a plain module worker is enough — no blob + // trampoline. Set before the editor loads: Monaco reads this when it first + // needs a worker, which can be during the first `create`. + (globalThis as { MonacoEnvironment?: unknown }).MonacoEnvironment = { + getWorker: () => + new Worker(new URL(`${baseUrl}/editor.worker.js`, window.location.origin), { + type: "module", + }), + }; + + // The URL is a runtime value, so the plugin's own bundler leaves this + // import alone rather than trying to inline the module. + const loaded: MonacoModule = await import( + /* @vite-ignore */ `${baseUrl}/editor.js` + ); + const monaco = loaded.monaco; if (!monaco) { - throw new Error("Monaco loaded but did not expose its API"); + throw new Error("the Monaco bundle did not expose its API"); } - configureDiagnostics(monaco); return monaco; } -/** - * Turns off type checking, leaving syntax checking on. - * - * `monaco-editor` bundles the whole TypeScript compiler (its `ts.worker` is - * ~7 MB) and `editor.main` wires it up by default, so opening a `.ts` file - * silently starts a type checker in a web worker. Nothing in BB asks for - * this and BB has no LSP — it is Monaco's own batteries. - * - * That checker has no file system. It sees exactly one file: the open model. - * Every import therefore fails to resolve, and the editor fills with - * "Cannot find module" on imports that are perfectly correct on disk. The - * diagnostics are not just noisy, they are wrong. - * - * Syntax diagnostics stay on: an unbalanced brace is a real error in a - * single file, and reporting it needs no project graph. If BB ever grows - * real language-server support, semantic checking belongs there — with the - * whole project behind it — not in this worker. - */ -interface DiagnosticsDefaults { - setDiagnosticsOptions(options: { - noSemanticValidation: boolean; - noSyntaxValidation: boolean; - noSuggestionDiagnostics: boolean; - }): void; -} - -interface TypescriptNamespace { - typescriptDefaults?: unknown; - javascriptDefaults?: unknown; -} - -function isDiagnosticsDefaults(value: unknown): value is DiagnosticsDefaults { - return ( - typeof value === "object" && - value !== null && - typeof (value as { setDiagnosticsOptions?: unknown }) - .setDiagnosticsOptions === "function" - ); -} - -/** - * Monaco 0.56 deprecated `languages.typescript` in favour of a top-level - * `typescript` namespace, but the AMD build still installs the working - * implementation on `languages` and types the deprecated path as an inert - * `{ deprecated: true }` stub. The declarations and the runtime disagree, so - * probe both and narrow what comes back. - */ -function typescriptNamespaceOf(monaco: typeof MonacoNs): TypescriptNamespace[] { - const candidates: unknown[] = [ - (monaco as { typescript?: unknown }).typescript, - (monaco.languages as { typescript?: unknown } | undefined)?.typescript, - ]; - return candidates.filter( - (candidate): candidate is TypescriptNamespace => - typeof candidate === "object" && candidate !== null, - ); -} - -function configureDiagnostics(monaco: typeof MonacoNs): void { - let configured = 0; - for (const namespace of typescriptNamespaceOf(monaco)) { - for (const defaults of [ - namespace.typescriptDefaults, - namespace.javascriptDefaults, - ]) { - if (!isDiagnosticsDefaults(defaults)) continue; - defaults.setDiagnosticsOptions({ - noSemanticValidation: true, - noSyntaxValidation: false, - noSuggestionDiagnostics: true, - }); - configured += 1; - } - } - if (configured === 0) { - // Not fatal, but the editor will fill with false "Cannot find module" - // errors, and the cause would otherwise be invisible. - console.warn( - "[monaco] could not disable semantic diagnostics: Monaco's typescript" + - " defaults were not found at either the current or deprecated path", - ); - } +function injectStylesheet(href: string): Promise { + return new Promise((resolve, reject) => { + const link = document.createElement("link"); + link.rel = "stylesheet"; + link.href = href; + link.onload = () => resolve(); + link.onerror = () => reject(new Error(`Failed to load ${href}`)); + document.head.appendChild(link); + }); } const OVERFLOW_NODE_ID = "bb-plugin-monaco-overflow-widgets"; @@ -209,14 +110,3 @@ export function setOverflowWidgetsTheme(theme: "vs" | "vs-dark"): void { const node = document.getElementById(OVERFLOW_NODE_ID); if (node !== null) node.className = `monaco-editor ${theme}`; } - -function injectScript(src: string): Promise { - return new Promise((resolve, reject) => { - const script = document.createElement("script"); - script.src = src; - script.async = true; - script.onload = () => resolve(); - script.onerror = () => reject(new Error(`Failed to load ${src}`)); - document.head.appendChild(script); - }); -} diff --git a/plugins/monaco/monaco-bundle/editor.js b/plugins/monaco/monaco-bundle/editor.js new file mode 100644 index 0000000000..bebe3ac3d2 --- /dev/null +++ b/plugins/monaco/monaco-bundle/editor.js @@ -0,0 +1,17 @@ +/** + * The Monaco we actually ship. + * + * Importing `monaco-editor` whole pulls in the CSS, HTML, JSON, and + * TypeScript *language services* — the pieces that do completion and type + * checking. This plugin has no language server and deliberately does no type + * checking (Monaco's checker sees only the open file, so its "cannot find + * module" errors are wrong), so those services are dead weight: they are the + * difference between a 4.3 MB bundle and a 3.0 MB one, and between a 337 KB + * stylesheet and a 75 KB one. + * + * `basic-languages` is what remains, and it is what actually matters here: + * the Monarch grammars behind syntax highlighting for every language this + * plugin claims. + */ +export * as monaco from "monaco-editor/editor/editor.api.js"; +import "monaco-editor/basic-languages/monaco.contribution.js"; diff --git a/plugins/monaco/monaco-bundle/worker.js b/plugins/monaco/monaco-bundle/worker.js new file mode 100644 index 0000000000..6c8d9f0b5d --- /dev/null +++ b/plugins/monaco/monaco-bundle/worker.js @@ -0,0 +1,6 @@ +/** + * Monaco's base editor worker. It backs the editor's own background work — + * diff computation, link detection, word-based suggestions — not language + * services, which this bundle omits. + */ +import "monaco-editor/editor/editor.worker.start.js"; diff --git a/plugins/monaco/package.json b/plugins/monaco/package.json index 7f92a494aa..a1b92d2b1e 100644 --- a/plugins/monaco/package.json +++ b/plugins/monaco/package.json @@ -40,7 +40,8 @@ ], "scripts": { "test": "vitest run --config vitest.config.ts", - "typecheck": "tsc --noEmit -p tsconfig.json" + "typecheck": "tsc --noEmit -p tsconfig.json", + "build:monaco": "node scripts/stage-assets.mjs" }, "dependencies": { "@bb/shared-ui": "workspace:*", @@ -53,6 +54,7 @@ "@types/node": "^22.0.0", "@types/react": "^19.0.0", "@types/react-dom": "^19.0.0", + "esbuild": "^0.28.0", "jsdom": "^29.0.1", "react": "^19.0.0", "react-dom": "^19.0.0", diff --git a/plugins/monaco/scripts/stage-assets.mjs b/plugins/monaco/scripts/stage-assets.mjs index a4629f44b9..3c53cc3112 100644 --- a/plugins/monaco/scripts/stage-assets.mjs +++ b/plugins/monaco/scripts/stage-assets.mjs @@ -1,35 +1,72 @@ /** - * Copies Monaco's prebuilt AMD bundle into `dist/vs`. + * Builds the Monaco bundle this plugin serves, into `dist/monaco`. * - * Packaging ships only a builtin plugin's `dist/` and `skills/` directories - * (`apps/server/scripts/copy-builtin-plugins.ts`), so anything the plugin - * needs on disk at runtime has to be inside `dist/`. The server serves this - * directory over a `files.createPreview` URL and the frontend loads Monaco - * from it; without the copy, a released BB has no Monaco to serve. + * Monaco cannot go through `bb plugin build` with everything else: that + * config emits one file with no code splitting, so Monaco would parse at app + * boot for every user — including everyone who never opens a file — and its + * worker could not be emitted at all. Building it here instead keeps it + * lazy: `lib/monaco-loader.ts` imports these files from a + * `files.createPreview` URL the first time a file tab opens. * - * Run after `build-official-plugins.mjs`, which clears `dist/` first. + * Building rather than copying Monaco's prebuilt AMD bundle is what keeps + * this small. esbuild proves which modules are reachable from the entry, so + * the language services this plugin does not use are dropped by construction + * — 3.3 MB against 24 MB for the AMD tree — with no risk that something we + * pruned is requested later at runtime. + * + * Packaging ships only a builtin's `dist/` and `skills/` + * (`apps/server/scripts/copy-builtin-plugins.ts`, which runs this), so + * `dist/` is the only place these files can live. */ -import { cp, mkdir, stat } from "node:fs/promises"; +import { mkdir, rm } from "node:fs/promises"; import { createRequire } from "node:module"; import path from "node:path"; const pluginRoot = path.resolve(import.meta.dirname, ".."); const require = createRequire(path.join(pluginRoot, "package.json")); +const esbuild = require("esbuild"); + +const outDir = path.join(pluginRoot, "dist", "monaco"); +await rm(outDir, { recursive: true, force: true }); +await mkdir(outDir, { recursive: true }); + +const shared = { + bundle: true, + format: "esm", + platform: "browser", + target: "es2022", + minify: true, + legalComments: "none", + absWorkingDir: pluginRoot, +}; -// `exports` rewrites every subpath to ./esm/vs/*, so resolve the package root -// (whose `require` condition is min/vs/index.js) and take its directory. -const sourceDir = path.dirname(require.resolve("monaco-editor")); -const targetDir = path.join(pluginRoot, "dist", "vs"); +// Two entries, not one: the worker runs in its own global scope and must be +// a separate file for `new Worker(url)`. +const editor = await esbuild.build({ + ...shared, + entryPoints: [path.join(pluginRoot, "monaco-bundle", "editor.js")], + outfile: path.join(outDir, "editor.js"), + metafile: true, +}); +await esbuild.build({ + ...shared, + entryPoints: [path.join(pluginRoot, "monaco-bundle", "worker.js")], + outfile: path.join(outDir, "editor.worker.js"), +}); -const loader = path.join(sourceDir, "loader.js"); -try { - await stat(loader); -} catch { +// A silently language-less bundle would still load and still edit — it would +// just render every file as plain text — so fail the build instead. +const inputs = Object.keys(editor.metafile.inputs); +if (!inputs.some((input) => input.includes("basic-languages"))) { throw new Error( - `monaco-editor's AMD build is missing (${loader}); run npm/pnpm install first`, + "the Monaco bundle contains no basic-languages grammars; syntax highlighting would be missing", ); } -await mkdir(path.dirname(targetDir), { recursive: true }); -await cp(sourceDir, targetDir, { recursive: true }); -console.log(`monaco: staged ${sourceDir} -> ${targetDir}`); +const total = Object.values(editor.metafile.outputs).reduce( + (bytes, output) => bytes + output.bytes, + 0, +); +console.log( + `monaco: built ${outDir} (${(total / 1024 / 1024).toFixed(2)} MB editor + worker)`, +); diff --git a/plugins/monaco/server.ts b/plugins/monaco/server.ts index bd7dca8e98..1e79bc6e1f 100644 --- a/plugins/monaco/server.ts +++ b/plugins/monaco/server.ts @@ -11,7 +11,6 @@ // when it does not. import path from "node:path"; import { existsSync } from "node:fs"; -import { createRequire } from "node:module"; import { fileURLToPath } from "node:url"; import { defineRpcContract, type BbPluginApi } from "@get-bb/plugin-sdk"; import { z } from "zod"; @@ -122,29 +121,31 @@ export const rpcContract = defineRpcContract({ }); /** - * Monaco's prebuilt AMD bundle directory. + * The directory holding the Monaco bundle this plugin serves. * - * Two layouts, because a builtin plugin ships differently from how it is - * developed. Packaging copies only `dist/` and `skills/` (see - * `apps/server/scripts/copy-builtin-plugins.ts`), so `stage-monaco.mjs` puts - * a copy of `min/vs` at `dist/vs` at build time and that is what a released - * BB serves. Running from source there is no `dist/`, so fall back to - * node_modules. + * `scripts/stage-assets.mjs` builds it into `dist/monaco`, which is where a + * released BB finds it: packaging copies only a builtin's `dist/` and + * `skills/` (`apps/server/scripts/copy-builtin-plugins.ts`). * - * The node_modules lookup resolves the package root rather than the file: - * monaco's `exports` map rewrites every subpath to `./esm/vs/*`, so - * `require.resolve("monaco-editor/min/vs/loader.js")` fails, while resolving - * the root under the `require` condition lands on `min/vs/index.js`. + * The two candidates are the two layouts this file runs under. Packaged, the + * server bundle sits at `dist/server.js` with `dist/monaco` beside it; from + * source, `server.ts` sits at the plugin root with `dist/monaco` below it. */ -function resolveMonacoVsDir(): string { - const staged = path.join(path.dirname(fileURLToPath(import.meta.url)), "vs"); - if (existsSync(path.join(staged, "loader.js"))) return staged; - const require = createRequire(import.meta.url); - return path.dirname(require.resolve("monaco-editor")); +function resolveMonacoBundleDir(): string { + const moduleDir = path.dirname(fileURLToPath(import.meta.url)); + for (const candidate of [ + path.join(moduleDir, "monaco"), + path.join(moduleDir, "dist", "monaco"), + ]) { + if (existsSync(path.join(candidate, "editor.js"))) return candidate; + } + throw new Error( + "the Monaco bundle is missing; run `pnpm --filter bb-plugin-monaco build:monaco`", + ); } export default async function plugin(bb: BbPluginApi) { - const vsDir = resolveMonacoVsDir(); + const bundleDir = resolveMonacoBundleDir(); let assetLease: { baseUrl: string; expiresAtMs: number } | null = null; @@ -160,9 +161,9 @@ export default async function plugin(bb: BbPluginApi) { assetLease === null || assetLease.expiresAtMs - now < ASSET_LEASE_REFRESH_MARGIN_MS ) { - // No hostId: Monaco lives in this plugin's node_modules, on the server. + // No hostId: the bundle is part of the plugin, on the server. assetLease = await bb.sdk.files.createPreview({ - rootPath: vsDir, + rootPath: bundleDir, ttlMs: ASSET_LEASE_TTL_MS, }); } @@ -344,5 +345,5 @@ export default async function plugin(bb: BbPluginApi) { }, }); - bb.log.info(`serving Monaco from ${vsDir}`); + bb.log.info(`serving Monaco from ${bundleDir}`); } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ce9691a574..6399524f5b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -3260,6 +3260,9 @@ importers: '@types/react-dom': specifier: ^19.0.0 version: 19.2.3(@types/react@19.2.13) + esbuild: + specifier: ^0.28.0 + version: 0.28.1 jsdom: specifier: ^29.0.1 version: 29.0.1(@noble/hashes@2.0.1) @@ -3479,7 +3482,7 @@ importers: version: typescript@7.0.2 vitest: specifier: ^4.1.1 - version: 4.1.1(@opentelemetry/api@1.9.1)(@types/node@22.19.10)(jsdom@29.0.1(@noble/hashes@2.0.1))(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)) + version: 4.1.1(@opentelemetry/api@1.9.0)(@types/node@22.19.10)(jsdom@29.0.1(@noble/hashes@2.0.1))(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)) plugins/provider-retry: dependencies: @@ -19433,9 +19436,7 @@ snapshots: metro-runtime: 0.84.5 transitivePeerDependencies: - '@babel/core' - - bufferutil - supports-color - - utf-8-validate '@react-native/normalize-colors@0.79.6': {} @@ -28721,6 +28722,35 @@ snapshots: - tsx - yaml + vitest@4.1.1(@opentelemetry/api@1.9.0)(@types/node@22.19.10)(jsdom@29.0.1(@noble/hashes@2.0.1))(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)): + dependencies: + '@vitest/expect': 4.1.1 + '@vitest/mocker': 4.1.1(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)) + '@vitest/pretty-format': 4.1.1 + '@vitest/runner': 4.1.1 + '@vitest/snapshot': 4.1.1 + '@vitest/spy': 4.1.1 + '@vitest/utils': 4.1.1 + es-module-lexer: 2.0.0 + expect-type: 1.3.0 + magic-string: 0.30.21 + obug: 2.1.1 + pathe: 2.0.3 + picomatch: 4.0.5 + std-env: 4.0.0 + tinybench: 2.9.0 + tinyexec: 1.0.2 + tinyglobby: 0.2.17 + tinyrainbow: 3.1.1 + vite: 8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0) + why-is-node-running: 2.3.0 + optionalDependencies: + '@opentelemetry/api': 1.9.0 + '@types/node': 22.19.10 + jsdom: 29.0.1(@noble/hashes@2.0.1) + transitivePeerDependencies: + - msw + vitest@4.1.1(@opentelemetry/api@1.9.1)(@types/node@22.19.10)(jsdom@29.0.1(@noble/hashes@2.0.1))(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.19.12)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)): dependencies: '@vitest/expect': 4.1.1 From a144eaa0135fde1c4993f55accbf107d1171d9a6 Mon Sep 17 00:00:00 2001 From: Andrew Chan Date: Tue, 25 Aug 2026 14:52:25 -0700 Subject: [PATCH 5/9] Build the Monaco bundle on demand in a source checkout MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Only packaging runs stage-assets.mjs: the dev server loads builtins straight from plugins/ and rebuilds nothing but dist/app.js. So `pnpm dev` on a fresh clone would have loaded this plugin into an error state — it worked in my checkout only because I had run the build by hand. The plugin now builds its own bundle when it is absent, lazily on the first `assets` call rather than at load, so a dev server's startup is not delayed for users who never open a file. Packaged builds are unaffected: the bundle is always staged there, and the fallback never runs. Co-Authored-By: Claude Opus 5 (1M context) --- plugins/monaco/README.md | 9 +++++--- plugins/monaco/server.ts | 50 +++++++++++++++++++++++++++++----------- 2 files changed, 43 insertions(+), 16 deletions(-) diff --git a/plugins/monaco/README.md b/plugins/monaco/README.md index a54e72808d..544ba036a3 100644 --- a/plugins/monaco/README.md +++ b/plugins/monaco/README.md @@ -35,9 +35,12 @@ pnpm exec turbo run typecheck test --filter=bb-plugin-monaco ``` `scripts/stage-assets.mjs` builds the Monaco bundle the editor loads, into -`dist/monaco` — packaging copies only a builtin's `dist/`, and -`apps/server/scripts/copy-builtin-plugins.ts` runs the script. Build it -directly with `pnpm --filter bb-plugin-monaco build:monaco`. +`dist/monaco`. Packaging runs it (`apps/server/scripts/copy-builtin-plugins.ts`), +since only a builtin's `dist/` ships. A source checkout never runs that path — +the dev server loads builtins straight from `plugins/` — so the plugin +builds the bundle itself the first time a file is opened, which makes that one +open a few seconds slow. `pnpm --filter bb-plugin-monaco build:monaco` does it +up front. Monaco is built rather than bundled into `app.js` because `bb plugin build` emits one file with no code splitting: Monaco would parse at app boot for diff --git a/plugins/monaco/server.ts b/plugins/monaco/server.ts index 1e79bc6e1f..5977467c10 100644 --- a/plugins/monaco/server.ts +++ b/plugins/monaco/server.ts @@ -121,31 +121,53 @@ export const rpcContract = defineRpcContract({ }); /** - * The directory holding the Monaco bundle this plugin serves. + * The directory holding the Monaco bundle this plugin serves, building it + * first if it is not there. * - * `scripts/stage-assets.mjs` builds it into `dist/monaco`, which is where a - * released BB finds it: packaging copies only a builtin's `dist/` and - * `skills/` (`apps/server/scripts/copy-builtin-plugins.ts`). + * `scripts/stage-assets.mjs` builds it into `dist/monaco`. Packaging runs + * that script (`apps/server/scripts/copy-builtin-plugins.ts`), so a released + * BB always finds it already built — but a source checkout never runs it: the + * dev server loads builtins straight from `plugins/` and rebuilds only + * `dist/app.js` on demand. Without the fallback below, `pnpm dev` on a fresh + * clone would load this plugin into an error state. * * The two candidates are the two layouts this file runs under. Packaged, the * server bundle sits at `dist/server.js` with `dist/monaco` beside it; from * source, `server.ts` sits at the plugin root with `dist/monaco` below it. */ -function resolveMonacoBundleDir(): string { +async function ensureMonacoBundleDir( + log: (message: string) => void, +): Promise { const moduleDir = path.dirname(fileURLToPath(import.meta.url)); - for (const candidate of [ + const candidates = [ path.join(moduleDir, "monaco"), path.join(moduleDir, "dist", "monaco"), - ]) { - if (existsSync(path.join(candidate, "editor.js"))) return candidate; - } - throw new Error( - "the Monaco bundle is missing; run `pnpm --filter bb-plugin-monaco build:monaco`", + ]; + const built = candidates.find((candidate) => + existsSync(path.join(candidate, "editor.js")), ); + if (built !== undefined) return built; + + // Building takes a few seconds, so say why the first file open is slow. + log("Monaco bundle missing; building it (first run in a source checkout)"); + // A computed specifier, so the plugin's own bundler leaves it alone rather + // than trying to inline a build script into the server bundle. Importing it + // runs it — the same contract packaging relies on. + const script = new URL("./scripts/stage-assets.mjs", import.meta.url).href; + await import(script); + + const staged = candidates.find((candidate) => + existsSync(path.join(candidate, "editor.js")), + ); + if (staged === undefined) { + throw new Error( + "could not build the Monaco bundle; run `pnpm --filter bb-plugin-monaco build:monaco`", + ); + } + return staged; } export default async function plugin(bb: BbPluginApi) { - const bundleDir = resolveMonacoBundleDir(); let assetLease: { baseUrl: string; expiresAtMs: number } | null = null; @@ -161,6 +183,9 @@ export default async function plugin(bb: BbPluginApi) { assetLease === null || assetLease.expiresAtMs - now < ASSET_LEASE_REFRESH_MARGIN_MS ) { + const bundleDir = await ensureMonacoBundleDir((message) => + bb.log.info(message), + ); // No hostId: the bundle is part of the plugin, on the server. assetLease = await bb.sdk.files.createPreview({ rootPath: bundleDir, @@ -345,5 +370,4 @@ export default async function plugin(bb: BbPluginApi) { }, }); - bb.log.info(`serving Monaco from ${bundleDir}`); } From 8043e1fdcf517f79570450032eb1ac0437521b57 Mon Sep 17 00:00:00 2001 From: Andrew Chan Date: Tue, 25 Aug 2026 14:55:41 -0700 Subject: [PATCH 6/9] Rebuild the Monaco bundle when its sources change MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The previous commit only checked whether the bundle existed, so editing monaco-bundle/ or bumping monaco-editor left a stale bundle in place and the change silently did not appear — the worst kind of dev loop, since everything else in the plugin does reload on save. Compares the artifact's mtime against the entries, the build script, and the manifest. Scoped to a source checkout by construction: a packaged plugin has no monaco-bundle/ beside it, so there is nothing that can be newer than the artifact. Co-Authored-By: Claude Opus 5 (1M context) --- plugins/monaco/README.md | 11 ++++++++--- plugins/monaco/server.ts | 41 ++++++++++++++++++++++++++++++++++++---- 2 files changed, 45 insertions(+), 7 deletions(-) diff --git a/plugins/monaco/README.md b/plugins/monaco/README.md index 544ba036a3..c2d3bd149e 100644 --- a/plugins/monaco/README.md +++ b/plugins/monaco/README.md @@ -38,9 +38,14 @@ pnpm exec turbo run typecheck test --filter=bb-plugin-monaco `dist/monaco`. Packaging runs it (`apps/server/scripts/copy-builtin-plugins.ts`), since only a builtin's `dist/` ships. A source checkout never runs that path — the dev server loads builtins straight from `plugins/` — so the plugin -builds the bundle itself the first time a file is opened, which makes that one -open a few seconds slow. `pnpm --filter bb-plugin-monaco build:monaco` does it -up front. +builds the bundle itself when it is missing or older than `monaco-bundle/`, +which makes that one file open a few seconds slow. +`pnpm --filter bb-plugin-monaco build:monaco` does it up front. + +The dev loop already rebuilds `dist/app.js` and reloads `server.ts` on save, +so editing `app.tsx`, `components/`, `lib/`, or `server.ts` needs nothing +extra. It knows nothing about the Monaco bundle, which is why the staleness +check exists: edit `monaco-bundle/` and the next file open rebuilds. Monaco is built rather than bundled into `app.js` because `bb plugin build` emits one file with no code splitting: Monaco would parse at app boot for diff --git a/plugins/monaco/server.ts b/plugins/monaco/server.ts index 5977467c10..7bb0ae7c72 100644 --- a/plugins/monaco/server.ts +++ b/plugins/monaco/server.ts @@ -10,7 +10,7 @@ // confinement plus the compare-and-swap guard are the reason to use it even // when it does not. import path from "node:path"; -import { existsSync } from "node:fs"; +import { existsSync, readdirSync, statSync } from "node:fs"; import { fileURLToPath } from "node:url"; import { defineRpcContract, type BbPluginApi } from "@get-bb/plugin-sdk"; import { z } from "zod"; @@ -120,6 +120,35 @@ export const rpcContract = defineRpcContract({ }, }); +/** + * Whether a built bundle predates what it was built from. + * + * The dev loop rebuilds `dist/app.js` and reloads `server.ts` on save, but + * knows nothing about this bundle, so without this an edit to + * `monaco-bundle/` or a bumped `monaco-editor` would leave a stale bundle in + * place and the change would silently not appear. + * + * Only meaningful in a source checkout. A packaged plugin has no + * `monaco-bundle/` beside it — nothing to be newer than the artifact — so + * this returns false there without stat-ing anything that matters. + */ +function isBundleStale(moduleDir: string, bundleDir: string): boolean { + const builtAtMs = statSync(path.join(bundleDir, "editor.js")).mtimeMs; + const entryDir = path.join(moduleDir, "monaco-bundle"); + if (!existsSync(entryDir)) return false; + + const inputs = [ + path.join(moduleDir, "scripts", "stage-assets.mjs"), + ...readdirSync(entryDir).map((name) => path.join(entryDir, name)), + // A `monaco-editor` bump changes nothing this plugin owns, so compare + // against the installed package itself. + path.join(moduleDir, "package.json"), + ]; + return inputs.some( + (input) => existsSync(input) && statSync(input).mtimeMs > builtAtMs, + ); +} + /** * The directory holding the Monaco bundle this plugin serves, building it * first if it is not there. @@ -146,10 +175,14 @@ async function ensureMonacoBundleDir( const built = candidates.find((candidate) => existsSync(path.join(candidate, "editor.js")), ); - if (built !== undefined) return built; + if (built !== undefined && !isBundleStale(moduleDir, built)) return built; - // Building takes a few seconds, so say why the first file open is slow. - log("Monaco bundle missing; building it (first run in a source checkout)"); + // Building takes a few seconds, so say why this file open is slow. + log( + built === undefined + ? "Monaco bundle missing; building it (first run in a source checkout)" + : "Monaco bundle is older than its sources; rebuilding it", + ); // A computed specifier, so the plugin's own bundler leaves it alone rather // than trying to inline a build script into the server bundle. Importing it // runs it — the same contract packaging relies on. From 7be38924d6fb81c78eb96c6f277f46231b24fb72 Mon Sep 17 00:00:00 2001 From: Andrew Chan Date: Tue, 25 Aug 2026 15:22:29 -0700 Subject: [PATCH 7/9] Rename the builtin to monaco-editor so it cannot collide MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The plugin id derives from the package name, so `bb-plugin-monaco` resolved to `monaco` — the same id as the external plugin this upstreams. Reconcile refuses to displace a chosen install, so anyone holding that plugin would have had the builtin silently skipped, with only a server log saying why, until they removed theirs and restarted. Renaming sidesteps it entirely: the two coexist, and removing the external one needs no special handling. `monaco-editor` also matches the package and the product. The display name is "Monaco editor" so the two are tellable apart in Settings while the external one is deprecated. The alternative was teaching `remove` to adopt a bundled plugin whose id had just been freed. That works, but it changes remove semantics for every plugin to solve a transitional problem for one, and shared plugin machinery is the wrong place to carry that. Co-Authored-By: Claude Opus 5 (1M context) --- .../src/services/plugins/builtin-registry.ts | 4 +-- .../services/plugins/builtin-plugins.test.ts | 2 +- .../services/plugins/official-plugins.test.ts | 2 +- packages/bb-app/scripts/smoke-tarball.mjs | 2 +- plugins/{monaco => monaco-editor}/README.md | 6 ++-- plugins/{monaco => monaco-editor}/app.tsx | 2 +- .../components/ContextMenu.tsx | 0 .../components/FileToolbar.tsx | 0 .../components/FileTreePanel.tsx | 0 .../lib/editor-commands.ts | 0 .../lib/file-tree.test.ts | 0 .../lib/file-tree.ts | 0 .../lib/languages.test.ts | 0 .../lib/languages.ts | 0 .../lib/monaco-loader.ts | 2 +- .../monaco-bundle/editor.js | 0 .../monaco-bundle/worker.js | 0 .../{monaco => monaco-editor}/package.json | 4 +-- .../scripts/stage-assets.mjs | 0 plugins/{monaco => monaco-editor}/server.ts | 4 +-- .../{monaco => monaco-editor}/tsconfig.json | 0 .../vitest.config.ts | 2 +- pnpm-lock.yaml | 35 ++----------------- turbo.json | 2 +- 24 files changed, 19 insertions(+), 48 deletions(-) rename plugins/{monaco => monaco-editor}/README.md (96%) rename plugins/{monaco => monaco-editor}/app.tsx (99%) rename plugins/{monaco => monaco-editor}/components/ContextMenu.tsx (100%) rename plugins/{monaco => monaco-editor}/components/FileToolbar.tsx (100%) rename plugins/{monaco => monaco-editor}/components/FileTreePanel.tsx (100%) rename plugins/{monaco => monaco-editor}/lib/editor-commands.ts (100%) rename plugins/{monaco => monaco-editor}/lib/file-tree.test.ts (100%) rename plugins/{monaco => monaco-editor}/lib/file-tree.ts (100%) rename plugins/{monaco => monaco-editor}/lib/languages.test.ts (100%) rename plugins/{monaco => monaco-editor}/lib/languages.ts (100%) rename plugins/{monaco => monaco-editor}/lib/monaco-loader.ts (98%) rename plugins/{monaco => monaco-editor}/monaco-bundle/editor.js (100%) rename plugins/{monaco => monaco-editor}/monaco-bundle/worker.js (100%) rename plugins/{monaco => monaco-editor}/package.json (96%) rename plugins/{monaco => monaco-editor}/scripts/stage-assets.mjs (100%) rename plugins/{monaco => monaco-editor}/server.ts (99%) rename plugins/{monaco => monaco-editor}/tsconfig.json (100%) rename plugins/{monaco => monaco-editor}/vitest.config.ts (86%) diff --git a/apps/server/src/services/plugins/builtin-registry.ts b/apps/server/src/services/plugins/builtin-registry.ts index 714f5c3387..a55dff72a8 100644 --- a/apps/server/src/services/plugins/builtin-registry.ts +++ b/apps/server/src/services/plugins/builtin-registry.ts @@ -79,8 +79,8 @@ export const BUILTIN_PLUGINS = [ category: "Interface", }, { - name: "monaco", - pluginId: "monaco", + name: "monaco-editor", + pluginId: "monaco-editor", defaultEnabled: true, category: "Interface", }, diff --git a/apps/server/test/services/plugins/builtin-plugins.test.ts b/apps/server/test/services/plugins/builtin-plugins.test.ts index 32dd4c3eb9..f18eab9cec 100644 --- a/apps/server/test/services/plugins/builtin-plugins.test.ts +++ b/apps/server/test/services/plugins/builtin-plugins.test.ts @@ -229,7 +229,7 @@ describe("builtin plugin reconciliation", () => { ["plugin-api-tester", "Beaker"], ["inline-vis", "AppWindow"], ["keep-awake", "Coffee"], - ["monaco", "Code"], + ["monaco-editor", "Code"], ["pdf-preview", "FileText"], ["provider-acp", "./icons/acp.svg"], ["provider-claude-code", "./icons/claude-code.svg"], diff --git a/apps/server/test/services/plugins/official-plugins.test.ts b/apps/server/test/services/plugins/official-plugins.test.ts index 1a53ecfe6c..f8783e9440 100644 --- a/apps/server/test/services/plugins/official-plugins.test.ts +++ b/apps/server/test/services/plugins/official-plugins.test.ts @@ -100,7 +100,7 @@ describe("official plugin registry invariants", () => { "inline-vis": "Interface", "keep-awake": "Host access", memory: "Context & knowledge", - monaco: "Interface", + "monaco-editor": "Interface", "pdf-preview": "Interface", "provider-acp": "Agent interaction", "provider-claude-code": "Agent interaction", diff --git a/packages/bb-app/scripts/smoke-tarball.mjs b/packages/bb-app/scripts/smoke-tarball.mjs index adb2cd6015..70565f7609 100644 --- a/packages/bb-app/scripts/smoke-tarball.mjs +++ b/packages/bb-app/scripts/smoke-tarball.mjs @@ -33,7 +33,7 @@ const EXPECTED_RUNNING_BUILTIN_PLUGINS = [ "custom-instructions", "inline-vis", "keep-awake", - "monaco", + "monaco-editor", "pdf-preview", "provider-retry", "secrets", diff --git a/plugins/monaco/README.md b/plugins/monaco-editor/README.md similarity index 96% rename from plugins/monaco/README.md rename to plugins/monaco-editor/README.md index c2d3bd149e..5916e6067a 100644 --- a/plugins/monaco/README.md +++ b/plugins/monaco-editor/README.md @@ -1,4 +1,4 @@ -# bb-plugin-monaco +# bb-plugin-monaco-editor Opens files in BB using [Monaco](https://microsoft.github.io/monaco-editor/), the editor from VS Code, instead of BB's read-only file preview. @@ -31,7 +31,7 @@ panel's file search, and `bb thread open`. Ships with BB as a builtin; there is nothing to install. ``` -pnpm exec turbo run typecheck test --filter=bb-plugin-monaco +pnpm exec turbo run typecheck test --filter=bb-plugin-monaco-editor ``` `scripts/stage-assets.mjs` builds the Monaco bundle the editor loads, into @@ -40,7 +40,7 @@ since only a builtin's `dist/` ships. A source checkout never runs that path — the dev server loads builtins straight from `plugins/` — so the plugin builds the bundle itself when it is missing or older than `monaco-bundle/`, which makes that one file open a few seconds slow. -`pnpm --filter bb-plugin-monaco build:monaco` does it up front. +`pnpm --filter bb-plugin-monaco-editor build:monaco` does it up front. The dev loop already rebuilds `dist/app.js` and reloads `server.ts` on save, so editing `app.tsx`, `components/`, `lib/`, or `server.ts` needs nothing diff --git a/plugins/monaco/app.tsx b/plugins/monaco-editor/app.tsx similarity index 99% rename from plugins/monaco/app.tsx rename to plugins/monaco-editor/app.tsx index 744365a044..456cda838b 100644 --- a/plugins/monaco/app.tsx +++ b/plugins/monaco-editor/app.tsx @@ -1,4 +1,4 @@ -// bb-plugin-monaco — frontend entry. +// bb-plugin-monaco-editor — frontend entry. // // Registers a `fileOpener`, which is BB's seam for replacing the built-in // file preview. Every file-open flow in the app funnels through one call site diff --git a/plugins/monaco/components/ContextMenu.tsx b/plugins/monaco-editor/components/ContextMenu.tsx similarity index 100% rename from plugins/monaco/components/ContextMenu.tsx rename to plugins/monaco-editor/components/ContextMenu.tsx diff --git a/plugins/monaco/components/FileToolbar.tsx b/plugins/monaco-editor/components/FileToolbar.tsx similarity index 100% rename from plugins/monaco/components/FileToolbar.tsx rename to plugins/monaco-editor/components/FileToolbar.tsx diff --git a/plugins/monaco/components/FileTreePanel.tsx b/plugins/monaco-editor/components/FileTreePanel.tsx similarity index 100% rename from plugins/monaco/components/FileTreePanel.tsx rename to plugins/monaco-editor/components/FileTreePanel.tsx diff --git a/plugins/monaco/lib/editor-commands.ts b/plugins/monaco-editor/lib/editor-commands.ts similarity index 100% rename from plugins/monaco/lib/editor-commands.ts rename to plugins/monaco-editor/lib/editor-commands.ts diff --git a/plugins/monaco/lib/file-tree.test.ts b/plugins/monaco-editor/lib/file-tree.test.ts similarity index 100% rename from plugins/monaco/lib/file-tree.test.ts rename to plugins/monaco-editor/lib/file-tree.test.ts diff --git a/plugins/monaco/lib/file-tree.ts b/plugins/monaco-editor/lib/file-tree.ts similarity index 100% rename from plugins/monaco/lib/file-tree.ts rename to plugins/monaco-editor/lib/file-tree.ts diff --git a/plugins/monaco/lib/languages.test.ts b/plugins/monaco-editor/lib/languages.test.ts similarity index 100% rename from plugins/monaco/lib/languages.test.ts rename to plugins/monaco-editor/lib/languages.test.ts diff --git a/plugins/monaco/lib/languages.ts b/plugins/monaco-editor/lib/languages.ts similarity index 100% rename from plugins/monaco/lib/languages.ts rename to plugins/monaco-editor/lib/languages.ts diff --git a/plugins/monaco/lib/monaco-loader.ts b/plugins/monaco-editor/lib/monaco-loader.ts similarity index 98% rename from plugins/monaco/lib/monaco-loader.ts rename to plugins/monaco-editor/lib/monaco-loader.ts index b541c70b6e..a6ac8eb15f 100644 --- a/plugins/monaco/lib/monaco-loader.ts +++ b/plugins/monaco-editor/lib/monaco-loader.ts @@ -65,7 +65,7 @@ function injectStylesheet(href: string): Promise { }); } -const OVERFLOW_NODE_ID = "bb-plugin-monaco-overflow-widgets"; +const OVERFLOW_NODE_ID = "bb-plugin-monaco-editor-overflow-widgets"; /** * A body-level host for Monaco's "overflow widgets" — hovers, the suggest diff --git a/plugins/monaco/monaco-bundle/editor.js b/plugins/monaco-editor/monaco-bundle/editor.js similarity index 100% rename from plugins/monaco/monaco-bundle/editor.js rename to plugins/monaco-editor/monaco-bundle/editor.js diff --git a/plugins/monaco/monaco-bundle/worker.js b/plugins/monaco-editor/monaco-bundle/worker.js similarity index 100% rename from plugins/monaco/monaco-bundle/worker.js rename to plugins/monaco-editor/monaco-bundle/worker.js diff --git a/plugins/monaco/package.json b/plugins/monaco-editor/package.json similarity index 96% rename from plugins/monaco/package.json rename to plugins/monaco-editor/package.json index a1b92d2b1e..cfe6259e2f 100644 --- a/plugins/monaco/package.json +++ b/plugins/monaco-editor/package.json @@ -1,5 +1,5 @@ { - "name": "bb-plugin-monaco", + "name": "bb-plugin-monaco-editor", "version": "0.1.0", "private": true, "type": "module", @@ -27,7 +27,7 @@ "bbPluginSdk": ">=0.4.9" }, "bb": { - "name": "Monaco", + "name": "Monaco editor", "description": "Edit files in BB with the Monaco editor instead of the read-only preview.", "branding": { "icon": "Code" diff --git a/plugins/monaco/scripts/stage-assets.mjs b/plugins/monaco-editor/scripts/stage-assets.mjs similarity index 100% rename from plugins/monaco/scripts/stage-assets.mjs rename to plugins/monaco-editor/scripts/stage-assets.mjs diff --git a/plugins/monaco/server.ts b/plugins/monaco-editor/server.ts similarity index 99% rename from plugins/monaco/server.ts rename to plugins/monaco-editor/server.ts index 7bb0ae7c72..dd7ae81351 100644 --- a/plugins/monaco/server.ts +++ b/plugins/monaco-editor/server.ts @@ -1,4 +1,4 @@ -// bb-plugin-monaco — backend entry. +// bb-plugin-monaco-editor — backend entry. // // Three jobs, all in service of the `fileOpener` slot in app.tsx: // 1. `assets` — hand the frontend a URL it can load Monaco's AMD build from. @@ -194,7 +194,7 @@ async function ensureMonacoBundleDir( ); if (staged === undefined) { throw new Error( - "could not build the Monaco bundle; run `pnpm --filter bb-plugin-monaco build:monaco`", + "could not build the Monaco bundle; run `pnpm --filter bb-plugin-monaco-editor build:monaco`", ); } return staged; diff --git a/plugins/monaco/tsconfig.json b/plugins/monaco-editor/tsconfig.json similarity index 100% rename from plugins/monaco/tsconfig.json rename to plugins/monaco-editor/tsconfig.json diff --git a/plugins/monaco/vitest.config.ts b/plugins/monaco-editor/vitest.config.ts similarity index 86% rename from plugins/monaco/vitest.config.ts rename to plugins/monaco-editor/vitest.config.ts index e7108d919b..06494fe7a6 100644 --- a/plugins/monaco/vitest.config.ts +++ b/plugins/monaco-editor/vitest.config.ts @@ -3,7 +3,7 @@ import { defineWorkspaceTestConfig } from "../../vitest.shared.js"; export default defineWorkspaceTestConfig({ test: { silent: "passed-only", - name: "bb-plugin-monaco", + name: "bb-plugin-monaco-editor", include: ["**/*.test.{ts,tsx}"], exclude: ["node_modules/**"], }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6399524f5b..80a33cc92c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -3233,7 +3233,7 @@ importers: specifier: ^4.1.1 version: 4.1.1(@opentelemetry/api@1.9.1)(@types/node@22.19.10)(jsdom@29.0.1(@noble/hashes@2.0.1))(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)) - plugins/monaco: + plugins/monaco-editor: dependencies: '@bb/shared-ui': specifier: workspace:* @@ -3482,7 +3482,7 @@ importers: version: typescript@7.0.2 vitest: specifier: ^4.1.1 - version: 4.1.1(@opentelemetry/api@1.9.0)(@types/node@22.19.10)(jsdom@29.0.1(@noble/hashes@2.0.1))(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)) + version: 4.1.1(@opentelemetry/api@1.9.1)(@types/node@22.19.10)(jsdom@29.0.1(@noble/hashes@2.0.1))(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)) plugins/provider-retry: dependencies: @@ -5461,7 +5461,7 @@ packages: '@expo/bunyan@4.0.1': resolution: {integrity: sha512-+Lla7nYSiHZirgK+U/uYzsLv/X+HaJienbD5AKX1UQZHYfWaP+9uuQluRB4GrEVWF0GZ7vEVp/jzaOT9k/SQlg==} - engines: {node: '>=0.10.0'} + engines: {'0': node >=0.10.0} '@expo/cli@57.0.16': resolution: {integrity: sha512-+HyMY2nAS6QBJb0nSeMz92p11bZ1AtWSRnhWnklznN07IRoQirisnKq2vr18Ayjb/fnb5F/um+n6FRhF0fZm1Q==} @@ -28722,35 +28722,6 @@ snapshots: - tsx - yaml - vitest@4.1.1(@opentelemetry/api@1.9.0)(@types/node@22.19.10)(jsdom@29.0.1(@noble/hashes@2.0.1))(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)): - dependencies: - '@vitest/expect': 4.1.1 - '@vitest/mocker': 4.1.1(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)) - '@vitest/pretty-format': 4.1.1 - '@vitest/runner': 4.1.1 - '@vitest/snapshot': 4.1.1 - '@vitest/spy': 4.1.1 - '@vitest/utils': 4.1.1 - es-module-lexer: 2.0.0 - expect-type: 1.3.0 - magic-string: 0.30.21 - obug: 2.1.1 - pathe: 2.0.3 - picomatch: 4.0.5 - std-env: 4.0.0 - tinybench: 2.9.0 - tinyexec: 1.0.2 - tinyglobby: 0.2.17 - tinyrainbow: 3.1.1 - vite: 8.0.12(@types/node@22.19.10)(esbuild@0.28.1)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0) - why-is-node-running: 2.3.0 - optionalDependencies: - '@opentelemetry/api': 1.9.0 - '@types/node': 22.19.10 - jsdom: 29.0.1(@noble/hashes@2.0.1) - transitivePeerDependencies: - - msw - vitest@4.1.1(@opentelemetry/api@1.9.1)(@types/node@22.19.10)(jsdom@29.0.1(@noble/hashes@2.0.1))(msw@2.12.14(@types/node@22.19.10)(@typescript/typescript6@6.0.2))(vite@8.0.12(@types/node@22.19.10)(esbuild@0.19.12)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.1)(yaml@2.9.0)): dependencies: '@vitest/expect': 4.1.1 diff --git a/turbo.json b/turbo.json index 96bb39d176..9b87aea335 100644 --- a/turbo.json +++ b/turbo.json @@ -707,7 +707,7 @@ "bb-plugin-memory#typecheck": { "dependsOn": ["@get-bb/plugin-sdk#build:types", "topo"] }, - "bb-plugin-monaco#typecheck": { + "bb-plugin-monaco-editor#typecheck": { "dependsOn": [ "@get-bb/plugin-sdk#build:types", "topo" From 84088cca5aa1dafb73e35ffc78241abbf72a1f97 Mon Sep 17 00:00:00 2001 From: Andrew Chan Date: Tue, 25 Aug 2026 15:35:07 -0700 Subject: [PATCH 8/9] Restore Monaco's editor contributions: find, word navigation, folding MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The trimmed bundle entry imported `editor.api`, which is the API surface without Monaco's 59 contribution modules. The editor still opened, still highlighted, and still typed — so it looked right — while cmd+F, the option+arrow word motions, and every folding command silently did not exist. The palette's fold and sort rows were dead for the same reason. Uses `editor.main` instead, Monaco's own standalone-editor entry. It carries the contributions and the grammars but not the CSS, HTML, JSON, and TypeScript language services, which are the parts this plugin has no use for: 4.6 MB against 3.3 MB trimmed, and 24 MB for the prebuilt tree. The build script now fails when the bundle lacks the find widget, folding, word navigation, line sorting, grammars, or contributions at all. Verified against the broken entry, which it reports precisely. Checking for `actions.find` would not have worked — that string is in the API with or without the widget; the widget's own class name is not. JSON goes back to being highlighted as JSON: this entry registers the language, so the JavaScript stand-in is no longer needed. Co-Authored-By: Claude Opus 5 (1M context) --- plugins/monaco-editor/README.md | 17 +++++++---- plugins/monaco-editor/lib/languages.ts | 12 ++------ plugins/monaco-editor/monaco-bundle/editor.js | 25 ++++++++-------- .../monaco-editor/scripts/stage-assets.mjs | 29 +++++++++++++++---- 4 files changed, 50 insertions(+), 33 deletions(-) diff --git a/plugins/monaco-editor/README.md b/plugins/monaco-editor/README.md index 5916e6067a..e019e8cdce 100644 --- a/plugins/monaco-editor/README.md +++ b/plugins/monaco-editor/README.md @@ -53,12 +53,17 @@ everyone, including users who never open a file, and its worker could not be emitted at all. `lib/monaco-loader.ts` loads the built files from a `files.createPreview` URL the first time a file tab opens. -`monaco-bundle/editor.js` is the entry, and it is deliberately narrow: the -editor plus `basic-languages` (the Monarch grammars), without the CSS, HTML, -JSON, and TypeScript *language services* this plugin does not use. esbuild -proves what is reachable from it, so the result is 3.3 MB rather than the -24 MB of Monaco's prebuilt tree, with no risk that something pruned is -requested later at runtime. +`monaco-bundle/editor.js` is the entry: Monaco's own `editor.main`, which is +the API plus its contribution modules (find, folding, word navigation, +sorting, …) and every Monarch grammar. What it leaves out is the language +*services* for CSS, HTML, JSON, and TypeScript — completion and type checking +this plugin has no use for. esbuild proves what is reachable, so the result is +4.6 MB rather than the 24 MB of Monaco's prebuilt tree. + +Do not trim that entry to `editor.api` to save the difference. The API without +the contributions still opens files and still types, so the editor looks fine +while find, word navigation, and folding silently do not exist. The build +script asserts each of those is present for that reason. ## Which files it opens diff --git a/plugins/monaco-editor/lib/languages.ts b/plugins/monaco-editor/lib/languages.ts index 49c5cf973a..9b462b462c 100644 --- a/plugins/monaco-editor/lib/languages.ts +++ b/plugins/monaco-editor/lib/languages.ts @@ -38,16 +38,8 @@ const LANGUAGE_BY_EXTENSION: Record = { svelte: "html", // Data and config - // JSON is highlighted as JavaScript on purpose. Monaco has no - // basic-language for JSON — its JSON support is a full language service, - // and pulling that in costs ~1.6 MB (bundle, stylesheet, and its own - // worker) for what is, without a schema, highlighting we already have: - // JSON is a subset of JavaScript's object syntax, so strings, numbers, - // keywords, and brackets all tokenize correctly, and `jsonc` comments do - // too. If JSON schema validation is ever wanted, that is the point to - // reconsider — `monaco-bundle/editor.js` is where it would go. - json: "javascript", - jsonc: "javascript", + json: "json", + jsonc: "json", yaml: "yaml", yml: "yaml", toml: "ini", diff --git a/plugins/monaco-editor/monaco-bundle/editor.js b/plugins/monaco-editor/monaco-bundle/editor.js index bebe3ac3d2..206c9f5bcd 100644 --- a/plugins/monaco-editor/monaco-bundle/editor.js +++ b/plugins/monaco-editor/monaco-bundle/editor.js @@ -1,17 +1,18 @@ /** - * The Monaco we actually ship. + * The Monaco we ship. * - * Importing `monaco-editor` whole pulls in the CSS, HTML, JSON, and - * TypeScript *language services* — the pieces that do completion and type - * checking. This plugin has no language server and deliberately does no type - * checking (Monaco's checker sees only the open file, so its "cannot find - * module" errors are wrong), so those services are dead weight: they are the - * difference between a 4.3 MB bundle and a 3.0 MB one, and between a 337 KB - * stylesheet and a 75 KB one. + * `editor.main` is Monaco's own standalone-editor entry: the API plus its 59 + * contribution modules (find, folding, word navigation, sorting, suggest, + * bracket matching, …) and the Monarch grammars for every language it knows. * - * `basic-languages` is what remains, and it is what actually matters here: - * the Monarch grammars behind syntax highlighting for every language this - * plugin claims. + * An earlier revision imported `editor.api` alone to save ~1.3 MB. That is + * the API surface *without* the contributions, so the editor still opened and + * still typed — while find, option+arrow word navigation, and the folding + * commands silently did not exist. Contributions are the editor; only the + * language *services* (completion and type checking for CSS, HTML, JSON, and + * TypeScript) are optional here, and this entry does not pull them in: the + * plugin has no language server, and Monaco's TypeScript checker sees only + * the open file, so its "cannot find module" errors would be wrong. */ export * as monaco from "monaco-editor/editor/editor.api.js"; -import "monaco-editor/basic-languages/monaco.contribution.js"; +import "monaco-editor/editor/editor.main.js"; diff --git a/plugins/monaco-editor/scripts/stage-assets.mjs b/plugins/monaco-editor/scripts/stage-assets.mjs index 3c53cc3112..fd77f08e02 100644 --- a/plugins/monaco-editor/scripts/stage-assets.mjs +++ b/plugins/monaco-editor/scripts/stage-assets.mjs @@ -18,7 +18,7 @@ * (`apps/server/scripts/copy-builtin-plugins.ts`, which runs this), so * `dist/` is the only place these files can live. */ -import { mkdir, rm } from "node:fs/promises"; +import { mkdir, readFile, rm } from "node:fs/promises"; import { createRequire } from "node:module"; import path from "node:path"; @@ -38,6 +38,11 @@ const shared = { minify: true, legalComments: "none", absWorkingDir: pluginRoot, + // Monaco's contributions style their icons with a webfont. Inlining it + // keeps the served bundle to the three files the loader knows how to + // fetch, rather than adding an asset whose URL would have to resolve + // relative to the preview lease. + loader: { ".ttf": "dataurl" }, }; // Two entries, not one: the worker runs in its own global scope and must be @@ -54,12 +59,26 @@ await esbuild.build({ outfile: path.join(outDir, "editor.worker.js"), }); -// A silently language-less bundle would still load and still edit — it would -// just render every file as plain text — so fail the build instead. +// A bundle can be missing whole features and still load, still open a file, +// and still let you type — which is how an earlier entry shipped without the +// find widget or word navigation, and how a wrong entry could ship without +// grammars and render every file as plain text. Fail the build instead of +// discovering it by hand. const inputs = Object.keys(editor.metafile.inputs); -if (!inputs.some((input) => input.includes("basic-languages"))) { +const output = await readFile(path.join(outDir, "editor.js"), "utf8"); +const missing = [ + ["language grammars", () => inputs.some((i) => i.includes("languages/definitions/") || i.includes("basic-languages"))], + ["editor contributions", () => inputs.some((i) => i.includes("editor/contrib/"))], + ["find widget", () => output.includes("find-widget")], + ["folding", () => output.includes("foldRecursively")], + ["word navigation", () => output.includes("cursorWordLeft")], + ["line sorting", () => output.includes("sortLinesAscending")], +] + .filter(([, present]) => !present()) + .map(([name]) => name); +if (missing.length > 0) { throw new Error( - "the Monaco bundle contains no basic-languages grammars; syntax highlighting would be missing", + `the Monaco bundle is missing: ${missing.join(", ")} — check monaco-bundle/editor.js`, ); } From a88ecbe1e2bfc50c0b284595e08b42f7933704cb Mon Sep 17 00:00:00 2001 From: Andrew Chan Date: Tue, 25 Aug 2026 15:49:03 -0700 Subject: [PATCH 9/9] Highlight other occurrences of the identifier under the cursor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Monaco's word-highlight contribution ships in the bundle but renders nothing on its own: it draws whatever a DocumentHighlightProvider reports, and the only thing that registers one is a language service. The external plugin got this from Monaco's TypeScript service; dropping that service took the highlighting with it. Registers a textual provider through the public API instead — whole-word and case-sensitive, with no notion of whether two spellings mean the same symbol, which is what the external plugin's behaviour looked like in practice and what is useful without a language server. Costs nothing to ship. Monaco has its own textual provider but never wires it into the standalone editor, and it takes internal services a plugin cannot reach. Co-Authored-By: Claude Opus 5 (1M context) --- plugins/monaco-editor/lib/monaco-loader.ts | 47 ++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/plugins/monaco-editor/lib/monaco-loader.ts b/plugins/monaco-editor/lib/monaco-loader.ts index a6ac8eb15f..73d7646e44 100644 --- a/plugins/monaco-editor/lib/monaco-loader.ts +++ b/plugins/monaco-editor/lib/monaco-loader.ts @@ -51,9 +51,56 @@ async function boot(baseUrl: string): Promise { if (!monaco) { throw new Error("the Monaco bundle did not expose its API"); } + registerOccurrenceHighlighting(monaco); return monaco; } +/** + * Highlights every occurrence of the identifier under the cursor. + * + * Monaco's word-highlight contribution ships in the bundle but does nothing + * on its own: it renders whatever a `DocumentHighlightProvider` reports, and + * the only provider that would register one is a language service. Monaco has + * a textual provider of its own (`textualHighlightProvider.js`) but never + * wires it into the standalone editor, and it takes internal services a + * plugin cannot reach — so supply one through the public API instead. + * + * Textual by design: matches are whole-word and case-sensitive, with no + * notion of whether two spellings mean the same symbol. That is what makes it + * useful without a language server, and it costs nothing to ship. + */ +function registerOccurrenceHighlighting(monaco: typeof MonacoNs): void { + const languageIds = monaco.languages.getLanguages().map((entry) => entry.id); + monaco.languages.registerDocumentHighlightProvider(languageIds, { + provideDocumentHighlights(model, position) { + const word = model.getWordAtPosition(position); + if (word === null) return []; + return model + .findMatches( + word.word, + false, + false, + true, + // Non-null word separators make this whole-word, so `set` does not + // light up every `offset` in the file. + USUAL_WORD_SEPARATORS, + false, + MAX_OCCURRENCE_MATCHES, + ) + .map((match) => ({ + range: match.range, + kind: monaco.languages.DocumentHighlightKind.Text, + })); + }, + }); +} + +/** Monaco's own default; repeated because the constant is not exported. */ +const USUAL_WORD_SEPARATORS = "`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?"; + +/** A ceiling so a hot loop over a huge file cannot stall the editor. */ +const MAX_OCCURRENCE_MATCHES = 1000; + function injectStylesheet(href: string): Promise { return new Promise((resolve, reject) => { const link = document.createElement("link");