OpenClaw Adapter
Status: ✅ Full
Language: Python + TypeScript
Package: hippocortex (Python) / @hippocortex/sdk (TypeScript)
Install
# Python
pip install hippocortex
# TypeScript
npm install @hippocortex/sdk
Quick Start (TypeScript)
import { autoMemory } from "@hippocortex/sdk/adapters";
const memory = autoMemory({ apiKey: "hx_live_..." });
// In your message handler:
const context = await memory.onMessage(userMessage);
if (context) {
systemPrompt = context + "\n\n" + systemPrompt;
}
// After generating a response:
await memory.onResponse(assistantMessage);
// Capture tool events:
await memory.onToolCall("exec", { command: "ls -la" });
await memory.onToolResult("exec", "file1.txt");
Quick Start (Python)
from hippocortex.adapters import openclaw as hx_openclaw
middleware = hx_openclaw.create_middleware(api_key="hx_live_...")
# On incoming message:
context = await middleware.on_message("Deploy the service")
# After response:
await middleware.on_response("Deployment complete!")
# Tool events:
await middleware.on_tool_call("exec", {"command": "kubectl apply"})
await middleware.on_tool_result("exec", "deployed")
API Reference
TypeScript — OpenClawMemory
| Method | Description |
|---|---|
onMessage(msg, role?) | Capture message + return synthesized context |
onResponse(msg) | Capture assistant response |
onToolCall(name, input) | Capture tool invocation |
onToolResult(name, result) | Capture tool output |
getContext(query) | Get synthesized context string |
injectIntoMessages(msgs, query) | Inject context into messages array |
Python — OpenClawMemoryMiddleware
Same interface with snake_case method names.
Configuration
const memory = autoMemory({
apiKey: "hx_live_...", // Required (or set HIPPOCORTEX_API_KEY)
baseUrl: "http://...", // Override API URL
sessionId: "my-session", // Custom session ID
injectMemory: true, // Inject synthesized context (default: true)
captureMessages: true, // Capture message events (default: true)
captureTools: true, // Capture tool events (default: true)
});
Skill Integration (Python)
skill = hx_openclaw.create_skill(api_key="hx_live_...")
# Returns: {name, description, middleware}