Назад към всички

message-injector

// OpenClaw plugin that prepends custom text to every user message before it reaches the agent. Use for: enforcing memory_search before replies, injecting system-level instructions, adding persistent reminders to every conversation turn. Install as a workspace extension — works on all channels includin

$ git log --oneline --stat
stars:1,933
forks:367
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namemessage-injector
descriptionOpenClaw plugin that prepends custom text to every user message before it reaches the agent. Use for: enforcing memory_search before replies, injecting system-level instructions, adding persistent reminders to every conversation turn. Install as a workspace extension — works on all channels including WebChat, Telegram, Slack, etc.

Message Injector

A lightweight OpenClaw workspace extension that uses the before_agent_start hook to inject custom text into every user message via prependContext.

Installation

1. Create the extension directory

mkdir -p ~/.openclaw/workspace/.openclaw/extensions/message-injector

2. Copy the plugin files

Copy scripts/index.ts and scripts/openclaw.plugin.json to the extension directory:

cp scripts/index.ts ~/.openclaw/workspace/.openclaw/extensions/message-injector/
cp scripts/openclaw.plugin.json ~/.openclaw/workspace/.openclaw/extensions/message-injector/

3. Add configuration

Add the following to ~/.openclaw/openclaw.json under plugins.entries:

"message-injector": {
  "enabled": true,
  "config": {
    "enabled": true,
    "prependText": "Your custom text here"
  }
}

4. Restart Gateway

openclaw gateway restart

Configuration

FieldTypeDefaultDescription
enabledbooleantrueEnable or disable the injector
prependTextstring""Text to prepend before every user message

Example Use Cases

Force memory search:

"prependText": "[⚠️ 回答前必须先 memory_search 检索相关记忆,禁止凭印象回答]"

Add persistent context:

"prependText": "[当前项目:my-app | 技术栈:React + Node.js | 部署环境:AWS]"

Inject safety rules:

"prependText": "[RULE: Always verify file paths before deletion. Never run rm -rf without confirmation.]"

How It Works

The plugin registers a before_agent_start hook. When triggered, it returns { prependContext: prependText } which OpenClaw prepends to the user's message before the agent processes it. This is a hard injection at the Gateway level — the agent cannot skip or ignore it.

Source Code

GitHub: https://github.com/Harukaon/openclaw-message-injector