<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>MovinSupport Journal</title>
<link>https://movinsupport.movinware.com/blog</link>
<description>Field notes on AI support: announcements, guides, and engineering from the MovinSupport team.</description>
<language>en-us</language>
<lastBuildDate>Wed, 19 Aug 2026 00:00:00 GMT</lastBuildDate>
<atom:link href="https://movinsupport.movinware.com/feed.xml" rel="self" type="application/rss+xml"/>
<item>
<title>Why nobody clicks your chat widget</title>
<link>https://movinsupport.movinware.com/blog/why-nobody-clicks-your-chat-widget</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/why-nobody-clicks-your-chat-widget</guid>
<pubDate>Wed, 19 Aug 2026 00:00:00 GMT</pubDate>
<category>Guides</category>
<description>You installed the widget, checked the dashboard a week later, and found three conversations. Two were you. Here are five small changes that turn a decorative bubble into actual conversations.</description>
</item>
<item>
<title>Your customers write in 12 languages. Your support agent answers in all of them.</title>
<link>https://movinsupport.movinware.com/blog/multilingual-ai-support-agent</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/multilingual-ai-support-agent</guid>
<pubDate>Tue, 11 Aug 2026 00:00:00 GMT</pubDate>
<category>Announcements</category>
<description>I spent an hour throwing 12 languages at our support agent — Spanish, Japanese, Arabic, even Moroccan Darija in Arabizi. It answered every one in the customer's language. There's no language setting. And now it does it out loud.</description>
</item>
<item>
<title>We diffed our marketing site against our codebase. Six claims didn't survive</title>
<link>https://movinsupport.movinware.com/blog/marketing-site-codebase-audit</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/marketing-site-codebase-audit</guid>
<pubDate>Sun, 26 Jul 2026 00:00:00 GMT</pubDate>
<category>Engineering</category>
<description>We put the homepage in one tab and the repo in the other and checked every falsifiable sentence against the code that would have to make it true. Six claims failed, one page undersold us, and an adversarial re-pass caught overclaims we wrote during the honesty pass itself. Every fix shipped in one public pull request.</description>
</item>
<item>
<title>Two messages, one sequence number: the concurrency bug that never threw</title>
<link>https://movinsupport.movinware.com/blog/two-messages-same-sequence-number</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/two-messages-same-sequence-number</guid>
<pubDate>Sun, 26 Jul 2026 00:00:00 GMT</pubDate>
<category>Engineering</category>
<description>An escalation marker and the AI reply it interrupted landed in the same conversation with the same sequence number. No exception, no log line, both inserts succeeded, and the thread quietly rendered out of order. This is the read-then-write bug that passes every test, the three-part fix whose deploy order is the point, and the five-second code search that tells you whether your codebase has it too.</description>
</item>
<item>
<title>MovinSupport is now self-hosted under a renewable license</title>
<link>https://movinsupport.movinware.com/blog/7-day-free-trial</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/7-day-free-trial</guid>
<pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate>
<category>Announcements</category>
<description>MovinSupport now runs fully self-hosted under a renewable license — every feature included, nothing metered, no hosted plans. See it working first: the live demo is the real widget, no signup and no card.</description>
</item>
<item>
<title>'Additive columns are always safe' is wrong on Drizzle, Prisma, and preview deploys</title>
<link>https://movinsupport.movinware.com/blog/additive-migration-almost-broke-every-login</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/additive-migration-almost-broke-every-login</guid>
<pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate>
<category>Engineering</category>
<description>Everyone agrees an additive column is the one schema change that can't hurt you. Then a one-line ALTER TABLE on our user table turned out to be capable of 500ing every authenticated request — because Drizzle projects every mapped column, Better Auth reads the user table on every session check, and preview deploys skip migrations. Here is the two-PR discipline we ship our riskiest schema changes with, and the one column we keep out of the ORM entirely.</description>
</item>
<item>
<title>A 9-point AI SEO audit checklist, run on our own site first</title>
<link>https://movinsupport.movinware.com/blog/ai-seo-audit-checklist</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/ai-seo-audit-checklist</guid>
<pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate>
<category>Guides</category>
<description>Next.js merges route metadata shallowly, so every page built with our metadata helper — unless it passed a cover image of its own — shipped a Twitter card with no image for about a month. That was finding one of the SEO and AI-SEO audit we ran across our five domains this month, in two passes. Here is the whole audit as a checklist you can run on your own site, including the four findings that surprised us.</description>
</item>
<item>
<title>We set a cache trap for our own support agent — in our own llms.txt headers</title>
<link>https://movinsupport.movinware.com/blog/knowledge-base-recrawl-cdn-cache</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/knowledge-base-recrawl-cdn-cache</guid>
<pubDate>Mon, 20 Jul 2026 00:00:00 GMT</pubDate>
<category>Engineering</category>
<description>URL knowledge sources are snapshots, and everyone knows snapshots go stale. What we missed is that the refresh itself can be served by any CDN cache between the crawler and the origin — so "Recrawl → success" can silently re-store the pre-deploy content. The trap on our own site was set by our own cache headers.</description>
</item>
<item>
<title>Changelog: July 2026, so far — the platform month</title>
<link>https://movinsupport.movinware.com/blog/llmchat-changelog-july-2026</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/llmchat-changelog-july-2026</guid>
<pubDate>Tue, 14 Jul 2026 00:00:00 GMT</pubDate>
<category>Changelog</category>
<description>Two weeks in and July is already our densest month: an approved WordPress plugin, a Shopify app, agents that take actions, dark mode everywhere, and a smarter, chattier widget.</description>
</item>
<item>
<title>Add an AI support agent to Next.js, WordPress, Shopify, or any site</title>
<link>https://movinsupport.movinware.com/blog/add-ai-support-agent-any-stack</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/add-ai-support-agent-any-stack</guid>
<pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate>
<category>Guides</category>
<description>One hub for every install path we ship: the universal script tag, the WordPress plugin, the Shopify app embed, and the iframe. Working snippets for each, plus a candid guide to picking one.</description>
</item>
<item>
<title>Our AI support agent doesn't use RAG — here's the math</title>
<link>https://movinsupport.movinware.com/blog/ai-support-agent-without-rag</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/ai-support-agent-without-rag</guid>
<pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate>
<category>Engineering</category>
<description>MovinSupport has no vector database. We put the entire knowledge base into the system prompt on every request, and for KBs measured in kilobytes, the math says that's the right call.</description>
</item>
<item>
<title>We moved our SaaS backend to workerd and every Node SDK broke</title>
<link>https://movinsupport.movinware.com/blog/cloudflare-workers-every-node-sdk-broke</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/cloudflare-workers-every-node-sdk-broke</guid>
<pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate>
<category>Engineering</category>
<description>The Resend SDK, the Stripe Node SDK, and Better Auth's passkey plugin all got cut from our workerd build — each over something the package dragged in, not code we call. Here is each casualty, the fetch-and-crypto.subtle code that replaced it, and an honest accounting of whether it was worth it.</description>
</item>
<item>
<title>Salesforce buying Fin (Intercom): what it means for your support bill</title>
<link>https://movinsupport.movinware.com/blog/salesforce-fin-intercom-acquisition-support-bill</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/salesforce-fin-intercom-acquisition-support-bill</guid>
<pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate>
<category>Guides</category>
<description>The deal is signed, not closed, and Fin's pricing hasn't moved. Here's Salesforce's dated post-acquisition track record — and what to check in your contract before renewal.</description>
</item>
<item>
<title>Everything that broke while shipping an embeddable AI widget</title>
<link>https://movinsupport.movinware.com/blog/shipping-an-embeddable-widget</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/shipping-an-embeddable-widget</guid>
<pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate>
<category>Engineering</category>
<description>A support widget runs inside a DOM you don't control. Here's every way host pages broke ours — :empty selectors, 62.5% root font-sizes, null currentScript — and the rule we extracted from each fix.</description>
</item>
<item>
<title>The best AI support agents in 2026 (real pricing compared)</title>
<link>https://movinsupport.movinware.com/blog/best-ai-support-agents</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/best-ai-support-agents</guid>
<pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate>
<category>Guides</category>
<description>The best AI support agents in 2026, compared on real pricing — per-resolution vs per-seat vs flat, which LLM each tool runs on, and open-source options.</description>
</item>
<item>
<title>The best Intercom alternatives in 2026 (an honest comparison)</title>
<link>https://movinsupport.movinware.com/blog/intercom-alternatives</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/intercom-alternatives</guid>
<pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate>
<category>Guides</category>
<description>Ten Intercom alternatives compared by pricing model — per-seat, per-resolution, flat monthly, and self-hosted — with honest cons and when to stay put.</description>
</item>
<item>
<title>Intercom Fin pricing in 2026: the real math behind $0.99</title>
<link>https://movinsupport.movinware.com/blog/intercom-fin-pricing</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/intercom-fin-pricing</guid>
<pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate>
<category>Guides</category>
<description>A primary-source teardown of Intercom Fin's $0.99-per-resolution pricing: billable outcomes, assumed resolutions, seat costs, and the real monthly math.</description>
</item>
<item>
<title>6 open-source Intercom alternatives you can self-host in 2026</title>
<link>https://movinsupport.movinware.com/blog/open-source-intercom-alternatives</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/open-source-intercom-alternatives</guid>
<pubDate>Tue, 07 Jul 2026 00:00:00 GMT</pubDate>
<category>Guides</category>
<description>Six open-source Intercom alternatives you can self-host, compared on license, stack weight, built-in AI, and model choice — checked July 2026.</description>
</item>
<item>
<title>The MovinSupport WordPress plugin is approved — here's how it was built</title>
<link>https://movinsupport.movinware.com/blog/wordpress-ai-support-plugin</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/wordpress-ai-support-plugin</guid>
<pubDate>Mon, 06 Jul 2026 00:00:00 GMT</pubDate>
<category>Announcements</category>
<description>MovinSupport is now an approved WordPress.org plugin. The story of building it, getting through the plugin review (including the zip that was secretly a tar), and how to put an AI support agent on your WordPress site in under a minute.</description>
</item>
<item>
<title>Changelog: June 2026 — launch month</title>
<link>https://movinsupport.movinware.com/blog/llmchat-changelog-june-2026</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/llmchat-changelog-june-2026</guid>
<pubDate>Wed, 01 Jul 2026 00:00:00 GMT</pubDate>
<category>Changelog</category>
<description>We launched on Product Hunt. Also: smarter escalation, a full dashboard restyle, workspace-wide search, annual plans, and a security hardening pass.</description>
</item>
<item>
<title>MovinSupport is live — and we're on Product Hunt today</title>
<link>https://movinsupport.movinware.com/blog/movinsupport-is-live-on-product-hunt</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/movinsupport-is-live-on-product-hunt</guid>
<pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate>
<category>Announcements</category>
<description>MovinSupport is officially live and featured on Product Hunt. Here's what we built: an AI support agent that answers from your docs and hands off to a human the moment it can't.</description>
</item>
<item>
<title>Introducing MovinSupport: AI support that actually escalates</title>
<link>https://movinsupport.movinware.com/blog/introducing-llmchat</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/introducing-llmchat</guid>
<pubDate>Wed, 20 May 2026 00:00:00 GMT</pubDate>
<category>Announcements</category>
<description>Today we're launching MovinSupport — a drop-in widget that answers from your docs and hands off to your team when the bot can't help.</description>
</item>
<item>
<title>How to reduce support tickets by 60% with an AI first-response layer</title>
<link>https://movinsupport.movinware.com/blog/reducing-support-tickets-with-ai-first-response</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/reducing-support-tickets-with-ai-first-response</guid>
<pubDate>Fri, 15 May 2026 00:00:00 GMT</pubDate>
<category>Guides</category>
<description>A practical guide to deploying an AI first-responder that handles the repetitive stuff so your team can focus on the conversations that matter.</description>
</item>
<item>
<title>Why we built on LLM Gateway instead of calling OpenAI directly</title>
<link>https://movinsupport.movinware.com/blog/why-we-built-on-llm-gateway</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/why-we-built-on-llm-gateway</guid>
<pubDate>Sun, 10 May 2026 00:00:00 GMT</pubDate>
<category>Engineering</category>
<description>Our reasoning for using a model abstraction layer from day one — and why it's already paid off twice.</description>
</item>
<item>
<title>Setting up email threading for your support widget</title>
<link>https://movinsupport.movinware.com/blog/setting-up-email-threading</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/setting-up-email-threading</guid>
<pubDate>Tue, 05 May 2026 00:00:00 GMT</pubDate>
<category>Guides</category>
<description>A step-by-step guide to configuring inbound email so customer replies thread back into the same conversation.</description>
</item>
<item>
<title>Changelog: May 2026 — knowledge base improvements and new model options</title>
<link>https://movinsupport.movinware.com/blog/llmchat-changelog-may-2026</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/llmchat-changelog-may-2026</guid>
<pubDate>Fri, 01 May 2026 00:00:00 GMT</pubDate>
<category>Changelog</category>
<description>Longer knowledge base support, model selection per project, and a handful of inbox quality-of-life improvements.</description>
</item>
<item>
<title>The case for self-hostable AI support</title>
<link>https://movinsupport.movinware.com/blog/the-case-for-self-hostable-ai-support</link>
<guid isPermaLink="true">https://movinsupport.movinware.com/blog/the-case-for-self-hostable-ai-support</guid>
<pubDate>Tue, 28 Apr 2026 00:00:00 GMT</pubDate>
<category>Engineering</category>
<description>Why open architecture matters for tools that sit between you and your customers.</description>
</item>
</channel>
</rss>
