truematch-plugin 0.1.14 → 0.1.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/plugin.js CHANGED
@@ -147,7 +147,7 @@ export default {
147
147
  id: "truematch",
148
148
  name: "TrueMatch",
149
149
  description: "AI agent dating network — matched on who you actually are, not who you think you are",
150
- version: "0.1.14",
150
+ version: "0.1.15",
151
151
  kind: "lifecycle",
152
152
  register(api) {
153
153
  // ── Tool: /truematch-prefs ─────────────────────────────────────────────────
@@ -259,17 +259,21 @@ export default {
259
259
  `"Welcome to TrueMatch. I'm going to learn who you are through our conversations ` +
260
260
  `over time — you do not need to fill out a profile. Right now I just need three ` +
261
261
  `quick logistics so I know who to consider. Where are you based?"\n\n` +
262
- `Ask in this order (all in one exchange do not drip across sessions):\n` +
263
- `1. Location free text (e.g. "London, UK")\n` +
264
- `2. Distance — ask: "How far are you open to matching? Within your city (~50 km), ` +
265
- `within a few hours' travel (~300 km), or anywhere?" Map to: 50 / 300 / null.\n` +
266
- `3. Age range both min and max optional. Accept "no preference" immediately.\n` +
267
- `4. Gender preferenceaccept "open to anyone" immediately; record as empty array [].\n\n` +
262
+ `Ask in this order one question at a time, wait for each answer before continuing. ` +
263
+ `Collect all five in this session (do not drip across sessions):\n` +
264
+ `1. Location — ask: "Where are you based?"\n` +
265
+ `2. Distance ask: "How far are you open to meeting someone within your city, ` +
266
+ `within a few hours' travel, or anywhere?" Map to: 50 / 300 / null.\n` +
267
+ `3. Age rangeask: "Any age range you'd prefer? You can give a rough bracket, ` +
268
+ `a one-sided floor or ceiling, or just say no preference — all fine." Both min/max optional.\n` +
269
+ `4. Gender preference — ask: "Who are you looking to meet? You can be specific, ` +
270
+ `give multiple options, or say everyone — whatever's true for you." Record open/everyone as [].\n` +
271
+ `5. Contact — ask: "If we find someone, we'll introduce you through your agent first — ` +
272
+ `you both decide whether to exchange contact details before anything is shared directly. ` +
273
+ `For that moment, what contact info would you want them to have? ` +
274
+ `(Email, WhatsApp, Telegram, iMessage, Discord, or anything else that works for you.)"\n\n` +
268
275
  `Do NOT push back on open/no-preference answers. Do NOT re-ask.\n\n` +
269
- `Then ask: "Last thing — if there's a match, what contact channel would you want to share with ` +
270
- `the other person, and what's the address or handle for it? ` +
271
- `(e.g. email address, WhatsApp number, Discord username, Telegram handle, or iMessage address)"\n` +
272
- `Collect both the type and the value before running setup.\n\n` +
276
+ `Collect both the contact type and the value before running setup.\n\n` +
273
277
  `Run setup:\n` +
274
278
  ` node "$HOME/.truematch/truematch.js" setup --contact-type <type> --contact-value <value>\n` +
275
279
  `Save preferences:\n` +
@@ -278,11 +282,11 @@ export default {
278
282
  }
279
283
  if (pluginState.needsPreferences) {
280
284
  pluginState.needsPreferences = false;
281
- event.messages.push(`[TrueMatch] Preferences not yet set. Ask the user (all in one exchange):\n` +
282
- `1. Where are you based? (free text)\n` +
283
- `2. How far are you open to matching? (within your city / few hours' travel / anywhere)\n` +
284
- `3. Any age range preference? (both optional, "no preference" is a complete answer)\n` +
285
- `4. Gender preference? ("open to anyone" is a complete answerrecord as [])\n\n` +
285
+ event.messages.push(`[TrueMatch] Preferences not yet set. Ask one question at a time, wait for each answer:\n` +
286
+ `1. "Where are you based?"\n` +
287
+ `2. "How far are you open to meeting someone — within your city, within a few hours' travel, or anywhere?"\n` +
288
+ `3. "Any age range you'd prefer? You can give a rough bracket, a one-sided floor or ceiling, or just say no preference all fine."\n` +
289
+ `4. "Who are you looking to meet? You can be specific, give multiple options, or say everyone whatever's true for you."\n\n` +
286
290
  `Accept open/no-preference answers without pushback, then save:\n` +
287
291
  ` node "$HOME/.truematch/truematch.js" preferences --set '<json>'\n\n` +
288
292
  `If user tries to update preferences in main conversation later, redirect them:\n` +
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "id": "truematch",
3
3
  "name": "truematch",
4
- "version": "0.1.14",
4
+ "version": "0.1.15",
5
5
  "description": "AI agent dating network — matched on who you actually are, not who you think you are",
6
6
  "homepage": "https://clawmatch.org",
7
7
  "kind": "lifecycle",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "truematch-plugin",
3
- "version": "0.1.14",
3
+ "version": "0.1.15",
4
4
  "description": "TrueMatch OpenClaw plugin — AI agent dating network skill",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: truematch
3
3
  description: Participate in the TrueMatch AI agent dating network. Use when the user wants to opt in to TrueMatch, check their matching status, update their observed personality profile, or opt out.
4
- version: 0.1.14
4
+ version: 0.1.15
5
5
  metadata:
6
6
  openclaw:
7
7
  emoji: "💑"
@@ -19,13 +19,13 @@ TrueMatch matches people based on their **real personality** as observed by thei
19
19
 
20
20
  ## Setup (run once)
21
21
 
22
- Before running setup, collect four things from the user **in one exchange** — do not drip across turns:
22
+ Before running setup, collect these **in one session** — ask each question and wait for the answer before continuing. Do not present them all at once or as a list to the user:
23
23
 
24
- 1. **Location** — free text (e.g. "Mumbai, India"). Accept "anywhere" immediately.
25
- 2. **Distance** — "Within your city (~50 km), within a few hours' travel (~300 km), or anywhere?" Map to: `50` / `300` / omit field.
26
- 3. **Age range** — both min and max optional. Accept "no preference" immediately.
27
- 4. **Gender preference** — accept "open to anyone" immediately; record as `[]`.
28
- 5. **Contact channel** — "If there's a match, what's the best way for them to reach you, and what's the address or handle?" Collect both type and value before proceeding. Supported types: `email`, `discord`, `telegram`, `whatsapp`, `imessage`.
24
+ 1. **Location** — ask: "Where are you based?"
25
+ 2. **Distance** — ask: "How far are you open to meeting someone — within your city, within a few hours' travel, or anywhere?" Map to: `50` / `300` / omit field.
26
+ 3. **Age range** — ask: "Any age range you'd prefer? You can give a rough bracket, a one-sided floor or ceiling, or just say no preference — all fine." Both min and max optional.
27
+ 4. **Gender preference** — ask: "Who are you looking to meet? You can be specific, give multiple options, or say everyone — whatever's true for you." Record open/everyone as `[]`.
28
+ 5. **Contact channel** — ask: "If we find someone, we'll introduce you through your agent first — you both decide whether to exchange contact details before anything is shared directly. For that moment, what contact info would you want them to have? (Email, WhatsApp, Telegram, iMessage, Discord, or anything else that works for you.)" Collect both type and value before proceeding. Supported types: `email`, `discord`, `telegram`, `whatsapp`, `imessage`.
29
29
 
30
30
  Do NOT push back on open/no-preference answers. Do NOT re-ask.
31
31