terminalhire 0.10.2 → 0.10.3

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.
@@ -9685,7 +9685,7 @@ function renderConsentCard2(payload, deps) {
9685
9685
  }
9686
9686
  async function runIntroRequest(args5, overrides) {
9687
9687
  const deps = { ...defaultIntroDeps(), ...overrides };
9688
- const targetLogin = args5.targetLogin?.trim();
9688
+ const targetLogin = args5.targetLogin?.trim().replace(/^@/, "");
9689
9689
  if (!targetLogin) {
9690
9690
  deps.errorLog('\n Usage: terminalhire intro <github-login> [--note "..."] [--contact <email>] [--name "..."]\n');
9691
9691
  deps.exit(1);
@@ -9704,13 +9704,8 @@ async function runIntroRequest(args5, overrides) {
9704
9704
  }
9705
9705
  const profile = await deps.readProfileContact();
9706
9706
  const displayName = (args5.name ?? profile.displayName ?? requesterLogin).trim();
9707
- const contact = (args5.contact ?? profile.contactEmail ?? "").trim();
9708
- if (!contact) {
9709
- deps.errorLog("\n No contact on file. Set one with `terminalhire profile --edit`,");
9710
- deps.errorLog(" or pass `--contact <email-or-handle>`. Nothing was sent.\n");
9711
- deps.exit(1);
9712
- return;
9713
- }
9707
+ const explicitContact = (args5.contact ?? profile.contactEmail ?? "").trim();
9708
+ const contact = explicitContact || `@${requesterLogin}`;
9714
9709
  const payload = buildIntroPayload({
9715
9710
  requesterLogin,
9716
9711
  requesterDisplayName: displayName,
@@ -11275,6 +11270,7 @@ async function run10() {
11275
11270
  console.log("\n terminalhire connect \u2014 find and reach other developers, locally matched:");
11276
11271
  console.log(" terminalhire devs Rank opted-in builders & projects for you");
11277
11272
  console.log(' terminalhire project "<title>: <skills>" Declare a project to staff');
11273
+ console.log(" terminalhire connect <github-login> Request a consented intro (alias for `intro`)");
11278
11274
  console.log(" terminalhire intro <github-login> Request a consented intro (double opt-in)");
11279
11275
  console.log(" terminalhire intro --list See intros you have sent + received");
11280
11276
  console.log(" terminalhire chat Message your accepted connections");
@@ -13348,6 +13344,7 @@ if (!firstArg || firstArg === "help" || firstArg === "--help" || firstArg === "-
13348
13344
  console.log(" terminalhire chat <github-login> --read Read a thread inline (last 8; -n N / --all for depth)");
13349
13345
  console.log(' terminalhire chat <github-login> --send "\u2026" Send one line to a connection (E2E encrypted)');
13350
13346
  console.log(" terminalhire chat <github-login> Open the live E2E chat pane with an accepted connection");
13347
+ console.log(" terminalhire connect <github-login> Request a consented intro (alias for `intro`)");
13351
13348
  console.log(" terminalhire connect Connect family overview + inbound-nudge state");
13352
13349
  console.log(" terminalhire connect --mute Stop surfacing incoming connection requests in the spinner");
13353
13350
  console.log(" terminalhire connect --unmute Resume surfacing incoming connection requests");
@@ -13451,6 +13448,14 @@ if (firstArg === "chat") {
13451
13448
  process.exit(0);
13452
13449
  }
13453
13450
  if (firstArg === "connect") {
13451
+ const sub = process.argv[3];
13452
+ const isConnectOwn = !sub || sub === "--mute" || sub === "--unmute";
13453
+ if (!isConnectOwn) {
13454
+ process.argv.splice(2, 1);
13455
+ const mod3 = await Promise.resolve().then(() => (init_jpi_intro(), jpi_intro_exports));
13456
+ await mod3.run();
13457
+ process.exit(0);
13458
+ }
13454
13459
  const mod2 = await Promise.resolve().then(() => (init_jpi_connect(), jpi_connect_exports));
13455
13460
  await mod2.run();
13456
13461
  process.exit(0);
@@ -1159,7 +1159,7 @@ function renderConsentCard(payload, deps) {
1159
1159
  }
1160
1160
  async function runIntroRequest(args, overrides) {
1161
1161
  const deps = { ...defaultIntroDeps(), ...overrides };
1162
- const targetLogin = args.targetLogin?.trim();
1162
+ const targetLogin = args.targetLogin?.trim().replace(/^@/, "");
1163
1163
  if (!targetLogin) {
1164
1164
  deps.errorLog('\n Usage: terminalhire intro <github-login> [--note "..."] [--contact <email>] [--name "..."]\n');
1165
1165
  deps.exit(1);
@@ -1178,13 +1178,8 @@ async function runIntroRequest(args, overrides) {
1178
1178
  }
1179
1179
  const profile = await deps.readProfileContact();
1180
1180
  const displayName = (args.name ?? profile.displayName ?? requesterLogin).trim();
1181
- const contact = (args.contact ?? profile.contactEmail ?? "").trim();
1182
- if (!contact) {
1183
- deps.errorLog("\n No contact on file. Set one with `terminalhire profile --edit`,");
1184
- deps.errorLog(" or pass `--contact <email-or-handle>`. Nothing was sent.\n");
1185
- deps.exit(1);
1186
- return;
1187
- }
1181
+ const explicitContact = (args.contact ?? profile.contactEmail ?? "").trim();
1182
+ const contact = explicitContact || `@${requesterLogin}`;
1188
1183
  const payload = buildIntroPayload({
1189
1184
  requesterLogin,
1190
1185
  requesterDisplayName: displayName,
package/dist/src/intro.js CHANGED
@@ -1152,7 +1152,7 @@ function renderConsentCard(payload, deps) {
1152
1152
  }
1153
1153
  async function runIntroRequest(args, overrides) {
1154
1154
  const deps = { ...defaultIntroDeps(), ...overrides };
1155
- const targetLogin = args.targetLogin?.trim();
1155
+ const targetLogin = args.targetLogin?.trim().replace(/^@/, "");
1156
1156
  if (!targetLogin) {
1157
1157
  deps.errorLog('\n Usage: terminalhire intro <github-login> [--note "..."] [--contact <email>] [--name "..."]\n');
1158
1158
  deps.exit(1);
@@ -1171,13 +1171,8 @@ async function runIntroRequest(args, overrides) {
1171
1171
  }
1172
1172
  const profile = await deps.readProfileContact();
1173
1173
  const displayName = (args.name ?? profile.displayName ?? requesterLogin).trim();
1174
- const contact = (args.contact ?? profile.contactEmail ?? "").trim();
1175
- if (!contact) {
1176
- deps.errorLog("\n No contact on file. Set one with `terminalhire profile --edit`,");
1177
- deps.errorLog(" or pass `--contact <email-or-handle>`. Nothing was sent.\n");
1178
- deps.exit(1);
1179
- return;
1180
- }
1174
+ const explicitContact = (args.contact ?? profile.contactEmail ?? "").trim();
1175
+ const contact = explicitContact || `@${requesterLogin}`;
1181
1176
  const payload = buildIntroPayload({
1182
1177
  requesterLogin,
1183
1178
  requesterDisplayName: displayName,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "terminalhire",
3
- "version": "0.10.2",
3
+ "version": "0.10.3",
4
4
  "description": "Local-first job matching for developers — ambient job matches in the Claude Code spinner. Matching runs on your machine; your profile never leaves it.",
5
5
  "repository": {
6
6
  "type": "git",