NL emotion tracking + prompt injection via OpenClaw hook
Scanned 5/30/2026
Install via CLI
openskills install Demerzels-lab/elsamultiskillagent---
name: emotion-state
description: NL emotion tracking + prompt injection via OpenClaw hook
---
# Emotion State (NL) Skill
This skill describes how to install and configure the Emotion State hook, which
adds a compact `emotion_state` block to the system prompt.
## What it does
- Evaluates user and agent emotions as short natural-language phrases.
- Stores per-user emotion state across sessions in the agent state directory.
- Injects the latest entries plus a decayed trend line into the system prompt.
## Install & enable (workspace hook)
1) After installing the skill, copy the bundled hook into your workspace:
```bash
cp -R ./skills/emotion-state/hooks/emotion-state ./hooks/
```
2) Enable the hook in OpenClaw:
```bash
openclaw hooks enable emotion-state
```
3) Restart the OpenClaw gateway.
## Configuration
Set environment variables for the hook via OpenClaw config, e.g. in
`~/.openclaw/openclaw.json`:
```json
{
"hooks": {
"internal": {
"enabled": true,
"entries": {
"emotion-state": {
"enabled": true,
"env": {
"EMOTION_CLASSIFIER_URL": "",
"OPENAI_API_KEY": "YOUR_KEY",
"OPENAI_BASE_URL": "https://api.openai.com/v1",
"EMOTION_MODEL": "gpt-4o-mini",
"EMOTION_CONFIDENCE_MIN": "0.35",
"EMOTION_HISTORY_SIZE": "100",
"EMOTION_HALF_LIFE_HOURS": "12",
"EMOTION_TREND_WINDOW_HOURS": "24",
"EMOTION_MAX_USER_ENTRIES": "3",
"EMOTION_MAX_AGENT_ENTRIES": "2",
"EMOTION_MAX_OTHER_AGENTS": "3",
"EMOTION_TIMEZONE": "America/Los_Angeles"
}
}
}
}
}
}
```
## Notes
- The hook stores state at `~/.openclaw/agents/<agentId>/agent/emotion-state.json`.
- It does not store raw user text; only model-inferred reasons.
- If the classifier fails, entries fall back to `neutral/low/unsure`.
No comments yet. Be the first to comment!
Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.
Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...
**Complete production-ready guide for Google Gemini embeddings API** This skill provides comprehensive coverage of the `gemini-embedding-001` model for generating text embeddings, including SDK usage, REST API patterns, batch processing, RAG integration with Cloudflare Vectorize, and advanced use cases like semantic search and document clustering. ---
Interview, source-challenge, verify, save, and ADR-gate fuzzy coding requests into Codex-ready implementation specs. Use when a feature, bugfix, refactor, migration, repo-wide change, or architecture task needs user-verified requirements, source-backed decisions, durable architecture decisions, acceptance criteria, validation commands, rollout notes, saved spec/ADR files, and a Codex execution prompt. Do not use when already fully specified or when the user wants direct implementation now.
Use when a repo needs CodeGraph plus ast-grep for Codex MCP setup, exploration, impact analysis, structural search, or safe refactor planning.