---
title: Guest servers
description: Connect directly to a private test or self-hosted FinderMode server without Patreon.
---

Guest access is a Finder Mode server setting. It is not a FileDOM option, and a
client cannot use it to get around somebody else's server. It is off by default.

## Configure a private server

Set this exact server-side value:

```dotenv
FINDER_MODE_GUEST_ACCESS=true
```

For local Wrangler development in the Finder Mode repository, put it in
`apps/game-server/.dev.vars` alongside your `BETTER_AUTH_SECRET`,
`BETTER_AUTH_URL`, and `ACTOR_KIT_SECRET`. Keep secrets out of version control.
This mode needs no Patreon OAuth credentials.

Apply the database migrations in `apps/game-server/migrations` before starting
the server. Guest accounts need `0005_lethal_kinsey_walden.sql` or later.

```bash
pnpm --filter server db:migrate:local
```

To self-host, provision your own Worker, D1 database, Durable Object namespaces,
and origin, and set the flag in that deployment's bindings. Do not deploy the
repository's hosted Alchemy stack unchanged, because it names Method Actor's
production resources. The local migration command above does not migrate a
remote deployment.

## Connect from the app

In Finder Mode, choose your server URL and click Connect to server. The app
reads `/api/access`: a guest-enabled server connects directly, and any other
server uses the normal Patreon flow. This needs an app build that includes the
direct guest connection flow; updating the server alone is not enough.

Only the exact value `true` enables guests, and missing Patreon secrets never
enable it. On a server with guest access on, the flag overrides both the Patreon
campaign check and the pre-release access-token check.

## What stays protected

Each guest gets a separate Better Auth user and an expiring session, stored in
the app's server-scoped Keychain entry. Connections, acceptance, blocks, and
invitations work as usual, and a guest cannot choose another user's identity.

Turning the flag off rejects guest sessions for People and gated games.

:::warning[Temporary identity, not account recovery]
Signing out, losing the credential, or letting it expire means the next
connection creates a new identity with a new connection code. A guest identity
cannot be recovered through Patreon or email.
:::

## Before opening a server to the internet

Anyone can create guest identities on an open guest server. Per-account limits
do not replace network admission or IP-level abuse controls. Use a private
deployment for testing, and do not use this flag as a way to recover production
accounts.

See [People & invitations](/docs/finder-mode/people-and-chat) for the social features
and the
[repository setup notes](https://github.com/methodacting/finder-mode/blob/main/docs/guest-access.md)
for the implementation checklist.
