Integraciones
Mastra
Envuelve Thunderbit como Tool de Mastra para agentes y workflows
Mastra es un framework de TypeScript para agentes de IA y workflows. Su primitiva createTool encaja perfectamente con /distill.
Instalación
npm install @mastra/core zodDefinir la Tool
import { createTool } from '@mastra/core/tools';
import { z } from 'zod';
const API = 'https://openapi.thunderbit.com/openapi/v1';
const H = { Authorization: `Bearer ${process.env.THUNDERBIT_API_KEY}` };
export const readUrlTool = createTool({
id: 'read-url',
description:
'Fetch a URL and return clean Markdown for the agent to read.',
inputSchema: z.object({
url: z.string().url(),
renderMode: z.enum(['basic', 'advanced']).default('basic'),
}),
outputSchema: z.object({ markdown: z.string() }),
execute: async ({ context }) => {
const res = await fetch(`${API}/distill`, {
method: 'POST',
headers: { ...H, 'Content-Type': 'application/json' },
body: JSON.stringify(context),
});
const json = await res.json();
return { markdown: json.data.markdown };
},
});Conectar a un Agent
import { Agent } from '@mastra/core/agent';
import { openai } from '@ai-sdk/openai';
export const researcher = new Agent({
name: 'researcher',
instructions: 'Use read-url to fetch any URL the user asks about.',
model: openai('gpt-4o'),
tools: { readUrlTool },
});Usar en un Workflow
Para pipelines multi-paso, llama a /batch/distill desde un Step de Mastra y haz polling hasta COMPLETED — ver Ciclo de vida de un Batch Job.