Demo
Two site plugins, on invented data
An analytics plugin that finds a bad day in a blog’s month and explains it in plain words while keeping to a monthly AI budget, and a bulk price editor for a shop that previews every change, warns before a mistake, checks each request again on the server and can undo a whole batch.
This is a simulation. No AI model runs on this page: both providers and their answers are scripted, and their prices are pretend. The blog, its month of figures, the shop, its products and every price are invented, and one bad day is planted on purpose. Nothing is sent, emailed or saved, nothing you do leaves your browser or is kept, and reloading the page starts again.
Part 1 Analytics insights for an invented birdwatching blog
A generated month of traffic and behaviour figures, days 1 to 28. Run the detector to find what is unusual, then ask for an explanation, compare the two providers and ask a follow-up question while the budget meter keeps count.
Visits, days 1 to 28
Each day is compared with the 14 days before it, so days 15 to 28 are checked. A finding is low from a z-score of 2.5, medium from 3.5 and high from 5; for counts the spread is never taken as less than the square root of the usual level, so a few extra clicks on a quiet metric raise no alarm.
The detector has not run yet.
The month as a table
| Day | Visits | Rage clicks | Dead clicks | Error clicks | Scroll depth |
|---|---|---|---|---|---|
| 1 | 951 | 7 | 25 | 6 | 63% |
| 2 | 991 | 9 | 20 | 5 | 64% |
| 3 | 976 | 8 | 24 | 5 | 62% |
| 4 | 987 | 8 | 22 | 4 | 65% |
| 5 | 975 | 11 | 20 | 4 | 62% |
| 6 | 803 | 9 | 24 | 4 | 65% |
| 7 | 824 | 9 | 23 | 6 | 63% |
| 8 | 1,042 | 10 | 19 | 4 | 62% |
| 9 | 993 | 7 | 20 | 6 | 62% |
| 10 | 993 | 9 | 25 | 6 | 64% |
| 11 | 983 | 8 | 20 | 4 | 65% |
| 12 | 982 | 8 | 23 | 5 | 61% |
| 13 | 835 | 11 | 22 | 6 | 64% |
| 14 | 854 | 7 | 22 | 5 | 65% |
| 15 | 1,046 | 10 | 23 | 6 | 65% |
| 16 | 1,005 | 10 | 19 | 5 | 62% |
| 17 | 1,022 | 9 | 24 | 6 | 63% |
| 18 | 1,032 | 9 | 23 | 6 | 63% |
| 19 | 981 | 8 | 19 | 4 | 65% |
| 20 | 847 | 10 | 19 | 5 | 63% |
| 21 | 838 | 11 | 21 | 6 | 64% |
| 22 | 1,030 | 9 | 24 | 4 | 65% |
| 23 | 641 | 14 | 44 | 30 | 62% |
| 24 | 1,031 | 10 | 23 | 5 | 65% |
| 25 | 1,011 | 10 | 25 | 5 | 62% |
| 26 | 1,008 | 10 | 24 | 4 | 63% |
| 27 | 818 | 9 | 20 | 4 | 63% |
| 28 | 818 | 8 | 19 | 4 | 61% |
AI insight
Scripted
AI budget this month
$0.40 of $2.00 spent this month, $1.60 left.
Run the detector first: there is nothing to explain yet.
Explanations and answers appear here, with what each call cost.
Nothing has been asked yet.
What is sent with each question
The figures of the flagged day and the page table, as plain lines, after fixed instructions that are not shown. The price of a call is worked out from its size before it is sent.
Run the detector first. The lines are built from what it finds.
Part 2 Bulk price edits for an invented knitwear shop
Choose products and filter their variations, preview a change, apply it as one logged batch, then undo it. The form starts on a 10% rise in sale prices, which trips a warning on three variations.
Step 1: choose variations
15 variations shown, all 15 ticked.
| Variation | Regular | Sale |
|---|---|---|
| $64.00 | $58.00 | |
| $64.00 | $58.00 | |
| $68.00 | $58.00 | |
| $64.00 | No sale | |
| $64.00 | No sale | |
| $68.00 | No sale | |
| $64.00 | $62.00 | |
| $64.00 | $62.00 | |
| $68.00 | $66.00 | |
| $72.00 | No sale | |
| $72.00 | No sale | |
| $72.00 | No sale | |
| $72.00 | $65.00 | |
| $72.00 | $65.00 | |
| $72.00 | $65.00 | |
| $24.00 | No sale | |
| $24.00 | No sale | |
| $24.00 | No sale | |
| $24.00 | No sale | |
| $24.00 | $18.00 | |
| $24.00 | $18.00 | |
| $19.00 | No sale | |
| $19.00 | $18.50 | |
| $19.00 | No sale | |
| $19.00 | No sale |
Step 2: preview a change
A price, an amount such as -2.50, or a percentage such as 10.
No preview yet. Nothing changes until you apply.
| Variation | Regular | Sale |
|---|---|---|
| Cable jumper, oat, S | ||
| Cable jumper, oat, M | ||
| Cable jumper, oat, L | ||
| Cable jumper, navy, S | ||
| Cable jumper, navy, M | ||
| Cable jumper, navy, L | ||
| Cable jumper, moss, S | ||
| Cable jumper, moss, M | ||
| Cable jumper, moss, L | ||
| Button cardigan, oat, S | ||
| Button cardigan, oat, M | ||
| Button cardigan, oat, L | ||
| Button cardigan, charcoal, S | ||
| Button cardigan, charcoal, M | ||
| Button cardigan, charcoal, L | ||
| Ribbed beanie, oat, S | ||
| Ribbed beanie, oat, L | ||
| Ribbed beanie, navy, S | ||
| Ribbed beanie, navy, L | ||
| Ribbed beanie, rust, S | ||
| Ribbed beanie, rust, L | ||
| Fingerless mittens, moss, S | ||
| Fingerless mittens, moss, L | ||
| Fingerless mittens, rust, S | ||
| Fingerless mittens, rust, L |
Step 3: apply and undo
The tampered request is the same apply with one variation slipped in from a product you did not choose, as a changed request would carry. The server checks every variation and works each price out again from the shop’s own figures.
Nothing applied yet.
Change log
Each applied batch is logged here with every price before and after, so it can be undone. The log keeps the last five.
What the demo shows
- A detector with a stated rule. Each day is compared with the 14 days before it as a z-score, with a floor on the spread of small counts, and every finding gets a severity. It flags the planted day and nothing else in the month, and it lets a small rise in rage clicks pass.
- Explanations built from the figures. The explanation and the answers are filled in from figures worked out in the page, so they always match the chart and the table. In a real plugin a language model would write them from the same context.
- Two providers, side by side. The same question to both, with the price of each, so their answers and costs can be compared.
- AI spend with a hard cap. Every call is priced from its size before it is sent, logged with its cost, and refused when it would take the month over the cap.
- Bulk edits that preview first. Exact, amount and percentage changes to regular prices, sale prices or both, rounded to the cent, with a warning wherever a sale price would end up above the regular price.
- A server that trusts nothing it is sent. Apply reads the change again, refuses a request naming a variation outside the chosen products, works every price out again, and refreshes each product once.
- Undo from a change log. Each batch keeps every price before and after. Undo restores them, but leaves alone any price changed since by a later batch and says which; once that batch is undone, the rest can be undone too, so batches can be undone in any order.