=== JOVION AI Assistant ===
Contributors: dineshsatro
Tags: ai, ai assistant, chatbot, seo, automation
Requires at least: 6.9
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.10
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

AI assistant and chatbot for WordPress. Run updates, audit SEO and site health, and write faster with Gemini, OpenAI, Claude, Groq or a local model.

== Description ==

**JOVION AI Assistant puts an AI assistant inside your WordPress admin that looks at your actual site before it answers, and can do real maintenance work on it.** Ask what needs updating, which plugins are inactive, or how your SEO looks. JOVION reads your site first, then replies. Ask it to run the updates and it does, once you confirm.

Bring your own AI: Google Gemini (free tier available), OpenAI, Anthropic Claude, Groq, or a local model through Ollama or LM Studio. You pay your provider directly, or nothing at all with a local model or a free tier. JOVION needs no account and no licence key, on as many sites as you like.

[Documentation](https://jovionwp.com/documentation/) | [Knowledge base](https://jovionwp.com/knowledge-base/)

= AI chat in your WordPress admin =

* A chat bubble in the corner of wp-admin opens the assistant on whatever screen you are working on
* Grounded answers: JOVION can read your posts, pages, plugins, themes, taxonomies and ACF fields before replying
* Ask about content, SEO, marketing or code, or about how your site is set up
* Read-only file inspection: read a file, list a directory
* Persistent memory: notes you ask JOVION to remember, reused in later chats
* Editable persona: set JOVION's tone, scope and safety conventions yourself
* Voice input through your browser's speech recognition, and spoken replies
* Attach a screenshot to your question

= Site maintenance from chat =

* Update plugins, themes and WordPress core, one at a time or everything at once. The version you were on is recorded in the Activity log
* Install plugins from WordPress.org, and activate or deactivate them
* List, update and switch themes
* JOVION stops and asks you to confirm before it installs, activates or deactivates a plugin, switches your theme or runs updates
* A restore point is saved before every plugin or theme switch, and the Activity log can revert those switches in one click

= Audits and reports =

* Site health checks
* Media library audit
* SEO content inventory, with an optional broken-image check
* Sitemap and robots.txt checks
* Maintenance reports on demand

= Write faster =

* Editor Copilot in the block editor: rewrite, fix grammar, translate, summarize, and suggest titles and excerpts. Authors and editors can use it on their own drafts
* AI Playground: a tool-free workspace for quick AI tasks, with saved prompt templates

= A chatbot for your visitors (optional) =

* Off by default. Add it to any page with the [jovion_chat] shortcode and it appears as a chat bubble on that page, using the persona you set
* Origin checks, plus per-visitor and site-wide message limits that you set on the Chatbot screen
* A small "Powered by JOVION" credit link is off by default, and shown only if you switch it on

= Private by design =

* JOVION has no server of its own. Requests go only to the AI provider you choose, and with a local model they go only to the server you run
* The admin assistant, the Playground and every setting are available only to users who can manage options. The Editor Copilot is available to anyone who can edit posts
* A daily count of the requests JOVION has sent to your AI provider
* Admin fonts (Space Grotesk and JetBrains Mono) are served from the plugin, so no external font requests are made

= For agencies and their clients =

* Optional Connections screen, to facilitate clients running an Agency Hub: pair this site with a JOVION Agency Hub (part of JOVION Agency, a paid product — see below) so the agency that looks after your site can read its health and pending updates. Nothing is shared until you create a pairing, and you can revoke it at any time

= Why JOVION? =

* **It works on your site, not just about it.** JOVION checks your real plugins, themes, content and settings before it answers, and can carry out the maintenance it recommends.
* **Careful with changes.** It asks before it changes anything, saves a restore point before plugin and theme switches, and only reads files.
* **Your AI, your cost.** Use the provider you already pay for, a free tier, or a local model.
* **Free on unlimited sites.** Everything described on this page is in this plugin.

== Installation ==

= From your WordPress dashboard =

1. Go to Plugins → Add Plugin (called "Add New Plugin" in older WordPress versions)
2. Search for "JOVION AI Assistant"
3. Click Install Now, then Activate

= Manual installation =

1. Download the plugin zip from this page
2. Go to Plugins → Add Plugin → Upload Plugin, choose the zip and click Install Now
3. Activate the plugin

= First setup (about two minutes) =

1. Get a free Gemini API key from [Google AI Studio](https://aistudio.google.com/app/apikey) (Google may ask you to link a Cloud billing account; the free tier stays free within its limits). Any of the other providers works too, and a local model needs no key
2. Go to JOVION AI Assistant → Setup, choose your provider, paste the key and test it
3. Under "03 / Enable", tick **Enable AI** and click **Save settings**. The chat bubble appears only after AI is enabled and the settings are saved
4. Open any other admin screen, such as the Dashboard, click the chat bubble in the bottom corner and ask "How is my site doing?"

The chat bubble is not shown on JOVION's own settings screens (Setup, Persona, Activity, Display and the other JOVION AI Assistant tabs), so look for it on any other admin page.

== Frequently Asked Questions ==

= Is JOVION free? =

Yes. Everything described on this page is part of this plugin, works without a licence key and can be used on as many sites as you like. You pay your AI provider directly for what you use, or nothing with a free tier or a local model. JOVION Pro is a separate, paid plugin that adds more tools (see below); this plugin never asks for a key.

= Which AI provider should I start with? =

Google Gemini is the easiest start: the key is free and needs no card at first. Groq has a generous free tier and is very fast. OpenAI and Anthropic Claude are pay-as-you-go from the first request. A local model through Ollama or LM Studio costs nothing and keeps requests on a server you run. See "Choosing an AI Provider" below for the details.

= Do I need an API key? =

For Gemini, OpenAI, Claude and Groq, yes: you create one in your account with that provider and paste it into JOVION AI Assistant → Setup. A local model through Ollama or LM Studio needs no key.

= Why do I see "429", "rate limit" or "quota exceeded"? =

That message comes from your AI provider, not from JOVION. It means you have reached that provider's limit for the minute or the day, which happens quickly on free tiers because one chat message can take several requests. Wait for the limit to reset, add billing with your provider, switch providers, or give JOVION its own key.

= Can JOVION change my site? =

Yes, within limits. It can run plugin, theme and core updates, install plugins from WordPress.org, activate and deactivate plugins, and switch themes. It asks you to confirm each of these first. The chat assistant cannot create or edit posts, and it only reads files, never writes them. The Editor Copilot suggests text in the block editor, and you choose whether to use it.

= Can I undo a change? =

Plugin activations, deactivations and theme switches get a restore point first, and the Activity log reverts them in one click. Updates cannot be reversed in place by WordPress, so JOVION records the version you were on instead; to roll back, reinstall that version.

= Does JOVION add anything to my public site? =

Only the visitor chatbot, and only if you switch it on and place the [jovion_chat] shortcode on a page. Everything else stays in wp-admin.

= What data does JOVION send, and where? =

Nothing goes to JOVION. Your requests go to the AI provider you choose, with the details listed under "External Services" below.

= Can I use it with a local model? =

Yes. Choose Local (Ollama / LM Studio) in Setup and point JOVION at your server. Requests then go only to the address you enter.

= Who can use the assistant? =

Users who can manage options (administrators, on a standard site) can use the chat, the Playground and the settings. Anyone who can edit posts can use the Editor Copilot.

= What does JOVION Pro add? =

JOVION Pro is a separate plugin that works alongside this one. It adds tools such as post and page creation from chat, image search and generation, page-builder and WooCommerce tools, and the chat bubble on every page. See "JOVION Pro and Agency" below for the full lists.

= Where can I get help? =

Ask in this plugin's support forum on WordPress.org, or read the [documentation](https://jovionwp.com/documentation/).

== Screenshots ==

1. The admin chat: ask about your site and JOVION reads it before it answers.
2. Running updates from chat, with JOVION asking you to confirm first.
3. Setup: pick your AI provider, from Gemini, OpenAI, Claude and Groq to a local model.
4. The Editor Copilot in the block editor, fixing the grammar and spelling of a selected paragraph.
5. The Activity log, where plugin and theme switches can be reverted in one click.
6. The optional visitor chatbot on a page.

== Choosing an AI Provider ==

You need one provider. Free tiers are for trying JOVION out: one chat message can take several requests, so daily use soon reaches a free tier's limit.

* **Google Gemini:** a free key with no card needed at first. Your free-tier limit varies by account and model; Google shows it on its [rate limit page](https://aistudio.google.com/rate-limit).
* **Groq:** a generous, very fast free tier using open-weight models.
* **OpenAI and Anthropic Claude:** pay-as-you-go from the first request.
* **Local (Ollama / LM Studio):** no key and no cost. Requests go only to the server you run.

A "429" or "quota exceeded" message comes from your provider, not from JOVION. Give JOVION its own key, because apps that share a key share its quota. The full guide is in the [documentation](https://jovionwp.com/documentation/#providers), with fixes for common errors under [troubleshooting](https://jovionwp.com/documentation/#troubleshooting).

== External Services ==

JOVION has no server of its own. It contacts the services below only when you use the feature concerned, never on activation or on a schedule. Full details: [External Services](https://jovionwp.com/external-services/).

* **Your AI provider**, with your key: your message and conversation, attachments, tool results, your saved Memory notes and a short site description, when you chat, test a connection, or use the Editor Copilot or Playground. The visitor chatbot sends only the visitor's messages, the site name and your persona. Terms and privacy: [Google Gemini](https://ai.google.dev/gemini-api/terms) ([privacy](https://policies.google.com/privacy)), [OpenAI](https://openai.com/policies/terms-of-use) ([privacy](https://openai.com/policies/privacy-policy)), [Anthropic Claude](https://www.anthropic.com/legal/commercial-terms) ([privacy](https://www.anthropic.com/legal/privacy)), [Groq](https://groq.com/terms-and-conditions/) ([privacy](https://groq.com/privacy-policy/)).
* **Local models** (Ollama / LM Studio): requests go only to the server you run, or through a tunnel you choose.
* **Model lists:** opening Setup sends your key to your provider to list its models (kept for 12 hours).
* **Broken-image check** (optional): a HEAD request to each image address in your content, only when you run it.
* **Voice:** your browser's speech recognition; some browsers send the audio to their vendor.
* **WordPress.org:** installs and updates you ask for use WordPress's own installer.
* **Connections** (optional): a paired JOVION Agency Hub can read this site's status (versions, pending updates, HTTPS) until you revoke the pairing.


== Bundled Resources and Credits ==

Everything bundled with this plugin is licensed compatibly with GPLv2 or later.

**Fonts** (served from the plugin; no external font requests are made):

* [Space Grotesk](https://github.com/floriankarsten/space-grotesk) — [SIL Open Font License 1.1](https://openfontlicense.org/)
* [JetBrains Mono](https://github.com/JetBrains/JetBrainsMono) — [SIL Open Font License 1.1](https://openfontlicense.org/)

== JOVION Pro and Agency ==

Everything above is part of this free plugin and works without a licence key. [JOVION Pro](https://jovionwp.com/pricing/) is a separate plugin that adds more tools alongside it. Its licence key is entered in Pro; this plugin never asks for one.

= Pro features (1 site) =

* **Content from chat:** create, update and delete posts and pages, plus categories and tags.
* **Blog-post automation:** new posts with AI-generated featured images.
* **Image tools:** royalty-free image search, AI image generation, import, alt text, image analysis and unused-image cleanup.
* **SEO Sweep:** site-wide fixes, AI meta descriptions and robots meta.
* **More Copilot actions:** continue writing, meta descriptions and slugs, plus Playground run history.
* **Page builders:** Elementor and Bricks tools, and a Design System of brand tokens the AI follows.
* **WooCommerce and ACF tools.**
* **Knowledge Base (RAG) and Assistants:** answers grounded in your own documents, and reusable personas.
* **Chat Bot on every page:** no shortcode needed, with avatar, colours, custom CSS, position and voice.
* **MCP connections:** use your site's tools from external AI clients.
* **Full file management:** write, edit and delete files, and remove plugins.
* **Server-side voice transcription.**
* **Updates and email support** while your licence is active.

= Agency features (3 sites) =

* **Everything in Pro**, licensed for three sites.
* **Multi-Site Agency Hub:** monitor client sites from one dashboard.
* **Scheduled fleet audits:** with email and Telegram digests.
* **AI Forms:** a conversational form builder.
* **Client reports.**
* **REST API access.**
* **White-label visitor chatbot:** the "Powered by JOVION" credit removed.
* **Updates and email support** while your licence is active.

If JOVION Pro is installed but not yet activated or licensed, this plugin shows a notice naming the missing step. The notice appears only when Pro is installed.

== Disclaimer ==

JOVION connects your WordPress site to the AI service you choose. You need your own API key and must follow that provider's terms of service; links to each provider's terms and privacy policy are under External Services above. Check your usage and costs in your provider's own dashboard, which is the accurate record.

AI can be wrong: review what JOVION produces before you rely on it or publish it, and keep backups of your site. JOVIONWP, the developer of JOVION, is not responsible for any issues or losses caused by using the plugin or AI-generated content. Talk to a legal expert about the laws that apply to you, and follow them. JOVION stores its data only in your own WordPress database, and keeping your site secure is your responsibility. Read the [full disclaimer](https://jovionwp.com/disclaimer/).

== Changelog ==

= 1.0.10 =
* Chat replies now show their formatting: headings, bulleted and numbered lists (including nested ones), paragraphs, line breaks and code, where before they ran together as one paragraph with the Markdown symbols showing. A reply keeps its line breaks while it is still arriving, too.
* The confirmation JOVION asks for before changing a plugin or theme now names it, for example "update plugin Akismet Anti-spam (akismet/akismet.php)" instead of just "update plugin". The same wording appears in the Activity log.

= 1.0.9 =
* Requires WordPress 6.9 or later. Tools now register with WordPress's own Abilities API instead of a bundled copy of it.
* Features that need JOVION Pro now live entirely in JOVION Pro, a separate plugin: the licence key form, the Modules tab, server-side voice transcription, the extra Copilot actions, Playground run history, and image search and generation (which use third-party services).
* Fixed: reverting a change to a setting that holds a list (such as the active plugins) could empty it. Reverting a plugin change could have deactivated every plugin. Settings and theme switches now restore through WordPress itself, and sites with a persistent object cache see the restored value straight away.
* Fixed: Revert undid only the last of the changes an action made. It now undoes all of them, newest first, and says how many it undid.
* Fixed: right after the plugin was updated, actions taken from chat were not recorded in Activity until someone opened an admin page.
* Activity no longer offers Revert on entries whose restore point has expired; they say so instead.
* Tools: the plugin and theme tools that change your live site no longer have a Test button. Ask JOVION in chat instead.
* Settings are now saved from a fixed list of known fields.
* Fixed: the SEO check's broken-image scan stopped with an error on the first image it looked at.
* Memory is now a rolling notebook: when it is full, a new note replaces the oldest one instead of being refused, and JOVION tells you which note it replaced.
* Chatbot: you now set the per-visitor and daily message limits yourself on the Chatbot screen (defaults stay 10 per visitor every 10 minutes and 200 a day).

= 1.0.8 =
* Privacy: the admin screens no longer load fonts from Google. They are served from the plugin, so viewing a JOVION page no longer tells a third party you were there. Body text now uses the font your WordPress admin already uses.
* Fixed: a note saved in Memory that contained an apostrophe was stored with a stray backslash in front of it.
* Translation-ready: every message that includes a name, number or file path now carries a note for translators, and multi-part messages can be reordered to suit the language.
* Security: a review pass over how the plugin prints values to the screen and reads submitted data, tightening both.
* JOVION now requires WordPress 6.0 or newer.

= 1.0.7 =
* Fixed: asking the assistant to update a plugin (or run all updates) left the updated plugin deactivated — WordPress deactivates a plugin while replacing its files, and the assistant never switched it back on. Updated plugins now come back exactly as they were, and if the new version fails to activate the assistant tells you instead of leaving the site quietly degraded.

= 1.0.6 =
* Maintenance release; no user-facing changes.

= 1.0.5 =
* Maintenance release; no user-facing changes.

= 1.0.4 =
* Fixed: the sidebar's "Add API key" link on a fresh install led to "Sorry, you are not allowed to access this page". It now opens the Setup screen at the connection step.

= 1.0.3 =
* New: the model list for every provider refreshes from the provider itself, so retired models drop out of the dropdown automatically and newly released ones appear without a plugin update. A Refresh models button is available on every provider, and a saved model that a provider retires is replaced with a working one on its own.
* Fixed: the streaming test could warn that your host "may be buffering SSE" when nothing was wrong — fast providers can emit a whole short reply at once, which the old check misread. The test now measures the connection itself with paced probe events, replies stream with a small padding preamble that helps hosts that genuinely buffer, and when a host does deliver replies in one piece the message says plainly that it is cosmetic, not broken.

= 1.0.2 =
* Fixed: Groq connections failed with "The model `llama-3.3-70b-versatile` does not exist or you do not have access to it". Groq has retired the Llama models, which took the plugin's default and two of its five dropdown options with it. The list is now openai/gpt-oss-20b, qwen/qwen3.8-27b and openai/gpt-oss-120b — each checked against the live API for both availability and tool-calling support, since a model that connects but cannot call tools would fail on the first real request instead of at setup.
* Fixed: the provider connection test ignored the model you had chosen and always tested the provider's default, so the error named a model you could see you had not selected. It now tests the selected model, and reports which model it used whether it passes or fails.
* Fixed: a connection test could report success while the model returned nothing at all. Reasoning models spend their output budget thinking before replying, and the test's 10-token limit left no room for an answer. An empty reply is now reported as a failure.
* Note: a saved model that no longer exists is detected and replaced with a working one automatically — no action needed if your Groq setting was pointing at a retired model.

= 1.0.1 =
* Changed: the public chatbot's message box now sits on its own full-width row, with the Send control on a row beneath it — the same arrangement the admin command center uses. It was previously a single row shared with those buttons, which on a narrow panel left the message box around 150px wide, narrow enough to wrap its own placeholder onto two lines.
* Fixed: the chat panel changed height at a 480px screen-width breakpoint, so the message area was a different size on a phone than on a tablet or desktop. It now sizes from the available height at every width, and is identical across screens wherever there is room for it.

= 1.0.0 =
First public release.

* Admin-only AI chat, with your choice of provider: Google Gemini, OpenAI, Anthropic Claude, Groq, or a fully local model through Ollama / LM Studio. With a local model, requests go only to the server you run.
* Site abilities the assistant can call directly — reading posts, pages, categories and tags; installing, activating and updating plugins and themes; SEO, media and site health audits; and maintenance reports.
* Restore points before plugin and theme switches, with one-click revert, and an Activity trail recording what ran, when, and what it changed.
* A public-facing chatbot, with its own persona and rate limiting, separate from the admin assistant.
* A playground for drafting and saving prompts.
