9.1 KiB
9.1 KiB
Content Pipeline Workflow
Last Verified: January 20, 2026
Version: 1.8.4
Overview
The IGNY8 content pipeline transforms raw keywords into published WordPress articles through a multi-stage workflow. This can run manually (step-by-step) or automatically via the Automation module.
Pipeline Stages
┌─────────────────────────────────────────────────────────────────────────┐
│ CONTENT PIPELINE │
├─────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ KEYWORDS │───►│ CLUSTERS │───►│ IDEAS │───►│ TASKS │ │
│ │ Stage 1 │ │ Stage 2 │ │ Stage 3 │ │ Stage 4 │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
│ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ CONTENT │───►│ IMAGES │───►│ REVIEW │───►│ PUBLISH │ │
│ │ Stage 5 │ │ Stage 6 │ │ Stage 7 │ │ Stage 8 │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────┘
Stage 1: Keywords
Module: Planner
Status Values: new, mapped
Input
- Seed keywords (manually added or from SEO tools)
- Optional: search volume, difficulty, CPC data
Process
- User adds keywords via UI or bulk import
- Keywords validated and deduplicated
- Assigned to site + sector
Output
- Keyword records in
Keywordmodel - Status:
pending
Credit Usage
- None (free operation)
Stage 2: Clustering
Module: Planner
AI Function: AutoClusterKeywords
Input
- Selected pending keywords (2-100)
Process
- AI analyzes semantic relationships
- Groups keywords by topic/intent
- Creates cluster with name + description
Output
Clusterrecords created- Keywords linked to clusters
- Keyword status →
clustered
Credit Usage
- Credits deducted based on AI tokens used (see AIModelConfig)
Stage 3: Ideas
Module: Planner
AI Function: GenerateContentIdeas
Input
- Cluster with 2+ keywords
Process
- AI generates content idea titles
- Creates brief description for each
- Suggests primary + secondary keywords
Output
ContentIdearecords created- Status:
pending
Credit Usage
- Credits deducted based on AI tokens used (see AIModelConfig)
Stage 4: Tasks
Module: Writer
Status Values: pending, in_progress, completed, cancelled
Input
- Selected content ideas
Process
- Ideas converted to tasks
- Task gets content brief + keywords
- Optional: set due date, assign user
Output
Taskrecords created- Status:
pending - Ideas status →
used
Credit Usage
- None (free operation)
Stage 5: Content Generation
Module: Writer
AI Function: GenerateContent
Input
- Task with title + keywords + brief
Process
- AI generates full article content
- Creates structured HTML output
- Adds meta title + description
Output
Contentrecord created- Full HTML body
- SEO metadata
- Task status →
completed
Credit Usage
- Credits deducted based on AI tokens used (see AIModelConfig)
Stage 6: Image Generation
Module: Writer
AI Function: GenerateImages
Input
- Content record
- Number of images (default: 1-3)
Process
- AI analyzes content for image prompts
- Generates images via DALL-E/Runware
- Creates thumbnail + full versions
Output
ContentImagerecords created- Image URLs + alt text
- Featured image assigned
Credit Usage
- Credits deducted per image (see AIModelConfig.credits_per_image)
Stage 7: Review
Module: Writer
Status Values: draft, review, approved, published
Input
- Generated content + images
Process
- Content displayed in rich editor
- User reviews + edits if needed
- User approves for publishing
Output
- Content status →
approved - Any manual edits saved
Credit Usage
- None (free operation)
- Regeneration deducts credits based on AI model used
Stage 8: Publishing
Module: Publisher
Integration: WordPress REST API
Input
- Approved content
- WordPress integration credentials
Process
- Content formatted for WordPress
- Images uploaded to WP media
- Post created with categories/tags
- Status set to draft/published
Output
PublishingRecordcreated- WordPress post ID stored
- Content status →
published
Credit Usage
- None (free operation)
Automation Mode
When running via Automation module:
- Configuration - Set limits per stage
- Execution - Pipeline runs automatically
- Pacing - Configurable delays between operations
- Monitoring - Real-time status updates
Automation Config Options
Stage Limits:
- clustering_limit: Max keywords to cluster
- ideas_limit: Max ideas to generate
- content_limit: Max content to generate
- image_limit: Max images to generate
- publish_limit: Max content to publish
Timing:
- delay_between_operations: Seconds between API calls
- max_runtime: Maximum run duration
Behavior:
- auto_approve: Skip review stage
- auto_publish: Publish immediately
- stop_on_error: Halt pipeline on failure
Data Flow Diagram
Seed Keywords
│
▼
┌─────────────────┐
│ Keyword │ status: pending
│ Model │ belongs_to: site, sector
└────────┬────────┘
│ AI: AutoCluster
▼
┌─────────────────┐
│ Cluster │ keywords: [...]
│ Model │ belongs_to: site, sector
└────────┬────────┘
│ AI: GenerateIdeas
▼
┌─────────────────┐
│ ContentIdea │ primary_keyword, secondaries
│ Model │ cluster_id, status
└────────┬────────┘
│ Convert to Task
▼
┌─────────────────┐
│ Task │ idea_id, brief
│ Model │ assigned_to, status
└────────┬────────┘
│ AI: GenerateContent
▼
┌─────────────────┐
│ Content │ task_id, body, meta
│ Model │ status: draft
└────────┬────────┘
│ AI: GenerateImages
▼
┌─────────────────┐
│ ContentImage │ content_id, url
│ Model │ alt_text, is_featured
└────────┬────────┘
│ User Review
▼
┌─────────────────┐
│ Content │ status: approved
│ (updated) │
└────────┬────────┘
│ WordPress API
▼
┌─────────────────┐
│PublishingRecord │ content_id, wp_post_id
│ Model │ status, published_at
└─────────────────┘
Error Handling
| Stage | Common Errors | Recovery |
|---|---|---|
| Clustering | API timeout | Retry with smaller batch |
| Ideas | API rate limit | Wait and retry |
| Content | Insufficient credits | Add credits, retry |
| Images | Image API failure | Skip images, continue |
| Publish | WordPress auth fail | Reauth integration |
Monitoring
Pipeline Stats (Dashboard)
- Keywords pending clustering
- Ideas pending task creation
- Tasks pending generation
- Content pending review
- Content pending publish
Automation Logs
- Run ID + timestamps
- Stage + item processed
- Success/failure status
- Credit deductions
- Error messages