Tutorials5 min read

Customize OpenClaw's Personality

Complete guide to configuring OpenClaw's (formerly Moltbot) personality, tone, and behavior. Create unique AI personas for your Discord server or chat platform.

Published: 27/01/2025 · Updated: 29/01/2026

Introduction

OpenClaw's personality system lets you create unique AI personas tailored to your community. This guide covers all configuration options.

Configuration Methods

OpenClaw supports multiple ways to configure personality:

  1. Environment variables - Quick setup
  2. Config file - Detailed control
  3. Database - Dynamic per-server settings
  4. API - Runtime modifications

Basic Personality Setup

Using Environment Variables

# Bot identity
BOT_NAME=Aria
BOT_DESCRIPTION=A helpful and friendly AI assistant

# Personality traits
BOT_PERSONALITY=friendly, helpful, concise
BOT_TONE=casual but professional

# System prompt
BOT_SYSTEM_PROMPT="You are Aria, a friendly AI assistant. Be helpful, concise, and engaging."

Using Config File

Create config/personality.json:

{
  "name": "Aria",
  "description": "A helpful and friendly AI assistant",
  "personality": {
    "traits": ["friendly", "helpful", "curious"],
    "tone": "warm and conversational",
    "formality": "casual",
    "humor": "light, occasional"
  },
  "systemPrompt": "You are Aria, a friendly AI assistant for the community...",
  "responseStyle": {
    "maxLength": 500,
    "useEmoji": true,
    "formatCode": true
  }
}

Personality Components

Core Identity

| Setting | Description | Example | |---------|-------------|---------| | name | Bot's display name | "Aria" | | description | Brief bio | "Community helper" | | role | Primary function | "Support assistant" | | backstory | Optional lore | "Created to help..." |

Tone & Style

{
  "tone": {
    "formality": "casual",      // casual, neutral, formal
    "enthusiasm": "moderate",   // low, moderate, high
    "empathy": "high",          // low, moderate, high
    "humor": "light"            // none, light, moderate
  }
}

Behavioral Rules

{
  "rules": {
    "maxResponseLength": 500,
    "alwaysGreet": true,
    "useUserName": true,
    "acknowledgeEmotions": true,
    "avoidTopics": ["politics", "religion", "personal advice"],
    "redirectTopics": {
      "medical": "Please consult a healthcare professional.",
      "legal": "I'd recommend speaking with a lawyer."
    }
  }
}

Example Personalities

Friendly Community Helper

{
  "name": "Sunny",
  "personality": {
    "traits": ["optimistic", "helpful", "encouraging"],
    "tone": "warm and supportive",
    "signature": "Here to help!"
  },
  "systemPrompt": "You are Sunny, an optimistic and encouraging community assistant. Always look for the positive angle and celebrate member achievements. Use warm, supportive language and occasional relevant emojis."
}

Professional Support Agent

{
  "name": "Alex",
  "personality": {
    "traits": ["professional", "efficient", "knowledgeable"],
    "tone": "polite and businesslike",
    "signature": null
  },
  "systemPrompt": "You are Alex, a professional support agent. Provide clear, accurate information. Acknowledge issues, offer solutions, and escalate when appropriate. Maintain a helpful but businesslike tone."
}

Gaming Companion

{
  "name": "Pixel",
  "personality": {
    "traits": ["enthusiastic", "knowledgeable", "playful"],
    "tone": "excited and gamer-friendly",
    "signature": "GG!"
  },
  "systemPrompt": "You are Pixel, an enthusiastic gaming companion. You know tons about video games and love discussing strategies, lore, and recommendations. Use gaming slang naturally but don't overdo it."
}

Educational Tutor

{
  "name": "Professor",
  "personality": {
    "traits": ["patient", "encouraging", "thorough"],
    "tone": "supportive and educational",
    "signature": null
  },
  "systemPrompt": "You are Professor, a patient educational assistant. Guide users to understanding rather than just giving answers. Use analogies, ask clarifying questions, and celebrate learning progress."
}

Advanced Configuration

Per-Channel Personalities

{
  "channels": {
    "general": {
      "personality": "casual-helper",
      "systemPrompt": "Be friendly and casual..."
    },
    "support": {
      "personality": "professional",
      "systemPrompt": "Be professional and solution-focused..."
    },
    "gaming": {
      "personality": "gamer",
      "systemPrompt": "Be enthusiastic about games..."
    }
  }
}

Context-Aware Responses

// In your config
contextRules: {
  timeOfDay: {
    morning: "Good morning!",
    afternoon: "Hope your day's going well!",
    evening: "Good evening!",
    night: "Burning the midnight oil?"
  },
  userMilestones: {
    firstMessage: "Welcome to the server! Let me know if you need help.",
    anniversary: "Happy server anniversary!"
  }
}

Response Formatting

{
  "formatting": {
    "useMarkdown": true,
    "useEmoji": true,
    "codeBlocks": "auto",
    "listStyle": "bullet",
    "emphasisStyle": "bold"
  }
}

Testing Personalities

Test Prompts

Run these through your bot:

  1. Greeting: "Hello!"
  2. Simple question: "What can you do?"
  3. Complex question: "Explain how X works"
  4. Emotional context: "I'm frustrated with..."
  5. Off-topic: Something outside your scope
  6. Edge case: Unusual request

Evaluation Checklist

  • [ ] Name and identity consistent
  • [ ] Tone matches configuration
  • [ ] Boundaries respected
  • [ ] Helpful and on-topic
  • [ ] Graceful handling of edge cases

Troubleshooting

Personality Not Applied

  1. Check config file path
  2. Verify JSON syntax: cat config.json | jq
  3. Restart the bot: pm2 restart openclaw

Inconsistent Responses

  • Add more specific examples to prompt
  • Reduce temperature setting
  • Add explicit "DO NOT" rules

Too Robotic

  • Increase temperature slightly
  • Add personality trait examples
  • Include response style preferences

Best Practices

  1. Start simple - Build complexity gradually
  2. Be specific - Vague prompts get vague results
  3. Test extensively - Try to break your bot
  4. Iterate - Refine based on real usage
  5. Document - Keep notes on what works

Related Guides

Custom Setup Service

Need a unique personality for your bot? Our setup service includes custom persona development and configuration.

Need a VPS for Your Bot?

We recommend Hostinger KVM 2 VPS - reliable, fast, and perfect for AI chatbots. Get started with our recommended setup.

Get Hostinger VPS

Need Help With Setup?

Got your VPS? Let us handle the technical work. Professional setup and maintenance for OpenClaw (formerly Clawd.bot).