import { HyperAgent, AgentActionDefinition, ActionContext, ActionOutput } from "@hyperbrowser/agent";
import { z } from "zod";
const SendEmailAction: AgentActionDefinition = {
type: "send_email",
actionParams: z.object({
to: z.string().describe("Email recipient address"),
subject: z.string().describe("Email subject line"),
body: z.string().describe("Email body content"),
}).describe("Send an email to a specified recipient"),
run: async function(
ctx: ActionContext,
params: { to: string; subject: string; body: string }
): Promise<ActionOutput> {
// Your email sending logic here
await sendEmail(params.to, params.subject, params.body);
return {
success: true,
message: `Successfully sent email to ${params.to}`,
};
},
};