Changelog

From a stack decision to a public launch.

Thirteen releases that map the entire history of Advi Systems — picking the stack, the internal alpha, shipping Prompt Studio, shipping Advi Agents, vector RAG, multi-channel, native integrations, polish, and the public launch. Patch releases included so the timeline reflects real product work, not a marketing narrative.

Releases
13
Latest
v1.0.0
First
2024
Cadence
As shipped

Releases

In reverse chronological order.

  1. launchv1.0.0·2026-05-20

    Public launch — both products open to self-serve sign-up

    Twenty months after the first commit, both products open to public sign-up. Two paid organization plans, two paid personal plans, and continued unlimited access for active agency-engagement clients. Marketing site, billing, docs, security pages, and legal documents all shipped in time for launch day.

    • Public marketing site live across 26 routes (home, products, pricing, docs, security, legal, sign-in, sign-up, dashboard)
    • Clerk-billed organization plans: Pro at €19/mo (up to 5 seats) and Team at €99/mo (unlimited seats, all channels, native CRM integrations)
    • Clerk-billed personal plans: Individual at $9/mo (Prompt Studio · 100 prompts/mo · free OpenRouter models only) and Plus at $19/mo (500 prompts/mo · 1 personal web-widget agent · free models only)
    • Free agency tier remains invite-only — bundled with active lead-generation engagements at the full Team feature set
    • Annual billing on Pro and Team saves ~20%; 30-day money-back on every paid plan
    • Legal pack completed: Impressum (§5 TMG, §19 UStG Kleinunternehmer), GDPR-compliant Privacy Policy with named sub-processors, Terms with Widerrufsbelehrung and Muster-Widerrufsformular, Cookie Policy citing § 25 TDDDG
    • Sign-up to first generated prompt in under 30 seconds verified end-to-end
  2. polishv0.9.0·2026-05-01

    Pre-launch polish — light theme, analytics dashboard, design refresh

    The last feature push before launch. Visual consistency across every route, multi-agent analytics so workspace owners can see the whole picture in one view, and the org-shared prompt template library so teams stop pasting prompts back and forth in Slack.

    • Light theme added to the dashboard with a full token-flip via CSS variables — every component now renders correctly in both themes
    • Multi-agent analytics dashboard — sessions, messages, contacts, active sessions in the last 24 hours, channel distribution, recent conversations, aggregated across the workspace or filtered per agent
    • Org-shared prompt template library — templates saved to the organization show up for every member of the workspace
    • Swiss-Grid Industrial design system applied across marketing + dashboard; hairline borders, monospace eyebrows, accent dots used consistently
    • Dashboard sidebar rewritten with collapsible groups and consistent active-state highlighting
    • Skeleton loading states added to dashboard pages so empty-state flashes disappear
  3. refinementv0.8.2·2026-04-20

    Native integrations — HubSpot, Zendesk, Shopify, Calendly, Google Calendar

    First-party connectors for the five tools agency clients asked for most. Each connector handles its own OAuth or API-key flow, surfaces a status indicator in the dashboard, and writes captured leads or booked meetings back through the appropriate channel.

    • HubSpot CRM connector — captured leads upsert into Contacts with the agent's name as Lead Source
    • Zendesk connector — handoff requests create a ticket attached to the visitor's email
    • Shopify connector — order lookups by email or order number become available as agent tools
    • Calendly + Google Calendar — agents can offer available slots from a configured calendar and write the booking back
    • OAuth-based connections show a live status indicator (connected, expired, error) on the agent settings page
    • Connection deauthorization cleanly removes stored tokens and disables related tools on next message
  4. refinementv0.8.0·2026-03-20

    Premium models, plan-aware allowlist, tool calling framework

    Paid-plan model access wired in, and the tool-calling framework that lets agents take actions during conversations rather than just answer questions.

    • Premium models gated by plan entitlements — Pro unlocks 3 budget premium models (GPT-4o-mini, Claude Haiku 4.5, Gemini Flash 2.0); Team unlocks the full catalog (GPT-5, GPT-4o, Claude Sonnet 4.5, Claude Opus 4.5, Gemini Pro 2.0, Grok-3, Grok-4, Llama 3.1 405B); personal plans (Individual, Plus) intentionally run on free models only
    • Plan-aware allowlist — selecting a model your plan doesn't include returns an explicit upgrade message rather than silently falling back to a free model
    • Tool-calling framework — agents can now use built-in tools (capture_lead, request_handoff, get_offer, submit_csat, mark_conversion) during a conversation
    • Bring-your-own provider key on Team tier — usage hits your OpenRouter / OpenAI / Anthropic account directly
    • Tool-loop guardrails — maximum five tool iterations per visitor message to prevent infinite loops
    • Conversation viewer now shows tool calls inline with the conversation transcript
  5. fixesv0.7.2·2026-03-05

    Channel signature hardening, CSAT, conversion tracking

    Three follow-up items from the multi-channel release. Hardening the inbound webhook signature verification after a near-miss in testing, plus the two analytics signals agency clients said they couldn't ship without: CSAT and conversion.

    • Channel webhook signature verification rewritten with constant-time comparison and explicit secret rotation support
    • CSAT scoring — visitors can rate the conversation 0–5 with an optional comment at the end of a session; values stored on the session record
    • Conversion tracking — the mark_conversion tool flags a session as converted (purchase / demo booked / lead qualified) and fires a webhook with the full payload
    • Make.com webhook templates published — one-click import for conversation_started, lead_captured, handoff_requested, csat_received, conversion events
    • Bug fix: WhatsApp media messages were sometimes silently dropped due to a missing content-type check — now logged and either persisted or rejected with a clear reason
  6. refinementv0.7.0·2026-02-01

    Multi-channel routing — WhatsApp, Telegram, Messenger, Instagram

    Same agent, same knowledge base, same dashboard — now reachable on the four messaging channels customers actually use. Each channel has its own webhook endpoint, its own signature verification, and contributes to the same conversation logs as the web widget.

    • WhatsApp Business Cloud API integration — message ingestion, reply delivery, contact resolution by phone number
    • Telegram bot integration — long-lived webhook with signature check and tg_user_id contact mapping
    • Messenger + Instagram via Meta's webhook subscription — agent_token routing distinguishes channel destination
    • Per-channel connection state in the dashboard — disconnect, rotate secret, view recent inbound payloads
    • Channel column added to the messages table — every message is tagged with where it came in on (web / whatsapp / telegram / messenger / instagram)
    • Internal Slack channel (for the agency team) wired separately — not a customer-facing channel, just for ops notifications
  7. refinementv0.6.0·2025-12-01

    Knowledge base with vector retrieval (RAG)

    Agents stop being one-prompt-fits-all. Upload PDFs or paste documents, the server chunks the content, generates embeddings, and the agent retrieves the most relevant passages for each visitor question — bounded to that one agent's knowledge.

    • Knowledge items table with pgvector(1536) embeddings and an HNSW cosine-similarity index
    • PDF parsing via pdf-parse — upload a PDF, the server extracts text, chunks it, and embeds every chunk
    • Per-message retrieval — visitor sends a message, server embeds it, top 5 matches above similarity 0.5 (filtered to agent_id) are injected into the system prompt
    • Knowledge management UI — add, edit, deactivate, or delete knowledge items per agent
    • Page context (opt-in) — when the agent is configured to receive it, the current page URL and title are included in the conversation context
    • [UNSURE] fallback marker — agent emits the token when it cannot answer; backend strips the token, logs the unanswered question, and optionally triggers a handoff webhook
  8. fixesv0.5.3·2025-11-10

    Conversation viewer, session resume fix, contact deduplication

    Two months of bug fixes and small UI improvements after the Agents MVP. None of these are headline features — they're the kind of work that turns a working prototype into something a client will actually deploy on their site.

    • Conversation viewer in the dashboard — search, filter by date or agent, replay any session message-by-message
    • Fix: session resume after browser refresh used to drop the conversation_id cookie on some Safari versions — now cookie + localStorage with a clear fallback chain
    • Fix: contact upsert occasionally created duplicate rows when the same email arrived from two sessions within the same second — added unique constraint on (agent_id, email) and idempotent upsert
    • Fix: widget hydration error on themes that strip async script tags — switched the embed snippet to `defer` instead of `async` and documented CSP requirements
    • Contact CSV export — workspace owners can export the contacts captured per agent
    • Widget CORS headers tightened — only the configured allowed origin is accepted; misconfigured sites now see a clear 403 instead of a silent failure
  9. agentsv0.5.0·2025-09-01

    Advi Agents MVP — embeddable widget shipped (web only)

    The first product built for clients, not just for the internal team. One agent, one script tag, one set of conversation logs. Web only at launch — channels come later. No knowledge base yet either; agents at this point answer from their system prompt alone.

    • Agent dashboard — internal name, visitor-facing display name, description, greeting message, system prompt, model selection (OpenRouter ID), widget colors, optional icon, public token
    • Embeddable web widget — single `<script src="/api/widget/[token]" defer>` tag deploys to any HTML page
    • Public-token boundary — website visitors never authenticate; widget chat resolves only by public_token; management APIs remain Clerk-gated
    • Sessions + contacts + messages tables — full conversation persistence with authoritative server-side history rebuilt from the database every turn
    • Lead capture endpoint — visitors share name/email/phone, upserted to contacts by (agent_id, email)
    • Handoff webhook — visitor requests human → full transcript posted to a configured Make.com / Zapier URL
    • Agent identity prefix injected into every system prompt — prevents models from claiming they were built by Anthropic, OpenAI, or Google
  10. fixesv0.3.2·2025-04-15

    Streaming reliability, rate limits, three more free models

    Six weeks of fixes after the Prompt Studio MVP. Streaming connections were dropping on slower networks (Vercel edge timing), rate limits were missing, and OpenRouter added three free models worth wiring up.

    • Fix: SSE stream occasionally truncated on slow connections — added heartbeat keepalives and a retry-once strategy for partial chunks
    • Per-IP rate limit on /api/refine — prevents the kind of accidental abuse that happens when someone loops the API in a script
    • Per-workspace rate limit — soft cap with a clear `429 Rate Limit Exceeded` response and reset window
    • Three more free OpenRouter models added: Qwen3 80B, GLM-4.5 Air, LFM 2.5 Thinking
    • Goal-field length validation moved server-side (was previously only client-side, easy to bypass)
    • Friendly error mapping: timeout → 504, rate limit → 429, auth/API key issues → 503 with a generic message that does not leak provider error bodies
  11. promptsv0.3.0·2025-03-01

    Prompt Studio MVP — 12-field workflow shipped

    The internal tool that stopped the agency rewriting the same prompts from scratch every week. Built first for our team, then opened to clients, then to anyone. Twelve guided fields, five free models, history, and the meta-prompt that picks the right framework for each task.

    • Twelve-field structured form — goal, audience, role, background, constraints, format, tone, examples, length, complexity, priority, language
    • Five free OpenRouter models at launch — Trinity Large, Llama 3.3 70B, Mistral Small 3.1, Step 3.5 Flash, Hermes 3 405B
    • Twenty prompt-engineering frameworks (CO-STAR, RTF, FEW-SHOT, RISE, TRACE, CREATE, BAB, PAIN, GRADE, SCOPE, STAR, SOAR, ROSES, 5W1H, PREP, TAG, PROMPT, ERA, APE, CARE) with a scoring algorithm that picks the right one based on the inputs
    • Rare-framework check — the picker explicitly checks ten under-represented frameworks before allowing CO-STAR, FEW-SHOT, or RTF to win, preventing training-data bias
    • Server-sent events streaming — outputs render token-by-token; copy as soon as the structure stabilizes
    • Prompt history scoped per workspace — restore any prior run with one click, edit and re-run
    • Output controls — Markdown, JSON, code, plain text, HTML, XML, CSV, step-by-step
    • Chain-of-thought toggle — optional reasoning scaffold for analysis-heavy tasks; disabled by default for short outputs
  12. alphav0.2.0·2024-11-15

    Internal alpha — first prompt-refinement loop

    Two months after the foundation commit, a working prompt refiner — bare bones, one model, no frameworks, no history. Used internally on every client engagement for the next three months and rewritten almost entirely before becoming the v0.3.0 MVP.

    • Single OpenRouter model wired through the OpenAI SDK with server-side API key handling
    • Three-field form (goal, role, format) — the bare minimum to test the refinement loop
    • Streaming response via SSE — the streaming pattern that survived into v1.0.0
    • Clerk session middleware wrapping every API route — the auth pattern that scaled to two products
    • First Supabase schema: users, organizations, prompts table — schema migrations from this point on are forwards-compatible
    • Used internally for ~50 client deliverables before being rewritten — the v0.3.0 MVP is what we wished v0.2.0 had been
  13. foundationv0.1.0·2024-09-01

    Foundation — the stack we'd commit to

    Before writing a single product feature, the call on what to build on. EU-first, server-rendered, Postgres-backed, and provider-agnostic for LLMs so model choice didn't lock us in. Most of these decisions stayed unchanged through to v1.0.0.

    • Next.js 16 App Router + React 19 — server components by default, streaming-first, standalone output for predictable deploys
    • Supabase Frankfurt (EU) — Postgres for product data, Storage for uploads, pgvector for embeddings, daily automated backups
    • Clerk authentication — personal + organization workspaces, org switching, optional MFA, SOC 2 Type II provider
    • OpenRouter as the LLM gateway — model-agnostic from day one, allowlist enforced server-side before forwarding any request
    • TypeScript strict mode, Tailwind 3 with CSS-variable design tokens, server-only secret handling, zero client-side API keys
    • Decided NOT to use: custom ML training, fine-tuning pipelines, vector DB beyond pgvector, separate auth provider. Keep the surface small.

Roadmap

What's coming next.

01planned

Native Salesforce + Pipedrive

CRM integrations beyond HubSpot. On the Team tier alongside the existing HubSpot / Zendesk / Shopify connectors.

02planned

White-label widget option

Remove Advi Systems branding from the agent widget. For agencies reselling the platform under their own brand.

03planned

SSO + SAML for Enterprise

Okta, Azure AD, Google Workspace SSO. Available on the Enterprise plan with a signed MSA and DPA.

04planned

Audio + voice channels

Voice agents over Twilio or LiveKit so phone calls share the same knowledge base and conversation logs as text channels.

Influence the next release

Active clients and community members shape what we ship.

Email us with the workflow you wish existed, or join the invite-only Slack to push features through the roadmap directly. We read every message.