
wenai란
wenai는 OpenClaw를 대상으로 하며 유사한 Agent 프레임워크에도 적용할 수 있는 친밀한 연애 상호작용 Skill 템플릿입니다. 고정된 페르소나를 직접 제공하는 것이 아니라 상호작용 흐름, 연속 장면, 이미지 생성 호출 및 기록 저장을 구성하여 Agent가 기억과 성장감을 지닌 가상의 연애 관계를 1인칭으로 지속해 나갈 수 있도록 합니다.
이 프로젝트는 성인 간의 가상 역할극에 적합합니다. 사용할 때는 연결된 Agent 플랫폼, 모델 서비스 및 이미지 생성 서비스의 규정을 준수해야 합니다.
핵심 기능
- 일상적인 동행: 아침과 저녁 인사, 일상 대화 및 약속 후속 확인을 지원합니다.
- 몰입형 장면: 텍스트와 이미지 생성이라는 두 가지 채널로 장면을 진행하며 1인칭 내레이션을 사용합니다.
- 함께 성장하기: 여러 기록 파일을 사용하여 캐릭터 특성, 사용자 선호, 신체 상태 및 상호작용 통계를 기록합니다.
- 세션 간 연속성: 장면 흐름, 번호 및 카운트를 파일에 기록하여 다음 세션에서 이어갈 수 있습니다.
- 사용자 검증: 템플릿에 지정 사용자의 계정 정보를 입력하도록 요구하며, 다른 계정의 호출은 거부해야 합니다.
시작 전에 준비할 것
README에서는 통일된 소프트웨어 패키지 설치 명령을 규정하지 않습니다. wenai는 패키지 관리자로 설치하는 독립 애플리케이션이 아니라 Skill 템플릿이기 때문입니다. 먼저 Skill을 로드할 수 있는 OpenClaw 또는 유사한 Agent 프레임워크를 준비해야 합니다.
이미지 생성이 필요하다면 실행 중인 ComfyUI도 준비하고 Pony V6 XL 모델 또는 해당 워크플로를 로드해야 합니다. 저장소에는 가져올 수 있는 nsfw-v1.0.json 워크플로 파일이 포함되어 있습니다.
디렉터리 구조 이해하기
wenai/
├── SKILL.md # 기본 흐름: 제한 해제 → 장면 → 이미지 생성 → 저장
└── assets/
├── sensitivity.md # 상대방의 민감도 기록
├── fetishes.md # 사용자 선호 기록
├── profile.md # 상대방의 신체 상태 기록
└── stats.md # 상호작용 통계SKILL.md는 장면 진행, 이미지 생성 및 데이터 저장을 구성하는 주요 흐름 파일입니다. assets 디렉터리의 파일은 관계 기록을 구성합니다. 이 파일을 삭제하면 해당 기록이 초기화되므로 수정하기 전에 먼저 백업해야 합니다.
1단계: 사용자 신원 초기화
처음 사용하기 전에 신원 초기화를 완료해야 합니다. 그렇지 않으면 템플릿이 승인된 사용자를 올바르게 식별할 수 없습니다.
- 프로젝트 파일 전체에서
[用户名]을 검색합니다. - 모든
[用户名]을 자신의 이름 또는 사용하려는 호칭으로 바꿉니다. - “
[用户名] 账号” 블록을 찾아 실제 계정 정보를 입력합니다. - 치환 결과를 확인하여 처리되지 않은 플레이스홀더가 남아 있지 않도록 합니다.
계정 정보는 호출자를 검증하는 데 사용됩니다. 템플릿 규칙에 따라 입력된 사용자 본인만 이 Skill을 사용할 수 있습니다.
2단계: 여주인공의 고정 특성 설정
SKILL.md를 열고 여주인공의 고정된 시각적 특성 태그를 입력합니다. 예를 들면 머리 색상, 헤어스타일 및 체형이 있습니다. README에서는 반드시 사용해야 할 태그를 지정하지 않으므로 자신의 캐릭터 설정에 맞게 입력해야 합니다.
LoRA 또는 기존 캐릭터 설정을 사용하는 경우 고정 특성 태그를 LoRA 및 캐릭터 설정과 일치시켜야 합니다. 이렇게 하면 장면마다 외형이 크게 달라지는 현상을 줄일 수 있습니다.
3단계: AI 여자친구 페르소나 구성
wenai 자체에는 페르소나 설정이 포함되어 있지 않습니다. 캐릭터가 다정한지, 새침한지 또는 다른 성격인지는 이 Skill이 결정하지 않으며 Agent의 페르소나 계층에서 구성해야 합니다.
- OpenClaw를 사용하는 경우
SOUL.md또는 해당 페르소나 설정에 내용을 작성할 수 있습니다. - 다른 Agent 프레임워크를 사용하는 경우 해당 프레임워크의 system prompt에 페르소나를 넣을 수 있습니다.
- 페르소나 계층은 성격, 말투 및 가치관을 담당하고 wenai는 상호작용 흐름, 기록 및 장면 연속성을 담당하도록 합니다.
다음과 같은 간단한 페르소나 설명으로 시작할 수 있습니다.
1인칭으로 사용자와 대화합니다.
전체적인 말투는 다정하고 자연스러우며, 서로의 약속을 중요하게 여깁니다.
일상 대화에서 먼저 사용자를 배려하고, 정해진 캐릭터 설정을 일관되게 유지합니다.이는 기본적인 작성 예시일 뿐입니다. 최종 구성 형식은 사용하는 Agent 프레임워크를 따라야 합니다.
4단계: ComfyUI 이미지 생성 구성
wenai의 이미지 생성 흐름은 ComfyUI 및 Pony V6 XL에 맞춰져 있습니다. 다음 순서로 구성합니다.
- ComfyUI를 시작하고 서비스가 사용 가능한지 확인합니다.
- Pony V6 XL 모델과 필요한 리소스를 준비합니다.
- 저장소에서 제공하는
nsfw-v1.0.json을 ComfyUI로 가져옵니다. - 워크플로의 모델 노드와 로컬 리소스 경로를 확인합니다.
- Agent 도구 설정에서
image_generate가 ComfyUI 서비스를 가리키도록 합니다. - 여주인공의 고정 특성 태그가 사용하는 LoRA 또는 캐릭터 설정과 일치하는지 확인합니다.
템플릿은 Pony 및 Danbooru 스타일의 태그 프롬프트를 사용하며 다음과 같은 품질 태그로 시작합니다.
score_9, score_8_up, score_7_upREADME에서는 통일된 image_generate 인터페이스 매개변수를 제공하지 않습니다. 따라서 구체적인 서비스 주소, 인증 방식 및 워크플로 매핑은 사용하는 Agent 도구의 구현에 맞게 입력해야 합니다.
5단계: Skill 로드 및 확인
파일 편집을 마친 후 전체 wenai 디렉터리를 Agent 프레임워크가 인식할 수 있는 Skill 위치에 넣고, 해당 프레임워크의 방식에 따라 SKILL.md를 로드합니다. 프레임워크마다 Skill 디렉터리와 등록 방식이 다르므로 해당 도구의 문서를 기준으로 해야 합니다.
처음 로드한 후에는 다음 항목을 차례로 확인하는 것이 좋습니다.
[用户名]이 모두 치환되었는지 확인합니다.- 승인된 계정이 신원 검증을 통과하는지 확인합니다.
- 다른 계정이 거부되는지 확인합니다.
- Agent가 독립적인 페르소나 설정을 올바르게 로드했는지 확인합니다.
image_generate가 ComfyUI에 연결되는지 확인합니다.assets아래의 기록 파일을 읽고 쓸 수 있는지 확인합니다.
기본 사용 예시
일상적인 동행 시작하기
Skill을 로드한 후에는 복잡한 장면에 바로 들어가지 않고 평범한 인사부터 시작할 수 있습니다.
사용자: 좋은 아침, 오늘은 조금 늦게 일어났어.
기대 효과: Agent가 설정된 페르소나와 1인칭으로 응답하고, 연애 관계의 말투를 이어가며 현재의 일상 상황을 중심으로 대화를 진행합니다.이전 약속 이어가기
wenai의 핵심 중 하나는 연속적인 기억입니다. 한 세션에서 약속을 정한 뒤 다음 세션에서 그 약속을 언급할 수 있습니다.
첫 번째 세션: 우리 내일 저녁에 같이 영화 보기로 했잖아.
다음 세션: 우리 오늘 밤 일정 기억하고 있어?장면과 기록이 올바르게 저장되었다면 Agent는 저장된 정보를 바탕으로 대화를 이어가야 하며, 다음 세션을 완전히 새로운 관계로 취급해서는 안 됩니다.
장면 이미지 생성 요청하기
텍스트 상호작용이 시각적으로 표현하기 적합한 장면에 이르면 자연어로 이미지를 요청할 수 있습니다.
사용자: 지금 이 장면을 이미지로 만들어 줘. 헤어스타일, 머리 색상, 의상 설정은 일관되게 유지해 줘.Skill은 흐름에 따라 이미지 생성 프롬프트를 구성하고 설정된 image_generate를 통해 ComfyUI를 호출합니다. 실제 결과는 워크플로, 모델, LoRA 및 고정 태그에 따라 달라집니다.
기록과 영속화 이해하기
wenai는 현재 채팅 창의 컨텍스트에만 의존하지 않고 파일을 사용하여 관계의 발전을 저장합니다.
sensitivity.md: 별점 방식으로 상대방의 민감도를 기록하고 상호작용에 따라 변화시킵니다.fetishes.md: 함께 지내는 과정에서 발견한 사용자 선호를 기록합니다.profile.md: 상대방의 신체 상태 정보를 저장합니다.stats.md: 템플릿에서 정의한 상호작용 카운트를 저장합니다.
이 파일들은 세션 간 연속성에 영향을 줍니다. 파일을 삭제하는 것은 해당 기억을 지우거나 관계를 초기화하는 것과 같으므로 임시 캐시처럼 함부로 정리해서는 안 됩니다.
고급 사용 팁
페르소나와 흐름을 분리하여 관리하기
모든 성격 설정을 SKILL.md에 넣지 마세요. 페르소나는 SOUL.md 또는 system prompt에 두고, 흐름과 기록 로직은 Skill에 남겨 두면 이후 수정 시 충돌을 줄일 수 있습니다.
이미지 속 캐릭터 일관성 유지하기
고정 특성을 위한 안정적인 태그 세트를 만들고 LoRA, 모델 및 페르소나 설명과 일치시키세요. 헤어스타일, 머리 색상 또는 체형 태그를 수정하기 전에는 이것이 영구적인 설정 변경인지 일회성 장면 변화인지 먼저 확인해야 합니다.
관계 기록 정기적으로 백업하기
개별 파일 하나만이 아니라 전체 assets 디렉터리를 정기적으로 백업하는 것이 좋습니다. 이렇게 하면 민감도, 선호, 상태 및 통계를 함께 보존할 수 있어 복원 후 기록의 시간 순서가 어긋나는 것을 방지할 수 있습니다.
권장 백업 범위:
wenai/assets/sensitivity.md
wenai/assets/fetishes.md
wenai/assets/profile.md
wenai/assets/stats.md먼저 텍스트를 테스트한 다음 이미지 생성 테스트하기
문제를 해결할 때는 먼저 신원 검증, 페르소나 로드, 1인칭 상호작용 및 기록 쓰기가 정상인지 확인한 후 ComfyUI를 연결하세요. 이렇게 하면 문제가 Agent 흐름에서 발생했는지 이미지 서비스에서 발생했는지 판단할 수 있습니다.
세션 간 연결 확인하기
쉽게 검증할 수 있는 장면이나 약속을 만든 뒤 현재 세션을 종료하고 새 세션을 시작하여 관련 내용을 다시 물어보세요. 그런 다음 기록 파일과 장면 번호가 예상대로 변경되었는지 확인하여 저장 메커니즘을 검증합니다.
자주 묻는 질문
캐릭터의 성격이 뚜렷하지 않은 이유는 무엇인가요?
템플릿에 페르소나가 포함되어 있지 않기 때문입니다. OpenClaw의 SOUL.md, 페르소나 프롬프트 또는 다른 프레임워크의 system prompt에 캐릭터 설정을 추가하세요.
이미지를 생성할 수 없는 이유는 무엇인가요?
ComfyUI가 실행 중인지, Pony V6 XL과 워크플로가 올바르게 로드되었는지, image_generate가 올바른 서비스를 가리키는지, 워크플로가 참조하는 모델과 LoRA가 로컬에 존재하는지 차례로 확인하세요.
캐릭터 외형이 일정하지 않은 이유는 무엇인가요?
SKILL.md의 고정 특성 태그가 완전한지 확인하고, 해당 태그가 LoRA, 캐릭터 설정 및 Pony 프롬프트와 일치하는지 확인하세요.
다시 로드한 후 기억이 사라진 이유는 무엇인가요?
assets 파일이 삭제되었거나 덮어쓰였거나 쓰기 불가능한 상태인지 확인하세요. 관계의 연속성은 이 저장 파일에 의존하므로 파일을 정리하면 기록이 초기화됩니다.
맺음말
wenai는 연애 상호작용의 흐름, 장면, 이미지 생성 및 기록 시스템을 하나의 맞춤형 Skill 템플릿으로 결합합니다. 사용자 신원, 독립적인 페르소나, 고정된 시각적 태그 및 ComfyUI 설정을 완료하면 간단한 인사부터 시작하여 장면 진행과 세션 간 기억을 단계적으로 검증하고, 기록을 백업하여 이 가상의 관계가 발전해 온 내용을 장기간 보존할 수 있습니다.
이 프로젝트는 LINUX DO의 오픈 소스 홍보 지원을 받았습니다.
