bambu-studio-ai
Bambu Lab 3D printer control and automation. Activate when user mentions: printer status, 3D printing, slice, analyze model, generate 3D, AMS filament, print monitor, Bambu Lab, or any 3D printing task. Full pi...
Core utilities for OpenClaw memory plugins (redaction, local store, embeddings).
请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。
SkillHub CLI
skillhub install homeofe/openclaw-memory-core打开来源仓库,查看说明和兼容环境后,按来源提供的命令或步骤安装。
将来源链接提供给你的 Agent,让它先读取说明、核对依赖,并向你说明将执行的安装步骤。
Shared library powering OpenClaw's memory plugins (openclaw-memory-brain and openclaw-memory-docs). Provides three core modules:
Automatically detects and redacts secrets before they reach memory storage. Covers:
Usage: pipe any text through the redactor before storing — secrets are replaced with safe [REDACTED:TYPE] placeholders.
Local file-based memory store using append-only .jsonl files. Features:
fact, decision, doc, note)expiresAt field)Deterministic, offline, dependency-free text embedder (HashEmbedder):
This is a dependency library, not a standalone plugin. Install it as a package dependency:
npm install @elvatis_com/openclaw-memory-core
Used internally by openclaw-memory-brain (auto-capture) and openclaw-memory-docs (explicit capture).
这些信息来自收录时的来源分析,可能滞后;使用前请核对最新来源文件。
Core utilities for building OpenClaw memory plugins - redaction, embeddings, and JSONL-backed vector search.
npm install @elvatis_com/openclaw-memory-core
Requires Node.js 18+.
import {
JsonlMemoryStore,
createEmbedder,
DefaultRedactor,
uuid,
} from "@elvatis_com/openclaw-memory-core";
// 1. Set up the store
const embedder = createEmbedder();
const store = new JsonlMemoryStore({
filePath: "./data/memories.jsonl",
embedder,
});
// 2. Redact secrets before storing
const redactor = new DefaultRedactor();
const { redactedText } = redactor.redact("My API key is sk-proj-abc123def456ghi789");
// 3. Store a memory
await store.add({
id: uuid(),
kind: "note",
text: redactedText,
createdAt: new Date().toISOString(),
tags: ["api", "credentials"],
});
// 4. Search by natural language
const results = await store.search("API key");
console.log(results[0]?.item.text);
// => "My API key is [REDACTED:OPENAI_KEY]"
All exports are available from the package root:
import { /* any export */ } from "@elvatis_com/openclaw-memory-core";
MemoryKindtype MemoryKind = "fact" | "decision" | "doc" | "note";
The four supported item categories.
MemoryIteminterface MemoryItem {
id: string;
kind: MemoryKind;
text: string;
createdAt: string; // ISO 8601
expiresAt?: string; // ISO 8601 - optional TTL
source?: {
channel?: string;
from?: string;
conversationId?: string;
messageId?: string;
};
tags?: string[];
meta?: Record<string, unknown>;
}
The fundamental data unit stored by a MemoryStore.
SearchHitinterface SearchHit {
item: MemoryItem;
score: number; // 0..1 (1 = best match)
}
Returned by store.search(). Results are sorted by score descending.
SearchOptsinterface SearchOpts {
limit?: number;...
# OpenClaw Memory Core Shared library powering OpenClaw's memory plugins (`openclaw-memory-brain` and `openclaw-memory-docs`). Provides three core modules: ## Redaction Automatically detects and redacts secrets before they reach memory storage. Covers: - API keys (OpenAI, Anthropic, Stripe, Google, GitHub PATs) - AWS credentials (access keys, secret keys) - Azure storage keys, HashiCorp Vault tokens - JWTs, Bearer tokens, PEM private key blocks Usage: pipe any text through the redactor before storing — secrets are replaced with safe `[REDACTED:TYPE]` placeholders. ## JSONL Store Local file-based memory store using append-only `.jsonl` files. Features: - CRUD for memory items (kinds: `fact`, `decision`, `doc`, `note`) - Expiration support (`expiresAt` field) - Semantic search via cosine similarity on embeddings - No external database required — everything lives in flat files ## Embeddings Deterministic, offline, dependency-free text embedder (`HashEmbedder`): - FNV-1a hash-based vector generation (default 256 dimensions) - L2 normalization for cosine similarity search - No API calls, no model downloads — works fully offline - Not SOTA semantics, but stable and fast for local vector search ## Integration This is a dependency library, not a standalone plugin. Install it as a package dependency: ```bash npm install @elvatis_com/openclaw-memory-core ``` Used internally by `openclaw-memory-brain` (auto-capture) and `openclaw-memory-docs` (explicit capture).
# @elvatis_com/openclaw-memory-core
Core utilities for building OpenClaw memory plugins - redaction, embeddings, and JSONL-backed vector search.
## Installation
```bash
npm install @elvatis_com/openclaw-memory-core
```
Requires Node.js 18+.
## Quick start
```ts
import {
JsonlMemoryStore,
createEmbedder,
DefaultRedactor,
uuid,
} from "@elvatis_com/openclaw-memory-core";
// 1. Set up the store
const embedder = createEmbedder();
const store = new JsonlMemoryStore({
filePath: "./data/memories.jsonl",
embedder,
});
// 2. Redact secrets before storing
const redactor = new DefaultRedactor();
const { redactedText } = redactor.redact("My API key is sk-proj-abc123def456ghi789");
// 3. Store a memory
await store.add({
id: uuid(),
kind: "note",
text: redactedText,
createdAt: new Date().toISOString(),
tags: ["api", "credentials"],
});
// 4. Search by natural language
const results = await store.search("API key");
console.log(results[0]?.item.text);
// => "My API key is [REDACTED:OPENAI_KEY]"
```
## API reference
All exports are available from the package root:
```ts
import { /* any export */ } from "@elvatis_com/openclaw-memory-core";
```
---
### Types
#### `MemoryKind`
```ts
type MemoryKind = "fact" | "decision" | "doc" | "note";
```
The four supported item categories.
#### `MemoryItem`
```ts
interface MemoryItem {
id: string;
kind: MemoryKind;
text: string;
createdAt: string; // ISO 8601
expiresAt?: string; // ISO 8601 - optional TTL
source?: {
channel?: string;
from?: string;
conversationId?: string;
messageId?: string;
};
tags?: string[];
meta?: Record<string, unknown>;
}
```
The fundamental data unit stored by a `MemoryStore`.
#### `SearchHit`
```ts
interface SearchHit {
item: MemoryItem;
score: number; // 0..1 (1 = best match)
}
```
Returned by `store.search()`. Results are sorted by score descending.
#### `SearchOpts`
```ts
interface SearchOpts {
limit?: number;...Bambu Lab 3D printer control and automation. Activate when user mentions: printer status, 3D printing, slice, analyze model, generate 3D, AMS filament, print monitor, Bambu Lab, or any 3D printing task. Full pi...
Generative Engine Optimization (GEO) for AI search visibility. Optimize content to appear in ChatGPT, Perplexity, Claude, and Google AI Overviews. Use when optimizing websites, pages, or content for LLM discove...
Local speech-to-text with NVIDIA Parakeet TDT 0.6B v3 (ONNX on CPU). 30x faster than Whisper, 25 languages, auto-detection, OpenAI-compatible API. Use when transcribing audio files, converting speech to text, o...
飞书消息自动处理与进度反馈技能。安装后后台运行,监听飞书任务消息并自动创建独立进程处理。 在处理前后发送实时进度反馈(任务确认、进度百分比、完成通知)。 支持任务类型识别、智能解析、错误重试、并发控制、状态持久化...