@signetai/connector-hermes-agent 0.164.5 → 0.166.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/index.js +40 -6
- package/hermes-plugin/__init__.py +2 -0
- package/hermes-plugin/client.py +3 -0
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -10336,6 +10336,15 @@ function up105(db) {
|
|
|
10336
10336
|
INSERT INTO entities_fts(entities_fts) VALUES ('rebuild');
|
|
10337
10337
|
`);
|
|
10338
10338
|
}
|
|
10339
|
+
function hasColumn17(db, table, column) {
|
|
10340
|
+
return db.prepare(`PRAGMA table_info(${table})`).all().some((row) => row.name === column);
|
|
10341
|
+
}
|
|
10342
|
+
function up106(db) {
|
|
10343
|
+
if (!hasColumn17(db, "memories", "review_after")) {
|
|
10344
|
+
db.exec("ALTER TABLE memories ADD COLUMN review_after TEXT;");
|
|
10345
|
+
}
|
|
10346
|
+
db.exec("CREATE INDEX IF NOT EXISTS idx_memories_review_after ON memories(review_after);");
|
|
10347
|
+
}
|
|
10339
10348
|
var MIGRATIONS = [
|
|
10340
10349
|
{
|
|
10341
10350
|
version: 1,
|
|
@@ -11168,6 +11177,14 @@ var MIGRATIONS = [
|
|
|
11168
11177
|
version: 105,
|
|
11169
11178
|
name: "agent-scoped-entity-name",
|
|
11170
11179
|
up: up105
|
|
11180
|
+
},
|
|
11181
|
+
{
|
|
11182
|
+
version: 106,
|
|
11183
|
+
name: "memory-review-after",
|
|
11184
|
+
up: up106,
|
|
11185
|
+
artifacts: {
|
|
11186
|
+
columns: [{ table: "memories", column: "review_after" }]
|
|
11187
|
+
}
|
|
11171
11188
|
}
|
|
11172
11189
|
];
|
|
11173
11190
|
var LATEST_SCHEMA_VERSION = MIGRATIONS[MIGRATIONS.length - 1]?.version ?? 0;
|
|
@@ -18432,7 +18449,7 @@ function memoriesFtsNeedsTokenizerRepair2(sql) {
|
|
|
18432
18449
|
return true;
|
|
18433
18450
|
return !normalized.includes(`tokenize='${MEMORIES_FTS_TOKENIZER2}'`);
|
|
18434
18451
|
}
|
|
18435
|
-
function
|
|
18452
|
+
function up107(db) {
|
|
18436
18453
|
db.exec(`
|
|
18437
18454
|
CREATE TABLE IF NOT EXISTS schema_migrations (
|
|
18438
18455
|
version INTEGER PRIMARY KEY,
|
|
@@ -18521,12 +18538,12 @@ function up106(db) {
|
|
|
18521
18538
|
} catch {}
|
|
18522
18539
|
createMemoriesFts2(db);
|
|
18523
18540
|
}
|
|
18524
|
-
function
|
|
18541
|
+
function hasColumn18(db, table, column) {
|
|
18525
18542
|
const rows = db.prepare(`PRAGMA table_info(${table})`).all();
|
|
18526
18543
|
return rows.some((r) => r.name === column);
|
|
18527
18544
|
}
|
|
18528
18545
|
function addColumnIfMissing23(db, table, column, definition) {
|
|
18529
|
-
if (!
|
|
18546
|
+
if (!hasColumn18(db, table, column)) {
|
|
18530
18547
|
db.exec(`ALTER TABLE ${table} ADD COLUMN ${column} ${definition}`);
|
|
18531
18548
|
}
|
|
18532
18549
|
}
|
|
@@ -18844,7 +18861,7 @@ function up910(db) {
|
|
|
18844
18861
|
db.exec(`CREATE INDEX IF NOT EXISTS idx_summary_jobs_status
|
|
18845
18862
|
ON summary_jobs(status)`);
|
|
18846
18863
|
}
|
|
18847
|
-
function
|
|
18864
|
+
function up108(db) {
|
|
18848
18865
|
db.exec(`
|
|
18849
18866
|
CREATE TABLE IF NOT EXISTS umap_cache (
|
|
18850
18867
|
id INTEGER PRIMARY KEY,
|
|
@@ -21802,11 +21819,20 @@ function up1052(db) {
|
|
|
21802
21819
|
INSERT INTO entities_fts(entities_fts) VALUES ('rebuild');
|
|
21803
21820
|
`);
|
|
21804
21821
|
}
|
|
21822
|
+
function hasColumn172(db, table, column) {
|
|
21823
|
+
return db.prepare(`PRAGMA table_info(${table})`).all().some((row) => row.name === column);
|
|
21824
|
+
}
|
|
21825
|
+
function up1062(db) {
|
|
21826
|
+
if (!hasColumn172(db, "memories", "review_after")) {
|
|
21827
|
+
db.exec("ALTER TABLE memories ADD COLUMN review_after TEXT;");
|
|
21828
|
+
}
|
|
21829
|
+
db.exec("CREATE INDEX IF NOT EXISTS idx_memories_review_after ON memories(review_after);");
|
|
21830
|
+
}
|
|
21805
21831
|
var MIGRATIONS2 = [
|
|
21806
21832
|
{
|
|
21807
21833
|
version: 1,
|
|
21808
21834
|
name: "baseline",
|
|
21809
|
-
up:
|
|
21835
|
+
up: up107,
|
|
21810
21836
|
artifacts: { tables: ["memories", "conversations", "embeddings"] }
|
|
21811
21837
|
},
|
|
21812
21838
|
{
|
|
@@ -21866,7 +21892,7 @@ var MIGRATIONS2 = [
|
|
|
21866
21892
|
{
|
|
21867
21893
|
version: 10,
|
|
21868
21894
|
name: "umap-cache",
|
|
21869
|
-
up:
|
|
21895
|
+
up: up108,
|
|
21870
21896
|
artifacts: { tables: ["umap_cache"] }
|
|
21871
21897
|
},
|
|
21872
21898
|
{
|
|
@@ -22634,6 +22660,14 @@ var MIGRATIONS2 = [
|
|
|
22634
22660
|
version: 105,
|
|
22635
22661
|
name: "agent-scoped-entity-name",
|
|
22636
22662
|
up: up1052
|
|
22663
|
+
},
|
|
22664
|
+
{
|
|
22665
|
+
version: 106,
|
|
22666
|
+
name: "memory-review-after",
|
|
22667
|
+
up: up1062,
|
|
22668
|
+
artifacts: {
|
|
22669
|
+
columns: [{ table: "memories", column: "review_after" }]
|
|
22670
|
+
}
|
|
22637
22671
|
}
|
|
22638
22672
|
];
|
|
22639
22673
|
var LATEST_SCHEMA_VERSION2 = MIGRATIONS2[MIGRATIONS2.length - 1]?.version ?? 0;
|
|
@@ -171,6 +171,7 @@ MEMORY_STORE_SCHEMA = {
|
|
|
171
171
|
"tags": {"type": "string", "description": "Comma-separated tags for categorization."},
|
|
172
172
|
"pinned": {"type": "boolean", "description": "Pin this memory so it does not decay."},
|
|
173
173
|
"project": {"type": "string", "description": "Optional project path. Defaults to the active Hermes Signet workspace."},
|
|
174
|
+
"review_after": {"type": "string", "description": "ISO timestamp after which Dreaming should surface this memory for temporal review."},
|
|
174
175
|
"hints": {
|
|
175
176
|
"type": "array",
|
|
176
177
|
"items": {"type": "string"},
|
|
@@ -963,6 +964,7 @@ class SignetMemoryProvider(MemoryProvider):
|
|
|
963
964
|
hints=hints,
|
|
964
965
|
transcript=str(store_args.get("transcript", "") or ""),
|
|
965
966
|
structured=structured,
|
|
967
|
+
review_after=str(store_args.get("review_after", "") or ""),
|
|
966
968
|
who="hermes-agent",
|
|
967
969
|
)
|
|
968
970
|
if not result:
|
package/hermes-plugin/client.py
CHANGED
|
@@ -417,6 +417,7 @@ class SignetClient:
|
|
|
417
417
|
hints: Optional[List[str]] = None,
|
|
418
418
|
transcript: str = "",
|
|
419
419
|
structured: Optional[Dict[str, Any]] = None,
|
|
420
|
+
review_after: str = "",
|
|
420
421
|
who: str = "hermes-agent",
|
|
421
422
|
) -> Optional[Dict[str, Any]]:
|
|
422
423
|
"""Store a memory via the daemon API."""
|
|
@@ -445,6 +446,8 @@ class SignetClient:
|
|
|
445
446
|
body["transcript"] = transcript
|
|
446
447
|
if structured:
|
|
447
448
|
body["structured"] = structured
|
|
449
|
+
if review_after:
|
|
450
|
+
body["reviewAfter"] = review_after
|
|
448
451
|
return self._post("/api/memory/remember", body, timeout=_LONG_TIMEOUT_SECS)
|
|
449
452
|
|
|
450
453
|
def recall(
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@signetai/connector-hermes-agent",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.166.0",
|
|
4
4
|
"description": "Signet connector for Hermes Agent — installs Signet as a pluggable memory provider",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
"typecheck": "tsc --noEmit"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@signetai/connector-base": "0.
|
|
29
|
-
"@signetai/core": "0.
|
|
28
|
+
"@signetai/connector-base": "0.166.0",
|
|
29
|
+
"@signetai/core": "0.166.0"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"@types/node": "^22.0.0",
|