AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | π Star if you like it!
Crawler Summary
CrewAI-Powered Blog Automation Suite - Workflow for automated content creation, research, SEO optimization, and publishing to Ghost CMS. CrewAI Blog Generation System π **Generate high-quality blog posts on any topic using AI agents!** This system uses 6 specialized AI agents to automatically research, write, optimize, and publish comprehensive blog posts. Perfect for content creators, bloggers, and businesses who need consistent, high-quality content. β¨ What It Does - **π Researches** any topic using real-time web search - **βοΈ Writes** comprehensi Capability contract not published. No trust telemetry is available yet. 2 GitHub stars reported by the source. Last updated 2/25/2026.
Freshness
Last checked 2/25/2026
Best For
Blogging-with-CrewAI is best for crewai, multi-agent workflows where OpenClaw compatibility matters.
Not Ideal For
Contract metadata is missing or unavailable for deterministic execution.
Evidence Sources Checked
editorial-content, GITHUB REPOS, runtime-metrics, public facts pack
CrewAI-Powered Blog Automation Suite - Workflow for automated content creation, research, SEO optimization, and publishing to Ghost CMS. CrewAI Blog Generation System π **Generate high-quality blog posts on any topic using AI agents!** This system uses 6 specialized AI agents to automatically research, write, optimize, and publish comprehensive blog posts. Perfect for content creators, bloggers, and businesses who need consistent, high-quality content. β¨ What It Does - **π Researches** any topic using real-time web search - **βοΈ Writes** comprehensi
Public facts
5
Change events
1
Artifacts
0
Freshness
Feb 25, 2026
Capability contract not published. No trust telemetry is available yet. 2 GitHub stars reported by the source. Last updated 2/25/2026.
Trust score
Unknown
Compatibility
OpenClaw
Freshness
Feb 25, 2026
Vendor
Christancho
Artifacts
0
Benchmarks
0
Last release
Unpublished
Key links, install path, and a quick operational read before the deeper crawl record.
Summary
Capability contract not published. No trust telemetry is available yet. 2 GitHub stars reported by the source. Last updated 2/25/2026.
Setup snapshot
Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.
Vendor
Christancho
Protocol compatibility
OpenClaw
Adoption signal
2 GitHub stars
Handshake status
UNKNOWN
Crawlable docs
6 indexed pages on the official domain
Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.
Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.
Extracted files
0
Examples
6
Snippets
0
Languages
python
bash
python3.12 --version # Should show 3.12.x
bash
# Clone the repository git clone https://git.christianmendieta.ca/christancho/Blogging-with-CrewAI.git cd Blogging-with-CrewAI # Create virtual environment with Python 3.12 (recommended) python3.12 -m venv venv source venv/bin/activate # On macOS/Linux # OR: venv\Scripts\activate # On Windows # Install dependencies pip install --upgrade pip pip install -r requirements.txt # Set up your API keys cp .env.example .env
env
# Required OPENAI_API_KEY=sk-your-openai-key-here BRAVE_SEARCH_API_KEY=your-brave-search-key-here GHOST_API_KEY=your-ghost-api-key-here GHOST_API_URL=https://your-ghost-site.com
bash
# Interactive mode (recommended for first time) python main.py # Or specify a topic directly python main.py --topic "How to start a successful blog"
env
LLM_API_BASE_URL=https://api.openai.com/v1 LLM_API_KEY=your-openai-api-key LLM_MODEL_NAME=gpt-4o-mini LLM_TEMPERATURE=0.7
env
LLM_API_BASE_URL=https://api.openai.com/v1 LLM_API_KEY=sk-your-key-here LLM_MODEL_NAME=gpt-4o-mini # 128K context, fast, cheap LLM_TEMPERATURE=0.7
Full documentation captured from public sources, including the complete README when available.
Docs source
GITHUB REPOS
Editorial quality
ready
CrewAI-Powered Blog Automation Suite - Workflow for automated content creation, research, SEO optimization, and publishing to Ghost CMS. CrewAI Blog Generation System π **Generate high-quality blog posts on any topic using AI agents!** This system uses 6 specialized AI agents to automatically research, write, optimize, and publish comprehensive blog posts. Perfect for content creators, bloggers, and businesses who need consistent, high-quality content. β¨ What It Does - **π Researches** any topic using real-time web search - **βοΈ Writes** comprehensi
π Generate high-quality blog posts on any topic using AI agents!
This system uses 6 specialized AI agents to automatically research, write, optimize, and publish comprehensive blog posts. Perfect for content creators, bloggers, and businesses who need consistent, high-quality content.
Python 3.10 or higher required (Python 3.12 recommended)
CrewAI 0.5.0 uses modern type hints (Type | None) that require Python 3.10+. If you're using Python 3.9 or earlier, you'll need to upgrade.
python3.12 --version # Should show 3.12.x
Don't have Python 3.12? Install it:
brew install [email protected]sudo apt install python3.12 python3.12-venv# Clone the repository
git clone https://git.christianmendieta.ca/christancho/Blogging-with-CrewAI.git
cd Blogging-with-CrewAI
# Create virtual environment with Python 3.12 (recommended)
python3.12 -m venv venv
source venv/bin/activate # On macOS/Linux
# OR: venv\Scripts\activate # On Windows
# Install dependencies
pip install --upgrade pip
pip install -r requirements.txt
# Set up your API keys
cp .env.example .env
Required:
https://your-site.com/ghost)5d4c...) - NOT the Content API Keyhttps://your-site.com)β οΈ Important: You need the Admin API Key, not the Content API Key, to create posts!
Edit your .env file:
# Required
OPENAI_API_KEY=sk-your-openai-key-here
BRAVE_SEARCH_API_KEY=your-brave-search-key-here
GHOST_API_KEY=your-ghost-api-key-here
GHOST_API_URL=https://your-ghost-site.com
# Interactive mode (recommended for first time)
python main.py
# Or specify a topic directly
python main.py --topic "How to start a successful blog"
The system now supports ANY LLM provider! Configure your preferred provider (OpenAI, Anthropic Claude, OpenRouter, local models, etc.)
LLM_API_BASE_URL=https://api.openai.com/v1
LLM_API_KEY=your-openai-api-key
LLM_MODEL_NAME=gpt-4o-mini
LLM_TEMPERATURE=0.7
LLM_API_BASE_URL=https://api.openai.com/v1
LLM_API_KEY=sk-your-key-here
LLM_MODEL_NAME=gpt-4o-mini # 128K context, fast, cheap
LLM_TEMPERATURE=0.7
LLM_API_BASE_URL=https://api.anthropic.com/v1
LLM_API_KEY=sk-ant-your-key-here
LLM_MODEL_NAME=claude-3-5-sonnet-20241022 # 200K context
LLM_TEMPERATURE=0.7
LLM_API_BASE_URL=https://openrouter.ai/api/v1
LLM_API_KEY=sk-or-your-key-here
LLM_MODEL_NAME=anthropic/claude-3-5-sonnet # or openai/gpt-4o-mini
LLM_TEMPERATURE=0.7
LLM_API_BASE_URL=http://localhost:11434/v1
LLM_API_KEY=not-needed
LLM_MODEL_NAME=llama3:70b # or mixtral:8x7b
LLM_TEMPERATURE=0.7
Your model MUST have at least 128K context window to avoid errors. Models with smaller context (like gpt-4 with 8K) will fail.
Recommended Models:
gpt-4o-mini (OpenAI, 128K, fast, cheap)gpt-4o (OpenAI, 128K, most capable)claude-3-5-sonnet-20241022 (Anthropic, 200K)llama3:70b (Local, 128K+ via Ollama)Avoid These:
gpt-4 - Only 8K contextgpt-3.5-turbo - Only 16K contextThe system uses 6 AI agents working together:
1. π Research Agent β Finds current information about your topic
2. βοΈ Content Writer β Creates a 3500-word structured article
3. π― SEO Optimizer β Optimizes for search engines + generates tags
4. π HTML Formatter β Converts to Ghost CMS-ready HTML
5. β
Quality Reviewer β Checks accuracy and quality
6. π Ghost Publisher β Posts to Ghost CMS as draft (automatic!)
The system works with any topic - not just technical ones:
Business & Marketing:
Lifestyle & Health:
Technology:
Education:
And many more! Just provide any topic and the AI will research and write about it.
Every generated article follows this structure:
Total: ~3500 words with SEO optimization and auto-generated tags
# Interactive mode - system will ask for your topic
python main.py
# Direct topic specification
python main.py --topic "Remote work productivity tips"
# Skip approval step (auto-approve)
python main.py --topic "Climate change solutions" --no-approval
# List all generated posts
python main.py --list
# Generate multiple posts
python main.py --topic "AI in healthcare"
python main.py --topic "Sustainable energy solutions"
python main.py --topic "Digital nomad lifestyle"
Blogging-with-CrewAI/
βββ main.py # Main script - run this!
βββ agents.py # AI agent definitions
βββ tasks.py # What each agent does
βββ tools.py # Search, SEO, and publishing tools
βββ config.py # Configuration settings
βββ requirements.txt # Python dependencies
βββ .env # Your API keys (create this)
βββ output/ # Generated blog posts (auto-created)
You can customize the system by editing your .env file:
# LLM Provider (supports ANY provider!)
LLM_API_BASE_URL=https://api.openai.com/v1
LLM_API_KEY=your-key-here
LLM_MODEL_NAME=gpt-4o-mini
LLM_TEMPERATURE=0.7
# Search API
BRAVE_SEARCH_API_KEY=your-key-here
# Ghost CMS (for publishing)
GHOST_API_KEY=your-key-here
GHOST_API_URL=https://your-site.com
GHOST_AUTHOR_ID=1
# Legacy OpenAI vars (deprecated, use LLM_* above)
OPENAI_API_KEY=your-key-here
OPENAI_MODEL_NAME=gpt-4o-mini
OPENAI_TEMPERATURE=0.7
Using Anthropic Claude:
LLM_API_BASE_URL=https://api.anthropic.com/v1
LLM_API_KEY=sk-ant-your-key
LLM_MODEL_NAME=claude-3-5-sonnet-20241022
LLM_TEMPERATURE=0.7
Using Local Ollama:
LLM_API_BASE_URL=http://localhost:11434/v1
LLM_API_KEY=not-needed
LLM_MODEL_NAME=llama3:70b
LLM_TEMPERATURE=0.7
"Configuration Error: Missing required environment variables"
.env file exists and has valid API keysOPENAI_API_KEY, BRAVE_SEARCH_API_KEY, GHOST_API_KEY, GHOST_API_URLTypeError: unsupported operand type(s) for |
# Check your Python version
python --version
# If it's < 3.10, recreate venv with Python 3.12
rm -rf venv
python3.12 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
"Rate limit exceeded"
gpt-4o-mini model for even better performance"Search failed with status code: 401"
cannot import name 'BaseTool' from 'crewai.tools'
langchain.tools"Ghost CMS authentication failed"
/ghost)"Ghost CMS API endpoint not found"
https://your-site.com)"Error during blog generation"
Warning: Mixing V1 models and V2 models
Every time you work on the project, remember to activate the virtual environment:
cd "/path/to/Blogging-with-CrewAI"
source venv/bin/activate # macOS/Linux
# OR
venv\Scripts\activate # Windows
When you're done: deactivate
Per blog post (3500 words):
| Provider | Cost per Post | Notes | |----------|---------------|-------| | OpenAI (gpt-4o-mini) | ~$0.10-0.20 | β Recommended | | OpenAI (gpt-4o) | ~$0.50-1.00 | More capable but pricier | | Anthropic Claude | ~$0.15-0.30 | Great alternative | | OpenRouter | Varies | Pay-as-you-go from multiple providers | | Local (Ollama) | FREE | Requires local GPU/CPU resources | | Brave Search | FREE | 2000 searches/month included | | Ghost CMS | FREE | If you have Ghost hosting |
Most cost-effective setup: Local Ollama + Free Brave Search = $0.00 per post π
After running the system, you'll have:
output/ folderagents.pyReady to generate amazing blog content? Start with the Quick Start guide above! π
Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.
Contract coverage
Status
missing
Auth
None
Streaming
No
Data region
Unspecified
Protocol support
Requires: none
Forbidden: none
Guardrails
Operational confidence: low
curl -s "https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/snapshot"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/contract"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/trust"
Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.
Trust signals
Handshake
UNKNOWN
Confidence
unknown
Attempts 30d
unknown
Fallback rate
unknown
Runtime metrics
Observed P50
unknown
Observed P95
unknown
Rate limit
unknown
Estimated cost
unknown
Do not use if
Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.
Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | π Star if you like it!
AI Agents & MCPs & AI Workflow Automation β’ (~400 MCP servers for AI agents) β’ AI Automation / AI Agent with MCPs β’ AI Workflows & AI Agents β’ MCPs for AI Agents
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
The Frontend for Agents & Generative UI. React + Angular
Contract JSON
{
"contractStatus": "missing",
"authModes": [],
"requires": [],
"forbidden": [],
"supportsMcp": false,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": null,
"outputSchemaRef": null,
"dataRegion": null,
"contractUpdatedAt": null,
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/snapshot",
"contractUrl": "https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/contract",
"trustUrl": "https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/trust"
},
"curlExamples": [
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/snapshot\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/contract\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": [
"OPENCLEW"
]
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "GITHUB_REPOS",
"generatedAt": "2026-10-09T21:43:38.759Z"
}
},
"retryPolicy": {
"maxAttempts": 3,
"backoffMs": [
500,
1500,
3500
],
"retryableConditions": [
"HTTP_429",
"HTTP_503",
"NETWORK_TIMEOUT"
]
}
}Trust JSON
{
"status": "unavailable",
"handshakeStatus": "UNKNOWN",
"verificationFreshnessHours": null,
"reputationScore": null,
"p95LatencyMs": null,
"successRate30d": null,
"fallbackRate": null,
"attempts30d": null,
"trustUpdatedAt": null,
"trustConfidence": "unknown",
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Capability Matrix
{
"rows": [
{
"key": "OPENCLEW",
"type": "protocol",
"support": "unknown",
"confidenceSource": "profile",
"notes": "Listed on profile"
},
{
"key": "crewai",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "multi-agent",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
}
],
"flattenedTokens": "protocol:OPENCLEW|unknown|profile capability:crewai|supported|profile capability:multi-agent|supported|profile"
}Facts JSON
[
{
"factKey": "docs_crawl",
"category": "integration",
"label": "Crawlable docs",
"value": "6 indexed pages on the official domain",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
},
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Christancho",
"href": "https://github.com/christancho/Blogging-with-CrewAI",
"sourceUrl": "https://github.com/christancho/Blogging-with-CrewAI",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-25T05:06:43.358Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-02-25T05:06:43.358Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "2 GitHub stars",
"href": "https://github.com/christancho/Blogging-with-CrewAI",
"sourceUrl": "https://github.com/christancho/Blogging-with-CrewAI",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-25T05:06:43.358Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-christancho-blogging-with-crewai/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
]Change Events JSON
[
{
"eventType": "docs_update",
"title": "Docs refreshed: Sign in to GitHub Β· GitHub",
"description": "Fresh crawlable documentation was indexed for the official domain.",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
}
]Sponsored
Ads related to Blogging-with-CrewAI and adjacent AI workflows.