@mneme-ai/core 2.9.2 → 2.9.3
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/dist/beacon/index.d.ts.map +1 -1
- package/dist/beacon/index.js +78 -18
- package/dist/beacon/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/beacon/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,EAAgB,KAAK,MAAM,EAA6C,MAAM,WAAW,CAAC;AAKjG,MAAM,WAAW,UAAU;IACzB,8DAA8D;IAC9D,EAAE,EAAE,MAAM,CAAC;IACX,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,WAAW,EAAE,KAAK,GAAG,gBAAgB,GAAG,aAAa,GAAG,UAAU,CAAC;IACnE,yEAAyE;IACzE,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,kFAAkF;IAClF,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,+CAA+C;IAC/C,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,0CAA0C;IAC1C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,qBAAqB;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/beacon/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,EAAgB,KAAK,MAAM,EAA6C,MAAM,WAAW,CAAC;AAKjG,MAAM,WAAW,UAAU;IACzB,8DAA8D;IAC9D,EAAE,EAAE,MAAM,CAAC;IACX,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,WAAW,EAAE,KAAK,GAAG,gBAAgB,GAAG,aAAa,GAAG,UAAU,CAAC;IACnE,yEAAyE;IACzE,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,6CAA6C;IAC7C,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,kFAAkF;IAClF,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,+CAA+C;IAC/C,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,0CAA0C;IAC1C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,qBAAqB;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAwGD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0BAA0B;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;8CAC0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wFAAwF;IACxF,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;0EAC0E;AAC1E,wBAAsB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,CAuGhF;AAED;;;;;;;;qCAQqC;AACrC,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,OAAO,KAAK,CAAA;CAAE,GAAG,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAwBvM;AAED,oEAAoE;AACpE,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQnD;AAED,8BAA8B;AAC9B,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,YAAY,GAAG,MAAM,CAG7D"}
|
package/dist/beacon/index.js
CHANGED
|
@@ -60,35 +60,90 @@ function detectLanIPs() {
|
|
|
60
60
|
function escapeHtml(s) {
|
|
61
61
|
return s.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """);
|
|
62
62
|
}
|
|
63
|
+
function vendorMeta(vendor) {
|
|
64
|
+
const v = vendor.toLowerCase();
|
|
65
|
+
if (v.includes("claude") || v.includes("anthropic"))
|
|
66
|
+
return { name: "Claude", url: "https://claude.ai/new", deeplink: null };
|
|
67
|
+
if (v.includes("gpt") || v.includes("chatgpt") || v.includes("openai"))
|
|
68
|
+
return { name: "ChatGPT", url: "https://chatgpt.com/", deeplink: null };
|
|
69
|
+
if (v.includes("gemini") || v.includes("google"))
|
|
70
|
+
return { name: "Gemini", url: "https://gemini.google.com/app", deeplink: null };
|
|
71
|
+
if (v.includes("perplexity"))
|
|
72
|
+
return { name: "Perplexity", url: "https://perplexity.ai/", deeplink: null };
|
|
73
|
+
if (v.includes("copilot"))
|
|
74
|
+
return { name: "Copilot", url: "https://copilot.microsoft.com/", deeplink: null };
|
|
75
|
+
return { name: "your AI app", url: "https://www.google.com/search?q=ai+chat", deeplink: null };
|
|
76
|
+
}
|
|
63
77
|
function renderBeaconPage(payload, vendor, label) {
|
|
64
|
-
const
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
78
|
+
const meta = vendorMeta(vendor);
|
|
79
|
+
// v2.9.3 BEACON page upgrade:
|
|
80
|
+
// - Plaintext soul prompt (no AES-256-GCM nonsense — Gemini Free can't decrypt anyway)
|
|
81
|
+
// - Big copy button + visible status
|
|
82
|
+
// - Vendor-specific deeplink button (Open Gemini app / ChatGPT / Claude)
|
|
83
|
+
// - Mobile-first responsive CSS
|
|
84
|
+
// - LIVE STATE block visible at top so receiving AI reads current version
|
|
68
85
|
return `<!doctype html>
|
|
69
86
|
<html><head>
|
|
70
87
|
<meta charset="utf-8">
|
|
71
88
|
<meta name="viewport" content="width=device-width,initial-scale=1">
|
|
72
89
|
<title>${escapeHtml(label)}</title>
|
|
73
90
|
<style>
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
.
|
|
91
|
+
*{box-sizing:border-box}
|
|
92
|
+
body{font-family:system-ui,-apple-system,sans-serif;max-width:680px;margin:0 auto;padding:14px;line-height:1.5;color:#202124;background:#fafafa}
|
|
93
|
+
h1{font-size:1.2em;margin:.2em 0}
|
|
94
|
+
h2{font-size:1em;color:#555;margin-top:1.4em}
|
|
95
|
+
pre{white-space:pre-wrap;word-break:break-word;background:#fff;border:1px solid #e0e0e0;padding:12px;border-radius:8px;font-size:.78em;max-height:38vh;overflow:auto}
|
|
96
|
+
.row{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
|
|
97
|
+
.btn{flex:1 1 200px;font-size:1.05em;padding:14px 18px;border:0;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;text-align:center;text-decoration:none;display:inline-block}
|
|
98
|
+
.btn-primary{background:#1a73e8}
|
|
99
|
+
.btn-primary:active{background:#0d47a1}
|
|
100
|
+
.btn-vendor{background:#137333}
|
|
101
|
+
.btn-vendor:active{background:#0b5a25}
|
|
102
|
+
.status{margin:8px 0;font-weight:600}
|
|
103
|
+
.ok{color:#137333}
|
|
104
|
+
.err{color:#c5221f}
|
|
80
105
|
small{color:#555}
|
|
81
|
-
|
|
106
|
+
details{margin:14px 0}
|
|
107
|
+
.footer{margin-top:24px;padding-top:12px;border-top:1px solid #e0e0e0;color:#777;font-size:.85em}
|
|
82
108
|
</style></head><body>
|
|
83
109
|
<h1>${escapeHtml(label)}</h1>
|
|
84
|
-
<p><small>Mneme cross-device
|
|
85
|
-
|
|
86
|
-
<
|
|
87
|
-
<
|
|
88
|
-
<
|
|
89
|
-
|
|
110
|
+
<p><small>Mneme cross-device brain transfer. No app install needed on this device. Tap the buttons below in order.</small></p>
|
|
111
|
+
|
|
112
|
+
<h2>Step 1 — Copy the brain</h2>
|
|
113
|
+
<div class="row">
|
|
114
|
+
<button id="cp" class="btn btn-primary" onclick="copyAndStatus()">📋 Copy soul prompt</button>
|
|
115
|
+
</div>
|
|
116
|
+
<p class="status" id="s"></p>
|
|
117
|
+
|
|
118
|
+
<h2>Step 2 — Open ${escapeHtml(meta.name)} and paste</h2>
|
|
119
|
+
<div class="row">
|
|
120
|
+
<a href="${escapeHtml(meta.url)}" target="_blank" rel="noopener" class="btn btn-vendor">🚀 Open ${escapeHtml(meta.name)}</a>
|
|
121
|
+
</div>
|
|
122
|
+
<p><small>After ${escapeHtml(meta.name)} opens, long-press the message input → Paste → Send. The receiving AI will read the LIVE STATE block at the top of the prompt and continue your conversation with current Mneme context.</small></p>
|
|
123
|
+
|
|
124
|
+
<details><summary>Show / verify the soul prompt</summary>
|
|
90
125
|
<pre id="p">${escapeHtml(payload)}</pre>
|
|
91
126
|
</details>
|
|
127
|
+
|
|
128
|
+
<div class="footer">
|
|
129
|
+
Served by Mneme BEACON · ephemeral local server · auto-stops after 10 min idle · <span id="ts"></span>
|
|
130
|
+
</div>
|
|
131
|
+
|
|
132
|
+
<script>
|
|
133
|
+
function copyAndStatus(){
|
|
134
|
+
const el = document.getElementById('p');
|
|
135
|
+
const s = document.getElementById('s');
|
|
136
|
+
if (!navigator.clipboard) { s.textContent = '⚠ Browser does not support auto-copy. Long-press the soul prompt below + Copy manually.'; s.className = 'status err'; return; }
|
|
137
|
+
navigator.clipboard.writeText(el.textContent).then(()=>{
|
|
138
|
+
s.textContent = '✓ Copied! Tap "Open ${meta.name.replace(/'/g, "\\'")}" above, then paste in the chat box.';
|
|
139
|
+
s.className = 'status ok';
|
|
140
|
+
}, (err)=>{
|
|
141
|
+
s.textContent = '⚠ Copy failed: ' + err.message + ' — long-press the soul prompt below + Copy manually.';
|
|
142
|
+
s.className = 'status err';
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
document.getElementById('ts').textContent = new Date().toLocaleString();
|
|
146
|
+
</script>
|
|
92
147
|
</body></html>`;
|
|
93
148
|
}
|
|
94
149
|
/** Spawn a local HTTP server that serves the soul prompt at one URL.
|
|
@@ -139,7 +194,12 @@ export async function spawnBeacon(input) {
|
|
|
139
194
|
server = null;
|
|
140
195
|
actualPort = null;
|
|
141
196
|
}
|
|
142
|
-
|
|
197
|
+
// v2.9.3: if caller bound to 127.0.0.1 only, the server is NOT reachable
|
|
198
|
+
// on LAN IPs — don't lie to the AI agent by advertising URLs that will
|
|
199
|
+
// throw ECONNREFUSED when scanned. Only surface LAN IPs when we bound
|
|
200
|
+
// to a wildcard or all-interfaces address.
|
|
201
|
+
const lanReachable = bindHost === "0.0.0.0" || bindHost === "::" || bindHost === "" || bindHost === "::0";
|
|
202
|
+
const lanIPs = lanReachable ? detectLanIPs() : [];
|
|
143
203
|
const paths = [];
|
|
144
204
|
// PATH 1 — clipboard (same-device 1-click)
|
|
145
205
|
paths.push({
|
package/dist/beacon/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/beacon/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,EAAE,YAAY,EAA0D,MAAM,WAAW,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AA8BrD,MAAM,YAAY,GAAG,IAAI,CAAC;AAE1B,SAAS,YAAY;IACnB,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;IACnC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACzC,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,CAAC,QAAQ;gBAAE,SAAS;YACzB,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AACtG,CAAC;AAED,SAAS,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/beacon/index.ts"],"names":[],"mappings":"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"}
|