@hippodid/openclaw-plugin 1.0.9 → 1.1.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/README.md +41 -5
- package/dist/hippodid-client.d.ts.map +1 -1
- package/dist/hippodid-client.js +13 -4
- package/dist/hippodid-client.js.map +1 -1
- package/dist/hooks/auto-capture.d.ts.map +1 -1
- package/dist/hooks/auto-capture.js +18 -11
- package/dist/hooks/auto-capture.js.map +1 -1
- package/dist/hooks/auto-recall.d.ts.map +1 -1
- package/dist/hooks/auto-recall.js +8 -9
- package/dist/hooks/auto-recall.js.map +1 -1
- package/dist/hooks/memory-flush.d.ts.map +1 -1
- package/dist/hooks/memory-flush.js +11 -6
- package/dist/hooks/memory-flush.js.map +1 -1
- package/dist/hooks/session-lifecycle.d.ts.map +1 -1
- package/dist/hooks/session-lifecycle.js +25 -5
- package/dist/hooks/session-lifecycle.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +125 -70
- package/dist/index.js.map +1 -1
- package/dist/tier-manager.d.ts.map +1 -1
- package/dist/tier-manager.js +3 -6
- package/dist/tier-manager.js.map +1 -1
- package/dist/types.d.ts +6 -3
- package/dist/types.d.ts.map +1 -1
- package/package.json +14 -7
- package/skills/hippodid/SKILL.md +4 -4
- package/src/hippodid-client.ts +16 -4
- package/src/hooks/auto-capture.ts +39 -27
- package/src/hooks/auto-recall.ts +29 -26
- package/src/hooks/memory-flush.ts +15 -6
- package/src/hooks/session-lifecycle.ts +34 -5
- package/src/index.ts +159 -107
- package/src/tier-manager.ts +3 -5
- package/src/types.ts +7 -4
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,OAAO,EAAE,YAAY,EAAuB,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAiB,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAoB,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,OAAO,GAAG,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tier-manager.d.ts","sourceRoot":"","sources":["../src/tier-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,WAAW,WAAW;IAC1B,UAAU,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAChC,cAAc,IAAI,QAAQ,CAAC;IAC3B,mBAAmB,CAAC,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAC;IAC1D,qBAAqB,CAAC,iBAAiB,EAAE,OAAO,GAAG,OAAO,CAAC;IAC3D,sBAAsB,CAAC,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAC;IAC7D,oBAAoB,CAAC,iBAAiB,EAAE,OAAO,GAAG,OAAO,CAAC;IAC1D,wBAAwB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1D;AAWD,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE;IAAE,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC3D,WAAW,
|
|
1
|
+
{"version":3,"file":"tier-manager.d.ts","sourceRoot":"","sources":["../src/tier-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,WAAW,WAAW;IAC1B,UAAU,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAChC,cAAc,IAAI,QAAQ,CAAC;IAC3B,mBAAmB,CAAC,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAC;IAC1D,qBAAqB,CAAC,iBAAiB,EAAE,OAAO,GAAG,OAAO,CAAC;IAC3D,sBAAsB,CAAC,kBAAkB,EAAE,OAAO,GAAG,OAAO,CAAC;IAC7D,oBAAoB,CAAC,iBAAiB,EAAE,OAAO,GAAG,OAAO,CAAC;IAC1D,wBAAwB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1D;AAWD,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE;IAAE,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC3D,WAAW,CAyDb"}
|
package/dist/tier-manager.js
CHANGED
|
@@ -24,11 +24,8 @@ export function createTierManager(client, characterId, logger) {
|
|
|
24
24
|
getCurrentTier() {
|
|
25
25
|
return currentTier;
|
|
26
26
|
},
|
|
27
|
-
shouldMountFileSync(
|
|
28
|
-
|
|
29
|
-
if (isFree)
|
|
30
|
-
return true;
|
|
31
|
-
return !autoCaptureEnabled;
|
|
27
|
+
shouldMountFileSync(_autoCaptureEnabled) {
|
|
28
|
+
return true;
|
|
32
29
|
},
|
|
33
30
|
shouldMountAutoRecall(autoRecallEnabled) {
|
|
34
31
|
return (isPaidTier(currentTier) &&
|
|
@@ -44,7 +41,7 @@ export function createTierManager(client, characterId, logger) {
|
|
|
44
41
|
const isFree = !isPaidTier(currentTier);
|
|
45
42
|
if (isFree)
|
|
46
43
|
return true;
|
|
47
|
-
return !autoRecallEnabled;
|
|
44
|
+
return !this.shouldMountAutoRecall(autoRecallEnabled);
|
|
48
45
|
},
|
|
49
46
|
getEffectiveSyncInterval(configInterval) {
|
|
50
47
|
return Math.max(configInterval, currentTier.features.minSyncIntervalSeconds);
|
package/dist/tier-manager.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tier-manager.js","sourceRoot":"","sources":["../src/tier-manager.ts"],"names":[],"mappings":"AAaA,MAAM,kBAAkB,GAAa;IACnC,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE;QACR,mBAAmB,EAAE,KAAK;QAC1B,oBAAoB,EAAE,KAAK;QAC3B,sBAAsB,EAAE,EAAE;KAC3B;CACF,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAC/B,MAAsB,EACtB,WAAmB,EACnB,MAA4D;IAE5D,IAAI,WAAW,GAAa,kBAAkB,CAAC;IAE/C,OAAO;QACL,KAAK,CAAC,UAAU;YACd,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAEjD,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;gBACd,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CACT,uDAAuD,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAC9E,CAAC;gBACF,WAAW,GAAG,kBAAkB,CAAC;YACnC,CAAC;YAED,MAAM,CAAC,IAAI,CACT,kBAAkB,WAAW,CAAC,IAAI,gBAAgB,WAAW,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,iBAAiB,WAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,EAAE,CACnN,CAAC;YAEF,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,cAAc;YACZ,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,mBAAmB,CAAC,
|
|
1
|
+
{"version":3,"file":"tier-manager.js","sourceRoot":"","sources":["../src/tier-manager.ts"],"names":[],"mappings":"AAaA,MAAM,kBAAkB,GAAa;IACnC,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE;QACR,mBAAmB,EAAE,KAAK;QAC1B,oBAAoB,EAAE,KAAK;QAC3B,sBAAsB,EAAE,EAAE;KAC3B;CACF,CAAC;AAEF,MAAM,UAAU,iBAAiB,CAC/B,MAAsB,EACtB,WAAmB,EACnB,MAA4D;IAE5D,IAAI,WAAW,GAAa,kBAAkB,CAAC;IAE/C,OAAO;QACL,KAAK,CAAC,UAAU;YACd,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAEjD,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;gBACd,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CACT,uDAAuD,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAC9E,CAAC;gBACF,WAAW,GAAG,kBAAkB,CAAC;YACnC,CAAC;YAED,MAAM,CAAC,IAAI,CACT,kBAAkB,WAAW,CAAC,IAAI,gBAAgB,WAAW,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,iBAAiB,WAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,EAAE,CACnN,CAAC;YAEF,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,cAAc;YACZ,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,mBAAmB,CAAC,mBAA4B;YAC9C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,qBAAqB,CAAC,iBAA0B;YAC9C,OAAO,CACL,UAAU,CAAC,WAAW,CAAC;gBACvB,iBAAiB;gBACjB,WAAW,CAAC,QAAQ,CAAC,mBAAmB,CACzC,CAAC;QACJ,CAAC;QAED,sBAAsB,CAAC,kBAA2B;YAChD,OAAO,CACL,UAAU,CAAC,WAAW,CAAC;gBACvB,kBAAkB;gBAClB,WAAW,CAAC,QAAQ,CAAC,oBAAoB,CAC1C,CAAC;QACJ,CAAC;QAED,oBAAoB,CAAC,iBAA0B;YAC7C,MAAM,MAAM,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YACxC,IAAI,MAAM;gBAAE,OAAO,IAAI,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;QACxD,CAAC;QAED,wBAAwB,CAAC,cAAsB;YAC7C,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;QAC/E,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,IAAc;IAChC,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;AAC9B,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -41,9 +41,12 @@ export interface TierInfo {
|
|
|
41
41
|
export interface TierApiResponse {
|
|
42
42
|
tier: string;
|
|
43
43
|
features: {
|
|
44
|
-
auto_recall_available
|
|
45
|
-
auto_capture_available
|
|
46
|
-
min_sync_interval_seconds
|
|
44
|
+
auto_recall_available?: boolean;
|
|
45
|
+
auto_capture_available?: boolean;
|
|
46
|
+
min_sync_interval_seconds?: number;
|
|
47
|
+
autoRecallAvailable?: boolean;
|
|
48
|
+
autoCaptureAvailable?: boolean;
|
|
49
|
+
minSyncIntervalSeconds?: number;
|
|
47
50
|
};
|
|
48
51
|
}
|
|
49
52
|
export interface SyncResponse {
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,QAAQ,IAC9B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GACtB;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC;AAE5B,wBAAgB,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,CAEhD;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAEjD;AAID,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;CACpB;AAID,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,eAAe,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAID,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,eAAe,GAAG,gBAAgB,CAAC;CAC5C;AAID,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE;QACR,mBAAmB,EAAE,OAAO,CAAC;QAC7B,oBAAoB,EAAE,OAAO,CAAC;QAC9B,sBAAsB,EAAE,MAAM,CAAC;KAChC,CAAC;CACH;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE;QACR,qBAAqB,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hippodid/openclaw-plugin",
|
|
3
|
-
"version": "1.0
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"description": "Cloud sync for MEMORY.md with structured character memory. Survives context compaction.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -16,7 +16,17 @@
|
|
|
16
16
|
"hippodid",
|
|
17
17
|
"ai-memory"
|
|
18
18
|
],
|
|
19
|
-
"
|
|
19
|
+
"type": "module",
|
|
20
|
+
"main": "dist/index.js",
|
|
21
|
+
"types": "dist/index.d.ts",
|
|
22
|
+
"exports": {
|
|
23
|
+
".": "./dist/index.js"
|
|
24
|
+
},
|
|
25
|
+
"openclaw": {
|
|
26
|
+
"extensions": [
|
|
27
|
+
"./dist/index.js"
|
|
28
|
+
]
|
|
29
|
+
},
|
|
20
30
|
"files": [
|
|
21
31
|
"dist",
|
|
22
32
|
"src",
|
|
@@ -26,6 +36,8 @@
|
|
|
26
36
|
"README.md"
|
|
27
37
|
],
|
|
28
38
|
"scripts": {
|
|
39
|
+
"build": "tsc -p tsconfig.json",
|
|
40
|
+
"prepack": "npm run build",
|
|
29
41
|
"typecheck": "tsc --noEmit",
|
|
30
42
|
"test": "vitest run",
|
|
31
43
|
"test:watch": "vitest",
|
|
@@ -36,10 +48,5 @@
|
|
|
36
48
|
"@vitest/coverage-v8": "^3.2.4",
|
|
37
49
|
"typescript": "^5.7.0",
|
|
38
50
|
"vitest": "^3.0.0"
|
|
39
|
-
},
|
|
40
|
-
"openclaw": {
|
|
41
|
-
"extensions": [
|
|
42
|
-
"./dist/index.js"
|
|
43
|
-
]
|
|
44
51
|
}
|
|
45
52
|
}
|
package/skills/hippodid/SKILL.md
CHANGED
|
@@ -9,10 +9,10 @@ HippoDid stores memories in the cloud so they survive context compaction and per
|
|
|
9
9
|
|
|
10
10
|
## When to use this skill
|
|
11
11
|
|
|
12
|
-
- User says "remember", "save this", "don't forget", "note that"
|
|
13
|
-
- User asks "what do you know about me", "do you remember", "recall"
|
|
14
|
-
- You need context from previous sessions at the start of a task
|
|
15
|
-
- User wants to sync their memory files
|
|
12
|
+
- User says "remember", "save this", "don't forget", "note that" -> call hippodid:remember
|
|
13
|
+
- User asks "what do you know about me", "do you remember", "recall" -> call hippodid:recall
|
|
14
|
+
- You need context from previous sessions at the start of a task -> call hippodid:recall
|
|
15
|
+
- User wants to sync their memory files -> call hippodid:sync
|
|
16
16
|
|
|
17
17
|
## Tools
|
|
18
18
|
|
package/src/hippodid-client.ts
CHANGED
|
@@ -54,7 +54,8 @@ export function createClient(apiKey: string, baseUrl: string): HippoDidClient {
|
|
|
54
54
|
|
|
55
55
|
function headers(): Record<string, string> {
|
|
56
56
|
return {
|
|
57
|
-
|
|
57
|
+
Authorization: `Bearer ${apiKey}`,
|
|
58
|
+
'X-Api-Key': apiKey,
|
|
58
59
|
'Content-Type': 'application/json',
|
|
59
60
|
};
|
|
60
61
|
}
|
|
@@ -135,9 +136,18 @@ export function createClient(apiKey: string, baseUrl: string): HippoDidClient {
|
|
|
135
136
|
return {
|
|
136
137
|
tier: raw.tier,
|
|
137
138
|
features: {
|
|
138
|
-
autoRecallAvailable:
|
|
139
|
-
|
|
140
|
-
|
|
139
|
+
autoRecallAvailable:
|
|
140
|
+
raw.features.autoRecallAvailable ??
|
|
141
|
+
raw.features.auto_recall_available ??
|
|
142
|
+
false,
|
|
143
|
+
autoCaptureAvailable:
|
|
144
|
+
raw.features.autoCaptureAvailable ??
|
|
145
|
+
raw.features.auto_capture_available ??
|
|
146
|
+
false,
|
|
147
|
+
minSyncIntervalSeconds:
|
|
148
|
+
raw.features.minSyncIntervalSeconds ??
|
|
149
|
+
raw.features.min_sync_interval_seconds ??
|
|
150
|
+
60,
|
|
141
151
|
},
|
|
142
152
|
};
|
|
143
153
|
}
|
|
@@ -191,8 +201,10 @@ export function createClient(apiKey: string, baseUrl: string): HippoDidClient {
|
|
|
191
201
|
'POST',
|
|
192
202
|
`/v1/characters/${encodeURIComponent(characterId)}/sync`,
|
|
193
203
|
{
|
|
204
|
+
filePath: sourcePath,
|
|
194
205
|
source_path: sourcePath,
|
|
195
206
|
label,
|
|
207
|
+
fileContent: fileContent,
|
|
196
208
|
file_content: fileContent,
|
|
197
209
|
checksum,
|
|
198
210
|
},
|
|
@@ -7,35 +7,45 @@ export function createAutoCaptureHook(
|
|
|
7
7
|
logger: { info(msg: string): void; warn(msg: string): void },
|
|
8
8
|
): (api: any) => void {
|
|
9
9
|
return (api: any) => {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
10
|
+
api.on('agent_end', async (ctx: any) => {
|
|
11
|
+
try {
|
|
12
|
+
const user =
|
|
13
|
+
ctx?.userMessage ??
|
|
14
|
+
ctx?.message ??
|
|
15
|
+
ctx?.prompt ??
|
|
16
|
+
ctx?.input ??
|
|
17
|
+
ctx?.finalUserMessage ??
|
|
18
|
+
'';
|
|
19
|
+
const assistant =
|
|
20
|
+
ctx?.assistantMessage ??
|
|
21
|
+
ctx?.response ??
|
|
22
|
+
ctx?.output ??
|
|
23
|
+
ctx?.finalResponse ??
|
|
24
|
+
'';
|
|
25
|
+
if (!user && !assistant) return;
|
|
18
26
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
27
|
+
const content = [
|
|
28
|
+
user ? `User: ${user}` : '',
|
|
29
|
+
assistant ? `Assistant: ${assistant}` : '',
|
|
30
|
+
]
|
|
31
|
+
.filter(Boolean)
|
|
32
|
+
.join('\n');
|
|
23
33
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
} catch (e) {
|
|
29
|
-
logger.warn(`hippodid: capture error: ${e instanceof Error ? e.message : String(e)}`);
|
|
34
|
+
const result = await client.addMemory(config.characterId, content);
|
|
35
|
+
if (result.ok) {
|
|
36
|
+
logger.info('hippodid: captured conversation turn');
|
|
30
37
|
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
|
|
38
|
+
} catch (e) {
|
|
39
|
+
logger.warn(
|
|
40
|
+
`hippodid: capture error: ${e instanceof Error ? e.message : String(e)}`,
|
|
41
|
+
);
|
|
42
|
+
}
|
|
43
|
+
});
|
|
34
44
|
|
|
35
|
-
// Explicit tool: agents can call hippodid:remember directly
|
|
36
45
|
api.registerTool({
|
|
37
46
|
name: 'hippodid:remember',
|
|
38
|
-
description:
|
|
47
|
+
description:
|
|
48
|
+
'Save important information to HippoDid character memory. Call this to store facts, decisions, preferences, or context that should persist across sessions.',
|
|
39
49
|
args: [
|
|
40
50
|
{
|
|
41
51
|
name: 'content',
|
|
@@ -51,13 +61,15 @@ export function createAutoCaptureHook(
|
|
|
51
61
|
if (result.ok) {
|
|
52
62
|
logger.info(`hippodid: captured memory: ${content.slice(0, 80)}...`);
|
|
53
63
|
return 'Remembered.';
|
|
54
|
-
} else {
|
|
55
|
-
logger.warn(`hippodid: capture failed: ${result.error.message}`);
|
|
56
|
-
return `Failed to remember: ${result.error.message}`;
|
|
57
64
|
}
|
|
65
|
+
|
|
66
|
+
logger.warn(`hippodid: capture failed: ${result.error.message}`);
|
|
67
|
+
return `Failed to remember: ${result.error.message}`;
|
|
58
68
|
},
|
|
59
69
|
});
|
|
60
70
|
|
|
61
|
-
logger.info(
|
|
71
|
+
logger.info(
|
|
72
|
+
'hippodid: auto-capture hook + hippodid:remember tool registered',
|
|
73
|
+
);
|
|
62
74
|
};
|
|
63
75
|
}
|
package/src/hooks/auto-recall.ts
CHANGED
|
@@ -7,34 +7,36 @@ export function createAutoRecallHook(
|
|
|
7
7
|
logger: { info(msg: string): void; warn(msg: string): void },
|
|
8
8
|
): (api: any) => void {
|
|
9
9
|
return (api: any) => {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
10
|
+
api.on('before_agent_start', async (ctx: any) => {
|
|
11
|
+
try {
|
|
12
|
+
const query = ctx?.prompt ?? ctx?.message ?? ctx?.input ?? '';
|
|
13
|
+
if (!query || query.length < 5) {
|
|
14
|
+
return;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
const result = await client.searchMemories(config.characterId, query);
|
|
18
|
+
if (result.ok && result.value?.length > 0) {
|
|
19
|
+
const memories = result.value
|
|
20
|
+
.map((m: any) => m.content ?? m.text ?? m.body ?? '')
|
|
21
|
+
.filter(Boolean)
|
|
22
|
+
.join('\n---\n');
|
|
17
23
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
.filter(Boolean)
|
|
23
|
-
.join('\n---\n');
|
|
24
|
-
ctx.prependContext?.(`## HippoDid Memories\n${memories}\n`);
|
|
25
|
-
logger.info(`hippodid: recalled ${result.value.length} memories`);
|
|
26
|
-
}
|
|
27
|
-
} catch (e) {
|
|
28
|
-
logger.warn(`hippodid: recall error: ${e instanceof Error ? e.message : String(e)}`);
|
|
24
|
+
logger.info(`hippodid: recalled ${result.value.length} memories`);
|
|
25
|
+
return {
|
|
26
|
+
prependContext: `## HippoDid Memories\n${memories}\n`,
|
|
27
|
+
};
|
|
29
28
|
}
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
|
|
29
|
+
} catch (e) {
|
|
30
|
+
logger.warn(
|
|
31
|
+
`hippodid: recall error: ${e instanceof Error ? e.message : String(e)}`,
|
|
32
|
+
);
|
|
33
|
+
}
|
|
34
|
+
});
|
|
33
35
|
|
|
34
|
-
// Explicit tool: agents can call hippodid:recall directly
|
|
35
36
|
api.registerTool({
|
|
36
37
|
name: 'hippodid:recall',
|
|
37
|
-
description:
|
|
38
|
+
description:
|
|
39
|
+
'Search HippoDid character memory and return relevant context. Call this at the start of a task to recall relevant memories.',
|
|
38
40
|
args: [
|
|
39
41
|
{
|
|
40
42
|
name: 'query',
|
|
@@ -46,11 +48,12 @@ export function createAutoRecallHook(
|
|
|
46
48
|
const query = args['query'] ?? '';
|
|
47
49
|
const result = await client.searchMemories(config.characterId, query);
|
|
48
50
|
if (result.ok && result.value.length > 0) {
|
|
49
|
-
logger.info(
|
|
51
|
+
logger.info(
|
|
52
|
+
`hippodid: recalled ${result.value.length} memories for query: ${query}`,
|
|
53
|
+
);
|
|
50
54
|
return result.value.map((m) => m.content).join('\n\n');
|
|
51
|
-
} else {
|
|
52
|
-
return 'No memories found.';
|
|
53
55
|
}
|
|
56
|
+
return 'No memories found.';
|
|
54
57
|
},
|
|
55
58
|
});
|
|
56
59
|
|
|
@@ -4,11 +4,20 @@ export function createMemoryFlushHook(
|
|
|
4
4
|
fileSync: FileSync,
|
|
5
5
|
logger: { info(msg: string): void; warn(msg: string): void },
|
|
6
6
|
): (api: any) => void {
|
|
7
|
-
return (
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
return (api: any) => {
|
|
8
|
+
api.on('before_compaction', async () => {
|
|
9
|
+
try {
|
|
10
|
+
const { synced, changed } = await fileSync.flushNow();
|
|
11
|
+
logger.info(
|
|
12
|
+
`hippodid: flushed ${synced} files before compaction (${changed} changed)`,
|
|
13
|
+
);
|
|
14
|
+
} catch (e) {
|
|
15
|
+
logger.warn(
|
|
16
|
+
`hippodid: compaction flush failed: ${e instanceof Error ? e.message : 'unknown'}`,
|
|
17
|
+
);
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
logger.info('hippodid: memory flush handler registered');
|
|
13
22
|
};
|
|
14
23
|
}
|
|
@@ -7,10 +7,39 @@ export function createSessionHooks(
|
|
|
7
7
|
autoRecall: boolean,
|
|
8
8
|
logger: { info(msg: string): void; warn(msg: string): void },
|
|
9
9
|
): (api: any) => void {
|
|
10
|
-
return (
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
return (api: any) => {
|
|
11
|
+
api.on('session_start', async () => {
|
|
12
|
+
try {
|
|
13
|
+
await tierManager.initialize();
|
|
14
|
+
if (!tierManager.shouldHydrateOnStart(autoRecall)) {
|
|
15
|
+
logger.info(
|
|
16
|
+
'hippodid: session start hydration skipped because auto-recall is active',
|
|
17
|
+
);
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
const hydrated = await fileSync.hydrateFromCloud();
|
|
22
|
+
logger.info(`hippodid: session started, hydrated ${hydrated} files`);
|
|
23
|
+
} catch (e) {
|
|
24
|
+
logger.warn(
|
|
25
|
+
`hippodid: session start error: ${e instanceof Error ? e.message : 'unknown'}`,
|
|
26
|
+
);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
|
|
30
|
+
api.on('session_end', async () => {
|
|
31
|
+
try {
|
|
32
|
+
const { synced, changed } = await fileSync.flushNow();
|
|
33
|
+
logger.info(
|
|
34
|
+
`hippodid: session ended, flushed ${synced} files (${changed} changed)`,
|
|
35
|
+
);
|
|
36
|
+
} catch (e) {
|
|
37
|
+
logger.warn(
|
|
38
|
+
`hippodid: session end error: ${e instanceof Error ? e.message : 'unknown'}`,
|
|
39
|
+
);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
logger.info('hippodid: session lifecycle hooks registered');
|
|
15
44
|
};
|
|
16
45
|
}
|