Skip to content
GDPR compliant. Hosted in DE.
14-day free trial →

AI assistant — advice + app control in a single chat

The built-in assistant answers questions about plans, features and your live data — and can configure things directly for you: add websites, create heartbeats, set up escalation workflows, start plan upgrades. Every action that changes something in your account requires your confirmation. Available in the marketing frontend (without signing in) and in the app dashboard (with your real data).

# At a glance

Read live data

Accesses all your data with your login: status, alerts, changelog, analytics, forms, media, heatmaps, recordings, A/B tests, insights, heartbeats, API endpoints, reports, competitors — exactly what the app itself sees.

Operate the app — with confirmation

Describe setups in plain language — e.g. 'Create 3 heartbeats for my backups, every 24h'. The assistant shows a confirmation card with all values + diff. Only your click executes.

Stripe checkout directly in chat

If a feature exceeds your current plan, the assistant suggests the right upgrade and creates a Stripe checkout button — one click, new tab, done.

Memory across conversations

What you contribute that is not in the data — notes, decisions, background, preferences, plans — the assistant stores and brings into the next conversation. You see every entry under Settings → AI memory and edit or delete it there.

Up to 5 parallel conversations

Multi-tab in app mode — keep setup questions, reports, plan advice separate. Each tab has its own history, auto-title from first question.

# Where do I find the assistant?

Floating bubble bottom left

On every page — both marketing site and logged-in dashboard — a chat icon appears bottom left with a rotating color ring and a small `KI` pill as visual cue that it's not human support.

Bottom sheet on mobile

Below 768 px the widget auto-switches to a full-width bottom sheet (lower half of the screen, 50 % height) — no drag/resize but undistracted read/write area.

Freely placeable on desktop

Above 768 px you can drag the widget by its header and resize at the bottom-right corner. Position + size are saved in your browser. The Reset button in header restores defaults.

# Skills: read data

These tools run without your confirmation — they change no data
Read tools are pure queries. They run automatically when the assistant needs them for your question; the result appears as a tool step in the chat stream (Analytics loaded ✓ 45 PV / 5 visitors).

Account overview in one tool call

`get_account_overview` aggregates: plan + limits utilization, all websites with status, all open alerts (cross-site), last 10 global changelog entries, active heartbeats, SSL expiries < 30 days. Auto-called when you ask how things are going on the dashboard.

Per website: details, alerts, changelog, analytics, security

`get_website_details` (score, uptime, SSL, Lighthouse, hosting, DNS), `get_website_alerts` (open incidents), `get_website_changelog` (visual diffs, DNS changes, security drops), `get_website_analytics_summary` (PV/sessions/visitors/top pages/channels/geo), `get_website_security_findings` (headers, privacy trackers, mixed content).

Analytics modules: forms, media, heatmaps, recordings, A/B (Business+), insights & weekly summary (Starter+)

`get_website_module_data(module=...)` with module=forms/media/heatmaps/recordings/experiments/insights/weekly_summary. Returns funnels with drop fields (forms), engagement rates (media), top click targets + rage/dead clicks (heatmaps), tagged sessions (recordings), variant stats for A/B winner, auto-detected anomalies (insights) and the latest weekly plain-text summary (weekly_summary). The first five modules require Business; insights and weekly summary run on the same gate as base analytics and are available from Starter.

E-commerce and shop data (Business+)

`get_website_ecommerce(report=...)` reads the e-commerce reports of one website or all websites (up to twelve per call, result per website): overview (revenue, average order value, funnel, top products), order_log (order history), finance (gross to refund), abandoned (abandonment), recovery (identified customers with an open cart), refunds, carts, customers (the 25 customers with the highest revenue), products (product list with categories and bestsellers), payment_shipping (payment and shipping methods), shop_summary (figures of the Shopware order import: origin, states, cancellations, refunds, open payments and deliveries, sales channels, tracker capture rate, repeat buyers) and shop_status (status of the shop connection and the order import, without Access Key ID and API address). Period today, yesterday, 7d, 30d, 90d or 365d, for shop_summary also all; amounts in cents. `get_account_overview` additionally lists shop connections with errors.

Plan advice + pricing

`list_plan_limits` (Free/Starter/Business/Agency limits), `get_pricing` (prices + add-ons + trial info), `get_user_context` (which plan is active, how many sites verified, open alerts).

Generic API read bridge

`app_api_read(path)` with a whitelist of 50 GET path patterns — if no specialized tool fits. GET only (mutations run through the confirm tools), paths gated against user scope. Calls the real backend API with your login scope, same data as the app UI. On an invalid path the model receives a silent self-correction with the valid paths — no red error in chat.

Docs and handbook search

`search_docs(query)` searches docs, handbook and blog articles via MariaDB full-text (relevance ranking, DE+EN, internal chunks stay hidden from customers) and returns the best excerpts with source links. `find_feature_in_app(feature)` shows where a feature lives in the app (route + breadcrumb + plan requirement).

# Example: status overview

Live preview in chat
View in demo account →

XICTRAQ Assistant

AI replies instantly

How are my sites doing?

Research

Account overview loaded· 3 sites · 2 alerts · 1× SSL expiring soon
Quick status: 3 websites online, 2 open alerts (1× critical — shop.invalid has had 502 for 12 min, 1× SSL expires in 9 days on xictraq.com). Heartbeats running. Web Vitals are green.
Which alert is most critical?Analyze SSL issuesHow do I enable escalation?

# Example: performance question with live data

Query performance
View in demo account →

XICTRAQ Assistant

AI replies instantly

What is my LCP on the homepage?

Research

Website details loaded· online · Score 100 · Uptime 100%
Analytics loaded· 1.842 PV · 624 Visitors
On xictraq.com/en today: LCP 232 ms (very good, threshold <2.5s), CLS 0.00 (perfect), INP 12 ms. Lighthouse performance score: 100/100. Web Vitals are green across all devices.
What was the LCP last week?Break down performance by countryTrend chart for 30 days

# Example: form analytics — where do users drop off?

Analyze form funnel
View in demo account →

XICTRAQ Assistant

AI replies instantly

Where do users drop off my contact form?

Research

Form analytics loaded· Funnel: 412 Views · 287 Focus · 49 Submit
In the funnel: 412 views → 287 focus the form → 49 submit (conversion 11.9 %). Top drop-off fields: phone (132×), street (87×), company_size (61×). Recommendation: make phone optional, move address to a post-submit confirmation page.
What test data can I use to verify?Set up A/B test with shorter formShow mobile funnel only

# Skills: operate the app with confirm card

Every write action requires your click
The assistant never creates an unwanted mutation. For every write tool, a confirmation card appears first with title, diff (old → new), plan limit check and a 5-min expiry. Only your click on the Confirm button starts the action. The single exception are memory notes: they change nothing about your account, websites or billing and can be corrected any time under Settings → AI memory.

Websites & verification

`add_website` (URL + name + check interval, generates verification token), `update_website_settings` (rename/change interval), `delete_website` (red card, irreversible with consequence description).

Heartbeats for cron jobs

`add_heartbeat` with name + `expected_minutes` (expected interval) + `grace_minutes` (tolerance, default 5). After confirmation the tool returns a unique ping URL — add it at the end of your script/cron job. If the ping is missing for longer than interval + tolerance, an alert fires.

# Cron — ping after a successful backup (exit code 0)
0 3 * * * /usr/local/bin/backup.sh && curl -fsS \
  https://api.xictraq.com/api/heartbeat/<slug>/ping > /dev/null

API endpoint monitoring

`add_api_endpoint` with method + URL + expected status + interval. Plan-gated (not available on Free).

Competitors + SEO keywords

`add_competitor` (attach competitor under your own website — Business+), `add_keyword` (store search term + country — Business+, position measurement not yet enabled).

Escalation workflows

`add_escalation_policy(name, steps[])` with multiple steps — per step delay_minutes (from alert start), channels (email/slack/discord/telegram/teams/webhook) and optional contact. Example: 'first mail, slack after 15 min, telegram after 30 min.

Alert channels & thresholds

`update_alert_config` sets global channels (Slack webhook, Discord webhook, Telegram bot+chat ID), email address, SSL warning days, security score threshold. Security webhooks are shown in the diff as '(set anew) — never the real value for audit logs.

Resolve alert

`mark_alert_resolved` closes an open alert (severity + type shown in diff). Use after fixing — status flips to 'resolved instantly + shows in audit log that the assistant did it.

Team & status pages

`invite_team_member` (email + role, plan limit check, invitation mail with magic link), `add_status_page` (slug + title, generates public token + URL).

Trigger reports manually

`request_report_now` for weekly or monthly report of a website (Business+ — auto reports included in plan, manual trigger anytime).

# Example: setup by voice/text

Create heartbeat
View in demo account →

XICTRAQ Assistant

AI replies instantly

Create a heartbeat for my daily backup, every 24h, 30 min grace period.
Please confirm below, then I will execute it.

Create heartbeat: Daily Backup

Expected interval
1440 min
Grace period
30 min
Executed
Go to heartbeats
— ✓ Heartbeat created — ping URL is ready. —
Done. Your ping URL: https://api.xictraq.com/api/heartbeat/d9f...e7c/ping — append curl -fs <URL> > /dev/null to the end of your backup script. If the ping is missing for more than 24h + 30 min, an alert fires.
How do I view heartbeats?Set up Slack webhook for alertsCreate escalation levels

# Example: destructive action with explicit confirm

Red card for irreversible actions
For `delete_website` and similar destructive steps the card appears in red with a clear consequence description — button is 'Permanently delete' instead of 'Confirm'.
Destructive action
View in demo account →

XICTRAQ Assistant

AI replies instantly

Delete my test website example-staging.invalid.

Research

Websites loaded· 3 own
Please confirm below — this action is permanent.

DELETE website: example-staging.invalid

This action is permanent — all analytics data, changelogs, heatmaps and recordings for this website will be deleted and cannot be restored.

URL
https://example-staging.invalid

# Plan upgrade & add-ons directly in chat

`start_plan_upgrade(plan, interval)`

Creates a Stripe checkout session and delivers a large CTA button in chat. With an active subscription it upgrades in-place with prorated billing — no checkout needed, plan switches instantly.

`start_addon_checkout(addon_key, qty)`

7 add-ons, all bookable: Extra Website (€3/M, qty 1–100), Extra Team Member (€3/M, qty 1–50), Responsive-Preview Pack (€7/M), Extended Retention (€9/M), AI Booster (€12/pack/M, qty 1–3: +200 chat msgs/day and +500/month per pack), Priority Support (€15/M), Custom-Domain Status Page (€5/M per domain, qty 1–25). All add-ons can be cancelled monthly. Each booking runs as its own Stripe checkout in new tab.

# Example: plan advice + Stripe checkout

Recommend plan
View in demo account →

XICTRAQ Assistant

AI replies instantly

I need heatmaps and session recording. Which plan fits?

Research

Plan limits loaded· 4 Plans
Pricing loaded· 4 plans · 6 add-ons
You need the Business plan (EUR 29/month, cancel monthly, or EUR 24/month billed annually, minimum term 12 months). It unlocks heatmaps + session recording + A/B testing + form/media analytics. You are currently on Starter — I can redirect you to checkout:
What is the difference between heatmaps and session recording?Which modules are gated?
Checkout: Business monthly

# Context awareness — the assistant knows where you are

Current page + tab + range

Per question the frontend transmits the page context (area, current website ID if on a detail page, tab, time range). When you ask 'How many visitors? on the analytics page, the assistant immediately knows for which site and range — no follow-up.

Inventory pre-knowledge

On first API call the list of your websites (name, URL, status, verification status, ID) is loaded into the page context. The assistant knows without a tool call whether you have 0/1/N sites — for 0 it offers `add_website`, for 1 it uses the ID automatically without asking.

Quick actions depending on page

When opening the chat, 3-4 suggested questions are shown — depending on the current area. On /preise: 'Which plan fits 5 sites?. On /app/analytics: What are my top sources?. On /app/settings/billing: Upgrade to Business. 18+ context sets, each conversion-optimized.

Follow-up suggestions after each answer

After each bot answer, 2-3 logical follow-up questions appear as clickable pills — e.g. after status overview: 'Which alert is most critical?, Analyze SSL problems, How do I enable escalation?. One click = next question.

# Memory — what you say still counts tomorrow

The entries are yours and fully visible
Every note lives under Settings → AI memory (`/app/settings/memory`). There you create entries yourself, correct them, pin what matters, delete single entries or the whole set. Each entry shows whether the assistant or you created it.

What the assistant remembers

Everything you say about your situation that is not in the measured data: notes, decisions you made, background on a campaign or relaunch, preferences for how we work together, plans with a date. Five kinds — note, decision, background, preference, plan. Not stored: numbers it can fetch anytime, throwaway detail from the running conversation, and credentials.

How it works in the next conversation

The set travels along as context with every question — up to 40 entries or 6,000 characters, pinned first, then the most recently changed. The assistant treats your statements as given; if measured data contradicts them, it says so instead of glossing over it.

The title is the key

The same title overwrites the existing entry instead of creating a second one — 'technical support' never becomes a pile of contradictory versions. When things change, just say so in chat: the assistant updates that same entry.

Limits and scope

300 entries per login, titles up to 160 and content up to 2,000 characters. At the cap the assistant rejects new titles instead of silently dropping older ones — existing entries stay editable regardless. The set belongs to your login, not the account: a team member has their own memory. If a statement concerns exactly one website, it is tied to it and only shows up there.

Storing runs without a confirm card — in exchange, review is complete
A confirmation dialog per note would break up every conversation, so the assistant creates the entry directly and tells you in its answer what it stored. A note changes nothing about your account, your websites or your billing — and you can edit or delete it on the settings page at any time.

# Example: have something remembered

Store a statement
View in demo account →

XICTRAQ Assistant

AI replies instantly

Our tech is handled by the Nordlicht agency — no need to ask me every time.

Research

Stored in memory· Background · Technical support
Noted: technical support is handled by the Nordlicht agency. I will route technical questions there from now on. You can view and edit the entry under Settings → AI memory.
What else have you stored?Delete this entry againRemember: relaunch in November

# Multi-tab — clean separation of parallel topics

5 parallel conversations

In app mode the widget shows a tab strip on top. + button starts a new conversation. Oldest auto-archived when limit reached. Each tab has its own history, the bot can work on 5 topics in parallel.

Auto-title + per-tab close

Tab title = first 60 characters of the first user message. Close per tab via X — others stay open. The oldest conversation is auto-archived once the limit is reached.

Clear history closes only the active tab

Trash icon in header closes ONLY the current tab — others stay active with full history. So you can delete a completed consultation without losing your setup help.

# Security & limits

What the bot CANNOT do

Change password, reset 2FA, change email address, delete account, configure lifetime license, cancel Stripe subscription — these actions require re-auth in the UI and are intentionally excluded from the tool set.

Strict user-scope isolation

Every mutation and every read tool is gated against `user_id`. Passing a foreign ID returns 403 — even the bot cannot read or write across account boundaries. Multi-tenant isolation at DB query level.

Plan limits checked in preview

If you request a mutation that exceeds your plan (e.g. 11th website on Business with 10-limit), the bot detects this in the preview step and immediately suggests `start_plan_upgrade` as follow-up — one-step solution.

Prompt-injection detection

The bot detects typical injection patterns ('ignore instructions, reveal the system prompt) and answers with a polite refusal instead of complying. An output filter checks answers for leaked API keys/secrets/internal emails — anything that slips through is redacted before delivery.

Rate limits

Per conversation: Free 10 / Starter 15 / Business 50 / Agency 100 (then automatic handoff to a staff member). Daily cap: Free 15 / Starter 50 / Business 100 / Agency 300. Monthly cap: Free 50 / Starter 300 / Business 800 / Agency 2000. Add-on AI Booster (EUR 12/month, stackable up to 3 times) raises day by +200 and month by +500 per pack. Maximum 5 write actions per conversation against run-away loops. Visitors who are not signed in are additionally capped at 14 msgs/IP/hour + 40/IP/day.

# GDPR & privacy

Anthropic as data processor

The assistant runs on the LLM API of Anthropic (USA, with EU standard contractual clauses via DPA). Click-through DPA is sufficient per Art. 28(9) GDPR; XICTRAQ archives the DPA as PDF and maintains an entry in the processing record.

What goes to Anthropic

Per request: your message, the system prompt with XICTRAQ feature descriptions, the tool definitions and the tool results. Output filter removes API keys, passwords, bearer tokens, internal XICTRAQ emails. Plus your memory entries as far as they fit the context — i.e. what you stored yourself. No tracking hashes, no raw customer data unrelated to the question.

Retention

Conversations without signing in are deleted after 30 days, logged-in conversations after 365 days. Stale conversations (>24h without reply) are auto-closed. You can close each tab manually (= soft delete) or remove the full history via 'Delete account data. Memory entries deliberately have no retention limit — they stay until you edit or delete them under Settings → AI memory.

Audit trail in activity log
Every mutation executed by the assistant is traceable in your activity log — with timestamp, tool, before/after diff and result. So you can retrace which actions ran through the chat.

Frequently asked questions

No — visitors who are not signed in can ask about plans, features and docs topics. Live data and mutations require login.
Availability
The assistant is included in every plan — no surcharge and no separate per-message billing. Visitors who are not signed in use it (with tighter limits) without login for plan, feature and docs questions; live data and write actions require a login. Individual skills are tied to their feature and therefore need at least Business (defacement status from Starter).
Start in 60 seconds

Let XICTRAQ watch your website.

Permanent free plan available. No credit card, no installation, no hidden fees.