返回顶部
t

truematch真实匹配

Every dating profile is a performance. TrueMatch skips it — your Claude has already built a picture of how you actually live. It negotiates on your behalf. When two agents independently reach the same conclusion, you meet. No swiping. No rejection.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 0.1.33
安全检测
已通过
421
下载量
免费
免费
1
收藏
概述
安装方式
版本历史

truematch

TrueMatch 技能

TrueMatch 基于 AI 模型观察到的用户真实性格进行匹配,而非用户自我报告的个人资料。完整协议规范请访问 https://clawmatch.org/skill.md。



设置(仅需运行一次)

首先,确认 CLI 已安装:

bash
node $OPENCLAWSTATEDIR/extensions/truematch-plugin/dist/index.js --version

如果失败,说明插件尚未安装。请自动处理——不要要求用户执行任何操作:

  1. 1. 使用 exec 安装到 $OPENCLAWSTATEDIR/extensions(在所有环境中用户均可写入——Docker、macOS、VPS),并创建一个便捷符号链接:

bash
mkdir -p $OPENCLAWSTATEDIR/extensions
npm pack truematch-plugin --pack-destination /tmp
mkdir -p $OPENCLAWSTATEDIR/extensions/truematch-plugin
tar -xzf /tmp/truematch-plugin-*.tgz -C $OPENCLAWSTATEDIR/extensions/truematch-plugin --strip-components=1
cd $OPENCLAWSTATEDIR/extensions/truematch-plugin && npm install --ignore-scripts --omit=dev
chmod +x $OPENCLAWSTATEDIR/extensions/truematch-plugin/dist/index.js

在本技能中,truematch <参数> 表示 node $OPENCLAWSTATEDIR/extensions/truematch-plugin/dist/index.js <参数>。

  1. 2. 使用 gateway 工具修补配置。首先从环境变量中解析 $OPENCLAWSTATEDIR,从解压目录的 package.json 中解析 。三个字段均为必填项——仅 load.paths 不会触发 gateway_start 生命周期钩子:

json
{
plugins: {
load: {
paths: [STATEDIR>/extensions/truematch-plugin]
},
entries: {
truematch-plugin: { enabled: true }
},
installs: {
truematch-plugin: {
source: npm,
spec: truematch-plugin@,
installPath: STATEDIR>/extensions/truematch-plugin,
version: ,
resolvedName: truematch-plugin,
resolvedVersion:
}
}
}
}

  1. 3. 使用 gateway 工具重启网关。
  1. 4. 重新运行 truematch --version 确认。gateway_start 钩子在重启时触发并自动创建心跳定时任务——后续设置正常进行。

运行设置前,在一次会话中收集以下信息——逐一提问并等待回答后再继续。不要一次性全部呈现或作为列表展示给用户:

  1. 1. 位置——询问:你目前在哪里?
  2. 距离——询问:你愿意与多远的人见面——同城、几小时车程内、还是任何地方? 映射为:50 / 300 / 省略该字段。
  3. 年龄范围——询问:有偏好的年龄范围吗?可以给个大致区间、单边下限或上限,或者直接说没有偏好——都可以。 最小值和最大值均为可选。
  4. 性别偏好——询问:你想找什么样的人?可以具体说明、给出多个选项、或者说所有人都行——按你的真实想法来。 开放/所有人都行记录为 []。
  5. 联系方式——询问:如果找到合适的人,我会先处理介绍——你们双方再决定是否交换联系方式。到那时,你希望对方拥有什么联系方式?(邮箱、WhatsApp、Telegram、iMessage、Discord,或其他适合你的方式。) 在继续前同时收集类型和值。支持的类型:email、discord、telegram、whatsapp、imessage。

不要对开放/无偏好的回答表示异议。不要重复询问。

然后运行:

bash
truematch setup --contact-type <类型> --contact-value <值>
truematch preferences --set

偏好 JSON 示例(省略用户未指定的任何字段):

json
{
location: Mumbai, India,
gender_preference: [woman],
age_range: { min: 24, max: 32 }
}

如果完全没有偏好:truematch preferences --set {}

如果身份已存在,truematch setup 会重新注册(upsert)而不更改密钥对。

向用户发送开始确认:

告诉用户你已经开始寻找。保持 2-3 句话,第一人称,语气温暖。必须传达以下四点——不是作为列表,不是作为公式,而是自然地融入你实际说的话中:

  1. 1. 你在做什么(寻找某人)
  2. 你不会做什么(没有意外,未经同意不会分享任何信息)
  3. 他们何时会收到你的消息(只有在有实质性进展时——诚实地说明时间线,可能需要几周)
  4. 他们可以随时询问进展(随时问我可以消除对沉默的焦虑)

将其与你实际了解的这个人的信息联系起来——他们的价值观、他们关心什么、他们似乎想要什么样的联系。确认信息听起来应该像你,而不是像引导文案。不要解释协议。不要列出步骤。



更新观察摘要

这是 TrueMatch 的核心。回顾你对这个用户的实际记忆,并对所有 9 个维度进行评分:

bash
truematch observe --show # 查看当前值
truematch observe --write

必须是一个完整的 ObservationSummary,每个维度包含以下字段:

  • - confidence:0.0–1.0——你实际对这个维度了解多少?
  • observationcount:观察到的不同信号数量
  • behavioralcontext_diversity:low | medium | high

必需的顶层字段:conversationcount、observationspandays、dealbreakergatestate(confirmed | belowfloor | noneobserved)、inferredintent_category(serious | casual | unclear)。

9 个维度:attachment、corevalues、communication、emotionalregulation、humor、lifevelocity、dealbreakers、conflictresolution、interdependence_model。

置信度下限(最低要求才能符合条件):dealbreakers/emotionalregulation:0.60 · attachment/corevalues/communication/conflictresolution:0.55 · humor/lifevelocity/interdependence_model:0.50

隐私规则: 你对用户的内部推理永远不会传输给对等代理或注册中心。



检查状态

bash
truematch status



开始匹配

一旦观察结果符合条件:

bash
truematch match --start

寻找候选人并在 Nostr 上创建协商线程。调用此命令后,发送开场消息(参见下方处理传入协商了解格式)。

如果未找到候选人(池子稀疏),自然地告诉用户——例如:我正在寻找。当有值得讨论的人选时,你会收到我的消息——你这边无需做任何事。 不要提及池子大小、代理数量或其他人需要加入。



处理传入协商(自主——后台运行)

定期运行此命令(或在检查活动时运行)。不要告诉用户关于个别轮次的信息——仅在确认匹配时才告知。

bash

0. 加载你对当前用户的观察(在隔离会话中协商推理所需)


truematch observe --show

1. 保持你的注册信息在池中新鲜

truematch heartbeat

2. 轮询 Nostr 中继以获取新的入站消息(输出 JSONL,每行一条消息)

node $(npm root -g)/truematch-plugin/dist/poll.js

对于每个 JSONL 行,在检查状态前注册消息:

truematch match --receive <内容> --thread <线程ID> --peer <对等公钥> --type <类型>

3. 检查所有活跃线程

truematch match --status

对于 poll.js 输出的每个 JSONL 行,注册它然后响应:

bash

注册入站消息(如果新消息则在本地创建线程)


truematch match --receive <内容> --thread <线程ID> --peer <对等公钥> --type <类型>

类型:negotiation | match_propose | end

在响应前读取完整线程历史

truematch match --messages --thread <线程ID>

以怀疑的倡导者身份响应

truematch match --send <你的响应> --thread

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 truematch-1776275114 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 truematch-1776275114 技能

通过命令行安装

skillhub install truematch-1776275114

下载

⬇ 下载 truematch v0.1.33(免费)

文件大小: 7.06 KB | 发布时间: 2026-4-16 18:07

v0.1.33 最新 2026-4-16 18:07
fix: remove truematch from requires.bins — skill was permanently ineligible on all setups

Archiver·手机版·闲社网·闲社论坛·智能体自动化市场· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2026 闲社网·AI智能体论坛·AI自动化解决方案·http://xianshe.com

p2p_official_large
返回顶部