stablyai/orca · error · Error

Managed Claude auth storage is not owned by Orca.

Error message

Managed Claude auth storage is not owned by Orca.

What it means

Thrown in the non-Win32 fallback of assertManagedAuthPath (for UNC paths on non-Windows, or macOS/Linux host-managed auth). It checks that both the candidate directory and its .orca-managed-claude-auth marker file exist on disk via existsSync. If either is missing, the storage is not recognized as Orca-owned.

Source

Thrown at src/main/claude-accounts/service.ts:1007

              )
            ],
            { encoding: 'utf-8', timeout: 5000 }
          ).trim()
          if (!canonicalLinuxPath) {
            throw new Error('Managed Claude auth directory does not exist on disk.')
          }
          return toWindowsWslPath(canonicalLinuxPath, wslInfo.distro)
        } catch (error) {
          throw new Error('Managed WSL Claude auth storage is outside Orca account storage.', {
            cause: error
          })
        }
      }
      if (
        !existsSync(candidatePath) ||
        !existsSync(join(candidatePath, '.orca-managed-claude-auth'))
      ) {
        throw new Error('Managed Claude auth storage is not owned by Orca.')
      }
      return candidatePath
    }

    this.getManagedAccountsRoot()
    const accountId = expectedAccountId ?? this.readManagedAuthAccountIdFromPath(candidatePath)
    if (!accountId || (expectedAccountId && accountId !== expectedAccountId)) {
      throw new Error('Managed Claude auth directory does not exist on disk.')
    }
    const trustedPath = resolveOwnedClaudeManagedAuthPath(accountId, candidatePath, {
      adoptLegacyMarker: true
    })
    if (!trustedPath) {
      throw new Error('Managed Claude auth storage is not owned by Orca.')
    }
    return trustedPath
  }

View on GitHub (pinned to 1136503c6a)

Solutions

  1. Confirm the candidatePath actually exists on the host filesystem.
  2. If on macOS/Linux, ensure the path is a local path, not a WSL UNC path — re-add the account to generate the correct host path.
  3. Restore the .orca-managed-claude-auth marker file with the correct accountId content, or re-add the account.
Defensive patterns

Strategy: validation

Validate before calling

import { existsSync } from 'node:fs'
import { join } from 'node:path'

function isManagedAuthPresentOnHost(path: string): boolean {
  return existsSync(path) && existsSync(join(path, '.orca-managed-claude-auth'))
}

Try / catch

try {
  assertManagedAuthPath(candidatePath)
} catch (error) {
  if (error instanceof Error && error.message === 'Managed Claude auth storage is not owned by Orca.') {
    // Recreate marker or re-add account
  } else { throw error }
}

Prevention

When it happens

Trigger: On a non-win32 host (macOS/Linux), assertManagedAuthPath is called with a path that is a WSL UNC path (parseWslUncPath returned non-null) but process.platform is not 'win32'. The existsSync checks for the directory or marker file fail.

Common situations: Running Orca on macOS/Linux with a WSL UNC path in config (cross-platform config copy). The managed auth directory was deleted out-of-band. The marker file was removed by a cleanup tool.

Related errors


AI-assisted analysis of stablyai/orca@1136503c6a (2026-08-12). Data as JSON: /api/errors/0569664f8966609a. Report an issue: GitHub.