How to stay logged in forever(ish)

Have you configured your app to use refresh tokens? You need to tell the SDK to request one. From our docs:

The getAccessTokenSilently() method can renew the access and ID token for you using refresh tokens. To get a refresh token when a user logs in, pass useRefreshTokens={true} as a prop to Auth0Provider .