=== Vibeking Connect ===
Contributors: vibeking
Tags: seo, meta description, alt text, redirects, llms.txt
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 8.0
Stable tag: 1.1.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Applies the SEO fixes you ordered in Vibeking to your WordPress site, with a backup of every change and a one-click rollback.

== Description ==

Vibeking (https://vibekingdevelopment.com) monitors websites for health, SEO and AI visibility and turns findings into fix tasks. This plugin connects your site to your Vibeking account, so a fix you ordered and confirmed in Vibeking is applied on your site, with the previous value kept for a rollback.

What the plugin can change, only after you ordered and confirmed the fix in Vibeking:

* SEO title, meta description, canonical and indexing (noindex) of a page, through Yoast SEO, Rank Math, SEOPress or All in One SEO; without an SEO plugin the plugin prints these tags itself
* Alt text of images (in the media library and in the page content)
* 301 redirects
* llms.txt and robots.txt (a physical file in the WordPress root is updated; otherwise the plugin serves the file)
* Organization and FAQ structured data (JSON-LD)
* An answer block at the top of a page

What it never does: install plugins, change themes, touch users or settings, or make changes you did not order.

Every applied change is listed under Settings, Vibeking Connect with its previous value and a Roll back button.

= Requirements =

* A Vibeking account. Fixes are ordered in your Vibeking account; plans and fix prices are listed on https://vibekingdevelopment.com/en/pricing.
* Outgoing HTTPS from your server to vibekingdevelopment.com, and incoming requests to the REST API of your site.

== Installation ==

1. Install the plugin through Plugins, Add New, or upload the plugin folder to /wp-content/plugins/.
2. Activate the plugin.
3. In Vibeking open Connections, choose WordPress and copy the pairing code.
4. In WordPress open Settings, Vibeking Connect, paste the code and click Pair with Vibeking.

== Frequently Asked Questions ==

= Do I need a Vibeking account? =

Yes. The plugin only applies fixes that you ordered and confirmed in your Vibeking account. Without a pairing it does nothing.

= Can I undo a change? =

Yes. Every change keeps its previous value. Roll it back under Settings, Vibeking Connect, or ask for a rollback in Vibeking.

= What happens when I disconnect or uninstall? =

Disconnecting ends Vibeking's access at once. Applied changes stay in place until you roll them back. Uninstalling removes the plugin's own settings, backups and redirects.

== External services ==

This plugin connects to Vibeking, a website monitoring service run by Romet Trade (trade name Vibeking Development) at https://vibekingdevelopment.com. The connection is needed to pair the site with your Vibeking account and to receive the fixes you ordered there.

* Pairing: when an administrator pastes a pairing code and clicks Pair with Vibeking, the plugin sends the code, the site URL, home URL and REST URL, the plugin, WordPress and PHP versions, the active SEO plugin, whether the site is a multisite, the environment type and the list of supported change types to https://vibekingdevelopment.com/api/public/connect/wordpress. Vibeking returns a site token that is stored in your WordPress database.
* Disconnecting: when an administrator clicks Disconnect, the plugin sends the Vibeking site id and the home URL, signed with the site token, to https://vibekingdevelopment.com/api/public/connect/wordpress/disconnect.
* Requests from Vibeking: after pairing, Vibeking calls the plugin's REST routes under /wp-json/vibeking/v1/ to read the current SEO values and images of the pages in a fix, to apply or roll back changes you ordered, and to read the connection status (plugin, WordPress and PHP versions, SEO plugin, number of applied changes and redirects). Every request is signed with the site token (HMAC-SHA256), is valid for five minutes and can be used once.

No data is sent without one of these actions, and the plugin does not track visitors.

Terms of use: https://vibekingdevelopment.com/en/terms
Privacy policy: https://vibekingdevelopment.com/en/privacy

== Security ==

Every request from Vibeking carries an HMAC-SHA256 signature made with the site token, a timestamp (five minute window) and a single-use nonce. No WordPress user or password is shared with Vibeking. Disconnecting in WordPress or in Vibeking ends the access immediately.

== Changelog ==

= 1.1.1 =
* The settings page now states that a pairing code is valid for 24 hours.

= 1.1.0 =
* Updates now come from WordPress.org; the plugin no longer checks vibekingdevelopment.com for updates.
* Translations now come from translate.wordpress.org.
* robots.txt and llms.txt are written through the WordPress filesystem API.
* Structured data and answer blocks are escaped when they are printed.
* Tags are stripped from llms.txt when it is saved.

= 1.0.0 =
* First release.

== Upgrade Notice ==

= 1.1.1 =
Corrects the stated validity of the pairing code (24 hours).

= 1.1.0 =
Updates now come from WordPress.org.
