From c3a6721de22bb0fa64517194552a7b71b0b760eb Mon Sep 17 00:00:00 2001 From: Dax Raad Date: Tue, 18 Aug 2026 09:54:50 -0400 Subject: [PATCH] refactor(tui): standardize builtin plugin ids --- packages/tui/src/feature-plugins/home/footer.tsx | 2 +- packages/tui/src/feature-plugins/prompt/footer.tsx | 2 +- packages/tui/src/feature-plugins/sidebar/context.tsx | 2 +- packages/tui/src/feature-plugins/sidebar/footer.tsx | 2 +- packages/tui/src/feature-plugins/sidebar/mcp.tsx | 2 +- packages/tui/src/feature-plugins/system/diff-viewer.tsx | 2 +- packages/tui/test/cli/tui/diff-viewer.test.tsx | 8 ++++---- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/tui/src/feature-plugins/home/footer.tsx b/packages/tui/src/feature-plugins/home/footer.tsx index 93f5827ec26..3a2e70f90be 100644 --- a/packages/tui/src/feature-plugins/home/footer.tsx +++ b/packages/tui/src/feature-plugins/home/footer.tsx @@ -99,7 +99,7 @@ function View(props: { context: Plugin.Context }) { } export default Plugin.define({ - id: "opencode.home-footer", + id: "opencode.home.footer", setup(context) { // Root takeover: an external plugin replacing home.footer wins (last- // enabled) and this builtin shows as suppressed, not silently gone. diff --git a/packages/tui/src/feature-plugins/prompt/footer.tsx b/packages/tui/src/feature-plugins/prompt/footer.tsx index 4ce95e3d8e0..4b2d6020b2c 100644 --- a/packages/tui/src/feature-plugins/prompt/footer.tsx +++ b/packages/tui/src/feature-plugins/prompt/footer.tsx @@ -83,7 +83,7 @@ export function PromptFooter(props: { context: Plugin.Context; sessionID?: strin } export default Plugin.define({ - id: "opencode.prompt-footer", + id: "opencode.prompt.footer", setup(context) { context.ui.slot({ append: "prompt.footer", diff --git a/packages/tui/src/feature-plugins/sidebar/context.tsx b/packages/tui/src/feature-plugins/sidebar/context.tsx index 3779e435eeb..733683e2743 100644 --- a/packages/tui/src/feature-plugins/sidebar/context.tsx +++ b/packages/tui/src/feature-plugins/sidebar/context.tsx @@ -42,7 +42,7 @@ export function SidebarContext(props: { context: Plugin.Context; sessionID: stri } export default Plugin.define({ - id: "internal:sidebar-context", + id: "opencode.sidebar.context", setup(context) { context.ui.slot({ append: "sidebar.content", diff --git a/packages/tui/src/feature-plugins/sidebar/footer.tsx b/packages/tui/src/feature-plugins/sidebar/footer.tsx index 098b5897f48..f1d7d932508 100644 --- a/packages/tui/src/feature-plugins/sidebar/footer.tsx +++ b/packages/tui/src/feature-plugins/sidebar/footer.tsx @@ -40,7 +40,7 @@ function View(props: { context: Plugin.Context; sessionID: string }) { } export default Plugin.define({ - id: "opencode.sidebar-footer", + id: "opencode.sidebar.footer", setup(context) { // Append keeps the path open to additive plugin claims; an external // replace still takes the boundary over. diff --git a/packages/tui/src/feature-plugins/sidebar/mcp.tsx b/packages/tui/src/feature-plugins/sidebar/mcp.tsx index 2069c83b745..6e69976064e 100644 --- a/packages/tui/src/feature-plugins/sidebar/mcp.tsx +++ b/packages/tui/src/feature-plugins/sidebar/mcp.tsx @@ -71,7 +71,7 @@ function View(props: { context: Plugin.Context; sessionID: string }) { } export default Plugin.define({ - id: "internal:sidebar-mcp", + id: "opencode.sidebar.mcp", setup(context) { context.ui.slot({ append: "sidebar.content", diff --git a/packages/tui/src/feature-plugins/system/diff-viewer.tsx b/packages/tui/src/feature-plugins/system/diff-viewer.tsx index f71d8604ead..b0090c9dae1 100644 --- a/packages/tui/src/feature-plugins/system/diff-viewer.tsx +++ b/packages/tui/src/feature-plugins/system/diff-viewer.tsx @@ -1079,7 +1079,7 @@ function Commands(props: { context: Plugin.Context }) { } export default Plugin.define({ - id: "diff-viewer", + id: "opencode.diffs", setup(context) { context.ui.router.register({ name: ROUTE, diff --git a/packages/tui/test/cli/tui/diff-viewer.test.tsx b/packages/tui/test/cli/tui/diff-viewer.test.tsx index 8588a77da35..426478f2bbc 100644 --- a/packages/tui/test/cli/tui/diff-viewer.test.tsx +++ b/packages/tui/test/cli/tui/diff-viewer.test.tsx @@ -29,7 +29,7 @@ test("closing the diff viewer returns to the route it opened from", async () => try { expect(viewer.current()).toEqual({ type: "plugin", - id: "diff-viewer", + id: "opencode.diffs", name: "diff", data: { mode: "working", sessionID: "session-1", returnRoute: startRoute }, }) @@ -207,7 +207,7 @@ async function renderDiffViewer( navigate(destination: Destination) { setCurrent( destination.type === "plugin" && !("id" in destination) - ? { ...destination, id: "diff-viewer" } + ? { ...destination, id: "opencode.diffs" } : destination, ) }, @@ -334,7 +334,7 @@ test("branch diff source requests branch VCS diff", async () => { const viewer = await renderDiffViewer([], { initialRoute: { type: "plugin", - id: "diff-viewer", + id: "opencode.diffs", name: "diff", data: { mode: "branch", sessionID: "session-1", returnRoute: startRoute }, }, @@ -342,7 +342,7 @@ test("branch diff source requests branch VCS diff", async () => { try { expect(viewer.current()).toEqual({ type: "plugin", - id: "diff-viewer", + id: "opencode.diffs", name: "diff", data: { mode: "branch", sessionID: "session-1", returnRoute: startRoute }, })