openclaw-amem 1.2.0 → 1.2.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/README.md +11 -2
- package/openclaw.plugin.json +15 -3
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -33,7 +33,7 @@ The first open-source A-MEM memory plugin for OpenClaw: dynamic graph linking, h
|
|
|
33
33
|
- OpenClaw v2026.4+
|
|
34
34
|
- Node.js 24 (18+ works; 24/26 supported)
|
|
35
35
|
- Qdrant running on `:6333`
|
|
36
|
-
-
|
|
36
|
+
- An LLM: `ANTHROPIC_API_KEY` by default, or any OpenAI-compatible provider — see [LLM provider](#llm-provider)
|
|
37
37
|
|
|
38
38
|
## Installation
|
|
39
39
|
|
|
@@ -83,6 +83,15 @@ Add `openclaw-amem` to your allowed plugins and hook it into the `memory` slot:
|
|
|
83
83
|
openclaw gateway restart
|
|
84
84
|
```
|
|
85
85
|
|
|
86
|
+
## LLM provider
|
|
87
|
+
|
|
88
|
+
The plugin calls an LLM for note construction, linking, and evolution. Pick the backend with `AMEM_LLM_PROVIDER`:
|
|
89
|
+
|
|
90
|
+
- **`anthropic`** (default) — the Anthropic Messages API. Set `ANTHROPIC_API_KEY`.
|
|
91
|
+
- **`openai`** — the OpenAI Chat Completions API, which every OpenAI-compatible endpoint speaks. Set `AMEM_LLM_PROVIDER=openai`, point `AMEM_LLM_BASE_URL` at the endpoint, and set `AMEM_LLM_API_KEY` (or the standard `OPENAI_API_KEY`). Covers **OpenAI, DeepSeek, OpenRouter, Groq, Together**, and local servers (**Ollama, vLLM, LM Studio** — no key needed). Reasoning models (`o1`, `o3`, `gpt-5`) are handled automatically.
|
|
92
|
+
|
|
93
|
+
Choose the model with `AMEM_LLM_MODEL`. Full env-var reference and examples: **[amem.owo.lc/reference/configuration](https://amem.owo.lc/reference/configuration)**.
|
|
94
|
+
|
|
86
95
|
## Configuration Reference
|
|
87
96
|
|
|
88
97
|
| Key | Type | Default | Description |
|
|
@@ -110,7 +119,7 @@ A memory plugin's job is to read configuration from the environment and send mem
|
|
|
110
119
|
|
|
111
120
|
What it actually does — all of it declared in [`openclaw.plugin.json`](openclaw.plugin.json):
|
|
112
121
|
|
|
113
|
-
- **Environment variables it reads** (its configuration surface, supplied by you): `AMEM_LLM_PROVIDER`, `AMEM_LLM_API_KEY`, `AMEM_LLM_BASE_URL`, `AMEM_LLM_MODEL`, `AMEM_COLLECTION`, `AMEM_DATA_DIR`, `AMEM_EVO_COUNTER_PATH`, `AMEM_REVIEW_DIR`, `AMEM_PROMPT_LOCALE`. No credential is bundled, hardcoded, or logged.
|
|
122
|
+
- **Environment variables it reads** (its configuration surface, supplied by you): `AMEM_LLM_PROVIDER`, `AMEM_LLM_API_KEY`, `OPENAI_API_KEY`, `AMEM_LLM_BASE_URL`, `AMEM_LLM_MODEL`, `AMEM_COLLECTION`, `AMEM_DATA_DIR`, `AMEM_EVO_COUNTER_PATH`, `AMEM_REVIEW_DIR`, `AMEM_PROMPT_LOCALE`. No credential is bundled, hardcoded, or logged.
|
|
114
123
|
- **Network destinations**: only your **local Qdrant** (`http://localhost:6333`) and your configured **LLM endpoint** (Anthropic by default, or any OpenAI-compatible endpoint via `AMEM_LLM_PROVIDER=openai` + `AMEM_LLM_BASE_URL`). It sends memory text/embeddings there to store and evolve notes — its stated purpose. It does not phone home.
|
|
115
124
|
- **Conversation content** is processed for memory only when you set `hooks.allowConversationAccess: true`. Keep Qdrant and review-output paths scoped to locations you control.
|
|
116
125
|
|
package/openclaw.plugin.json
CHANGED
|
@@ -2,14 +2,14 @@
|
|
|
2
2
|
"id": "openclaw-amem",
|
|
3
3
|
"name": "Memory (A-MEM v2)",
|
|
4
4
|
"description": "OpenClaw memory plugin implementing A-MEM — memories evolve, not just accumulate. Graph linking, hybrid retrieval, LLM-driven evolution. No Python.",
|
|
5
|
-
"version": "1.2.
|
|
5
|
+
"version": "1.2.1",
|
|
6
6
|
"kind": "memory",
|
|
7
7
|
"openclaw": {
|
|
8
8
|
"compat": {
|
|
9
9
|
"pluginApi": ">=2026.3.24"
|
|
10
10
|
},
|
|
11
11
|
"build": {
|
|
12
|
-
"openclawVersion": "2026.
|
|
12
|
+
"openclawVersion": "2026.7.1-2"
|
|
13
13
|
}
|
|
14
14
|
},
|
|
15
15
|
"contracts": {
|
|
@@ -26,7 +26,9 @@
|
|
|
26
26
|
{
|
|
27
27
|
"id": "amem",
|
|
28
28
|
"envVars": [
|
|
29
|
+
"AMEM_LLM_PROVIDER",
|
|
29
30
|
"AMEM_LLM_API_KEY",
|
|
31
|
+
"OPENAI_API_KEY",
|
|
30
32
|
"AMEM_LLM_BASE_URL",
|
|
31
33
|
"AMEM_LLM_MODEL",
|
|
32
34
|
"AMEM_COLLECTION",
|
|
@@ -57,7 +59,17 @@
|
|
|
57
59
|
"hostSuffixes": [
|
|
58
60
|
".anthropic.com"
|
|
59
61
|
],
|
|
60
|
-
"note": "LLM for note construction / link generation / evolution; override the base URL via AMEM_LLM_BASE_URL."
|
|
62
|
+
"note": "Default LLM for note construction / link generation / evolution; override the base URL via AMEM_LLM_BASE_URL."
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"endpointClass": "openai",
|
|
66
|
+
"hosts": [
|
|
67
|
+
"api.openai.com"
|
|
68
|
+
],
|
|
69
|
+
"hostSuffixes": [
|
|
70
|
+
".openai.com"
|
|
71
|
+
],
|
|
72
|
+
"note": "Alternate LLM when AMEM_LLM_PROVIDER=openai — the OpenAI Chat Completions API, or any compatible gateway (DeepSeek, OpenRouter, Groq, Together, Ollama, vLLM) selected via AMEM_LLM_BASE_URL."
|
|
61
73
|
}
|
|
62
74
|
],
|
|
63
75
|
"configSchema": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "openclaw-amem",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.1",
|
|
4
4
|
"description": "OpenClaw memory plugin implementing A-MEM — memories evolve, not just accumulate. Graph linking, hybrid retrieval, LLM-driven evolution. No Python.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"pluginApi": ">=2026.3.24"
|
|
13
13
|
},
|
|
14
14
|
"build": {
|
|
15
|
-
"openclawVersion": "2026.
|
|
15
|
+
"openclawVersion": "2026.7.1-2"
|
|
16
16
|
}
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|