diff --git a/packages/builtin-tools/src/tools/ConfigTool/supportedSettings.ts b/packages/builtin-tools/src/tools/ConfigTool/supportedSettings.ts index 683cfe4d6..53ff849c7 100644 --- a/packages/builtin-tools/src/tools/ConfigTool/supportedSettings.ts +++ b/packages/builtin-tools/src/tools/ConfigTool/supportedSettings.ts @@ -131,6 +131,11 @@ export const SUPPORTED_SETTINGS: Record = { 'How to spawn teammates: "tmux" for traditional tmux, "in-process" for same process, "auto" to choose automatically', options: TEAMMATE_MODES, }, + showMemoryPid: { + source: 'global', + type: 'boolean', + description: 'Show memory usage and PID in the footer status bar', + }, ...(process.env.USER_TYPE === 'ant' ? { classifierPermissionsEnabled: { diff --git a/src/components/PromptInput/PromptInputFooterLeftSide.tsx b/src/components/PromptInput/PromptInputFooterLeftSide.tsx index 0f9fa266d..dc175ec64 100644 --- a/src/components/PromptInput/PromptInputFooterLeftSide.tsx +++ b/src/components/PromptInput/PromptInputFooterLeftSide.tsx @@ -365,8 +365,8 @@ function ModeIndicator({ ...(shouldShowPrStatus ? [] : []), - // RSS memory indicator — always visible - ...(rssState + // RSS memory indicator — configurable via showMemoryPid + ...(isMemoryPidEnabled() && rssState ? [ { + if (current.showMemoryPid === enabled) return current; + return { + ...current, + showMemoryPid: enabled, + }; + }); + setGlobalConfig({ + ...getGlobalConfig(), + showMemoryPid: enabled, + }); + logEvent('tengu_show_memory_pid_setting_changed', { + enabled, + }); + }, + }, { id: 'model', label: 'Model', diff --git a/src/utils/config.ts b/src/utils/config.ts index 7e5425ad5..f7631e3cc 100644 --- a/src/utils/config.ts +++ b/src/utils/config.ts @@ -544,6 +544,9 @@ export type GlobalConfig = { // PR status footer configuration (feature-flagged via GrowthBook) prStatusFooterEnabled?: boolean // Show PR review status in footer (default: true) + // RSS memory + PID footer display + showMemoryPid?: boolean // Show memory usage and PID in footer (default: true) + // Tmux live panel visibility (ant-only, toggled via Enter on tmux pill) tungstenPanelVisible?: boolean @@ -673,6 +676,7 @@ export const GLOBAL_CONFIG_KEYS = [ 'copyOnSelect', 'permissionExplainerEnabled', 'prStatusFooterEnabled', + 'showMemoryPid', 'remoteControlAtStartup', 'remoteDialogSeen', ] as const