{"id":311099,"date":"2026-05-28T11:52:43","date_gmt":"2026-05-28T11:52:43","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/arguto\/"},"modified":"2026-05-28T13:28:47","modified_gmt":"2026-05-28T13:28:47","slug":"arguto","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/arguto\/","author":23496786,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.0","requires":"6.2","requires_php":"8.0","requires_plugins":null,"header_name":"Arguto","header_author":"Fluid Interactive","header_description":"The AI chat that actually does things on your WordPress site. Built-in tools for site search, content retrieval, WooCommerce, events and forms \u2014 plus custom HTTP tools you wire up yourself.","assets_banners_color":"03080e","last_updated":"2026-05-28 13:28:47","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/www.fluidinteractive.com","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":36,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"albertocandussi","date":"2026-05-28 13:28:47"}},"upgrade_notice":{"1.0.0":"<p>First public release.<\/p>"},"ratings":[],"assets_icons":{"icon-256x256.png":{"filename":"icon-256x256.png","revision":3552026,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3552026,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3552068,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3552068,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"arguto\/widget":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"arguto\/widget","title":"Arguto Chat Widget","category":"widgets","icon":"format-chat","description":"Embed an Arguto chat widget. Pick which agent to use.","keywords":["arguto","chat","assistant","ai"],"attributes":{"agent":{"type":"string","default":""}},"supports":{"html":false,"reusable":true,"customClassName":false,"align":false},"editorScript":"file:.\/index.js","editorStyle":"file:.\/editor.css"}},"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.jpg":{"filename":"screenshot-1.jpg","revision":3552026,"resolution":"1","location":"assets","locale":"","width":1920,"height":1080},"screenshot-2.jpg":{"filename":"screenshot-2.jpg","revision":3552026,"resolution":"2","location":"assets","locale":"","width":1920,"height":1080},"screenshot-3.jpg":{"filename":"screenshot-3.jpg","revision":3552026,"resolution":"3","location":"assets","locale":"","width":3200,"height":1660},"screenshot-4.jpg":{"filename":"screenshot-4.jpg","revision":3552026,"resolution":"4","location":"assets","locale":"","width":3200,"height":1660},"screenshot-5.jpg":{"filename":"screenshot-5.jpg","revision":3552026,"resolution":"5","location":"assets","locale":"","width":3200,"height":1662}},"screenshots":{"1":"The Arguto chat widget on a WooCommerce storefront \u2014 the agent lists upcoming events and downloads a calendar invite from inside the chat.","2":"Edit an agent: pick from nine pre-built purposes (event concierge, shop assistant, product expert, support agent, and more) \u2014 each ships with a working system prompt and a sensible tool set.","3":"Settings screen \u2014 license status with plan-token usage, knowledge auto-sync, and the sitewide-widget toggle with per-page exclusions.","4":"Knowledge sets \u2014 group pages, posts, products, events, or uploaded files into named collections that agents can search.","5":"Custom HTTP tools \u2014 drop in any third-party API (Mailchimp shown) from a template, then expose it as a tool the agent can call during a chat."}},"plugin_section":[],"plugin_tags":[2353,2364,1486,601,286],"plugin_category":[40,42,45],"plugin_contributors":[264773],"plugin_business_model":[],"class_list":["post-311099","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-chatbot","plugin_tags-events","plugin_tags-forms","plugin_tags-woocommerce","plugin_category-calendar-and-events","plugin_category-contact-forms","plugin_category-ecommerce","plugin_contributors-albertocandussi","plugin_committers-albertocandussi"],"banners":{"banner":"https:\/\/ps.w.org\/arguto\/assets\/banner-772x250.png?rev=3552068","banner_2x":"https:\/\/ps.w.org\/arguto\/assets\/banner-1544x500.png?rev=3552068","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/arguto\/assets\/icon.svg?rev=3552026","icon":"https:\/\/ps.w.org\/arguto\/assets\/icon.svg?rev=3552026","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/arguto\/assets\/screenshot-1.jpg?rev=3552026","caption":"The Arguto chat widget on a WooCommerce storefront \u2014 the agent lists upcoming events and downloads a calendar invite from inside the chat."},{"src":"https:\/\/ps.w.org\/arguto\/assets\/screenshot-2.jpg?rev=3552026","caption":"Edit an agent: pick from nine pre-built purposes (event concierge, shop assistant, product expert, support agent, and more) \u2014 each ships with a working system prompt and a sensible tool set."},{"src":"https:\/\/ps.w.org\/arguto\/assets\/screenshot-3.jpg?rev=3552026","caption":"Settings screen \u2014 license status with plan-token usage, knowledge auto-sync, and the sitewide-widget toggle with per-page exclusions."},{"src":"https:\/\/ps.w.org\/arguto\/assets\/screenshot-4.jpg?rev=3552026","caption":"Knowledge sets \u2014 group pages, posts, products, events, or uploaded files into named collections that agents can search."},{"src":"https:\/\/ps.w.org\/arguto\/assets\/screenshot-5.jpg?rev=3552026","caption":"Custom HTTP tools \u2014 drop in any third-party API (Mailchimp shown) from a template, then expose it as a tool the agent can call during a chat."}],"raw_content":"<!--section=description-->\n<p>Arguto is an AI chat widget that goes beyond answering questions. Built-in tools let the agent search your content, navigate visitors to the right page, search and add products to the cart, list and RSVP to events, submit contact forms, and more \u2014 all without leaving the chat.<\/p>\n\n<p>https:\/\/www.youtube.com\/watch?v=06wM1Y6pnjw<\/p>\n\n<p><strong>Key features<\/strong><\/p>\n\n<ul>\n<li>Pre-built agent purposes: site navigator, shop assistant, support agent, event concierge, brewing\/product expert, knowledge explorer, and a general sitewide helper.<\/li>\n<li>Purpose-based tool defaults \u2014 pick the agent's role and get a sensible starting tool set.<\/li>\n<li>Three ways to embed: sitewide auto-inject, Gutenberg block, or <code>[arguto]<\/code> shortcode.<\/li>\n<li>Knowledge sets that index pages, posts, products, events, or uploaded files (PDFs supported).<\/li>\n<li>Custom HTTP tools \u2014 expose any internal REST endpoint to the agent with a few clicks.<\/li>\n<li>Per-agent customisation: system prompt, welcome message, overlay style, enabled tools.<\/li>\n<\/ul>\n\n<p><strong>Optional integrations<\/strong><\/p>\n\n<p>Arguto works standalone, and lights up additional capabilities when these free plugins are active:<\/p>\n\n<ul>\n<li><strong>WooCommerce<\/strong> \u2014 product search, categories, featured \/ on-sale lists, coupons, stock availability, client-side add-to-cart.<\/li>\n<li><strong>The Events Calendar<\/strong> \u2014 upcoming events, search, detail fetch, one-click .ics download.<\/li>\n<li><strong>Contact Form 7<\/strong> \u2014 list, describe, and submit forms on the visitor's behalf.<\/li>\n<li><strong>WPForms Lite<\/strong> \u2014 same, with WPForms Lite as the form provider.<\/li>\n<li><strong>MailPoet<\/strong> \u2014 list newsletters and subscribe visitors directly from the chat (double opt-in).<\/li>\n<\/ul>\n\n<p>Arguto connects to a hosted LLM-orchestration service operated by Fluid Interactive. A valid Arguto account is required for the chat to function; the PHP plugin itself is a thin client under GPL v2.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin is a thin WordPress client for an AI-chat orchestration backend operated by Fluid Interactive. The plugin will not function without contacting that backend, and contacts no third party other than Fluid Interactive's own services described below \u2014 unless the site administrator explicitly enables a \"Custom HTTP Tool\" that targets some other API (see the final entry in this section).<\/p>\n\n<p>All Fluid Interactive HTTP traffic from this plugin goes to the single hardcoded host https:\/\/scripts3.fluidinteractive.com \u2014 either to a fixed endpoint on that host, or to a backend URL that scripts3 returns at runtime. There is no other hardcoded Fluid Interactive hostname in the plugin's source.<\/p>\n\n<p>Fluid Interactive \u2014 subscription\/license information lookup<\/p>\n\n<p>This plugin connects to https:\/\/scripts3.fluidinteractive.com\/subscription-order_info.php to read the administrator's Arguto subscription status and per-plan token-usage figures shown on the plugin's Settings page.<\/p>\n\n<p>It sends, when the Settings page loads and roughly every 5 minutes thereafter while the admin remains on the page: the administrator's Arguto account e-mail and password (over HTTPS), the licence ID, the plugin's product \/ version \/ build identifiers, an anonymous machine identifier issued to this install at registration time, the site locale (e.g. <code>en_US<\/code>), and a short context label such as \"settings_panel\" so Fluid Interactive can log why the request was made. The response is cached in a WordPress transient for 5 minutes.<\/p>\n\n<p>This service is provided by Fluid Interactive: terms of service ( https:\/\/www.fluidinteractive.com\/products\/wp-plugins\/arguto\/tos\/ ), privacy policy ( https:\/\/www.fluidinteractive.com\/privacy-policy\/ ).<\/p>\n\n<p>Fluid Interactive \u2014 FIServices backend (server-URL resolver and chat orchestration)<\/p>\n\n<p>This plugin connects to https:\/\/scripts3.fluidinteractive.com\/fi-services\/server_url.php to look up the current production URL of Fluid Interactive's \"FIServices\" backend \u2014 the service that registers each install for licensing and that runs the AI chat itself. This indirection lets Fluid Interactive move the FIServices backend without every WordPress install needing a new hardcoded URL.<\/p>\n\n<p>The first request to that resolver URL is a plain HTTPS GET with no query parameters and no body; the response body is the actual FIServices backend URL the plugin will use from then on (cached in a WordPress transient for 10 minutes). That backend URL \u2014 whichever host Fluid Interactive currently runs FIServices on \u2014 is then contacted at the following paths for the purposes described:<\/p>\n\n<ul>\n<li>POST <code>\/fi-services-register-install<\/code>, once on first activation, to register this WordPress install. Sends: the site home URL, a one-time registration nonce, the plugin product name, and the plugin product version. Returns an install token that the plugin stores locally and replays on chat requests.<\/li>\n<li>POST <code>\/fi-services-license-info<\/code>, on activation and roughly every 5 minutes thereafter, to refresh the install's subscription status. Sends the same data as the <code>subscription-order_info.php<\/code> call described above, with the same context-label parameter.<\/li>\n<li>GET <code>\/agent-config<\/code> and <code>\/agent-config\/hash<\/code>, fetched by the chat widget from the visitor's browser each time a page that contains the widget loads, to retrieve the agent configuration (system prompt, enabled tools, overlay style) for the rendered chat session. The widget caches the result in <code>sessionStorage<\/code>.<\/li>\n<li>POST <code>\/chat<\/code>, called by the chat widget from the visitor's browser every time a visitor sends a message; the response is streamed back as model tokens.<\/li>\n<\/ul>\n\n<p>Data sent to the FIServices backend at chat-session start (once per chat session, in the widget's first call): the administrator's Arguto account e-mail and password (over HTTPS), the licence ID, the plugin product \/ version \/ build identifiers, the anonymous machine identifier and the install token (signature + issued-at + install domain) issued at registration time, a per-visitor random client identifier, a per-conversation random thread identifier, and the site locale.<\/p>\n\n<p>Data sent to the FIServices backend per chat message: the visitor's message text. Conversation history within the current thread is tracked server-side by thread identifier; the plugin does not re-send prior messages with each new message.<\/p>\n\n<p>Data NOT sent: the visitor's IP address, name, e-mail address, or any other field the visitor has not typed into the chat themselves. The page URL the visitor is on is only sent if the configured agent decides to call the optional <code>get_current_url<\/code> browser tool during the conversation; it is never sent automatically.<\/p>\n\n<p>This service is provided by Fluid Interactive: terms of service ( https:\/\/www.fluidinteractive.com\/products\/wp-plugins\/arguto\/tos\/ ), privacy policy ( https:\/\/www.fluidinteractive.com\/privacy-policy\/ ).<\/p>\n\n<p>Optional, administrator-configured Custom HTTP Tools<\/p>\n\n<p>This plugin ships a small library of template entries under <strong>Arguto \u2192 Custom Tools<\/strong> so a site administrator can give the AI agent the ability to call a third-party HTTP API. The plugin only contacts a third-party host when the administrator explicitly creates a tool from one of these templates, supplies their own API key for that provider, and enables the tool for an agent. Out of the box, no Custom HTTP Tool is enabled and no request is made to any of these third-party hosts.<\/p>\n\n<p>The templates that ship with the plugin reference the following third-party hosts. The plugin's source code only contains these URLs as template defaults \u2014 the plugin itself does not POST to them unless the administrator activates the corresponding tool with valid credentials.<\/p>\n\n<ul>\n<li><p>Mailchimp (https:\/\/us1.api.mailchimp.com\/3.0\/...) \u2014 template for \"subscribe a visitor to a Mailchimp audience\". When enabled, the plugin POSTs the visitor's e-mail (and optionally first \/ last name) to Mailchimp using the administrator's Mailchimp API key. This is a Mailchimp service: terms of service ( https:\/\/mailchimp.com\/legal\/terms\/ ), privacy policy ( https:\/\/mailchimp.com\/legal\/privacy\/ ).<\/p><\/li>\n<li><p>Slack (https:\/\/hooks.slack.com\/services\/...) \u2014 template for \"post a message to a Slack channel via an incoming webhook\". When enabled, the plugin POSTs a short text message and an optional emoji prefix to the administrator's Slack webhook URL. This is a Slack service: terms of service ( https:\/\/slack.com\/terms-of-service ), privacy policy ( https:\/\/slack.com\/trust\/privacy\/privacy-policy ).<\/p><\/li>\n<li><p>HubSpot (https:\/\/api.hubapi.com\/crm\/v3\/objects\/contacts) \u2014 template for \"create a contact in HubSpot CRM\". When enabled, the plugin POSTs the visitor's contact details (e-mail, name, phone, company) to HubSpot using the administrator's HubSpot Private App token. This is a HubSpot service: terms of service ( https:\/\/legal.hubspot.com\/terms-of-service ), privacy policy ( https:\/\/legal.hubspot.com\/privacy-policy ).<\/p><\/li>\n<li><p>OpenWeather (https:\/\/api.openweathermap.org\/data\/2.5\/weather) \u2014 template for \"fetch the current weather for a city\". When enabled, the plugin GETs weather data for a city the visitor names, sending the administrator's OpenWeather API key in the query string. This is an OpenWeather service: terms of service ( https:\/\/openweathermap.org\/terms ), privacy policy ( https:\/\/openweathermap.org\/privacy-policy ).<\/p><\/li>\n<li><p>Zapier (https:\/\/hooks.zapier.com\/hooks\/catch\/...) \u2014 template for \"trigger a Zapier catch-hook with arbitrary JSON\". When enabled, the plugin POSTs a short event name and an arbitrary JSON payload to the administrator's Zapier webhook URL. This is a Zapier service: terms of service ( https:\/\/zapier.com\/legal ), privacy policy ( https:\/\/zapier.com\/privacy ).<\/p><\/li>\n<\/ul>\n\n<p>Because these services are chosen and credentialled by the site administrator, please refer to each provider's own terms and privacy policy before enabling a Custom HTTP Tool. The plugin authors do not control those services.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>arguto<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin through the Plugins screen in WordPress.<\/li>\n<li>Go to <strong>Arguto \u2192 Settings<\/strong> and enter your Arguto credentials.<\/li>\n<li>Create an agent under <strong>Arguto \u2192 Agents<\/strong>, pick a purpose, and save.<\/li>\n<li>Embed the widget: tick \"Show widget on every page\" under Settings, drop the Arguto Chat Widget block into a page, or paste <code>[arguto]<\/code> into any post.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20an%20arguto%20account%3F\"><h3>Do I need an Arguto account?<\/h3><\/dt>\n<dd><p>Yes. The plugin is a client; the LLM + orchestration runs on Arguto's hosted service. Sign up at https:\/\/www.fluidinteractive.com.<\/p><\/dd>\n<dt id=\"can%20i%20use%20it%20without%20woocommerce%20%2F%20events%20%2F%20forms%20plugins%3F\"><h3>Can I use it without WooCommerce \/ Events \/ Forms plugins?<\/h3><\/dt>\n<dd><p>Yes. Those integrations light up automatically if the plugin is active, and stay hidden otherwise. Core features (site search, knowledge, navigation) work on any WP site.<\/p><\/dd>\n<dt id=\"is%20my%20visitor%27s%20chat%20content%20sent%20to%20the%20arguto%20service%3F\"><h3>Is my visitor's chat content sent to the Arguto service?<\/h3><\/dt>\n<dd><p>Yes \u2014 that's where inference runs. The plugin does not log chat content locally by default. See Arguto's privacy policy for data handling.<\/p><\/dd>\n<dt id=\"can%20i%20self-host%3F\"><h3>Can I self-host?<\/h3><\/dt>\n<dd><p>The WordPress plugin is GPL v2 and fully open. The Arguto backend itself is a hosted service.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial public release.<\/li>\n<\/ul>","raw_excerpt":"The AI chat that actually does things on your WordPress site. Search, navigate, shop, and book, all from one widget.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/311099","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=311099"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/albertocandussi"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=311099"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=311099"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=311099"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=311099"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=311099"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=311099"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}