fix(active-memory): allow active-memory to support custom recall tool… · openclaw/openclaw@2f26025
Takhoffman
·
2026-05-09
·
via Recent Commits to openclaw:main
| Original file line number | Diff line number | Diff line change |
|---|
@@ -6,6 +6,7 @@ Docs: https://docs.openclaw.ai
|
6 | 6 | |
7 | 7 | ### Changes |
8 | 8 | |
| 9 | +- Active Memory: support concrete `plugins.entries.active-memory.config.toolsAllow` recall tool names for custom memory plugins while keeping the built-in memory-core default on `memory_search`/`memory_get` and preserving `memory_recall` automatically for `plugins.slots.memory: "memory-lancedb"`. |
9 | 10 | - Telegram/Feishu: honor configured per-agent and global `reasoningDefault` values when deciding whether channel reasoning previews should stream or stay hidden, addressing the preview-default part of #73182. Thanks @anagnorisis2peripeteia. |
10 | 11 | - Docker: run the runtime image under `tini` so long-lived containers reap orphaned child processes and forward signals correctly. (#77885) Thanks @VintageAyu. |
11 | 12 | - Google/Gemini: normalize retired `google/gemini-3-pro-preview` and `google-gemini-cli/gemini-3-pro-preview` selections to `google/gemini-3.1-pro-preview` before they are written to model config. |
|
| Original file line number | Diff line number | Diff line change |
|---|
@@ -22,6 +22,34 @@ describe("active-memory manifest config schema", () => {
|
22 | 22 | expect(result.ok).toBe(true); |
23 | 23 | }); |
24 | 24 | |
| 25 | +it("accepts custom toolsAllow entries", () => { |
| 26 | +const result = validateJsonSchemaValue({ |
| 27 | +schema: manifest.configSchema, |
| 28 | +cacheKey: "active-memory.manifest.tools-allow", |
| 29 | +value: { |
| 30 | +enabled: true, |
| 31 | +agents: ["main"], |
| 32 | +toolsAllow: ["lcm_grep", "lcm_describe", "lcm_expand_query"], |
| 33 | +}, |
| 34 | +}); |
| 35 | + |
| 36 | +expect(result.ok).toBe(true); |
| 37 | +}); |
| 38 | + |
| 39 | +it("rejects wildcard and group toolsAllow entries", () => { |
| 40 | +const result = validateJsonSchemaValue({ |
| 41 | +schema: manifest.configSchema, |
| 42 | +cacheKey: "active-memory.manifest.tools-allow.reserved", |
| 43 | +value: { |
| 44 | +enabled: true, |
| 45 | +agents: ["main"], |
| 46 | +toolsAllow: ["*", "group:plugins"], |
| 47 | +}, |
| 48 | +}); |
| 49 | + |
| 50 | +expect(result.ok).toBe(false); |
| 51 | +}); |
| 52 | + |
25 | 53 | it("accepts timeoutMs values at the runtime ceiling", () => { |
26 | 54 | const result = validateJsonSchemaValue({ |
27 | 55 | schema: manifest.configSchema, |
|
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。