← Back to Skills Marketplace
blaspat

Feelings Framework

by Blasius Patrick · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
107
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install feelings-framework
Description
Provides OpenClaw agents with persistent emotional states, tracking mood and feelings over time to influence response tone and behavior consistently.
README (SKILL.md)

Feelings Framework — OpenClaw Skill

What It Does

The feelings-framework skill gives your OpenClaw agent a persistent emotional layer. It tracks mood and feeling intensities over time, applies meaningful triggers, and generates response modifiers you can use to shape how the agent sounds.

This isn't personality acting — it's runtime emotional state that carries across sessions.

When It Activates

  • When you want agents to have consistent emotional memory
  • When interactions should feel like they matter (stakes, anticipation, recall)
  • When you want different agents to respond differently to the same event

How to Use

1. Install

The library is included in this skill. Import from the local path:

import sys
sys.path.insert(0, "/path/to/feelings-framework/library/python")

from feelings import FeelingsEngine, JsonFileMemory

Or pip install if published:

pip install feelings-framework

2. Initialize per agent

Each agent gets its own FeelingsEngine instance with its own mood file:

from feelings import FeelingsEngine, JsonFileMemory, Calibration

memory = JsonFileMemory("feelings_mood.json")

engine = FeelingsEngine(
    agent_id="my_agent",
    memory=memory,
    calibrations={"my_agent": my_calibration},
    initial_mood=0.1,
)

3. Session lifecycle

# On session start
state = engine.load()
engine.update("session_started")

# During session — fire meaningful triggers
engine.update("user_praised")      # warmth ↑
engine.update("request_ignored")   # frustration ↑
engine.update("surprise_bad")      # anxiety ↑

# Before generating a response
mods = engine.respond()
# mods["warmth"]      → use more warm, friendly language
# mods["guard"]       → be more careful with words
# mods["reach_out"]   → lean toward connection

# On session end
engine.dampen_all(amount=0.03)
engine.save()

4. Per-agent calibration

Different agents can use different calibration tables:

engine.calibrate("agent_a")   # warm, engaged
engine.calibrate("agent_b")   # cooler, more restrained

Key Concepts

  • Mood — general emotional baseline (-1 to +1), accumulates over time
  • Feeling intensity — per-feeling 0.0–1.0, driven by triggers
  • Triggers — named events mapped to feelings + deltas
  • Calibration — per-agent trigger overrides
  • Escalation — repeated triggers hit harder (up to a max)
  • Dampening — feelings slowly decay between significant events
  • Response modifiers — nudges for tone/language based on current state

The 9 Feelings

Warmth · Coolness · Interest · Boredom · Loneliness · Security · Anxiety · Satisfaction · Frustration

OpenClaw-Specific Notes

  • Mood files for OpenClaw agents live at: ~/.openclaw/agents/\x3Cagent_name>/feelings_mood.json
  • See examples/openclaw/claire_feelings.py for a full integration example
  • The example shows how to hook into OpenClaw session lifecycle (start/end)

File Structure

feelings-framework/
├── CORE.md                    ← Full framework specification
├── library/python/feelings/    ← Python package
├── library/js/feelings/       ← JS/ESM package
├── tests/python/              ← Python tests
├── tests/js/                  ← JS tests
└── examples/openclaw/         ← OpenClaw integration example
Usage Guidance
This skill appears to do what it says: it implements a feelings engine and saves per-agent mood to JSON files in your home workspace. Before installing or enabling it: (1) review the included code yourself or run tests in a sandbox; (2) note it will create and write files under ~/.openclaw/agents/<agent>/workspace/feelings_mood.json—confirm you are comfortable with that persistence and its permissions; (3) if you plan to pip install, be aware setup.py has a syntax/packaging bug and the published package/homepage metadata in the skill registry is missing (pyproject points to a GitHub repo), so verify the source and fix packaging if necessary; (4) there are no network calls or credential accesses in the code, but still audit any customization you make to memory backends (e.g., swapping in a DB-backed Memory implementation) to avoid accidentally exposing state. If you want stronger guarantees, run the library locally in a confined environment and inspect the saved JSON files and tests before giving it access to production agents.
Capability Analysis
Type: OpenClaw Skill Name: feelings-framework Version: 1.0.0 The feelings-framework skill is a legitimate emotional state engine for AI agents, providing a system to track mood and feeling intensities (e.g., warmth, anxiety, frustration) across sessions. The implementation in both Python (library/python/feelings/core.py) and JavaScript (library/js/feelings/core.js) consists of mathematical state updates and standard persistence logic using local JSON files or LocalStorage. The code lacks any network capabilities, unauthorized file access, or suspicious execution patterns, and its behavior is fully aligned with the provided documentation in SKILL.md and CORE.md.
Capability Assessment
Purpose & Capability
Name/description match the included code: both Python and JS implementations provide a FeelingsEngine, pluggable memory backends, triggers, calibrations, and OpenClaw integration. Required resources (files under library/, example code, JSON file storage) are appropriate for an engine that persists per-agent mood.
Instruction Scope
SKILL.md and examples instruct the agent to load/save JSON mood files in the user's home workspace (~/.openclaw/agents/<agent>/...), and to import the local library via sys.path or pip. Access to the home directory and creation of per-agent files is expected for persistence, but you should be aware the skill writes/read these files. There is no instruction to read unrelated system files, environment variables, or send data to remote endpoints.
Install Mechanism
No install spec is declared (instruction-only), which is lower-risk. The repository includes local Python and JS packages so users will run code locally or pip-install; however setup.py contains a clear syntax/logic error (packages=find_packageswhere=[...]) that would break 'pip install .' unless fixed. The pyproject.toml references a GitHub repository URL, but the skill registry metadata lists source/homepage as unknown/none — minor provenance mismatch to be aware of.
Credentials
The skill requests no environment variables or credentials and the code does not read secrets or external tokens. Its file I/O is limited to its own per-agent JSON state files or the memory backend a user wires in, which is proportionate to the stated functionality.
Persistence & Privilege
The skill persists state to disk (per-agent JSON files in ~/.openclaw/agents/<agent>/workspace), which is expected and reasonable for persistent emotional memory. 'always' is false and model invocation is not disabled. This combination is normal; still verify you are comfortable with the framework writing files to your home directory and check file permissions if needed.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install feelings-framework
  3. After installation, invoke the skill by name or use /feelings-framework
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release
Metadata
Slug feelings-framework
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Feelings Framework?

Provides OpenClaw agents with persistent emotional states, tracking mood and feelings over time to influence response tone and behavior consistently. It is an AI Agent Skill for Claude Code / OpenClaw, with 107 downloads so far.

How do I install Feelings Framework?

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

Is Feelings Framework free?

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

Which platforms does Feelings Framework support?

Feelings Framework is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Feelings Framework?

It is built and maintained by Blasius Patrick (@blaspat); the current version is v1.0.0.

💬 Comments