BoostMedia AI Content Generator

Changelog

2.1.21

  • Feature: In-product feedback channel. The admin header now has a “Feedback” button that opens a dialog where you can send a bug report, feature request, question, or other note (with an optional screenshot, up to 5 MB). All feedback is forwarded to BoostMedia’s centralized support inbox.
  • Internal: New POST /wp-json/bmai/v1/feedback endpoint that proxies submissions to the backend (/api/v1/feedback) using the same site-authenticated channel as every other backend call. Per-user rate limit of 5 submissions per hour.

2.1.20

  • Fix: Repeating content plans no longer go silent after their first run when their schedule configuration is missing or malformed. mark_plan_run now falls back to a “+1 week from now” next_run_at whenever the schedule math returns NULL but the plan still has remaining budget, so weekly recurrences keep firing.
  • Fix: calculate_next_run_at_advanced now self-heals plans whose schedule_config_json (or schedule_counters_json) was stored as an unparsed string, attempting one extra json_decode pass before bailing.
  • Internal: decode_json_columns now logs a one-line warning to debug.log when a JSON column cannot be parsed, so silent data corruption is visible during debugging instead of breaking schedule math invisibly.

2.1.19

  • Fix: Plans configured to publish immediately now actually publish — sprint articles inherit the plan’s publishing schedule when generation is queued. Previously, generated posts always landed as drafts even when the plan said “immediate”. Plans set to draft / drip-daily / drip-weekly continue to behave exactly as before.
  • Fix: Article-pickup race-condition that could create duplicate posts when the WordPress cron took longer than its scheduling interval. The plugin now writes an idempotency key on every imported post, checks for it before insert, and acknowledges each delivery to the backend immediately after the post record is created (before image downloads). A pickup transient lock prevents concurrent cron runs from racing each other.
  • Internal: First PHPUnit test suite added for the term resolver. Build now excludes test artifacts from the WordPress.org distribution.

2.1.18

  • Fix: Plans configured to publish immediately now actually publish — sprint articles inherit the plan’s publishing schedule when generation is queued. Previously, generated posts always landed as drafts even when the plan said “immediate”. Plans set to draft / drip-daily / drip-weekly continue to behave exactly as before.
  • Internal: First PHPUnit test suite added for the term resolver. Build now excludes test artifacts from the WordPress.org distribution.

2.1.16

  • Fix: Sprint articles now land in the correct category instead of Uncategorized. The term resolver tries five strategies (slug as-is, URL-encoded, sanitized, name decoded, hyphen-to-space) so Hebrew slugs and other non-ASCII categories resolve reliably. Each attempt is logged for telemetry.
  • Fix: WP-CLI command wp bmai plan create_and_sprint now builds a full content plan matching the React UI’s schema. Adds optional flags: –cta, –cta-style, –summary, –must-include, –avoid, –tone, –standards, –focus-areas, –intro-angle, –faq. The richer plan gives the article-generation pipeline the same context the wizard provides, so generated articles are more likely to include focus keywords and image prompts.
  • Fix: Database migrations now run automatically on every plugin update, not only when the database schema constant changes. Closes the gap where wp plugin install –force could skip pending data migrations. Migration errors surface in an admin notice for one day.

2.1.15

  • Fix: Internal smart linking is now ON by default — generated articles will weave links from your library automatically. Existing installs that never touched the setting are migrated on first run; sites that explicitly disabled it keep that choice.
  • UI: Removed the redundant global “Auto publish” toggle from Settings. Publish behaviour (immediate / draft / drip-daily / drip-weekly) is controlled per content plan, where it always belonged.
  • New: WP-CLI command wp bmai plan create-and-sprint for creating a fully-configured content plan and triggering a sprint from the command line. Useful for remote configuration over SSH and for scripting setup across multiple sites. See wp help bmai plan for the full flag list.
  • Backend: Sprint think calls and grounded research calls now return Gemini reasoning summaries, captured in logs for debug visibility.

2.1.14

  • Fix: Contextual card options now match the actual question topic (language vs geography keyword priority corrected, input narrowed to trailing question)
  • Fix: Article JSON parse reliability — added responseSchema for structured Gemini output + field-extraction fallback for broken JSON (reduces parse failures from ~47% to near-zero)
  • Fix: Server-side question dedup — suppresses question cards that overlap >40% with already-answered topics (prevents AI from repeating questions)
  • Fix: Server-injected cards (e.g., premature ready confirmation) now appear in message history so AI has proper context on the next turn
  • New: bc_state reliability monitoring metric (tracks drop rate correlated with Google Search tool usage)

2.1.13

  • Fix: Content/intent phase no longer repeats already-answered questions
  • Fix: Recovery fallback preserves accumulated answers and content plan (was wiping state on parse failure)
  • Fix: PHP state merge guard — refuses to overwrite populated state with empty arrays
  • Fix: “Don’t repeat answered questions” instruction added to content phase AI prompt
  • Fix: Message history increased from 6 to 10 for content/intent phases (better context retention)

2.1.12

  • Fix: Job poller extended execution time (30s → 5min) with batch processing — processes up to 10 completed articles per cycle instead of timing out after 1-2
  • Fix: Sprint generation logging now shows correct job ID and status (was logging non-existent keys)
  • Fix: Content plan runner logs sprint job ID after successful submission

2.1.11

  • Fix: LiteSpeed Cache deep compatibility — uses official LiteSpeed PHP API (litespeed_control_set_nocache) to prevent private cache from serving stale REST responses

2.1.10

  • Fix: REST API responses now include no-cache headers to prevent LiteSpeed Cache and other caching plugins from serving stale data

2.1.9

  • Fix: PHP timeout on shared hosting during AI link analysis and image generation (set_time_limit extended for long-running backend calls)
  • Fix: Link analysis batch size reduced from 10 to 3 to stay within web server connection timeouts (LiteSpeed, Nginx, etc.)

2.1.8

  • Fix: Content analysis table migration — added missing created_at column for existing installs
  • Fix: Field pattern analyzer handles nested array meta values without warnings
  • Fix: Content Types analysis display renders field objects correctly (was showing React error #31)
  • Fix: Gemini output token limit increased for Technical QAs (8K → 32K) — sites with 46+ meta fields no longer hit truncation
  • Fix: Smart retry on token limit — automatically doubles token budget on retry instead of repeating with same limit
  • Fix: Specific error message when AI response is too large (instead of generic “format issue”)

2.1.6

  • New: External links bulk select checkboxes (matching internal links UX)
  • New: Expandable summary component — click to expand/collapse long summaries
  • New: Bulk delete endpoint for external links
  • Fix: External links table shows title, summary, keywords, AI status columns
  • Fix: Deploy path consistency across sites

2.1.5

  • New: External links AI enrichment — paste a URL, AI scrapes and generates title, summary, keywords
  • New: External links table redesigned to match internal links (title, summary, keywords, AI status)
  • New: “Complete with AI” button for external links with progress bar
  • New: Polylang/WPML language auto-assigned on generated posts (no manual assignment needed)
  • New: Internal plugin fields (Polylang, WPML, Wordfence, etc.) excluded from Technical QA scanning
  • New: Links table per-page selector (50/100/200/500) with Select All checkbox
  • New: Premature ready guardrail — AI must show confirmation card before completing Technical QA
  • Fix: Reporter gender enforced in article generation (masculine/feminine Hebrew grammar)
  • Fix: Question card answers use gendered singular (not plural) matching reporter gender
  • Fix: Multilingual prompt pipeline — 9 fixes: grammar instruction scoped to Hebrew only, binary language normalization replaced with proper map, single language source of truth, topic examples scoped, sprint/rewrite language aligned
  • Fix: Shared language utility (bc-backend) — normalizeLanguageCode, getLanguageLabel, isHebrewLanguage
  • Fix: Link collection rules displayed correctly (dirty ref bug from Wave 3)
  • Fix: Empty link rules blocked from collecting (was silently collecting everything)
  • Fix: Content Language setting saves correctly (was resetting to Auto)
  • Fix: term_scope column expanded VARCHAR(200) → TEXT (Hebrew category slugs overflow)
  • Fix: App icon loads via Vite import (no more 404)
  • Fix: Production build uses type=”module” for ES module syntax
  • Fix: bcSettings injected via wp_add_inline_script (no more & encoding issues)
  • Fix: Copyscape rewrite language uses reporter writing language (not site language)
  • Fix: generation.worker copyscape language uses shared helper
  • Fix: PHP normalize_data_language expanded to support ar/fr/ru codes

2.1.4

  • Fix: Reporters page no longer refetches list on every row click
  • Fix: “All” reporter filter now shows archived reporters with badge
  • Fix: AI reporter builder — save button always visible, close warns about unsaved progress
  • Fix: Reporter builder session null safety after failed create
  • Fix: Removed unused set_default method (cross-language risk)
  • Fix: Cancel while creating reporter always exits create mode
  • Fix: Specialization tag keys no longer collide
  • Fix: Logs route hidden when debug mode is off (redirect to dashboard)
  • Fix: Logs query limit capped at 500 rows
  • Fix: Log status ‘submitted’ mapped to valid ENUM ‘success’
  • Fix: Clear logs shows error on failure (was silent)
  • Fix: Dashboard recent activity handles unknown action types gracefully
  • Fix: API error messages shown correctly across all pages (was “Unknown error”)
  • Fix: Content plan delete checks database result
  • Fix: Content plan post_length guarded against null
  • Fix: Update install requires explicit target version
  • Fix: Download URL allowlist tightened to /downloads/ path prefix
  • Fix: Settings validation whitelist for language fields
  • Fix: Purchase overlay timer no longer resets on re-render
  • Fix: Confetti animation positions stable (memoized)
  • Fix: Content Types date display guards against invalid dates
  • Fix: Chat poll aborts on page navigation (no stale requests)
  • Fix: Save toast timer cleaned up on unmount
  • Fix: Preview URL works on subdirectory WordPress installs
  • Fix: API nonce refreshed on each request (prevents stale nonce after long sessions)
  • Fix: Dashboard help text no longer mentions credit balance
  • Verified: Copyscape cost ~2 BoostCoins is accurate for typical articles

2.1.3

  • Fix: Onboarding banner now checks correct API field (was showing on sites with generated content)
  • Fix: Onboarding banner no longer appears on API errors
  • Fix: Dashboard stat cards show “—” on error instead of misleading zeros
  • Fix: Generated Content — status counts updated after delete
  • Fix: Jobs — cursor-based pagination replaces broken offset system (no more duplicates/gaps)
  • Fix: Jobs — sprint child articles always loaded for visible sprints
  • Fix: Jobs — “completed today” count includes all terminal statuses
  • Fix: Content Plans — “Run” marks plan only after sprint succeeds (was marking before)
  • Fix: Create Content — technical save blocked when structure data missing (was silently skipping)
  • Fix: Create Content — settings completion protected against double-click
  • Fix: Create Content — post type from Content Types page prefills generator
  • Fix: Updates — sidebar badge clears after install without page reload
  • Fix: Updates — duplicate check requests deduplicated
  • Fix: Settings — TypeScript defaults aligned with PHP (sample_count, post_count, copyscape)

2.1.2

  • Fix: Generated Content page now has pagination with “Load More” (was limited to first 20 rows)
  • Fix: Deleting a generated post also removes the WordPress post (no more orphans)
  • Fix: Generated Content stats (total, published, draft) now come from server, not partial page
  • Fix: Delete/publish errors shown to user (was silent)
  • Fix: Jobs — completed jobs no longer appear as “running” in history (ghost jobs fixed)
  • Fix: Jobs — backend returns real total count for correct pagination
  • Fix: Jobs — consistent page size prevents overlap and duplicate rows
  • Fix: Jobs — refresh resets pagination properly
  • Fix: Jobs — failed job title matches job type (generation/sprint/other)
  • Fix: Links — taxonomy terms now refresh when switching data language
  • Fix: Links — unsaved rule edits preserved on refresh
  • Fix: Links — fast language switching no longer causes stale data
  • Fix: Links — bulk actions protected against double-click

2.1.1

  • Fix: Dashboard no longer shows fake stats on API failure — proper error states
  • Fix: Pending publication count now queries real data (was hardcoded 0)
  • Fix: Removed fake +12% trend from Content Created card
  • Fix: Dashboard footer shows real plugin version (was hardcoded v1.0.0)
  • Fix: Content Types — sample posts viewer now reads correct API response shape (was always empty)
  • Fix: Content Types — analysis display reads correct response shape
  • Fix: Content Types — removed mock data from error catches, errors properly surfaced
  • Fix: Usage — “Purchased BoostCoin” card now shows purchased-only credits (was showing combined total)
  • Fix: Usage — error state shown on credits fetch failure (was showing zeros)
  • Fix: Usage — no more full-page spinner on credit refetch (subtle refresh indicator instead)
  • Fix: Create Content — planId without intent now defaults to review (was blank)
  • Fix: Create Content — removed references to unrendered ‘generate’ step
  • Fix: Create Content — save failure no longer advances wizard (was silently losing data)
  • Fix: Create Content — settings error no longer advances to technical
  • Fix: Create Content — double-click guard on Intent submit
  • Fix: Settings — save blocked when settings fail to load (prevents overwriting with defaults)
  • Fix: Settings — double-submit guard on save and reset
  • Fix: Delete logs now checks TRUNCATE result
  • Fix: “Show all” content types button now navigates to Content Types page

2.1.0

  • Security: API key no longer exposed in settings REST response (masked with last 4 chars)
  • Security: Changelog HTML sanitized server-side (wp_kses_post) and client-side before rendering
  • Security: Download URL restricted to HTTPS only
  • Security: Admin warning when WordPress security keys are not configured (weak encryption)
  • Security: Debug log warning when OpenSSL is unavailable for encryption
  • Fix: Internal links $wpdb->update() format array corrected — keywords now stored as JSON (was silently cast to 0)
  • Fix: Content Plan Runner handles missing technical rules gracefully (no more PHP fatal on cron)
  • Fix: Settings save guards against overwriting real API key with masked display value

2.0.9

  • New: Guided onboarding — 4-step setup flow with pulsing indicators on sidebar tabs
  • New: Per-page setup banners guide new users through Usage, Content Types, Links, and Reporters
  • New: Dashboard setup progress card shows completed/remaining steps
  • New: Settings page pings on Auto-publish and Smart Linking toggles (dismiss on hover)
  • New: Help button pings until first click
  • New: Per-user onboarding state (tracked via user meta, persists across devices)
  • New: Updated help content (“מדריך לעמוד”) for all 10 pages
  • Change: Initial BoostCoins increased from 50 to 60 for new registrations
  • 35 new Hebrew translations for onboarding and help content

2.0.8

  • Fix: Sprint generation no longer returns 400 — intent_state properly mapped to content_plan
  • Fix: Play button on Content Plans submits sprint directly → navigates to Jobs page
  • Fix: Incomplete plans show edit icon instead of play
  • New: Prerequisites guard on Create Content — blocks when no scanned post types or reporters
  • New: Sidebar tabs reordered — Dashboard → Setup → Agency → System
  • New: Logs tab hidden when debug mode is off
  • New: Auto-detect site language on activation (sets working language)
  • Change: Default sample count → 10, default post count → 10
  • Change: “Working Language” in Settings renamed to “Default working language”

2.0.7

  • New: Registration Monitor — daily health check with exponential backoff (self-healing connection)
  • New: Management key — secure per-site key enables automatic API key recovery
  • New: Deferred registration — 15-second cron after activation (more reliable than sync)
  • New: Publishing gates — Copyscape/image checks before auto-publishing
  • Fix: Backend registration no longer returns 409 for existing domains
  • Fix: Site + credit grant wrapped in single transaction (no orphan sites)
  • Fix: Credit API routes now require site authentication
  • Security: Management key endpoint for authenticated key rotation

2.0.6

  • Fix: Save button stays on current step — no more jumping to Settings (generation counter approach)
  • Fix: Editing saved plans shows accordion checkmarks correctly
  • Fix: Intent/sprint state restored when reloading plans
  • Fix: Sprint exit requires HIGH confidence articles (3+ findings) — no more medium-only batches
  • Fix: Server-side confidence validation — model can’t inflate confidence beyond evidence
  • Fix: Hebrew question card options use neutral form (not plural “you”)
  • Fix: Publishing gates — articles with Copyscape issues or missing images saved as draft
  • Fix: Drip scheduling works even without saved plan ID
  • Fix: Singular Hebrew grammar for single article (“נוצר מאמר אחד”)
  • Fix: “Findings” translated to Hebrew (“ממצאים”)
  • Fix: Sprint always saves plan first to ensure valid plan_id
  • Improvement: Sprint Think prompt enforces honest confidence assessment
  • Improvement: Link analysis debug logging for keyword investigation

2.0.4

  • New: Publishing settings per plan — draft, publish immediately, drip daily, or drip weekly
  • New: Fully autonomous recurring plans — research, generate, and publish without human intervention
  • New: Scheduled plans section in Jobs tab — shows upcoming runs greyed out with next run time
  • New: Cron precision — recurring plans checked every 15 minutes (was daily)
  • New: Consecutive failure protection — plans auto-deactivate after 3 failed runs, not on first failure
  • Improvement: All Hebrew UI buttons use proper שם פעולה (action noun) form — 102 strings updated
  • Improvement: Sprint research angles now produced in the reporter’s language (Hebrew for Hebrew plans)
  • Improvement: Archived reporters hidden by default — new “Archived” filter to show them
  • Improvement: Reporter name shown in progress bar info strip
  • Fix: Settings accordion sections can be reopened after completion
  • Fix: Reporter section requires explicit confirmation (no auto-advance on mount)
  • Fix: Internal links keywords “0” — normalized to valid JSON arrays
  • Fix: Technical QA JSON parse errors — multi-strategy recovery + retry

2.0.3

  • New: Filter Generated Content by plan — click “View articles” from Jobs tab to see only that plan’s articles
  • New: Plan origin badges on job cards — shows one-time vs scheduled
  • New: Plan ID shown on generated article cards
  • Fix: Settings accordion sections can be reopened after completion
  • Fix: Reporter section no longer auto-marks complete without user interaction
  • Fix: JSON parser handles missing values pattern from Gemini (“key”:, → “key”:null)
  • Fix: “Research Scope” and job status badges translated to Hebrew
  • Fix: No more stray “0” rendered in job cards (React conditional rendering fix)
  • Fix: Button icons positioned inline with text on job cards

2.0.2

  • New: Jobs tab — track all active research sprints and article generation in one dashboard
  • New: Active job badges on sidebar navigation
  • New: Job history with costs, duration, and per-article breakdown
  • New: Run Again / View Articles actions from job history
  • Improvement: First 3 wizard steps merged into compact “Settings” accordion
  • Improvement: Plan save bar visible on all steps — save new plans directly from the wizard
  • Improvement: Step progress bar fits all steps comfortably (7 in sprint mode, 5 in legacy)
  • Fix: Old wizard URLs (?step=select, ?step=configure) redirect to Settings

2.0.1

  • Fix: Research sprint now runs in the background (non-blocking) — user can navigate away and return
  • Fix: Sprint progress shows real-time data (actual round count and findings)
  • Fix: Question cards during intent collection show contextual options (not just “Other”)
  • Fix: Sprint prompt instructs reporter to always include clickable options
  • New: Sprint resume — page refresh doesn’t lose sprint progress
  • New: Sprint polling every 5 seconds with live status updates

2.0.0

  • NEW: Research-first content generation — articles emerge from iterative research, not pre-planned topics
  • NEW: Research Sprint engine — AI reporter explores your field through multiple research rounds, building knowledge iteratively
  • NEW: Research Map — persistent tree structure that stores all research knowledge across plan runs
  • NEW: Article Formation with Gravitational Model — articles backed by 2+ research findings, validated against user intent
  • NEW: Intent Collection step — conversational chat to understand audience, goals, and research preferences
  • NEW: Sprint Progress step — real-time research sprint status display
  • NEW: Article Review step — review proposed articles with confidence indicators and backing findings before generation
  • NEW: Reporter Memory — research maps persist between runs, preventing content repetition
  • NEW: Time-aware research branches — branches track freshness and revisit schedules
  • NEW: Automatic sprint mode — system adapts research depth based on article count (no user configuration needed)
  • NEW: Recurring plans use research sprints with persistent memory across runs
  • Improvement: Credit refund on permanent generation failure
  • Improvement: Batch generation continues after single article failure with retry option
  • Improvement: Recurring plans correctly track generated titles for dedup
  • All existing v1.x plans continue to work unchanged

1.10.2

  • Fix: Credits are now refunded when article generation permanently fails
  • Fix: Batch generation continues after a single article failure (remaining articles still generated)
  • Fix: Partial generation success shows per-article breakdown with retry option
  • Fix: Recurring plans correctly track previously generated titles to prevent repetition
  • Fix: Plan ID stored on generated posts for accurate plan-to-article tracking
  • Fix: Recovery cards display in Hebrew (not English) during Hebrew conversations
  • Fix: Technical QA auto-advances at 60%+ understanding
  • Fix: Recovery cards not forced when AI asks a natural follow-up question
  • Fix: Empty question cards auto-populate with Yes/No options
  • Fix: New content flows isolated from previous flow context
  • Fix: Additional Hebrew translations for captured technical answers
  • Fix: “Start over” button styled consistently with plugin design
  • Fix: Bulk link action buttons positioned in top toolbar
  • Fix: AI instructed to synchronize topic tree prose with JSON data

1.10.1

  • Fix: Technical QAs phase no longer gets stuck — auto-ready promotion + confirmation card for Round 4
  • Fix: Article angles in topic tree display correctly (title→angle field name mismatch resolved)
  • Fix: Pillar and cluster titles normalize from alternative field names
  • Fix: Category prompt is conditional — single category skips question, multiple asks about distribution
  • Fix: Removed contradicting “no accumulation” subscription text (coins now roll over)
  • Fix: Navigation chevrons positioned correctly relative to button text in RTL

1.10.0

  • New: Image regeneration with AI-interpreted user notes (Gemini rewrites prompts for Imagen)
  • New: Image lightbox with full-size preview and regenerate button
  • New: Link collection rules displayed as consolidated tag clouds
  • New: Bulk “Remove from all posts” action for internal links
  • New: Article count changes auto-notify the AI reporter
  • New: Recurring plans generate broader topic angles for content variety
  • New: Credit balance correctly displayed in content creation wizard
  • New: Technical answers displayed with Hebrew labels
  • New: Review step matches Generated Content controls (Edit in WP, Publish, Copyscape badges)
  • New: Session persistence — page refresh no longer resets content creation progress
  • New: Dynamic year injection — AI reporter always knows the current year
  • New: Copyscape enabled by default for new installations
  • Fix: Pricing overhaul — correct ILS-based conversion (1 BoostCoin = ₪1) with 3x markup
  • Fix: Usage page shows both per-article and per-100-words rate
  • Fix: “Play” on existing content plan no longer redirects to empty review page
  • Fix: Inline CSS spans stripped from generated content
  • Fix: Article slugs limited to 3-5 words for SEO
  • Fix: Topics interpreted naturally (no literal subject repetition)
  • Fix: Generated images no longer contain text/watermarks
  • Fix: Copyscape uses API-reported costs for maximum accuracy
  • Fix: JetEngine fields from other post types no longer leak into scans
  • Fix: Malformed AI responses trigger recovery cards instead of stuck conversations
  • Fix: Category assignment and post_author handled automatically (not asked by AI)
  • Fix: RTL chevron direction on navigation buttons
  • Fix: Reduced padding in question cards for better readability
  • Fix: In-app edit removed from review step (WordPress edit only)

1.9.9

  • New: Regenerate article images with custom AI-interpreted notes
  • New: Full-size image preview lightbox
  • New: Link collection rules displayed as compact tag clouds
  • New: Article count changes automatically update the content plan
  • New: Broader topic angles for recurring content plans
  • New: Hebrew labels for technical settings answers
  • New: Full controls in content review step (Edit, Publish, Status badges)
  • Fix: Correct credit pricing (1 BoostCoin = ₪1)
  • Fix: Content plan “Play” button works correctly for re-generation
  • Fix: Clean HTML output (no inline CSS spans)
  • Fix: SEO-friendly article slugs (3-5 words)
  • Fix: Natural article titles (no literal topic repetition)
  • Fix: Images generated without text/watermarks

1.9.8

  • New: Switched image generation to Google Imagen 4
  • New: Subscription credit rollover (unused credits preserved)
  • Fix: Inline CSS stripped from generated content
  • Fix: Short SEO-friendly slugs
  • Fix: Natural topic interpretation

1.9.7

  • New: Copyscape plagiarism checking (web + private index)
  • New: Deterministic post-generation internal linking
  • New: Per-100-words transparent pricing
  • New: Research grounding with retry mechanism
  • Fix: All WordPress Plugin Check (PCP) errors and warnings resolved

1.8.0

  • Fix: Content planning conversation state improvements
  • Fix: Stale question cards properly cleared between rounds

1.0.0

  • Initial release
  • JetEngine scanning
  • Content style analysis
  • AI content generation
  • Post scheduling

Plugin Website
Visit website

Author
boostmedia
Version:
2.1.21
Last Updated
May 6, 2026
Requires
WordPress 6.0
Tested Up To
WordPress 6.9.4
Requires PHP
7.4

Share Post

Join our newsletter.

Get insights into what’s happening at ChangelogWP right in your inbox. We don’t believe in spam.