@signetai/signet-memory-openclaw 0.102.3 → 0.102.5

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/index.d.ts CHANGED
@@ -8,6 +8,7 @@
8
8
  * All operations route through daemon APIs with the "plugin" runtime
9
9
  * path for dedup safety.
10
10
  */
11
+ import type { RecallPayload, RecallRow } from "@signet/core";
11
12
  import type { OpenClawPluginApi } from "./openclaw-types.js";
12
13
  export interface SignetConfig {
13
14
  enabled?: boolean;
@@ -52,14 +53,6 @@ interface MemoryRecord {
52
53
  created_at: string;
53
54
  updated_at: string;
54
55
  }
55
- interface RecallResult {
56
- id: string;
57
- content: string;
58
- type: string;
59
- importance: number;
60
- score: number;
61
- created_at: string;
62
- }
63
56
  interface MarketplaceToolEntry {
64
57
  id: string;
65
58
  serverId: string;
@@ -123,12 +116,18 @@ export declare function onSessionEnd(harness: string, options?: {
123
116
  cwd?: string;
124
117
  reason?: string;
125
118
  }): Promise<SessionEndResult | null>;
119
+ export declare function memoryRecall(query: string, options?: {
120
+ daemonUrl?: string;
121
+ limit?: number;
122
+ type?: string;
123
+ minScore?: number;
124
+ }): Promise<RecallPayload | null>;
126
125
  export declare function memorySearch(query: string, options?: {
127
126
  daemonUrl?: string;
128
127
  limit?: number;
129
128
  type?: string;
130
129
  minScore?: number;
131
- }): Promise<RecallResult[]>;
130
+ }): Promise<RecallRow[]>;
132
131
  export declare function memoryStore(content: string, options?: {
133
132
  daemonUrl?: string;
134
133
  type?: string;
@@ -183,7 +182,7 @@ export declare function recall(query: string, options?: {
183
182
  limit?: number;
184
183
  type?: string;
185
184
  minScore?: number;
186
- }): Promise<RecallResult[]>;
185
+ }): Promise<RecallRow[]>;
187
186
  export declare function cleanupTimedMap(map: Map<string, number>, now: number, ttlMs?: number): void;
188
187
  /**
189
188
  * Inject the routing metadata block as system[0] if not already present.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -9079,6 +9079,27 @@ function up58(db) {
9079
9079
  ON entities(entity_type, mentions)
9080
9080
  WHERE entity_type = 'extracted'`);
9081
9081
  }
9082
+ function up59(db) {
9083
+ const cols = db.prepare("PRAGMA table_info(entity_attributes)").all();
9084
+ if (!cols.some((col) => col.name === "claim_key")) {
9085
+ db.exec("ALTER TABLE entity_attributes ADD COLUMN claim_key TEXT");
9086
+ }
9087
+ db.exec(`CREATE INDEX IF NOT EXISTS idx_entity_attributes_claim_key
9088
+ ON entity_attributes(agent_id, aspect_id, claim_key, status)
9089
+ WHERE claim_key IS NOT NULL`);
9090
+ }
9091
+ function up60(db) {
9092
+ const cols = db.prepare("PRAGMA table_info(entity_attributes)").all();
9093
+ if (!cols.some((col) => col.name === "group_key")) {
9094
+ db.exec("ALTER TABLE entity_attributes ADD COLUMN group_key TEXT");
9095
+ }
9096
+ db.exec(`CREATE INDEX IF NOT EXISTS idx_entity_attributes_group_key
9097
+ ON entity_attributes(agent_id, aspect_id, group_key, status)
9098
+ WHERE group_key IS NOT NULL`);
9099
+ db.exec(`CREATE INDEX IF NOT EXISTS idx_entity_attributes_group_claim
9100
+ ON entity_attributes(agent_id, aspect_id, group_key, claim_key, status)
9101
+ WHERE claim_key IS NOT NULL`);
9102
+ }
9082
9103
  var MIGRATIONS = [
9083
9104
  {
9084
9105
  version: 1,
@@ -9533,6 +9554,22 @@ var MIGRATIONS = [
9533
9554
  version: 58,
9534
9555
  name: "knowledge-graph-indices",
9535
9556
  up: up58
9557
+ },
9558
+ {
9559
+ version: 59,
9560
+ name: "entity-attribute-claim-key",
9561
+ up: up59,
9562
+ artifacts: {
9563
+ columns: [{ table: "entity_attributes", column: "claim_key" }]
9564
+ }
9565
+ },
9566
+ {
9567
+ version: 60,
9568
+ name: "entity-attribute-group-key",
9569
+ up: up60,
9570
+ artifacts: {
9571
+ columns: [{ table: "entity_attributes", column: "group_key" }]
9572
+ }
9536
9573
  }
9537
9574
  ];
9538
9575
  var LATEST_SCHEMA_VERSION = MIGRATIONS[MIGRATIONS.length - 1]?.version ?? 0;
@@ -9557,6 +9594,179 @@ try {
9557
9594
  const esmRequire = createRequire22(import.meta.url);
9558
9595
  native = esmRequire("@signet/native");
9559
9596
  } catch {}
9597
+ function isRecord2(value) {
9598
+ return typeof value === "object" && value !== null && !Array.isArray(value);
9599
+ }
9600
+ function withDefined(value) {
9601
+ return Object.fromEntries(Object.entries(value).filter(([, entry]) => entry !== undefined));
9602
+ }
9603
+ function normalizeRememberTags(tags) {
9604
+ if (typeof tags === "string") {
9605
+ const value = tags.split(",").map((tag) => tag.trim()).filter((tag) => tag.length > 0).join(",");
9606
+ return value.length > 0 ? value : undefined;
9607
+ }
9608
+ if (Array.isArray(tags)) {
9609
+ const value = tags.map((tag) => tag.trim()).filter((tag) => tag.length > 0).join(",");
9610
+ return value.length > 0 ? value : undefined;
9611
+ }
9612
+ return;
9613
+ }
9614
+ function partitionRecallRows(rows) {
9615
+ return {
9616
+ primary: rows.filter((row) => row.supplementary !== true),
9617
+ supporting: rows.filter((row) => row.supplementary === true)
9618
+ };
9619
+ }
9620
+ function parseRecallMeta(raw, fallbackCount) {
9621
+ if (!isRecord2(raw)) {
9622
+ return {
9623
+ totalReturned: fallbackCount,
9624
+ hasSupplementary: false,
9625
+ noHits: fallbackCount === 0
9626
+ };
9627
+ }
9628
+ const totalReturned = typeof raw.totalReturned === "number" ? raw.totalReturned : fallbackCount;
9629
+ const hasSupplementary = raw.hasSupplementary === true;
9630
+ const noHits = "noHits" in raw ? raw.noHits === true : totalReturned === 0;
9631
+ return { totalReturned, hasSupplementary, noHits };
9632
+ }
9633
+ function parseRecallPayload(raw) {
9634
+ const payload = isRecord2(raw) ? raw : {};
9635
+ const results = Array.isArray(payload.results) ? payload.results : Array.isArray(payload.memories) ? payload.memories : [];
9636
+ const rows = results.filter(isRecord2);
9637
+ return {
9638
+ query: typeof payload.query === "string" ? payload.query : undefined,
9639
+ method: typeof payload.method === "string" ? payload.method : undefined,
9640
+ rows,
9641
+ meta: parseRecallMeta(payload.meta, rows.length),
9642
+ message: typeof payload.message === "string" ? payload.message : undefined
9643
+ };
9644
+ }
9645
+ function applyRecallScoreThreshold(raw, minScore) {
9646
+ if (typeof minScore !== "number" || !Number.isFinite(minScore) || typeof raw !== "object" || raw === null || Array.isArray(raw)) {
9647
+ return raw;
9648
+ }
9649
+ const payload = raw;
9650
+ const rows = Array.isArray(payload.results) ? payload.results : [];
9651
+ const filtered = rows.filter((row) => typeof row.score !== "number" || row.score >= minScore);
9652
+ return {
9653
+ ...payload,
9654
+ results: filtered,
9655
+ meta: {
9656
+ totalReturned: filtered.length,
9657
+ hasSupplementary: filtered.some((row) => row.supplementary === true),
9658
+ noHits: filtered.length === 0
9659
+ }
9660
+ };
9661
+ }
9662
+ function formatDate(value) {
9663
+ return typeof value === "string" && value.length > 0 ? value.slice(0, 10) : "unknown";
9664
+ }
9665
+ function formatRecallRow(row, options) {
9666
+ const score = typeof row.score === "number" ? `[${(row.score * 100).toFixed(0)}%] ` : "";
9667
+ const source = typeof row.source === "string" ? row.source : "unknown";
9668
+ const type = typeof row.type === "string" ? row.type : "memory";
9669
+ const who = typeof row.who === "string" && row.who.length > 0 ? `, by ${row.who}` : "";
9670
+ const createdAt = formatDate(row.created_at);
9671
+ const id = typeof row.id === "string" && row.id.length > 0 ? `id: ${row.id}; ` : "";
9672
+ const prefix = options?.includeIndex ? `${options.includeIndex}. ` : "- ";
9673
+ return `${prefix}${score}${id}${row.content ?? ""} (${type}, ${source}, ${createdAt}${who})`;
9674
+ }
9675
+ function formatRecallText(raw) {
9676
+ if (typeof raw !== "object" || raw === null || Array.isArray(raw)) {
9677
+ return typeof raw === "string" ? raw : JSON.stringify(raw, null, 2);
9678
+ }
9679
+ const payload = raw;
9680
+ const parsed = parseRecallPayload(payload);
9681
+ if (parsed.message && parsed.rows.length === 0)
9682
+ return parsed.message;
9683
+ if (parsed.meta.noHits || parsed.rows.length === 0)
9684
+ return "No matching memories found.";
9685
+ const { primary, supporting } = partitionRecallRows(parsed.rows);
9686
+ const noun = parsed.meta.totalReturned === 1 ? "memory" : "memories";
9687
+ const parts = [`Found ${parsed.meta.totalReturned} ${noun}${parsed.method ? ` (${parsed.method})` : ""}.`];
9688
+ if (primary.length > 0) {
9689
+ parts.push("", "Primary matches:", ...primary.map((row) => formatRecallRow(row)));
9690
+ }
9691
+ if (supporting.length > 0) {
9692
+ parts.push("", "Supporting context:", ...supporting.map((row) => formatRecallRow(row)));
9693
+ }
9694
+ return parts.join(`
9695
+ `);
9696
+ }
9697
+ function buildRecallRequestBody(query, options = {}) {
9698
+ return withDefined({
9699
+ query,
9700
+ keywordQuery: options.keywordQuery ?? options.keyword_query,
9701
+ limit: options.limit,
9702
+ project: options.project,
9703
+ type: options.type,
9704
+ tags: options.tags,
9705
+ who: options.who,
9706
+ pinned: options.pinned === true ? true : undefined,
9707
+ importance_min: options.importance_min,
9708
+ since: options.since,
9709
+ until: options.until,
9710
+ expand: options.expand === true ? true : undefined,
9711
+ agentId: options.agentId,
9712
+ scope: options.scope
9713
+ });
9714
+ }
9715
+ function normalizeStructuredMemoryPayload(value) {
9716
+ if (!isRecord2(value))
9717
+ return value;
9718
+ const aspects = value.aspects;
9719
+ if (!Array.isArray(aspects))
9720
+ return value;
9721
+ return {
9722
+ ...value,
9723
+ aspects: aspects.map((aspect) => {
9724
+ if (!isRecord2(aspect))
9725
+ return aspect;
9726
+ if (typeof aspect.entityName === "string" && Array.isArray(aspect.attributes))
9727
+ return aspect;
9728
+ if (typeof aspect.entity === "string" && typeof aspect.aspect === "string" && typeof aspect.value === "string") {
9729
+ return {
9730
+ entityName: aspect.entity,
9731
+ aspect: aspect.aspect,
9732
+ attributes: [
9733
+ withDefined({
9734
+ content: aspect.value,
9735
+ groupKey: typeof aspect.groupKey === "string" ? aspect.groupKey : undefined,
9736
+ claimKey: typeof aspect.claimKey === "string" ? aspect.claimKey : undefined,
9737
+ confidence: typeof aspect.confidence === "number" ? aspect.confidence : undefined,
9738
+ importance: typeof aspect.importance === "number" ? aspect.importance : undefined
9739
+ })
9740
+ ]
9741
+ };
9742
+ }
9743
+ return aspect;
9744
+ })
9745
+ };
9746
+ }
9747
+ function buildRememberRequestBody(content, options = {}) {
9748
+ return withDefined({
9749
+ content,
9750
+ type: options.type,
9751
+ importance: options.importance,
9752
+ tags: normalizeRememberTags(options.tags),
9753
+ who: options.who,
9754
+ pinned: options.pinned === true ? true : undefined,
9755
+ sourceType: options.sourceType,
9756
+ sourceId: options.sourceId,
9757
+ createdAt: options.createdAt,
9758
+ hints: options.hints,
9759
+ transcript: options.transcript,
9760
+ structured: normalizeStructuredMemoryPayload(options.structured),
9761
+ agentId: options.agentId,
9762
+ visibility: options.visibility,
9763
+ mode: options.mode,
9764
+ idempotencyKey: options.idempotencyKey,
9765
+ runtimePath: options.runtimePath,
9766
+ harness: options.harness,
9767
+ source: options.source
9768
+ });
9769
+ }
9560
9770
  var SIGNET_SOURCE_CHECKOUT_DIRNAME = "signetai";
9561
9771
  var SIGNET_GIT_PROTECTED_PATHS = [
9562
9772
  "memory/memories.db",
@@ -12667,31 +12877,32 @@ async function onSessionEnd(harness, options = {}) {
12667
12877
  timeout: WRITE_TIMEOUT
12668
12878
  });
12669
12879
  }
12670
- async function memorySearch(query, options = {}) {
12880
+ async function memoryRecall(query, options = {}) {
12671
12881
  const daemonUrl = options.daemonUrl || DEFAULT_DAEMON_URL;
12672
12882
  const result = await daemonFetch(daemonUrl, "/api/memory/recall", {
12673
12883
  method: "POST",
12674
- body: {
12675
- query,
12676
- limit: options.limit || 10,
12677
- type: options.type,
12678
- min_score: options.minScore
12679
- },
12884
+ body: buildRecallRequestBody(query, {
12885
+ limit: options.limit ?? 10,
12886
+ type: options.type
12887
+ }),
12680
12888
  timeout: READ_TIMEOUT
12681
12889
  });
12682
- return result?.results || [];
12890
+ return result ? applyRecallScoreThreshold(result, options.minScore) : null;
12891
+ }
12892
+ async function memorySearch(query, options = {}) {
12893
+ const result = await memoryRecall(query, options);
12894
+ return result ? parseRecallPayload(result).rows : [];
12683
12895
  }
12684
12896
  async function memoryStore(content, options = {}) {
12685
12897
  const daemonUrl = options.daemonUrl || DEFAULT_DAEMON_URL;
12686
12898
  const result = await daemonFetch(daemonUrl, "/api/memory/remember", {
12687
12899
  method: "POST",
12688
- body: {
12689
- content,
12900
+ body: buildRememberRequestBody(content, {
12690
12901
  type: options.type,
12691
12902
  importance: options.importance,
12692
- tags: typeof options.tags === "string" ? options.tags : options.tags?.map((tag) => tag.trim()).filter((tag) => tag.length > 0).join(","),
12903
+ tags: options.tags,
12693
12904
  who: options.who || "openclaw"
12694
- },
12905
+ }),
12695
12906
  timeout: WRITE_TIMEOUT
12696
12907
  });
12697
12908
  return result?.id || result?.memoryId || null;
@@ -12852,10 +13063,7 @@ function injectBillingBlock(body) {
12852
13063
  return true;
12853
13064
  }
12854
13065
  if (typeof system === "string") {
12855
- body.system = [
12856
- { ...BILLING_BLOCK },
12857
- { type: "text", text: system }
12858
- ];
13066
+ body.system = [{ ...BILLING_BLOCK }, { type: "text", text: system }];
12859
13067
  return true;
12860
13068
  }
12861
13069
  body.system = [{ ...BILLING_BLOCK }];
@@ -12945,7 +13153,7 @@ function swapAuthHeaders(headers, oauthToken) {
12945
13153
  delete headers[key];
12946
13154
  }
12947
13155
  }
12948
- headers["authorization"] = `Bearer ${oauthToken}`;
13156
+ headers.authorization = `Bearer ${oauthToken}`;
12949
13157
  }
12950
13158
  function installFetchSanitizer() {
12951
13159
  const original = globalThis.fetch;
@@ -13032,10 +13240,11 @@ function installSdkSanitizer() {
13032
13240
  if (!found)
13033
13241
  return false;
13034
13242
  Base = found;
13035
- original = Base.prototype.prepareRequest;
13243
+ const previous = Base.prototype.prepareRequest;
13244
+ original = previous;
13036
13245
  Base.prototype.prepareRequest = async function(request, context) {
13037
13246
  sanitizeRequest(request);
13038
- return original.call(this, request, context);
13247
+ return previous.call(this, request, context);
13039
13248
  };
13040
13249
  return true;
13041
13250
  }
@@ -13298,24 +13507,22 @@ var signetPlugin = {
13298
13507
  async execute(_toolCallId, params) {
13299
13508
  const { query, limit, type, min_score } = params;
13300
13509
  try {
13301
- const results = await memorySearch(query, {
13510
+ const recall2 = await memoryRecall(query, {
13302
13511
  ...opts,
13303
13512
  limit,
13304
13513
  type,
13305
13514
  minScore: min_score
13306
13515
  });
13307
- if (results.length === 0) {
13516
+ const parsed = parseRecallPayload(recall2);
13517
+ if (parsed.rows.length === 0) {
13308
13518
  return textResult("No relevant memories found.", {
13309
13519
  count: 0
13310
13520
  });
13311
13521
  }
13312
- const text = results.map((r, i) => `${i + 1}. ${r.content} (score: ${((r.score ?? 0) * 100).toFixed(0)}%, id: ${r.id})`).join(`
13313
- `);
13314
- return textResult(`Found ${results.length} memories:
13315
-
13316
- ${text}`, {
13317
- count: results.length,
13318
- memories: results
13522
+ return textResult(formatRecallText(recall2), {
13523
+ count: parsed.rows.length,
13524
+ memories: parsed.rows,
13525
+ meta: parsed.meta
13319
13526
  });
13320
13527
  } catch (err) {
13321
13528
  return textResult(`Memory search failed: ${String(err)}`, { error: String(err) });
@@ -13912,6 +14119,7 @@ export {
13912
14119
  onCompactionComplete,
13913
14120
  memoryStore,
13914
14121
  memorySearch,
14122
+ memoryRecall,
13915
14123
  memoryModify,
13916
14124
  memoryList,
13917
14125
  memoryGet,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@signetai/signet-memory-openclaw",
3
- "version": "0.102.3",
3
+ "version": "0.102.5",
4
4
  "description": "Signet adapter for OpenClaw — runtime plugin for AI agent memory",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -36,7 +36,7 @@
36
36
  "@sinclair/typebox": "0.34.47"
37
37
  },
38
38
  "devDependencies": {
39
- "@signet/core": "0.102.3",
39
+ "@signet/core": "0.102.5",
40
40
  "@types/node": "^22.0.0"
41
41
  },
42
42
  "peerDependencies": {