=== BotBard AI Editor ===
Contributors: botbard
Tags: ai, editor, content, templates, blocks
Requires at least: 6.4
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Describe the change you want. BotBard edits your pages, posts, blocks, templates and media through WordPress — never by editing theme code.

== Description ==

BotBard AI Editor turns a sentence into a change to your site. You describe what
you want, BotBard proposes it, you look at it in a preview only you can see, and
it goes live when you press Publish.

**What it can change**

* Pages and posts — text, headings, buttons, block layout
* New posts and pages, created as drafts you review first
* Publishing, scheduling, and status changes
* Categories and tags, chosen from the terms your site already has
* Block theme templates and template parts, including your header and footer
* Colours, spacing, typography and borders, through the block settings
  WordPress already supports
* Media, added to your Media Library
* Make Hero — a hero section generated for a page, built from structured text
  and video that BotBard's service produces

**What it will not change, ever**

Your theme's PHP. Your theme's JavaScript. Any plugin's code. Any file on your
server. This is not a limitation that can be switched on: the plugin contains no
code that writes a file, and its build refuses to package if a
filesystem-writing function appears anywhere in it.

Everything BotBard does goes through WordPress's own functions —
`wp_update_post()`, `wp_insert_post()`, `wp_set_object_terms()` — with a
capability check on every object it
touches and a checksum that refuses to overwrite work someone else did while
your change was waiting.

**Classic themes**

If your site uses a classic theme, its header, footer and templates are PHP
files, so BotBard AI Editor does not change them. Pages, posts, media,
categories, scheduling and block styling all work normally. The editor tells
you which kind of theme you have rather than offering something it cannot do.

**When BotBard cannot help**

If you ask for something that genuinely needs code — a PHP hook, a custom
shortcode, tracking JavaScript, a plugin installed — BotBard says so and points
you at BotBard Full, a separate product distributed from botbard.ai. Nothing
downloads, installs or activates itself.

== External services ==

This plugin requires a BotBard account and sends data to BotBard's service to
generate changes. It does not work without it.

**BotBard — wp.botbard.ai** (operated by BotBard)

* Service: https://www.botbard.ai/
* Terms of Service: https://www.botbard.ai/terms.html
* Privacy Policy: https://www.botbard.ai/privacy.html

The plugin contacts this one service for four things.

**1. Signing in and your account.**
Triggered when you type your email address on the BotBard screen, and each time
you open that screen while connected.
Sent: your email address, your site's address, and a one-way fingerprint of your
installation (a SHA-256 hash of your site URL and install path). While connected,
only your installation credential.
Returned: a one-time code by email, then your credential, your plan name and your
remaining allowance.

**2. Preparing a change (the AI Editor).**
Triggered only when you press Send on a request you typed.
Sent: your request; the content of the single page, post or template you are
editing; your site's title, tagline, language and text direction; the colour
palette, font sizes and content width from your theme's `theme.json`; the names
of the blocks registered on your site; and the names of your existing categories
and tags.
Returned: a list of proposed changes described as WordPress operations — never
code, never files.

**3. Make Hero.**
Triggered only when you press Create hero.
Sent: your site address, the page's address, title and ID, your language and text
direction, and the style options you chose. If your site is not reachable from
the internet, BotBard cannot look at the page itself, so it asks — every time,
with a Continue button — before sending a snapshot of that page's rendered HTML,
stylesheets and images.
Returned: hero text (a headline, a subheadline and button labels), layout
settings, and the names of the video and image files it produced.

**4. Downloading generated media.**
Triggered when you add a finished hero to a page.
Sent: your installation credential and the name of one file belonging to one of
your own hero jobs. The plugin builds this request itself and accepts no URL from
the service.
Returned: the image or video, which is saved to your Media Library.

**What is never sent:** your theme's PHP or JavaScript files, any plugin's code,
your `wp-config.php`, pages you are not editing, your users, your visitors' IP
addresses, or any analytics or telemetry. This plugin contains no tracking.

== Installation ==

1. Install and activate the plugin.
2. Open **BotBard** in your admin menu.
3. Read the summary of what BotBard sends, then enter your email address.
4. Enter the code BotBard emails you.
5. Choose a page and describe the change you want.

== Frequently Asked Questions ==

= Will this edit my theme's files? =

No. The plugin contains no code capable of writing a file, and the build script
fails if a filesystem-writing function ever appears in it. If BotBard's own
service were completely compromised, the worst it could do to your site is
propose a bad paragraph — which you would see in the preview before publishing.

= What happens to my site while I am editing? =

Nothing. Proposed changes are stored separately and shown only to you, in a
preview only your account can open. Visitors see your site exactly as it was
until you press Publish.

= Can I undo? =

Before publishing: undo, redo, or discard everything. After publishing:
WordPress saves a revision of every page BotBard edits, so you can restore it
from the normal WordPress revisions screen.

= Someone else edited the page while my change was waiting. What happens? =

BotBard refuses to publish and tells you. It compares a checksum of the page
taken when the change was prepared against the page as it is now, so it will
never overwrite work you did not see.

= Do I need an account? =

Yes. BotBard is a hosted service; this plugin is the part that runs on your site.
The free plan includes 15 AI edits each month, and they reset at the start of every
month.

= I asked for something and BotBard said it could not do it. =

The request needed theme or plugin code changed. That is deliberate: not being
able to edit code is what makes this edition safe to run. Advanced code editing
is available in BotBard Full at https://www.botbard.ai/.

= Does it work with my theme? =

Pages, posts, media, categories, scheduling and block styling work with any
theme. Template, header and footer editing needs a block theme, because on a
classic theme those are PHP files.

== Screenshots ==

1. Type what you want changed. The panel on the right is your own site, shown only to you.
2. A prepared change waiting to publish. Visitors keep seeing the old page until you press Publish.
3. Editing a block theme's header without touching a theme file.
4. Asking for a new article. Nothing is written until BotBard answers and you review the draft.
5. Make Hero. On a site the internet cannot reach, BotBard asks before sending a snapshot of the page.

== Changelog ==

= 1.0.0 =
* First release.
