=== Ask My Content – AI Q&A Chatbot === Contributors: ugoltsev Tags: ai, chatbot, q-and-a, content-search, openai Requires at least: 5.8 Requires PHP: 7.4 Tested up to: 6.8 Stable tag: 0.4.2 License: GPL-2.0-or-later License URI: https://www.gnu.org/licenses/gpl-2.0.html AI-powered Q&A chatbot block and shortcode that answers questions based on your own site's pages and posts. == Description == Ask My Content brings AI-powered question answering to your WordPress site. Instead of giving generic chatbot responses, this plugin indexes your site's content (pages and posts) and uses it to provide accurate, context-aware answers to visitors. Unlike standard content search plugins that rely on keyword matching, Ask My Content uses semantic embeddings and retrieval-augmented generation to return direct answers in full sentences. **Key Features** * Simple setup – install, activate, and add the chatbot with a shortcode or block. * Retrieval Augmented Generation (RAG) – answers are grounded in your actual site content. * Uses OpenAI for embeddings and completions (via a secure Node.js backend). * Change tracking – automatically queues edited pages/posts so you can rerun indexing from the dashboard or `wp amc` when you're ready. * Deleted content removal – immediately notifies the backend when pages or posts are trashed or permanently deleted. * Lightweight – no heavy admin UI or visual layout tools, just the essentials. * Flexible – works with posts, pages, and optionally header/footer "virtual posts." * Freemium model – the current free version includes generous token usage limits; a future premium version will remove these limits and provide an Ask My Content API key. **How it works** 1. After activating the plugin, go to **Dashboard → Ask My Content** and press “Start Indexing” (or run `wp amc index`) to send your site content to the backend. 2. Add the **Ask My Content** block to an existing or new page (or place the `[ask_my_content]` shortcode) and publish/update the page so the chat interface has a front-end location. 3. Content is converted into embeddings (vector representations). 4. When a visitor asks a question, the chatbot retrieves the most relevant content snippets from your indexed pages. 5. OpenAI generates an answer based on that content. After you edit content, rerun indexing from **Dashboard → Ask My Content** or via `wp amc index` to push the latest changes. Deleted posts are sent to the backend automatically when they are trashed or removed. > 🔒 Note: Your site's content and user questions are securely sent to an external AI service (OpenAI) for processing. == Installation == 1. Upload the plugin files to `/wp-content/plugins/ask-my-content`, or install via the WordPress Plugins screen. 2. Activate the plugin through the 'Plugins' screen in WordPress. 3. Optionally configure settings in **Dashboard → Ask My Content** (backend API key, model options). 4. Run the initial indexing from **Dashboard → Ask My Content** by pressing “Start Indexing”, or run `wp amc index` from the command line. 5. Add the chatbot to a page using either: * The shortcode: `[ask_my_content]` * The Gutenberg block: "Ask My Content" == Frequently Asked Questions == = Does this plugin use my OpenAI API key? = By default, the plugin uses the developer's OpenAI API key on a secure backend (with generous usage limits). This means you don't need your own OpenAI API key. A future premium version will remove these limits and offer a dedicated Ask My Content API key for unlimited usage. = Will this slow down my site? = No. Heavy AI processing (embeddings, search, completions) happens on a separate Node.js backend service. = Can I choose what content is indexed? = Currently, posts and pages are indexed automatically. Future versions will allow selecting post types, categories, or custom content. = Is my data safe? = Yes. Content is transmitted securely to the backend. = Does this plugin support WordPress Multisite? = Not yet. Ask My Content is not currently compatible with WordPress multisite installations, so it must be activated on individual sites (no network-wide support yet). = Can I customize the shortcode output? = Yes. The `[ask_my_content]` shortcode accepts optional attributes such as `title`, `sessionId`, `width`, `height`, and the various color tokens (`headerBackground`, `headerTextColor`, `chatBackground`, `chatUserBubble`, `chatBotBubble`, `inputBackground`, `inputTextColor`). They map to the same style variables used by the block. See the inline comment above `amc_render_chat_shortcode()` in `ask-my-content.php` for the current list and defaults. == Command Line Usage == The plugin bundles a WP-CLI command suite (`wp amc`) for scripted indexing and status checks. It complements the **Ask My Content Settings** admin screen: * Use the settings page for a guided UI, manual start/stop buttons, and real-time counters inside the WordPress dashboard. * Use `wp amc` when you need automation (cron jobs, SSH sessions, CI) or want to run indexing without opening a browser. Available commands include: * `wp amc index [--include-posts] [--force]` * `wp amc status` * `wp amc stop` = Installing WP-CLI = Many hosts ship with WP-CLI pre-installed. If yours does not, install it manually: 1. Download the Phar: `curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar` 2. Make it executable: `chmod +x wp-cli.phar` 3. Move it into your PATH (optional): `sudo mv wp-cli.phar /usr/local/bin/wp` 4. Confirm: `wp --info` See https://wp-cli.org/#installing for additional options (Homebrew, Docker, Windows packages). = Running the command successfully = Run `wp amc …` from the WordPress installation root (where `wp-config.php` lives) or supply the path explicitly: * Change directory, e.g. `cd /srv/www/wordpress` then run `wp amc status` * Or pass the path flag: `wp --path=/srv/www/wordpress amc status` If you run the command from another folder you will see: > Warning: No WordPress installation found. If the command 'amc' is in a plugin or theme, pass --path=`path/to/wordpress`. Point `wp` at your site root and re-run to resolve the error. == Screenshots == 1. Chatbot on a page, answering a question using site content. 2. Dashboard - Ask My Content admin page. 3. Block Editor - Ask My Content block with align, size and colors params. == Changelog == = 0.4.2 = * Initial release – shortcode, block, automatic content sync, AI-powered answers. == Upgrade Notice == = 0.4.2 = First release. Add the chatbot block or shortcode to any page to enable AI-powered Q&A.