Adolf memory: migrate Cognee -> Hindsight + Kimi quota tooling
Memory migration (H1-H5, kb#73-77,84): - hindsight service in openai/docker-compose.yml: LLM via Kimi (cognee-llm wrapper), multilingual GPU embeddings (bge-m3 via ollama), jina multilingual reranker; pg0 + model cache persisted - openclaw.json/shared-mcp.json: mcp.servers cognee -> hindsight (bank "adolf") - hindsight-openclaw-plugin: forced-hook memory (before_prompt_build recall + agent_end retain), replacing cognee's hook layer; cognify-sweep dropped - verified live: Russian retain->recall, cross-session recall, bank isolation Kimi quota (kb#62): - adolf-llm/server.js: LLM-free GET /usage route (Kimi managed-usage API) - quota-command-openclaw-plugin: /quota readout command Cognee stack left running (decommission is H4/kb#76). Kimi-quota-footer auto-append abandoned (streamed Matrix replies bypass outbound hooks). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014t8Qg9gi7H7HtT8MncoXAB
This commit is contained in:
@@ -43,8 +43,12 @@
|
||||
// Margin above the server.js SSE heartbeat cadence (empty-content
|
||||
// keepalive delta every ~25s once idle) so the idle watchdog never
|
||||
// fires on long thinking/tool/MCP phases even if a heartbeat tick
|
||||
// is delayed (kb #71).
|
||||
timeoutSeconds: 300,
|
||||
// is delayed (kb #71). Raised to 10min: long agentic turns (Cognee
|
||||
// tool-loops / recalls up to 150s each) were producing no *content*
|
||||
// progress for >300s, tripping "no response from model" and surfacing
|
||||
// an error before the agent finished. The wrapper now also kills the
|
||||
// kimi child on disconnect, so an over-timeout turn no longer orphans.
|
||||
timeoutSeconds: 600,
|
||||
models: [
|
||||
{ id: "adolf", name: "Adolf", input: ["text", "image"] },
|
||||
],
|
||||
@@ -93,9 +97,9 @@
|
||||
// OpenClaw's documented CLI-native alias for transport: "streamable-http".
|
||||
mcp: {
|
||||
servers: {
|
||||
cognee: {
|
||||
hindsight: {
|
||||
type: "http",
|
||||
url: "http://cognee-mcp:8000/mcp",
|
||||
url: "http://hindsight:8888/mcp/adolf/",
|
||||
},
|
||||
"openclaw-tools": {
|
||||
type: "http",
|
||||
@@ -130,18 +134,56 @@
|
||||
},
|
||||
},
|
||||
|
||||
// Cognee memory plugin (P8) — installed external plugin under
|
||||
// .openclaw/extensions/cognee-memory. Activation entry is required for the
|
||||
// gateway to load it at startup (discovery alone is not enough).
|
||||
// Memory plugins (P8). Activation entry is required for the gateway to
|
||||
// load a plugin at startup (discovery alone is not enough).
|
||||
plugins: {
|
||||
entries: {
|
||||
// Cognee memory plugin — DISABLED as of kb #75 (H3): superseded by
|
||||
// hindsight-memory below. Left `enabled: false` rather than removed —
|
||||
// full teardown (plugin dir, cognee/cognee-mcp/cognee-llm containers)
|
||||
// is kb #75's H4, a separate step so the Hindsight path can be proven
|
||||
// out first. Kept disabled (not both active) to avoid double
|
||||
// prependContext injection and double persisted turns while both
|
||||
// backends exist side by side.
|
||||
"cognee-memory": {
|
||||
enabled: true,
|
||||
enabled: false,
|
||||
// External (non-bundled) plugins must opt in to conversation + prompt-injection
|
||||
// hook access explicitly. before_prompt_build => allowPromptInjection;
|
||||
// agent_end => allowConversationAccess.
|
||||
hooks: { allowConversationAccess: true, allowPromptInjection: true },
|
||||
config: {},
|
||||
// Throttle background cognify hard to stop it draining the Kimi quota:
|
||||
// one cognify per dataset per hour (was 5 min default), and a longer
|
||||
// persist timeout so /add doesn't fail-and-retry when cognee is busy.
|
||||
config: {
|
||||
sweepIntervalMs: 3600000, // 1h (default 300000 = 5min)
|
||||
persistTimeoutMs: 20000, // 20s (default 8000)
|
||||
},
|
||||
},
|
||||
// Hindsight memory plugin (kb #75, H3) — installed external plugin
|
||||
// under .openclaw/extensions/hindsight-memory, bind-mounted read-only
|
||||
// from openai/hindsight-openclaw-plugin (see that project's
|
||||
// docker-compose.yml adolf.volumes). Structural successor to
|
||||
// cognee-memory above: LLM-free recall inject (before_prompt_build) +
|
||||
// async retain (agent_end) against the hindsight service, bank
|
||||
// "adolf" (same bank the mcp.servers.hindsight tool surface above
|
||||
// uses, so hook-based and tool-based memory stay one consistent
|
||||
// store). No cognify/sweep config here — Hindsight's retain does
|
||||
// extraction/consolidation server-side, so that whole class of
|
||||
// config (sweepIntervalMs etc. above) doesn't apply.
|
||||
"hindsight-memory": {
|
||||
enabled: true,
|
||||
// Same opt-in requirement as cognee-memory above: before_prompt_build
|
||||
// => allowPromptInjection; agent_end => allowConversationAccess.
|
||||
hooks: { allowConversationAccess: true, allowPromptInjection: true },
|
||||
},
|
||||
// Kimi quota readout (kb #62) — installed external plugin, bind-mounted
|
||||
// read-only from openai/quota-command-openclaw-plugin (see that
|
||||
// project's docker-compose.yml adolf.volumes) onto
|
||||
// .openclaw/extensions/quota-command. Registers a `/quota` native
|
||||
// command; no hooks, so no allowConversationAccess/allowPromptInjection
|
||||
// opt-in needed.
|
||||
"quota-command": {
|
||||
enabled: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user