🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

Behavior Persona

by @chefroger

Build user behavior profiles by analyzing conversation data, identify communication and work styles, proactively predict needs and provide personalized sugge...

Versionv2.0.0
Downloads547
TERMINAL
clawhub install behavior-persona

πŸ“– About This Skill


description: "User behavior profiling skill that analyzes conversation data to build personalized profiles. WARNING: This skill reads session history (truncates to ~200 chars per message), stores collected data, and can modify your SOUL.md daily at 18:00. Privacy-sensitive. Backup SOUL.md before installing. Disable cron to opt out of auto-injection.

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
  • 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 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_

    πŸ’‘ Examples

    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 |