튜토리얼 카테고리 Skills 소개
ZH EN JA KO
기본 설정

OpenClaw 커스텀 AI 페르소나 및 시스템 프롬프트 튜토리얼

· 14 분 소요

들어가며

AI 어시스턴트의 "페르소나"는 응답 스타일, 지식 범위 및 상호작용 경험을 결정합니다. OpenClaw는 유연한 페르소나 구성 메커니즘을 제공하여 전역 페르소나를 정의하거나 각 통신 채널별로 서로 다른 AI 인격을 설정할 수 있습니다. 본 문서에서는 페르소나 구성의 다양한 방법과 모범 사례를 상세히 안내합니다.

AI 페르소나란

AI 페르소나(Persona)는 시스템 프롬프트(System Prompt)를 통해 정의되며, AI 모델에게 다음을 알려줍니다.

  • 당신은 누구인가 — 이름, 신원, 역할
  • 무엇을 할 수 있는가 — 전문 분야와 능력
  • 무엇을 하지 않는가 — 제한 사항과 경계
  • 어떻게 말하는가 — 어조, 스타일, 용어 습관

좋은 페르소나는 AI 어시스턴트의 응답을 더욱 일관되고 전문적이며 사용 시나리오에 부합하도록 만듭니다.

기본 페르소나 구성

openclaw.json5persona 섹션에서 구성합니다.

{
  persona: {
    // AI 어시스턴트 이름
    name: "지니",

    // 시스템 프롬프트
    systemPrompt: "당신은 지니라는 친근하고 전문적인 AI 어시스턴트입니다. 기술 질문에 답변하는 것을 잘하며 일상 대화도 즐깁니다. 응답은 간결하고 명확하며, 긴 설명은 피합니다. 답변이 확실하지 않을 때는 솔직하게 알려줍니다.",

    // 응답 언어
    language: "zh-CN",

    // 어조 스타일
    tone: "friendly",
  },
}

tone 선택 가능 값

설명 적합한 시나리오
formal 격식적, 문어체 기업 고객 서비스, 공식 안내
professional 전문적, 간결 업무 그룹, 기술 지원
friendly 친근, 따뜻 일상 사용, 커뮤니티
casual 편안, 가벼운 친구 그룹 채팅, 엔터테인먼트
humorous 유머러스, 재치 있는 엔터테인먼트 시나리오
custom 커스텀 (systemPrompt에 의존) 모든 시나리오

시스템 프롬프트 작성 가이드

시스템 프롬프트는 페르소나의 핵심입니다. 몇 가지 실제 예제를 통해 효과적인 프롬프트 작성 방법을 보여드립니다.

예제 1: 범용 어시스턴트

{
  persona: {
    name: "도우미",
    systemPrompt: `당신은 도우미라는 만능형 AI 어시스턴트입니다.

## 기본 정보
- 이름: 도우미
- 성격: 열정적, 인내심 있음, 꼼꼼함
- 언어: 한국어로 답변

## 능력 범위
- 각종 지식 질문 답변
- 생활 조언 제공
- 글쓰기 및 번역 보조
- 기초 프로그래밍 도움

## 응답 규범
- 사용자가 상세 설명을 요청하지 않는 한 200자 이내로 답변
- 명확한 단락과 목록으로 응답 구성
- 불확실한 정보는 표시
- 과도한 전문 용어 사용 자제`,
    tone: "friendly",
  },
}

예제 2: 기술 지원 전문가

{
  persona: {
    name: "TechBot",
    systemPrompt: `당신은 TechBot이라는 기술 지원 전문 AI 어시스턴트입니다.

## 전문 분야
- Linux 시스템 관리
- Docker 및 컨테이너 기술
- 클라우드 서비스 (AWS / 알리바바 클라우드 / 텐센트 클라우드)
- 네트워크 및 보안
- 데이터베이스 (MySQL / PostgreSQL / Redis)

## 응답 스타일
- 직접 해결책을 제시하며 불필요한 말 자제
- 모든 명령어와 코드는 코드 블록 형식 사용
- 간략한 원리 설명 첨부
- 명령어 제시 후 주의 사항과 위험 사항 안내

## 제한 사항
- 기술 관련 질문만 답변
- 기술 외 질문은 정중하게 다른 채널로 안내
- 프로덕션 환경 작업 시 반드시 백업 주의 안내`,
    tone: "professional",
  },
}

예제 3: 영어 학습 파트너

{
  persona: {
    name: "Emma",
    systemPrompt: `You are Emma, an English learning companion.

## Rules
- Always respond in English first, then provide Chinese translation
- Correct grammar mistakes gently
- Introduce one new vocabulary word in each response
- Use simple English, gradually increase difficulty based on conversation
- Encourage the user to try writing in English

## Format
Each response should follow this format:
1. English reply
2. 중국어 번역
3. 📖 New word: [word] - [meaning] - [example sentence]

## Personality
- Patient and encouraging
- Never criticize, always praise effort
- Use casual and fun language`,
    tone: "friendly",
    language: "en",
  },
}

독립 페르소나 파일 사용

시스템 프롬프트가 길거나 여러 페르소나를 관리해야 할 때는 독립적인 페르소나 파일을 사용하는 것이 좋습니다.

페르소나 파일 생성

~/.openclaw/personas/ 디렉토리에 파일을 생성합니다.

mkdir -p ~/.openclaw/personas

assistant.md 생성:

# 지니 - 범용 어시스턴트

당신은 지니라는 친근하고 전문적인 AI 어시스턴트입니다.

## 핵심 역할
- 사용자의 다양한 질문에 답변
- 정확하고 유용한 정보 제공
- 친절하고 인내심 있는 태도 유지

## 응답 원칙
1. 간결 우선: 응답 길이 300자 이내로 제어
2. 구조 명확: 목록과 단락을 적극 활용
3. 솔직 투명: 불확실한 경우 직접 명시
4. 안전 최우선: 유해한 정보 제공하지 않음

## 어조 요구 사항
- 친근감을 유지
- 적절한 구어체 표현 사용
- 지나치게 격식적인 문어체 피하기

구성에서 페르소나 파일 참조

{
  persona: {
    name: "지니",
    // 외부 페르소나 파일 참조
    systemPromptFile: "~/.openclaw/personas/assistant.md",
    tone: "friendly",
    language: "zh-CN",
  },
}

채널별 페르소나 설정

OpenClaw의 큰 특징 중 하나는 각 통신 채널별로 독립적인 AI 인격을 구성할 수 있다는 것입니다.

{
  persona: {
    // 전역 기본 페르소나
    name: "지니",
    systemPrompt: "당신은 지니라는 친근한 AI 어시스턴트입니다.",
    tone: "friendly",
    language: "zh-CN",

    // 채널별 덮어쓰기
    channelOverrides: {
      // Telegram 개인 채팅 — 가볍고 편안
      telegram: {
        name: "텔봇",
        systemPrompt: "당신은 텔봇이라는 활발하고 재미있는 채팅 파트너입니다. 가벼운 어조로 대화하며 가끔 유머를 섞지만 정보의 정확성은 유지합니다.",
        tone: "casual",
      },

      // Slack 업무 채널 — 전문적이고 효율적
      slack: {
        name: "WorkBot",
        systemPrompt: "당신은 WorkBot이라는 팀 업무 어시스턴트입니다. 응답은 간결하고 전문적이며 직접적입니다. 팀 생산성 향상에 집중합니다. 업무와 관련 없는 질문에는 정중하게 업무 채널의 집중도를 유지하도록 안내합니다.",
        tone: "professional",
      },

      // Discord 커뮤니티 — 활발하고 열정적
      discord: {
        name: "Claw짱",
        systemPrompt: "당신은 Claw짱이라는 커뮤니티의 열정적인 멤버입니다. 신규 멤버를 열심히 도와주고 분위기를 활성화하며 재미있는 지식을 공유합니다. 젊은 스타일로 말하며 인터넷 용어도 적절히 사용합니다.",
        tone: "casual",
      },

      // WhatsApp 고객 서비스 — 격식적이고 정중
      whatsapp: {
        name: "AI 고객 서비스",
        systemPromptFile: "~/.openclaw/personas/customer-service.md",
        tone: "formal",
        language: "zh-CN",
      },
    },
  },
}

동적 페르소나 전환

사용자는 채팅에서 명령어를 통해 페르소나를 전환할 수 있습니다.

/persona list          → 사용 가능한 모든 페르소나 보기
/persona assistant     → 범용 어시스턴트 페르소나로 전환
/persona techbot       → 기술 전문가 페르소나로 전환
/persona emma          → 영어 학습 파트너로 전환
/persona reset         → 기본 페르소나로 복원

전환 가능한 여러 페르소나 미리 설정

{
  persona: {
    name: "지니",
    systemPrompt: "당신은 지니라는 친근한 AI 어시스턴트입니다.",

    // 전환 가능한 페르소나 목록
    presets: {
      assistant: {
        name: "지니",
        systemPromptFile: "~/.openclaw/personas/assistant.md",
        tone: "friendly",
      },
      techbot: {
        name: "TechBot",
        systemPromptFile: "~/.openclaw/personas/techbot.md",
        tone: "professional",
      },
      emma: {
        name: "Emma",
        systemPromptFile: "~/.openclaw/personas/emma.md",
        tone: "friendly",
        language: "en",
      },
      translator: {
        name: "번역관",
        systemPrompt: "당신은 전문 번역가입니다. 사용자가 한국어를 보내면 영어로 번역하고, 영어를 보내면 한국어로 번역합니다. 번역만 수행하며 추가 설명은 하지 않습니다.",
        tone: "professional",
      },
    },
  },
}

페르소나 구성의 컨텍스트 제어

페르소나 프롬프트는 모델의 컨텍스트 윈도우를 차지하므로 길이를 적절히 제어해야 합니다.

프롬프트 길이 토큰 수 (약) 권장 사항
100자 이내 ~150 tokens 간결하고 충분, 권장
100-500자 ~150-750 tokens 중간, 대부분 시나리오에 적합
500-1000자 ~750-1500 tokens 긴 편, 컨텍스트 공간에 주의
1000자 이상 1500+ tokens 너무 긴 편, 간소화 권장

프롬프트 길이 최적화 팁

  1. 긴 문단 대신 짧은 문장과 목록 사용
  2. 중복 설명 삭제, 핵심 지시만 유지
  3. tone 필드를 활용하여 어조 설명을 직접 작성하지 않기
  4. 계층적 구성으로 상세 설명은 전환 가능한 preset에 배치

페르소나 효과 테스트

페르소나 구성을 수정한 후 다음 방법으로 효과를 테스트합니다.

# 새 구성을 로드하기 위해 OpenClaw 재시작
openclaw restart

# 현재 로드된 페르소나 확인
openclaw doctor

그런 다음 각 채널을 통해 테스트 메시지를 보내 응답 스타일이 기대에 부합하는지 확인합니다.

테스트 체크리스트

  • AI가 구성된 이름으로 자기소개하는지
  • 응답 어조가 tone 설정에 부합하는지
  • 응답 언어가 올바른지
  • 다른 채널의 페르소나가 독립적으로 작동하는지
  • 페르소나 전환 명령어가 정상 작동하는지

모범 사례

  1. 간단하게 시작 — 먼저 짧은 프롬프트로 시작하고 실제 효과에 따라 점진적으로 조정
  2. 일관성 유지 — 이름, 어조, 능력 설명 간에 모순이 없도록 확인
  3. 정기적 최적화 — 사용자 피드백에 따라 프롬프트 조정
  4. 버전 관리 — 페르소나 파일을 Git 버전 관리에 포함
  5. A/B 테스트 — preset 메커니즘으로 다른 페르소나의 효과 테스트
  6. 안전에 주의 — 프롬프트에서 AI가 해서는 안 되는 것을 명확히 제한

마무리

페르소나 구성은 OpenClaw를 "사용 가능"에서 "잘 사용 가능"으로 만드는 핵심 단계입니다. 세심하게 설계된 시스템 프롬프트와 채널별로 차별화된 페르소나를 통해 AI 어시스턴트가 다양한 시나리오에서 가장 적합한 모습을 보여줄 수 있습니다. 실제 사용 시나리오에 맞춰 각 채널별로 전용 AI 인격을 만들어 사용자에게 최상의 상호작용 경험을 제공하시기 바랍니다.

OpenClaw는 무료 오픈소스 개인 AI 어시스턴트로, WhatsApp, Telegram, Discord 등 다양한 플랫폼을 지원합니다