@mysten-incubation/memwal-mcp 0.0.14-dev.0 → 0.0.14-dev.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +238 -1
- package/dist/auth-required.d.ts +325 -0
- package/dist/auth-required.d.ts.map +1 -1
- package/dist/auth-required.js +84 -16
- package/dist/auth-required.js.map +1 -1
- package/dist/auth.d.ts +179 -18
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +458 -35
- package/dist/auth.js.map +1 -1
- package/dist/auto-save.d.ts +100 -0
- package/dist/auto-save.d.ts.map +1 -0
- package/dist/auto-save.js +290 -0
- package/dist/auto-save.js.map +1 -0
- package/dist/bridge.d.ts +14 -2
- package/dist/bridge.d.ts.map +1 -1
- package/dist/bridge.js +233 -25
- package/dist/bridge.js.map +1 -1
- package/dist/consent.d.ts +36 -0
- package/dist/consent.d.ts.map +1 -0
- package/dist/consent.js +129 -0
- package/dist/consent.js.map +1 -0
- package/dist/health-probe.d.ts +35 -0
- package/dist/health-probe.d.ts.map +1 -0
- package/dist/health-probe.js +87 -0
- package/dist/health-probe.js.map +1 -0
- package/dist/index.d.ts +11 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +266 -5
- package/dist/index.js.map +1 -1
- package/dist/instructions.d.ts +17 -18
- package/dist/instructions.d.ts.map +1 -1
- package/dist/instructions.js +84 -20
- package/dist/instructions.js.map +1 -1
- package/dist/login.d.ts +15 -1
- package/dist/login.d.ts.map +1 -1
- package/dist/login.js +109 -9
- package/dist/login.js.map +1 -1
- package/dist/memory-policy.d.ts +38 -0
- package/dist/memory-policy.d.ts.map +1 -0
- package/dist/memory-policy.js +80 -0
- package/dist/memory-policy.js.map +1 -0
- package/dist/messages.d.ts +10 -3
- package/dist/messages.d.ts.map +1 -1
- package/dist/messages.js +16 -5
- package/dist/messages.js.map +1 -1
- package/dist/recovery.d.ts +1 -0
- package/dist/recovery.d.ts.map +1 -1
- package/dist/recovery.js +15 -13
- package/dist/recovery.js.map +1 -1
- package/package.json +1 -1
package/dist/recovery.js
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* back the identity the key already proves.
|
|
12
12
|
*/
|
|
13
13
|
import { randomUUID, createHash } from "node:crypto";
|
|
14
|
-
import { loadCreds, saveCreds, loadPendingLogin, clearPendingLogin } from "./auth.js";
|
|
14
|
+
import { loadCreds, saveCreds, loadPendingLogin, clearPendingLogin, formatReplacementNotice, } from "./auth.js";
|
|
15
15
|
import { signMessage } from "./crypto.js";
|
|
16
16
|
import { log } from "./logger.js";
|
|
17
17
|
/** Same wall-clock budget as a normal cold-start probe: recovery must never
|
|
@@ -146,8 +146,7 @@ export async function recoverPendingLogin() {
|
|
|
146
146
|
// again, after removing the key from the dashboard if it was already
|
|
147
147
|
// registered — is worth giving. During a transient upstream
|
|
148
148
|
// failure that advice is worse than silence: the key is still good, and
|
|
149
|
-
// `unavailable` correctly says the next start retries it
|
|
150
|
-
// from the user.
|
|
149
|
+
// `unavailable` correctly says the next start retries it.
|
|
151
150
|
//
|
|
152
151
|
// So only 401/403 is a denial. A 503 carrying
|
|
153
152
|
// `x-auth-error: AUTH_UPSTREAM_UNAVAILABLE` is Sui RPC being down, and
|
|
@@ -158,12 +157,11 @@ export async function recoverPendingLogin() {
|
|
|
158
157
|
res.authError !== AUTH_UPSTREAM_UNAVAILABLE;
|
|
159
158
|
const outcome = denied ? "rejected" : "unavailable";
|
|
160
159
|
// Non-destructive either way. A 401 is ambiguous even when it IS a
|
|
161
|
-
// denial:
|
|
162
|
-
//
|
|
163
|
-
//
|
|
164
|
-
//
|
|
165
|
-
//
|
|
166
|
-
// always left for its TTL to retire.
|
|
160
|
+
// denial: a genuinely registered key is refused when the request has
|
|
161
|
+
// no x-account-id (services/server/src/auth.rs — "x-account-id is
|
|
162
|
+
// required for delegate-key authentication"). Clearing here would
|
|
163
|
+
// destroy a recoverable key, so the record is always left for its
|
|
164
|
+
// TTL to retire.
|
|
167
165
|
log.warn(`login.pending.${outcome}`, {
|
|
168
166
|
publicKey: pending.delegatePublicKeyHex,
|
|
169
167
|
status: res.status,
|
|
@@ -183,13 +181,17 @@ export async function recoverPendingLogin() {
|
|
|
183
181
|
createdAt: new Date().toISOString(),
|
|
184
182
|
version: 1,
|
|
185
183
|
};
|
|
186
|
-
saveCreds(creds);
|
|
184
|
+
const saved = saveCreds(creds);
|
|
187
185
|
clearPendingLogin();
|
|
188
186
|
log.info("login.pending.recovered", {
|
|
189
187
|
accountId: creds.accountId,
|
|
190
188
|
delegateAddress: creds.delegateAddress,
|
|
191
189
|
});
|
|
192
|
-
return {
|
|
190
|
+
return {
|
|
191
|
+
outcome: "recovered",
|
|
192
|
+
credentials: creds,
|
|
193
|
+
replacementNotice: formatReplacementNotice(saved, creds.accountId) ?? undefined,
|
|
194
|
+
};
|
|
193
195
|
}
|
|
194
196
|
/**
|
|
195
197
|
* The line to show the user when a stranded key could not be reclaimed.
|
|
@@ -217,10 +219,10 @@ export function formatStrandedLoginNotice(result) {
|
|
|
217
219
|
lines.push(`You have since signed in again, so your current credentials are fine.`, `Revoke the key above from the dashboard if you don't recognise it.`);
|
|
218
220
|
}
|
|
219
221
|
else if (result.outcome === "unavailable") {
|
|
220
|
-
lines.push(`The relayer could not be reached to check. This will be retried on the`, `next start —
|
|
222
|
+
lines.push(`The relayer could not be reached to check. This will be retried on the`, `next start. If sign-in keeps failing, run`, `\`npx -y @mysten-incubation/memwal-mcp login\`, or call \`memwal_login\` with`, `\`freshKey: true\`: both mint a new key instead of waiting on this one.`, `That abandons the key above, so if you approved it on-chain, remove it`, `from the dashboard — nothing will use it again.`);
|
|
221
223
|
}
|
|
222
224
|
else {
|
|
223
|
-
lines.push(`The relayer did not accept it. If you never approved the wallet step, run`, `\`memwal_login\`: it reuses this key. If you did, remove the key above from`, `the dashboard first and then run \`memwal_login\`, because the wallet step`, `cannot register a key that is already there
|
|
225
|
+
lines.push(`The relayer did not accept it. If you never approved the wallet step, run`, `\`memwal_login\`: it reuses this key. If you did, remove the key above from`, `the dashboard first and then run \`memwal_login\`, because the wallet step`, `cannot register a key that is already there.`);
|
|
224
226
|
}
|
|
225
227
|
return lines.join("\n");
|
|
226
228
|
}
|
package/dist/recovery.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recovery.js","sourceRoot":"","sources":["../src/recovery.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGrD,OAAO,
|
|
1
|
+
{"version":3,"file":"recovery.js","sourceRoot":"","sources":["../src/recovery.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mysten-incubation/memwal-mcp",
|
|
3
|
-
"version": "0.0.14-dev.
|
|
3
|
+
"version": "0.0.14-dev.10",
|
|
4
4
|
"description": "Walrus Memory MCP client — single-binary stdio MCP server that bridges Cursor / Claude Desktop / Antigravity / Claude Code to the Walrus Memory relayer. Handles browser-based wallet login on first run.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"engines": {
|