@mnemoai/core 1.1.0 → 1.1.1
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/cli.d.ts +2 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +7 -0
- package/dist/cli.js.map +7 -0
- package/dist/index.d.ts +128 -0
- package/dist/index.d.ts.map +1 -0
- package/{index.ts → dist/index.js} +526 -1333
- package/dist/index.js.map +7 -0
- package/dist/src/access-tracker.d.ts +97 -0
- package/dist/src/access-tracker.d.ts.map +1 -0
- package/dist/src/access-tracker.js +184 -0
- package/dist/src/access-tracker.js.map +7 -0
- package/dist/src/adapters/chroma.d.ts +31 -0
- package/dist/src/adapters/chroma.d.ts.map +1 -0
- package/{src/adapters/chroma.ts → dist/src/adapters/chroma.js} +45 -107
- package/dist/src/adapters/chroma.js.map +7 -0
- package/dist/src/adapters/lancedb.d.ts +29 -0
- package/dist/src/adapters/lancedb.d.ts.map +1 -0
- package/{src/adapters/lancedb.ts → dist/src/adapters/lancedb.js} +41 -109
- package/dist/src/adapters/lancedb.js.map +7 -0
- package/dist/src/adapters/pgvector.d.ts +33 -0
- package/dist/src/adapters/pgvector.d.ts.map +1 -0
- package/{src/adapters/pgvector.ts → dist/src/adapters/pgvector.js} +42 -104
- package/dist/src/adapters/pgvector.js.map +7 -0
- package/dist/src/adapters/qdrant.d.ts +34 -0
- package/dist/src/adapters/qdrant.d.ts.map +1 -0
- package/dist/src/adapters/qdrant.js +132 -0
- package/dist/src/adapters/qdrant.js.map +7 -0
- package/dist/src/adaptive-retrieval.d.ts +14 -0
- package/dist/src/adaptive-retrieval.d.ts.map +1 -0
- package/dist/src/adaptive-retrieval.js +52 -0
- package/dist/src/adaptive-retrieval.js.map +7 -0
- package/dist/src/audit-log.d.ts +56 -0
- package/dist/src/audit-log.d.ts.map +1 -0
- package/dist/src/audit-log.js +139 -0
- package/dist/src/audit-log.js.map +7 -0
- package/dist/src/chunker.d.ts +45 -0
- package/dist/src/chunker.d.ts.map +1 -0
- package/dist/src/chunker.js +157 -0
- package/dist/src/chunker.js.map +7 -0
- package/dist/src/config.d.ts +70 -0
- package/dist/src/config.d.ts.map +1 -0
- package/dist/src/config.js +142 -0
- package/dist/src/config.js.map +7 -0
- package/dist/src/decay-engine.d.ts +73 -0
- package/dist/src/decay-engine.d.ts.map +1 -0
- package/dist/src/decay-engine.js +119 -0
- package/dist/src/decay-engine.js.map +7 -0
- package/dist/src/embedder.d.ts +94 -0
- package/dist/src/embedder.d.ts.map +1 -0
- package/{src/embedder.ts → dist/src/embedder.js} +119 -317
- package/dist/src/embedder.js.map +7 -0
- package/dist/src/extraction-prompts.d.ts +12 -0
- package/dist/src/extraction-prompts.d.ts.map +1 -0
- package/dist/src/extraction-prompts.js +311 -0
- package/dist/src/extraction-prompts.js.map +7 -0
- package/dist/src/license.d.ts +29 -0
- package/dist/src/license.d.ts.map +1 -0
- package/{src/license.ts → dist/src/license.js} +42 -113
- package/dist/src/license.js.map +7 -0
- package/dist/src/llm-client.d.ts +23 -0
- package/dist/src/llm-client.d.ts.map +1 -0
- package/{src/llm-client.ts → dist/src/llm-client.js} +22 -55
- package/dist/src/llm-client.js.map +7 -0
- package/dist/src/logger.d.ts +33 -0
- package/dist/src/logger.d.ts.map +1 -0
- package/dist/src/logger.js +35 -0
- package/dist/src/logger.js.map +7 -0
- package/dist/src/mcp-server.d.ts +16 -0
- package/dist/src/mcp-server.d.ts.map +1 -0
- package/{src/mcp-server.ts → dist/src/mcp-server.js} +81 -181
- package/dist/src/mcp-server.js.map +7 -0
- package/dist/src/memory-categories.d.ts +40 -0
- package/dist/src/memory-categories.d.ts.map +1 -0
- package/dist/src/memory-categories.js +33 -0
- package/dist/src/memory-categories.js.map +7 -0
- package/dist/src/memory-upgrader.d.ts +71 -0
- package/dist/src/memory-upgrader.d.ts.map +1 -0
- package/dist/src/memory-upgrader.js +238 -0
- package/dist/src/memory-upgrader.js.map +7 -0
- package/dist/src/migrate.d.ts +47 -0
- package/dist/src/migrate.d.ts.map +1 -0
- package/{src/migrate.ts → dist/src/migrate.js} +57 -165
- package/dist/src/migrate.js.map +7 -0
- package/dist/src/mnemo.d.ts +67 -0
- package/dist/src/mnemo.d.ts.map +1 -0
- package/dist/src/mnemo.js +66 -0
- package/dist/src/mnemo.js.map +7 -0
- package/dist/src/noise-filter.d.ts +23 -0
- package/dist/src/noise-filter.d.ts.map +1 -0
- package/dist/src/noise-filter.js +62 -0
- package/dist/src/noise-filter.js.map +7 -0
- package/dist/src/noise-prototypes.d.ts +40 -0
- package/dist/src/noise-prototypes.d.ts.map +1 -0
- package/dist/src/noise-prototypes.js +116 -0
- package/dist/src/noise-prototypes.js.map +7 -0
- package/dist/src/observability.d.ts +16 -0
- package/dist/src/observability.d.ts.map +1 -0
- package/dist/src/observability.js +53 -0
- package/dist/src/observability.js.map +7 -0
- package/dist/src/query-tracker.d.ts +27 -0
- package/dist/src/query-tracker.d.ts.map +1 -0
- package/dist/src/query-tracker.js +32 -0
- package/dist/src/query-tracker.js.map +7 -0
- package/dist/src/reflection-event-store.d.ts +44 -0
- package/dist/src/reflection-event-store.d.ts.map +1 -0
- package/dist/src/reflection-event-store.js +50 -0
- package/dist/src/reflection-event-store.js.map +7 -0
- package/dist/src/reflection-item-store.d.ts +58 -0
- package/dist/src/reflection-item-store.d.ts.map +1 -0
- package/dist/src/reflection-item-store.js +69 -0
- package/dist/src/reflection-item-store.js.map +7 -0
- package/dist/src/reflection-mapped-metadata.d.ts +47 -0
- package/dist/src/reflection-mapped-metadata.d.ts.map +1 -0
- package/dist/src/reflection-mapped-metadata.js +40 -0
- package/dist/src/reflection-mapped-metadata.js.map +7 -0
- package/dist/src/reflection-metadata.d.ts +11 -0
- package/dist/src/reflection-metadata.d.ts.map +1 -0
- package/dist/src/reflection-metadata.js +24 -0
- package/dist/src/reflection-metadata.js.map +7 -0
- package/dist/src/reflection-ranking.d.ts +13 -0
- package/dist/src/reflection-ranking.d.ts.map +1 -0
- package/{src/reflection-ranking.ts → dist/src/reflection-ranking.js} +12 -21
- package/dist/src/reflection-ranking.js.map +7 -0
- package/dist/src/reflection-retry.d.ts +30 -0
- package/dist/src/reflection-retry.d.ts.map +1 -0
- package/{src/reflection-retry.ts → dist/src/reflection-retry.js} +24 -64
- package/dist/src/reflection-retry.js.map +7 -0
- package/dist/src/reflection-slices.d.ts +42 -0
- package/dist/src/reflection-slices.d.ts.map +1 -0
- package/{src/reflection-slices.ts → dist/src/reflection-slices.js} +60 -136
- package/dist/src/reflection-slices.js.map +7 -0
- package/dist/src/reflection-store.d.ts +85 -0
- package/dist/src/reflection-store.d.ts.map +1 -0
- package/dist/src/reflection-store.js +407 -0
- package/dist/src/reflection-store.js.map +7 -0
- package/dist/src/resonance-state.d.ts +19 -0
- package/dist/src/resonance-state.d.ts.map +1 -0
- package/{src/resonance-state.ts → dist/src/resonance-state.js} +13 -42
- package/dist/src/resonance-state.js.map +7 -0
- package/dist/src/retriever.d.ts +228 -0
- package/dist/src/retriever.d.ts.map +1 -0
- package/dist/src/retriever.js +1006 -0
- package/dist/src/retriever.js.map +7 -0
- package/dist/src/scopes.d.ts +58 -0
- package/dist/src/scopes.d.ts.map +1 -0
- package/dist/src/scopes.js +252 -0
- package/dist/src/scopes.js.map +7 -0
- package/dist/src/self-improvement-files.d.ts +20 -0
- package/dist/src/self-improvement-files.d.ts.map +1 -0
- package/{src/self-improvement-files.ts → dist/src/self-improvement-files.js} +24 -49
- package/dist/src/self-improvement-files.js.map +7 -0
- package/dist/src/semantic-gate.d.ts +24 -0
- package/dist/src/semantic-gate.d.ts.map +1 -0
- package/dist/src/semantic-gate.js +86 -0
- package/dist/src/semantic-gate.js.map +7 -0
- package/dist/src/session-recovery.d.ts +9 -0
- package/dist/src/session-recovery.d.ts.map +1 -0
- package/{src/session-recovery.ts → dist/src/session-recovery.js} +40 -57
- package/dist/src/session-recovery.js.map +7 -0
- package/dist/src/smart-extractor.d.ts +107 -0
- package/dist/src/smart-extractor.d.ts.map +1 -0
- package/{src/smart-extractor.ts → dist/src/smart-extractor.js} +130 -383
- package/dist/src/smart-extractor.js.map +7 -0
- package/dist/src/smart-metadata.d.ts +103 -0
- package/dist/src/smart-metadata.d.ts.map +1 -0
- package/dist/src/smart-metadata.js +361 -0
- package/dist/src/smart-metadata.js.map +7 -0
- package/dist/src/storage-adapter.d.ts +102 -0
- package/dist/src/storage-adapter.d.ts.map +1 -0
- package/dist/src/storage-adapter.js +22 -0
- package/dist/src/storage-adapter.js.map +7 -0
- package/dist/src/store.d.ts +108 -0
- package/dist/src/store.d.ts.map +1 -0
- package/dist/src/store.js +939 -0
- package/dist/src/store.js.map +7 -0
- package/dist/src/tier-manager.d.ts +57 -0
- package/dist/src/tier-manager.d.ts.map +1 -0
- package/dist/src/tier-manager.js +80 -0
- package/dist/src/tier-manager.js.map +7 -0
- package/dist/src/tools.d.ts +43 -0
- package/dist/src/tools.d.ts.map +1 -0
- package/dist/src/tools.js +1075 -0
- package/dist/src/tools.js.map +7 -0
- package/dist/src/wal-recovery.d.ts +30 -0
- package/dist/src/wal-recovery.d.ts.map +1 -0
- package/{src/wal-recovery.ts → dist/src/wal-recovery.js} +26 -79
- package/dist/src/wal-recovery.js.map +7 -0
- package/package.json +21 -2
- package/openclaw.plugin.json +0 -815
- package/src/access-tracker.ts +0 -341
- package/src/adapters/README.md +0 -78
- package/src/adapters/qdrant.ts +0 -191
- package/src/adaptive-retrieval.ts +0 -90
- package/src/audit-log.ts +0 -238
- package/src/chunker.ts +0 -254
- package/src/config.ts +0 -271
- package/src/decay-engine.ts +0 -238
- package/src/extraction-prompts.ts +0 -339
- package/src/memory-categories.ts +0 -71
- package/src/memory-upgrader.ts +0 -388
- package/src/mnemo.ts +0 -142
- package/src/noise-filter.ts +0 -97
- package/src/noise-prototypes.ts +0 -164
- package/src/observability.ts +0 -81
- package/src/query-tracker.ts +0 -57
- package/src/reflection-event-store.ts +0 -98
- package/src/reflection-item-store.ts +0 -112
- package/src/reflection-mapped-metadata.ts +0 -84
- package/src/reflection-metadata.ts +0 -23
- package/src/reflection-store.ts +0 -602
- package/src/retriever.ts +0 -1510
- package/src/scopes.ts +0 -375
- package/src/semantic-gate.ts +0 -121
- package/src/smart-metadata.ts +0 -561
- package/src/storage-adapter.ts +0 -153
- package/src/store.ts +0 -1330
- package/src/tier-manager.ts +0 -189
- package/src/tools.ts +0 -1292
- package/test/core.test.mjs +0 -301
package/openclaw.plugin.json
DELETED
|
@@ -1,815 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"id": "memory-lancedb-pro",
|
|
3
|
-
"name": "Mnemo Memory",
|
|
4
|
-
"description": "Cognitive memory framework with hybrid retrieval, multi-scope isolation, and management CLI",
|
|
5
|
-
"version": "1.1.0-beta.8",
|
|
6
|
-
"kind": "memory",
|
|
7
|
-
"configSchema": {
|
|
8
|
-
"type": "object",
|
|
9
|
-
"additionalProperties": false,
|
|
10
|
-
"properties": {
|
|
11
|
-
"embedding": {
|
|
12
|
-
"type": "object",
|
|
13
|
-
"additionalProperties": false,
|
|
14
|
-
"properties": {
|
|
15
|
-
"provider": {
|
|
16
|
-
"type": "string",
|
|
17
|
-
"const": "openai-compatible"
|
|
18
|
-
},
|
|
19
|
-
"apiKey": {
|
|
20
|
-
"oneOf": [
|
|
21
|
-
{
|
|
22
|
-
"type": "string",
|
|
23
|
-
"minLength": 1
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
"type": "array",
|
|
27
|
-
"items": {
|
|
28
|
-
"type": "string",
|
|
29
|
-
"minLength": 1
|
|
30
|
-
},
|
|
31
|
-
"minItems": 1
|
|
32
|
-
}
|
|
33
|
-
],
|
|
34
|
-
"description": "Single API key or array of keys for round-robin rotation"
|
|
35
|
-
},
|
|
36
|
-
"model": {
|
|
37
|
-
"type": "string"
|
|
38
|
-
},
|
|
39
|
-
"baseURL": {
|
|
40
|
-
"type": "string"
|
|
41
|
-
},
|
|
42
|
-
"dimensions": {
|
|
43
|
-
"type": "integer",
|
|
44
|
-
"minimum": 1
|
|
45
|
-
},
|
|
46
|
-
"taskQuery": {
|
|
47
|
-
"type": "string",
|
|
48
|
-
"description": "Embedding task for queries (provider-specific, e.g. Jina: retrieval.query)"
|
|
49
|
-
},
|
|
50
|
-
"taskPassage": {
|
|
51
|
-
"type": "string",
|
|
52
|
-
"description": "Embedding task for passages/documents (provider-specific, e.g. Jina: retrieval.passage)"
|
|
53
|
-
},
|
|
54
|
-
"normalized": {
|
|
55
|
-
"type": "boolean",
|
|
56
|
-
"description": "Request normalized embeddings when supported by the provider (e.g. Jina v5)"
|
|
57
|
-
},
|
|
58
|
-
"chunking": {
|
|
59
|
-
"type": "boolean",
|
|
60
|
-
"default": true,
|
|
61
|
-
"description": "Enable automatic chunking for documents exceeding embedding context limits"
|
|
62
|
-
}
|
|
63
|
-
},
|
|
64
|
-
"required": [
|
|
65
|
-
"apiKey"
|
|
66
|
-
]
|
|
67
|
-
},
|
|
68
|
-
"dbPath": {
|
|
69
|
-
"type": "string"
|
|
70
|
-
},
|
|
71
|
-
"enableManagementTools": {
|
|
72
|
-
"type": "boolean",
|
|
73
|
-
"default": false,
|
|
74
|
-
"description": "Enable management/debug tools such as memory_list, memory_stats, and governance-oriented self-improvement review/extract actions"
|
|
75
|
-
},
|
|
76
|
-
"sessionStrategy": {
|
|
77
|
-
"type": "string",
|
|
78
|
-
"enum": [
|
|
79
|
-
"memoryReflection",
|
|
80
|
-
"systemSessionMemory",
|
|
81
|
-
"none"
|
|
82
|
-
],
|
|
83
|
-
"default": "none",
|
|
84
|
-
"description": "Choose session pipeline: plugin memory-reflection, built-in session-memory, or none. Default none keeps session summaries disabled unless explicitly enabled."
|
|
85
|
-
},
|
|
86
|
-
"autoCapture": {
|
|
87
|
-
"type": "boolean",
|
|
88
|
-
"default": true
|
|
89
|
-
},
|
|
90
|
-
"autoRecall": {
|
|
91
|
-
"type": "boolean",
|
|
92
|
-
"default": false
|
|
93
|
-
},
|
|
94
|
-
"autoRecallMinLength": {
|
|
95
|
-
"type": "integer",
|
|
96
|
-
"minimum": 1,
|
|
97
|
-
"maximum": 200,
|
|
98
|
-
"default": 15,
|
|
99
|
-
"description": "Minimum prompt length (in characters) to trigger auto-recall. Prompts shorter than this are skipped. Default: 15 for English, 6 for CJK."
|
|
100
|
-
},
|
|
101
|
-
"autoRecallMinRepeated": {
|
|
102
|
-
"type": "integer",
|
|
103
|
-
"minimum": 0,
|
|
104
|
-
"maximum": 100,
|
|
105
|
-
"default": 0,
|
|
106
|
-
"description": "Minimum number of turns before the same memory can be recalled again in the same session. Set to 0 to disable deduplication (default behavior: inject all memories)."
|
|
107
|
-
},
|
|
108
|
-
"captureAssistant": {
|
|
109
|
-
"type": "boolean"
|
|
110
|
-
},
|
|
111
|
-
"smartExtraction": {
|
|
112
|
-
"type": "boolean",
|
|
113
|
-
"default": true,
|
|
114
|
-
"description": "Enable LLM-powered memory extraction. Falls back to regex capture when false."
|
|
115
|
-
},
|
|
116
|
-
"extractMinMessages": {
|
|
117
|
-
"type": "integer",
|
|
118
|
-
"minimum": 1,
|
|
119
|
-
"maximum": 100,
|
|
120
|
-
"default": 2,
|
|
121
|
-
"description": "Minimum conversation messages required before smart extraction runs."
|
|
122
|
-
},
|
|
123
|
-
"extractMaxChars": {
|
|
124
|
-
"type": "integer",
|
|
125
|
-
"minimum": 256,
|
|
126
|
-
"maximum": 100000,
|
|
127
|
-
"default": 8000,
|
|
128
|
-
"description": "Maximum conversation characters sent to the smart extraction LLM."
|
|
129
|
-
},
|
|
130
|
-
"retrieval": {
|
|
131
|
-
"type": "object",
|
|
132
|
-
"additionalProperties": false,
|
|
133
|
-
"properties": {
|
|
134
|
-
"mode": {
|
|
135
|
-
"type": "string",
|
|
136
|
-
"enum": [
|
|
137
|
-
"hybrid",
|
|
138
|
-
"vector"
|
|
139
|
-
],
|
|
140
|
-
"default": "hybrid"
|
|
141
|
-
},
|
|
142
|
-
"vectorWeight": {
|
|
143
|
-
"type": "number",
|
|
144
|
-
"minimum": 0,
|
|
145
|
-
"maximum": 1,
|
|
146
|
-
"default": 0.7
|
|
147
|
-
},
|
|
148
|
-
"bm25Weight": {
|
|
149
|
-
"type": "number",
|
|
150
|
-
"minimum": 0,
|
|
151
|
-
"maximum": 1,
|
|
152
|
-
"default": 0.3
|
|
153
|
-
},
|
|
154
|
-
"minScore": {
|
|
155
|
-
"type": "number",
|
|
156
|
-
"minimum": 0,
|
|
157
|
-
"maximum": 1,
|
|
158
|
-
"default": 0.3
|
|
159
|
-
},
|
|
160
|
-
"rerank": {
|
|
161
|
-
"type": "string",
|
|
162
|
-
"enum": [
|
|
163
|
-
"cross-encoder",
|
|
164
|
-
"lightweight",
|
|
165
|
-
"none"
|
|
166
|
-
],
|
|
167
|
-
"default": "cross-encoder"
|
|
168
|
-
},
|
|
169
|
-
"rerankApiKey": {
|
|
170
|
-
"type": "string",
|
|
171
|
-
"description": "API key for reranker service (enables cross-encoder reranking)"
|
|
172
|
-
},
|
|
173
|
-
"rerankModel": {
|
|
174
|
-
"type": "string",
|
|
175
|
-
"default": "jina-reranker-v3",
|
|
176
|
-
"description": "Reranker model name"
|
|
177
|
-
},
|
|
178
|
-
"rerankEndpoint": {
|
|
179
|
-
"type": "string",
|
|
180
|
-
"default": "https://api.jina.ai/v1/rerank",
|
|
181
|
-
"description": "Reranker API endpoint URL. Compatible with Jina, SiliconFlow, Pinecone, or any service with a similar interface."
|
|
182
|
-
},
|
|
183
|
-
"rerankProvider": {
|
|
184
|
-
"type": "string",
|
|
185
|
-
"enum": [
|
|
186
|
-
"jina",
|
|
187
|
-
"siliconflow",
|
|
188
|
-
"voyage",
|
|
189
|
-
"pinecone"
|
|
190
|
-
],
|
|
191
|
-
"default": "jina",
|
|
192
|
-
"description": "Reranker provider format. Determines request/response shape and auth header."
|
|
193
|
-
},
|
|
194
|
-
"candidatePoolSize": {
|
|
195
|
-
"type": "integer",
|
|
196
|
-
"minimum": 10,
|
|
197
|
-
"maximum": 100,
|
|
198
|
-
"default": 20
|
|
199
|
-
},
|
|
200
|
-
"recencyHalfLifeDays": {
|
|
201
|
-
"type": "number",
|
|
202
|
-
"minimum": 0,
|
|
203
|
-
"maximum": 365,
|
|
204
|
-
"default": 14,
|
|
205
|
-
"description": "Half-life in days for recency boost. Newer memories get higher scores. Set 0 to disable."
|
|
206
|
-
},
|
|
207
|
-
"recencyWeight": {
|
|
208
|
-
"type": "number",
|
|
209
|
-
"minimum": 0,
|
|
210
|
-
"maximum": 0.5,
|
|
211
|
-
"default": 0.1,
|
|
212
|
-
"description": "Maximum recency boost factor added to score"
|
|
213
|
-
},
|
|
214
|
-
"filterNoise": {
|
|
215
|
-
"type": "boolean",
|
|
216
|
-
"default": true,
|
|
217
|
-
"description": "Filter out noise memories (agent denials, meta-questions, boilerplate)"
|
|
218
|
-
},
|
|
219
|
-
"lengthNormAnchor": {
|
|
220
|
-
"type": "integer",
|
|
221
|
-
"minimum": 0,
|
|
222
|
-
"maximum": 5000,
|
|
223
|
-
"default": 500,
|
|
224
|
-
"description": "Length normalization anchor in chars. Entries longer than this get score penalized. Set 0 to disable."
|
|
225
|
-
},
|
|
226
|
-
"hardMinScore": {
|
|
227
|
-
"type": "number",
|
|
228
|
-
"minimum": 0,
|
|
229
|
-
"maximum": 1,
|
|
230
|
-
"default": 0.35,
|
|
231
|
-
"description": "Hard cutoff after all scoring stages. Results below this score are discarded."
|
|
232
|
-
},
|
|
233
|
-
"timeDecayHalfLifeDays": {
|
|
234
|
-
"type": "number",
|
|
235
|
-
"minimum": 0,
|
|
236
|
-
"maximum": 365,
|
|
237
|
-
"default": 60,
|
|
238
|
-
"description": "Time decay half-life in days. Old entries lose score gradually. Floor at 0.5x. Set 0 to disable."
|
|
239
|
-
},
|
|
240
|
-
"reinforcementFactor": {
|
|
241
|
-
"type": "number",
|
|
242
|
-
"minimum": 0,
|
|
243
|
-
"maximum": 2,
|
|
244
|
-
"default": 0.5,
|
|
245
|
-
"description": "Access reinforcement factor for time decay. Frequently recalled memories decay slower. 0 to disable."
|
|
246
|
-
},
|
|
247
|
-
"maxHalfLifeMultiplier": {
|
|
248
|
-
"type": "number",
|
|
249
|
-
"minimum": 1,
|
|
250
|
-
"maximum": 10,
|
|
251
|
-
"default": 3,
|
|
252
|
-
"description": "Maximum half-life multiplier from access reinforcement. Prevents frequently accessed memories from becoming immortal."
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
},
|
|
256
|
-
"decay": {
|
|
257
|
-
"type": "object",
|
|
258
|
-
"additionalProperties": false,
|
|
259
|
-
"properties": {
|
|
260
|
-
"recencyHalfLifeDays": { "type": "number", "minimum": 1, "maximum": 365, "default": 30 },
|
|
261
|
-
"recencyWeight": { "type": "number", "minimum": 0, "maximum": 1, "default": 0.4 },
|
|
262
|
-
"frequencyWeight": { "type": "number", "minimum": 0, "maximum": 1, "default": 0.3 },
|
|
263
|
-
"intrinsicWeight": { "type": "number", "minimum": 0, "maximum": 1, "default": 0.3 },
|
|
264
|
-
"staleThreshold": { "type": "number", "minimum": 0, "maximum": 1, "default": 0.3 },
|
|
265
|
-
"searchBoostMin": { "type": "number", "minimum": 0, "maximum": 1, "default": 0.3 },
|
|
266
|
-
"importanceModulation": { "type": "number", "minimum": 0, "maximum": 10, "default": 1.5 },
|
|
267
|
-
"betaCore": { "type": "number", "minimum": 0.1, "maximum": 5, "default": 0.8 },
|
|
268
|
-
"betaWorking": { "type": "number", "minimum": 0.1, "maximum": 5, "default": 1.0 },
|
|
269
|
-
"betaPeripheral": { "type": "number", "minimum": 0.1, "maximum": 5, "default": 1.3 },
|
|
270
|
-
"coreDecayFloor": { "type": "number", "minimum": 0, "maximum": 1, "default": 0.9 },
|
|
271
|
-
"workingDecayFloor": { "type": "number", "minimum": 0, "maximum": 1, "default": 0.7 },
|
|
272
|
-
"peripheralDecayFloor": { "type": "number", "minimum": 0, "maximum": 1, "default": 0.5 }
|
|
273
|
-
}
|
|
274
|
-
},
|
|
275
|
-
"tier": {
|
|
276
|
-
"type": "object",
|
|
277
|
-
"additionalProperties": false,
|
|
278
|
-
"properties": {
|
|
279
|
-
"coreAccessThreshold": { "type": "integer", "minimum": 1, "maximum": 1000, "default": 10 },
|
|
280
|
-
"coreCompositeThreshold": { "type": "number", "minimum": 0, "maximum": 1, "default": 0.7 },
|
|
281
|
-
"coreImportanceThreshold": { "type": "number", "minimum": 0, "maximum": 1, "default": 0.8 },
|
|
282
|
-
"peripheralCompositeThreshold": { "type": "number", "minimum": 0, "maximum": 1, "default": 0.15 },
|
|
283
|
-
"peripheralAgeDays": { "type": "integer", "minimum": 1, "maximum": 3650, "default": 60 },
|
|
284
|
-
"workingAccessThreshold": { "type": "integer", "minimum": 1, "maximum": 1000, "default": 3 },
|
|
285
|
-
"workingCompositeThreshold": { "type": "number", "minimum": 0, "maximum": 1, "default": 0.4 }
|
|
286
|
-
}
|
|
287
|
-
},
|
|
288
|
-
"sessionMemory": {
|
|
289
|
-
"type": "object",
|
|
290
|
-
"additionalProperties": false,
|
|
291
|
-
"description": "Deprecated legacy switch. Kept for compatibility and mapped to sessionStrategy.",
|
|
292
|
-
"properties": {
|
|
293
|
-
"enabled": {
|
|
294
|
-
"type": "boolean",
|
|
295
|
-
"default": false,
|
|
296
|
-
"description": "Deprecated. true -> sessionStrategy=systemSessionMemory, false -> sessionStrategy=none. Disabled by default."
|
|
297
|
-
},
|
|
298
|
-
"messageCount": {
|
|
299
|
-
"type": "integer",
|
|
300
|
-
"minimum": 1,
|
|
301
|
-
"maximum": 100,
|
|
302
|
-
"default": 15,
|
|
303
|
-
"description": "Legacy compatibility field. Mapped to memoryReflection.messageCount."
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
},
|
|
307
|
-
"selfImprovement": {
|
|
308
|
-
"type": "object",
|
|
309
|
-
"additionalProperties": false,
|
|
310
|
-
"properties": {
|
|
311
|
-
"enabled": {
|
|
312
|
-
"type": "boolean",
|
|
313
|
-
"default": true
|
|
314
|
-
},
|
|
315
|
-
"beforeResetNote": {
|
|
316
|
-
"type": "boolean",
|
|
317
|
-
"default": true
|
|
318
|
-
},
|
|
319
|
-
"skipSubagentBootstrap": {
|
|
320
|
-
"type": "boolean",
|
|
321
|
-
"default": true
|
|
322
|
-
},
|
|
323
|
-
"ensureLearningFiles": {
|
|
324
|
-
"type": "boolean",
|
|
325
|
-
"default": true
|
|
326
|
-
}
|
|
327
|
-
}
|
|
328
|
-
},
|
|
329
|
-
"memoryReflection": {
|
|
330
|
-
"type": "object",
|
|
331
|
-
"additionalProperties": false,
|
|
332
|
-
"properties": {
|
|
333
|
-
"storeToLanceDB": {
|
|
334
|
-
"type": "boolean",
|
|
335
|
-
"default": true
|
|
336
|
-
},
|
|
337
|
-
"writeLegacyCombined": {
|
|
338
|
-
"type": "boolean",
|
|
339
|
-
"default": true
|
|
340
|
-
},
|
|
341
|
-
"injectMode": {
|
|
342
|
-
"type": "string",
|
|
343
|
-
"enum": [
|
|
344
|
-
"inheritance-only",
|
|
345
|
-
"inheritance+derived"
|
|
346
|
-
],
|
|
347
|
-
"default": "inheritance+derived"
|
|
348
|
-
},
|
|
349
|
-
"agentId": {
|
|
350
|
-
"type": "string",
|
|
351
|
-
"description": "Optional dedicated agent id used to run reflection generation (for example: memory-distiller)."
|
|
352
|
-
},
|
|
353
|
-
"messageCount": {
|
|
354
|
-
"type": "integer",
|
|
355
|
-
"minimum": 1,
|
|
356
|
-
"maximum": 500,
|
|
357
|
-
"default": 120
|
|
358
|
-
},
|
|
359
|
-
"maxInputChars": {
|
|
360
|
-
"type": "integer",
|
|
361
|
-
"minimum": 1000,
|
|
362
|
-
"maximum": 200000,
|
|
363
|
-
"default": 24000
|
|
364
|
-
},
|
|
365
|
-
"timeoutMs": {
|
|
366
|
-
"type": "integer",
|
|
367
|
-
"minimum": 1000,
|
|
368
|
-
"maximum": 120000,
|
|
369
|
-
"default": 20000
|
|
370
|
-
},
|
|
371
|
-
"thinkLevel": {
|
|
372
|
-
"type": "string",
|
|
373
|
-
"enum": [
|
|
374
|
-
"off",
|
|
375
|
-
"minimal",
|
|
376
|
-
"low",
|
|
377
|
-
"medium",
|
|
378
|
-
"high"
|
|
379
|
-
],
|
|
380
|
-
"default": "medium"
|
|
381
|
-
},
|
|
382
|
-
"errorReminderMaxEntries": {
|
|
383
|
-
"type": "integer",
|
|
384
|
-
"minimum": 1,
|
|
385
|
-
"maximum": 20,
|
|
386
|
-
"default": 3
|
|
387
|
-
},
|
|
388
|
-
"dedupeErrorSignals": {
|
|
389
|
-
"type": "boolean",
|
|
390
|
-
"default": true
|
|
391
|
-
}
|
|
392
|
-
}
|
|
393
|
-
},
|
|
394
|
-
"scopes": {
|
|
395
|
-
"type": "object",
|
|
396
|
-
"additionalProperties": false,
|
|
397
|
-
"properties": {
|
|
398
|
-
"default": {
|
|
399
|
-
"type": "string",
|
|
400
|
-
"default": "global"
|
|
401
|
-
},
|
|
402
|
-
"definitions": {
|
|
403
|
-
"type": "object",
|
|
404
|
-
"additionalProperties": {
|
|
405
|
-
"type": "object",
|
|
406
|
-
"properties": {
|
|
407
|
-
"description": {
|
|
408
|
-
"type": "string"
|
|
409
|
-
}
|
|
410
|
-
}
|
|
411
|
-
}
|
|
412
|
-
},
|
|
413
|
-
"agentAccess": {
|
|
414
|
-
"type": "object",
|
|
415
|
-
"additionalProperties": {
|
|
416
|
-
"type": "array",
|
|
417
|
-
"items": {
|
|
418
|
-
"type": "string"
|
|
419
|
-
}
|
|
420
|
-
}
|
|
421
|
-
}
|
|
422
|
-
}
|
|
423
|
-
},
|
|
424
|
-
"llm": {
|
|
425
|
-
"type": "object",
|
|
426
|
-
"additionalProperties": false,
|
|
427
|
-
"properties": {
|
|
428
|
-
"apiKey": {
|
|
429
|
-
"type": "string"
|
|
430
|
-
},
|
|
431
|
-
"model": {
|
|
432
|
-
"type": "string",
|
|
433
|
-
"default": "openai/gpt-oss-120b"
|
|
434
|
-
},
|
|
435
|
-
"baseURL": {
|
|
436
|
-
"type": "string"
|
|
437
|
-
}
|
|
438
|
-
}
|
|
439
|
-
},
|
|
440
|
-
"mdMirror": {
|
|
441
|
-
"type": "object",
|
|
442
|
-
"additionalProperties": false,
|
|
443
|
-
"properties": {
|
|
444
|
-
"enabled": {
|
|
445
|
-
"type": "boolean",
|
|
446
|
-
"default": false,
|
|
447
|
-
"description": "Enable dual-write: store memories in both LanceDB and human-readable Markdown files"
|
|
448
|
-
},
|
|
449
|
-
"dir": {
|
|
450
|
-
"type": "string",
|
|
451
|
-
"description": "Fallback directory for Markdown mirror files when agent workspace is unknown"
|
|
452
|
-
}
|
|
453
|
-
}
|
|
454
|
-
}
|
|
455
|
-
},
|
|
456
|
-
"required": [
|
|
457
|
-
"embedding"
|
|
458
|
-
]
|
|
459
|
-
},
|
|
460
|
-
"uiHints": {
|
|
461
|
-
"embedding.apiKey": {
|
|
462
|
-
"label": "API Key(s)",
|
|
463
|
-
"sensitive": true,
|
|
464
|
-
"placeholder": "sk-proj-... or [\"key1\", \"key2\"] for rotation",
|
|
465
|
-
"help": "Single API key or array of keys for round-robin rotation with automatic failover on rate limits (or use ${OPENAI_API_KEY}; use a dummy value for keyless local endpoints)"
|
|
466
|
-
},
|
|
467
|
-
"embedding.model": {
|
|
468
|
-
"label": "Embedding Model",
|
|
469
|
-
"placeholder": "text-embedding-3-small",
|
|
470
|
-
"help": "Embedding model name (e.g. text-embedding-3-small, gemini-embedding-001, nomic-embed-text)"
|
|
471
|
-
},
|
|
472
|
-
"embedding.baseURL": {
|
|
473
|
-
"label": "Base URL",
|
|
474
|
-
"placeholder": "https://api.openai.com/v1",
|
|
475
|
-
"help": "Custom base URL for OpenAI-compatible embedding endpoints (e.g. https://generativelanguage.googleapis.com/v1beta/openai/ for Gemini, http://localhost:11434/v1 for Ollama)",
|
|
476
|
-
"advanced": true
|
|
477
|
-
},
|
|
478
|
-
"embedding.dimensions": {
|
|
479
|
-
"label": "Vector Dimensions",
|
|
480
|
-
"placeholder": "auto-detected from model",
|
|
481
|
-
"help": "Override vector dimensions for custom models not in the built-in lookup table",
|
|
482
|
-
"advanced": true
|
|
483
|
-
},
|
|
484
|
-
"embedding.taskQuery": {
|
|
485
|
-
"label": "Query Task",
|
|
486
|
-
"placeholder": "retrieval.query",
|
|
487
|
-
"help": "Optional task selector for query embeddings (Jina: retrieval.query). If unset, no task field is sent.",
|
|
488
|
-
"advanced": true
|
|
489
|
-
},
|
|
490
|
-
"embedding.taskPassage": {
|
|
491
|
-
"label": "Passage Task",
|
|
492
|
-
"placeholder": "retrieval.passage",
|
|
493
|
-
"help": "Optional task selector for passage/document embeddings (Jina: retrieval.passage). If unset, no task field is sent.",
|
|
494
|
-
"advanced": true
|
|
495
|
-
},
|
|
496
|
-
"embedding.normalized": {
|
|
497
|
-
"label": "Normalized Embeddings",
|
|
498
|
-
"help": "Request normalized embeddings when the provider supports it (Jina v5). If unset, the field is not sent.",
|
|
499
|
-
"advanced": true
|
|
500
|
-
},
|
|
501
|
-
"embedding.chunking": {
|
|
502
|
-
"label": "Auto-Chunk Documents",
|
|
503
|
-
"help": "Automatically split long documents into chunks when they exceed embedding context limits. Enabled by default.",
|
|
504
|
-
"advanced": true
|
|
505
|
-
},
|
|
506
|
-
"dbPath": {
|
|
507
|
-
"label": "Database Path",
|
|
508
|
-
"placeholder": "~/.openclaw/memory/lancedb-pro",
|
|
509
|
-
"help": "Directory path for the LanceDB database files",
|
|
510
|
-
"advanced": true
|
|
511
|
-
},
|
|
512
|
-
"smartExtraction": {
|
|
513
|
-
"label": "Smart Extraction",
|
|
514
|
-
"help": "Enable LLM-powered 6-category memory extraction. Falls back to regex capture when off."
|
|
515
|
-
},
|
|
516
|
-
"llm.apiKey": {
|
|
517
|
-
"label": "LLM API Key",
|
|
518
|
-
"sensitive": true,
|
|
519
|
-
"help": "API key for smart extraction LLM (defaults to embedding apiKey)",
|
|
520
|
-
"advanced": true
|
|
521
|
-
},
|
|
522
|
-
"llm.model": {
|
|
523
|
-
"label": "LLM Model",
|
|
524
|
-
"help": "Model for memory extraction and dedup (default: gpt-4o-mini)",
|
|
525
|
-
"advanced": true
|
|
526
|
-
},
|
|
527
|
-
"llm.baseURL": {
|
|
528
|
-
"label": "LLM Base URL",
|
|
529
|
-
"help": "Base URL for LLM API (defaults to embedding baseURL)",
|
|
530
|
-
"advanced": true
|
|
531
|
-
},
|
|
532
|
-
"extractMinMessages": {
|
|
533
|
-
"label": "Min Messages for Extraction",
|
|
534
|
-
"help": "Minimum conversation messages before smart extraction triggers",
|
|
535
|
-
"advanced": true
|
|
536
|
-
},
|
|
537
|
-
"extractMaxChars": {
|
|
538
|
-
"label": "Max Chars for Extraction",
|
|
539
|
-
"help": "Maximum conversation characters to process for extraction",
|
|
540
|
-
"advanced": true
|
|
541
|
-
},
|
|
542
|
-
"autoCapture": {
|
|
543
|
-
"label": "Auto-Capture",
|
|
544
|
-
"help": "Automatically capture important information from conversations (enabled by default)"
|
|
545
|
-
},
|
|
546
|
-
"autoRecall": {
|
|
547
|
-
"label": "Auto-Recall",
|
|
548
|
-
"help": "Automatically inject relevant memories into context"
|
|
549
|
-
},
|
|
550
|
-
"autoRecallMinLength": {
|
|
551
|
-
"label": "Auto-Recall Min Length",
|
|
552
|
-
"help": "Minimum prompt length to trigger auto-recall (shorter prompts are skipped). Default: 15 chars for English, 6 for CJK.",
|
|
553
|
-
"advanced": true
|
|
554
|
-
},
|
|
555
|
-
"autoRecallMinRepeated": {
|
|
556
|
-
"label": "Auto-Recall Min Repeated",
|
|
557
|
-
"help": "Minimum number of conversation turns before a specific memory can be re-injected in the same session.",
|
|
558
|
-
"advanced": true
|
|
559
|
-
},
|
|
560
|
-
"captureAssistant": {
|
|
561
|
-
"label": "Capture Assistant Messages",
|
|
562
|
-
"help": "Also auto-capture assistant messages (default false to reduce memory pollution)",
|
|
563
|
-
"advanced": true
|
|
564
|
-
},
|
|
565
|
-
"retrieval.mode": {
|
|
566
|
-
"label": "Retrieval Mode",
|
|
567
|
-
"help": "Use hybrid search (vector + BM25) or vector-only for backward compatibility",
|
|
568
|
-
"advanced": true
|
|
569
|
-
},
|
|
570
|
-
"retrieval.vectorWeight": {
|
|
571
|
-
"label": "Vector Search Weight",
|
|
572
|
-
"help": "Weight for vector similarity in hybrid search (0-1)",
|
|
573
|
-
"advanced": true
|
|
574
|
-
},
|
|
575
|
-
"retrieval.bm25Weight": {
|
|
576
|
-
"label": "BM25 Search Weight",
|
|
577
|
-
"help": "Weight for BM25 keyword search in hybrid search (0-1)",
|
|
578
|
-
"advanced": true
|
|
579
|
-
},
|
|
580
|
-
"retrieval.minScore": {
|
|
581
|
-
"label": "Minimum Score Threshold",
|
|
582
|
-
"help": "Drop results below this relevance score (0-1)",
|
|
583
|
-
"advanced": true
|
|
584
|
-
},
|
|
585
|
-
"retrieval.rerank": {
|
|
586
|
-
"label": "Reranking Mode",
|
|
587
|
-
"help": "Re-score fused results for better quality (cross-encoder uses configured reranker API)",
|
|
588
|
-
"advanced": true
|
|
589
|
-
},
|
|
590
|
-
"retrieval.rerankApiKey": {
|
|
591
|
-
"label": "Reranker API Key",
|
|
592
|
-
"sensitive": true,
|
|
593
|
-
"placeholder": "jina_... / sk-... / pcsk_...",
|
|
594
|
-
"help": "Reranker API key for cross-encoder reranking",
|
|
595
|
-
"advanced": true
|
|
596
|
-
},
|
|
597
|
-
"retrieval.rerankModel": {
|
|
598
|
-
"label": "Reranker Model",
|
|
599
|
-
"placeholder": "jina-reranker-v3",
|
|
600
|
-
"help": "Reranker model name (e.g. jina-reranker-v3, BAAI/bge-reranker-v2-m3)",
|
|
601
|
-
"advanced": true
|
|
602
|
-
},
|
|
603
|
-
"retrieval.rerankEndpoint": {
|
|
604
|
-
"label": "Reranker Endpoint",
|
|
605
|
-
"placeholder": "https://api.jina.ai/v1/rerank",
|
|
606
|
-
"help": "Custom reranker API endpoint URL",
|
|
607
|
-
"advanced": true
|
|
608
|
-
},
|
|
609
|
-
"retrieval.rerankProvider": {
|
|
610
|
-
"label": "Reranker Provider",
|
|
611
|
-
"help": "Provider format: jina (default), siliconflow, voyage, or pinecone",
|
|
612
|
-
"advanced": true
|
|
613
|
-
},
|
|
614
|
-
"retrieval.candidatePoolSize": {
|
|
615
|
-
"label": "Candidate Pool Size",
|
|
616
|
-
"help": "Number of candidates to fetch before fusion and reranking",
|
|
617
|
-
"advanced": true
|
|
618
|
-
},
|
|
619
|
-
"retrieval.lengthNormAnchor": {
|
|
620
|
-
"label": "Length Normalization Anchor",
|
|
621
|
-
"help": "Entries longer than this (chars) get score penalized to prevent long entries dominating. 0 = disabled.",
|
|
622
|
-
"advanced": true
|
|
623
|
-
},
|
|
624
|
-
"retrieval.hardMinScore": {
|
|
625
|
-
"label": "Hard Minimum Score",
|
|
626
|
-
"help": "Discard results below this score after all scoring stages. Higher = fewer but more relevant results.",
|
|
627
|
-
"advanced": true
|
|
628
|
-
},
|
|
629
|
-
"retrieval.timeDecayHalfLifeDays": {
|
|
630
|
-
"label": "Time Decay Half-Life",
|
|
631
|
-
"help": "Old entries lose score over this many days. Floor at 0.5x. 0 = disabled.",
|
|
632
|
-
"advanced": true
|
|
633
|
-
},
|
|
634
|
-
"decay.recencyHalfLifeDays": {
|
|
635
|
-
"label": "Decay Half-Life",
|
|
636
|
-
"help": "Base half-life for Weibull lifecycle decay.",
|
|
637
|
-
"advanced": true
|
|
638
|
-
},
|
|
639
|
-
"decay.frequencyWeight": {
|
|
640
|
-
"label": "Decay Frequency Weight",
|
|
641
|
-
"help": "Weight of access frequency in lifecycle score.",
|
|
642
|
-
"advanced": true
|
|
643
|
-
},
|
|
644
|
-
"decay.intrinsicWeight": {
|
|
645
|
-
"label": "Decay Intrinsic Weight",
|
|
646
|
-
"help": "Weight of importance × confidence in lifecycle score.",
|
|
647
|
-
"advanced": true
|
|
648
|
-
},
|
|
649
|
-
"decay.betaCore": {
|
|
650
|
-
"label": "Core Beta",
|
|
651
|
-
"help": "Weibull beta for core memories.",
|
|
652
|
-
"advanced": true
|
|
653
|
-
},
|
|
654
|
-
"decay.betaWorking": {
|
|
655
|
-
"label": "Working Beta",
|
|
656
|
-
"help": "Weibull beta for working memories.",
|
|
657
|
-
"advanced": true
|
|
658
|
-
},
|
|
659
|
-
"decay.betaPeripheral": {
|
|
660
|
-
"label": "Peripheral Beta",
|
|
661
|
-
"help": "Weibull beta for peripheral memories.",
|
|
662
|
-
"advanced": true
|
|
663
|
-
},
|
|
664
|
-
"tier.coreAccessThreshold": {
|
|
665
|
-
"label": "Core Access Threshold",
|
|
666
|
-
"help": "Minimum recall count before promoting to core.",
|
|
667
|
-
"advanced": true
|
|
668
|
-
},
|
|
669
|
-
"tier.coreCompositeThreshold": {
|
|
670
|
-
"label": "Core Composite Threshold",
|
|
671
|
-
"help": "Minimum lifecycle composite before promoting to core.",
|
|
672
|
-
"advanced": true
|
|
673
|
-
},
|
|
674
|
-
"tier.peripheralCompositeThreshold": {
|
|
675
|
-
"label": "Peripheral Composite Threshold",
|
|
676
|
-
"help": "Memories below this lifecycle score can demote to peripheral.",
|
|
677
|
-
"advanced": true
|
|
678
|
-
},
|
|
679
|
-
"tier.peripheralAgeDays": {
|
|
680
|
-
"label": "Peripheral Age Days",
|
|
681
|
-
"help": "Age threshold for demoting stale working memories.",
|
|
682
|
-
"advanced": true
|
|
683
|
-
},
|
|
684
|
-
"sessionMemory.enabled": {
|
|
685
|
-
"label": "Session Memory (Deprecated)",
|
|
686
|
-
"help": "Legacy compatibility: true maps to systemSessionMemory, false maps to none.",
|
|
687
|
-
"advanced": true
|
|
688
|
-
},
|
|
689
|
-
"sessionMemory.messageCount": {
|
|
690
|
-
"label": "Session Message Count (Legacy)",
|
|
691
|
-
"help": "Legacy compatibility field; mapped to memoryReflection.messageCount.",
|
|
692
|
-
"advanced": true
|
|
693
|
-
},
|
|
694
|
-
"sessionStrategy": {
|
|
695
|
-
"label": "Session Strategy",
|
|
696
|
-
"help": "memoryReflection / systemSessionMemory / none",
|
|
697
|
-
"advanced": true
|
|
698
|
-
},
|
|
699
|
-
"selfImprovement.enabled": {
|
|
700
|
-
"label": "Self-Improvement",
|
|
701
|
-
"help": "Enable self-improvement reminder and governance tools"
|
|
702
|
-
},
|
|
703
|
-
"selfImprovement.beforeResetNote": {
|
|
704
|
-
"label": "Reset Reminder Note",
|
|
705
|
-
"help": "Append /note reminder before /new and /reset",
|
|
706
|
-
"advanced": true
|
|
707
|
-
},
|
|
708
|
-
"selfImprovement.skipSubagentBootstrap": {
|
|
709
|
-
"label": "Skip Subagent Bootstrap",
|
|
710
|
-
"help": "Do not inject reminder file into subagent bootstrap context",
|
|
711
|
-
"advanced": true
|
|
712
|
-
},
|
|
713
|
-
"selfImprovement.ensureLearningFiles": {
|
|
714
|
-
"label": "Ensure Learning Files",
|
|
715
|
-
"help": "Auto-create .learnings files when missing",
|
|
716
|
-
"advanced": true
|
|
717
|
-
},
|
|
718
|
-
"memoryReflection.storeToLanceDB": {
|
|
719
|
-
"label": "Store Reflection To LanceDB",
|
|
720
|
-
"help": "Persist reflection event + item rows to LanceDB (effective only under memoryReflection strategy)",
|
|
721
|
-
"advanced": true
|
|
722
|
-
},
|
|
723
|
-
"memoryReflection.writeLegacyCombined": {
|
|
724
|
-
"label": "Write Legacy Combined Reflection",
|
|
725
|
-
"help": "Compatibility switch: also write legacy combined memory-reflection rows during migration.",
|
|
726
|
-
"advanced": true
|
|
727
|
-
},
|
|
728
|
-
"memoryReflection.injectMode": {
|
|
729
|
-
"label": "Reflection Inject Mode",
|
|
730
|
-
"help": "inheritance-only or inheritance+derived",
|
|
731
|
-
"advanced": true
|
|
732
|
-
},
|
|
733
|
-
"memoryReflection.agentId": {
|
|
734
|
-
"label": "Reflection Agent Id",
|
|
735
|
-
"help": "Optional dedicated agent id used for reflection generation (e.g. memory-distiller)",
|
|
736
|
-
"advanced": true
|
|
737
|
-
},
|
|
738
|
-
"memoryReflection.messageCount": {
|
|
739
|
-
"label": "Reflection Message Count",
|
|
740
|
-
"help": "Recent messages included in reflection input",
|
|
741
|
-
"advanced": true
|
|
742
|
-
},
|
|
743
|
-
"memoryReflection.maxInputChars": {
|
|
744
|
-
"label": "Reflection Max Input Chars",
|
|
745
|
-
"help": "Max prompt chars sent to reflection run",
|
|
746
|
-
"advanced": true
|
|
747
|
-
},
|
|
748
|
-
"memoryReflection.timeoutMs": {
|
|
749
|
-
"label": "Reflection Timeout (ms)",
|
|
750
|
-
"help": "Timeout for reflection run",
|
|
751
|
-
"advanced": true
|
|
752
|
-
},
|
|
753
|
-
"memoryReflection.thinkLevel": {
|
|
754
|
-
"label": "Reflection Think Level",
|
|
755
|
-
"help": "off/minimal/low/medium/high",
|
|
756
|
-
"advanced": true
|
|
757
|
-
},
|
|
758
|
-
"memoryReflection.errorReminderMaxEntries": {
|
|
759
|
-
"label": "Error Reminder Max Entries",
|
|
760
|
-
"help": "Max recent error hints injected into prompt",
|
|
761
|
-
"advanced": true
|
|
762
|
-
},
|
|
763
|
-
"memoryReflection.dedupeErrorSignals": {
|
|
764
|
-
"label": "Dedupe Error Signals",
|
|
765
|
-
"help": "Deduplicate repeated error signatures per session",
|
|
766
|
-
"advanced": true
|
|
767
|
-
},
|
|
768
|
-
"scopes.default": {
|
|
769
|
-
"label": "Default Scope",
|
|
770
|
-
"help": "Default memory scope for new memories",
|
|
771
|
-
"advanced": true
|
|
772
|
-
},
|
|
773
|
-
"scopes.definitions": {
|
|
774
|
-
"label": "Scope Definitions",
|
|
775
|
-
"help": "Define custom memory scopes with descriptions",
|
|
776
|
-
"advanced": true
|
|
777
|
-
},
|
|
778
|
-
"scopes.agentAccess": {
|
|
779
|
-
"label": "Agent Access Control",
|
|
780
|
-
"help": "Define which scopes each agent can access",
|
|
781
|
-
"advanced": true
|
|
782
|
-
},
|
|
783
|
-
"enableManagementTools": {
|
|
784
|
-
"label": "Management Tools",
|
|
785
|
-
"help": "Enable management/debug tools such as memory_list, memory_stats, and governance-oriented self-improvement review/extract actions.",
|
|
786
|
-
"advanced": true
|
|
787
|
-
},
|
|
788
|
-
"mdMirror.enabled": {
|
|
789
|
-
"label": "Markdown Mirror",
|
|
790
|
-
"help": "Write a human-readable Markdown copy alongside LanceDB storage (dual-write mode)"
|
|
791
|
-
},
|
|
792
|
-
"mdMirror.dir": {
|
|
793
|
-
"label": "Mirror Fallback Directory",
|
|
794
|
-
"help": "Fallback directory when agent workspace mapping is unavailable",
|
|
795
|
-
"advanced": true
|
|
796
|
-
},
|
|
797
|
-
"llm.apiKey": {
|
|
798
|
-
"label": "LLM API Key",
|
|
799
|
-
"sensitive": true,
|
|
800
|
-
"placeholder": "sk-... or ${GROQ_API_KEY}",
|
|
801
|
-
"help": "API key for LLM used by smart memory extraction (defaults to embedding.apiKey if omitted)"
|
|
802
|
-
},
|
|
803
|
-
"llm.model": {
|
|
804
|
-
"label": "LLM Model",
|
|
805
|
-
"placeholder": "openai/gpt-oss-120b",
|
|
806
|
-
"help": "OpenAI-compatible chat model for memory extraction/summary"
|
|
807
|
-
},
|
|
808
|
-
"llm.baseURL": {
|
|
809
|
-
"label": "LLM Base URL",
|
|
810
|
-
"placeholder": "https://api.groq.com/openai/v1",
|
|
811
|
-
"help": "OpenAI-compatible base URL for LLM (defaults to embedding.baseURL if omitted)",
|
|
812
|
-
"advanced": true
|
|
813
|
-
}
|
|
814
|
-
}
|
|
815
|
-
}
|