@relaycast/sdk 0.3.1 → 0.3.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.
Files changed (51) hide show
  1. package/dist/agent.d.ts +44 -20
  2. package/dist/agent.d.ts.map +1 -1
  3. package/dist/agent.js +92 -15
  4. package/dist/agent.js.map +1 -1
  5. package/dist/casing.d.ts +10 -0
  6. package/dist/casing.d.ts.map +1 -0
  7. package/dist/casing.js +42 -0
  8. package/dist/casing.js.map +1 -0
  9. package/dist/client.d.ts +32 -9
  10. package/dist/client.d.ts.map +1 -1
  11. package/dist/client.js +126 -27
  12. package/dist/client.js.map +1 -1
  13. package/dist/errors.d.ts +19 -0
  14. package/dist/errors.d.ts.map +1 -0
  15. package/dist/errors.js +58 -0
  16. package/dist/errors.js.map +1 -0
  17. package/dist/identity.d.ts +15 -0
  18. package/dist/identity.d.ts.map +1 -0
  19. package/dist/identity.js +23 -0
  20. package/dist/identity.js.map +1 -0
  21. package/dist/index.d.ts +7 -2
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +2 -1
  24. package/dist/index.js.map +1 -1
  25. package/dist/internal.d.ts +6 -0
  26. package/dist/internal.d.ts.map +1 -0
  27. package/dist/internal.js +10 -0
  28. package/dist/internal.js.map +1 -0
  29. package/dist/origin.d.ts +7 -0
  30. package/dist/origin.d.ts.map +1 -0
  31. package/dist/origin.js +7 -0
  32. package/dist/origin.js.map +1 -0
  33. package/dist/relay.d.ts +39 -17
  34. package/dist/relay.d.ts.map +1 -1
  35. package/dist/relay.js +115 -37
  36. package/dist/relay.js.map +1 -1
  37. package/dist/types.d.ts +92 -0
  38. package/dist/types.d.ts.map +1 -0
  39. package/dist/types.js +2 -0
  40. package/dist/types.js.map +1 -0
  41. package/dist/version.d.ts +1 -1
  42. package/dist/version.js +1 -1
  43. package/dist/ws.d.ts +19 -1
  44. package/dist/ws.d.ts.map +1 -1
  45. package/dist/ws.js +104 -7
  46. package/dist/ws.js.map +1 -1
  47. package/package.json +8 -4
  48. package/dist/billing.d.ts +0 -14
  49. package/dist/billing.d.ts.map +0 -1
  50. package/dist/billing.js +0 -28
  51. package/dist/billing.js.map +0 -1
package/dist/client.js CHANGED
@@ -1,19 +1,67 @@
1
1
  import { z } from 'zod';
2
2
  import { ApiErrorSchema } from '@relaycast/types';
3
3
  import { SDK_VERSION } from './version.js';
4
- export class RelayError extends Error {
5
- code;
6
- status;
7
- constructor(code, message, status) {
8
- super(message);
9
- this.name = 'RelayError';
10
- this.code = code;
11
- this.status = status;
12
- }
4
+ import { SDK_ORIGIN } from './origin.js';
5
+ import { camelizeKeys, decamelizeKey, decamelizeKeys } from './casing.js';
6
+ import { RelayError, relayErrorFromApi } from './errors.js';
7
+ const INTERNAL_ORIGIN = Symbol('relaycast.internal.origin');
8
+ function readInternalOrigin(options) {
9
+ return options[INTERNAL_ORIGIN];
10
+ }
11
+ export function withInternalOrigin(options, origin) {
12
+ const copy = { ...options };
13
+ Object.defineProperty(copy, INTERNAL_ORIGIN, {
14
+ value: origin,
15
+ enumerable: false,
16
+ writable: false,
17
+ configurable: false,
18
+ });
19
+ return copy;
13
20
  }
21
+ export { RelayError } from './errors.js';
14
22
  function sleep(ms) {
15
23
  return new Promise((resolve) => setTimeout(resolve, ms));
16
24
  }
25
+ const DEFAULT_RETRY_POLICY = {
26
+ maxRetries: 3,
27
+ backoffMs: 1000,
28
+ backoffMultiplier: 2,
29
+ jitter: true,
30
+ retryOn: [429, 500, 502, 503, 504],
31
+ };
32
+ function normalizeRetryPolicy(input) {
33
+ return {
34
+ maxRetries: Number.isFinite(input?.maxRetries) ? Math.max(0, Math.floor(input.maxRetries)) : DEFAULT_RETRY_POLICY.maxRetries,
35
+ backoffMs: Number.isFinite(input?.backoffMs) ? Math.max(0, Math.floor(input.backoffMs)) : DEFAULT_RETRY_POLICY.backoffMs,
36
+ backoffMultiplier: Number.isFinite(input?.backoffMultiplier)
37
+ ? Math.max(1, input.backoffMultiplier)
38
+ : DEFAULT_RETRY_POLICY.backoffMultiplier,
39
+ jitter: typeof input?.jitter === 'boolean' ? input.jitter : DEFAULT_RETRY_POLICY.jitter,
40
+ retryOn: Array.isArray(input?.retryOn)
41
+ ? input.retryOn.filter((status) => Number.isInteger(status) && status >= 100)
42
+ : [...DEFAULT_RETRY_POLICY.retryOn],
43
+ };
44
+ }
45
+ function computeBackoffMs(policy, retryAttempt) {
46
+ const exponential = policy.backoffMs * (policy.backoffMultiplier ** retryAttempt);
47
+ if (!policy.jitter)
48
+ return Math.max(0, Math.round(exponential));
49
+ const jitterFactor = 0.5 + Math.random();
50
+ return Math.max(0, Math.round(exponential * jitterFactor));
51
+ }
52
+ function parseRetryAfterMs(res) {
53
+ const header = res.headers.get('Retry-After');
54
+ if (!header)
55
+ return null;
56
+ const asSeconds = Number(header);
57
+ if (Number.isFinite(asSeconds)) {
58
+ return Math.max(0, Math.round(asSeconds * 1000));
59
+ }
60
+ const asDate = Date.parse(header);
61
+ if (Number.isNaN(asDate))
62
+ return null;
63
+ return Math.max(0, asDate - Date.now());
64
+ }
17
65
  const apiEnvelopeSchema = z.object({
18
66
  ok: z.boolean(),
19
67
  data: z.unknown().optional(),
@@ -29,9 +77,18 @@ const apiEnvelopeSchema = z.object({
29
77
  export class HttpClient {
30
78
  _apiKey;
31
79
  _baseUrl;
80
+ _originSurface;
81
+ _originClient;
82
+ _originVersion;
83
+ _retryPolicy;
32
84
  constructor(options) {
85
+ const origin = readInternalOrigin(options) ?? SDK_ORIGIN;
33
86
  this._apiKey = options.apiKey;
34
87
  this._baseUrl = options.baseUrl ?? 'https://api.relaycast.dev';
88
+ this._originSurface = origin.surface;
89
+ this._originClient = origin.client;
90
+ this._originVersion = origin.version;
91
+ this._retryPolicy = normalizeRetryPolicy(options.retryPolicy);
35
92
  }
36
93
  get apiKey() {
37
94
  return this._apiKey;
@@ -39,57 +96,99 @@ export class HttpClient {
39
96
  get baseUrl() {
40
97
  return this._baseUrl;
41
98
  }
99
+ get originSurface() {
100
+ return this._originSurface;
101
+ }
102
+ get originClient() {
103
+ return this._originClient;
104
+ }
105
+ get originVersion() {
106
+ return this._originVersion;
107
+ }
108
+ get retryPolicy() {
109
+ return this._retryPolicy;
110
+ }
111
+ withApiKey(apiKey) {
112
+ return new HttpClient(withInternalOrigin({ apiKey, baseUrl: this._baseUrl, retryPolicy: this._retryPolicy }, {
113
+ surface: this._originSurface,
114
+ client: this._originClient,
115
+ version: this._originVersion,
116
+ }));
117
+ }
42
118
  async request(method, path, body, query, options) {
43
119
  const url = new URL(path, this._baseUrl);
44
120
  if (query) {
45
121
  for (const [k, v] of Object.entries(query)) {
46
122
  if (v !== undefined)
47
- url.searchParams.set(k, v);
123
+ url.searchParams.set(decamelizeKey(k), v);
48
124
  }
49
125
  }
50
126
  const headers = {
51
127
  Authorization: `Bearer ${this._apiKey}`,
52
128
  'X-SDK-Version': SDK_VERSION,
129
+ 'X-Relaycast-Origin-Surface': this._originSurface,
130
+ 'X-Relaycast-Origin-Client': this._originClient,
131
+ 'X-Relaycast-Origin-Version': this._originVersion,
53
132
  ...(options?.headers || {}),
54
133
  };
55
134
  const hasBody = body !== undefined && method.toUpperCase() !== 'GET';
56
135
  if (hasBody)
57
136
  headers['Content-Type'] = 'application/json';
58
- const retryBackoffsMs = [200, 400, 800];
137
+ const wireBody = hasBody ? decamelizeKeys(body) : undefined;
59
138
  let attempt = 0;
60
139
  while (true) {
61
- const res = await fetch(url.toString(), {
62
- method,
63
- headers,
64
- body: hasBody ? JSON.stringify(body) : undefined,
65
- });
66
- // Retry on 5xx with exponential backoff.
67
- if (res.status >= 500 && res.status <= 599 && attempt < retryBackoffsMs.length) {
68
- const backoff = retryBackoffsMs[attempt];
140
+ let res;
141
+ try {
142
+ res = await fetch(url.toString(), {
143
+ method,
144
+ headers,
145
+ body: hasBody ? JSON.stringify(wireBody) : undefined,
146
+ });
147
+ }
148
+ catch (err) {
149
+ if (attempt < this._retryPolicy.maxRetries) {
150
+ const waitMs = computeBackoffMs(this._retryPolicy, attempt);
151
+ attempt += 1;
152
+ await sleep(waitMs);
153
+ continue;
154
+ }
155
+ throw new RelayError('transport_error', `Network request failed: ${err instanceof Error ? err.message : 'unknown error'}`, { retryable: true, cause: err });
156
+ }
157
+ if (this._retryPolicy.retryOn.includes(res.status) && attempt < this._retryPolicy.maxRetries) {
158
+ const waitMs = res.status === 429
159
+ ? parseRetryAfterMs(res) ?? computeBackoffMs(this._retryPolicy, attempt)
160
+ : computeBackoffMs(this._retryPolicy, attempt);
69
161
  attempt += 1;
70
- await sleep(backoff);
162
+ await sleep(waitMs);
71
163
  continue;
72
164
  }
73
165
  // 204 No Content — return undefined (used by DELETE endpoints)
74
166
  if (res.status === 204) {
75
167
  return undefined;
76
168
  }
77
- const json = await res.json();
169
+ let json;
170
+ try {
171
+ json = await res.json();
172
+ }
173
+ catch (err) {
174
+ throw new RelayError('transport_error', `Failed to parse response as JSON: ${err instanceof Error ? err.message : 'unknown error'}`, { statusCode: res.status, retryable: false, cause: err });
175
+ }
78
176
  const envelope = apiEnvelopeSchema.safeParse(json);
79
177
  if (!envelope.success) {
80
- throw new RelayError('invalid_response', 'Invalid API response', res.status);
178
+ throw new RelayError('transport_error', 'Invalid API response', {
179
+ statusCode: res.status,
180
+ retryable: false,
181
+ });
81
182
  }
82
183
  if (!envelope.data.ok) {
83
184
  const errParsed = ApiErrorSchema.safeParse(json);
84
185
  const code = errParsed.success ? errParsed.data.error.code : 'unknown_error';
85
186
  const message = errParsed.success ? errParsed.data.error.message : 'Unknown error';
86
- throw new RelayError(code, message, res.status);
187
+ throw relayErrorFromApi(code, message, res.status);
87
188
  }
88
189
  const data = envelope.data.data;
89
- if (options?.schema) {
90
- return options.schema.parse(data);
91
- }
92
- return data;
190
+ const parsedData = options?.schema ? options.schema.parse(data) : data;
191
+ return camelizeKeys(parsedData);
93
192
  }
94
193
  }
95
194
  get(path, query, options) {
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAY3C,MAAM,OAAO,UAAW,SAAQ,KAAK;IACnC,IAAI,CAAS;IACb,MAAM,CAAS;IAEf,YAAY,IAAY,EAAE,OAAe,EAAE,MAAc;QACvD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AAED,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjC,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE;IACf,IAAI,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC3B,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE;KACtB,CAAC,CAAC,QAAQ,EAAE;IACb,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;QACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;KACpB,CAAC,CAAC,QAAQ,EAAE;CACd,CAAC,CAAC;AAEH,MAAM,OAAO,UAAU;IACb,OAAO,CAAS;IAChB,QAAQ,CAAS;IAEzB,YAAY,OAAsB;QAChC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,IAAI,2BAA2B,CAAC;IACjE,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,OAAO,CACX,MAAc,EACd,IAAY,EACZ,IAAc,EACd,KAA8B,EAC9B,OAAwB;QAExB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzC,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3C,IAAI,CAAC,KAAK,SAAS;oBAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAA2B;YACtC,aAAa,EAAE,UAAU,IAAI,CAAC,OAAO,EAAE;YACvC,eAAe,EAAE,WAAW;YAC5B,GAAG,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;SAC5B,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC;QACrE,IAAI,OAAO;YAAE,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;QAE1D,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACxC,IAAI,OAAO,GAAG,CAAC,CAAC;QAEhB,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;gBACtC,MAAM;gBACN,OAAO;gBACP,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;aACjD,CAAC,CAAC;YAEH,yCAAyC;YACzC,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,IAAI,OAAO,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC;gBAC/E,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAE,CAAC;gBAC1C,OAAO,IAAI,CAAC,CAAC;gBACb,MAAM,KAAK,CAAC,OAAO,CAAC,CAAC;gBACrB,SAAS;YACX,CAAC;YAED,+DAA+D;YAC/D,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACvB,OAAO,SAAc,CAAC;YACxB,CAAC;YAED,MAAM,IAAI,GAAY,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAEnD,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,IAAI,UAAU,CAAC,kBAAkB,EAAE,sBAAsB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/E,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;gBACtB,MAAM,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBACjD,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC;gBAC7E,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;gBACnF,MAAM,IAAI,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;YAClD,CAAC;YAED,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;YAEhC,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;gBACpB,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAM,CAAC;YACzC,CAAC;YAED,OAAO,IAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,GAAG,CAAI,IAAY,EAAE,KAA8B,EAAE,OAAwB;QAC3E,OAAO,IAAI,CAAC,OAAO,CAAI,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,CAAI,IAAY,EAAE,IAAc,EAAE,OAAwB;QAC5D,OAAO,IAAI,CAAC,OAAO,CAAI,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACjE,CAAC;IAED,KAAK,CAAI,IAAY,EAAE,IAAc,EAAE,OAAwB;QAC7D,OAAO,IAAI,CAAC,OAAO,CAAI,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,GAAG,CAAI,IAAY,EAAE,IAAc,EAAE,OAAwB;QAC3D,OAAO,IAAI,CAAC,OAAO,CAAI,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAAY,EAAE,OAAwB;QACjD,MAAM,IAAI,CAAC,OAAO,CAAU,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAC7E,CAAC;CACF"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ export type RelayErrorCode = 'name_conflict' | 'not_found' | 'unauthorized' | 'workspace_mismatch' | 'transport_error';
2
+ export interface RelayErrorOptions {
3
+ statusCode?: number;
4
+ retryable?: boolean;
5
+ rawCode?: string;
6
+ cause?: unknown;
7
+ }
8
+ export declare function normalizeRelayErrorCode(rawCode: string | undefined, statusCode?: number): RelayErrorCode;
9
+ export declare function relayErrorRetryable(code: RelayErrorCode, statusCode?: number): boolean;
10
+ export declare class RelayError extends Error {
11
+ readonly code: RelayErrorCode;
12
+ readonly retryable: boolean;
13
+ readonly statusCode?: number;
14
+ readonly rawCode?: string;
15
+ readonly status: number;
16
+ constructor(code: RelayErrorCode, message: string, options?: RelayErrorOptions);
17
+ }
18
+ export declare function relayErrorFromApi(rawCode: string | undefined, message: string, statusCode?: number): RelayError;
19
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GACtB,eAAe,GACf,WAAW,GACX,cAAc,GACd,oBAAoB,GACpB,iBAAiB,CAAC;AAEtB,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAYD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,cAAc,CAmBxG;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAUtF;AAED,qBAAa,UAAW,SAAQ,KAAK;IACnC,QAAQ,CAAC,IAAI,EAAE,cAAc,CAAC;IAC9B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEZ,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB;CAYnF;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,OAAO,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,MAAM,GAClB,UAAU,CAGZ"}
package/dist/errors.js ADDED
@@ -0,0 +1,58 @@
1
+ const RAW_CODE_MAP = {
2
+ name_conflict: 'name_conflict',
3
+ agent_already_exists: 'name_conflict',
4
+ not_found: 'not_found',
5
+ agent_not_found: 'not_found',
6
+ unauthorized: 'unauthorized',
7
+ workspace_mismatch: 'workspace_mismatch',
8
+ workspace_not_found: 'workspace_mismatch',
9
+ };
10
+ export function normalizeRelayErrorCode(rawCode, statusCode) {
11
+ const normalizedRaw = rawCode?.trim().toLowerCase();
12
+ if (normalizedRaw && RAW_CODE_MAP[normalizedRaw]) {
13
+ return RAW_CODE_MAP[normalizedRaw];
14
+ }
15
+ if (statusCode === 401 || statusCode === 403) {
16
+ return 'unauthorized';
17
+ }
18
+ if (statusCode === 404) {
19
+ return 'not_found';
20
+ }
21
+ if (statusCode === 409) {
22
+ return 'name_conflict';
23
+ }
24
+ return 'transport_error';
25
+ }
26
+ export function relayErrorRetryable(code, statusCode) {
27
+ if (code !== 'transport_error') {
28
+ return false;
29
+ }
30
+ if (typeof statusCode !== 'number') {
31
+ return true;
32
+ }
33
+ return statusCode >= 500 || statusCode === 408 || statusCode === 429;
34
+ }
35
+ export class RelayError extends Error {
36
+ code;
37
+ retryable;
38
+ statusCode;
39
+ rawCode;
40
+ status;
41
+ constructor(code, message, options = {}) {
42
+ super(message);
43
+ this.name = 'RelayError';
44
+ this.code = code;
45
+ this.statusCode = options.statusCode;
46
+ this.rawCode = options.rawCode;
47
+ this.retryable = options.retryable ?? relayErrorRetryable(code, options.statusCode);
48
+ this.status = options.statusCode ?? 0;
49
+ if (options.cause !== undefined) {
50
+ this.cause = options.cause;
51
+ }
52
+ }
53
+ }
54
+ export function relayErrorFromApi(rawCode, message, statusCode) {
55
+ const code = normalizeRelayErrorCode(rawCode, statusCode);
56
+ return new RelayError(code, message, { statusCode, rawCode });
57
+ }
58
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAcA,MAAM,YAAY,GAAmC;IACnD,aAAa,EAAE,eAAe;IAC9B,oBAAoB,EAAE,eAAe;IACrC,SAAS,EAAE,WAAW;IACtB,eAAe,EAAE,WAAW;IAC5B,YAAY,EAAE,cAAc;IAC5B,kBAAkB,EAAE,oBAAoB;IACxC,mBAAmB,EAAE,oBAAoB;CAC1C,CAAC;AAEF,MAAM,UAAU,uBAAuB,CAAC,OAA2B,EAAE,UAAmB;IACtF,MAAM,aAAa,GAAG,OAAO,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACpD,IAAI,aAAa,IAAI,YAAY,CAAC,aAAa,CAAC,EAAE,CAAC;QACjD,OAAO,YAAY,CAAC,aAAa,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;QAC7C,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;QACvB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;QACvB,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAoB,EAAE,UAAmB;IAC3E,IAAI,IAAI,KAAK,iBAAiB,EAAE,CAAC;QAC/B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,UAAU,IAAI,GAAG,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,GAAG,CAAC;AACvE,CAAC;AAED,MAAM,OAAO,UAAW,SAAQ,KAAK;IAC1B,IAAI,CAAiB;IACrB,SAAS,CAAU;IACnB,UAAU,CAAU;IACpB,OAAO,CAAU;IACjB,MAAM,CAAS;IAExB,YAAY,IAAoB,EAAE,OAAe,EAAE,UAA6B,EAAE;QAChF,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;QACpF,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC;QACtC,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC/B,IAA4B,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QACtD,CAAC;IACH,CAAC;CACF;AAED,MAAM,UAAU,iBAAiB,CAC/B,OAA2B,EAC3B,OAAe,EACf,UAAmB;IAEnB,MAAM,IAAI,GAAG,uBAAuB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAC1D,OAAO,IAAI,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC;AAChE,CAAC"}
@@ -0,0 +1,15 @@
1
+ import type { CreateAgentRequest } from './types.js';
2
+ import { RelayError } from './errors.js';
3
+ export interface RegisterAgentInput extends CreateAgentRequest {
4
+ strict?: boolean;
5
+ }
6
+ export type RegisterOrRotateInput = CreateAgentRequest;
7
+ export interface ResolvedIdentity {
8
+ agentId: string;
9
+ name: string;
10
+ workspaceId: string;
11
+ }
12
+ export declare function emitCompatibilityTelemetry(event: string, metadata?: Record<string, unknown>): void;
13
+ export declare function appendLegacySuffix(baseName: string): string;
14
+ export declare function isNameConflictError(err: unknown): err is RelayError;
15
+ //# sourceMappingURL=identity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAC5D,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAEvD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAUD,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,MAAM,EACb,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACrC,IAAI,CAgBN;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAG3D;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,UAAU,CAEnE"}
@@ -0,0 +1,23 @@
1
+ import { RelayError } from './errors.js';
2
+ const COMPAT_EVENT_NAME = 'relaycast.compatibility';
3
+ const emittedCompatibilityEvents = new Set();
4
+ export function emitCompatibilityTelemetry(event, metadata = {}) {
5
+ if (emittedCompatibilityEvents.has(event))
6
+ return;
7
+ emittedCompatibilityEvents.add(event);
8
+ const target = globalThis;
9
+ const CustomEventCtor = target.CustomEvent ?? globalThis.CustomEvent;
10
+ if (typeof target.dispatchEvent !== 'function' || typeof CustomEventCtor !== 'function') {
11
+ return;
12
+ }
13
+ const detail = { event, metadata };
14
+ target.dispatchEvent(new CustomEventCtor(COMPAT_EVENT_NAME, { detail }));
15
+ }
16
+ export function appendLegacySuffix(baseName) {
17
+ const suffix = Math.random().toString(16).slice(2, 6).padEnd(4, '0');
18
+ return `${baseName}-${suffix}`;
19
+ }
20
+ export function isNameConflictError(err) {
21
+ return err instanceof RelayError && err.code === 'name_conflict';
22
+ }
23
+ //# sourceMappingURL=identity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identity.js","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAczC,MAAM,iBAAiB,GAAG,yBAAyB,CAAC;AACpD,MAAM,0BAA0B,GAAG,IAAI,GAAG,EAAU,CAAC;AAOrD,MAAM,UAAU,0BAA0B,CACxC,KAAa,EACb,WAAoC,EAAE;IAEtC,IAAI,0BAA0B,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO;IAClD,0BAA0B,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAEtC,MAAM,MAAM,GAAG,UAGd,CAAC;IACF,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,IAAI,UAAU,CAAC,WAAW,CAAC;IAErE,IAAI,OAAO,MAAM,CAAC,aAAa,KAAK,UAAU,IAAI,OAAO,eAAe,KAAK,UAAU,EAAE,CAAC;QACxF,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAA6B,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAC7D,MAAM,CAAC,aAAa,CAAC,IAAI,eAAe,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,QAAgB;IACjD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACrE,OAAO,GAAG,QAAQ,IAAI,MAAM,EAAE,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,GAAY;IAC9C,OAAO,GAAG,YAAY,UAAU,IAAI,GAAG,CAAC,IAAI,KAAK,eAAe,CAAC;AACnE,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,10 +1,15 @@
1
1
  export { SDK_VERSION } from './version.js';
2
2
  export { RelayCast, RelayCast as Relay } from './relay.js';
3
- export type { RelayCastOptions, RelayCastOptions as RelayOptions } from './relay.js';
3
+ export type { RelayCastOptions, RelayCastOptions as RelayOptions, } from './relay.js';
4
4
  export { AgentClient } from './agent.js';
5
+ export type { AgentClientOptions } from './agent.js';
5
6
  export { HttpClient, RelayError } from './client.js';
6
7
  export type { ClientOptions } from './client.js';
7
- export { BillingClient } from './billing.js';
8
+ export { relayErrorFromApi, normalizeRelayErrorCode, relayErrorRetryable, } from './errors.js';
9
+ export type { RelayErrorCode, RelayErrorOptions } from './errors.js';
10
+ export { appendLegacySuffix, isNameConflictError, } from './identity.js';
11
+ export type { RegisterAgentInput, RegisterOrRotateInput, ResolvedIdentity } from './identity.js';
8
12
  export { WsClient } from './ws.js';
9
13
  export type { WsClientOptions, EventHandler } from './ws.js';
14
+ export type * from './types.js';
10
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,SAAS,IAAI,KAAK,EAAE,MAAM,YAAY,CAAC;AAC3D,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,IAAI,YAAY,EAAE,MAAM,YAAY,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACrD,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,SAAS,IAAI,KAAK,EAAE,MAAM,YAAY,CAAC;AAC3D,YAAY,EACV,gBAAgB,EAChB,gBAAgB,IAAI,YAAY,GACjC,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,YAAY,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACrD,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EACL,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjG,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC7D,mBAAmB,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -2,6 +2,7 @@ export { SDK_VERSION } from './version.js';
2
2
  export { RelayCast, RelayCast as Relay } from './relay.js';
3
3
  export { AgentClient } from './agent.js';
4
4
  export { HttpClient, RelayError } from './client.js';
5
- export { BillingClient } from './billing.js';
5
+ export { relayErrorFromApi, normalizeRelayErrorCode, relayErrorRetryable, } from './errors.js';
6
+ export { appendLegacySuffix, isNameConflictError, } from './identity.js';
6
7
  export { WsClient } from './ws.js';
7
8
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,SAAS,IAAI,KAAK,EAAE,MAAM,YAAY,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,SAAS,IAAI,KAAK,EAAE,MAAM,YAAY,CAAC;AAK3D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { RelayCast, type RelayCastOptions } from './relay.js';
2
+ import { WsClient, type WsClientOptions } from './ws.js';
3
+ import type { InternalOrigin } from './origin.js';
4
+ export declare function createInternalRelayCast(options: RelayCastOptions, origin: InternalOrigin): RelayCast;
5
+ export declare function createInternalWsClient(options: WsClientOptions, origin: InternalOrigin): WsClient;
6
+ //# sourceMappingURL=internal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9D,OAAO,EAAE,QAAQ,EAAwB,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,cAAc,GACrB,SAAS,CAEX;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,cAAc,GACrB,QAAQ,CAEV"}
@@ -0,0 +1,10 @@
1
+ import { RelayCast } from './relay.js';
2
+ import { withInternalOrigin } from './client.js';
3
+ import { WsClient, withInternalWsOrigin } from './ws.js';
4
+ export function createInternalRelayCast(options, origin) {
5
+ return new RelayCast(withInternalOrigin(options, origin));
6
+ }
7
+ export function createInternalWsClient(options, origin) {
8
+ return new WsClient(withInternalWsOrigin(options, origin));
9
+ }
10
+ //# sourceMappingURL=internal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAyB,MAAM,YAAY,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,oBAAoB,EAAwB,MAAM,SAAS,CAAC;AAG/E,MAAM,UAAU,uBAAuB,CACrC,OAAyB,EACzB,MAAsB;IAEtB,OAAO,IAAI,SAAS,CAAC,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,OAAwB,EACxB,MAAsB;IAEtB,OAAO,IAAI,QAAQ,CAAC,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAC7D,CAAC"}
@@ -0,0 +1,7 @@
1
+ export interface InternalOrigin {
2
+ surface: string;
3
+ client: string;
4
+ version: string;
5
+ }
6
+ export declare const SDK_ORIGIN: InternalOrigin;
7
+ //# sourceMappingURL=origin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"origin.d.ts","sourceRoot":"","sources":["../src/origin.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,UAAU,EAAE,cAIvB,CAAC"}
package/dist/origin.js ADDED
@@ -0,0 +1,7 @@
1
+ import { SDK_VERSION } from './version.js';
2
+ export const SDK_ORIGIN = Object.freeze({
3
+ surface: 'sdk',
4
+ client: '@relaycast/sdk',
5
+ version: SDK_VERSION,
6
+ });
7
+ //# sourceMappingURL=origin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"origin.js","sourceRoot":"","sources":["../src/origin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAQ3C,MAAM,CAAC,MAAM,UAAU,GAAmB,MAAM,CAAC,MAAM,CAAC;IACtD,OAAO,EAAE,KAAK;IACd,MAAM,EAAE,gBAAgB;IACxB,OAAO,EAAE,WAAW;CACrB,CAAC,CAAC"}
package/dist/relay.d.ts CHANGED
@@ -1,20 +1,46 @@
1
- import type { Agent, AgentListQuery, AgentPresenceInfo, Channel, ChannelMemberInfo, CreateAgentRequest, CreateAgentResponse, UpdateAgentRequest, UpdateWorkspaceRequest, Workspace, CreateWorkspaceResponse, SystemPrompt, SetSystemPromptRequest, CreateWebhookRequest, CreateWebhookResponse, Webhook, WebhookTriggerRequest, WebhookTriggerResponse, CreateSubscriptionRequest, CreateSubscriptionResponse, EventSubscription, CreateCommandRequest, CreateCommandResponse, AgentCommand, ActivityItem, WorkspaceDmConversation, TokenRotateResponse, MessageListQuery, MessageWithMeta, ReactionGroup, SpawnAgentRequest, SpawnAgentResponse, ReleaseAgentRequest, ReleaseAgentResponse } from '@relaycast/types';
2
- import { AgentClient } from './agent.js';
3
- import { BillingClient } from './billing.js';
1
+ import type { Agent, AgentListQuery, AgentPresenceInfo, Channel, ChannelMemberInfo, CreateAgentRequest, CreateAgentResponse, UpdateAgentRequest, UpdateWorkspaceRequest, Workspace, CreateWorkspaceResponse, SystemPrompt, SetSystemPromptRequest, CreateWebhookRequest, CreateWebhookResponse, Webhook, WebhookTriggerRequest, WebhookTriggerResponse, CreateSubscriptionRequest, CreateSubscriptionResponse, EventSubscription, CreateCommandRequest, CreateCommandResponse, AgentCommand, ActivityItem, WorkspaceDmConversation, TokenRotateResponse, MessageListQuery, MessageWithMeta, ReactionGroup, SpawnAgentRequest, SpawnAgentResponse, ReleaseAgentRequest, ReleaseAgentResponse } from './types.js';
2
+ import { AgentClient, type AgentClientOptions } from './agent.js';
3
+ import { type RetryPolicyInput } from './client.js';
4
+ import { type RegisterAgentInput, type RegisterOrRotateInput, type ResolvedIdentity } from './identity.js';
4
5
  export interface RelayCastOptions {
5
6
  apiKey: string;
6
7
  baseUrl?: string;
8
+ retryPolicy?: RetryPolicyInput;
7
9
  }
8
10
  export interface WorkspaceStreamConfig {
9
11
  enabled: boolean;
10
- default_enabled: boolean;
12
+ defaultEnabled: boolean;
11
13
  override: boolean | null;
12
14
  }
15
+ interface ChannelListOptions {
16
+ includeArchived?: boolean;
17
+ }
18
+ interface CommandRegisterInput {
19
+ command: string;
20
+ description: string;
21
+ handlerAgent: string;
22
+ parameters?: CreateCommandRequest['parameters'];
23
+ }
24
+ interface WorkspaceDmMessage {
25
+ id: string;
26
+ agentId: string;
27
+ agentName: string;
28
+ text: string;
29
+ createdAt: string;
30
+ }
13
31
  export declare class RelayCast {
14
32
  private client;
15
- billing: BillingClient;
33
+ private identityHint;
34
+ private workspaceIdHint;
16
35
  constructor(options: RelayCastOptions);
17
36
  static createWorkspace(name: string, baseUrl?: string): Promise<CreateWorkspaceResponse>;
37
+ private rememberIdentity;
38
+ private resolveWorkspaceId;
39
+ private resolveIdentityInternal;
40
+ private registerWithLegacySuffix;
41
+ registerAgent(data: RegisterAgentInput): Promise<CreateAgentResponse>;
42
+ registerOrRotate(data: RegisterOrRotateInput): Promise<CreateAgentResponse>;
43
+ resolveIdentity(): Promise<ResolvedIdentity>;
18
44
  workspace: {
19
45
  info: () => Promise<Workspace>;
20
46
  update: (data: UpdateWorkspaceRequest) => Promise<Workspace>;
@@ -30,9 +56,7 @@ export declare class RelayCast {
30
56
  set: (data: SetSystemPromptRequest) => Promise<SystemPrompt>;
31
57
  };
32
58
  channels: {
33
- list: (opts?: {
34
- include_archived?: boolean;
35
- }) => Promise<Channel[]>;
59
+ list: (opts?: ChannelListOptions) => Promise<Channel[]>;
36
60
  get: (name: string) => Promise<Channel & {
37
61
  members: ChannelMemberInfo[];
38
62
  }>;
@@ -55,6 +79,9 @@ export declare class RelayCast {
55
79
  delete: (name: string) => Promise<void>;
56
80
  presence: () => Promise<AgentPresenceInfo[]>;
57
81
  registerOrGet: (data: CreateAgentRequest) => Promise<CreateAgentResponse>;
82
+ registerAgent: (data: RegisterAgentInput) => Promise<CreateAgentResponse>;
83
+ registerOrRotate: (data: RegisterOrRotateInput) => Promise<CreateAgentResponse>;
84
+ resolveIdentity: () => Promise<ResolvedIdentity>;
58
85
  spawn: (data: SpawnAgentRequest) => Promise<SpawnAgentResponse>;
59
86
  release: (data: ReleaseAgentRequest) => Promise<ReleaseAgentResponse>;
60
87
  };
@@ -71,7 +98,7 @@ export declare class RelayCast {
71
98
  delete: (id: string) => Promise<void>;
72
99
  };
73
100
  commands: {
74
- register: (data: CreateCommandRequest) => Promise<CreateCommandResponse>;
101
+ register: (data: CommandRegisterInput) => Promise<CreateCommandResponse>;
75
102
  list: () => Promise<AgentCommand[]>;
76
103
  delete: (command: string) => Promise<void>;
77
104
  };
@@ -81,13 +108,8 @@ export declare class RelayCast {
81
108
  limit?: number;
82
109
  before?: string;
83
110
  after?: string;
84
- }) => Promise<Array<{
85
- id: string;
86
- agent_id: string;
87
- agent_name: string;
88
- text: string;
89
- created_at: string;
90
- }>>;
91
- as(agentToken: string): AgentClient;
111
+ }) => Promise<WorkspaceDmMessage[]>;
112
+ as(agentToken: string, options?: AgentClientOptions): AgentClient;
92
113
  }
114
+ export {};
93
115
  //# sourceMappingURL=relay.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"relay.d.ts","sourceRoot":"","sources":["../src/relay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relay.d.ts","sourceRoot":"","sources":["../src/relay.ts"],"names":[],"mappings":"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"}