@memtensor/memos-local-openclaw-plugin 1.0.4-beta.9 → 1.0.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/.env.example +7 -0
- package/README.md +94 -27
- package/dist/capture/index.js +3 -1
- package/dist/capture/index.js.map +1 -1
- package/dist/client/connector.d.ts +5 -0
- package/dist/client/connector.d.ts.map +1 -1
- package/dist/client/connector.js +89 -8
- package/dist/client/connector.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +2 -1
- package/dist/config.js.map +1 -1
- package/dist/hub/server.d.ts +2 -0
- package/dist/hub/server.d.ts.map +1 -1
- package/dist/hub/server.js +240 -35
- package/dist/hub/server.js.map +1 -1
- package/dist/hub/user-manager.d.ts +9 -0
- package/dist/hub/user-manager.d.ts.map +1 -1
- package/dist/hub/user-manager.js +26 -2
- package/dist/hub/user-manager.js.map +1 -1
- package/dist/ingest/chunker.d.ts +2 -1
- package/dist/ingest/chunker.d.ts.map +1 -1
- package/dist/ingest/chunker.js +14 -10
- package/dist/ingest/chunker.js.map +1 -1
- package/dist/ingest/providers/index.js +2 -2
- package/dist/ingest/providers/index.js.map +1 -1
- package/dist/recall/engine.d.ts.map +1 -1
- package/dist/recall/engine.js +22 -4
- package/dist/recall/engine.js.map +1 -1
- package/dist/shared/llm-call.d.ts.map +1 -1
- package/dist/shared/llm-call.js +2 -1
- package/dist/shared/llm-call.js.map +1 -1
- package/dist/sharing/types.d.ts +1 -1
- package/dist/sharing/types.d.ts.map +1 -1
- package/dist/skill/evolver.d.ts +2 -0
- package/dist/skill/evolver.d.ts.map +1 -1
- package/dist/skill/evolver.js +56 -5
- package/dist/skill/evolver.js.map +1 -1
- package/dist/skill/generator.d.ts +2 -0
- package/dist/skill/generator.d.ts.map +1 -1
- package/dist/skill/generator.js +45 -3
- package/dist/skill/generator.js.map +1 -1
- package/dist/skill/installer.d.ts +26 -0
- package/dist/skill/installer.d.ts.map +1 -1
- package/dist/skill/installer.js +80 -4
- package/dist/skill/installer.js.map +1 -1
- package/dist/skill/upgrader.d.ts +2 -0
- package/dist/skill/upgrader.d.ts.map +1 -1
- package/dist/skill/upgrader.js +139 -1
- package/dist/skill/upgrader.js.map +1 -1
- package/dist/skill/validator.d.ts +3 -0
- package/dist/skill/validator.d.ts.map +1 -1
- package/dist/skill/validator.js +75 -0
- package/dist/skill/validator.js.map +1 -1
- package/dist/storage/sqlite.d.ts +57 -0
- package/dist/storage/sqlite.d.ts.map +1 -1
- package/dist/storage/sqlite.js +290 -35
- package/dist/storage/sqlite.js.map +1 -1
- package/dist/telemetry.d.ts.map +1 -1
- package/dist/telemetry.js +27 -8
- package/dist/telemetry.js.map +1 -1
- package/dist/types.d.ts +10 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +4 -0
- package/dist/types.js.map +1 -1
- package/dist/viewer/html.d.ts.map +1 -1
- package/dist/viewer/html.js +564 -225
- package/dist/viewer/html.js.map +1 -1
- package/dist/viewer/server.d.ts +9 -0
- package/dist/viewer/server.d.ts.map +1 -1
- package/dist/viewer/server.js +357 -108
- package/dist/viewer/server.js.map +1 -1
- package/index.ts +411 -52
- package/openclaw.plugin.json +1 -1
- package/package.json +2 -1
- package/prebuilds/darwin-arm64/better_sqlite3.node +0 -0
- package/prebuilds/darwin-x64/better_sqlite3.node +0 -0
- package/prebuilds/linux-x64/better_sqlite3.node +0 -0
- package/prebuilds/win32-x64/better_sqlite3.node +0 -0
- package/src/capture/index.ts +4 -1
- package/src/client/connector.ts +92 -8
- package/src/config.ts +2 -1
- package/src/hub/server.ts +235 -35
- package/src/hub/user-manager.ts +42 -6
- package/src/ingest/chunker.ts +19 -13
- package/src/ingest/providers/index.ts +2 -2
- package/src/recall/engine.ts +20 -4
- package/src/shared/llm-call.ts +2 -1
- package/src/sharing/types.ts +1 -1
- package/src/skill/evolver.ts +58 -6
- package/src/skill/generator.ts +44 -5
- package/src/skill/installer.ts +107 -4
- package/src/skill/upgrader.ts +139 -1
- package/src/skill/validator.ts +79 -0
- package/src/storage/sqlite.ts +318 -40
- package/src/telemetry.ts +27 -9
- package/src/types.ts +11 -0
- package/src/viewer/html.ts +564 -225
- package/src/viewer/server.ts +333 -105
- package/telemetry.credentials.json +5 -0
package/src/telemetry.ts
CHANGED
|
@@ -18,14 +18,27 @@ export interface TelemetryConfig {
|
|
|
18
18
|
enabled?: boolean;
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
21
|
+
function loadTelemetryCredentials(): { endpoint: string; pid: string; env: string } {
|
|
22
|
+
if (process.env.MEMOS_ARMS_ENDPOINT) {
|
|
23
|
+
return {
|
|
24
|
+
endpoint: process.env.MEMOS_ARMS_ENDPOINT,
|
|
25
|
+
pid: process.env.MEMOS_ARMS_PID ?? "",
|
|
26
|
+
env: process.env.MEMOS_ARMS_ENV ?? "prod",
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
try {
|
|
30
|
+
const credPath = path.resolve(__dirname, "..", "telemetry.credentials.json");
|
|
31
|
+
const raw = fs.readFileSync(credPath, "utf-8");
|
|
32
|
+
const creds = JSON.parse(raw);
|
|
33
|
+
if (creds.endpoint) return { endpoint: creds.endpoint, pid: creds.pid ?? "", env: creds.env ?? "prod" };
|
|
34
|
+
} catch {}
|
|
35
|
+
return { endpoint: "", pid: "", env: "prod" };
|
|
36
|
+
}
|
|
26
37
|
|
|
27
|
-
const
|
|
28
|
-
const
|
|
38
|
+
const _creds = loadTelemetryCredentials();
|
|
39
|
+
const ARMS_ENDPOINT = _creds.endpoint;
|
|
40
|
+
const ARMS_PID = _creds.pid;
|
|
41
|
+
const ARMS_ENV = _creds.env;
|
|
29
42
|
|
|
30
43
|
const FLUSH_AT = 10;
|
|
31
44
|
const FLUSH_INTERVAL_MS = 30_000;
|
|
@@ -63,8 +76,13 @@ export class Telemetry {
|
|
|
63
76
|
this.firstSeenDate = this.loadOrCreateFirstSeen(stateDir);
|
|
64
77
|
this.sessionId = this.loadOrCreateSessionId(stateDir);
|
|
65
78
|
|
|
66
|
-
if (!this.enabled) {
|
|
67
|
-
this.
|
|
79
|
+
if (!this.enabled || !ARMS_ENDPOINT) {
|
|
80
|
+
this.enabled = false;
|
|
81
|
+
this.log.debug(
|
|
82
|
+
!ARMS_ENDPOINT
|
|
83
|
+
? "Telemetry disabled (no credentials configured)"
|
|
84
|
+
: "Telemetry disabled (opt-out)",
|
|
85
|
+
);
|
|
68
86
|
return;
|
|
69
87
|
}
|
|
70
88
|
|
package/src/types.ts
CHANGED
|
@@ -66,6 +66,8 @@ export interface ChunkRef {
|
|
|
66
66
|
|
|
67
67
|
// ─── Search / Recall ───
|
|
68
68
|
|
|
69
|
+
export type SearchHitOrigin = "local" | "local-shared" | "hub-memory" | "hub-remote";
|
|
70
|
+
|
|
69
71
|
export interface SearchHit {
|
|
70
72
|
summary: string;
|
|
71
73
|
original_excerpt: string;
|
|
@@ -74,6 +76,7 @@ export interface SearchHit {
|
|
|
74
76
|
taskId: string | null;
|
|
75
77
|
skillId: string | null;
|
|
76
78
|
owner?: string;
|
|
79
|
+
origin?: SearchHitOrigin;
|
|
77
80
|
source: {
|
|
78
81
|
ts: number;
|
|
79
82
|
role: Role;
|
|
@@ -249,6 +252,10 @@ export interface SkillEvolutionConfig {
|
|
|
249
252
|
minConfidence?: number;
|
|
250
253
|
maxSkillLines?: number;
|
|
251
254
|
autoInstall?: boolean;
|
|
255
|
+
autoRecallSkills?: boolean;
|
|
256
|
+
autoRecallSkillLimit?: number;
|
|
257
|
+
preferUpgradeExisting?: boolean;
|
|
258
|
+
redactSensitiveInSkill?: boolean;
|
|
252
259
|
/** Optional independent LLM config for skill evaluation/validation. Falls back to main summarizer if not set. */
|
|
253
260
|
summarizer?: SummarizerConfig;
|
|
254
261
|
}
|
|
@@ -344,6 +351,10 @@ export const DEFAULTS = {
|
|
|
344
351
|
skillMinConfidence: 0.7,
|
|
345
352
|
skillMaxLines: 400,
|
|
346
353
|
skillAutoInstall: false,
|
|
354
|
+
skillAutoRecall: true,
|
|
355
|
+
skillAutoRecallLimit: 2,
|
|
356
|
+
skillPreferUpgrade: true,
|
|
357
|
+
skillRedactSensitive: true,
|
|
347
358
|
} as const;
|
|
348
359
|
|
|
349
360
|
// ─── Plugin Hooks (OpenClaw integration) ───
|