paperclip-plugin-supermemory-otomatik 0.2.2 → 0.2.4
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 +6 -7
- package/dist/manifest.js +8 -9
- package/dist/manifest.js.map +2 -2
- package/dist/ui/index.js +10 -17
- package/dist/ui/index.js.map +2 -2
- package/dist/worker.js +26 -48
- package/dist/worker.js.map +2 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -13,7 +13,7 @@ The plugin uses Paperclip's standard plugin slots (`settingsPage`, `page`, `side
|
|
|
13
13
|
|
|
14
14
|
## Install from Paperclip
|
|
15
15
|
|
|
16
|
-
Package: [`paperclip-plugin-supermemory-otomatik`](https://www.npmjs.com/package/paperclip-plugin-supermemory-otomatik) **0.2.
|
|
16
|
+
Package: [`paperclip-plugin-supermemory-otomatik`](https://www.npmjs.com/package/paperclip-plugin-supermemory-otomatik) **0.2.3**.
|
|
17
17
|
|
|
18
18
|
1. In Paperclip, open **Settings → Plugins → Install Plugin**.
|
|
19
19
|
2. Enter `paperclip-plugin-supermemory-otomatik` and install it for the instance.
|
|
@@ -26,16 +26,15 @@ The settings form uses the active Paperclip organization to load agents and comp
|
|
|
26
26
|
|
|
27
27
|
## Configure secrets and URLs
|
|
28
28
|
|
|
29
|
-
Default OTOMATIK
|
|
29
|
+
Default OTOMATIK gateway endpoint:
|
|
30
30
|
|
|
31
|
-
-
|
|
32
|
-
- Supermemory Local API: `http://127.0.0.1:6767`
|
|
31
|
+
- `https://otomatik.tail77a9ab.ts.net:18443/mcp`
|
|
33
32
|
|
|
34
|
-
|
|
33
|
+
Paperclip reaches the gateway over Tailscale HTTPS. Tailscale Serve forwards tailnet requests to `127.0.0.1:6768`; Supermemory Local remains private at `127.0.0.1:6767` and the plugin never contacts it directly. The plugin accepts HTTPS `*.ts.net` URLs on port 443 or 18443. It upgrades the old default `http://127.0.0.1:6768/mcp` to the OTOMATIK Tailscale URL automatically.
|
|
35
34
|
|
|
36
35
|
Create/import the gateway tokens in **Paperclip → Organization Settings → Secrets** first. There must be a distinct ACL token for each agent; the gateway must bind each token to the same Paperclip organization, agent and role. Use the individual token as that agent's secret reference.
|
|
37
36
|
|
|
38
|
-
Store the Supermemory Local **master key** in a Paperclip company secret and select
|
|
37
|
+
Store the Supermemory Local **master key** in a Paperclip company secret and select it in `Secret con la chiave master Supermemory Local`. The plugin sends it only to the gateway after an Owner check, or after checking an agent's explicit assignment allowlist. The gateway uses the key server-side to call Supermemory Local; agents never receive it. Never paste it into an agent prompt, instructions file, or memory document. The worker chooses namespaces from trusted Paperclip context and the Owner's assignments; agents never supply a namespace.
|
|
39
38
|
|
|
40
39
|
## Namespaces and access rules
|
|
41
40
|
|
|
@@ -59,7 +58,7 @@ The page mirrors the Instructions layout: left content list, **Leggi / Modifica
|
|
|
59
58
|
|
|
60
59
|
Text and URL content can be edited and reindexed. Binary file contents cannot be retrieved into the editor; delete the catalog item and upload a replacement to update one. Office, audio and video formats appear in some hosted Supermemory documentation but are not documented for the installed Supermemory Local server, so this plugin does not offer them as verified Local formats.
|
|
61
60
|
|
|
62
|
-
The content is indexed as retrieval/reference material (`taskType: "superrag"`) rather than used to update a personal profile. Supermemory returns an asynchronous status; `queued` means indexing has started, not finished.
|
|
61
|
+
The content is indexed as retrieval/reference material (`taskType: "superrag"`) rather than used to update a personal profile. Text, URL, file, search, update, and delete requests all pass through the ACL gateway. The plugin sends file bytes as JSON/base64 through Paperclip; the gateway converts them to multipart before forwarding them to Local. Supermemory returns an asynchronous status; `queued` means indexing has started, not finished.
|
|
63
62
|
|
|
64
63
|
## Tools
|
|
65
64
|
|
package/dist/manifest.js
CHANGED
|
@@ -9,7 +9,7 @@ var MEMORY_ROUTE = "memory";
|
|
|
9
9
|
var manifest = {
|
|
10
10
|
id: PLUGIN_ID,
|
|
11
11
|
apiVersion: 1,
|
|
12
|
-
version: "0.2.
|
|
12
|
+
version: "0.2.3",
|
|
13
13
|
minimumHostVersion: "2026.1023.0",
|
|
14
14
|
displayName: "Supermemory (self-hosted)",
|
|
15
15
|
description: "Memory tools and an Owner-managed memory library for self-hosted Supermemory, with company-, agent-, and project-scoped access.",
|
|
@@ -35,23 +35,22 @@ var manifest = {
|
|
|
35
35
|
properties: {
|
|
36
36
|
gatewayUrl: {
|
|
37
37
|
type: "string",
|
|
38
|
-
title: "
|
|
39
|
-
description: "
|
|
40
|
-
default: "
|
|
38
|
+
title: "Gateway Supermemory su Tailscale HTTPS",
|
|
39
|
+
description: "URL HTTPS tailnet del gateway ACL e delle operazioni Owner. Esempio OTOMATIK: https://otomatik.tail77a9ab.ts.net:18443/mcp. Supermemory Local resta privato sul server.",
|
|
40
|
+
default: "https://otomatik.tail77a9ab.ts.net:18443/mcp"
|
|
41
41
|
},
|
|
42
42
|
localApiUrl: {
|
|
43
43
|
type: "string",
|
|
44
|
-
title: "Supermemory Local API URL",
|
|
45
|
-
description: "
|
|
46
|
-
default: "http://127.0.0.1:6767"
|
|
44
|
+
title: "Legacy Supermemory Local API URL",
|
|
45
|
+
description: "Legacy value retained for existing configurations; ignored since plugin 0.2.3. The Local API is reached only by the server-side gateway."
|
|
47
46
|
},
|
|
48
47
|
adminApiKeyRef: {
|
|
49
48
|
// Paperclip persists a secret-ref format as an object binding, even
|
|
50
49
|
// though the format marker historically describes a string picker.
|
|
51
50
|
type: ["string", "object"],
|
|
52
51
|
format: "secret-ref",
|
|
53
|
-
title: "
|
|
54
|
-
description: "
|
|
52
|
+
title: "Secret con la chiave master Supermemory Local",
|
|
53
|
+
description: "Usata come credenziale per le route Owner del gateway Tailscale. Viene risolta solo dopo il controllo Owner o per una ricerca con namespace assegnato esplicitamente; non viene esposta nei prompt."
|
|
55
54
|
},
|
|
56
55
|
agentGrants: {
|
|
57
56
|
type: "array",
|
package/dist/manifest.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../src/manifest.ts"],
|
|
4
|
-
"sourcesContent": ["import type { PaperclipPluginManifestV1 } from \"@paperclipai/plugin-sdk\";\n\nexport const PLUGIN_ID = \"paperclipai.supermemory\";\nexport const SEARCH_TOOL = \"search-approved-memory\";\nexport const SAVE_TOOL = \"submit-memory-candidate\";\nexport const MEMORY_SETTINGS_PAGE = \"supermemory-settings\";\nexport const MEMORY_PAGE = \"supermemory-memory\";\nexport const MEMORY_SIDEBAR = \"supermemory-sidebar\";\nexport const MEMORY_ROUTE = \"memory\";\n\nconst manifest: PaperclipPluginManifestV1 = {\n id: PLUGIN_ID,\n apiVersion: 1,\n version: \"0.2.
|
|
5
|
-
"mappings": ";AAEO,IAAM,YAAY;AAClB,IAAM,cAAc;AACpB,IAAM,YAAY;AAClB,IAAM,uBAAuB;AAC7B,IAAM,cAAc;AACpB,IAAM,iBAAiB;AACvB,IAAM,eAAe;AAE5B,IAAM,WAAsC;AAAA,EAC1C,IAAI;AAAA,EACJ,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,oBAAoB;AAAA,EACpB,aAAa;AAAA,EACb,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,YAAY,CAAC,aAAa,cAAc,IAAI;AAAA,EAC5C,cAAc;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,aAAa;AAAA,IACX,QAAQ;AAAA,IACR,IAAI;AAAA,EACN;AAAA,EACA,sBAAsB;AAAA,IACpB,MAAM;AAAA,IACN,YAAY;AAAA,MACV,YAAY;AAAA,QACV,MAAM;AAAA,QACN,OAAO;AAAA,QACP,aAAa;AAAA,QACb,SAAS;AAAA,MACX;AAAA,MACA,aAAa;AAAA,QACX,MAAM;AAAA,QACN,OAAO;AAAA,QACP,aAAa;AAAA,
|
|
4
|
+
"sourcesContent": ["import type { PaperclipPluginManifestV1 } from \"@paperclipai/plugin-sdk\";\n\nexport const PLUGIN_ID = \"paperclipai.supermemory\";\nexport const SEARCH_TOOL = \"search-approved-memory\";\nexport const SAVE_TOOL = \"submit-memory-candidate\";\nexport const MEMORY_SETTINGS_PAGE = \"supermemory-settings\";\nexport const MEMORY_PAGE = \"supermemory-memory\";\nexport const MEMORY_SIDEBAR = \"supermemory-sidebar\";\nexport const MEMORY_ROUTE = \"memory\";\n\nconst manifest: PaperclipPluginManifestV1 = {\n id: PLUGIN_ID,\n apiVersion: 1,\n version: \"0.2.3\",\n minimumHostVersion: \"2026.1023.0\",\n displayName: \"Supermemory (self-hosted)\",\n description: \"Memory tools and an Owner-managed memory library for self-hosted Supermemory, with company-, agent-, and project-scoped access.\",\n author: \"Otomatik\",\n categories: [\"connector\", \"automation\", \"ui\"],\n capabilities: [\n \"agent.tools.register\",\n \"agents.read\",\n \"projects.read\",\n \"access.members.read\",\n \"http.outbound\",\n \"instance.settings.register\",\n \"secrets.read-ref\",\n \"ui.page.register\",\n \"ui.sidebar.register\",\n ],\n entrypoints: {\n worker: \"./dist/worker.js\",\n ui: \"./dist/ui\",\n },\n instanceConfigSchema: {\n type: \"object\",\n properties: {\n gatewayUrl: {\n type: \"string\",\n title: \"Gateway Supermemory su Tailscale HTTPS\",\n description: \"URL HTTPS tailnet del gateway ACL e delle operazioni Owner. Esempio OTOMATIK: https://otomatik.tail77a9ab.ts.net:18443/mcp. Supermemory Local resta privato sul server.\",\n default: \"https://otomatik.tail77a9ab.ts.net:18443/mcp\",\n },\n localApiUrl: {\n type: \"string\",\n title: \"Legacy Supermemory Local API URL\",\n description: \"Legacy value retained for existing configurations; ignored since plugin 0.2.3. The Local API is reached only by the server-side gateway.\",\n },\n adminApiKeyRef: {\n // Paperclip persists a secret-ref format as an object binding, even\n // though the format marker historically describes a string picker.\n type: [\"string\", \"object\"],\n format: \"secret-ref\",\n title: \"Secret con la chiave master Supermemory Local\",\n description: \"Usata come credenziale per le route Owner del gateway Tailscale. Viene risolta solo dopo il controllo Owner o per una ricerca con namespace assegnato esplicitamente; non viene esposta nei prompt.\",\n },\n agentGrants: {\n type: \"array\",\n title: \"Authorized agents\",\n description: \"Only listed Paperclip agents can use the memory tools. Each one uses its own ACL gateway token secret, already bound to the same agent, company, and role.\",\n items: {\n type: \"object\",\n title: \"Agent grant\",\n required: [\"agentId\", \"tokenRef\"],\n properties: {\n agentId: {\n type: \"string\",\n title: \"Paperclip agent\",\n minLength: 1,\n },\n tokenRef: {\n type: [\"string\", \"object\"],\n format: \"secret-ref\",\n title: \"This agent's ACL token secret\",\n description: \"Select the Paperclip company secret containing only this agent's Supermemory ACL token.\",\n },\n },\n },\n default: [],\n },\n },\n },\n tools: [\n {\n name: SEARCH_TOOL,\n displayName: \"Search approved Supermemory\",\n description: \"Search this agent's explicitly authorized company/team compartments and any assigned agent/project namespaces. Project memory is available only when the Paperclip run is in that project and the agent is on its explicit allowlist. Do not search for credentials or personal records.\",\n parametersSchema: {\n type: \"object\",\n properties: {\n query: { type: \"string\", minLength: 1, maxLength: 300 },\n searchMode: { type: \"string\", enum: [\"hybrid\", \"memories\", \"chunks\"], default: \"hybrid\" },\n limit: { type: \"integer\", minimum: 1, maximum: 5, default: 3 },\n },\n required: [\"query\"],\n additionalProperties: false,\n },\n },\n {\n name: SAVE_TOOL,\n displayName: \"Submit a Supermemory candidate\",\n description: \"Submit one durable, non-sensitive fact or decision to this agent's role staging compartment for human review. This does not publish it to shared approved memory. Never submit credentials, personal data, customer cases, legal/health/workplace records, or full chat transcripts.\",\n parametersSchema: {\n type: \"object\",\n properties: {\n content: { type: \"string\", minLength: 20, maxLength: 1200 },\n },\n required: [\"content\"],\n additionalProperties: false,\n },\n },\n ],\n ui: {\n slots: [\n {\n type: \"settingsPage\",\n id: MEMORY_SETTINGS_PAGE,\n displayName: \"Supermemory settings\",\n exportName: \"SupermemorySettingsPage\",\n },\n {\n type: \"page\",\n id: MEMORY_PAGE,\n displayName: \"Memory\",\n exportName: \"MemoryPage\",\n routePath: MEMORY_ROUTE,\n },\n {\n type: \"sidebar\",\n id: MEMORY_SIDEBAR,\n displayName: \"Memory\",\n exportName: \"MemorySidebarLink\",\n },\n ],\n },\n};\n\nexport default manifest;\n"],
|
|
5
|
+
"mappings": ";AAEO,IAAM,YAAY;AAClB,IAAM,cAAc;AACpB,IAAM,YAAY;AAClB,IAAM,uBAAuB;AAC7B,IAAM,cAAc;AACpB,IAAM,iBAAiB;AACvB,IAAM,eAAe;AAE5B,IAAM,WAAsC;AAAA,EAC1C,IAAI;AAAA,EACJ,YAAY;AAAA,EACZ,SAAS;AAAA,EACT,oBAAoB;AAAA,EACpB,aAAa;AAAA,EACb,aAAa;AAAA,EACb,QAAQ;AAAA,EACR,YAAY,CAAC,aAAa,cAAc,IAAI;AAAA,EAC5C,cAAc;AAAA,IACZ;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,aAAa;AAAA,IACX,QAAQ;AAAA,IACR,IAAI;AAAA,EACN;AAAA,EACA,sBAAsB;AAAA,IACpB,MAAM;AAAA,IACN,YAAY;AAAA,MACV,YAAY;AAAA,QACV,MAAM;AAAA,QACN,OAAO;AAAA,QACP,aAAa;AAAA,QACb,SAAS;AAAA,MACX;AAAA,MACA,aAAa;AAAA,QACX,MAAM;AAAA,QACN,OAAO;AAAA,QACP,aAAa;AAAA,MACf;AAAA,MACA,gBAAgB;AAAA;AAAA;AAAA,QAGd,MAAM,CAAC,UAAU,QAAQ;AAAA,QACzB,QAAQ;AAAA,QACR,OAAO;AAAA,QACP,aAAa;AAAA,MACf;AAAA,MACA,aAAa;AAAA,QACX,MAAM;AAAA,QACN,OAAO;AAAA,QACP,aAAa;AAAA,QACb,OAAO;AAAA,UACL,MAAM;AAAA,UACN,OAAO;AAAA,UACP,UAAU,CAAC,WAAW,UAAU;AAAA,UAChC,YAAY;AAAA,YACV,SAAS;AAAA,cACP,MAAM;AAAA,cACN,OAAO;AAAA,cACP,WAAW;AAAA,YACb;AAAA,YACA,UAAU;AAAA,cACR,MAAM,CAAC,UAAU,QAAQ;AAAA,cACzB,QAAQ;AAAA,cACR,OAAO;AAAA,cACP,aAAa;AAAA,YACf;AAAA,UACF;AAAA,QACF;AAAA,QACA,SAAS,CAAC;AAAA,MACZ;AAAA,IACF;AAAA,EACF;AAAA,EACA,OAAO;AAAA,IACL;AAAA,MACE,MAAM;AAAA,MACN,aAAa;AAAA,MACb,aAAa;AAAA,MACb,kBAAkB;AAAA,QAChB,MAAM;AAAA,QACN,YAAY;AAAA,UACV,OAAO,EAAE,MAAM,UAAU,WAAW,GAAG,WAAW,IAAI;AAAA,UACtD,YAAY,EAAE,MAAM,UAAU,MAAM,CAAC,UAAU,YAAY,QAAQ,GAAG,SAAS,SAAS;AAAA,UACxF,OAAO,EAAE,MAAM,WAAW,SAAS,GAAG,SAAS,GAAG,SAAS,EAAE;AAAA,QAC/D;AAAA,QACA,UAAU,CAAC,OAAO;AAAA,QAClB,sBAAsB;AAAA,MACxB;AAAA,IACF;AAAA,IACA;AAAA,MACE,MAAM;AAAA,MACN,aAAa;AAAA,MACb,aAAa;AAAA,MACb,kBAAkB;AAAA,QAChB,MAAM;AAAA,QACN,YAAY;AAAA,UACV,SAAS,EAAE,MAAM,UAAU,WAAW,IAAI,WAAW,KAAK;AAAA,QAC5D;AAAA,QACA,UAAU,CAAC,SAAS;AAAA,QACpB,sBAAsB;AAAA,MACxB;AAAA,IACF;AAAA,EACF;AAAA,EACA,IAAI;AAAA,IACF,OAAO;AAAA,MACL;AAAA,QACE,MAAM;AAAA,QACN,IAAI;AAAA,QACJ,aAAa;AAAA,QACb,YAAY;AAAA,MACd;AAAA,MACA;AAAA,QACE,MAAM;AAAA,QACN,IAAI;AAAA,QACJ,aAAa;AAAA,QACb,YAAY;AAAA,QACZ,WAAW;AAAA,MACb;AAAA,MACA;AAAA,QACE,MAAM;AAAA,QACN,IAAI;AAAA,QACJ,aAAa;AAAA,QACb,YAAY;AAAA,MACd;AAAA,IACF;AAAA,EACF;AACF;AAEA,IAAO,mBAAQ;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|
package/dist/ui/index.js
CHANGED
|
@@ -13,8 +13,8 @@ var PLUGIN_ID = "paperclipai.supermemory";
|
|
|
13
13
|
|
|
14
14
|
// src/ui/index.tsx
|
|
15
15
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
16
|
-
var DEFAULT_GATEWAY = "
|
|
17
|
-
var
|
|
16
|
+
var DEFAULT_GATEWAY = "https://otomatik.tail77a9ab.ts.net:18443/mcp";
|
|
17
|
+
var LEGACY_GATEWAYS = /* @__PURE__ */ new Set(["http://127.0.0.1:6768/mcp", "http://localhost:6768/mcp"]);
|
|
18
18
|
var CONFIG_PATH = `/api/plugins/${encodeURIComponent(PLUGIN_ID)}/config`;
|
|
19
19
|
var BINARY_MAX_BYTES = 6 * 1024 * 1024;
|
|
20
20
|
var TEXT_EXTENSIONS = /* @__PURE__ */ new Set(["txt", "md", "markdown", "html", "htm", "json", "csv"]);
|
|
@@ -66,8 +66,7 @@ function pluginConfig(configJson) {
|
|
|
66
66
|
}) : [];
|
|
67
67
|
const adminRef = secretId(config.adminApiKeyRef);
|
|
68
68
|
return {
|
|
69
|
-
gatewayUrl: typeof config.gatewayUrl === "string" ? config.gatewayUrl : DEFAULT_GATEWAY,
|
|
70
|
-
localApiUrl: typeof config.localApiUrl === "string" ? config.localApiUrl : DEFAULT_LOCAL_API,
|
|
69
|
+
gatewayUrl: typeof config.gatewayUrl === "string" && !LEGACY_GATEWAYS.has(config.gatewayUrl.trim()) ? config.gatewayUrl : DEFAULT_GATEWAY,
|
|
71
70
|
...adminRef ? { adminApiKeyRef: { type: "secret_ref", secretId: adminRef } } : {},
|
|
72
71
|
agentGrants: grants
|
|
73
72
|
};
|
|
@@ -82,7 +81,7 @@ function SupermemorySettingsPage() {
|
|
|
82
81
|
const { companyId } = useHostContext();
|
|
83
82
|
const [agents, setAgents] = useState([]);
|
|
84
83
|
const [secrets, setSecrets] = useState([]);
|
|
85
|
-
const [config, setConfig] = useState({ gatewayUrl: DEFAULT_GATEWAY,
|
|
84
|
+
const [config, setConfig] = useState({ gatewayUrl: DEFAULT_GATEWAY, agentGrants: [] });
|
|
86
85
|
const [grantRows, setGrantRows] = useState([]);
|
|
87
86
|
const [loading, setLoading] = useState(true);
|
|
88
87
|
const [saving, setSaving] = useState(false);
|
|
@@ -143,7 +142,6 @@ function SupermemorySettingsPage() {
|
|
|
143
142
|
}
|
|
144
143
|
const nextConfig = {
|
|
145
144
|
gatewayUrl: config.gatewayUrl.trim() || DEFAULT_GATEWAY,
|
|
146
|
-
localApiUrl: config.localApiUrl.trim() || DEFAULT_LOCAL_API,
|
|
147
145
|
agentGrants: cleaned.map((row) => ({ agentId: row.agentId, tokenRef: { type: "secret_ref", secretId: row.tokenSecretId } }))
|
|
148
146
|
};
|
|
149
147
|
if (config.adminApiKeyRef?.secretId) nextConfig.adminApiKeyRef = config.adminApiKeyRef;
|
|
@@ -171,12 +169,7 @@ function SupermemorySettingsPage() {
|
|
|
171
169
|
/* @__PURE__ */ jsxs("label", { style: { display: "grid", gap: 6, fontSize: 13 }, children: [
|
|
172
170
|
"Gateway ACL Paperclip",
|
|
173
171
|
/* @__PURE__ */ jsx("input", { style: inputStyle, value: config.gatewayUrl, onChange: (event) => setConfig((current) => ({ ...current, gatewayUrl: event.target.value })) }),
|
|
174
|
-
/* @__PURE__ */ jsx("span", { style: mutedStyle, children: "Default OTOMATIK:
|
|
175
|
-
] }),
|
|
176
|
-
/* @__PURE__ */ jsxs("label", { style: { display: "grid", gap: 6, fontSize: 13 }, children: [
|
|
177
|
-
"API Supermemory Local",
|
|
178
|
-
/* @__PURE__ */ jsx("input", { style: inputStyle, value: config.localApiUrl, onChange: (event) => setConfig((current) => ({ ...current, localApiUrl: event.target.value })) }),
|
|
179
|
-
/* @__PURE__ */ jsx("span", { style: mutedStyle, children: "Default OTOMATIK: 127.0.0.1:6767. L\u2019endpoint deve rimanere su rete privata." })
|
|
172
|
+
/* @__PURE__ */ jsx("span", { style: mutedStyle, children: "Default OTOMATIK: HTTPS Tailscale `otomatik.tail77a9ab.ts.net:18443`. L\u2019API Supermemory resta interna al server." })
|
|
180
173
|
] }),
|
|
181
174
|
/* @__PURE__ */ jsxs("label", { style: { display: "grid", gap: 6, fontSize: 13 }, children: [
|
|
182
175
|
"Secret con la chiave master Supermemory Local",
|
|
@@ -191,7 +184,7 @@ function SupermemorySettingsPage() {
|
|
|
191
184
|
] }, secret.id))
|
|
192
185
|
] }),
|
|
193
186
|
/* @__PURE__ */ jsxs("span", { style: mutedStyle, children: [
|
|
194
|
-
"Serve
|
|
187
|
+
"Serve per autenticare il gateway nelle azioni Owner della libreria Memory e nelle ricerche di namespace assegnati. Crea o importa il secret da ",
|
|
195
188
|
/* @__PURE__ */ jsx("a", { href: "/company/settings/secrets", style: { textDecoration: "underline" }, children: "Secrets" }),
|
|
196
189
|
"."
|
|
197
190
|
] })
|
|
@@ -246,14 +239,14 @@ function MemorySidebarLink({ context }) {
|
|
|
246
239
|
{
|
|
247
240
|
...navigation.linkProps("/memory"),
|
|
248
241
|
"aria-current": isActive ? "page" : void 0,
|
|
249
|
-
className: `flex items-center gap-2.5 px-
|
|
242
|
+
className: `flex items-center gap-2.5 mx-2 rounded-lg px-2 py-1.5 pointer-coarse:py-1 text-(length:--text-compact) font-medium transition-colors ${isActive ? "bg-sidebar-accent text-sidebar-accent-foreground" : "text-foreground/80 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground"}`,
|
|
250
243
|
children: [
|
|
251
|
-
/* @__PURE__ */
|
|
244
|
+
/* @__PURE__ */ jsx("span", { "data-plugin-sidebar-icon": "true", "aria-hidden": "true", className: "flex h-4 w-4 shrink-0 items-center justify-center", children: /* @__PURE__ */ jsxs("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [
|
|
252
245
|
/* @__PURE__ */ jsx("path", { d: "M9 3.5a3 3 0 0 0-3 3v.4a3 3 0 0 0-2.5 3v1.2a3 3 0 0 0 2.5 3v.4a3 3 0 0 0 3 3h1V3.5H9Z" }),
|
|
253
246
|
/* @__PURE__ */ jsx("path", { d: "M15 3.5a3 3 0 0 1 3 3v.4a3 3 0 0 1 2.5 3v1.2a3 3 0 0 1-2.5 3v.4a3 3 0 0 1-3 3h-1V3.5h1Z" }),
|
|
254
247
|
/* @__PURE__ */ jsx("path", { d: "M8 8h2m-2 5h2m4-5h2m-2 5h2" })
|
|
255
|
-
] }),
|
|
256
|
-
/* @__PURE__ */ jsx("span", { className: "flex-1 truncate", children: "Memory" })
|
|
248
|
+
] }) }),
|
|
249
|
+
/* @__PURE__ */ jsx("span", { "data-plugin-sidebar-label": "true", className: "flex-1 truncate", children: "Memory" })
|
|
257
250
|
]
|
|
258
251
|
}
|
|
259
252
|
);
|