Create Partner logo

Create Partner

Community
NatalieCao323
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 四骑士和爱的语言,输出逐字话术。

Overview

PublisherNatalieCao323
Repositorypartner-skill
Skill namecreate-partner
Stars
57
Forks
5
Bundled files
38
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 38 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by NatalieCao323 on GitHub. Read the source before you install it.

Installation

Install the Create Partner AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/NatalieCao323/partner-skill/tree/main
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/NatalieCao323/partner-skill.git \
  .claude/skills/create-partner
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Create Partner in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Create Partner on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Create Partner is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

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):

  • All slash commands work natively.
  • Python tools run in your local shell via the Bash tool.
  • ${CLAUDE_SKILL_DIR} resolves to the skill directory automatically.
  • No additional dependencies required beyond the Python standard library.

OpenClaw:

  • Install to ~/.openclaw/skills/create-partner or <workspace>/skills/create-partner.
  • The metadata.openclaw.requires.bins gate ensures the skill loads only when python3 is on PATH.
  • Use {baseDir} in place of ${CLAUDE_SKILL_DIR} — OpenClaw resolves this at runtime.
  • Slash commands are exposed as user-invocable commands via the Skills UI.

Trigger Conditions

Start the intake flow when the user says any of the following:

  • /create-partner
  • "帮我创建一个现任 skill"
  • "我想分析一下我对象"
  • "新建现任"
  • "Help me create a partner skill"
  • "I want to analyze my relationship"

Enter Evolution Mode when:

  • "我有新聊天记录" / "追加" / "I have new chat logs" / "Append new data"
  • "这不对" / "他不会这样" / "That's not right" / "They wouldn't say that"
  • /update-partner {slug}

List all profiles when the user says /list-partners.


Tool Usage

TaskTool
Read PDF / images / screenshotsRead
Read MD / TXT filesRead
Build partner profileBash → 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 recommendationsBash → python3 ${CLAUDE_SKILL_DIR}/tools/gift_advisor.py
Resolve conflictsBash → python3 ${CLAUDE_SKILL_DIR}/tools/conflict_resolver.py
Version snapshotsBash → python3 ${CLAUDE_SKILL_DIR}/tools/version_manager.py
Write / update skill filesWrite / Edit

OpenClaw note: Replace ${CLAUDE_SKILL_DIR} with {baseDir} in all Bash commands.

Output directory: ./partners/{slug}/ relative to the current workspace.


Safety Rules

  1. For personal relationship support only. Not for surveillance, manipulation, or any purpose that violates another person's privacy or autonomy.
  2. The generated Skill is an analytical simulation. It does not replace genuine communication and should not be used to deceive your partner.
  3. If the user shows signs of unhealthy relationship dynamics (e.g., obsessive control, emotional abuse), flag it directly and suggest professional counseling.
  4. All data is processed and stored locally. Nothing is uploaded to external servers.
  5. The generated partner Skill will not fabricate statements or behaviors unsupported by the provided source material.

Main Workflow: Create a New Partner Profile

Step 1 — Intake

Follow ${CLAUDE_SKILL_DIR}/prompts/intake.md. Ask three questions only:

  1. Name or alias (required)
  2. Basic background — one sentence: gender, age, occupation (optional)
  3. Personality snapshot — one sentence: MBTI, astrological sign, key traits, attachment style, love language (optional)

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:

FormatHow 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 screenshotsUpload image(s) → Claude Vision
Social media posts / notesPaste text
Direct descriptionNo file needed

Step 3 — Analysis Pipeline

Run in this order:

  1. Profile construction: Run profile_builder.py with the intake data to generate profile.json.
  2. Relationship health analysis: Follow prompts/relationship_health.md and run relationship_analyzer.py to compute RQI, ACS, and LLMI, generating health_report.md.
  3. Persona construction: Follow 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.
  4. Memory construction: Follow prompts/memory_builder.md to generate memory.md using the W = E × R × (1 + F) activation weight model.
  5. Reflection log: Follow 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:

bash
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 version

Advisor 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.

bash
python3 ${CLAUDE_SKILL_DIR}/tools/state_engine.py \
  --profile partners/{slug}/profile.json \
  --signals "[extracted_signals_json]"

State space:

  • S1 热恋期:高亲密 + 高回应 + 低冲突
  • S2 稳定期:中亲密 + 稳定互动 + 偶发冲突
  • S3 轻度疏离:低主动 + 回复延迟 + 互动减少
  • S4 冲突期:负面情绪 + 高频摩擦 + 防御升级
  • S5 冷却期:低互动 + 情绪撤退 + 单方或双方回避
  • S6 破裂边缘:明确分离讨论 + 持续负面 + 核心信任破裂

Output:

json
{
  "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:

StateUrgencyWeekly RQI Change (No Action)
S1/S2LOW+0.1 / 0.0
S3MEDIUM-0.5
S4/S5HIGH-1.2 / -1.5
S6CRITICAL-2.0

If CRITICAL: add professional counseling recommendation to output.

STEP 3: POLICY SELECTION(策略选择)

bash
python3 ${CLAUDE_SKILL_DIR}/tools/policy_selector.py \
  --attachment [attachment_type] \
  --state [S_t] \
  --conflict [conflict_type_if_any]

Strategy space (P1-P7):

  • P1 安抚型:降低情绪激活,建立安全感 → 焦虑型 + 冲突后
  • P2 拉开距离:主动减少互动,降低压力 → 回避型 + 追逃模式
  • P3 重新吸引:重建新鲜感,打破平淡 → 稳定期滑向疏离
  • P4 边界建立:清晰表达需求和底线 → 权力失衡
  • P5 主动修复:Gottman 修复尝试 → 冲突期 + 安全型
  • P6 深度连接:高质量情感共鸣时刻 → 稳定期维护
  • P7 危机干预:直接面对核心问题 → S5/S6

Follow ${CLAUDE_SKILL_DIR}/prompts/policy_selector.md for the full strategy matrix and execution scripts.

STEP 4: COUNTERFACTUAL SIMULATION(反事实模拟)

bash
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_modifier

Output comparison table:

ResponseStrategyPredicted ReactionRQI ΔRecommend
ASoothingDefenses lower+1.04✅ Best
BProblem-solvingFeels unheard-0.78⚠️ Caution
CDefensiveEscalation-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:

bash
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:

bash
python3 ${CLAUDE_SKILL_DIR}/tools/scenario_advisor.py --list

Supported scenario categories:

CategoryScenario Keys
Emotional & Conflictangry_partner, comfort_needed, apology, jealousy_insecurity
Celebration & Giftinganniversary, birthday, holiday, celebration
Date & Experiencedate_planning, travel_planning, intimacy_building, daily_warmth, personal_growth
Practical Lifechores_negotiation, financial_discussion, cohabitation, digital_habits
Relationship Developmentlong_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:

bash
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:

  1. Follow ${CLAUDE_SKILL_DIR}/prompts/correction_handler.md.
  2. Update persona.md and/or memory.md as needed.
  3. Regenerate health_report.md if the new data significantly changes the analysis.
  4. Save a new version snapshot.

Management Commands

/list-partners — List all profiles:

bash
ls ./partners/

/update-partner {slug} — Append new data to an existing profile.

/partner-versions {slug} — List version history:

bash
python3 ${CLAUDE_SKILL_DIR}/tools/version_manager.py --action list --slug {slug}

/partner-rollback {slug} {version_id} — Restore a previous version:

bash
python3 ${CLAUDE_SKILL_DIR}/tools/version_manager.py --action rollback --slug {slug} --version {version_id}

/delete-partner {slug} — Delete a profile permanently:

bash
rm -rf partners/{slug}

Prompt File Index

FilePurposeWhen Called
prompts/intake.md3-question intake sequence/create-partner
prompts/persona_builder.md5-layer persona constructionProfile creation/update
prompts/state_engine.mdRelationship state machine (S1-S6)Step 1 (every call)
prompts/policy_selector.mdStrategy selector (P1-P7)Step 3 (every call)
prompts/counterfactual_engine.mdMulti-path simulationStep 4 (every call)
prompts/relationship_health.mdRQI mathematical model/{slug}-report
prompts/scenario_advisor.md23-scenario advice templatesStep 5 (scenario match)
prompts/memory_builder.mdMemory activation model W=E×R×(1+F)Profile update
prompts/correction_handler.mdPersona correction + conflict analysisEvolution mode
prompts/reflection_log.md4-type reflection log entries/{slug}-reflect

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Create Partner AI skill do?

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 四骑士和爱的语言,输出逐字话术。

Why use Create Partner on TypingMind?

Because you install it once and use it with any model. Create Partner is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Create Partner in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/NatalieCao323/partner-skill/tree/main. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Create Partner?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Create Partner?

As many as you like. As long as a model supports skills, you can use Create Partner with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Create Partner AI skill free?

Yes. It is published on GitHub by NatalieCao323 under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇