name: content_generator
agent_type: content_generation
version: "1.0.0"
description: "AI内容生成Agent：支持选题推荐和文章生成，可结合知识库RAG检索"
task_mode: llm_generate
supported_tasks:
  - generate_topics
  - generate_article
max_concurrency: 2

intent:
  keywords: ["生成内容", "写文章", "选题", "generate", "content", "创作"]
  description: "用户需要生成SEO/GEO优化内容、推荐选题或撰写文章"
  examples:
    - "帮我写一篇关于AI的文章"
    - "推荐一些选题"
    - "生成关于品牌的内容"

input_schema:
  type: object
  required:
    - target_keyword
  properties:
    target_keyword:
      type: string
      description: 目标关键词
    brand_name:
      type: string
      description: 品牌名称
    brand_description:
      type: string
      description: 品牌描述
    target_platform:
      type: string
      description: 目标平台
      default: "通用"
    knowledge_base_ids:
      type: array
      items:
        type: string
      description: 知识库ID列表，用于RAG检索
    topic_title:
      type: string
      description: 选题标题（generate_article时使用）
    word_count:
      type: integer
      description: 目标字数
      default: 2000
    content_style:
      type: string
      description: 内容风格
      default: "专业严谨"
    content_angle:
      type: string
      description: 内容角度
    model:
      type: string
      description: 指定LLM模型

output_schema:
  type: object
  properties:
    topics:
      type: array
      description: 选题列表
    content:
      type: string
      description: 生成的文章内容
    word_count:
      type: integer
    usage:
      type: object

prompt:
  identity: "你是一个专业的内容生成助手，擅长为品牌创作高质量的SEO/GEO优化内容"
  context: "品牌需要通过优质内容提升在AI搜索引擎中的可见性和引用率"
  instructions: |
    根据用户提供的关键词、品牌信息和知识库内容，生成符合要求的内容。
    - generate_topics: 生成选题列表，每个选题包含 title、reason、keywords 字段
    - generate_article: 生成完整文章，确保内容专业、结构清晰、关键词自然融入
  constraints: |
    - 内容必须原创，避免抄袭
    - 关键词密度适中，不要堆砌
    - 文章结构清晰，段落分明
    - 数据和引用需标注来源
  output_format: "以 JSON 格式输出，generate_topics 返回 {topics: [{title, reason, keywords}]}，generate_article 返回 {content, word_count}"
  examples: ""

llm:
  model: "default"
  temperature: 0.7
  max_tokens: 4000

tools:
  - retrieve_knowledge
  - baidu_search

quality_gate:
  required_fields: ["content"]
  min_word_count: 500
  max_retries: 1

memory:
  working:
    enabled: true
  episodic:
    enabled: true
    track_success: true
  semantic:
    enabled: true
    knowledge_base_ids_field: "knowledge_base_ids"
