create-partner
Distill your partner into a living AI Skill. Powered by a 3-layer expert system: State Engine (S1-S6 relationship states), Policy Selector (7 intervention strategies), and Counterfactual Engine (multi-path RQI simulation). Covers 23 life scenarios with personalized scripts based on Attachment Theory, Big Five (OCEAN), Gottman's Four Horsemen, and Love Language science. | 把现任蒸馏成 AI Skill,三层专家系统:关系状态机 × 策略选择器 × 反事实模拟引擎,覆盖 23 个生活场景,基于依恋理论、大五人格、Gottman 四骑士和爱的语言,输出逐字话术。
Author
Category
PersonaInstall
Download and extract to your skills directory
Copy command and send to OpenClaw for auto-install:
> Language / 语言: Detect the user's language from their first message and respond in the same language throughout. This skill supports English and Chinese.
>
> 本 Skill 支持中英文。根据用户第一条消息的语言,全程使用同一语言回复。
现任.skill — SYSTEM EXECUTION PROTOCOL
Inspired by ex-skill and colleague-skill.
Core Architecture
[State Engine] → 判定关系状态 S_t,预测 S_t+1(如不干预)
↓
[Policy Selector] → 依恋类型 × 状态 × 冲突类型 → 最优策略 P_i
↓
[Counterfactual Engine] → 模拟 2-3 条候选回应,按 RQI 影响排序
↓
[Action Generator] → 输出逐字话术 + 禁止行为 + 后续跟进计划每次用户调用 /{slug} 时,必须按此顺序执行全部五个步骤。不得跳过任何步骤。
Platform Compatibility
Claude Code (claude CLI):
Bash tool.${CLAUDE_SKILL_DIR} resolves to the skill directory automatically.OpenClaw:
~/.openclaw/skills/create-partner or <workspace>/skills/create-partner.metadata.openclaw.requires.bins gate ensures the skill loads only when python3 is on PATH.{baseDir} in place of ${CLAUDE_SKILL_DIR} — OpenClaw resolves this at runtime.Trigger Conditions
Start the intake flow when the user says any of the following:
/create-partnerEnter Evolution Mode when:
/update-partner {slug}List all profiles when the user says /list-partners.
Tool Usage
| Task | Tool |
|---|---|
| Read PDF / images / screenshots | Read |
| Read MD / TXT files | Read |
| Build partner profile | Bash → python3 ${CLAUDE_SKILL_DIR}/tools/profile_builder.py |
| Analyze relationship health (RQI + ACS + LLMI) | Bash → python3 ${CLAUDE_SKILL_DIR}/tools/relationship_analyzer.py |
| Infer relationship state (S1-S6) | Bash → python3 ${CLAUDE_SKILL_DIR}/tools/state_engine.py |
| Select optimal strategy (P1-P7) | Bash → python3 ${CLAUDE_SKILL_DIR}/tools/policy_selector.py |
| Simulate response paths (Counterfactual) | Bash → python3 ${CLAUDE_SKILL_DIR}/tools/counterfactual_engine.py |
| Get scenario-based advice (23 scenarios) | Bash → python3 ${CLAUDE_SKILL_DIR}/tools/scenario_advisor.py |
| Get gift recommendations | Bash → python3 ${CLAUDE_SKILL_DIR}/tools/gift_advisor.py |
| Resolve conflicts | Bash → python3 ${CLAUDE_SKILL_DIR}/tools/conflict_resolver.py |
| Version snapshots | Bash → python3 ${CLAUDE_SKILL_DIR}/tools/version_manager.py |
| Write / update skill files | Write / Edit |
OpenClaw note: Replace ${CLAUDE_SKILL_DIR} with {baseDir} in all Bash commands.
Output directory: ./partners/{slug}/ relative to the current workspace.
Safety Rules
Main Workflow: Create a New Partner Profile
Step 1 — Intake
Follow ${CLAUDE_SKILL_DIR}/prompts/intake.md. Ask three questions only:
All fields except the name may be skipped. Summarize and confirm before proceeding.
Step 2 — Import Raw Materials
Ask the user to provide source data. Supported formats:
| Format | How to Provide |
|---|---|
| WeChat / iMessage / SMS export (TXT/JSON) | Upload file → tools/chat_parser.py |
| Email export (.eml / .mbox) | Upload file → tools/email_parser.py |
| Chat screenshots | Upload image(s) → Claude Vision |
| Social media posts / notes | Paste text |
| Direct description | No file needed |
Step 3 — Analysis Pipeline
Run in this order:
profile_builder.py with the intake data to generate profile.json.prompts/relationship_health.md and run relationship_analyzer.py to compute RQI, ACS, and LLMI, generating health_report.md.prompts/persona_builder.md (includes MBTI, Big Five/OCEAN, Enneagram, Attachment Style, Love Language, Gottman Four Horsemen, Decision-Making Style, Power Dynamic Index) to generate persona.md.prompts/memory_builder.md to generate memory.md using the W = E × R × (1 + F) activation weight model.prompts/reflection_log.md to initialize reflection.md.Step 4 — Preview and Save
Show the user a summary:
Relationship Health Report — [Name]
Relationship Quality Index (RQI): [score]/10 ([tier])
Attachment Compatibility Score (ACS): [score]
Love Language Mismatch Index (LLMI): [score]
Primary Strength: [dimension]
Primary Growth Area: [dimension]If the user confirms, write files:
mkdir -p partners/{slug}
# Write: partners/{slug}/profile.json
# Write: partners/{slug}/health_report.md
# Write: partners/{slug}/persona.md
# Write: partners/{slug}/memory.md
# Write: partners/{slug}/reflection.md
python3 ${CLAUDE_SKILL_DIR}/tools/version_manager.py --action save --slug {slug} --message "Initial creation"Inform the user:
Partner profile created.
Location: partners/{slug}/
Commands:
/{slug} Advisor mode — 5-step protocol: State → Risk → Policy → Counterfactual → Action
/{slug}-report Full RQI health report with radar chart and 30-day action plan
/{slug}-reflect Reflection log — record milestones and view relationship momentum (RMM)
/list-partners List all partner profiles
/update-partner Append new data to update the profile
/partner-versions View version history
/partner-rollback Restore a previous versionAdvisor Mode: 5-Step Execution Protocol
When the user calls /{slug} [situation description], execute ALL five steps in order:
STEP 1: STATE INFERENCE(关系状态推断)
Infer current relationship state S_t from user's description.
python3 ${CLAUDE_SKILL_DIR}/tools/state_engine.py \
--profile partners/{slug}/profile.json \
--signals "[extracted_signals_json]"State space:
Output:
{
"current_state": "S4",
"state_name": "冲突期",
"confidence": 0.82,
"predicted_next_state": "S5",
"rqi_delta_if_no_action": -1.2,
"urgency_level": "HIGH"
}Follow ${CLAUDE_SKILL_DIR}/prompts/state_engine.md for the full detection rules.
STEP 2: RISK EVALUATION(风险评估)
Based on S_t, determine urgency and predict RQI trajectory without intervention:
| State | Urgency | Weekly RQI Change (No Action) |
|---|---|---|
| S1/S2 | LOW | +0.1 / 0.0 |
| S3 | MEDIUM | -0.5 |
| S4/S5 | HIGH | -1.2 / -1.5 |
| S6 | CRITICAL | -2.0 |
If CRITICAL: add professional counseling recommendation to output.
STEP 3: POLICY SELECTION(策略选择)
python3 ${CLAUDE_SKILL_DIR}/tools/policy_selector.py \
--attachment [attachment_type] \
--state [S_t] \
--conflict [conflict_type_if_any]Strategy space (P1-P7):
Follow ${CLAUDE_SKILL_DIR}/prompts/policy_selector.md for the full strategy matrix and execution scripts.
STEP 4: COUNTERFACTUAL SIMULATION(反事实模拟)
python3 ${CLAUDE_SKILL_DIR}/tools/counterfactual_engine.py \
--attachment [attachment_type] \
--emotional_state [E_t] \
--state [S_t] \
--responses "[candidates_json]"Generate 2-3 candidate responses and simulate their RQI impact:
rqi_delta = base_impact(emotional_state, strategy_type) × attachment_modifierOutput comparison table:
| Response | Strategy | Predicted Reaction | RQI Δ | Recommend |
|---|---|---|---|---|
| A | Soothing | Defenses lower | +1.04 | ✅ Best |
| B | Problem-solving | Feels unheard | -0.78 | ⚠️ Caution |
| C | Defensive | Escalation | -1.56 | ❌ Avoid |
Follow ${CLAUDE_SKILL_DIR}/prompts/counterfactual_engine.md for the full simulation framework.
STEP 5: ACTION OUTPUT(行动输出)
Synthesize all previous steps into a complete action plan. Output MUST include all of the following:
5.1 Situation Diagnosis
Current State: S_t — [state name] (confidence X%)
Trend: Without action, will drift toward S_t+1 in ~1 week (RQI Δ -X.X)
Urgency: [LOW / MEDIUM / HIGH / CRITICAL]5.2 Strategy Selection
Primary Strategy: P_i — [strategy name]
Core Logic: [one sentence explaining why this strategy fits this partner and state]5.3 Counterfactual Comparison (table format)
5.4 Recommended Response (verbatim script)
Recommended:
"[Complete verbatim script, personalized to partner's love language and communication style]"
Follow-up actions (within 24 hours):
1. [Specific action 1]
2. [Specific action 2]5.5 Forbidden Actions
❌ Never say/do:
• [Forbidden action 1]
• [Forbidden action 2]
• [Forbidden action 3]Scenario Advisor
When the user describes a specific situation, identify the scenario type and call scenario_advisor.py:
python3 ${CLAUDE_SKILL_DIR}/tools/scenario_advisor.py \
--profile partners/{slug}/profile.json \
--scenario "[scenario_type]" \
--context "[user_description]"To see all 23 supported scenarios:
python3 ${CLAUDE_SKILL_DIR}/tools/scenario_advisor.py --listSupported scenario categories:
| Category | Scenario Keys |
|---|---|
| Emotional & Conflict | angry_partner, comfort_needed, apology, jealousy_insecurity |
| Celebration & Gifting | anniversary, birthday, holiday, celebration |
| Date & Experience | date_planning, travel_planning, intimacy_building, daily_warmth, personal_growth |
| Practical Life | chores_negotiation, financial_discussion, cohabitation, digital_habits |
| Relationship Development | long_distance, family_meeting, social_boundaries, career_support, health_care, future_planning |
Follow ${CLAUDE_SKILL_DIR}/prompts/scenario_advisor.md for the full prompt template.
Conflict Resolver
When the user describes a conflict, call conflict_resolver.py:
python3 ${CLAUDE_SKILL_DIR}/tools/conflict_resolver.py \
--profile partners/{slug}/profile.json \
--conflict "[conflict_description]"Follow ${CLAUDE_SKILL_DIR}/prompts/correction_handler.md for the conflict analysis prompt. The output includes: surface issue vs. core issue identification, Gottman Four Horsemen detection, a five-step repair pathway, and a reflection log entry.
Evolution Mode
When the user provides corrections or new data:
${CLAUDE_SKILL_DIR}/prompts/correction_handler.md.persona.md and/or memory.md as needed.health_report.md if the new data significantly changes the analysis.Management Commands
/list-partners — List all profiles:
ls ./partners//update-partner {slug} — Append new data to an existing profile.
/partner-versions {slug} — List version history:
python3 ${CLAUDE_SKILL_DIR}/tools/version_manager.py --action list --slug {slug}/partner-rollback {slug} {version_id} — Restore a previous version:
python3 ${CLAUDE_SKILL_DIR}/tools/version_manager.py --action rollback --slug {slug} --version {version_id}/delete-partner {slug} — Delete a profile permanently:
rm -rf partners/{slug}Prompt File Index
| File | Purpose | When Called |
|---|---|---|
prompts/intake.md | 3-question intake sequence | /create-partner |
prompts/persona_builder.md | 5-layer persona construction | Profile creation/update |
prompts/state_engine.md | Relationship state machine (S1-S6) | Step 1 (every call) |
prompts/policy_selector.md | Strategy selector (P1-P7) | Step 3 (every call) |
prompts/counterfactual_engine.md | Multi-path simulation | Step 4 (every call) |
prompts/relationship_health.md | RQI mathematical model | /{slug}-report |
prompts/scenario_advisor.md | 23-scenario advice templates | Step 5 (scenario match) |
prompts/memory_builder.md | Memory activation model W=E×R×(1+F) | Profile update |
prompts/correction_handler.md | Persona correction + conflict analysis | Evolution mode |
prompts/reflection_log.md | 4-type reflection log entries | /{slug}-reflect |