WordPress.org

Plugin Directory

EasyIT AI Chat — Free AI Chatbot for WooCommerce & Business Sites

EasyIT AI Chat — Free AI Chatbot for WooCommerce & Business Sites

Description

EasyIT AI Chat adds an AI assistant to your site that answers from your own content, links to the page it used, and stops when it reaches the spending limit you set. It works for any business site and comes with free WooCommerce bots (orders, products, returns). Set it up in about two minutes with the built-in wizard.

Connect OpenAI (ChatGPT), Anthropic Claude, Google Gemini, DeepSeek, Together AI, a free local Ollama model, or any OpenAI-compatible endpoint, using your own API key. No tracking, no telemetry, no subscription — ever.

🌐 Website: easyit.com.bd
📺 Tutorials: youtube.com/@easybdit
💬 Community: facebook.com/easybdit

🎯 How It Works (3 Steps)

  1. Connect a provider — Add an API key (OpenAI, Claude, Gemini, DeepSeek, Together AI) or point it at a free local Ollama server. No API key needed for Ollama.
  2. Drop in a shortcode — Paste [eaic_chat] into any page or post, or just turn on the floating chat button in Settings UI. No coding required.
  3. Done — Visitors get a ChatGPT-style assistant instantly. A built-in Test Chat page lets you try it from the dashboard before it ever reaches a visitor.

🏆 Why EasyIT AI Chat?

  • It knows your business — «Ask This Site» reads your published pages, «Business Facts» hold your hours, prices and policies, and answers show source links so visitors can check them.
  • It can’t surprise you with a bill — set daily/monthly token or cost limits; the chat pauses with your message and you get one email. Usage and estimated cost are tracked per model.
  • It tells you when it’s broken — a wrong API key or an account out of credit is explained in plain language in wp-admin, because visitors only ever see a generic message.
  • WooCommerce bots, free — Order Status, Product Q&A, Return/Refund and Product Finder are built in. No Pro tier, no upsell.
  • You see what’s missing — the Knowledge Gaps report lists questions your content couldn’t answer, so you know what to write next.
  • Your data stays yours — no telemetry, optional No-Storage Mode, retention controls, GDPR consent gate, WordPress privacy-tool integration.
  • Not locked to one vendor — switch provider per page with one attribute (provider="gemini").
  • Open source — GPL-2.0-or-later, fully auditable.

✨ Supported AI Providers

OpenAI (ChatGPT), Anthropic (Claude), Google Gemini, DeepSeek, Together AI, Ollama (self-hosted, free), and any OpenAI-compatible endpoint (LM Studio, gateways, proxies). Replies stream in real time.

🚀 Chat Features

  • ChatGPT-style UI — conversation history sidebar, markdown, code blocks with copy button, auto-generated titles
  • Stop & Regenerate, typing indicator, timestamps, copy/download per message, fullscreen mode, session search
  • Voice input and read-aloud using the browser’s built-in speech APIs
  • 👍 / 👎 feedback on answers, stored in your own database
  • File & image uploads — images analyzed by vision-capable providers, documents (.txt/.pdf) read as text
  • Conversation memory per logged-in user or guest; context window and message length limits you control
  • Welcome message, suggested questions, custom avatar, colors, floating widget (position and label), plus saved bot profiles
  • Shortcode Builder, conversation export, and a webhook (HMAC-signed) after each answer

📚 Knowledge Base & Ask This Site

  • Ask This Site — one toggle and the AI learns your published posts, pages or any public content type; stays current on every update and removes anything unpublished or private
  • Knowledge Base — upload PDFs/text; answers come from your documents, with an admin test tool and on-demand re-processing
  • Semantic + keyword search using embeddings from OpenAI, Google Gemini or Ollama, with automatic keyword fallback
  • Source citations — answers show «Sources» links to the pages they came from
  • Business Facts — opening hours, phone, address and policies given to the AI as authoritative information

📅 Enquiries, Bookings & Business Hours

  • Enquiry and booking forms — up to five forms with the fields you choose (name, email, phone, date, time, party size, message) plus three questions of your own; visitors reach them from buttons in the chat, from the «Talk to a person» button, or a [eaic_form id="…"] shortcode on any page
  • Requests inbox — every submission is saved with a status (new, confirmed, done, cancelled), private notes, search, filters and CSV export; you are emailed each new one and can confirm to the visitor by email
  • Business hours & offline mode — weekly opening hours in your time zone plus holiday dates; outside them the chat shows an «offline» notice and offers your forms, can stop the AI answering, and bookings can be limited to open hours
  • The AI knows if you’re open — it is told your hours and whether it is open right now
  • Spam-resistant (hidden trap field, speed check, rate limits, link and word filters) and included in WordPress’s personal-data export and erase tools

💬 Engage Visitors & Read Conversations

  • Conversations inbox — read what visitors asked and what the chat answered; search, filter by rating, view transcripts, export or delete
  • Quick-question buttons — visitors tap a question and get your answer instantly, with no AI call and no cost
  • Proactive greeting — an optional bubble beside the chat button after a delay, on the pages you choose
  • Page awareness — the chat knows which page or product the visitor is on, so «how much is this?» just works

🧙 Easy Setup & Reliability

  • Two-minute setup wizard — paste an API key (tested before it is saved), add business details, let it read your site
  • Plain-language alerts when the chat stops working (wrong key, out of credit, wrong model), in wp-admin and by optional email
  • «Talk to a person» button — WhatsApp, phone, email or link, offered when the bot has no match or an answer is rated not helpful
  • Answer cache for repeated first questions (opt-in), at no AI cost
  • Bengali (বাংলা) chat labels and a Gutenberg block and Elementor widget («AI Chat») with the same options as the shortcode

📈 Insights, Cost Control & Leads

  • Analytics — conversations, messages, ratings, most-used provider, and a 7-day chart
  • Usage & cost tracking — tokens and estimated cost per day, provider and model
  • Budget caps — daily/monthly token or monthly cost limits for the main chat and the WooCommerce bots; the chat pauses with your own message and you get one email
  • Knowledge gaps — the questions your content couldn’t answer, and answers rated «not helpful»
  • Lead capture — optional name + email card, email notification per lead, CSV export
  • Weekly summary email (opt-in)

🔒 Security Suite

  • Access restriction by login or role, IP blocklist, word filter, prompt-injection detection, anti-bot math captcha
  • Per-user, per-session and per-IP rate limiting, with an abuse alert email
  • No-Storage Mode, automatic data retention purge, GDPR consent gate
  • Locked system prompt so visitors can’t override your instructions
  • Conversations and leads included in WordPress’s Export / Erase Personal Data tools

🛒 WooCommerce Bots (requires WooCommerce)

Everything below used to need a paid add-on and is now free and built in.

  • Order Status Bot ([eaic_order_chat]) — guests verify with order number + billing email; logged-in customers are verified automatically
  • Product Q&A Bot ([eaic_product_chat] or [eaic_product_chat product_id="42"]) — answers about price, stock, description and variations from real store data
  • Return/Refund Bot ([eaic_return_chat]) — collects item and reason, files the return request and adds an order note
  • Smart Product Finder ([eaic_product_finder]) — «red dress under $50» returns real product cards with add-to-cart links
  • «Ask Your Store» — admin-only AI chat about revenue, orders, top products, low stock and new customers
  • Smart Floating Widget — shows the Order Bot on order pages, the Product Bot on product pages and a general assistant elsewhere
  • Lead capture on the bots, saved to your database and shown in Analytics

🔧 Shortcode Examples

[eaic_chat] — basic chat
[eaic_chat provider="gemini" title="Support Bot" height="500"] — choose a provider
[eaic_chat profile="support-bot"] — load a saved bot profile

Attributes: provider, title, placeholder, system_prompt, height, profile. The Shortcode Builder (EasyIT AI Chat Shortcode Builder) writes them for you.

🔒 Privacy

When a user sends a message, it is forwarded to your configured AI provider along with the conversation history. Messages are also stored in your own database so conversations can resume. Nothing is sent to the plugin author. You should mention your chosen provider in your site’s Privacy Policy.

External Services

This plugin connects to external AI services depending on which provider you configure. No data is transmitted unless a user actively sends a chat message.

OpenAI

Used when OpenAI is selected as the AI provider, and for embeddings (to power semantic search over your site content or documents) when OpenAI is chosen as the embedding service. Text sent for embedding is the content you index.
* Service URL: https://api.openai.com/
* Terms of Use: https://openai.com/policies/row-terms-of-use
* Privacy Policy: https://openai.com/policies/row-privacy-policy

Anthropic (Claude)

Used when Anthropic is selected as the AI provider.
* Service URL: https://api.anthropic.com/
* Terms of Use: https://www.anthropic.com/legal/consumer-terms
* Privacy Policy: https://www.anthropic.com/legal/privacy

DeepSeek

Used when DeepSeek is selected as the AI provider.
* Service URL: https://api.deepseek.com/
* Terms of Use: https://chat.deepseek.com/downloads/DeepSeek%20Terms%20of%20Use.html
* Privacy Policy: https://chat.deepseek.com/downloads/DeepSeek%20Privacy%20Policy.html

Google Gemini

Used when Google Gemini is selected as the AI provider, and for embeddings (semantic search over your site content or documents) when Gemini is chosen as the embedding service.
* Service URL: https://generativelanguage.googleapis.com/
* Terms of Use: https://ai.google.dev/gemini-api/terms
* Privacy Policy: https://policies.google.com/privacy

Ollama

Used when Ollama is selected. Calls your own self-hosted Ollama server URL.
No third-party service is involved unless you point it at a remote server.

Data sent to external services: The user’s chat message and recent conversation history (last 10 messages). No personal data beyond what the user types is transmitted.

WooCommerce bots: When a WooCommerce bot is used, relevant store data needed to answer the question (e.g. order status/items, product details, or — for the admin-only «Ask Your Store» tool — aggregate revenue/order/customer data) is included in the request sent to your configured AI provider. This data never goes anywhere except the AI provider you’ve chosen; it is not sent to the plugin author.

Screenshots

Blocks

This plugin provides 1 block.

  • AI Chat Add the EasyIT AI chat (or a WooCommerce bot) to any page.

Installation

Automatic Installation (Recommended)

  1. Go to Plugins Add New in your WordPress dashboard
  2. Search for EasyIT AI Chat
  3. Click Install Now then Activate

Manual Installation

  1. Download the plugin zip file
  2. Go to Plugins Add New Upload Plugin
  3. Upload the zip and click Install Now
  4. Activate the plugin

Setup (about two minutes)

  1. Go to EasyIT AI Chat Getting Started and click Start the setup wizard
  2. Paste an API key (OpenAI, Gemini, Claude or DeepSeek). It is tested before it is saved, so a typo can’t break your chat
  3. Add your business details (hours, phone, delivery and return policy) and let the chat read your site’s pages
  4. Done: the chat button is already on your site. Click Try it now to test it

Optional next steps

  • Set a spending limit: Settings Security Usage Budget
  • Let visitors leave a message or book: EasyIT AI Chat Forms & Hours
  • Add your own quick-answer buttons, a «Talk to a person» button or a greeting bubble: Settings General
  • Prefer to configure everything yourself? Use Settings instead of the wizard, then add [eaic_chat], the «AI Chat» block or the Elementor widget to any page

FAQ

How is this different from other AI chatbot plugins?

Three things stand out. It answers from your own pages and documents and shows the sources. It has built-in spending limits so a busy day (or an abuser) can’t run up your AI bill. And everything, including the WooCommerce bots and the usage tracking, is free with no Pro version. It is smaller and younger than the biggest plugins, so if you need AI agents, an MCP server or a live-agent inbox, one of them may suit you better.

Will it surprise me with a big AI bill?

Not if you set a limit. Under Settings Security Usage Budget you can cap tokens per day, tokens per month or estimated cost per month. When the cap is hit the chat pauses with a message you choose, and you get one email. The Analytics page shows tokens and estimated cost per model. Costs are estimates from list prices; your provider’s invoice is the source of truth.

Can visitors book an appointment or leave a message?

Yes. Under EasyIT AI Chat Forms & Hours switch on an enquiry form, a booking form, or both (two ready-made templates are included), and choose which fields to ask. They appear as buttons above the chat input, can be offered by the «Talk to a person» button, and can be placed on any page with [eaic_form id="your-form-id"]. Every submission is saved under Requests, emailed to you, and optionally confirmed by email to the visitor.

How does offline mode work?

Turn on business hours in Forms & Hours and enter your opening times and any closed dates. Outside those hours the chat shows an «offline» notice with when you reopen and a button for your first form. You can keep the AI answering (it will say you are closed) or switch it off while closed so visitors only see the notice and your forms. Hours use your WordPress time zone, including daylight-saving changes, and the notice updates by itself at opening time even on cached pages.

Where are bookings and enquiries stored, and for how long?

In your own database (EasyIT AI Chat Requests). By default they are deleted after 365 days; you can change that or keep them forever. They are included in WordPress’s Export and Erase Personal Data tools, and they are saved even when No-Storage Mode is on, because the visitor deliberately sent them to you.

Can I read what visitors are asking?

Yes. EasyIT AI Chat Conversations lists every stored conversation with search, a «rated not helpful» filter, a full transcript view, CSV export of the list and per-conversation download or delete. Only administrators can see it, and conversations are removed automatically after the retention period you set. With No-Storage Mode on, nothing is saved, so nothing appears there.

Can I answer common questions without using AI?

Yes. Under Settings General Quick Questions, add up to 8 questions with your own answers. They appear as buttons at the start of a chat; tapping one shows your answer instantly at no AI cost, and anything else the visitor types goes to the AI as usual.

Does the chatbot know my business?

Yes, in two ways. Turn on Ask This Site (Knowledge Base page) and it learns your published pages and posts, or fill in Business Facts (Settings General) with your hours, phone, address and policies. The setup wizard offers both. The Analytics page then shows the questions it still couldn’t answer.

What is sent to the AI provider?

The visitor’s message, recent conversation history and, when the knowledge base is used, the few relevant passages from your content. If you use OpenAI or Gemini for semantic search, your indexed content is also sent to that provider to be embedded. Nothing is sent to the plugin author.

How big a site can Ask This Site handle?

Searching is done inside your WordPress database. In testing, a question scanned 3,000 stored passages in about 0.1 seconds, and memory use stays flat however large the index is. Very large sites (tens of thousands of pages) should expect slower answers; the Knowledge Base page shows how long the last search took.

Do I need an API key?

For OpenAI, Anthropic, DeepSeek, and Google Gemini — yes, you need your own API key. For Ollama — no key needed, just a running Ollama server.

How do I get an API key?

Where can I run Ollama?

Locally on your server, or any machine reachable via HTTP. Visit ollama.com for installation instructions.

Does the plugin store conversations?

By default yes — in custom database tables in your own database. All data is deleted when you uninstall the plugin. Guest sessions use a cookie token and are never linked to personal data. You can enable No-Storage Mode in Settings Security to disable all DB writes entirely.

Can I disable conversation history?

Yes. Enable No-Storage Mode in Settings Security No-Storage Mode. Messages will not be saved to the database at all — ideal for GDPR-strict setups.

Will it slow down my site?

The chat’s CSS and JavaScript are about 22 KB combined when compressed. They load on every page while the floating chat widget is enabled, so turn the widget off (Settings UI) if you only use the shortcode or block on a few pages.

Can I use multiple providers on the same site?

Yes — use the provider attribute to specify different providers on different pages: [eaic_chat provider="openai"] on one page and [eaic_chat provider="gemini"] on another.

Is this plugin really free?

Yes — GPL-2.0-or-later. The only costs are to your chosen AI provider. Ollama is completely free.

Does it work with WooCommerce?

Yes — as of v2.4.0 the Order Status Bot, Product Q&A Bot, Return/Refund Bot, Smart Product Finder, and the admin «Ask Your Store» AI are all built into the free plugin. They activate automatically once WooCommerce is active; no separate add-on needed.

How do I restrict the chat to logged-in users only?

Go to Settings Security Access Restriction and select «Logged-in users only» or «Specific user roles». Guests will see a «You must be logged in» message instead of the chat.

Can I block abusive users?

Yes. Use IP Blocklist (Settings Security) to block specific IP addresses. Enable the Word Filter to block banned words or phrases. Turn on Abuse Alert to receive an email when the rate limit is exceeded.

Does the floating widget work without WooCommerce?

Yes — the Floating Chat Widget works on any WordPress site. Enable it in Settings UI, choose position (bottom-right or bottom-left), set a label, and it appears on every page automatically. If WooCommerce is active you can also switch its Mode to «Smart» so it shows the Order or Product bot instead of the general chat, based on the page being viewed.

Can I have different chatbots on different pages?

Yes. Use Bot Profiles (Settings Profiles) to save named configurations, then load them per page: [eaic_chat profile="support-bot"] on one page and [eaic_chat profile="sales-bot"] on another. Each profile has its own provider, title, and system prompt.

How does the webhook work?

After each AI response completes, the plugin sends a non-blocking POST request to your configured URL with a JSON body containing: session_uuid, user_message, ai_response, provider, timestamp, and site_url. Optionally add a secret key to receive a X-EAIC-Signature HMAC-SHA256 header for verification. Compatible with Zapier, Make (Integromat), n8n, and any HTTP endpoint.

Does voice input work on all browsers?

Voice input uses the browser’s Web Speech API which is supported in Chrome, Edge, and Safari. It requires HTTPS. Firefox does not support this API.

Is the math captcha accessible?

The captcha is a simple arithmetic question (e.g., «3 + 7 = ?») that appears above the chat input. It requires no external service, no cookies, and no images — just basic arithmetic. It is solved once per page load.

Where can I get support?

Reviews

There are no reviews for this plugin.

Contributors & Developers

“EasyIT AI Chat — Free AI Chatbot for WooCommerce & Business Sites” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

2.12.1

  • Improvement: The readme’s Installation steps now start with the two-minute setup wizard and list the optional next steps (spending limit, forms and hours, quick-answer buttons). No code changes.

2.12.0

  • New: Enquiry and booking forms (EasyIT AI Chat Forms & Hours). Up to five forms; choose from name, email, phone, preferred date and time, number of people and message (each off, optional or required) and add up to three questions of your own (free text or a list of choices). Templates for an enquiry and a booking are included.
  • New: Forms appear as buttons above the chat input, can be the target of the «Talk to a person» button (Settings General Contact method «One of my forms»), and can be placed on any page with the [eaic_form id="…"] shortcode.
  • New: Requests screen (EasyIT AI Chat Requests) with a new-request counter in the menu, status tabs (new, confirmed, done, cancelled), search, form and date filters, a detail view with private notes and a reply-by-email link, link to the related conversation, delete, and CSV export.
  • New: Email notification for each request (to a global address or one per form, at most 30 an hour), optional confirmation email to the visitor, optional forwarding to your webhook (same URL and signature as chat events), and an eaic_request_created action for developers. The weekly summary mentions requests waiting for you.
  • New: Business hours & offline mode — weekly opening hours (one interval per day) and closed dates in your site time zone, DST-aware. Outside hours the chat shows an offline notice with the next opening time and a button for your first form; the AI can optionally be switched off while closed (quick-question buttons and forms keep working); bookings can be limited to open hours. The notice is computed in the browser, so it is correct on cached pages and disappears at opening time.
  • New: The AI is told your opening hours and whether you are open right now, so «are you open?» gets a true answer.
  • New: Spam protection on forms — hidden trap field, speed check, 20 attempts and 5 accepted requests per address per 10 minutes, link-spam and banned-word filters, IP blocklist.
  • New: Requests are included in WordPress’s Export / Erase Personal Data tools, covered by a retention setting (default 365 days) and removed on uninstall.
  • Improvement: Form labels and chat buttons follow the Chat Language setting (Bengali included).

2.11.0

  • New: Conversations inbox (EasyIT AI Chat Conversations) — search, filter by rating or visitor type, read full transcripts with sources and ratings, export the list as CSV, download or delete a conversation. Administrators only.
  • New: Quick-question buttons (Settings General) — up to 8 of your own questions and answers shown at the start of a chat; answered instantly with no AI call.
  • New: Proactive greeting (Settings General) — optional bubble next to the floating chat button after a delay, shown once per visit on every page, the home page, or pages you pick.
  • New: Page awareness (Settings General, off by default) — the chat is told which published page or WooCommerce product the visitor is viewing.
  • Improvement: Faster, lighter knowledge search. Vectors are stored in a compact format (about 4× smaller), and the index is scanned in small batches, so memory use stays flat and a question over 3,000 passages takes about 0.1 s. The Knowledge Base page shows how many passages are indexed and how long the last search took. Existing indexes keep working.
  • Improvement: OpenAI embeddings now use 512 dimensions (cheaper to store and compare). If you use OpenAI for semantic search, re-index once; until then keyword search is used.
  • Improvement: Keyword search now splits on punctuation, so «policy?» matches «policy» (also helps non-English text).
  • Improvement: «How many…» counting now looks only at uploaded documents; it no longer counts words across your site’s posts.
  • Improvement: If the Ollama embedding server is down, chat skips it for five minutes instead of waiting on it for every message.
  • Improvement: The Knowledge Base page no longer loads every stored vector just to count them.
  • Improvement: Deleting a conversation also removes its ratings.
  • Fix: Clicking a suggestion, quick question or lead-card button in the floating chat panel could close the panel.
  • Fix: The readme performance FAQ now states the real asset size and when the chat’s CSS and JavaScript load.
  • Listing: new title, short description and tags describing what the plugin is for; shorter, benefit-first «Why EasyIT AI Chat?» section; new FAQ answers.

2.10.1

  • Fix: The readme Description was over WordPress.org’s 2,500-word limit and was being truncated. It is now condensed; no features were removed.

2.10.0

  • New: «AI Chat» Gutenberg block (provider, bot profile, title, placeholder, height; WooCommerce bots available as bot types when WooCommerce is active).
  • New: Elementor widget with the same options.
  • Fix: Plugin Check findings in 2.9.0 — ordered translation placeholders, escaping/prepare annotations, and the leads CSV export no longer uses fwrite().
  • Fix: «Tested up to» updated to WordPress 7.1.

2.9.0

  • New: Setup wizard (EasyIT AI Chat Getting Started Start the setup wizard, and linked from the setup notice). Connects a provider after testing the key with a real request, saves your business details, and indexes your site — in about two minutes.
  • New: Business Facts (Settings General) — hours, phone, email, address and free-text policies are sent to the AI as authoritative facts.
  • New: Human handoff (Settings General) — a «Talk to a person» button (WhatsApp, phone, email or link) shown when the knowledge base had no match, after a «not helpful» rating, or under every answer if you prefer.
  • New: Chat health alerts — provider failures are recorded; after two in a row an admin notice explains the problem in plain language (wrong key, out of credit, wrong model, unreachable Ollama…) with links to fix it, and you can receive one email a day until it is resolved. Administrators also see this advice in the chat itself; visitors still see only a generic message.
  • New: Answer cache (opt-in, Settings General) — identical first questions are answered from a saved copy with no AI call. Follow-ups and uploads are never cached.
  • New: Budget caps apply to the WooCommerce bots and their usage is now tracked. Administrator-only tools such as «Ask Your Store» are exempt.
  • New: Privacy tools — chat conversations (for logged-in users) and leads are included in WordPress’s Export and Erase Personal Data tools, and a suggested paragraph is added to the Privacy Policy guide.
  • New: Bengali chat labels — Settings General Chat Language.
  • Improvement: If a streamed reply fails before any text arrives, the chat retries once the ordinary way instead of showing an error.
  • Improvement: With Claude or DeepSeek as the chat provider, the Knowledge Base can use an OpenAI or Gemini key (if one is entered) for semantic search.

2.8.0

  • New: Source citations — when an answer comes from your site content or Knowledge Base, the chat shows clickable «Sources» under it. Only published, public pages are ever linked.
  • New: Usage & cost tracking — token usage and estimated cost per provider/model on the Analytics page, using the token counts the AI provider reports (estimated when a provider doesn’t report them).
  • New: Budget caps — daily token, monthly token and monthly cost limits. When one is reached the chat pauses with a message you choose and you receive a single email. Custom model prices can be entered for Together AI and custom providers.
  • New: Real streaming for OpenAI, Anthropic (Claude), Google Gemini, DeepSeek and custom OpenAI-compatible providers — replies appear as they are generated instead of all at once.
  • New: Cloud embeddings — Ask This Site and the Knowledge Base can now use OpenAI or Gemini embeddings for semantic search, so no Ollama server is needed. Choose the service under Knowledge Base Embedding Service (default: follows your chat provider). Changing the embedding service means re-indexing; the page tells you when that’s needed, and keyword search is used in the meantime.
  • New: Knowledge gaps report on the Analytics page — questions with no match in your content, plus answers rated «not helpful».
  • New: Lead capture in the main chat (opt-in), new-lead email notifications, and CSV export of leads.
  • New: Weekly summary email (opt-in).
  • Improvement: A short, one-time review request appears on this plugin’s own admin pages after the chat has been used for a while; it can be dismissed permanently.
  • Improvement: If the Ollama embedding server is unreachable, chat falls back to keyword search immediately instead of waiting on a timeout for every message.
  • Fix: Saving the Knowledge Base page no longer blanks your AI provider API keys or unticks settings that live on the Settings page.
  • Fix: The non-streaming chat endpoint now uses the Knowledge Base like the streaming one.
  • Removed: The bundled Freemius SDK (about 23 MB). It was no longer used. The plugin makes no calls except to the AI provider you choose.

2.7.0

  • New: File & image uploads in chat — visitors can attach images and documents (.txt/.pdf) to a message. Images are analyzed by vision-capable providers (OpenAI, Anthropic, Gemini); documents are read as text and given to the AI as context, working with every provider. Enable globally in Settings File & Image Uploads, or per bot profile.
  • Fix: Plugin Check compliance — replaced discouraged unlink()/rename() calls with wp_delete_file() and a documented phpcs:ignore, and annotated already-validated $_POST/$_FILES reads on the new upload endpoint.

2.6.0

  • New: Getting Started page (EasyIT AI Chat Getting Started) — a live setup checklist (provider connected? floating widget on? content indexed?), a WooCommerce Bots section that explains what’s unlocked and links straight to installing WooCommerce if it’s missing, and a Security Snapshot summarizing your current rate limits, guest-chat, GDPR gate, and prompt-injection settings at a glance.
  • Improvement: The WooCommerce Bots settings (Settings UI) and the Shortcode Builder page now clearly flag when WooCommerce isn’t active instead of silently showing store-only options with no context — existing settings are never hidden or cleared, just annotated.
  • Improvement: Settings, Analytics, Test Chat, and Shortcode Builder pages are now fluid-width and reflow responsively instead of being pinned to a fixed 900px column, so they make better use of wide screens; the sidebar is sticky on desktop.
  • Fix: The admin stylesheet now cache-busts on its file modification time instead of the plugin version string, so CSS-only changes take effect on a normal reload instead of requiring a hard refresh.

2.5.0

  • New: Ask This Site — enable auto-indexing in Knowledge Base settings and the AI automatically learns your published posts/pages (or any public content type you choose), using the same document search that powers the Knowledge Base (RAG) feature. No manual upload needed. Re-indexes on every update, de-indexes on unpublish/trash/delete. Includes a one-click «Reindex All Site Content Now» batch button for existing content.

2.4.1

  • Fix: The default AI provider was «Ollama» pointing at localhost:11434 — on a fresh install with no self-hosted Ollama server (the vast majority of WordPress hosts), the chat silently failed with no indication of what to fix. Default provider is now OpenAI, which fails instead with an actionable «add your API key» message, and the Settings page now opens on whichever provider tab is actually configured as default.
  • New: A dismissible «add your API key to get started» notice now appears in wp-admin until a provider is configured, linking straight to Settings.
  • Fix: Errors from the AI provider (e.g. «No API key configured») were shown verbatim to every site visitor in the public chat widget, not just admins — this leaked internal configuration detail and looked broken to end users. Admins still see the real error; visitors now see a generic «temporarily unavailable» message.

2.4.0

  • New: WooCommerce Bots — Order Status Bot ([eaic_order_chat]), Product Q&A Bot ([eaic_product_chat]), Return/Refund Bot ([eaic_return_chat]), and Smart Product Finder ([eaic_product_finder]) are now built into the free plugin. Activate automatically when WooCommerce is present.
  • New: «Ask Your Store» — admin-only AI chat that answers questions about revenue, orders, top products, low stock, and new customers.
  • New: Smart Floating Widget mode — the floating chat button can now auto-switch between the Order Bot, Product Bot, and general chat based on the page being viewed (Settings UI Floating Widget Mode).
  • New: Lead Capture — optional pre-chat name + email form on the WooCommerce bots; leads appear on the Analytics page alongside top-asked products and unanswered queries.
  • Security: Return Bot now requires guests to verify their billing email before it will discuss an order (previously any visitor could look up any order number).
  • Fix: «No-Storage Mode» (Settings Security) was silently ignored on streaming chat — it now correctly stops conversations from being saved when enabled.
  • Removed the «Upgrade to Pro» link — every feature that used to require EasyIT AI Chat Pro is now part of the free plugin.

2.3.4

  • Fix: Plugin Check compliance — replaced move_uploaded_file() with wp_handle_upload(), escaped exception output, added phpcs:ignore for set_time_limit() and table-name DB queries, prefixed view variables with eaic_ namespace.

2.3.3

  • Fix: Ollama now streams tokens in real time — first word appears within seconds instead of waiting for the full response to complete.

2.3.2

  • Fix: RAG count queries («how many X») now use keyword-matched chunks as context, preventing wrong items from appearing when the embedding model returns poor results.
  • Fix: Embedding timeout reduced from 60 s to 8 s so keyword fallback kicks in quickly when the embedding model is slow or misconfigured.
  • New: Copy and Download buttons added to every AI response message — always visible, no hover required.
  • Fix: Plugin version bump ensures browsers load updated JS/CSS (cache-bust).

2.3.1

  • Fix: RAG document processing — per-chunk embedding wrapped in try/catch so one bad chunk no longer aborts the whole document.
  • Fix: PHP set_time_limit extended during processing to prevent timeout on large PDFs.
  • Fix: Stuck documents in «processing» state are reset to «error» on next admin page load so they can be re-processed.
  • Fix: DB Setup button now reliably creates tables when RAG is first enabled.

2.3.0

  • New: Knowledge Base (RAG) — upload PDF documents; the AI answers questions using only your document data (Retrieval-Augmented Generation).
  • New: Semantic search via Ollama embeddings with automatic keyword fallback when embeddings are unavailable.
  • New: Accurate «how many X» counting — scans all chunks with plural/singular stemming for exact results.
  • New: Admin Test Query UI — inspect which document chunks are retrieved for any query.
  • New: Document status auto-polling — admin page refreshes processing status without a manual reload.
  • New: Configurable chunk size, chunk overlap, top-K results, similarity threshold, and embedding model.

2.1.1

  • Fix: Custom provider settings now save reliably (JSON decode fallback prevents silent data loss on save).
  • Fix: Settings page stays on the active tab after saving (sessionStorage-based tab restore).
  • Fix: Custom provider slugs (custom_1, custom_2 …) are now accepted as the Default Provider.

2.1.0

  • New: Custom Providers — add any OpenAI-compatible API endpoint (LM Studio, custom gateway, Ollama proxy, etc.) via Settings Custom tab. Use with [eaic_chat provider="custom_1"]. Includes per-provider Test Connection button, Enable/Disable toggle, configurable URL, API key, model, and timeout.

2.0.1

  • Bug fixes from code audit: fixed critical array key mismatch in feedback ownership check (feedback now correctly accepts/rejects based on actual session owner), fixed missing closing div in AI Avatar settings card (cosmetic HTML issue), improved no-storage mode (no longer creates orphan session records in DB), made frontend_i18n() a static method, updated Anthropic default model, fixed Tested up to header (6.8), improved copy button error handling in Shortcode Builder.

2.0.0

  • Major release — Security Suite. Eight new security features in Settings Security:
  • Access Restriction — Allow everyone, logged-in users only, or specific user roles.
  • IP Blocklist — Block specific IP addresses from using the chat.
  • Word Filter — Block or warn when a message contains banned words/phrases (case-insensitive, one per line).
  • Prompt Injection Detection — Detect and block common jailbreak/injection patterns automatically.
  • No-Storage Mode — Opt out of saving conversations to the database entirely (GDPR-strict setups).
  • Anti-Bot Math Captcha — Simple arithmetic challenge before the first message. No external API required.
  • Abuse Alert Email — Get an email when the rate limit is exceeded. Configurable recipient.
  • Message Length Limit — Configure max characters per user message (50–4000, default 4000).

1.0.31

  • Added Webhook Support — configure a webhook URL in Settings Webhook. After each AI response, the plugin sends a non-blocking POST to your URL with JSON payload: session_uuid, user_message, ai_response, provider, timestamp. Optional HMAC-SHA256 secret key adds an X-EAIC-Signature header for verification. Compatible with Zapier, Make (Integromat), n8n, and any HTTP endpoint.

1.0.30

  • Added Multiple Bot Profiles — create named configurations (slug, name, provider, title, system prompt) in Settings Profiles. Load any profile with [eaic_chat profile="your-slug"]. Profiles appear in the Shortcode Builder for one-click selection.

1.0.29

  • Added Shortcode Builder — a new admin page (EasyIT AI Chat Shortcode Builder) lets you configure the chatbot visually. Choose provider, title, placeholder, height, and system prompt with dropdowns and inputs. The shortcode updates live and a Copy button puts it on your clipboard instantly. No typing required.

1.0.28

  • Added Context Length Control — a new «Context Window (messages)» setting (1–20, default 10) controls how many previous messages are sent to the AI with each request. Lower values reduce token cost; higher values give the AI more conversation memory. Find it in Settings AI Behavior.

1.0.27

  • Added Read Aloud (TTS) — a speaker button appears on hover over any AI message. Click to have the browser read the message aloud using the Web Speech API (SpeechSynthesis). Click again to stop. No external service required — uses the built-in browser engine.

1.0.26

  • Added GDPR Consent Gate — optionally show a consent banner before the chat activates. Users must click an accept button before chatting. Consent is stored in a browser cookie (365 days). Configurable message text and button label. Enable in Settings UI.

1.0.25

  • Added Fullscreen Mode — an expand button in the chat topbar switches the widget to full-screen overlay. Press Escape or click again to exit. Works on any page without layout changes.

1.0.24

  • Added Session Search — a search box in the chat sidebar lets users filter conversations by title in real time. No extra server requests — filtering is client-side.

1.0.23

  • Added Message Feedback — 👍/👎 buttons appear below each AI response. Ratings are stored in your database and visible in the Analytics dashboard (Helpful / Not helpful counts). Feedback resets if you regenerate a response.

1.0.22

  • Added Copy Message — hover any AI response to reveal a copy button. Copies the plain text of the message to the clipboard. Shows a checkmark confirmation on success.

1.0.21

  • Added Message Timestamps — each chat message now shows the time it was sent (HH:MM format) next to the sender label. Timestamps are preserved when loading conversation history.

1.0.20

  • Added Stop & Regenerate — the Send button turns into a red Stop button while the AI is responding. Click Stop to cancel the stream at any time. After a response completes, a Regenerate button appears below the last AI message to re-run the same query.

1.0.19

  • Improved Typing Indicator — replaced the hourglass thinking bubble with a smooth 3-dot animated typing indicator (classic messaging-app style). Dots use the configured accent color and animate with a staggered bounce. Timer appears after 5 seconds for slow responses.

1.0.18

  • Added Analytics Dashboard — new admin page (EasyIT AI Chat Analytics) showing total conversations, total messages, messages today, active chats this week, most used provider, and a 7-day message bar chart. All data from your own database, zero external tracking.

1.0.17

  • Added Floating Chat Widget — a fixed launcher button that appears on every page. Click to open a slide-up chat panel. Configurable position (bottom-right / bottom-left), label, and uses your accent color. Enable in Settings UI. No WooCommerce required.

1.0.16

  • Added Conversation Export — a download button in the chat topbar lets users save the current conversation as a .txt file. Enable in Settings UI.

1.0.15

  • Added Voice Input — enable a microphone button in the input area. Uses the browser’s Web Speech API (Chrome, Edge, Safari). Speech is transcribed directly into the text field. Enable in Settings UI. Requires HTTPS.

1.0.14

  • Added Color Customization — set Accent, User message, and AI message bubble colors via color pickers in Settings UI. Changes apply instantly with a reset-to-default button for each color.

1.0.13

  • Added Custom AI Avatar — upload any image from the WordPress Media Library to replace the default 🤖 emoji in all AI message bubbles. Configurable in Settings UI.

1.0.12

  • Added Suggested Questions — display clickable question chips below the welcome area. Clicking a chip sends it instantly. Up to 6 chips, one per line. Configurable in Settings UI.

1.0.11

  • Added Welcome Message — enable a custom AI greeting bubble that appears when a new chat session starts. Configurable in Settings UI. Supports markdown. Not stored or sent to the AI.

1.0.10

  • Added «Upgrade to Pro » link in the plugins list for easy access to the Pro version.

1.0.9

  • Fixed fatal error on activation — Freemius SDK vendor files now included in the plugin package.

1.0.8

  • Renamed Freemius helper function to eaic_fs() for consistency with plugin prefix.

1.0.7

  • WooCommerce bots moved to EasyIT AI Chat Pro add-on.
  • Updated default models: GPT-4o-mini (OpenAI), Claude 3.5 Haiku (Anthropic), Gemini 2.0 Flash (Gemini).
  • Added newer model examples in settings: GPT-4.1, o3, o4-mini, Claude 3.7 Sonnet, Gemini 2.5 Pro/Flash.

1.0.6

  • Minor bug fixes and stability improvements.

1.0.5

  • Minor bug fixes and stability improvements.

1.0.4

  • Added Google Gemini provider (Gemini 1.5 Flash, Gemini 1.5 Pro, Gemini 2.0 Flash).
  • Added auto-title generation — first message generates a meaningful session title via the active AI provider.
  • Added data retention cron — sessions older than the configured number of days are purged automatically.
  • Added per-IP rate limiting as a secondary hard cap alongside the existing per-user/session limit.
  • Added Lock System Prompt setting to prevent front-end prompt injection on public sites.
  • Improved guest cookie security: SameSite=Lax attribute now set via PHP 8.0 array signature.
  • Rate limit window and max values are now configurable in Settings Security.

1.0.3

  • Renamed shortcode from [easyai] to [eaic_chat] to use the plugin’s eaic prefix (WordPress.org review feedback).

1.0.2

  • Renamed plugin and folder to comply with WordPress.org trademark guidelines.
  • All exception messages now escaped before being thrown.
  • All direct database queries paired with object-cache reads/writes.
  • All AJAX handlers verify nonce before reading $_POST.
  • Removed deprecated load_plugin_textdomain() call (handled automatically since WP 4.6+).
  • All view-scoped variables prefixed to avoid global namespace collisions.
  • Excluded development files from production zip.

1.0.1

  • Initial public release.