Gemini support

This commit is contained in:
Louis Knight-Webb
2025-06-25 18:23:50 +01:00
parent 88e52ce501
commit ab55dd2796
10 changed files with 127 additions and 12 deletions

View File

@@ -99,6 +99,7 @@ export function OnboardingDialog({ open, onComplete }: OnboardingDialogProps) {
<p className="text-sm text-muted-foreground">
{executor.type === 'claude' && 'Claude Code from Anthropic'}
{executor.type === 'amp' && 'From Sourcegraph'}
{executor.type === 'gemini' && 'Google Gemini from Bloop'}
{executor.type === 'echo' &&
'This is just for debugging vibe-kanban itself'}
</p>

View File

@@ -36,12 +36,13 @@ export function ExecutionOutputViewer({
const isAmpExecutor = executor === 'amp';
const isClaudeExecutor = executor === 'claude';
const isGeminiExecutor = executor === 'gemini';
const hasStdout = !!executionProcess.stdout;
const hasStderr = !!executionProcess.stderr;
// Check if stdout looks like JSONL (for Amp or Claude executor)
// Check if stdout looks like JSONL (for Amp, Claude, or Gemini executor)
const { isValidJsonl, jsonlFormat } = useMemo(() => {
if ((!isAmpExecutor && !isClaudeExecutor) || !executionProcess.stdout) {
if ((!isAmpExecutor && !isClaudeExecutor && !isGeminiExecutor) || !executionProcess.stdout) {
return { isValidJsonl: false, jsonlFormat: null };
}
@@ -98,7 +99,7 @@ export function ExecutionOutputViewer({
} catch {
return { isValidJsonl: false, jsonlFormat: null };
}
}, [isAmpExecutor, isClaudeExecutor, executionProcess.stdout]);
}, [isAmpExecutor, isClaudeExecutor, isGeminiExecutor, executionProcess.stdout]);
// Set initial view mode based on JSONL detection
useEffect(() => {

View File

@@ -56,6 +56,7 @@ const availableExecutors = [
{ id: 'echo', name: 'Echo' },
{ id: 'claude', name: 'Claude' },
{ id: 'amp', name: 'Amp' },
{ id: 'gemini', name: 'Gemini' },
];
export function TaskDetailsToolbar({