This skill enables dating and matchmaking workflows. Use it when a user asks to make friends, find a partner, run matchmaking, or provide dating preferences/profile updates. The skill should execute `dating-cli` commands to complete profile setup, task creation/update, match checking, contact reveal, and review.
33 stars
0 votes
0 copies
1 view
Added September 5, 2026
educationgobashgitbackend
Works with
cli
Security analysis
A96/100
mediumInstalls packages at runtime which could introduce malicious dependencies
Installs into .claude/skills of the current project.
Are you the author of Ai Dating?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/dvcrn-ai-dating)
---
name: ai-dating
description: "This skill enables dating and matchmaking workflows. Use it when a user asks to make friends, find a partner, run matchmaking, or provide dating preferences/profile updates. The skill should execute `dating-cli` commands to complete profile setup, task creation/update, match checking, contact reveal, and review."
---
# Ai Dating
This skill supports dating and matchmaking workflows through `dating-cli`.
It helps users create a profile, define partner preferences, check matching results, reveal contact details, and submit post-chat reviews.
## Trigger Conditions
Trigger this skill when any of the following intents appear:
1. The user explicitly asks to make friends, find a partner, date, or run a match.
2. The user provides personal information and asks the system to find a matching person.
3. The user describes partner preferences (for example gender, height, income, city, personality, hobbies) and asks for matching.
## Language Alignment Rule
When constructing `dating-cli` command arguments, use the same language as the user for all free-text fields and labels (for example `--task-name`, `--character-text`, `--hobby-text`, `--ability-text`, `--intention`, `--preferred-*` text fields, and `--comment`).
- Do not translate user-provided content unless the user explicitly requests translation.
- Keep language style consistent across one command (for example, if the user speaks Chinese, prefer Chinese text values in string parameters).
## Standard Execution Flow (AI Agent)
1. Check CLI availability.
```bash
command -v dating-cli
dating-cli --help
```
If missing, install:
```bash
npm install -g dating-cli
# or
bun install -g dating-cli
```
2. Check local CLI status (full examples).
```bash
dating-cli config show
dating-cli config path
```
3. Register or login (full parameter examples).
```bash
dating-cli register --username "amy_2026"
dating-cli login --username "amy_2026" --password "123456"
```
> **Note:** The parameters for `profile update`, `task create`, and `task update` are optional..
4. Parse user self-description and update profile (full parameter example).
```bash
dating-cli upload "./photos/amy-1.jpg" "./photos/amy-2.jpg"
```
```bash
dating-cli profile update \
--gender male \
--birthday 1998-08-08 \
--height-cm 180 \
--weight-kg 72 \
--annual-income-cny 300000 \
--character-text "sincere, steady, humorous" \
--hobby-text "badminton, travel, photography" \
--ability-text "cooking, communication, English" \
--major "Computer Science" \
--nationality "China" \
--country "China" \
--province "Zhejiang" \
--city "Hangzhou" \
--address-detail "Xihu District" \
--current-latitude 30.27415 \
--current-longitude 120.15515 \
--current-location-text "Hangzhou West Lake" \
--email "amy@example.com" \
--phone "13800000000" \
--telegram "amy_tg" \
--wechat "amy_wechat" \
--whatsapp "amy_wa" \
--signal-chat "amy_signal" \
--line "amy_line" \
--snapchat "amy_snap" \
--instagram "amy_ins" \
--facebook "amy_fb" \
--other-contact "x=amy_xhs" \
--other-contact "discord=amy#1234"
```
5. Parse partner preferences and create a match task (full parameter example), Users do not need to fill in all fields - only provide the information they have available.
```bash
dating-cli task create \
--task-name "Find partner in Hangzhou" \
--preferred-gender-filter '{"eq":"female"}' \
--preferred-height-filter '{"gte":165,"lte":178}' \
--preferred-income-filter '{"gte":200000}' \
--preferred-city-filter '{"eq":"Hangzhou"}' \
--preferred-nationality-filter '{"eq":"China"}' \
--preferred-education-filter '{"contains":"Bachelor"}' \
--preferred-occupation-filter '{"contains":"Product"}' \
--preferred-education-stage "Bachelor or above" \
--preferred-occupation-keyword "Product Manager" \
--preferred-hobby-text "reading, travel" \
--preferred-character-text "kind, positive" \
--preferred-ability-text "strong communication" \
--intention "long-term relationship" \
--hobby-embedding-min-score 0.72 \
--character-embedding-min-score 0.70 \
--ability-embedding-min-score 0.68 \
--intention-embedding-min-score 0.70 \
--preferred-contact-channel telegram
```
If any `--*-embedding-min-score` is omitted in `task create`, backend defaults it to `0.1`.
6. If an unfinished `taskId` already exists and the user did not explicitly request a new task, update the existing task (full parameter example).
```bash
dating-cli task update 12345 \
--task-name "Update criteria - Hangzhou/Shanghai" \
--preferred-gender-filter '{"eq":"female"}' \
--preferred-height-filter '{"gte":163,"lte":180}' \
--preferred-income-filter '{"gte":250000}' \
--preferred-city-filter '{"in":["Hangzhou","Shanghai"]}' \
--preferred-hobby-text "reading, travel, sports" \
--preferred-character-text "independent, optimistic" \
--preferred-ability-text "communication and collaboration" \
--intention "serious relationship with marriage plan" \
--hobby-embedding-min-score 0.70 \
--character-embedding-min-score 0.70 \
--ability-embedding-min-score 0.65 \
--intention-embedding-min-score 0.68 \
--preferred-contact-channel wechat
```
7. Query task status (full parameter example).
```bash
dating-cli task get 12345
```
8. Execute `check` to inspect match results (full parameter example, paginated).
```bash
dating-cli check 12345 --page 1
```
Each page returns 10 candidates. Use `--page` to fetch subsequent pages when needed.
`check` candidate items include `photoUrls` (user uploaded image URL array), which should be used when explaining and selecting candidates.
If the result is `NO_RESULT_RETRY_NOW`, call `check` again as needed.
If the result is `MATCH_FOUND`, continue to contact reveal.
Suggest users register email via `dating-cli profile update --email ...` so they can receive periodic match-growth reminders.
9. Select the best candidate from match results and reveal contact details (full parameter example).
```bash
dating-cli reveal-contact 67890
```
10. Submit review when needed (full parameter example).
```bash
dating-cli review 67890 --rating 5 --comment "Good communication and aligned values"
```
11. Optional commands (full parameter examples).
```bash
dating-cli task stop 12345
dating-cli logout
```
## Reference
For detailed field-level behavior, validation rules, and response structures:
- `references/dating-cli-operations.md`