A fully autonomous, AI-powered blog writing pipeline that researches, outlines, writes, and edits long-form content in your exact personal style โ while you sleep.
EchoInk runs a dark factory โ a fully automated, night-shift AI writing operation powered by five specialized agents. You give them a topic. They give you a 2,500โ3,500 word blog post that sounds exactly like you wrote it.
No generic AI slop. No cookie-cutter structure. Pure, personalized, publication-ready content.
The crew studies your writing samples, researches the web, builds an outline, drafts every word, and polishes it to perfection โ all without you lifting a finger.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ THE BLOG TEAM PIPELINE โ
โ โ
โ [Style Analyst] โ [Researcher] โ [Outliner] โ [Writer] โ [Editor] โ
โ ๐จ ๐ ๐ โ๏ธ โ
โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
| # | Agent | Crew Name | Model | Role |
|---|---|---|---|---|
| 1 | ๐จ | Crew_Style_Analyst |
Llama3.2 | Reads your writing samples & builds a Style Profile |
| 2 | ๐ | Crew_Researcher |
Qwen2.5-VL | Searches the web for fresh data & company context |
| 3 | ๐ | Crew_Outliner |
Llama3.2 | Architects the structure โ hooks, sections, flow |
| 4 | โ๏ธ | Crew_Writer |
Qwen2.5-VL | Drafts the full 2,500โ3,500 word post in your voice |
| 5 | โ | Crew_Editor |
Llama3.2 | Polishes length, SEO, style match & final quality |
"I am the keeper of your voice."
Reads every sample in your /samples directory and creates a detailed Style Profile โ capturing tone, sentence rhythm, vocabulary, paragraph structure, storytelling patterns, and humor. Every other agent must follow this profile exactly.
- Model:
Llama3.2-AgentHermes-Coder-3B(High-level analysis & management) - Tools:
DirectoryReadTool(samples folder) - Context Window: 32,000 tokens
- Max Execution: 300 seconds
"Fresh facts. Zero hallucinations."
Pulls real-time web data, industry stats, company angles, and supporting examples for the given topic. Provides clean research notes with cited sources so the writer never has to guess.
- Model:
Qwen2.5-VL-7B-Instruct(Precision worker, instruction-following) - Tools:
SerperDevTool(Web Search),FileReadTool - Context Window: 32,000 tokens
- Max Execution: 300 seconds
"Structure is half the battle."
Takes the research and style profile to architect a detailed outline โ strong hook, logical sections, subheadings, and a compelling CTA. Estimates word count per section and notes which examples to weave in.
- Model:
Llama3.2-AgentHermes-Coder-3B(Strategic thinking) - Tools: None (pure reasoning)
- Context Window: 32,000 tokens
- Max Execution: 300 seconds
"I am you. I write like you. I think like you."
Drafts the complete blog post โ first person, your voice, your cadence. Short-to-medium paragraphs, personal anecdotes, conversational authority. Never goes below 2,500 words.
- Model:
Qwen2.5-VL-7B-Instruct(High-output precision drafting) - Tools:
FileReadTool(style profile access) - Context Window: 32,000 tokens
- Max Execution: 300 seconds
"Nothing ships until it's perfect."
The final gate. Reviews the draft for length, flow, SEO optimization, style match, factual accuracy, and publication readiness. Adds a meta description and keyword recommendations.
- Model:
Llama3.2-AgentHermes-Coder-3B(Quality management) - Tools: None (editorial review)
- Context Window: 32,000 tokens
- Max Execution: 300 seconds
AI_BLOG_TEAM/
โโโ ๐ src/blog_team/ โ CORE APPLICATION (source of truth)
โ โโโ crew.py โ Agent & task orchestration
โ โโโ main.py โ CLI entry point
โ โโโ __init__.py
โ โโโ ๐ config/
โ โ โโโ agents.yaml โ Agent definitions (role, goal, backstory)
โ โ โโโ tasks.yaml โ Task definitions & expected outputs
โ โโโ ๐ tools/ โ Custom tool integrations
โ
โโโ ๐ modelfiles/ โ Ollama Modelfiles for each crew member
โ โโโ Crew_Style_Analyst.Modelfile
โ โโโ Crew_Researcher.Modelfile
โ โโโ Crew_Outliner.Modelfile
โ โโโ Crew_Writer.Modelfile
โ โโโ Crew_Editor.Modelfile
โ
โโโ ๐ samples/ โ YOUR writing samples (feeds Style Analyst)
โ โโโ ๐ derrick/ โ Derrick-John's blog posts & writings
โ
โโโ ๐ Website_echoink/ โ EchoInk marketing website
โ โโโ index.html
โ โโโ ecommerce.html
โ โโโ blog.html
โ โโโ style.css
โ โโโ script.js
โ
โโโ ๐ Logo_Asests/ โ Brand assets & logos
โ โโโ ๐ Logo_EchoInk_Blots/
โ
โโโ streamlit_app.py โ One-click Streamlit UI
โโโ pyproject.toml โ Package config & scripts
โโโ requirements.txt โ Python dependencies
โโโ .env โ API keys (never commit this!)
git clone https://github.com/derrickjohnpiper/AI_BLOG_TEAM.git
cd AI_BLOG_TEAMpython -m venv .venv
# Windows
.venv\Scripts\activate
# Mac/Linux
source .venv/bin/activate
pip install -e .Create a .env file in the root directory:
SERPER_API_KEY=your_serper_api_key_here
OPENAI_API_BASE=http://localhost:11434/v1
OPENAI_API_KEY=ollama
OPENAI_MODEL_NAME=Crew_Writer# Build each crew member from their Modelfile
ollama create Crew_Style_Analyst -f modelfiles/Crew_Style_Analyst.Modelfile
ollama create Crew_Researcher -f modelfiles/Crew_Researcher.Modelfile
ollama create Crew_Outliner -f modelfiles/Crew_Outliner.Modelfile
ollama create Crew_Writer -f modelfiles/Crew_Writer.Modelfile
ollama create Crew_Editor -f modelfiles/Crew_Editor.ModelfileDrop your blog posts, articles, or any writing into:
samples/derrick/
The more samples the better โ the Style Analyst uses everything it finds.
Option A โ Streamlit UI (Recommended):
streamlit run streamlit_app.pyOpen your browser to http://localhost:8501, enter your topic, and click Run The Blog Team โจ
Option B โ Command Line:
python -m blog_team.main
# or
blog_teamThis project runs 100% open source, locally-hosted models via Ollama โ zero API costs, zero per-token fees.
| Model | File | Size | Role Assignment |
|---|---|---|---|
Llama3.2-AgentHermes-Coder-3B-Q4_K_M |
.gguf |
~2GB | Style Analyst, Outliner, Editor |
Qwen2.5-VL-7B-Instruct-mmproj-BF16 |
.gguf |
~1.3GB | Researcher, Writer |
Why these models?
- Llama 3.2 (Hermes) โ Exceptional high-level reasoning, persona management, and structured thinking. Perfect for the manager/editor roles.
- Qwen 2.5-VL โ Outstanding instruction-following precision with vision capabilities. Ideal for research ingestion and long-form drafting.
Both models configured with:
- โ 32,000 token context window โ handles long documents without losing context
- โ Tool calling enabled โ agents can use web search, file reading, and custom tools
- โ No-think mode โ clean, direct output without verbose reasoning chains
All modelfiles live in /modelfiles/. Each crew member has a dedicated file that configures:
modelfiles/
โโโ Crew_Style_Analyst.Modelfile โ Llama3.2 | Style analysis | reads samples
โโโ Crew_Researcher.Modelfile โ Qwen2.5 | Web research | SerperDev tool
โโโ Crew_Outliner.Modelfile โ Llama3.2 | Blog structure | strategic planner
โโโ Crew_Writer.Modelfile โ Qwen2.5 | Long-form drafting | your voice
โโโ Crew_Editor.Modelfile โ Llama3.2 | QA + SEO | final gate
Each modelfile includes:
- Dedicated system prompt with role, goal, and backstory
- Tool calling configuration (JSON-schema format)
- Context window set to 32,000 tokens
- Temperature and parameter tuning per role
- Response format templates
The marketing website lives in /Website_echoink/. It explains the EchoInk service to clients and includes:
- Landing Page (
index.html) โ Service overview with dark factory branding - E-Commerce Page (
ecommerce.html) โ Blog packages & pricing - Blog Page (
blog.html) โ Sample posts & "Submit a Blog" form
To view locally, just open Website_echoink/index.html in your browser.
Defines each agent's role, goal, and backstory โ the personality and directive for each crew member.
Defines each task โ what to do, expected output format, which agent handles it, and what context it receives from prior tasks.
One-click browser UI. Enter a topic โ click Run โ watch the crew work in real time.
Topic Input
โ
โผ
๐จ Crew_Style_Analyst
Reads /samples โ Outputs Style Profile
โ
โผ
๐ Crew_Researcher
Searches web โ Outputs Research Notes
โ
โผ
๐ Crew_Outliner โโโ receives: Style Profile + Research Notes
Builds structure โ Outputs Blog Outline
โ
โผ
โ๏ธ Crew_Writer โโโ receives: Style Profile + Research + Outline
Drafts full post โ Outputs ~3,000 word draft
โ
โผ
โ
Crew_Editor โโโ receives: Full draft
Polishes + SEO โ Outputs: report.md (final post)
- Cloud Hosting โ Deploy models via free-tier cloud GPUs (Groq, Hugging Face Spaces, Replicate free tier)
- Style Profile Caching โ Skip re-analysis when samples haven't changed
- Multi-Author Support โ Maintain separate style profiles per author
- Automatic Publishing โ Push finalized posts directly to WordPress / Ghost / Substack
- SEO Score Integration โ Real-time keyword density and readability scoring
- Web Dashboard โ Full EchoInk client portal
Derrick-John Piper โ Founder of EchoInk, builder of AI-powered creative systems, and firm believer that your authentic voice shouldn't have an expiration date just because you're busy.
"I built The Blog Team so my writing could keep showing up even when I can't. This is my dark factory โ and it runs all night."
MIT License โ See LICENSE for details.
Built with ๐๏ธ by Derrick-John Piper | Powered by EchoInk
The dark factory never sleeps.