summaryrefslogtreecommitdiff
path: root/packages/cli/src/ui
diff options
context:
space:
mode:
Diffstat (limited to 'packages/cli/src/ui')
-rw-r--r--packages/cli/src/ui/commands/types.ts3
-rw-r--r--packages/cli/src/ui/hooks/slashCommandProcessor.test.ts9
2 files changed, 8 insertions, 4 deletions
diff --git a/packages/cli/src/ui/commands/types.ts b/packages/cli/src/ui/commands/types.ts
index 2844177f..900be866 100644
--- a/packages/cli/src/ui/commands/types.ts
+++ b/packages/cli/src/ui/commands/types.ts
@@ -157,6 +157,9 @@ export interface SlashCommand {
kind: CommandKind;
+ // Optional metadata for extension commands
+ extensionName?: string;
+
// The action to run. Optional for parent commands that only group sub-commands.
action?: (
context: CommandContext,
diff --git a/packages/cli/src/ui/hooks/slashCommandProcessor.test.ts b/packages/cli/src/ui/hooks/slashCommandProcessor.test.ts
index 5b367cd4..42c2e277 100644
--- a/packages/cli/src/ui/hooks/slashCommandProcessor.test.ts
+++ b/packages/cli/src/ui/hooks/slashCommandProcessor.test.ts
@@ -74,11 +74,12 @@ describe('useSlashCommandProcessor', () => {
const mockSetQuittingMessages = vi.fn();
const mockConfig = {
- getProjectRoot: () => '/mock/cwd',
- getSessionId: () => 'test-session',
- getGeminiClient: () => ({
+ getProjectRoot: vi.fn(() => '/mock/cwd'),
+ getSessionId: vi.fn(() => 'test-session'),
+ getGeminiClient: vi.fn(() => ({
setHistory: vi.fn().mockResolvedValue(undefined),
- }),
+ })),
+ getExtensions: vi.fn(() => []),
} as unknown as Config;
const mockSettings = {} as LoadedSettings;