agentdex-cli 0.3.1 → 0.3.2

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/cli.js CHANGED
@@ -227,6 +227,7 @@ program
227
227
  }
228
228
  console.log(chalk.gray(' Next: Claim a NIP-05 name to get verified (first 100 free, then 5000 sats).'));
229
229
  }
230
+ process.exit(0);
230
231
  }
231
232
  catch (err) {
232
233
  const apiErr = err;
package/dist/nostr.d.ts CHANGED
@@ -53,7 +53,7 @@ export declare function createProfileEvent(sk: Uint8Array, profile: AgentProfile
53
53
  /**
54
54
  * Publish an event to Nostr relays
55
55
  */
56
- export declare function publishToRelays(event: object, relays?: string[]): Promise<string[]>;
56
+ export declare function publishToRelays(event: object, relays?: string[], timeoutMs?: number): Promise<string[]>;
57
57
  /**
58
58
  * Fetch existing kind 0, merge new fields, and republish.
59
59
  * Used to set lud16 (lightning address) during registration.
package/dist/nostr.js CHANGED
@@ -125,12 +125,15 @@ export function createProfileEvent(sk, profile) {
125
125
  /**
126
126
  * Publish an event to Nostr relays
127
127
  */
128
- export async function publishToRelays(event, relays = DEFAULT_RELAYS) {
128
+ export async function publishToRelays(event, relays = DEFAULT_RELAYS, timeoutMs = 10000) {
129
129
  const pool = new SimplePool();
130
130
  const published = [];
131
131
  try {
132
132
  const results = await Promise.allSettled(relays.map(async (relay) => {
133
- await pool.publish([relay], event);
133
+ await Promise.race([
134
+ pool.publish([relay], event),
135
+ new Promise((_, reject) => setTimeout(() => reject(new Error('timeout')), timeoutMs)),
136
+ ]);
134
137
  return relay;
135
138
  }));
136
139
  for (const result of results) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentdex-cli",
3
- "version": "0.3.1",
3
+ "version": "0.3.2",
4
4
  "description": "CLI and SDK for the agentdex AI agent directory",
5
5
  "type": "module",
6
6
  "bin": {
package/src/cli.ts CHANGED
@@ -248,6 +248,7 @@ program
248
248
 
249
249
  console.log(chalk.gray(' Next: Claim a NIP-05 name to get verified (first 100 free, then 5000 sats).'));
250
250
  }
251
+ process.exit(0);
251
252
  } catch (err) {
252
253
  const apiErr = err as any;
253
254
  if (apiErr.status === 503) {
package/src/nostr.ts CHANGED
@@ -149,14 +149,17 @@ export function createProfileEvent(sk: Uint8Array, profile: AgentProfile) {
149
149
  /**
150
150
  * Publish an event to Nostr relays
151
151
  */
152
- export async function publishToRelays(event: object, relays: string[] = DEFAULT_RELAYS): Promise<string[]> {
152
+ export async function publishToRelays(event: object, relays: string[] = DEFAULT_RELAYS, timeoutMs = 10000): Promise<string[]> {
153
153
  const pool = new SimplePool();
154
154
  const published: string[] = [];
155
155
 
156
156
  try {
157
157
  const results = await Promise.allSettled(
158
158
  relays.map(async (relay) => {
159
- await pool.publish([relay], event as any);
159
+ await Promise.race([
160
+ pool.publish([relay], event as any),
161
+ new Promise((_, reject) => setTimeout(() => reject(new Error('timeout')), timeoutMs)),
162
+ ]);
160
163
  return relay;
161
164
  })
162
165
  );