- {(["claude", "codex", "gemini"] as const).map((appType) => {
- const isEnabled =
- takeoverStatus?.[
- appType as keyof typeof takeoverStatus
- ] ?? false;
- return (
-
-
- {appType}
-
-
- handleTakeoverChange(appType, checked)
- }
- disabled={setTakeoverForApp.isPending}
- />
-
- );
- })}
+
+ {(["claude", "codex", "gemini", "grokbuild"] as const).map(
+ (appType) => {
+ const isEnabled =
+ takeoverStatus?.[
+ appType as keyof typeof takeoverStatus
+ ] ?? false;
+ return (
+
+
+ {appType === "grokbuild" ? "Grok Build" : appType}
+
+
+ handleTakeoverChange(appType, checked)
+ }
+ disabled={setTakeoverForApp.isPending}
+ />
+
+ );
+ },
+ )}
{t("proxy.takeover.hint", {
@@ -415,7 +418,8 @@ export function ProxyPanel({
{/* [6] Provider queues */}
{(claudeQueue.length > 0 ||
codexQueue.length > 0 ||
- geminiQueue.length > 0) && (
+ geminiQueue.length > 0 ||
+ grokQueue.length > 0) && (
@@ -459,6 +463,18 @@ export function ProxyPanel({
status={status}
/>
)}
+
+ {grokQueue.length > 0 && (
+
({
+ id: item.providerId,
+ name: item.providerName,
+ }))}
+ status={status}
+ />
+ )}
)}
diff --git a/src/components/proxy/ProxyToggle.tsx b/src/components/proxy/ProxyToggle.tsx
index 61c831edd..fa2993d40 100644
--- a/src/components/proxy/ProxyToggle.tsx
+++ b/src/components/proxy/ProxyToggle.tsx
@@ -39,7 +39,9 @@ export function ProxyToggle({ className, activeApp }: ProxyToggleProps) {
? "Codex"
: activeApp === "gemini"
? "Gemini"
- : "OpenCode";
+ : activeApp === "grokbuild"
+ ? "Grok Build"
+ : "OpenCode";
const tooltipText = takeoverEnabled
? isRunning
diff --git a/src/components/sessions/SessionManagerPage.tsx b/src/components/sessions/SessionManagerPage.tsx
index 0c900a930..11178e0b2 100644
--- a/src/components/sessions/SessionManagerPage.tsx
+++ b/src/components/sessions/SessionManagerPage.tsx
@@ -83,6 +83,7 @@ const SESSION_GROUP_EXPANSION_STORAGE_KEY =
type ProviderFilter =
| "all"
| "codex"
+ | "grokbuild"
| "claude"
| "opencode"
| "openclaw"
@@ -1077,6 +1078,16 @@ export function SessionManagerPage({ appId }: { appId: string }) {
Codex
+