mirror of
https://github.com/google-gemini/gemini-cli.git
synced 2026-04-02 17:31:05 -07:00
feat(cli) Custom Commands work in Non-Interactive/Headless Mode (#8305)
This commit is contained in:
29
packages/cli/src/ui/noninteractive/nonInteractiveUi.ts
Normal file
29
packages/cli/src/ui/noninteractive/nonInteractiveUi.ts
Normal file
@@ -0,0 +1,29 @@
|
||||
/**
|
||||
* @license
|
||||
* Copyright 2025 Google LLC
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
import type { CommandContext } from '../commands/types.js';
|
||||
|
||||
/**
|
||||
* Creates a UI context object with no-op functions.
|
||||
* Useful for non-interactive environments where UI operations
|
||||
* are not applicable.
|
||||
*/
|
||||
export function createNonInteractiveUI(): CommandContext['ui'] {
|
||||
return {
|
||||
addItem: (_item, _timestamp) => 0,
|
||||
clear: () => {},
|
||||
setDebugMessage: (_message) => {},
|
||||
loadHistory: (_newHistory) => {},
|
||||
pendingItem: null,
|
||||
setPendingItem: (_item) => {},
|
||||
toggleCorgiMode: () => {},
|
||||
toggleVimEnabled: async () => false,
|
||||
setGeminiMdFileCount: (_count) => {},
|
||||
reloadCommands: () => {},
|
||||
extensionsUpdateState: new Map(),
|
||||
setExtensionsUpdateState: (_updateState) => {},
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user