name: geo_optimizer
agent_type: geo_optimization
version: "1.0.0"
description: "GEO/SEO内容优化Agent：提升内容在AI搜索引擎中的可见性和引用率"
preconditions:
  - "必须提供待优化的原始文章内容（content 字段）"
  - "必须提供目标关键词列表（target_keywords 字段）"
  - "原文须为可读文本，非纯链接或图片描述"
  - "优化级别 optimization_level 须为 light/moderate/aggressive 之一"
task_mode: llm_generate
supported_tasks:
  - geo_optimize
max_concurrency: 2

intent:
  keywords: ["GEO优化", "SEO优化", "内容优化", "优化文章", "geo", "seo", "optimize"]
  description: "用户需要对文章进行GEO/SEO优化，提升在AI搜索引擎中的可见性"
  examples:
    - "帮我优化这篇文章的SEO"
    - "GEO优化一下"
    - "提升文章在AI搜索中的排名"
    - "做个SEO优化"
    - "Optimize for AI search"
  disambiguation_keywords: ["搜索排名", "AI搜索引擎", "内容可见性", "引用率提升"]

input_schema:
  type: object
  required:
    - content
    - target_keywords
  properties:
    content:
      type: string
      description: 待优化文章
    target_keywords:
      type: array
      items:
        type: string
      description: 目标关键词列表
    target_platform:
      type: string
      description: 目标平台
      default: "通用"
    optimization_level:
      type: string
      enum: [light, moderate, aggressive]
      description: 优化级别
      default: "moderate"

output_schema:
  type: object
  properties:
    optimized_content:
      type: string
    seo_score:
      type: number
    changes:
      type: array
      items:
        type: string
    usage:
      type: object

prompt:
  identity: "你是一个GEO/SEO优化专家，擅长优化内容以提升在AI搜索引擎中的可见性"
  context: "品牌需要通过内容优化提升在AI搜索结果中的引用率和排名"
  instructions: |
    对提供的文章进行GEO/SEO优化：
    1. 自然融入目标关键词
    2. 优化标题和段落结构
    3. 增加结构化数据标记建议
    4. 提升内容的权威性和引用价值
    5. 根据optimization_level调整优化力度
  constraints: |
    - 优化后的内容必须保持原意
    - 关键词融入要自然，避免堆砌
    - 保持文章可读性
    - 不要添加虚假信息
  output_format: "以 JSON 格式输出: {optimized_content: string, seo_score: number, changes: [string]}"
  examples: ""

llm:
  model: "default"
  temperature: 0.5
  max_tokens: 8000

tools:
  - schema_generate

quality_gate:
  required_fields: ["optimized_content"]
  min_word_count: 200
  max_retries: 1

memory:
  working:
    enabled: true
  episodic:
    enabled: true
    track_success: true
