Foundry376/Mailspring · error

Your Mailspring ID password could not be loaded from your ke

Error message

Your Mailspring ID password could not be loaded from your keychain. Please visit Preferences > Subscription and click "Setup Mailspring ID" to sign in to your Mailspring account again.\n\nYour Mailspring ID email address is ${this._identity.emailAddress}.

What it means

Error "Your Mailspring ID password could not be loaded from your keychain. Please visit Preferences > Subscription and click "Setup Mailspring ID" to sign in to your Mailspring account again.\n\nYour Mailspring ID email address is ${this._identity.emailAddress}." thrown in Foundry376/Mailspring.

Source

Thrown at app/src/flux/stores/identity-store.ts:146

    AppEnv.config.set('identity', rest);

    // Setting AppEnv.config will trigger our onDidChange handler,
    // no need to trigger here.
  }

  /**
   * When the identity changes in the database, update our local store
   * cache and set the token from the keychain.
   */
  _onIdentityChanged = async () => {
    const value = AppEnv.config.get('identity');
    this._identity = value
      ? { ...value, token: await KeyManager.getPassword(PASSWORD_NAME) }
      : null;

    if (this._identity && !this._identity.token) {
      const message = `Your Mailspring ID password could not be loaded from your keychain. Please visit Preferences > Subscription and click "Setup Mailspring ID" to sign in to your Mailspring account again.\n\nYour Mailspring ID email address is ${this._identity.emailAddress}.`;
      console.warn(message);

      if (!this._displayedPasswordError) {
        this._displayedPasswordError = true;
        AppEnv.showErrorDialog({ title: 'Please Sign In', message });
      }
      this._identity = null;
    }

    this.trigger();
  };

  _onLogoutMailspringIdentity = async () => {
    // Do not touch the keychain or restart the app during specs.
    if (AppEnv.inSpecMode()) return;
    await this.saveIdentity(null);
    // We need to relaunch the app to clear the webview session
    // and prevent the webview from re signing in with the same MailspringID
    require('@electron/remote').app.relaunch();

View on GitHub (pinned to 648c685d60)

Solutions

  1. Open Preferences > Subscription and click "Setup Mailspring ID" to sign in again
  2. Verify the system keychain is unlocked and accessible (on Linux check gnome-keyring/kwallet availability)
  3. Re-enter credentials so a new token is stored under the PASSWORD_NAME keychain entry
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at app/src/flux/stores/identity-store.ts:146 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of Foundry376/Mailspring@648c685d60 (2026-09-03). Data as JSON: /api/errors/76acc8bfd9296241. Report an issue: GitHub.