summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--packages/opencode/src/cli/cmd/tui/app.tsx15
1 files changed, 15 insertions, 0 deletions
diff --git a/packages/opencode/src/cli/cmd/tui/app.tsx b/packages/opencode/src/cli/cmd/tui/app.tsx
index 35b33b4a0..eb89e411d 100644
--- a/packages/opencode/src/cli/cmd/tui/app.tsx
+++ b/packages/opencode/src/cli/cmd/tui/app.tsx
@@ -33,6 +33,7 @@ import { KVProvider, useKV } from "./context/kv"
import { Provider } from "@/provider/provider"
import { ArgsProvider, useArgs, type Args } from "./context/args"
import open from "open"
+import { writeHeapSnapshot } from "v8"
import { PromptRefProvider, usePromptRef } from "./context/prompt"
async function getTerminalBackgroundColor(): Promise<"dark" | "light"> {
@@ -476,6 +477,20 @@ function App() {
},
},
{
+ title: "Write heap snapshot",
+ category: "System",
+ value: "app.heap_snapshot",
+ onSelect: (dialog) => {
+ const path = writeHeapSnapshot()
+ toast.show({
+ variant: "info",
+ message: `Heap snapshot written to ${path}`,
+ duration: 5000,
+ })
+ dialog.clear()
+ },
+ },
+ {
title: "Suspend terminal",
value: "terminal.suspend",
keybind: "terminal_suspend",