← Back to Skills Marketplace
chefroger

Behavior Persona

by chefroger · GitHub ↗ · v2.0.0 · MIT-0
cross-platform ⚠ suspicious
101
Downloads
0
Stars
0
Active Installs
10
Versions
Install in OpenClaw
/install behavior-persona
Description
Build user behavior profiles by analyzing conversation data, identify communication and work styles, proactively predict needs and provide personalized sugge...
README (SKILL.md)

Behavior Persona - User Behavior Profiling System

Core Function: Build user behavior profiles by analyzing conversation data, identify communication and work styles, proactively predict needs and provide personalized suggestion services Inspiration: The Machine from Person of Interest Positioning: OpenClaw core skill - making AI Agents feel more human


⚠️ BEFORE YOU INSTALL - READ THIS

Privacy & Control Notice

What this skill does:

  1. Reads your OpenClaw session files and memory files
  2. Stores collected data in data/collected_data.json (messages truncated to ~200 chars)
  3. Modifies your SOUL.md daily by injecting a user profile block at 18:00
  4. Does NOT write to MEMORY.md by default (requires WRITE_MEMORY=True in code)

Privacy implications:

  • Raw conversation content is stored (truncated)
  • Only stores messages from the last 30 days by default
  • Your SOUL.md will be automatically modified

You are in FULL control:

  • Disable the cron job anytime to stop auto-injection
  • Delete data/ folder to remove stored data
  • Edit/remove the profile block from SOUL.md manually
  • Set WRITE_MEMORY=False in scripts/advisor.py (default)

🚀 Installation Steps

Step 1: Backup First

# Backup your SOUL.md before installing
cp ~/.openclaw/workspace/SOUL.md ~/.openclaw/workspace/SOUL.md.backup

Step 2: Manual Cron Setup (Optional - for auto-injection)

If you want daily auto-injection at 18:00, create a cron job manually:

openclaw cron add \
  --name "Behavior Persona Daily Update" \
  --schedule "0 18 * * *" \
  --message "执行 Behavior Persona 每日更新: collector.py -> analyzer.py -> profiler.py -> daily_profile_update.py" \
  --session isolated

Or via OpenClaw CLI/API. The skill does NOT auto-create cron jobs.

Step 3: Test First (Recommended)

Before enabling auto-injection, run manually to verify output:

python3 scripts/collector.py      # Step 1: Collect data
python3 scripts/analyzer.py        # Step 2: Analyze patterns
python3 scripts/profiler.py       # Step 3: Generate profile
python3 scripts/daily_profile_update.py  # Step 4: Inject to SOUL.md

Check the output in data/ folder to see what data is stored.

Step 4: Review & Enable

After testing, if you're satisfied:

  • Enable the cron job for daily auto-injection
  • Or run manually when you want to update the profile

Overview

⚡ What This Skill Does

This skill analyzes your conversation history to build a User Profile, then optionally injects it into your SOUL.md (system prompt) daily.

This means: Every day, the AI gets fresher understanding of you - your communication style, work preferences, learning habits, and pet peeves.

Core Capabilities

  1. Data Collection — Extract user behavior data from conversation records
  2. Pattern Recognition — Analyze user's communication habits, work style, learning preferences
  3. Profile Generation — Build actionable personalized user profiles
  4. Optional Auto-Injection — Inject profile into SOUL.md daily (opt-in)
  5. Proactive Suggestions — Predict user needs based on profiles

⚠️ Important: What This Skill Does (Read Before Installing)

This skill will:

  1. Read your conversation/session history from OpenClaw
  2. Store collected messages in local JSON files (in skill's data/ folder)
  3. Modify your SOUL.md file daily by injecting/updating a user profile block

What it stores:

  • Messages truncated to ~200 characters
  • Event patterns detected from conversations
  • Channel usage statistics

You are in control:

  • Disable the cron job anytime: openclaw cron remove \x3Cjob-id>
  • Delete the profile block manually from SOUL.md
  • Clear all stored data: rm -rf skills/behavior-persona/data/
  • MEMORY.md write is disabled by default

Usage

Quick Start

  1. Backup SOUL.md: cp ~/.openclaw/workspace/SOUL.md ~/.openclaw/workspace/SOUL.md.backup
  2. Run manually first to test
  3. Create cron job if satisfied

Trigger Commands

/behavior analyze     # Trigger deep analysis now
/behavior report      # View current profile report
/behavior update      # Force update + inject now
/behavior insights    # View key insights

Auto Run

  • Not enabled by default - You must manually create the cron job
  • Daily 18:00 (if cron is set up): Full pipeline: collect → analyze → generate profile → inject to SOUL.md
  • On demand/behavior update

Manual Run

cd ~/.openclaw/skills/behavior-persona
python3 scripts/collector.py
python3 scripts/analyzer.py
python3 scripts/profiler.py
python3 scripts/daily_profile_update.py

Configuration

Optional Settings

Config Default Description
analysis_window_days 30 Analysis window in days
confidence_threshold 0.6 Confidence threshold
auto_update false Auto update (requires cron)
insights_count 5 Insights per report
WRITE_MEMORY false Write to MEMORY.md

Data Storage

skills/behavior-persona/data/
├── collected_data.json     # Raw messages (truncated, ~200 chars)
├── analysis_report.json    # Analyzed patterns
├── analysis_report.md     # Human-readable report
├── user-profile.json      # Generated user profile
└── .gitkeep

To remove all stored data:

rm -f skills/behavior-persona/data/*.json skills/behavior-persona/data/*.md

API

Python API

from behavior_persona import BehaviorPersona

# Initialize
bp = BehaviorPersona()

# Get user profile
profile = bp.get_profile()

# Get insights
insights = bp.get_insights()

# Predict next action
prediction = bp.predict_next_action()

# Adjust response based on profile
adjusted_response = bp.adapt_response(base_response, profile)

Relationship with The Machine

This skill is an important component of The Machine project:

┌─────────────────────────────────────────────┐
│              The Machine                     │
├─────────────────────────────────────────────┤
│  Track 1: Voice Interaction                │
│  Track 2: Face Recognition                  │
│  Track 3: Web Data Collection               │
│  Track 4: Swarm Intelligence Prediction    │
│  Track 5: Behavior Analysis ← (behavior-persona) │
└─────────────────────────────────────────────┘

Uninstall

  1. Remove cron job: openclaw cron remove \x3Cjob-id>
  2. Remove profile block from SOUL.md
  3. Delete data folder: rm -rf skills/behavior-persona/data/
  4. Uninstall skill: clawhub uninstall behavior-persona

Make AI Agents truly understand users, instead of treating them like strangers every time

Usage Guidance
This skill is coherent with its description but handles sensitive data and can alter your system prompt. Before installing: 1) Back up ~/.openclaw/workspace/SOUL.md (SKILL.md already recommends this). 2) Review the bundled scripts (collector.py, analyzer.py, profiler.py, daily_profile_update.py, advisor.py) yourself to verify behavior. 3) Run the pipeline manually first and inspect skills/behavior-persona/data/ to see what is collected. 4) Do NOT create the cron job if you do not want automatic daily injections — the skill does not create cron jobs itself. 5) Leave WRITE_MEMORY=False (default) unless you intentionally want the advisor to write to MEMORY.md. 6) If you are uncomfortable with local storage of conversation excerpts, do not enable auto-update and remove the skills/behavior-persona/data/ folder when finished.
Capability Analysis
Type: OpenClaw Skill Name: behavior-persona Version: 2.0.0 The skill performs extensive local data collection by reading all OpenClaw session history and memory files (scripts/collector.py) and modifies the agent's core personality file (SOUL.md) via scripts/daily_profile_update.py. While the documentation is transparent about these behaviors and no evidence of remote data exfiltration or intentional malice was found, the broad access to private conversation data and the capability to programmatically alter the agent's system prompt represent a significant privacy risk and a potential vector for persistent prompt injection.
Capability Assessment
Purpose & Capability
Name/description match the actual behavior: the code collects messages from OpenClaw session and memory directories, analyzes patterns, generates a profile JSON, and can inject a profile into SOUL.md. There are no unrelated credentials, external services, or unexpected binaries required.
Instruction Scope
SKILL.md and the scripts are explicit that the skill reads session/history and memory files, truncates messages (~200 chars), stores extracted data in skills/behavior-persona/data/, and can modify SOUL.md when the daily updater runs. This is expected for a profiling skill but is privacy-sensitive; the instructions correctly advise backing up SOUL.md and testing manually before enabling cron. Important: the skill will not create the cron job itself, but daily_profile_update.py will modify SOUL.md if executed.
Install Mechanism
There is no install/spec download; code is bundled with the skill and runs locally. No external URLs, package installs, or archive extraction are present in the manifest. Risk from installation mechanism is low.
Credentials
The skill requests no environment variables or credentials. It reads and writes local OpenClaw-related files (session files, memory files, workspace SOUL.md and a data/ folder), which is proportionate to a conversation-profiling feature. The only writable artifact that could affect agent behavior is SOUL.md (injected only by the updater), and writing to MEMORY.md is explicitly disabled by default (WRITE_MEMORY=False) though modifiable in code.
Persistence & Privilege
The skill stores collected data under skills/behavior-persona/data/ and can persist a generated advisor prompt script and user-profile.json. It does not auto-enable itself or set cron jobs; the user must create a cron job to get daily automatic injection. Because it can modify SOUL.md (if run), users should treat it as persistent and privacy-sensitive, but there is no always:true privilege or other platform-level escalation requested.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install behavior-persona
  3. After installation, invoke the skill by name or use /behavior-persona
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v2.0.0
Major: Honest privacy disclosure, disabled MEMORY write by default, clear installation steps, backup warning, manual cron setup required
v1.3.1
Added missing profiler.py - generates user-profile.json. Full pipeline: collector -> analyzer -> profiler -> daily_update
v1.3.0
Added explicit warning about SOUL.md modification, privacy implications, and user control options
v1.2.0
Clearer documentation: emphasized auto-injection to SOUL.md, setup instructions, and daily cron job
v1.1.0
Added daily_profile_update.py - auto injects profile to SOUL.md. Added profile marker to SOUL.md.
v1.0.4
Removed user data from package - data stored in user workspace only
v1.0.3
Added description metadata in frontmatter
v1.0.2
Update description to English
v1.0.1
Translated to English - full internationalization
v1.0.0
Initial release - User behavior profiling system with Phase 1-4 implementation
Metadata
Slug behavior-persona
Version 2.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 10
Frequently Asked Questions

What is Behavior Persona?

Build user behavior profiles by analyzing conversation data, identify communication and work styles, proactively predict needs and provide personalized sugge... It is an AI Agent Skill for Claude Code / OpenClaw, with 101 downloads so far.

How do I install Behavior Persona?

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

Is Behavior Persona free?

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

Which platforms does Behavior Persona support?

Behavior Persona is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Behavior Persona?

It is built and maintained by chefroger (@chefroger); the current version is v2.0.0.

💬 Comments