Token导航 LogoToken导航TokenDH.com
研究检索需要联网clawhub未标认证来源可访问clear审计提醒

ai-dating艾约会

Agent Skill

ai-dating 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

17,792

周安装

734

GitHub Stars

公开资料未说明

下载量

5,813
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:ai-dating(艾约会)
来源仓库:https://github.com/1asdwz/ai-dating
安装命令:
openclaw skills install ai-dating
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install ai-dating

简介

通过 curl 调用 HTTP API 实现约会与匹配流程。

  • 适用于交友、相亲或伴侣寻找等场景。ai-dating 属于研究检索类 Skill,可作为该场景下的辅助能力补充。
  • 需用户提供有效 API 端点与认证信息。
  • 安装命令:openclaw skills install ai-dating。
  • 建议核实服务条款与隐私政策合规性。

SKILL.md

name
ai-dating
description
Direct dating and matchmaking workflow via curl against the dating HTTP API. Use when users ask to make friends, find a partner, date, run matchmaking, xiangqin, update a dating profile, upload profile photos, create or update a match task, check candidates, reveal contact details, or submit reviews.
license
MIT
metadata
author
1asdwz
version
1.3.2

Ai Dating

This skill supports dating and matchmaking workflows through curl against the dating HTTP API. 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, city, personality, hobbies) and asks for matching.

Language Alignment Rule

When constructing curl request bodies, prefer the same language as the user for updateProfile, createTask, and updateTask, especially for all free-text fields and labels (for example taskName, characterText, hobbyText, abilityText, intention, preferred*Text, and comment).

  • Do not translate user-provided content unless the user explicitly requests translation.
  • Keep language style consistent across one request payload. If the user speaks Chinese, prefer Chinese text values in JSON fields.
  • Keep gender and preferredContactChannel as the backend's fixed English values. Do not translate them into Chinese or other languages.

Update Commands

When users ask to update this skill, run:

npx skills add 1asdwz/ai-dating
Note: This skill uses direct curl requests. Do not invoke dating-cli.

External Service And Requirements

  • This skill sends user data to an external dating backend over the network.
  • The default backend in this repository is https://api.aidating.top unless AIDATING_BASE_URL is set to another value.
  • Review the endpoint owner, privacy policy, retention policy, and organizational approval before installing or using this skill.
  • Require outbound network access, curl, and preferably jq for response parsing.
  • Do not use this skill in environments that forbid sending personal data, photos, profile traits, or contact information to third-party services.

Privacy And Consent Rules

  • Tell the user which external base URL will receive their data before the first write request if that is not already obvious from context.
  • Obtain explicit user consent before sending profile details, photos, location, contact handles, or other sensitive personal data to the external backend.
  • Prefer data minimization. Only send fields the user has provided and that are necessary for the current action.
  • Do not require contact fields on first use. Treat phone numbers, email addresses, social handles, exact location, and uploaded photos as especially sensitive.
  • Do not upload photos or reveal contact details automatically. Perform those actions only after the user explicitly asks or clearly consents.
  • Do not send highly sensitive documents or identifiers such as government IDs, banking details, passwords, private chat logs, or unrelated secrets.
  • If the user only asks for advice, brainstorming, or preference drafting, help locally first and avoid network calls until the user asks to execute the workflow.

Standard Execution Flow (AI Agent)

  1. Check skill and curl availability.

Then verify:

curl --version

If the user or environment provides a base URL, use it. Otherwise, in this repository default to:

BASE_URL="${AIDATING_BASE_URL%/}"
if [ -z "$BASE_URL" ]; then
  BASE_URL="https://api.aidating.top"
fi
  1. Prepare local request context (full examples).
BODY_PATH="$(pwd)/.tmp_dating_body.json"
AUTH=""
TASK_ID=""
MATCH_ID=""
  1. Register or login (full parameter examples).

Before register or login, confirm the user wants to use the external dating backend and understands that account data will be stored there.

cat > "$BODY_PATH" <<'JSON'
{"username":"amy_2026"}
JSON

REGISTER_RESP=$(curl -sS -X POST "$BASE_URL/register" \
  -H "Content-Type: application/json" \
  --data-binary @"$BODY_PATH")
cat > "$BODY_PATH" <<'JSON'
{"username":"amy_2026","password":"123456"}
JSON

LOGIN_RESP=$(curl -sS -X POST "$BASE_URL/login" \
  -H "Content-Type: application/json" \
  --data-binary @"$BODY_PATH")

AUTH=$(printf '%s' "$LOGIN_RESP" | jq -r '.data.tokenHead + .data.token')
Note: Build the Authorization header as <tokenHead><token> exactly as returned. In this codebase tokenHead already includes the trailing space (Bearer ).
  1. Parse user self-description and update profile (full parameter example).

For updateProfile, prefer the user's language for descriptive text fields. Keep gender in the backend's fixed English vocabulary. Before updateProfile, send only the fields required for the current task and confirm before including photos, exact location, or contact handles.

UPLOAD1_RESP=$(curl -sS -X POST "$BASE_URL/minio/upload" \
  -H "Authorization: $AUTH" \
  -F "file=@./photos/amy-1.jpg")

UPLOAD2_RESP=$(curl -sS -X POST "$BASE_URL/minio/upload" \
  -H "Authorization: $AUTH" \
  -F "file=@./photos/amy-2.jpg")

UPLOAD1_URL=$(printf '%s' "$UPLOAD1_RESP" | jq -r '.data.url')
UPLOAD2_URL=$(printf '%s' "$UPLOAD2_RESP" | jq -r '.data.url')
cat > "$BODY_PATH" <<JSON
{
  "gender": "male",
  "birthday": "1998-08-08",
  "heightCm": 180,
  "weightKg": 72,
  "characterText": "sincere, steady, humorous",
  "hobbyText": "badminton, travel, photography",
  "abilityText": "cooking, communication, English",
  "major": "Computer Science",
  "nationality": "China",
  "country": "China",
  "province": "Zhejiang",
  "city": "Hangzhou",
  "addressDetail": "Xihu District",
  "email": "amy@example.com",
  "phone": "13800000000",
  "telegram": "amy_tg",
  "wechat": "amy_wechat",
  "whatsapp": "amy_wa",
  "signalChat": "amy_signal",
  "line": "amy_line",
  "snapchat": "amy_snap",
  "instagram": "amy_ins",
  "facebook": "amy_fb",
  "otherContacts": {
    "xiaohongshu": "amy_xhs",
    "discord": "amy#1234"
  },
  "photoUrls": ["$UPLOAD1_URL", "$UPLOAD2_URL"]
}
JSON

curl -sS -X PUT "$BASE_URL/member-profile" \
  -H "Authorization: $AUTH" \
  -H "Content-Type: application/json" \
  --data-binary @"$BODY_PATH"
Note: The parameters for profile update, task create, and task update are optional. For the sake of user experience, do not force users to enter personal information on first use.
  1. To receive matching success notifications promptly, strongly recommend registering an email address through the profile update payload.
  1. 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.

For createTask, prefer the user's language for taskName and all descriptive criteria text fields. Keep preferredContactChannel in the backend's fixed English vocabulary. Before createTask, confirm that the user wants to submit these matching criteria to the external backend.

cat > "$BODY_PATH" <<'JSON'
{
  "taskName": "Find partner in Hangzhou",
  "criteria": {
    "preferredGenderFilter": { "eq": "female" },
    "preferredHeightFilter": { "gte": 165, "lte": 178 },
    "preferredCityFilter": { "eq": "Hangzhou" },
    "preferredNationalityFilter": { "eq": "China" },
    "preferredEducationFilter": { "contains": "Bachelor" },
    "preferredOccupationFilter": { "contains": "Product" },
    "preferredEducationStage": "Bachelor or above",
    "preferredOccupationKeyword": "Product Manager",
    "preferredHobbyText": "reading, travel",
    "preferredCharacterText": "kind, positive",
    "preferredAbilityText": "strong communication",
    "intention": "long-term relationship",
    "preferredContactChannel": "telegram"
  }
}
JSON

TASK_RESP=$(curl -sS -X POST "$BASE_URL/match-tasks" \
  -H "Authorization: $AUTH" \
  -H "Content-Type: application/json" \
  --data-binary @"$BODY_PATH")

TASK_ID=$(printf '%s' "$TASK_RESP" | jq -r '.data.taskId')

*EmbeddingMinScore means the minimum semantic similarity threshold for embedding matching. Default recommendation is to leave it unset. When omitted in task creation, the backend defaults semantic text thresholds to 0.0 where applicable.

Write API response note: task create returns the created task payload, including taskId and taskName.
  1. If an unfinished taskId already exists and the user did not explicitly request a new task, update the existing task (full parameter example).

For updateTask, prefer the user's language for taskName and all descriptive criteria text fields. Keep preferredContactChannel in the backend's fixed English vocabulary. Before updateTask, confirm that the user wants to overwrite the remote task criteria with the new values.

cat > "$BODY_PATH" <<'JSON'
{
  "taskName": "Update criteria - Hangzhou/Shanghai",
  "criteria": {
    "preferredGenderFilter": { "eq": "female" },
    "preferredHeightFilter": { "gte": 163, "lte": 180 },
    "preferredCityFilter": { "in": ["Hangzhou", "Shanghai"] },
    "preferredHobbyText": "reading, travel, sports",
    "preferredCharacterText": "independent, optimistic",
    "preferredAbilityText": "communication and collaboration",
    "intention": "serious relationship with marriage plan",
    "preferredContactChannel": "wechat"
  }
}
JSON

curl -sS -X POST "$BASE_URL/match-tasks/$TASK_ID/update" \
  -H "Authorization: $AUTH" \
  -H "Content-Type: application/json" \
  --data-binary @"$BODY_PATH"
Note: Keep taskId from the create response. The public API does not expose a list endpoint for recovering an unknown active task.
  1. Query task status (full parameter example).
curl -sS "$BASE_URL/match-tasks/$TASK_ID" \
  -H "Authorization: $AUTH"
  1. Execute check to inspect match results (full parameter example, paginated).
CHECK_RESP=$(curl -sS "$BASE_URL/match-tasks/$TASK_ID/check?page=1" \
  -H "Authorization: $AUTH")

Each page returns 10 candidates. Use the page query parameter 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.

Note: Candidates' photos should be shown to users first. You should automatically select candidates that better meet the user's requirements, reducing the user's information burden.
  1. Select the best candidate from match results and reveal contact details (full parameter example).

Only call reveal-contact after the user explicitly chooses that candidate and agrees to retrieve contact information from the external backend.

MATCH_ID="<selected matchId from check response>"

REVEAL_RESP=$(curl -sS -X POST "$BASE_URL/match-results/$MATCH_ID/reveal-contact" \
  -H "Authorization: $AUTH")
  1. Submit review when needed (full parameter example).
cat > "$BODY_PATH" <<'JSON'
{
  "rating": 5,
  "comment": "Good communication and aligned values"
}
JSON

curl -sS -X POST "$BASE_URL/match-results/$MATCH_ID/reviews" \
  -H "Authorization: $AUTH" \
  -H "Content-Type: application/json" \
  --data-binary @"$BODY_PATH"
  1. Optional commands (full parameter examples).
curl -sS -X POST "$BASE_URL/match-tasks/$TASK_ID/stop" \
  -H "Authorization: $AUTH"

curl -sS -X POST "$BASE_URL/logout" \
  -H "Authorization: $AUTH"

Reference

For detailed field-level behavior, validation rules, and response structures:

  • references/curl-api-operations.md

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

96.98%
按下载量换算5,637

安全审计

VirusTotal

可疑

ClawScan

可疑

Static analysis

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills