mastra-best-practices

安装量: 89
排名: #9032

安装

npx skills add https://github.com/mastra-ai/skills --skill mastra-best-practices

Mastra Best Practices

Quick reference for Mastra conventions. See mastra.ai/docs for details.

Agent vs Workflow Use When Agent Open-ended tasks (support, research) - reasons, decides tools, retains memory Workflow Defined sequences (pipelines, approvals) - orchestrates specific steps in order TypeScript Config (Required) { "compilerOptions": { "target": "ES2022", "module": "ES2022", "moduleResolution": "bundler" } }

Critical: CommonJS causes errors. Must use ES2022.

Project Structure src/mastra/ ├── tools/ # Custom tools ├── agents/ # Agent configs ├── workflows/ # Workflows └── index.ts # Mastra instance

Environment Variables OPENAI_API_KEY=... ANTHROPIC_API_KEY=... GOOGLE_GENERATIVE_AI_API_KEY=...

Quick Reference Basic Agent new Agent({ id: 'my-agent', name: 'My Agent', instructions: 'You are helpful', model: 'openai/gpt-4o', tools: { myTool } // optional })

Basic Workflow createWorkflow({ id: 'my-workflow', inputSchema: z.object({ input: z.string() }), outputSchema: z.object({ output: z.string() }) }) .then(step1) .commit()

Structured Output const response = await agent.generate('Extract: John, 30', { structuredOutput: { schema: z.object({ name: z.string(), age: z.number() }) } }) console.log(response.object) // Access via .object property

Streaming const stream = await agent.stream('Tell a story') for await (const chunk of stream.fullStream) { console.log(chunk) }

Key Conventions Use mastra.getAgent('name') / mastra.getWorkflow('name') not direct imports Always use env vars for API keys ES2022 modules required (not CommonJS) Test with Studio: npm run dev → http://localhost:4111 Resources Docs Agents Workflows

返回排行榜