direct gmail initial commit

This commit is contained in:
Arjun 2026-05-13 11:57:09 +05:30
parent b01af12148
commit e4244a8ce5
9 changed files with 318 additions and 75 deletions

View file

@ -88,12 +88,13 @@ export type CalendarBlock = z.infer<typeof CalendarBlockSchema>;
export const EmailBlockSchema = z.object({
threadId: z.string().optional(),
threadUrl: z.string().url().optional(),
summary: z.string().optional(),
subject: z.string().optional(),
from: z.string().optional(),
to: z.string().optional(),
date: z.string().optional(),
latest_email: z.string(),
latest_email: z.string().optional(),
past_summary: z.string().optional(),
draft_response: z.string().optional(),
response_mode: z.enum(['inline', 'assistant', 'both']).optional(),

View file

@ -17,6 +17,7 @@ import { UserMessageContent } from './message.js';
import { RowboatApiConfig } from './rowboat-account.js';
import { ZListToolkitsResponse } from './composio.js';
import { BrowserStateSchema } from './browser-control.js';
import { EmailBlockSchema } from './blocks.js';
// ============================================================================
// Runtime Validation Schemas (Single Source of Truth)
@ -122,6 +123,15 @@ const ipcSchemas = {
req: WorkspaceChangeEvent,
res: z.null(),
},
'gmail:getThread': {
req: z.object({
threadId: z.string().min(1),
}),
res: z.object({
thread: EmailBlockSchema.nullable(),
error: z.string().optional(),
}),
},
'mcp:listTools': {
req: z.object({
serverName: z.string(),