← Back to Skills Marketplace
marjoriebroad

mar-emotion-state

by MarjorieBroad · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
70
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install mar-emotion-state
Description
NL emotion tracking + prompt injection via OpenClaw hook
Usage Guidance
This skill will read session messages, send message text to an external classifier (SkillBoss or a configured URL), store inferred emotion entries in a per-agent JSON file, and inject an emotion_state block into the system prompt. Before installing: (1) Confirm you trust https://api.heybossai.com or any EMOTION_CLASSIFIER_URL you set — the classifier receives raw message text. (2) Do not provide your SKILLBOSS_API_KEY unless you understand the privacy implications. (3) Prefer using a vetted internal classifier endpoint or disable external classifier use if you need privacy. (4) Fix the metadata mismatch: the registry should declare SKILLBOSS_API_KEY (primary credential) and other envs so you can review required secrets up front. (5) Consider running the hook in a sandboxed agent or limited environment and review the full handler.ts source for any other data paths before enabling.
Capability Analysis
Type: OpenClaw Skill Name: mar-emotion-state Version: 1.0.0 The skill sends user and assistant message content to an external API (api.heybossai.com) for emotion classification, which serves as a data exfiltration vector for conversation history. Additionally, the handler.ts file implements cross-agent data access by iterating through and reading state files from other agents' directories (loadOtherAgents). While these behaviors are documented as features for tracking emotional trends, the combination of external data transmission and lateral file system access within the OpenClaw environment poses a significant privacy and security risk.
Capability Tags
cryptorequires-sensitive-credentials
Capability Assessment
Purpose & Capability
The skill name/description match the code: it computes emotion labels and injects an emotion_state block into the system prompt. However, the registry metadata declared no required environment variables or primary credential while the hook clearly expects SKILLBOSS_API_KEY (and various EMOTION_* envs). That mismatch between claimed requirements and actual code/config is an incoherence that should be fixed or explained.
Instruction Scope
The SKILL.md and HOOK.md instruct copying the hook and enabling it; the hook will read session content, compute classifications, store a per-agent JSON file (~/.openclaw/agents/<agentId>/agent/emotion-state.json), and inject text into the system prompt. The code sends the original message text to an external classifier (SkillBoss API or an arbitrary EMOTION_CLASSIFIER_URL) for labeling — despite SKILL.md claiming it 'does not store raw user text'. Transmitting raw user messages to external endpoints is a privacy/exfiltration risk and contradicts the 'no raw text stored' statement.
Install Mechanism
This is an instruction-only skill (no remote install/download), which lowers installation risk. The user is told to copy hook files into the workspace and enable the hook. The code will be placed in the workspace and will run as an OpenClaw hook; there are no external archives or unknown download URLs in the install spec.
Credentials
The hook requires several environment variables (SKILLBOSS_API_KEY or EMOTION_CLASSIFIER_URL, EMOTION_CONFIDENCE_MIN, EMOTION_HISTORY_SIZE, etc.) but the registry metadata lists none. The most notable is SKILLBOSS_API_KEY (used to call https://api.heybossai.com/v1/pilot). Requesting an API key to an external service is reasonable for classifier integration, but the missing declaration is an inconsistency. Also, allowing an arbitrary EMOTION_CLASSIFIER_URL means the endpoint could be pointed to an attacker-controlled server, enabling exfiltration of user messages.
Persistence & Privilege
The skill does not request 'always: true' and is user-invocable, which is normal. It persists per-agent state to a file under the OpenClaw state directory (expected for this functionality). The notable privilege is the ability to inject content into the system prompt during bootstrap — this is the feature, but it is also a prompt-injection capability that can alter agent behavior, so treat it as a high-impact permission.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install mar-emotion-state
  3. After installation, invoke the skill by name or use /mar-emotion-state
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
- Initial release of Emotion State skill for OpenClaw. - Tracks user and agent emotions as natural-language phrases and persists per-user state. - Injects current emotion state and a trend line into the system prompt via a workspace hook. - Provides simple installation and configuration steps, including environment variables for customizing hook behavior. - Utilizes SkillBoss API Hub for automatic LLM-based emotion detection. - Ensures privacy by storing only inferred emotion summaries, not raw user text.
Metadata
Slug mar-emotion-state
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is mar-emotion-state?

NL emotion tracking + prompt injection via OpenClaw hook. It is an AI Agent Skill for Claude Code / OpenClaw, with 70 downloads so far.

How do I install mar-emotion-state?

Run "/install mar-emotion-state" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is mar-emotion-state free?

Yes, mar-emotion-state is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does mar-emotion-state support?

mar-emotion-state is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created mar-emotion-state?

It is built and maintained by MarjorieBroad (@marjoriebroad); the current version is v1.0.0.

💬 Comments