import 'dotenv/config'; import { Consumer, consumerSchema } from './types'; import { Tool } from './tool'; import { BaseTool, makeRequest } from '@anthropic'; import { generatePrompt } from './prompt'; import { generateConsumerSeed } from '@utils/generateConsumerSeed'; export async function generate() { const { letters, birthday, zipCode } = generateConsumerSeed(); console.info(`New consumer being generated`); const prompt = generatePrompt(letters, birthday, zipCode); try { const result = (await makeRequest(prompt, Tool as BaseTool)) as Consumer; const validConsumer = consumerSchema.safeParse(result); if (validConsumer.error) { throw Error(`Invalid consumer generated: ${validConsumer.error.message}`); } console.info('Generated consumer by Anthropic', validConsumer.data); return { consumer: validConsumer.data }; } catch (error) { console.error('Error generating purchases:', error); throw error; } }