{"id":312787,"date":"2026-05-28T05:57:42","date_gmt":"2026-05-28T05:57:42","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/easyit-ai-chat\/"},"modified":"2026-05-30T07:12:11","modified_gmt":"2026-05-30T07:12:11","slug":"easyit-ai-chat","status":"publish","type":"plugin","link":"https:\/\/vec.wordpress.org\/plugins\/easyit-ai-chat\/","author":23498284,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.4","stable_tag":"trunk","tested":"7.0","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"EasyIT AI Chat \u2014 Chatbot for OpenAI, Claude, DeepSeek, Gemini & Ollama","header_author":"EasyIT","header_description":"Unified AI chatbot for WordPress. Connect Ollama, OpenAI, Anthropic (Claude) and DeepSeek with one shortcode [eaic_chat]. Free, open-source, no tracking.","assets_banners_color":"0e3d49","last_updated":"2026-05-30 07:12:11","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/easybdit\/easyit-ai-chat","header_author_uri":"https:\/\/easyit.com.bd","rating":0,"author_block_rating":0,"active_installs":0,"downloads":94,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.3":{"tag":"1.0.3","author":"muradbd","date":"2026-05-28 06:09:32"}},"upgrade_notice":{"1.0.4":"<p>Adds Google Gemini support, auto-title sessions, data retention cron, and per-IP rate limiting. Recommended for all users.<\/p>","1.0.3":"<p>The shortcode has been renamed from <code>[easyai]<\/code> to <code>[eaic_chat]<\/code>. If you used <code>[easyai]<\/code> on any pages, please update them after upgrading.<\/p>","1.0.2":"<p>Security and WordPress.org compliance update. Recommended for all users.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3551631,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3551631,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3553306,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3553295,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3553433,"resolution":"1","location":"assets","locale":"","width":1920,"height":912},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3553433,"resolution":"2","location":"assets","locale":"","width":1920,"height":912},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3553433,"resolution":"3","location":"assets","locale":"","width":1920,"height":912}},"screenshots":{"1":"The chat interface \u2014 conversation history sidebar, user and AI messages, and a clean ChatGPT-style layout.","2":"Settings page \u2014 provider tabs (Ollama, OpenAI, Anthropic, DeepSeek, Gemini), server URL, model, and Test Connection button.","3":"Adding the chatbot to any page \u2014 just drop the [eaic_chat] shortcode into a block."}},"plugin_section":[],"plugin_tags":[191735,2364,229563,224606,194533],"plugin_category":[],"plugin_contributors":[265036],"plugin_business_model":[],"class_list":["post-312787","plugin","type-plugin","status-publish","hentry","plugin_tags-ai-chatbot","plugin_tags-chatbot","plugin_tags-claude","plugin_tags-gemini","plugin_tags-openai","plugin_contributors-easyit","plugin_committers-muradbd"],"banners":{"banner":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/banner-772x250.png?rev=3553295","banner_2x":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/banner-1544x500.png?rev=3553306","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/icon-128x128.png?rev=3551631","icon_2x":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/icon-256x256.png?rev=3551631","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/screenshot-1.png?rev=3553433","caption":"The chat interface \u2014 conversation history sidebar, user and AI messages, and a clean ChatGPT-style layout."},{"src":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/screenshot-2.png?rev=3553433","caption":"Settings page \u2014 provider tabs (Ollama, OpenAI, Anthropic, DeepSeek, Gemini), server URL, model, and Test Connection button."},{"src":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/screenshot-3.png?rev=3553433","caption":"Adding the chatbot to any page \u2014 just drop the [eaic_chat] shortcode into a block."}],"raw_content":"<!--section=description-->\n<p><strong>EasyIT AI Chat<\/strong> is the easiest way to add an AI chatbot to any WordPress page or post. Add a ChatGPT-style assistant powered by OpenAI, Anthropic Claude, Google Gemini, DeepSeek, or a free local Ollama model \u2014 just drop in <code>[eaic_chat]<\/code>, no coding required.<\/p>\n\n<p>Choose from the world's best AI providers, or run a local model for free with Ollama. You own your data, you control your keys. No tracking, no telemetry.<\/p>\n\n<blockquote>\n  <p>\ud83c\udf10 Website: <a href=\"https:\/\/easyit.com.bd\">easyit.com.bd<\/a>\n  \ud83d\udcfa Tutorials: <a href=\"https:\/\/www.youtube.com\/@easybdit\">youtube.com\/@easybdit<\/a>\n  \ud83d\udcac Community: <a href=\"https:\/\/www.facebook.com\/easybdit\">facebook.com\/easybdit<\/a><\/p>\n<\/blockquote>\n\n<h4>\u2728 Supported AI Providers<\/h4>\n\n<ul>\n<li>\ud83e\udd99 <strong>Ollama<\/strong> \u2014 Run open-source models (Llama, Mistral, Gemma, Qwen, etc.) on your own server. 100% private, 100% free.<\/li>\n<li>\ud83e\udd16 <strong>OpenAI (ChatGPT)<\/strong> \u2014 GPT-4o, GPT-4o-mini, GPT-4-turbo, GPT-3.5-turbo.<\/li>\n<li>\ud83e\udde0 <strong>Anthropic (Claude)<\/strong> \u2014 Claude 3.5 Sonnet, Claude 3.5 Haiku, Claude 3 Opus.<\/li>\n<li>\ud83d\udd0d <strong>DeepSeek<\/strong> \u2014 DeepSeek-Chat, DeepSeek-Reasoner.<\/li>\n<li>\u2726 <strong>Google Gemini<\/strong> \u2014 Gemini 1.5 Flash, Gemini 1.5 Pro, Gemini 2.0 Flash.<\/li>\n<\/ul>\n\n<h4>\ud83d\ude80 Key Features<\/h4>\n\n<ul>\n<li><strong>One shortcode, any provider<\/strong> \u2014 Switch provider with a single attribute: <code>[eaic_chat provider=\"gemini\"]<\/code><\/li>\n<li><strong>ChatGPT-style UI<\/strong> \u2014 Sidebar with conversation history, code blocks with copy button, markdown rendering, dark-mode friendly<\/li>\n<li><strong>Auto-title sessions<\/strong> \u2014 First message automatically generates a meaningful conversation title via the AI<\/li>\n<li><strong>Conversation memory<\/strong> \u2014 Sessions saved per logged-in user or per guest (cookie-scoped, never cross-user)<\/li>\n<li><strong>Custom system prompt<\/strong> \u2014 Set a global prompt in settings or override per shortcode<\/li>\n<li><strong>Lock system prompt<\/strong> \u2014 Prevent front-end prompt injection; admin-configured prompt only<\/li>\n<li><strong>Test Connection<\/strong> button \u2014 Verify your API key or Ollama URL before going live<\/li>\n<li><strong>Rate limiting<\/strong> \u2014 Per-user, per-session, and per-IP throttle to prevent abuse<\/li>\n<li><strong>Data retention<\/strong> \u2014 Auto-purge old conversations after a configurable number of days<\/li>\n<li><strong>Privacy notice<\/strong> \u2014 Optional configurable notice linking to your Privacy Policy<\/li>\n<li><strong>Lightweight<\/strong> \u2014 Assets load only on pages using the shortcode (~25 KB CSS + ~15 KB JS)<\/li>\n<li><strong>No telemetry<\/strong> \u2014 Zero external calls except to the AI provider you choose<\/li>\n<li><strong>Open source<\/strong> \u2014 GPL-2.0-or-later, fully auditable<\/li>\n<\/ul>\n\n<h4>\ud83d\udd27 Shortcode Examples<\/h4>\n\n<p><strong>Basic usage:<\/strong>\n    [eaic_chat]<\/p>\n\n<p><strong>With a specific provider:<\/strong>\n    [eaic_chat provider=\"gemini\" title=\"Support Bot\" height=\"500\"]<\/p>\n\n<p><strong>With a custom system prompt:<\/strong>\n    [eaic_chat provider=\"ollama\" system_prompt=\"You are a helpful gardening assistant.\"]<\/p>\n\n<p><strong>Available attributes:<\/strong> <code>provider<\/code>, <code>title<\/code>, <code>placeholder<\/code>, <code>system_prompt<\/code>, <code>height<\/code><\/p>\n\n<h4>\ud83d\udd12 Privacy<\/h4>\n\n<p>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. <strong>Nothing is sent to the plugin author.<\/strong> You should mention your chosen provider in your site's Privacy Policy.<\/p>\n\n<h4>\ud83c\udf10 Third-Party Services<\/h4>\n\n<p>Depending on which provider you configure, user messages may be sent to:<\/p>\n\n<ul>\n<li><strong>OpenAI<\/strong> \u2014 <a href=\"https:\/\/openai.com\/policies\/row-terms-of-use\">Terms<\/a> \u00b7 <a href=\"https:\/\/openai.com\/policies\/row-privacy-policy\">Privacy<\/a><\/li>\n<li><strong>Anthropic<\/strong> \u2014 <a href=\"https:\/\/www.anthropic.com\/legal\/consumer-terms\">Terms<\/a> \u00b7 <a href=\"https:\/\/www.anthropic.com\/legal\/privacy\">Privacy<\/a><\/li>\n<li><strong>DeepSeek<\/strong> \u2014 <a href=\"https:\/\/chat.deepseek.com\/downloads\/DeepSeek%20Terms%20of%20Use.html\">Terms<\/a> \u00b7 <a href=\"https:\/\/chat.deepseek.com\/downloads\/DeepSeek%20Privacy%20Policy.html\">Privacy<\/a><\/li>\n<li><strong>Google Gemini<\/strong> \u2014 <a href=\"https:\/\/ai.google.dev\/gemini-api\/terms\">Terms<\/a> \u00b7 <a href=\"https:\/\/policies.google.com\/privacy\">Privacy<\/a><\/li>\n<li><strong>Ollama<\/strong> \u2014 Calls your own self-hosted Ollama server. No third party involved by default.<\/li>\n<\/ul>\n\n<p>No data is transmitted unless you have configured a provider and a user sends a message.<\/p>\n\n<!--section=installation-->\n<p><strong>Automatic Installation (Recommended)<\/strong><\/p>\n\n<ol>\n<li>Go to <strong>Plugins \u2192 Add New<\/strong> in your WordPress dashboard<\/li>\n<li>Search for <strong>EasyIT AI Chat<\/strong><\/li>\n<li>Click <strong>Install Now<\/strong> then <strong>Activate<\/strong><\/li>\n<\/ol>\n\n<p><strong>Manual Installation<\/strong><\/p>\n\n<ol>\n<li>Download the plugin zip file<\/li>\n<li>Go to <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong><\/li>\n<li>Upload the zip and click <strong>Install Now<\/strong><\/li>\n<li>Activate the plugin<\/li>\n<\/ol>\n\n<p><strong>Setup<\/strong><\/p>\n\n<ol>\n<li>Go to <strong>EasyIT AI Chat \u2192 Settings<\/strong><\/li>\n<li>Choose your preferred AI provider and enter your API key<\/li>\n<li>Click <strong>Test Connection<\/strong> to verify everything works<\/li>\n<li>Add <code>[eaic_chat]<\/code> to any page, post, or widget area<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20an%20api%20key%3F\"><h3>Do I need an API key?<\/h3><\/dt>\n<dd><p>For <strong>OpenAI<\/strong>, <strong>Anthropic<\/strong>, <strong>DeepSeek<\/strong>, and <strong>Google Gemini<\/strong> \u2014 yes, you need your own API key. For <strong>Ollama<\/strong> \u2014 no key needed, just a running Ollama server.<\/p><\/dd>\n<dt id=\"how%20do%20i%20get%20an%20api%20key%3F\"><h3>How do I get an API key?<\/h3><\/dt>\n<dd><ul>\n<li>OpenAI: <a href=\"https:\/\/platform.openai.com\">platform.openai.com<\/a><\/li>\n<li>Anthropic: <a href=\"https:\/\/console.anthropic.com\">console.anthropic.com<\/a><\/li>\n<li>DeepSeek: <a href=\"https:\/\/platform.deepseek.com\">platform.deepseek.com<\/a><\/li>\n<li>Google Gemini: <a href=\"https:\/\/aistudio.google.com\/app\/apikey\">aistudio.google.com<\/a><\/li>\n<\/ul><\/dd>\n<dt id=\"where%20can%20i%20run%20ollama%3F\"><h3>Where can I run Ollama?<\/h3><\/dt>\n<dd><p>Locally on your server, or any machine reachable via HTTP. Visit <a href=\"https:\/\/ollama.com\">ollama.com<\/a> for installation instructions.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20store%20conversations%3F\"><h3>Does the plugin store conversations?<\/h3><\/dt>\n<dd><p>Yes \u2014 in two 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.<\/p><\/dd>\n<dt id=\"can%20i%20disable%20conversation%20history%3F\"><h3>Can I disable conversation history?<\/h3><\/dt>\n<dd><p>A \"no-storage\" mode is on the roadmap. Currently you can clear conversations using the trash icon in the chat sidebar.<\/p><\/dd>\n<dt id=\"will%20it%20slow%20down%20my%20site%3F\"><h3>Will it slow down my site?<\/h3><\/dt>\n<dd><p>No. Frontend assets (~25 KB CSS + ~15 KB JS) only load on pages where the <code>[eaic_chat]<\/code> shortcode is used.<\/p><\/dd>\n<dt id=\"can%20i%20use%20multiple%20providers%20on%20the%20same%20site%3F\"><h3>Can I use multiple providers on the same site?<\/h3><\/dt>\n<dd><p>Yes \u2014 use the <code>provider<\/code> attribute to specify different providers on different pages: <code>[eaic_chat provider=\"openai\"]<\/code> on one page and <code>[eaic_chat provider=\"gemini\"]<\/code> on another.<\/p><\/dd>\n<dt id=\"is%20this%20plugin%20really%20free%3F\"><h3>Is this plugin really free?<\/h3><\/dt>\n<dd><p>Yes \u2014 GPL-2.0-or-later. The only costs are to your chosen AI provider. Ollama is completely free.<\/p><\/dd>\n<dt id=\"where%20can%20i%20get%20support%3F\"><h3>Where can I get support?<\/h3><\/dt>\n<dd><ul>\n<li>\ud83d\udcfa Video tutorials: <a href=\"https:\/\/www.youtube.com\/@easybdit\">youtube.com\/@easybdit<\/a><\/li>\n<li>\ud83d\udcac Facebook: <a href=\"https:\/\/www.facebook.com\/easybdit\">facebook.com\/easybdit<\/a><\/li>\n<li>\ud83c\udf10 Website: <a href=\"https:\/\/easyit.com.bd\">easyit.com.bd<\/a><\/li>\n<li>\ud83d\udce7 Email: support@easyit.com.bd<\/li>\n<li>\ud83d\udc1b Bug reports: WordPress.org support forum<\/li>\n<\/ul><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Added Google Gemini provider (Gemini 1.5 Flash, Gemini 1.5 Pro, Gemini 2.0 Flash).<\/li>\n<li>Added auto-title generation \u2014 first message generates a meaningful session title via the active AI provider.<\/li>\n<li>Added data retention cron \u2014 sessions older than the configured number of days are purged automatically.<\/li>\n<li>Added per-IP rate limiting as a secondary hard cap alongside the existing per-user\/session limit.<\/li>\n<li>Added Lock System Prompt setting to prevent front-end prompt injection on public sites.<\/li>\n<li>Improved guest cookie security: SameSite=Lax attribute now set via PHP 8.0 array signature.<\/li>\n<li>Rate limit window and max values are now configurable in Settings \u2192 Security.<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Renamed shortcode from <code>[easyai]<\/code> to <code>[eaic_chat]<\/code> to use the plugin's <code>eaic<\/code> prefix (WordPress.org review feedback).<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Renamed plugin and folder to comply with WordPress.org trademark guidelines.<\/li>\n<li>All exception messages now escaped before being thrown.<\/li>\n<li>All direct database queries paired with object-cache reads\/writes.<\/li>\n<li>All AJAX handlers verify nonce before reading <code>$_POST<\/code>.<\/li>\n<li>Removed deprecated <code>load_plugin_textdomain()<\/code> call (handled automatically since WP 4.6+).<\/li>\n<li>All view-scoped variables prefixed to avoid global namespace collisions.<\/li>\n<li>Excluded development files from production zip.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Initial public release.<\/li>\n<\/ul>","raw_excerpt":"AI chatbot for WordPress \u2014 add ChatGPT, Claude, Gemini, DeepSeek or local Ollama to any page with one shortcode. Bring your own API keys.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/312787","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=312787"}],"author":[{"embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/muradbd"}],"wp:attachment":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=312787"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=312787"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=312787"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=312787"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=312787"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=312787"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}