One platform. For everyone.

Wayfindr is open-source support software for live chat, email, consent-based cobrowsing, a help centre your visitors can search, and tickets. Use it, fork it, self-host it, or get help running it.

Support without the shakedown.

The useful product should be the free product. Paid offerings should buy time, confidence, and operational calm, not unlock the real app.

Full product, not a teaser

The AGPL core is meant to be useful on its own: chat, visitor context, consent-based cobrowsing, ticket records, and audit trails.

Consent over creepiness

Cobrowsing should be requested clearly, scoped carefully, and designed around masked fields and visible user control.

Self-hosting that counts

If someone has the skill and time to run Wayfindr themselves, the project should respect that instead of booby-trapping the path.

The code is free. The help is paid. The project is sustainable.

We prosper when we help people move faster, run cleaner, and serve their customers better. We do not prosper by slowing them down, hiding basic functionality, or taxing their success.

Installation

Setup help for teams that want Wayfindr running without server wrestling.

Managed hosting

A hosted Wayfindr instance for people who want the easy button.

Support

Upgrade help, troubleshooting, operations guidance, and project stewardship.

What it does, and what it does not do yet.

Wayfindr is developed in the open, which means the difference between a feature you can install and a feature that exists on a branch is public. It is marked here rather than blurred.

  • Shipped In a published release. Install it today.
  • In development On main, not in a release yet.
  • Planned Intended, deliberately unscheduled.
  • Deferred Decided against for now, on the record.

Conversations

  • Shipped Live chat through a script-tag widget, with visitor context and support codes
  • Shipped Email as a second channel, opening and continuing conversations
  • Shipped A help centre your visitors search from inside the widget
  • Shipped Support hours, an away state, and capture while you are closed
  • Shipped A pre-chat form with the fields you choose
  • In development Proactive messages, sent on rules rather than only in reply
  • In development Mailgun and Postmark pointed straight at inbound mail, with no proxy in front

Cobrowsing

  • Shipped Consent-based observe mode: requested clearly, scoped, and refusable
  • Shipped Masked fields and visible visitor control throughout the session
  • Shipped Sanitized page state, bounded diagnostics, and an inert replay preview
  • Planned Incremental DOM patching in replay, gated on a decision accepting the security tradeoff

Tickets and workflow

  • Shipped Assignment, statuses, priorities, categories, labels, notes and replies
  • Shipped Two-way links to GitHub, GitLab and Jira, with comment relay
  • In development Service level policies with breach warnings
  • In development Automatic assignment and routing
  • In development Automation rules and macros over a typed lifecycle
  • In development Bulk actions, a command palette, and global keyboard shortcuts

Visitors

  • Shipped Visitor profiles, safe host context, and reference trails
  • Shipped A directory of every visitor the desk has heard from
  • In development A live board of who is on the site now — off by default, disclosed to the visitor, declinable, and pruned within thirty days at most
  • In development Typed custom attributes, private contact notes, identity merge and export

Measurement and alerts

  • Shipped Conversation and ticket volume, first response and resolution times, and who is carrying the queue
  • Shipped Satisfaction ratings, never reported over people who said nothing
  • Shipped Alert preferences, dashboard notifications and queued email digests
  • In development Background alerts, web push, quiet hours, and de-duplication across channels
  • In development A timezone per agent, so report day boundaries follow the reader

Accounts and access

  • Shipped Account roles, per-site access, and a separate platform-operator authority
  • Shipped Password recovery an agent can run without a production shell
  • In development Two-factor authentication with one-time recovery codes and an account-wide requirement
  • In development OpenID Connect single sign-on, custom roles, and role mapping that denies by default
  • Planned SAML, held until somebody actually needs it
  • Planned SCIM, which is a lifecycle decision rather than a login one

AI

  • In development An agent copilot: conversation summaries, reply drafts, suggested ticket details and knowledge snippets — every one a suggestion an agent edits or discards
  • In development Provider-neutral configuration, so an unset provider removes the feature instead of breaking the desk
  • Deferred An answer agent replying to your visitors unattended. The evaluation is done; the evidence was judged useful and insufficient

Running it yourself

  • Shipped Docker and Compose self-hosting, with guided first-run setup
  • Shipped An operator console for mail, storage, scanning, backups, language and region
  • Shipped Backup, restore, and an optional offsite mirror
  • Shipped Release manifests that state what an upgrade needs before it migrates or serves
  • Shipped Break-glass support access: reasoned, time-bound, read-only, and audited
  • Shipped A read-only public API with a decided isolation model
  • In development Outbound webhooks and a narrow API write surface

Languages

  • Shipped A widget that picks the visitor's language: your page first, then their browser, then your default
  • Shipped English and German in the widget; English, German and Italian for agents
  • In development The operator console and most of the remaining dashboard translated
  • Planned A qualified speaker reading the German and Italian packs. The mechanical checks pass; that establishes nothing about whether a sentence is good German

Every release says what it needs from you.

Wayfindr is self-hosted, so the only question that matters at upgrade time is whether the upgrade is safe to take unattended. Every release answers that before it says anything else.

Read the full changelog

  1. 0.7.0

    Reachable by email, and measurable at last

    0.6.0 changed how Wayfindr looks; 0.7.0 changed what it can do. A desk that could only be reached through the chat widget can now be reached by email, answer questions before they are asked from a help centre inside the widget, and say when nobody is home. Reporting and satisfaction ratings arrived with it, so there is finally a way to know whether any of it is working.

    Also in the release: a pre-chat form, password recovery an agent can run without a shell, per-site widget appearance, a widget that speaks the visitor's language, a visitor directory, and a read-only public API.

  2. 0.6.0

    The interface renovation

    The dashboard was rebuilt around a permanent sidebar, a colour per site, queues about four times denser, and a dark mode the widget follows too. Same application wearing a different face: data, URLs, and the install snippet on your pages are untouched.

  3. 0.5.0

    Sites get a lifecycle

    A site can now be renamed, archived when you stop supporting it, or permanently deleted. Archiving destroys nothing and is reversible; deletion has to be archived first, done by an owner, and confirmed by typing the site's name.

  4. 0.4.0

    Install anywhere, not just on a public domain

    localhost, bare IP addresses, and internal hostnames became supported install targets, with a certificate issued locally instead of an ACME challenge that could only fail.

    Followed by 0.4.1 – 0.4.4, which fixed the TLS handshake for installs at an IP address and moved the widget's last third-party dependency in-tree, so a self-hosted install now serves every byte it runs.

  5. 0.3.0

    Advice that does not block the upgrade

    Releases can carry advisory notices — worth telling an operator, not worth stopping for — and they disappear on their own once the thing is done. Where the install genuinely cannot check, it says so rather than guessing.

    Followed by 0.3.1 and 0.3.2, which cleared Composer advisories and fixed a first-boot race on empty storage volumes.

  6. 0.2.0

    The upgrade guard, exercised

    The first release you could upgrade to across a release boundary with a manifest on both sides. It deliberately demands nothing: the point was to prove the mechanism on a release where being wrong cost nothing.

  7. 0.1.0

    The first stable release

    Mail, attachment storage, malware scanning and backups became things you configure in a browser rather than in a file, behind a guided first-run checklist. Backup and restore shipped with an optional offsite mirror, and a release learned how to state what an operator must do before it will migrate or serve.

    Preceded by the 0.1.0-alpha.1alpha.3 prereleases on 21 and 22 July 2026, the first Wayfindr builds published as installable artifacts.

The next release is readable before it exists.

Wayfindr is built in the open, so the work in flight can be read today. None of it is installable yet: it is on main, not in a release. It becomes real when it ships with a changelog entry saying what it needs from you.

Track the 1.0.0 milestone

In development

0.8.0 — not released yet

The eighth release is being prepared now, and it is the largest development line the project has had: sign-in that fits an organisation, a desk that carries some of the load, alerts that know when to stay quiet, visitors as people rather than sessions, an agent copilot, and most of the product speaking more than one language. Every item marked in development above is part of it.

It will say plainly whether an operator has work to do before it is tagged, and it will not be tagged under a number that understates what changed.

Next

What 1.0.0 has to mean

1.0.0 is scoped to finishing the core support product and proving it, not to feature parity with anybody. Most of that milestone is closed: the gaps that separated Wayfindr from an established support product, localization as a platform property, performance baselines that were measured instead of assumed, and the security work that stopped keeping the query strings visitors carry.

One item is still open, and it is the uncomfortable one. Somebody who is not the author has to install Wayfindr from a published artifact and have it work.

Deferred on purpose

An AI that answers your visitors

The evaluation work is finished: a harness that runs without a provider, a confidence and refusal policy, and a rerun against a deployed model that passed every case with no unsafe answer. The capability is still not being built.

One narrow, wholly synthetic run through one model route establishes nothing about drift, adversarial or multilingual coverage, stale knowledge, or how it fails on somebody else's server. Until that evidence exists, the reply a customer reads belongs to a human. The decision is written down.

Further out, and deliberately unscheduled: single-page-app route tracking, richer host-app SDKs for WordPress, Laravel, Next.js and plain JavaScript, and broader automation surfaces. Parity work waits for a real operator to need it.

Early, in the open, and genuinely installable.

Wayfindr is young — seven releases since August, with an eighth in preparation — but it is not a demo. You can self-host 0.7.0 today, and the support loop it was built around works end to end: install the widget, chat with a visitor, request cobrowsing consent, and turn the session into a ticket. Email, a searchable help centre, support hours, and reporting are in that release too.

Expect things to move. Nothing here is frozen yet, and the one thing 1.0.0 still waits on is a stranger installing it successfully.