@batalabs/virlow-mcp-core 3.84.2 → 3.85.0
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/cjs/memories.d.ts +3 -0
- package/dist/cjs/memories.js +5 -0
- package/dist/cjs/memory-secrets.d.ts +7 -2
- package/dist/cjs/memory-secrets.js +52 -4
- package/dist/cjs/tool-annotations.d.ts +82 -0
- package/dist/cjs/tool-annotations.js +160 -0
- package/dist/cjs/widgets.d.ts +119 -0
- package/dist/cjs/widgets.js +425 -0
- package/dist/memories.d.ts +3 -0
- package/dist/memories.d.ts.map +1 -1
- package/dist/memories.js +5 -0
- package/dist/memories.js.map +1 -1
- package/dist/memory-secrets.d.ts +7 -2
- package/dist/memory-secrets.d.ts.map +1 -1
- package/dist/memory-secrets.js +52 -4
- package/dist/memory-secrets.js.map +1 -1
- package/dist/tool-annotations.d.ts +83 -0
- package/dist/tool-annotations.d.ts.map +1 -0
- package/dist/tool-annotations.js +156 -0
- package/dist/tool-annotations.js.map +1 -0
- package/dist/tools.d.ts +8 -2
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +186 -63
- package/dist/tools.js.map +1 -1
- package/dist/widgets.d.ts +120 -0
- package/dist/widgets.d.ts.map +1 -0
- package/dist/widgets.js +420 -0
- package/dist/widgets.js.map +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1,425 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WIDGET_PARTS = exports.WIDGET_RESOURCES = exports.TOOL_WIDGETS = exports.CONTEXT_CARD_FACTS = exports.KIND_COLORS = exports.VIRLOW_APP_URL = exports.MEMORY_CONTEXT_URI = exports.SAVED_MEMORY_URI = exports.WIDGET_MIME_TYPE = void 0;
|
|
4
|
+
exports.widgetToolMeta = widgetToolMeta;
|
|
5
|
+
exports.readWidget = readWidget;
|
|
6
|
+
exports.widgetHtml = widgetHtml;
|
|
7
|
+
/** The MCP Apps resource type. ChatGPT reads it too. */
|
|
8
|
+
exports.WIDGET_MIME_TYPE = 'text/html;profile=mcp-app';
|
|
9
|
+
exports.SAVED_MEMORY_URI = 'ui://widget/saved-memory.html';
|
|
10
|
+
exports.MEMORY_CONTEXT_URI = 'ui://widget/memory-context.html';
|
|
11
|
+
/** Where "Open in Virlow" goes. The web app has no per-memory route, so it
|
|
12
|
+
* opens the app itself. */
|
|
13
|
+
exports.VIRLOW_APP_URL = 'https://app.virlow.com';
|
|
14
|
+
/**
|
|
15
|
+
* The thirteen kind colours, light and dark. A copy of KIND_COLORS in the
|
|
16
|
+
* web app (src/lib/entityKinds.ts), which cannot be imported here: that
|
|
17
|
+
* module pulls in lucide-react. A test holds the two to the same values.
|
|
18
|
+
*/
|
|
19
|
+
exports.KIND_COLORS = {
|
|
20
|
+
person: { light: '#4F6D8F', dark: '#8FB0D0' },
|
|
21
|
+
organization: { light: '#C2603E', dark: '#E08A67' },
|
|
22
|
+
project: { light: '#A27B17', dark: '#F2C66D' },
|
|
23
|
+
tool: { light: '#5E7B4A', dark: '#9DBB85' },
|
|
24
|
+
place: { light: '#7A5A8C', dark: '#B79BC8' },
|
|
25
|
+
event: { light: '#CB2A61', dark: '#F6638A' },
|
|
26
|
+
topic: { light: '#0C9184', dark: '#82DCCF' },
|
|
27
|
+
product: { light: '#9E2185', dark: '#EA78CD' },
|
|
28
|
+
media: { light: '#6E4A2E', dark: '#C8A07E' },
|
|
29
|
+
pet: { light: '#C16B10', dark: '#F59C4D' },
|
|
30
|
+
group: { light: '#10953A', dark: '#6AD177' },
|
|
31
|
+
goal: { light: '#5D47B2', dark: '#AC8FFA' },
|
|
32
|
+
other: { light: '#6B665C', dark: '#9A9488' },
|
|
33
|
+
};
|
|
34
|
+
/** How many facts the context card shows; the text result keeps them all. */
|
|
35
|
+
exports.CONTEXT_CARD_FACTS = 5;
|
|
36
|
+
const VIEW_URI = {
|
|
37
|
+
saved: exports.SAVED_MEMORY_URI,
|
|
38
|
+
context: exports.MEMORY_CONTEXT_URI,
|
|
39
|
+
};
|
|
40
|
+
/** Which tools show which card. Tools not named here have no UI. */
|
|
41
|
+
exports.TOOL_WIDGETS = {
|
|
42
|
+
add_memory: 'saved',
|
|
43
|
+
update_memory: 'saved',
|
|
44
|
+
memory_context: 'context',
|
|
45
|
+
};
|
|
46
|
+
/** The tool-side `_meta` linking a tool to its card: the MCP Apps key and
|
|
47
|
+
* ChatGPT's alias for it. add_memory's card calls delete_memory (Undo), so
|
|
48
|
+
* it is marked as allowed to call tools. */
|
|
49
|
+
function widgetToolMeta(tool) {
|
|
50
|
+
const view = exports.TOOL_WIDGETS[tool];
|
|
51
|
+
if (!view)
|
|
52
|
+
return undefined;
|
|
53
|
+
const uri = VIEW_URI[view];
|
|
54
|
+
return {
|
|
55
|
+
ui: { resourceUri: uri },
|
|
56
|
+
'openai/outputTemplate': uri,
|
|
57
|
+
...(tool === 'add_memory' && { 'openai/widgetAccessible': true }),
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* The resource-side `_meta`. Empty CSP lists are the secure default (no
|
|
62
|
+
* network); they are stated rather than omitted so a reviewer reads the
|
|
63
|
+
* decision. `openai/widgetCSP` is ChatGPT's older spelling of the same
|
|
64
|
+
* thing; redirect_domains lets "Open in Virlow" go straight to the app.
|
|
65
|
+
*/
|
|
66
|
+
function resourceMeta(view) {
|
|
67
|
+
return {
|
|
68
|
+
ui: {
|
|
69
|
+
prefersBorder: true,
|
|
70
|
+
csp: { connectDomains: [], resourceDomains: [], frameDomains: [] },
|
|
71
|
+
},
|
|
72
|
+
'openai/widgetDescription': view === 'saved'
|
|
73
|
+
? 'Shows the memory just saved to Virlow, with Undo and a link to the app. The card already shows the fact, so a one-line confirmation is enough.'
|
|
74
|
+
: 'Shows a short summary of what Virlow has saved about this user or project.',
|
|
75
|
+
'openai/widgetCSP': {
|
|
76
|
+
connect_domains: [],
|
|
77
|
+
resource_domains: [],
|
|
78
|
+
redirect_domains: [exports.VIRLOW_APP_URL],
|
|
79
|
+
},
|
|
80
|
+
'openai/widgetPrefersBorder': true,
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
/** Everything the server needs to list and serve the two resources. */
|
|
84
|
+
exports.WIDGET_RESOURCES = [
|
|
85
|
+
{
|
|
86
|
+
name: 'saved-memory-card',
|
|
87
|
+
uri: exports.SAVED_MEMORY_URI,
|
|
88
|
+
title: 'Saved to Virlow',
|
|
89
|
+
description: 'Inline card shown after a memory is saved or updated.',
|
|
90
|
+
view: 'saved',
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
name: 'memory-context-card',
|
|
94
|
+
uri: exports.MEMORY_CONTEXT_URI,
|
|
95
|
+
title: 'What Virlow knows',
|
|
96
|
+
description: 'Inline card summarising the memories returned by memory_context.',
|
|
97
|
+
view: 'context',
|
|
98
|
+
},
|
|
99
|
+
];
|
|
100
|
+
/** A `resources/read` result for one card. */
|
|
101
|
+
function readWidget(view) {
|
|
102
|
+
const uri = VIEW_URI[view];
|
|
103
|
+
return {
|
|
104
|
+
contents: [{ uri, mimeType: exports.WIDGET_MIME_TYPE, text: widgetHtml(view), _meta: resourceMeta(view) }],
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
// ---------- the page ----------
|
|
108
|
+
/** The Virlow mark from public/favicon.svg: the italic v and its dot. */
|
|
109
|
+
const MARK_SVG = '<svg class="mark" viewBox="0 0 64 64" width="20" height="20" aria-hidden="true" focusable="false">' +
|
|
110
|
+
'<rect width="64" height="64" rx="12" fill="#fbfaf7"/>' +
|
|
111
|
+
'<g transform="translate(6.172854 51.207268) scale(2.201335896 -2.201335896)">' +
|
|
112
|
+
'<path d="M7.8 -0.4Q6.8 -0.4 6.4 -0.2Q6.1 0.1 6.1 0.4Q6.1 0.6 6.1 0.8Q6.1 0.9 6.1 1.1Q6.1 1.3 6.1 1.7Q6 3.9 5.7 6.3Q5.3 8.7 4.6 10.8Q3.9 12.9 3.1 14.3Q2.9 14.5 2.7 14.7Q2.5 14.8 2.3 14.8Q2 14.8 1.7 14.7Q1.4 14.5 1 14.2Q0.8 13.9 0.5 13.9Q0.4 13.9 0.1 14.1Q-0.1 14.3 -0.1 14.7Q-0.1 14.9 0 15.1Q1 16.5 2.3 17.2Q3.6 17.8 5.1 17.8Q7.1 17.8 8.2 15.9Q9 14.5 9.5 12.6Q9.9 10.8 10.1 8.7Q10.3 6.6 10.4 4.5Q10.4 4.1 10 3.1Q9.7 2.2 9.3 1.7Q10.3 2.3 11.4 3.3Q12.5 4.3 13.4 5.6Q14.4 6.9 15 8.3Q15.6 9.7 15.6 11.1Q15.6 12 15.4 12.6Q15.2 13.3 14.9 14Q14.7 14.7 14.7 15.5Q14.7 16.6 15.4 17.2Q16.1 17.8 17.2 17.8Q18.2 17.8 18.9 17.2Q19.5 16.6 19.8 15.8Q20.1 14.9 20.1 13.9Q20.1 12.4 19.4 10.7Q18.7 9 17.5 7.3Q16.2 5.7 14.8 4.2Q13.3 2.7 11.8 1.5Q10.3 0.4 9 -0.3Q9 -0.4 8.8 -0.4Q8.6 -0.4 7.8 -0.4Z" fill="#1f1d1a"/>' +
|
|
113
|
+
'<path d="M17.7 2.6Q17.7 3.9 18.5 4.9Q19.4 5.8 20.8 5.8Q22.1 5.8 22.8 5Q23.5 4.2 23.5 3Q23.5 1.6 22.6 0.6Q21.7 -0.4 20.4 -0.4Q19 -0.4 18.3 0.5Q17.7 1.4 17.7 2.6Z" fill="#775825"/>' +
|
|
114
|
+
'</g></svg>';
|
|
115
|
+
function kindVars(mode) {
|
|
116
|
+
return Object.entries(exports.KIND_COLORS)
|
|
117
|
+
.map(([kind, c]) => `--k-${kind}:${c[mode]};`)
|
|
118
|
+
.join('');
|
|
119
|
+
}
|
|
120
|
+
const LIGHT = 'color-scheme:light;--ink:#1F1D1A;--ink-2:#5E5A52;--ink-3:#6B665C;--rule:rgba(0,0,0,0.12);' +
|
|
121
|
+
'--chip:rgba(0,0,0,0.05);--btn:#4F6D8F;--btn-ink:#FFFFFF;--btn-hover:#33506E;--ghost-hover:rgba(0,0,0,0.05);' +
|
|
122
|
+
'--ring:#33506E;--danger:#B3402E;--ok:#4C783C;' +
|
|
123
|
+
kindVars('light');
|
|
124
|
+
const DARK = 'color-scheme:dark;--ink:#EDE7DD;--ink-2:#B8B0A4;--ink-3:#9A9488;--rule:rgba(255,255,255,0.16);' +
|
|
125
|
+
'--chip:rgba(255,255,255,0.07);--btn:#8FB0D0;--btn-ink:#14181D;--btn-hover:#B8D1E8;--ghost-hover:rgba(255,255,255,0.08);' +
|
|
126
|
+
'--ring:#B8D1E8;--danger:#E07A68;--ok:#9DBB85;' +
|
|
127
|
+
kindVars('dark');
|
|
128
|
+
/** Kept to body and body-small sizes, system fonts, no inner scrolling: the
|
|
129
|
+
* Apps SDK rules for an inline card. Long text is clamped, not scrolled. */
|
|
130
|
+
const CSS = `
|
|
131
|
+
:root{${LIGHT}}
|
|
132
|
+
:root[data-theme="dark"]{${DARK}}
|
|
133
|
+
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){${DARK}}}
|
|
134
|
+
*{box-sizing:border-box}
|
|
135
|
+
html,body{margin:0;padding:0;background:transparent;overflow:hidden}
|
|
136
|
+
body{font:14px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);-webkit-font-smoothing:antialiased}
|
|
137
|
+
.card{padding:14px 16px;display:flex;flex-direction:column;gap:8px}
|
|
138
|
+
.head{display:flex;align-items:center;gap:8px;min-width:0}
|
|
139
|
+
.mark{flex:none;border-radius:5px;box-shadow:0 0 0 1px var(--rule)}
|
|
140
|
+
.status{font-size:13px;font-weight:600;color:var(--ink-2);outline:none}
|
|
141
|
+
.status.removed{color:var(--ink-3)}
|
|
142
|
+
.ns{margin-left:auto;font-size:12px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:45%}
|
|
143
|
+
.label{font-weight:600;margin:0;overflow-wrap:anywhere}
|
|
144
|
+
.fact{margin:0;color:var(--ink-2);overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}
|
|
145
|
+
.removed-body .label,.removed-body .fact{text-decoration:line-through;color:var(--ink-3)}
|
|
146
|
+
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
|
|
147
|
+
.chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:2px 9px 2px 7px;border-radius:999px;background:var(--chip);font-size:12px;color:var(--ink)}
|
|
148
|
+
.chip span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
|
|
149
|
+
.dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--k-other)}
|
|
150
|
+
${Object.keys(exports.KIND_COLORS)
|
|
151
|
+
.map((k) => `.chip[data-kind="${k}"] .dot{background:var(--k-${k})}`)
|
|
152
|
+
.join('\n')}
|
|
153
|
+
.facts{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}
|
|
154
|
+
.facts li{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;color:var(--ink-2)}
|
|
155
|
+
.facts b{color:var(--ink);font-weight:600}
|
|
156
|
+
.note{margin:0;font-size:12px;color:var(--ink-3)}
|
|
157
|
+
.error{margin:0;font-size:12px;color:var(--danger)}
|
|
158
|
+
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}
|
|
159
|
+
button{font:inherit;font-size:13px;font-weight:600;border-radius:8px;padding:6px 12px;cursor:pointer;border:1px solid transparent}
|
|
160
|
+
button:focus-visible{outline:2px solid var(--ring);outline-offset:2px}
|
|
161
|
+
button[disabled]{opacity:.6;cursor:default}
|
|
162
|
+
.primary{background:var(--btn);color:var(--btn-ink)}
|
|
163
|
+
.primary:hover:not([disabled]){background:var(--btn-hover)}
|
|
164
|
+
.secondary{background:transparent;color:var(--ink);border-color:var(--rule)}
|
|
165
|
+
.secondary:hover:not([disabled]){background:var(--ghost-hover)}
|
|
166
|
+
.empty{margin:0;color:var(--ink-3)}
|
|
167
|
+
`;
|
|
168
|
+
/**
|
|
169
|
+
* The card's script. Plain ES2017 in a string, because it ships inside the
|
|
170
|
+
* HTML rather than through the package build. It speaks to whichever host it
|
|
171
|
+
* finds:
|
|
172
|
+
*
|
|
173
|
+
* - ChatGPT injects `window.openai`: toolOutput (the structuredContent),
|
|
174
|
+
* widgetState / setWidgetState, callTool, openExternal, theme, and an
|
|
175
|
+
* `openai:set_globals` event when any of them change.
|
|
176
|
+
* - Other MCP Apps hosts speak JSON-RPC over postMessage: the card sends
|
|
177
|
+
* ui/initialize, receives ui/notifications/tool-result, and calls
|
|
178
|
+
* tools/call and ui/open-link.
|
|
179
|
+
*/
|
|
180
|
+
const SCRIPT = `
|
|
181
|
+
(function () {
|
|
182
|
+
'use strict';
|
|
183
|
+
var APP_URL = ${JSON.stringify(exports.VIRLOW_APP_URL)};
|
|
184
|
+
var KIND_LABEL = {person:'person',organization:'organization',project:'project',tool:'tool',place:'place',event:'event',topic:'topic',product:'product',media:'media',pet:'pet',group:'group',goal:'goal',other:'other'};
|
|
185
|
+
var root = document.getElementById('root');
|
|
186
|
+
var view = document.body.getAttribute('data-view') === 'context' ? 'context' : 'saved';
|
|
187
|
+
var state = { data: null, removed: false, busy: false, error: '' };
|
|
188
|
+
var bridge = null;
|
|
189
|
+
|
|
190
|
+
function openai() { return window.openai || null; }
|
|
191
|
+
|
|
192
|
+
function el(tag, cls, text) {
|
|
193
|
+
var node = document.createElement(tag);
|
|
194
|
+
if (cls) node.className = cls;
|
|
195
|
+
if (text != null) node.textContent = String(text);
|
|
196
|
+
return node;
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
function applyTheme(theme) {
|
|
200
|
+
if (theme === 'light' || theme === 'dark') document.documentElement.setAttribute('data-theme', theme);
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
function header(status, ns, removed) {
|
|
204
|
+
var head = el('div', 'head');
|
|
205
|
+
var mark = document.createElement('span');
|
|
206
|
+
mark.innerHTML = ${JSON.stringify(MARK_SVG)};
|
|
207
|
+
head.appendChild(mark.firstChild);
|
|
208
|
+
var s = el('span', 'status' + (removed ? ' removed' : ''), status);
|
|
209
|
+
s.id = 'status';
|
|
210
|
+
s.setAttribute('tabindex', '-1');
|
|
211
|
+
s.setAttribute('role', 'status');
|
|
212
|
+
s.setAttribute('aria-live', 'polite');
|
|
213
|
+
head.appendChild(s);
|
|
214
|
+
if (ns) {
|
|
215
|
+
var n = el('span', 'ns', ns);
|
|
216
|
+
n.title = 'Project: ' + ns;
|
|
217
|
+
head.appendChild(n);
|
|
218
|
+
}
|
|
219
|
+
return head;
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
function chips(entities, max) {
|
|
223
|
+
var list = el('ul', 'chips');
|
|
224
|
+
list.setAttribute('aria-label', 'About');
|
|
225
|
+
var shown = entities.slice(0, max);
|
|
226
|
+
for (var i = 0; i < shown.length; i++) {
|
|
227
|
+
var e = shown[i];
|
|
228
|
+
var kind = KIND_LABEL[e.kind] ? e.kind : 'other';
|
|
229
|
+
var li = el('li', 'chip');
|
|
230
|
+
li.setAttribute('data-kind', kind);
|
|
231
|
+
li.title = e.name + ' (' + kind + ')';
|
|
232
|
+
li.appendChild(el('span', 'dot')).setAttribute('aria-hidden', 'true');
|
|
233
|
+
var name = el('span', null, e.name);
|
|
234
|
+
li.appendChild(name);
|
|
235
|
+
var sr = el('span', 'sr', ', ' + kind);
|
|
236
|
+
sr.style.cssText = 'position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)';
|
|
237
|
+
li.appendChild(sr);
|
|
238
|
+
list.appendChild(li);
|
|
239
|
+
}
|
|
240
|
+
if (entities.length > max) list.appendChild(el('li', 'chip', '+' + (entities.length - max)));
|
|
241
|
+
return list;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
function button(label, cls, onClick, aria) {
|
|
245
|
+
var b = el('button', cls, label);
|
|
246
|
+
b.type = 'button';
|
|
247
|
+
if (aria) b.setAttribute('aria-label', aria);
|
|
248
|
+
b.addEventListener('click', onClick);
|
|
249
|
+
return b;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
function openApp() {
|
|
253
|
+
var host = openai();
|
|
254
|
+
if (host && typeof host.openExternal === 'function') { host.openExternal({ href: APP_URL }); return; }
|
|
255
|
+
if (bridge) { bridge.request('ui/open-link', { url: APP_URL }).catch(function () {}); return; }
|
|
256
|
+
window.open(APP_URL, '_blank', 'noopener');
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
function callTool(name, args) {
|
|
260
|
+
var host = openai();
|
|
261
|
+
if (host && typeof host.callTool === 'function') return Promise.resolve(host.callTool(name, args));
|
|
262
|
+
if (bridge) return bridge.request('tools/call', { name: name, arguments: args });
|
|
263
|
+
return Promise.reject(new Error('This host cannot run tools from a card.'));
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
function persist() {
|
|
267
|
+
var host = openai();
|
|
268
|
+
if (host && typeof host.setWidgetState === 'function') {
|
|
269
|
+
try { host.setWidgetState({ removed: state.removed }); } catch (e) { /* the card still shows it */ }
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
function undo() {
|
|
274
|
+
var d = state.data;
|
|
275
|
+
if (!d || !d.id || state.busy || state.removed) return;
|
|
276
|
+
state.busy = true;
|
|
277
|
+
state.error = '';
|
|
278
|
+
render();
|
|
279
|
+
callTool('delete_memory', { id: d.id })
|
|
280
|
+
.then(function (result) {
|
|
281
|
+
if (result && result.isError) throw new Error('refused');
|
|
282
|
+
state.removed = true;
|
|
283
|
+
persist();
|
|
284
|
+
})
|
|
285
|
+
.catch(function () { state.error = 'Could not remove it. Try again.'; })
|
|
286
|
+
.then(function () {
|
|
287
|
+
state.busy = false;
|
|
288
|
+
render();
|
|
289
|
+
var s = document.getElementById('status');
|
|
290
|
+
if (state.removed && s) s.focus();
|
|
291
|
+
});
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
function renderSaved(d) {
|
|
295
|
+
var card = el('div', 'card' + (state.removed ? ' removed-body' : ''));
|
|
296
|
+
var status = state.removed ? 'Removed from Virlow' : d.updated ? 'Updated in Virlow' : 'Saved to Virlow';
|
|
297
|
+
card.appendChild(header(status, d.namespace, state.removed));
|
|
298
|
+
card.appendChild(el('p', 'label', d.label));
|
|
299
|
+
card.appendChild(el('p', 'fact', d.text));
|
|
300
|
+
if (d.entities && d.entities.length) card.appendChild(chips(d.entities, 8));
|
|
301
|
+
if (state.removed) card.appendChild(el('p', 'note', 'Moved to the Trash. You can restore it in the Virlow app.'));
|
|
302
|
+
if (state.error) card.appendChild(el('p', 'error', state.error));
|
|
303
|
+
var actions = el('div', 'actions');
|
|
304
|
+
// Undo deletes the memory, so it is offered only for a new one: on an
|
|
305
|
+
// update it would delete what was there before, not reverse the change.
|
|
306
|
+
if (!d.updated && !state.removed) {
|
|
307
|
+
var u = button(state.busy ? 'Removing...' : 'Undo', 'primary', undo, 'Undo: remove this memory from Virlow');
|
|
308
|
+
if (state.busy) u.disabled = true;
|
|
309
|
+
actions.appendChild(u);
|
|
310
|
+
}
|
|
311
|
+
actions.appendChild(button('Open in Virlow', 'secondary', openApp, 'Open Virlow in a new tab'));
|
|
312
|
+
card.appendChild(actions);
|
|
313
|
+
return card;
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
function renderContext(d) {
|
|
317
|
+
var card = el('div', 'card');
|
|
318
|
+
card.appendChild(header('What Virlow knows', d.namespace, false));
|
|
319
|
+
var facts = d.facts || [];
|
|
320
|
+
if (facts.length) {
|
|
321
|
+
var list = el('ul', 'facts');
|
|
322
|
+
for (var i = 0; i < facts.length; i++) {
|
|
323
|
+
var li = el('li');
|
|
324
|
+
li.appendChild(el('b', null, facts[i].label));
|
|
325
|
+
li.appendChild(document.createTextNode(': ' + facts[i].text));
|
|
326
|
+
list.appendChild(li);
|
|
327
|
+
}
|
|
328
|
+
card.appendChild(list);
|
|
329
|
+
} else {
|
|
330
|
+
card.appendChild(el('p', 'empty', 'Nothing saved yet.'));
|
|
331
|
+
}
|
|
332
|
+
var people = (d.entities || []).filter(function (e) { return e.kind === 'person' || e.kind === 'project'; });
|
|
333
|
+
if (people.length) card.appendChild(chips(people, 6));
|
|
334
|
+
if (d.paused) card.appendChild(el('p', 'note', 'Saving new memories is paused.'));
|
|
335
|
+
var actions = el('div', 'actions');
|
|
336
|
+
actions.appendChild(button('Open in Virlow', 'secondary', openApp, 'Open Virlow in a new tab'));
|
|
337
|
+
card.appendChild(actions);
|
|
338
|
+
return card;
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
function render() {
|
|
342
|
+
root.textContent = '';
|
|
343
|
+
var d = state.data;
|
|
344
|
+
if (!d || typeof d !== 'object') return;
|
|
345
|
+
root.appendChild(view === 'context' ? renderContext(d) : renderSaved(d));
|
|
346
|
+
if (bridge) bridge.resized();
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
function fromOpenai() {
|
|
350
|
+
var host = openai();
|
|
351
|
+
if (!host) return;
|
|
352
|
+
applyTheme(host.theme);
|
|
353
|
+
if (host.toolOutput && typeof host.toolOutput === 'object') state.data = host.toolOutput;
|
|
354
|
+
var ws = host.widgetState;
|
|
355
|
+
if (ws && ws.removed === true) state.removed = true;
|
|
356
|
+
render();
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
function startBridge() {
|
|
360
|
+
var nextId = 1;
|
|
361
|
+
var pending = {};
|
|
362
|
+
var lastHeight = 0;
|
|
363
|
+
function post(msg) { window.parent.postMessage(msg, '*'); }
|
|
364
|
+
bridge = {
|
|
365
|
+
request: function (method, params) {
|
|
366
|
+
return new Promise(function (resolve, reject) {
|
|
367
|
+
var id = nextId++;
|
|
368
|
+
pending[id] = { resolve: resolve, reject: reject };
|
|
369
|
+
post({ jsonrpc: '2.0', id: id, method: method, params: params });
|
|
370
|
+
});
|
|
371
|
+
},
|
|
372
|
+
notify: function (method, params) { post({ jsonrpc: '2.0', method: method, params: params || {} }); },
|
|
373
|
+
resized: function () {
|
|
374
|
+
var h = Math.ceil(document.documentElement.getBoundingClientRect().height);
|
|
375
|
+
if (h && h !== lastHeight) { lastHeight = h; bridge.notify('ui/notifications/size-changed', { height: h }); }
|
|
376
|
+
}
|
|
377
|
+
};
|
|
378
|
+
window.addEventListener('message', function (event) {
|
|
379
|
+
if (event.source !== window.parent) return;
|
|
380
|
+
var m = event.data;
|
|
381
|
+
if (!m || m.jsonrpc !== '2.0') return;
|
|
382
|
+
if (m.method === undefined && m.id != null && pending[m.id]) {
|
|
383
|
+
var p = pending[m.id];
|
|
384
|
+
delete pending[m.id];
|
|
385
|
+
if (m.error) p.reject(new Error(m.error.message || 'error')); else p.resolve(m.result);
|
|
386
|
+
return;
|
|
387
|
+
}
|
|
388
|
+
var params = m.params || {};
|
|
389
|
+
if (m.method === 'ui/notifications/tool-result') {
|
|
390
|
+
if (params.structuredContent) { state.data = params.structuredContent; render(); }
|
|
391
|
+
} else if (m.method === 'ui/notifications/host-context-changed') {
|
|
392
|
+
applyTheme(params.theme);
|
|
393
|
+
} else if (m.method === 'ui/resource-teardown' && m.id != null) {
|
|
394
|
+
post({ jsonrpc: '2.0', id: m.id, result: {} });
|
|
395
|
+
}
|
|
396
|
+
});
|
|
397
|
+
bridge.request('ui/initialize', {
|
|
398
|
+
appInfo: { name: 'virlow-card', version: '1' },
|
|
399
|
+
appCapabilities: {},
|
|
400
|
+
protocolVersion: '2026-01-26'
|
|
401
|
+
}).then(function (result) {
|
|
402
|
+
if (result && result.hostContext) applyTheme(result.hostContext.theme);
|
|
403
|
+
bridge.notify('ui/notifications/initialized');
|
|
404
|
+
}).catch(function () {});
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
if (openai()) {
|
|
408
|
+
window.addEventListener('openai:set_globals', fromOpenai);
|
|
409
|
+
fromOpenai();
|
|
410
|
+
} else if (window.parent && window.parent !== window) {
|
|
411
|
+
startBridge();
|
|
412
|
+
}
|
|
413
|
+
})();
|
|
414
|
+
`;
|
|
415
|
+
/** The whole page for one card. */
|
|
416
|
+
function widgetHtml(view) {
|
|
417
|
+
return ('<!doctype html><html lang="en"><head><meta charset="utf-8">' +
|
|
418
|
+
'<meta name="viewport" content="width=device-width,initial-scale=1">' +
|
|
419
|
+
`<title>${view === 'saved' ? 'Saved to Virlow' : 'What Virlow knows'}</title>` +
|
|
420
|
+
`<style>${CSS}</style></head>` +
|
|
421
|
+
`<body data-view="${view}"><div id="root"></div><script>${SCRIPT}</script></body></html>`);
|
|
422
|
+
}
|
|
423
|
+
/** The pieces, for the widget tests: they run the script against the page
|
|
424
|
+
* body in jsdom without a host. */
|
|
425
|
+
exports.WIDGET_PARTS = { css: CSS, script: SCRIPT };
|
package/dist/memories.d.ts
CHANGED
|
@@ -212,6 +212,9 @@ export declare class MemoryStore {
|
|
|
212
212
|
/** The namespace of a memory this session has seen, without a sync;
|
|
213
213
|
* undefined for a global memory or one not cached yet. */
|
|
214
214
|
namespaceOfCached(id: string): string | undefined;
|
|
215
|
+
/** One memory as this session has it, without a sync; undefined when it
|
|
216
|
+
* is not cached. */
|
|
217
|
+
cached(id: string): CachedMemory | undefined;
|
|
215
218
|
/** Requires a prior sync() in the same unlock to have populated the cache. */
|
|
216
219
|
list(namespace?: string): CachedMemory[];
|
|
217
220
|
update(id: string, changes: {
|
package/dist/memories.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memories.d.ts","sourceRoot":"","sources":["../src/memories.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"memories.d.ts","sourceRoot":"","sources":["../src/memories.ts"],"names":[],"mappings":"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"}
|
package/dist/memories.js
CHANGED
|
@@ -651,6 +651,11 @@ export class MemoryStore {
|
|
|
651
651
|
namespaceOfCached(id) {
|
|
652
652
|
return this.cache.get(id)?.namespace;
|
|
653
653
|
}
|
|
654
|
+
/** One memory as this session has it, without a sync; undefined when it
|
|
655
|
+
* is not cached. */
|
|
656
|
+
cached(id) {
|
|
657
|
+
return this.cache.get(id);
|
|
658
|
+
}
|
|
654
659
|
/** Requires a prior sync() in the same unlock to have populated the cache. */
|
|
655
660
|
list(namespace) {
|
|
656
661
|
this.requireSession();
|
package/dist/memories.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memories.js","sourceRoot":"","sources":["../src/memories.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"memories.js","sourceRoot":"","sources":["../src/memories.ts"],"names":[],"mappings":"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"}
|
package/dist/memory-secrets.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Refuses memories that contain credentials,
|
|
2
|
+
* Refuses memories that contain credentials, payment card and bank account
|
|
3
|
+
* numbers, or government ID numbers, before anything is written.
|
|
3
4
|
*
|
|
4
5
|
* Memories are captured automatically, so the rule cannot depend on the AI
|
|
5
6
|
* remembering not to save a key: a memory is encrypted, but it is recalled
|
|
@@ -8,7 +9,11 @@
|
|
|
8
9
|
* left out instead of retrying with the secret reworded.
|
|
9
10
|
*
|
|
10
11
|
* Deliberately narrow: patterns that are credentials with near certainty,
|
|
11
|
-
* plus long high-entropy tokens
|
|
12
|
+
* plus long high-entropy tokens, plus the restricted data that has a shape
|
|
13
|
+
* to match (card numbers and security codes, IBANs and labelled account
|
|
14
|
+
* numbers, US Social Security numbers, labelled passport, licence and
|
|
15
|
+
* national ID numbers). Health information has no such shape; the server
|
|
16
|
+
* instructions tell the model not to save it. A false positive costs one memory; a false
|
|
12
17
|
* negative puts a live key into every future prompt that recalls it.
|
|
13
18
|
*/
|
|
14
19
|
/** What secret the text holds, or null when it holds none. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-secrets.d.ts","sourceRoot":"","sources":["../src/memory-secrets.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"memory-secrets.d.ts","sourceRoot":"","sources":["../src/memory-secrets.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAyGH,8DAA8D;AAC9D,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAQtD;AAED,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,IAAI,EAAE,MAAM;CAQzB;AAED,wBAAgB,cAAc,CAAC,GAAG,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAKvD"}
|