Skip to content

AI Task Configuration Reference

Each AI operation uses a task ID to load the correct model configuration.

Task → Feature Mapping

Task IDEndpointFeature
blog_writing/api/generate-blog-post, /api/refine-blog-content, /api/chat-blogBlog generation/editing
campaign_content/api/campaigns/:id/generate-contentCampaign content generation
campaign_planning/api/campaigns/chat, /api/generate-content-calendarCampaign planning AI
image_generation/api/generate-imageImage generation
one_shot_refinement/api/refine-fieldQuick field refinement
profile_analysis/api/analyze-brand, /api/chat-brand, /api/refine-brand-fieldBrand analysis
social_assist/api/ai/assist-postSocial post AI assist
social_posts/api/generate-postsPost generation from URLs
video_script/api/generate-video-scriptVideo script generation

Usage Pattern

typescript
import { aiService } from '../services/ai.service.js';

const result = await aiService.generateContent({
  companyId,
  userId,
  task: 'social_assist',  // Task ID determines model
  userPrompt: 'Generate a LinkedIn post about...',
});

Model Selection

Tasks are configured in AIModelConfig table:

  • Opus: Complex reasoning (campaign_planning)
  • Sonnet: Quality content (blog_writing, social_posts, video_script)
  • Haiku: Fast/cheap (social_assist, profile_analysis, one_shot_refinement)

Reserved Tasks

TaskStatus
performance_analysisReserved for future analytics features
test_social_postsQA/testing only - not user-facing

TendSocial Documentation