@relaymessenger/cli 0.3.2 → 0.4.4

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/README.md CHANGED
@@ -69,7 +69,7 @@ curl -X POST https://api.relayapp.im/v1/messages \
69
69
  an ACP coding-engine preset.
70
70
  - **Approvals**: an engine `session/request_permission` becomes a Relay
71
71
  message with a text part plus an `agent_permission_request` data part
72
- (origin-tagged Allow/Deny options and quick-reply chips). Tap a chip or text
72
+ (origin-tagged Allow/Deny options). Tap an option or text
73
73
  `yes <id>` / `no <id>`. The full security-relevant tool input and affected
74
74
  paths must fit in the card; an operation that cannot be represented in full
75
75
  is denied instead of shown partially. No answer within 10 minutes → deny.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "relay",
3
3
  "description": "Relay channel for Claude Code. Message your Claude Code session from your Relay agent conversation, with remote Allow/Deny permission relay. Run /relay:configure to set up.",
4
- "version": "0.2.0",
4
+ "version": "0.2.1",
5
5
  "author": {
6
6
  "name": "Relay"
7
7
  },
@@ -25745,7 +25745,7 @@ var RetryWindow = class {
25745
25745
  };
25746
25746
 
25747
25747
  // server.ts
25748
- var VERSION = "0.2.0";
25748
+ var VERSION = true ? "0.2.1" : createRequire(import.meta.url)("./package.json").version;
25749
25749
  var RETRY_INTERVAL_MS = 5e3;
25750
25750
  var NOTIFICATION_RETRY_MS = 3e4;
25751
25751
  var log = (message) => {
package/dist/api.d.ts CHANGED
@@ -1,39 +1,21 @@
1
1
  /**
2
- * Thin client for the Relay public API (https://docs.relayapp.im).
3
- * Wire shapes follow Relay's public OpenAPI contract at
4
- * https://docs.relayapp.im/api-reference/openapi.yaml.
2
+ * Compatibility facade over the canonical @relaymessenger/sdk client.
3
+ *
4
+ * The running bridge uses the SDK for identity, polling, messages, typing,
5
+ * responding, and read receipts. This facade keeps the CLI's established
6
+ * positional signatures and implements only pairing and cursor-recovery
7
+ * endpoints that the current published SDK does not expose.
5
8
  */
6
- import type { RelayEvent, RelayMessage } from "./store.js";
9
+ import { normalizeRelayBaseUrl, RelayApiError } from "@relaymessenger/sdk";
10
+ import type { RelayEvent, RelayMentionRange, RelayMessage, RelayStyleRange } from "./store.js";
11
+ export { RelayApiError };
7
12
  export declare const PRODUCTION_ORIGIN = "https://api.relayapp.im";
8
- /**
9
- * Bearer tokens may only leave over HTTPS. Plain HTTP is accepted solely for
10
- * explicit loopback development servers, and base URLs cannot smuggle a path,
11
- * query, credentials, or fragment into request construction.
12
- */
13
- export declare function normalizeApiOrigin(value: string): string;
13
+ export declare const normalizeApiOrigin: typeof normalizeRelayBaseUrl;
14
14
  /**
15
15
  * Development/testing override for the Relay API origin. Production stays the
16
- * default; when RELAY_API_ORIGIN is set it passes normalizeApiOrigin, so the
17
- * loopback carve-out there remains the only place plain HTTP is accepted.
16
+ * default. The SDK owns all URL validation.
18
17
  */
19
18
  export declare function resolveApiOrigin(fallback?: string): string;
20
- export declare class RelayApiError extends Error {
21
- readonly status: number;
22
- readonly code: string | undefined;
23
- /**
24
- * `error.details` from the Relay error body. The cursor faults carry the
25
- * recovery target there (`highest_delivered_cursor`, `latest_sequence`),
26
- * so it has to survive the throw.
27
- */
28
- readonly details?: Record<string, unknown> | undefined;
29
- constructor(status: number, code: string | undefined, message: string,
30
- /**
31
- * `error.details` from the Relay error body. The cursor faults carry the
32
- * recovery target there (`highest_delivered_cursor`, `latest_sequence`),
33
- * so it has to survive the throw.
34
- */
35
- details?: Record<string, unknown> | undefined);
36
- }
37
19
  export interface PairingCreated {
38
20
  pairing_id: string;
39
21
  code: string;
@@ -56,27 +38,45 @@ export interface EventCursorReconciliation {
56
38
  reconciled: true;
57
39
  resume_cursor: number;
58
40
  }
59
- /** One row of GET /v1/conversations (AgentConversation in the OpenAPI contract). */
60
41
  export interface RelayConversation {
61
42
  id: string;
62
43
  kind?: "direct" | "group";
63
44
  last_sequence?: number;
64
45
  last_message_at?: string | null;
65
46
  }
47
+ export type RelayOutgoingPart = {
48
+ type: "text";
49
+ text: string;
50
+ mentions?: RelayMentionRange[];
51
+ styles?: RelayStyleRange[];
52
+ } | {
53
+ type: "media";
54
+ attachment_id?: string;
55
+ url?: string;
56
+ width?: number;
57
+ height?: number;
58
+ blur_hash?: string;
59
+ } | {
60
+ type: "voice_memo";
61
+ attachment_id?: string;
62
+ url?: string;
63
+ duration_ms?: number;
64
+ } | {
65
+ type: "link_preview";
66
+ url: string;
67
+ } | {
68
+ type: "data";
69
+ data: Record<string, unknown>;
70
+ };
66
71
  export interface PostMessageBody {
67
72
  conversation_id: string;
68
- parts: Array<Record<string, unknown>>;
69
- suggestions?: Array<{
70
- text: string;
71
- }>;
73
+ parts: RelayOutgoingPart[];
72
74
  reply_to?: {
73
75
  message_id: string;
74
- part_index?: number;
75
76
  };
76
77
  /**
77
- * Required in a group: the id Relay supplied on the invocation this message
78
- * answers. The server rejects a group agent message without it, and consumes
79
- * the invocation on commit, so exactly one message may carry a given id.
78
+ * Required in a group: Relay supplies this on the inbound invocation and
79
+ * consumes it when the reply commits.
80
80
  */
81
81
  invocation_id?: string;
82
82
  }
@@ -84,22 +84,23 @@ export declare class RelayClient {
84
84
  private readonly token?;
85
85
  private readonly fetchImpl;
86
86
  readonly origin: string;
87
+ private readonly sdk;
87
88
  constructor(origin: string, token?: string | undefined, fetchImpl?: typeof fetch);
88
- private request;
89
+ /**
90
+ * Pairing, event reconciliation, and history inventory are not yet in the
91
+ * published SDK. Keep their transport narrow until generated SDK methods
92
+ * replace this compatibility path.
93
+ */
94
+ private compatibilityRequest;
95
+ private authenticatedClient;
89
96
  createPairing(deviceName: string, engine?: string): Promise<PairingCreated>;
90
97
  waitPairing(pairingId: string, pollToken: string): Promise<PairingStatus>;
91
98
  getMe(): Promise<Record<string, unknown>>;
92
99
  getEvents(cursor: number, timeoutS?: number, limit?: number): Promise<EventsPage>;
93
100
  reconcileEvents(expiredCursor: number): Promise<EventCursorReconciliation>;
94
101
  postMessage(body: PostMessageBody, idempotencyKey: string): Promise<{
95
- message_id: string;
96
- message: RelayMessage;
102
+ messages: RelayMessage[];
97
103
  }>;
98
- /**
99
- * Conversations this agent still participates in, newest activity first.
100
- * The canonical inventory used to reconcile after a cursor fault, when the
101
- * event log can no longer say which conversations moved.
102
- */
103
104
  listConversations(limit?: number): Promise<{
104
105
  conversations: RelayConversation[];
105
106
  }>;
@@ -107,6 +108,7 @@ export declare class RelayClient {
107
108
  messages: RelayMessage[];
108
109
  }>;
109
110
  setTyping(conversationId: string, started: boolean, label?: string, invocationId?: string): Promise<void>;
111
+ setResponding(conversationId: string, messageId: string, label?: string, invocationId?: string): Promise<void>;
110
112
  markRead(conversationId: string, messageId: string): Promise<void>;
111
113
  }
112
114
  //# sourceMappingURL=api.d.ts.map
package/dist/api.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE3D,eAAO,MAAM,iBAAiB,4BAA4B,CAAC;AAO3D;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAcxD;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,GAAE,MAA0B,GAAG,MAAM,CAI7E;AAED,qBAAa,aAAc,SAAQ,KAAK;IAEpC,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS;IAEjC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAT5C,YACW,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,GAAG,SAAS,EACjC,OAAO,EAAE,MAAM;IACf;;;;OAIG;IACM,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA,EAI3C;CACF;AAED,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,aAAa,GACrB;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,GACrB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CAAC;AAEhF,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,yBAAyB;IACxC,UAAU,EAAE,IAAI,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,oFAAoF;AACpF,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACtC,WAAW,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtC,QAAQ,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACvD;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,WAAW;IAKpB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAL5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,YACE,MAAM,EAAE,MAAM,EACG,KAAK,CAAC,EAAE,MAAM,YAAA,EACd,SAAS,GAAE,OAAO,KAAa,EAGjD;YAEa,OAAO;IAiDrB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAI1E;IAED,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAKxE;IAID,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAExC;IAED,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,SAAK,EAAE,KAAK,SAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAGzE;IAED,eAAe,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAKzE;IAED,WAAW,CACT,IAAI,EAAE,eAAe,EACrB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,YAAY,CAAA;KAAE,CAAC,CAKxD;IAED;;;;OAIG;IACH,iBAAiB,CAAC,KAAK,SAAK,GAAG,OAAO,CAAC;QAAE,aAAa,EAAE,iBAAiB,EAAE,CAAA;KAAE,CAAC,CAE7E;IAED,YAAY,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,SAAK,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,YAAY,EAAE,CAAA;KAAE,CAAC,CAEtF;IAED,SAAS,CACP,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,OAAO,EAChB,KAAK,CAAC,EAAE,MAAM,EACd,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CAUf;IAED,QAAQ,CAAC,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIjE;CACF"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
package/dist/api.js CHANGED
@@ -1,158 +1,162 @@
1
- export const PRODUCTION_ORIGIN = "https://api.relayapp.im";
2
- function isLoopbackHost(hostname) {
3
- const host = hostname.toLowerCase();
4
- return host === "localhost" || host.endsWith(".localhost") || host === "::1" || host === "[::1]" || /^127\./.test(host);
5
- }
6
1
  /**
7
- * Bearer tokens may only leave over HTTPS. Plain HTTP is accepted solely for
8
- * explicit loopback development servers, and base URLs cannot smuggle a path,
9
- * query, credentials, or fragment into request construction.
2
+ * Compatibility facade over the canonical @relaymessenger/sdk client.
3
+ *
4
+ * The running bridge uses the SDK for identity, polling, messages, typing,
5
+ * responding, and read receipts. This facade keeps the CLI's established
6
+ * positional signatures and implements only pairing and cursor-recovery
7
+ * endpoints that the current published SDK does not expose.
10
8
  */
11
- export function normalizeApiOrigin(value) {
12
- let url;
13
- try {
14
- url = new URL(value);
15
- }
16
- catch {
17
- throw new Error(`Invalid Relay API origin: ${value}`);
18
- }
19
- if (url.username || url.password || url.search || url.hash || (url.pathname && url.pathname !== "/")) {
20
- throw new Error("Relay API origin must contain only scheme and host (no credentials, path, query, or fragment)");
21
- }
22
- if (url.protocol !== "https:" && !(url.protocol === "http:" && isLoopbackHost(url.hostname))) {
23
- throw new Error("Relay API origin must use HTTPS (plain HTTP is allowed only on loopback)");
24
- }
25
- return url.origin;
26
- }
9
+ import { classifyRelayHttpStatus, createRelayClient, DEFAULT_RELAY_BASE_URL, normalizeRelayBaseUrl, RelayApiError, } from "@relaymessenger/sdk";
10
+ export { RelayApiError };
11
+ export const PRODUCTION_ORIGIN = DEFAULT_RELAY_BASE_URL;
12
+ export const normalizeApiOrigin = normalizeRelayBaseUrl;
27
13
  /**
28
14
  * Development/testing override for the Relay API origin. Production stays the
29
- * default; when RELAY_API_ORIGIN is set it passes normalizeApiOrigin, so the
30
- * loopback carve-out there remains the only place plain HTTP is accepted.
15
+ * default. The SDK owns all URL validation.
31
16
  */
32
17
  export function resolveApiOrigin(fallback = PRODUCTION_ORIGIN) {
33
18
  const override = process.env.RELAY_API_ORIGIN?.trim();
34
- if (!override)
35
- return fallback;
36
- return normalizeApiOrigin(override);
37
- }
38
- export class RelayApiError extends Error {
39
- status;
40
- code;
41
- details;
42
- constructor(status, code, message,
43
- /**
44
- * `error.details` from the Relay error body. The cursor faults carry the
45
- * recovery target there (`highest_delivered_cursor`, `latest_sequence`),
46
- * so it has to survive the throw.
47
- */
48
- details) {
49
- super(message);
50
- this.status = status;
51
- this.code = code;
52
- this.details = details;
53
- this.name = "RelayApiError";
54
- }
19
+ return normalizeRelayBaseUrl(override || fallback);
55
20
  }
56
21
  export class RelayClient {
57
22
  token;
58
23
  fetchImpl;
59
24
  origin;
25
+ sdk;
60
26
  constructor(origin, token, fetchImpl = fetch) {
61
27
  this.token = token;
62
28
  this.fetchImpl = fetchImpl;
63
- this.origin = normalizeApiOrigin(origin);
29
+ this.origin = normalizeRelayBaseUrl(origin);
30
+ this.sdk = token
31
+ ? createRelayClient({
32
+ baseUrl: this.origin,
33
+ token,
34
+ fetchImpl,
35
+ requestTimeoutMs: 30_000,
36
+ })
37
+ : undefined;
64
38
  }
65
- async request(method, path, opts = {}) {
66
- const headers = { ...opts.headers };
67
- const bearer = opts.bearer ?? this.token;
39
+ /**
40
+ * Pairing, event reconciliation, and history inventory are not yet in the
41
+ * published SDK. Keep their transport narrow until generated SDK methods
42
+ * replace this compatibility path.
43
+ */
44
+ async compatibilityRequest(method, path, options = {}) {
45
+ const headers = { ...options.headers };
46
+ const bearer = options.bearer ?? this.token;
68
47
  if (bearer)
69
48
  headers.authorization = `Bearer ${bearer}`;
70
49
  let body;
71
- if (opts.body !== undefined) {
50
+ if (options.body !== undefined) {
72
51
  headers["content-type"] = "application/json";
73
- body = JSON.stringify(opts.body);
52
+ body = JSON.stringify(options.body);
74
53
  }
75
- const res = await this.fetchImpl(`${this.origin}${path}`, {
54
+ const response = await this.fetchImpl(`${this.origin}${path}`, {
76
55
  method,
77
56
  headers,
78
57
  body,
79
- signal: AbortSignal.timeout(opts.timeoutMs ?? 30_000),
58
+ signal: AbortSignal.timeout(options.timeoutMs ?? 30_000),
80
59
  });
81
- const text = await res.text();
60
+ const text = await response.text();
82
61
  let json;
83
62
  try {
84
- json = text.length > 0 ? JSON.parse(text) : undefined;
63
+ json = text ? JSON.parse(text) : undefined;
85
64
  }
86
65
  catch {
87
66
  json = undefined;
88
67
  }
89
- const okStatuses = opts.expectStatus ?? [200, 201, 202, 204];
90
- if (!okStatuses.includes(res.status)) {
91
- const code = json?.error?.code ?? json?.code;
92
- const message = json?.error?.message ?? json?.message ?? text.slice(0, 300) ?? res.statusText;
93
- const details = json?.error?.details;
94
- throw new RelayApiError(res.status, code, `${method} ${path} → ${res.status}: ${message}`, details && typeof details === "object" && !Array.isArray(details) ? details : undefined);
68
+ if (!response.ok) {
69
+ const envelope = json;
70
+ const code = envelope?.error?.code ?? envelope?.code;
71
+ const message = envelope?.error?.message ??
72
+ envelope?.message ??
73
+ text.slice(0, 300) ??
74
+ response.statusText;
75
+ const details = envelope?.error?.details;
76
+ throw new RelayApiError(`${method} ${path} → ${response.status}: ${message}`, {
77
+ status: response.status,
78
+ kind: classifyRelayHttpStatus(response.status),
79
+ ...(code ? { code } : {}),
80
+ ...(details ? { details } : {}),
81
+ });
95
82
  }
96
83
  return json;
97
84
  }
98
- // — Pairing (unauthenticated create; poll_token bearer for polling)
85
+ authenticatedClient() {
86
+ if (!this.sdk) {
87
+ throw new Error("relay: Agent Token is required");
88
+ }
89
+ return this.sdk;
90
+ }
99
91
  createPairing(deviceName, engine) {
100
- return this.request("POST", "/v1/pairings", {
101
- body: { device_name: deviceName, ...(engine ? { engine } : {}) },
92
+ return this.compatibilityRequest("POST", "/v1/pairings", {
93
+ body: {
94
+ device_name: deviceName,
95
+ ...(engine ? { engine } : {}),
96
+ },
102
97
  });
103
98
  }
104
99
  waitPairing(pairingId, pollToken) {
105
- return this.request("GET", `/v1/pairings/${pairingId}?wait=true`, {
106
- bearer: pollToken,
107
- timeoutMs: 45_000,
108
- });
100
+ return this.compatibilityRequest("GET", `/v1/pairings/${encodeURIComponent(pairingId)}?wait=true`, { bearer: pollToken, timeoutMs: 45_000 });
109
101
  }
110
- // Agent-authenticated surface —
111
- getMe() {
112
- return this.request("GET", "/v1/agents/me");
102
+ async getMe() {
103
+ return { agent: await this.authenticatedClient().getMe() };
113
104
  }
114
- getEvents(cursor, timeoutS = 25, limit = 100) {
115
- const qs = `cursor=${cursor}&timeout=${timeoutS}&limit=${limit}`;
116
- return this.request("GET", `/v1/events?${qs}`, { timeoutMs: (timeoutS + 15) * 1000 });
105
+ async getEvents(cursor, timeoutS = 25, limit = 100) {
106
+ const page = await this.authenticatedClient().pollEvents({
107
+ cursor,
108
+ timeoutSeconds: timeoutS,
109
+ limit,
110
+ });
111
+ return {
112
+ events: page.events,
113
+ next_cursor: page.nextCursor,
114
+ };
117
115
  }
118
116
  reconcileEvents(expiredCursor) {
119
- return this.request("POST", "/v1/events/reconcile", {
120
- body: { expired_cursor: expiredCursor, history_reconciled: true },
121
- headers: { "idempotency-key": `event-cursor-reconcile:${expiredCursor}` },
117
+ return this.compatibilityRequest("POST", "/v1/events/reconcile", {
118
+ body: {
119
+ expired_cursor: expiredCursor,
120
+ history_reconciled: true,
121
+ },
122
+ headers: {
123
+ "idempotency-key": `event-cursor-reconcile:${expiredCursor}`,
124
+ },
122
125
  });
123
126
  }
124
127
  postMessage(body, idempotencyKey) {
125
- return this.request("POST", "/v1/messages", {
126
- body,
127
- headers: { "idempotency-key": idempotencyKey },
128
+ return this.authenticatedClient().sendMessage({
129
+ conversationId: body.conversation_id,
130
+ parts: body.parts,
131
+ idempotencyKey,
132
+ ...(body.reply_to ? { replyTo: body.reply_to } : {}),
133
+ ...(body.invocation_id ? { invocationId: body.invocation_id } : {}),
128
134
  });
129
135
  }
130
- /**
131
- * Conversations this agent still participates in, newest activity first.
132
- * The canonical inventory used to reconcile after a cursor fault, when the
133
- * event log can no longer say which conversations moved.
134
- */
135
136
  listConversations(limit = 50) {
136
- return this.request("GET", `/v1/conversations?limit=${limit}`);
137
+ return this.compatibilityRequest("GET", `/v1/conversations?limit=${encodeURIComponent(limit)}`);
137
138
  }
138
139
  listMessages(conversationId, limit = 20) {
139
- return this.request("GET", `/v1/conversations/${conversationId}/messages?limit=${limit}`);
140
+ return this.compatibilityRequest("GET", `/v1/conversations/${encodeURIComponent(conversationId)}/messages?limit=${encodeURIComponent(limit)}`);
140
141
  }
141
142
  setTyping(conversationId, started, label, invocationId) {
142
- return this.request("POST", `/v1/conversations/${conversationId}/typing`, {
143
- // Group typing is gated on a still-pending invocation, so the id has to
144
- // ride along until the reply consumes it.
145
- body: {
146
- started,
147
- ...(label ? { label } : {}),
148
- ...(invocationId ? { invocation_id: invocationId } : {}),
149
- },
143
+ return this.authenticatedClient().setTyping({
144
+ conversationId,
145
+ started,
146
+ ...(label ? { label } : {}),
147
+ ...(invocationId ? { invocationId } : {}),
150
148
  });
151
149
  }
152
- markRead(conversationId, messageId) {
153
- return this.request("POST", `/v1/conversations/${conversationId}/read`, {
154
- body: { message_id: messageId },
150
+ setResponding(conversationId, messageId, label, invocationId) {
151
+ return this.authenticatedClient().setResponding({
152
+ conversationId,
153
+ messageId,
154
+ ...(label ? { label } : {}),
155
+ ...(invocationId ? { invocationId } : {}),
155
156
  });
156
157
  }
158
+ markRead(conversationId, messageId) {
159
+ return this.authenticatedClient().markRead({ conversationId, messageId });
160
+ }
157
161
  }
158
162
  //# sourceMappingURL=api.js.map
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -36,6 +36,7 @@ const USAGE = `relaymessenger — bridge your local coding agent to Relay (https
36
36
  relaymessenger install-claude point at the Claude Code channel plugin
37
37
  relaymessenger install-openclaw install and configure the bundled OpenClaw plugin
38
38
  relaymessenger doctor health checks
39
+ relaymessenger version print the installed version
39
40
 
40
41
  Docs: https://docs.relayapp.im/quickstart`;
41
42
  async function main() {
@@ -140,6 +141,17 @@ async function main() {
140
141
  }
141
142
  return await permissionRequestHook();
142
143
  }
144
+ case "version":
145
+ case "--version":
146
+ case "-v": {
147
+ // A published CLI that cannot state its own version leaves a bug report
148
+ // with nothing to anchor on. Read the manifest rather than a constant, so
149
+ // it cannot drift from what npm actually installed.
150
+ const { createRequire } = await import("node:module");
151
+ const manifest = createRequire(import.meta.url)("../package.json");
152
+ console.log(manifest.version);
153
+ return 0;
154
+ }
143
155
  case undefined:
144
156
  case "help":
145
157
  case "--help":
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,aAAa,EACb,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,oBAAoB,EACpB,YAAY,EACZ,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB,MAAM,KAAK,GAAG;;;;;iBAKG,WAAW;;;;;;;0CAOc,CAAC;AAE3C,KAAK,UAAU,IAAI;IACjB,MAAM,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACnC,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;IAExE,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,MAAM,EAAE,CAAC;YACZ,0EAA0E;YAC1E,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;YAClC,MAAM,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;YACrE,OAAO,CAAC,CAAC;QACX,CAAC;QACD,KAAK,OAAO,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;YACxC,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC;gBACzB,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;gBAC9D,OAAO,CAAC,CAAC;YACX,CAAC;YACD,MAAM,WAAW,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,qCAAqC;YACrF,sEAAsE;YACtE,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YACnD,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;YAC3D,mEAAmE;YACnE,4DAA4D;YAC5D,MAAM,WAAW,GAAG,oBAAoB,CAAC,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;YAC5E,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC9B,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC/D,IAAI,MAAM;oBAAE,GAAG,CAAC,YAAY,MAAM,EAAE,CAAC,CAAC;YACxC,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,WAAW,CAAC,CAAC;YACjD,uEAAuE;YACvE,+CAA+C;YAC/C,WAAW,CAAC,OAAO,EAAE,CAAC;YACtB,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;gBAC1C,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC;gBAC/C,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC;gBACjD,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;gBAC1D,MAAM,MAAM,GAAG,IAAI,gBAAgB,CACjC,MAAM,EACN,SAAS,EACT,yBAAyB,CAAC,KAAK,CAAC,MAAM,CAAC,EACvC,GAAG,CACJ,CAAC;gBACF,MAAM,IAAI,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE;oBAC1D,WAAW;oBACX,GAAG,EAAE,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;oBAC/B,GAAG;iBACJ,CAAC,CAAC;gBACH,IAAI,YAAuC,CAAC;gBAC5C,MAAM,QAAQ,GAAG,GAAG,EAAE;oBACpB,IAAI,YAAY;wBAAE,OAAO,YAAY,CAAC;oBACtC,YAAY,GAAG,CAAC,KAAK,IAAI,EAAE;wBACzB,GAAG,CAAC,gBAAgB,CAAC,CAAC;wBACtB,IAAI,CAAC,IAAI,EAAE,CAAC;wBACZ,sEAAsE;wBACtE,iEAAiE;wBACjE,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;wBACvB,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;wBACpB,WAAW,CAAC,OAAO,EAAE,CAAC;wBACtB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAClB,CAAC,CAAC,EAAE,CAAC;oBACL,OAAO,YAAY,CAAC;gBACtB,CAAC,CAAC;gBACF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBAC/B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAChC,GAAG,CAAC,0BAA0B,KAAK,CAAC,MAAM,QAAQ,KAAK,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,QAAQ,MAAM,EAAE,CAAC,CAAC;gBAC9F,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;gBACnB,CAAC;wBAAS,CAAC;oBACT,qEAAqE;oBACrE,4CAA4C;oBAC5C,IAAI,CAAC,IAAI,EAAE,CAAC;oBACZ,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACzC,CAAC;gBACD,OAAO,CAAC,CAAC;YACX,CAAC;oBAAS,CAAC;gBACT,WAAW,CAAC,OAAO,EAAE,CAAC;YACxB,CAAC;QACH,CAAC;QACD,KAAK,eAAe;YAClB,YAAY,EAAE,CAAC;YACf,OAAO,CAAC,CAAC;QACX,KAAK,gBAAgB;YACnB,aAAa,EAAE,CAAC;YAChB,OAAO,CAAC,CAAC;QACX,KAAK,kBAAkB;YACrB,eAAe,EAAE,CAAC;YAClB,OAAO,CAAC,CAAC;QACX,KAAK,QAAQ;YACX,OAAO,CAAC,MAAM,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClC,KAAK,QAAQ;YACX,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC9B,OAAO,CAAC,CAAC;QACX,KAAK,KAAK;YACR,MAAM,QAAQ,EAAE,CAAC;YACjB,OAAO,CAAC,CAAC;QACX,KAAK,MAAM,EAAE,CAAC;YACZ,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,oBAAoB,EAAE,CAAC;gBAC3C,OAAO,CAAC,KAAK,CAAC,iBAAiB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;gBAC5D,OAAO,CAAC,CAAC;YACX,CAAC;YACD,OAAO,MAAM,qBAAqB,EAAE,CAAC;QACvC,CAAC;QACD,KAAK,SAAS,CAAC;QACf,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI;YACP,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,OAAO,CAAC,CAAC;QACX;YACE,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,IAAI,CAAC,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,OAAO,CAAC,CAAC;IACb,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,IAAI,CACT,CAAC,IAAI,EAAE,EAAE;IACP,IAAI,IAAI,KAAK,CAAC;QAAE,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;AAC1C,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;IACR,OAAO,CAAC,KAAK,CAAC,mBAAmB,KAAK,EAAE,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC;IAC5D,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CACF,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../src/codex.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAEL,sBAAsB,EACtB,WAAW,EAMZ,MAAM,YAAY,CAAC;AAEpB,wBAAgB,aAAa,CAAC,MAAM,cAAoB,GAAG;IACzD,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;CACzB,CA4BA;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAkB,EACzC,YAAY,GAAE,yBAA8B,GAC3C,OAAO,CAAC,IAAI,CAAC,CA0Cf;AAUD,wBAAsB,qBAAqB,CACzC,KAAK,GAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAkE,GAC3F,OAAO,CAAC,MAAM,CAAC,CA+GjB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CASpD"}
1
+ {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../src/codex.ts"],"names":[],"mappings":"AAyBA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,EAEL,sBAAsB,EACtB,WAAW,EAMZ,MAAM,YAAY,CAAC;AAEpB,wBAAgB,aAAa,CAAC,MAAM,cAAoB,GAAG;IACzD,MAAM,EAAE,WAAW,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;CACzB,CA4BA;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,wBAAsB,aAAa,CACjC,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAkB,EACzC,YAAY,GAAE,yBAA8B,GAC3C,OAAO,CAAC,IAAI,CAAC,CA0Cf;AAUD,wBAAsB,qBAAqB,CACzC,KAAK,GAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAkE,GAC3F,OAAO,CAAC,MAAM,CAAC,CA2HjB;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CASpD"}
package/dist/codex.js CHANGED
@@ -171,7 +171,17 @@ export async function permissionRequestHook(write = (json) => process.stdout.wri
171
171
  write(decisionJson(false));
172
172
  return 0;
173
173
  }
174
- const cardSequence = posted.message.sequence;
174
+ // The card's text and data parts land as separate messages; a verdict must
175
+ // come after every one of them, so the watermark is the last sequence. A 202
176
+ // with no messages leaves no watermark to gate the verdict scan on, and a
177
+ // zero default would accept any earlier matching message, so refuse instead.
178
+ const cardSequence = posted.messages.at(-1)?.sequence;
179
+ if (cardSequence === undefined) {
180
+ approvals.consume(requestId);
181
+ process.stderr.write("relaymessenger: approval card send returned no committed messages; denying.\n");
182
+ write(decisionJson(false));
183
+ return 0;
184
+ }
175
185
  const finish = (allow) => {
176
186
  approvals.consume(requestId);
177
187
  write(decisionJson(allow));
package/dist/codex.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"codex.js","sourceRoot":"","sources":["../src/codex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex.js","sourceRoot":"","sources":["../src/codex.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { RelayClient } from "./api.js";
1
+ import type { RelayClient, RelayOutgoingPart } from "./api.js";
2
2
  import type { ApprovalStore, PendingApproval, RelayMessage } from "./store.js";
3
3
  import type { PermissionAsk, PermissionDecision } from "./engine/types.js";
4
4
  export declare const APPROVAL_TIMEOUT_MS: number;
@@ -52,10 +52,7 @@ export interface PermissionCardInput {
52
52
  export declare function buildPermissionCard(input: PermissionCardInput): {
53
53
  body: {
54
54
  conversation_id: string;
55
- parts: Array<Record<string, unknown>>;
56
- suggestions: Array<{
57
- text: string;
58
- }>;
55
+ parts: RelayOutgoingPart[];
59
56
  };
60
57
  idempotencyKey: string;
61
58
  };