Introducing ShelfTalk
ShelfTalk is an open-source WooCommerce plugin built on Claude. It drafts product copy for you to approve, and it answers shoppers' questions from your own store pages, with sources. Version 0.1.0, our first development release, is on GitHub today.
Why we're building it
At SamiWeb we've shipped more than 50 projects for clients in the USA, Canada, Australia and Europe, and built six custom WooCommerce plugins. Two jobs keep eating store owners' time. Product pages stay thin, because good copy for every product takes hours. And the same questions about delivery, returns and product details arrive again and again. ShelfTalk takes the first draft of both jobs off the owner's plate, without taking away control.
What v0.1 does
- Product copy drafts. On the product edit screen, ShelfTalk drafts a description, short description, SEO title and meta description, plus a list of facts your product data doesn't include. It fills the Yoast SEO or Rank Math fields when either plugin is installed.
- Bulk drafts. Draft copy for many products at once. WP-Cron checks for finished results, and you still approve each draft.
- Shopper answers. Shoppers ask questions on product pages, and ShelfTalk answers from the policy pages you choose and the product's details. Each answer lists its sources.
- Human handoff. Questions your pages don't cover, order questions and complaints are emailed to your team instead of answered.
- Visibility. A private question log with outcomes and token usage, a usage panel and a connection test.
- Privacy. A personal-data exporter and eraser. IP addresses aren't stored; rate limiting uses a salted hash instead.
How it uses Claude
ShelfTalk is self-hosted. Each store uses its own Anthropic API key, and the plugin calls the Anthropic API directly from the store, so SamiWeb doesn't receive your store's data. Anthropic's API data-retention docs state that "retained data is never used for model training without your express permission".
- Strict tool use on the Messages API: Claude returns copy through a
save_product_copytool with a strict schema, so every draft arrives as structured fields. - Message Batches API for bulk drafts, at half the price of individual requests.
- Citations for shopper answers, so each answer lists the sources it used.
- Prompt caching for the store-wide policy context, which is the same for every question.
By default, Claude Sonnet 5.5 writes the copy and Claude Haiku 5.5 answers shoppers.
What "review-first" means
ShelfTalk drafts; you decide. Nothing is applied to a product until you click Approve, for a single product or a whole batch. Claude is told never to invent specs: when product data is missing, the draft lists the missing facts instead of guessing. Shopper answers stick to the pages you chose and show their sources, and anything else goes to a person.
Where it stands
Version 0.1.0 has 56 automated tests (474 assertions) and an end-to-end smoke test in WordPress and WooCommerce against a local mock of the Claude API. It has not yet been run against the live Claude API or on a production store. Until it has, please try it on a staging site, not your live shop.
What's next
Next up: a private beta with the first WooCommerce stores, first testing against the live Claude API, and screenshots and a release zip. After that, we plan reply drafts for customer and order emails, support for multilingual stores, and question insights that turn the question log into content gaps you can fill.
The plugin will stay free and open source under GPL-2.0-or-later. For stores that don't want to manage their own API key, we plan a hosted option with usage included and priority support. Meanwhile, SamiWeb offers paid setup and customisation. We're bootstrapped: client work at the studio pays for ShelfTalk's development.
Get early access
We're looking for the first stores for the private beta. Email sami@sami-web.com with the subject "ShelfTalk early access" and tell us a little about your store.