import type { GeneratorConfig } from '../types.js'; /** * Generates README.md content for the tool package */ export function generateReadme(config: GeneratorConfig): string { const { packageInfo, tools } = config; const toolsList = tools.map((tool) => `- **${tool.name}**: ${tool.description}`).join('\n'); const usageExample = tools[0]; if (!usageExample) { throw new Error('At least one tool is required'); } return `# ${packageInfo.name} ${packageInfo.description} ## Installation \`\`\`bash pnpm add ${packageInfo.name} \`\`\` ## Tools This package provides ${tools.length} tool${tools.length > 1 ? 's' : ''} for the AI SDK: ${toolsList} ## Usage \`\`\`typescript import { ${usageExample.name} } from '${packageInfo.name}'; import { generateText } from 'ai'; import { openai } from '@ai-sdk/openai'; const result = await generateText({ model: openai('gpt-4'), prompt: 'Process this text for me', tools: { ${usageExample.name}, }, }); console.log(result.text); \`\`\` ## Development \`\`\`bash # Install dependencies pnpm install # Build the package pnpm build # Type-check pnpm type-check # Watch mode pnpm dev \`\`\` ## Publishing 1. Update the version in \`package.json\` 2. Build the package: \`pnpm build\` 3. Publish to npm: \`pnpm publish --access public\` 4. Your tools will appear on [tpmjs.com](https://tpmjs.com) within 2-15 minutes ## License ${packageInfo.license} `; }