Repository navigation
feat: sign in with Supermemory OAuth - #69
Merged
Merged
Conversation
Add login/logout/status with PKCE loopback flow, --print-url for the Supermemory CLI, automatic token refresh, and a standalone npx bin. API keys keep precedence. Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
ishaanxgupta
approved these changes
Nov 3, 2026
ishaanxgupta
marked this pull request as ready for review
November 13, 2026 16:02
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds Supermemory OAuth sign-in to the OpenClaw plugin, matching the codex/opencode plugins.
openclaw supermemory login(ornpx -y @supermemory/openclaw-supermemory login) runs authorization code + PKCE on a127.0.0.1:19883loopback callback, stores tokens in~/.supermemory-openclaw/credentials.json(0600), and enables the plugin in~/.openclaw/openclaw.json. API keys are untouched: a configuredapiKeyorSUPERMEMORY_OPENCLAW_API_KEYstill wins, and OAuth is only used when no key is set.login --print-urlprints oneSUPERMEMORY_AUTHORIZE_URL=<url>line on stdout forsupermemory plugin login, keeps the listener open, and exits 0 after the exchange (or immediately when already signed in). Headless runs also print the plain link, anssh -Lhint, and accept a pasted redirect URL.logoutrevokes the refresh token and deletes the file;statusshows OAuth vs API key and the account.bin(dist/cli.js),openclawpeer marked optional sonpxdoesn't pull a 600 MB install, README leads with OAuth, version 2.2.0.Validation: typecheck, Biome CI and build pass. Against production,
login --print-url(bundled bin, packed tarball via npx, and the realopenclaw supermemory loginon OpenClaw 2026.10.9) registers a client, prints the URL with a loopback redirect, and keeps the listener up; an API-key config still initializes and searches. Code exchange, 401/expiry refresh, rejected refresh, logout revoke, and key precedence were exercised against a local mock authorization server. The consent click itself still needs a human.