Desktop utility for debugging OAuth authentication flows (authorization code with PKCE, or legacy implicit flow). Register provider configurations, authenticate via an in-app window, and inspect tokens or raw callback parameters.
npm install
npm run tauri devnpm run tauri buildThe built application is output to src-tauri/target/release/.
- Click + New in the sidebar to create a configuration
- Fill in the OAuth provider details. Use the OAuth flow dropdown to choose Authorization code (PKCE) (default) or Implicit. For implicit flow, the token URL is not used.
- Set the Redirect URI to the value registered with your OAuth provider. The app intercepts the redirect inside its webview, so any URI works (custom schemes, localhost with or without a port, etc.).
- Click Save, then Authenticate
- Log in via the auth window that opens
- For PKCE, tokens from the token endpoint are shown with copy buttons and JWT decode support. For implicit flow, every query and fragment parameter from the redirect URL is listed.
Configurations can be exported to a JSON file and imported back. Use the Import and Export buttons in the sidebar.
- Export saves all current configurations to a single
.jsonfile. - Import reads a
.jsonfile and adds every configuration as a new entry (fresh IDs are assigned, existing configs are never overwritten).
{
"version": 1,
"configs": [
{
"name": "My Provider - Staging",
"authorization_url": "https://provider.com/authorize",
"token_url": "https://provider.com/token",
"client_id": "my-client-id",
"redirect_uri": "http://localhost:8765/callback",
"scopes": "openid profile email",
"client_secret": "optional-secret",
"response_type": "token",
"extra_params": { "audience": "https://api.example.com" }
}
]
}| Field | Required | Description |
|---|---|---|
version |
yes | Must be 1. |
configs |
yes | Array of configuration objects. |
configs[].name |
yes | Display name for the configuration. |
configs[].authorization_url |
yes | OAuth authorization endpoint. |
configs[].token_url |
yes for PKCE | OAuth token endpoint (omit or empty for implicit-only configs). |
configs[].client_id |
yes | OAuth client identifier. |
configs[].redirect_uri |
yes | Redirect URI registered with the provider. |
configs[].scopes |
yes | Space-separated list of scopes. |
configs[].response_type |
no | "code" (default, PKCE) or "token" (implicit flow). |
configs[].client_secret |
no | Client secret (omit for public clients). |
configs[].extra_params |
no | Key-value map of additional query parameters sent during authorization. |