Add /exit and /quit commands

This commit is contained in:
Seth Troisi 2025-04-25 01:12:47 +00:00
parent ed12a2e133
commit a5ba681f8d
1 changed files with 21 additions and 5 deletions

View File

@ -105,14 +105,30 @@ export const useGeminiStream = (
}
const query = rawQuery.trim();
const maybeCommand = query.split(/\s+/)[0];
if (query === 'clear') {
if (query === 'clear' || query === '/clear') {
// This just clears the *UI* history, not the model history.
// TODO: add a slash command for that.
setDebugMessage('Clearing terminal.');
setHistory((_) => []);
return true;
}
if (
query === 'exit' ||
query === '/exit' ||
query === 'quit' ||
query === '/quit'
) {
setDebugMessage('Quitting. Good-bye.');
const timestamp = getNextMessageId(Date.now());
addHistoryItem(
setHistory,
{ type: 'info', text: 'good-bye!' },
timestamp,
);
process.exit(0);
return true;
}
const maybeCommand = query.split(/\s+/)[0];
if (config.getPassthroughCommands().includes(maybeCommand)) {
// Execute and capture output
const targetDir = config.getTargetDir();
@ -147,11 +163,11 @@ export const useGeminiStream = (
});
// Set state to Responding while the command runs
setStreamingState(StreamingState.Responding);
return true; // Prevent Gemini call
return true;
}
return true;
}
return false; // Not handled by a manual command.
};
// Improved submit query function
const submitQuery = useCallback(