seo_blog.json
Overview
The seo_blog.json file defines a comprehensive SEO Blog Generation Workflow designed to automatically produce SEO-optimized blog articles from minimal user input. It encapsulates a multi-agent system that interprets user requests, generates structured blog outlines, writes content section-by-section, and performs final editorial polishing to ensure quality and SEO effectiveness.
This workflow enables users without writing expertise to generate professional-quality blog posts by simply providing a topic, target audience, and blog goals. The system orchestrates a sequence of specialized agents, each responsible for a distinct stage of blog creation, leveraging large language models (LLMs) and search tools to enhance content relevance and SEO alignment.
Detailed Components
The core of this file is the DSL (Domain Specific Language) definition of interconnected components (agents and messages), their configurations, and the workflow graph connecting them.
Key Agents and Their Roles
1. Agent:ClearRabbitsScream — Parse and Keyword Agent
Purpose:
Interprets the user's blog writing request to extract the writing intent and generate a keyword strategy.
Functionality:
Parses informal or vague user input to infer:
Writing Type (e.g., Tutorial, Informative Guide, Marketing Content, etc.)
Target Audience (specific demographics or roles)
User Intent Summary (what the user aims to achieve)
Suggests 3–5 long-tail keywords relevant to the topic and intent.
Outputs this structured brief in Markdown format for downstream consumption.
Parameters:
llm_id: "deepseek-chat@DeepSeek" (LLM model for understanding input)frequency_penalty: 0.5presence_penalty: 0.5max_rounds: 1max_retries: 3temperature: 0.2 (controls randomness, low for consistency)message_history_window_size: 12
Input:
The user query (
sys.query).
Output:
Markdown text containing structured writing type, audience, intent summary, and keywords.
Usage Example:
If the user inputs:"How to get more Google traffic using AI"
The agent might output:
## Writing Type
How-to
## Target Audience
SEO marketers
## User Intent Summary
Guide readers on applying AI for SEO growth
## Suggested Long-tail Keywords
- AI for SEO traffic
- Google SEO tips with AI
- Increase Google traffic using AI
Notes:
This agent does not write blog content but only prepares a structured brief.
2. Agent:BetterSitesSend — Outline Agent
Purpose:
Generates a clear, SEO-optimized blog outline based on the parsed intent and keywords.
Functionality:
Creates a logical blog structure with H2 and H3 headings.
Suggests 1–2 long-tail keywords per major section.
Ensures clarity, SEO alignment, and readability.
Uses a search tool
Tavily Searchoptionally to find relevant outlines or content examples for structure inspiration (not for writing paragraphs).Outputs the outline in Markdown format suitable for downstream content generation.
Parameters:
llm_id: "deepseek-chat@DeepSeek"frequency_penalty: 0.3presence_penalty: 0.2max_rounds: 3max_retries: 3temperature: 0.5 (allows some creativity)message_history_window_size: 12Access to
Tavily Searchtool for up to 5 search results on related content.
Input:
Markdown output from the Parse and Keyword Agent (
Agent:ClearRabbitsScream@content).
Output:
Markdown blog title suggestion and detailed outline with section descriptions and keyword recommendations.
Usage Example:
Given the parsed intent and keywords, the agent might output:
## Blog Title (suggested)
How to Boost Google Traffic Using AI: A Step-by-Step Guide
## Outline
### Introduction
- Purpose of the article
- Brief context
- **Suggested keywords**: [AI for SEO, Google traffic growth]
### H2: Understanding AI in SEO
- Overview of AI applications in SEO
- **Suggested keywords**: [AI SEO tools, AI for search ranking]
### H2: Strategies to Increase Traffic
- Step-by-step tactics integrating AI
- **Suggested keywords**: [AI content optimization, Google SEO tips]
### Conclusion
- Recap key takeaways
- Optional CTA
- **Suggested keywords**: [increase Google traffic]
3. Agent:EagerNailsRemain — Body Agent
Purpose:
Writes the full blog content section-by-section based on the outline and keywords.
Functionality:
Generates natural, engaging, and SEO-friendly paragraphs for each section (H2/H3).
Integrates suggested long-tail keywords seamlessly.
Uses
Tavily Searchto enrich content with facts, examples, or statistics if the outline lacks detail.Cites sources when using external information.
Parameters:
llm_id: "deepseek-chat@DeepSeek"frequency_penalty: 0.5presence_penalty: 0.5max_rounds: 5max_retries: 3temperature: 0.2 (focus on quality and clarity)Access to
Tavily Searchtool for up to 5 results.
Input:
Blog title, structured outline, target audience, and user intent from previous agents.
Output:
Markdown text content for each section, approximately 500-600 words per H2 heading.
Usage Example:
For the section "Understanding AI in SEO," it generates:
## H2: Understanding AI in SEO
Artificial intelligence (AI) has revolutionized the way SEO professionals approach search engine optimization. By leveraging AI-powered tools, marketers can analyze data patterns, predict trends, and optimize content more effectively than ever before...
[Content continues, naturally embedding keywords such as "AI SEO tools" and "AI for search ranking."]
4. Agent:LovelyHeadsOwn — Editor Agent
Purpose:
Finalizes the blog post to ensure readability, coherence, and SEO effectiveness.
Functionality:
Polishes grammar, style, and flow between sections.
Enhances transitions and logical progression.
Checks keyword usage for natural inclusion and appropriate density.
Performs a lightweight SEO audit (headings structure, meta title, meta description).
Outputs the fully revised and polished blog post.
Parameters:
llm_id: "deepseek-chat@DeepSeek"frequency_penalty: 0.5presence_penalty: 0.5max_rounds: 5max_retries: 3temperature: 0.2 (precision and clarity)
Input:
Full blog content from Body Agent and original outline.
Output:
Final polished blog content in Markdown.
5. Message:LegalBeansBet — Final Output Message
Purpose:
Contains the final polished blog content to be delivered to the user or downstream system.
6. begin — Entry Point
Purpose:
Initial node in the workflow that starts the conversational interaction with the user.
Functionality:
Presents a prologue asking the user for:
Blog topic
Target audience
Blog goals (e.g., SEO traffic, teaching, promotion)
Supporting Tools
Tavily Search: A search tool integrated with several agents to fetch relevant web content or outline structures to improve SEO content quality and factual accuracy.
Workflow Overview and Interactions
The workflow progresses through the following stages:
User Input Collection (
begin)
Initiates the conversation and receives minimal user input.Parsing and Keyword Extraction (
Agent:ClearRabbitsScream)
Understands user intent, writing type, audience, and generates keyword suggestions.Outline Generation (
Agent:BetterSitesSend)
Creates a structured blog outline based on the parsed brief.Content Writing (
Agent:EagerNailsRemain)
Generates detailed, SEO-optimized content for each blog section.Editing and Polishing (
Agent:LovelyHeadsOwn)
Finalizes the blog for clarity, SEO, and style.Output Delivery (
Message:LegalBeansBet)
Provides the final blog content for use outside the workflow.
Each agent uses output from its upstream agent(s) as input, forming a linear pipeline with optional tool calls for external data enrichment. The flow is strictly controlled with retries and error handling parameters to ensure robustness.
Important Implementation Details
LLM Usage: Each agent leverages the same LLM ("deepseek-chat@DeepSeek") but with tailored parameters (temperature, penalties, max rounds) suited to their task.
Markdown Communication: Agents communicate via Markdown formatted text, enabling structured yet human-readable intermediate data.
SEO Focus: Agents explicitly incorporate SEO best practices such as keyword usage, logical heading structures, and meta elements.
Tool Integration: The
Tavily Searchtool is selectively employed to supplement content with up-to-date information or structural inspiration.Error Handling: Parameters like
delay_after_error,max_retries, andexception_goto(though empty here) suggest robustness is built-in.Message History Window: Agents maintain a history window (up to 12 messages) to provide conversational context.
Multi-language Support: Titles and descriptions include English and Chinese versions, indicating localization capability.
Interaction With System/Application
This file serves as a workflow definition within a broader AI-powered content generation platform.
The agents correspond to modular microservices or functions that execute LLM prompts and tool calls.
User inputs are injected into the
sys.queryglobal variable and routed through the pipeline.Final output is encapsulated in a
Messagenode ready for delivery via UI, API, or other interfaces.The workflow can be integrated into CMS, marketing platforms, or SEO tools to automate blog content creation.
Visual Diagram: Workflow Flowchart
flowchart LR
Begin("Begin\n(User Input)")
ParseKW("Parse and Keyword Agent\n(Interpret User Intent + Keywords)")
Outline("Outline Agent\n(Create Blog Structure)")
Body("Body Agent\n(Write Section Content)")
Editor("Editor Agent\n(Finalize and Polish)")
Message("Output Message\n(Final Blog Content)")
TavilySearch1("Tavily Search\n(Support for Outline Agent)")
TavilySearch2("Tavily Search\n(Support for Body Agent)")
Begin --> ParseKW
ParseKW --> Outline
Outline --> TavilySearch1
TavilySearch1 -.-> Outline
Outline --> Body
Body --> TavilySearch2
TavilySearch2 -.-> Body
Body --> Editor
Editor --> Message
Summary of Agents and Their Parameters
Agent Name | Role | LLM Temperature | Max Rounds | Key Feature |
|---|---|---|---|---|
Parse and Keyword | Parse user intent & keywords | 0.2 | 1 | Extracts intent, audience, keywords |
Outline | Generate blog outline | 0.5 | 3 | Structured headings + SEO keywords |
Body | Write blog content | 0.2 | 5 | Section-by-section content writing |
Editor | Polish and SEO audit | 0.2 | 5 | Final editing & SEO optimization |
Usage Scenario Example
User initiates the workflow by entering:
"I want a how-to guide on improving Google SEO using AI for marketing managers."The Parse and Keyword Agent extracts:
Writing Type: How-to
Target Audience: Marketing managers
Intent: Guide on improving Google SEO with AI
Keywords: AI SEO tools, Google SEO tips, AI marketing strategies
The Outline Agent creates a structured blog outline with appropriate headings and assigns keywords.
The Body Agent writes detailed paragraphs for each section, embedding keywords naturally.
The Editor Agent refines the content for clarity, flow, and SEO best practices.
The final polished blog post is output and ready for publication or export.