@agentuity/cli 1.0.22 → 1.0.23
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/auth.d.ts.map +1 -1
- package/dist/auth.js +7 -0
- package/dist/auth.js.map +1 -1
- package/dist/cache/resource-region.d.ts +1 -1
- package/dist/cache/resource-region.d.ts.map +1 -1
- package/dist/cache/resource-region.js.map +1 -1
- package/dist/cmd/ai/claude-code/install.d.ts.map +1 -1
- package/dist/cmd/ai/claude-code/install.js +0 -1
- package/dist/cmd/ai/claude-code/install.js.map +1 -1
- package/dist/cmd/build/vite/public-asset-path-plugin.d.ts +4 -2
- package/dist/cmd/build/vite/public-asset-path-plugin.d.ts.map +1 -1
- package/dist/cmd/build/vite/public-asset-path-plugin.js +18 -4
- package/dist/cmd/build/vite/public-asset-path-plugin.js.map +1 -1
- package/dist/cmd/cloud/email/create.d.ts +3 -0
- package/dist/cmd/cloud/email/create.d.ts.map +1 -0
- package/dist/cmd/cloud/email/create.js +58 -0
- package/dist/cmd/cloud/email/create.js.map +1 -0
- package/dist/cmd/cloud/email/delete.d.ts +3 -0
- package/dist/cmd/cloud/email/delete.d.ts.map +1 -0
- package/dist/cmd/cloud/email/delete.js +47 -0
- package/dist/cmd/cloud/email/delete.js.map +1 -0
- package/dist/cmd/cloud/email/destination/delete.d.ts +3 -0
- package/dist/cmd/cloud/email/destination/delete.d.ts.map +1 -0
- package/dist/cmd/cloud/email/destination/delete.js +54 -0
- package/dist/cmd/cloud/email/destination/delete.js.map +1 -0
- package/dist/cmd/cloud/email/destination/index.d.ts +3 -0
- package/dist/cmd/cloud/email/destination/index.d.ts.map +1 -0
- package/dist/cmd/cloud/email/destination/index.js +14 -0
- package/dist/cmd/cloud/email/destination/index.js.map +1 -0
- package/dist/cmd/cloud/email/destination/list.d.ts +3 -0
- package/dist/cmd/cloud/email/destination/list.d.ts.map +1 -0
- package/dist/cmd/cloud/email/destination/list.js +39 -0
- package/dist/cmd/cloud/email/destination/list.js.map +1 -0
- package/dist/cmd/cloud/email/destination/schemas.d.ts +9 -0
- package/dist/cmd/cloud/email/destination/schemas.d.ts.map +1 -0
- package/dist/cmd/cloud/email/destination/schemas.js +9 -0
- package/dist/cmd/cloud/email/destination/schemas.js.map +1 -0
- package/dist/cmd/cloud/email/destination/url.d.ts +3 -0
- package/dist/cmd/cloud/email/destination/url.d.ts.map +1 -0
- package/dist/cmd/cloud/email/destination/url.js +64 -0
- package/dist/cmd/cloud/email/destination/url.js.map +1 -0
- package/dist/cmd/cloud/email/get.d.ts +3 -0
- package/dist/cmd/cloud/email/get.d.ts.map +1 -0
- package/dist/cmd/cloud/email/get.js +43 -0
- package/dist/cmd/cloud/email/get.js.map +1 -0
- package/dist/cmd/cloud/email/inbound/get.d.ts +3 -0
- package/dist/cmd/cloud/email/inbound/get.d.ts.map +1 -0
- package/dist/cmd/cloud/email/inbound/get.js +44 -0
- package/dist/cmd/cloud/email/inbound/get.js.map +1 -0
- package/dist/cmd/cloud/email/inbound/index.d.ts +3 -0
- package/dist/cmd/cloud/email/inbound/index.d.ts.map +1 -0
- package/dist/cmd/cloud/email/inbound/index.js +12 -0
- package/dist/cmd/cloud/email/inbound/index.js.map +1 -0
- package/dist/cmd/cloud/email/inbound/list.d.ts +3 -0
- package/dist/cmd/cloud/email/inbound/list.d.ts.map +1 -0
- package/dist/cmd/cloud/email/inbound/list.js +43 -0
- package/dist/cmd/cloud/email/inbound/list.js.map +1 -0
- package/dist/cmd/cloud/email/inbound/schemas.d.ts +11 -0
- package/dist/cmd/cloud/email/inbound/schemas.d.ts.map +1 -0
- package/dist/cmd/cloud/email/inbound/schemas.js +11 -0
- package/dist/cmd/cloud/email/inbound/schemas.js.map +1 -0
- package/dist/cmd/cloud/email/index.d.ts +3 -0
- package/dist/cmd/cloud/email/index.d.ts.map +1 -0
- package/dist/cmd/cloud/email/index.js +28 -0
- package/dist/cmd/cloud/email/index.js.map +1 -0
- package/dist/cmd/cloud/email/list.d.ts +3 -0
- package/dist/cmd/cloud/email/list.d.ts.map +1 -0
- package/dist/cmd/cloud/email/list.js +37 -0
- package/dist/cmd/cloud/email/list.js.map +1 -0
- package/dist/cmd/cloud/email/outbound/get.d.ts +3 -0
- package/dist/cmd/cloud/email/outbound/get.d.ts.map +1 -0
- package/dist/cmd/cloud/email/outbound/get.js +45 -0
- package/dist/cmd/cloud/email/outbound/get.js.map +1 -0
- package/dist/cmd/cloud/email/outbound/index.d.ts +3 -0
- package/dist/cmd/cloud/email/outbound/index.d.ts.map +1 -0
- package/dist/cmd/cloud/email/outbound/index.js +12 -0
- package/dist/cmd/cloud/email/outbound/index.js.map +1 -0
- package/dist/cmd/cloud/email/outbound/list.d.ts +3 -0
- package/dist/cmd/cloud/email/outbound/list.d.ts.map +1 -0
- package/dist/cmd/cloud/email/outbound/list.js +43 -0
- package/dist/cmd/cloud/email/outbound/list.js.map +1 -0
- package/dist/cmd/cloud/email/outbound/schemas.d.ts +15 -0
- package/dist/cmd/cloud/email/outbound/schemas.d.ts.map +1 -0
- package/dist/cmd/cloud/email/outbound/schemas.js +15 -0
- package/dist/cmd/cloud/email/outbound/schemas.js.map +1 -0
- package/dist/cmd/cloud/email/send.d.ts +3 -0
- package/dist/cmd/cloud/email/send.d.ts.map +1 -0
- package/dist/cmd/cloud/email/send.js +77 -0
- package/dist/cmd/cloud/email/send.js.map +1 -0
- package/dist/cmd/cloud/email/util.d.ts +26 -0
- package/dist/cmd/cloud/email/util.d.ts.map +1 -0
- package/dist/cmd/cloud/email/util.js +57 -0
- package/dist/cmd/cloud/email/util.js.map +1 -0
- package/dist/cmd/cloud/index.d.ts.map +1 -1
- package/dist/cmd/cloud/index.js +8 -0
- package/dist/cmd/cloud/index.js.map +1 -1
- package/dist/cmd/cloud/region-lookup.d.ts +1 -1
- package/dist/cmd/cloud/region-lookup.d.ts.map +1 -1
- package/dist/cmd/cloud/region-lookup.js +44 -2
- package/dist/cmd/cloud/region-lookup.js.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/build.d.ts +7 -0
- package/dist/cmd/cloud/sandbox/snapshot/build.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/build.js +46 -28
- package/dist/cmd/cloud/sandbox/snapshot/build.js.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/generate.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/generate.js +5 -1
- package/dist/cmd/cloud/sandbox/snapshot/generate.js.map +1 -1
- package/dist/cmd/cloud/schedule/create.d.ts +3 -0
- package/dist/cmd/cloud/schedule/create.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/create.js +72 -0
- package/dist/cmd/cloud/schedule/create.js.map +1 -0
- package/dist/cmd/cloud/schedule/delete.d.ts +3 -0
- package/dist/cmd/cloud/schedule/delete.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/delete.js +38 -0
- package/dist/cmd/cloud/schedule/delete.js.map +1 -0
- package/dist/cmd/cloud/schedule/delivery/get.d.ts +3 -0
- package/dist/cmd/cloud/schedule/delivery/get.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/delivery/get.js +78 -0
- package/dist/cmd/cloud/schedule/delivery/get.js.map +1 -0
- package/dist/cmd/cloud/schedule/delivery/index.d.ts +3 -0
- package/dist/cmd/cloud/schedule/delivery/index.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/delivery/index.js +23 -0
- package/dist/cmd/cloud/schedule/delivery/index.js.map +1 -0
- package/dist/cmd/cloud/schedule/delivery/list.d.ts +3 -0
- package/dist/cmd/cloud/schedule/delivery/list.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/delivery/list.js +67 -0
- package/dist/cmd/cloud/schedule/delivery/list.js.map +1 -0
- package/dist/cmd/cloud/schedule/destination/create.d.ts +3 -0
- package/dist/cmd/cloud/schedule/destination/create.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/destination/create.js +97 -0
- package/dist/cmd/cloud/schedule/destination/create.js.map +1 -0
- package/dist/cmd/cloud/schedule/destination/delete.d.ts +3 -0
- package/dist/cmd/cloud/schedule/destination/delete.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/destination/delete.js +41 -0
- package/dist/cmd/cloud/schedule/destination/delete.js.map +1 -0
- package/dist/cmd/cloud/schedule/destination/get.d.ts +3 -0
- package/dist/cmd/cloud/schedule/destination/get.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/destination/get.js +57 -0
- package/dist/cmd/cloud/schedule/destination/get.js.map +1 -0
- package/dist/cmd/cloud/schedule/destination/index.d.ts +3 -0
- package/dist/cmd/cloud/schedule/destination/index.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/destination/index.js +26 -0
- package/dist/cmd/cloud/schedule/destination/index.js.map +1 -0
- package/dist/cmd/cloud/schedule/destination/list.d.ts +3 -0
- package/dist/cmd/cloud/schedule/destination/list.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/destination/list.js +58 -0
- package/dist/cmd/cloud/schedule/destination/list.js.map +1 -0
- package/dist/cmd/cloud/schedule/get.d.ts +3 -0
- package/dist/cmd/cloud/schedule/get.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/get.js +76 -0
- package/dist/cmd/cloud/schedule/get.js.map +1 -0
- package/dist/cmd/cloud/schedule/index.d.ts +3 -0
- package/dist/cmd/cloud/schedule/index.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/index.js +35 -0
- package/dist/cmd/cloud/schedule/index.js.map +1 -0
- package/dist/cmd/cloud/schedule/list.d.ts +3 -0
- package/dist/cmd/cloud/schedule/list.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/list.js +60 -0
- package/dist/cmd/cloud/schedule/list.js.map +1 -0
- package/dist/cmd/cloud/schedule/update.d.ts +3 -0
- package/dist/cmd/cloud/schedule/update.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/update.js +65 -0
- package/dist/cmd/cloud/schedule/update.js.map +1 -0
- package/dist/cmd/cloud/schedule/util.d.ts +11 -0
- package/dist/cmd/cloud/schedule/util.d.ts.map +1 -0
- package/dist/cmd/cloud/schedule/util.js +17 -0
- package/dist/cmd/cloud/schedule/util.js.map +1 -0
- package/dist/cmd/cloud/task/create.d.ts +3 -0
- package/dist/cmd/cloud/task/create.d.ts.map +1 -0
- package/dist/cmd/cloud/task/create.js +108 -0
- package/dist/cmd/cloud/task/create.js.map +1 -0
- package/dist/cmd/cloud/task/get.d.ts +3 -0
- package/dist/cmd/cloud/task/get.d.ts.map +1 -0
- package/dist/cmd/cloud/task/get.js +124 -0
- package/dist/cmd/cloud/task/get.js.map +1 -0
- package/dist/cmd/cloud/task/index.d.ts +3 -0
- package/dist/cmd/cloud/task/index.d.ts.map +1 -0
- package/dist/cmd/cloud/task/index.js +33 -0
- package/dist/cmd/cloud/task/index.js.map +1 -0
- package/dist/cmd/cloud/task/list.d.ts +3 -0
- package/dist/cmd/cloud/task/list.d.ts.map +1 -0
- package/dist/cmd/cloud/task/list.js +174 -0
- package/dist/cmd/cloud/task/list.js.map +1 -0
- package/dist/cmd/cloud/task/update.d.ts +3 -0
- package/dist/cmd/cloud/task/update.d.ts.map +1 -0
- package/dist/cmd/cloud/task/update.js +118 -0
- package/dist/cmd/cloud/task/update.js.map +1 -0
- package/dist/cmd/cloud/task/util.d.ts +18 -0
- package/dist/cmd/cloud/task/util.d.ts.map +1 -0
- package/dist/cmd/cloud/task/util.js +45 -0
- package/dist/cmd/cloud/task/util.js.map +1 -0
- package/dist/cmd/cloud/webhook/create.d.ts +3 -0
- package/dist/cmd/cloud/webhook/create.d.ts.map +1 -0
- package/dist/cmd/cloud/webhook/create.js +54 -0
- package/dist/cmd/cloud/webhook/create.js.map +1 -0
- package/dist/cmd/cloud/webhook/delete.d.ts +3 -0
- package/dist/cmd/cloud/webhook/delete.d.ts.map +1 -0
- package/dist/cmd/cloud/webhook/delete.js +50 -0
- package/dist/cmd/cloud/webhook/delete.js.map +1 -0
- package/dist/cmd/cloud/webhook/deliveries.d.ts +3 -0
- package/dist/cmd/cloud/webhook/deliveries.d.ts.map +1 -0
- package/dist/cmd/cloud/webhook/deliveries.js +123 -0
- package/dist/cmd/cloud/webhook/deliveries.js.map +1 -0
- package/dist/cmd/cloud/webhook/destinations.d.ts +3 -0
- package/dist/cmd/cloud/webhook/destinations.d.ts.map +1 -0
- package/dist/cmd/cloud/webhook/destinations.js +212 -0
- package/dist/cmd/cloud/webhook/destinations.js.map +1 -0
- package/dist/cmd/cloud/webhook/get.d.ts +3 -0
- package/dist/cmd/cloud/webhook/get.d.ts.map +1 -0
- package/dist/cmd/cloud/webhook/get.js +50 -0
- package/dist/cmd/cloud/webhook/get.js.map +1 -0
- package/dist/cmd/cloud/webhook/index.d.ts +3 -0
- package/dist/cmd/cloud/webhook/index.d.ts.map +1 -0
- package/dist/cmd/cloud/webhook/index.js +45 -0
- package/dist/cmd/cloud/webhook/index.js.map +1 -0
- package/dist/cmd/cloud/webhook/list.d.ts +3 -0
- package/dist/cmd/cloud/webhook/list.d.ts.map +1 -0
- package/dist/cmd/cloud/webhook/list.js +72 -0
- package/dist/cmd/cloud/webhook/list.js.map +1 -0
- package/dist/cmd/cloud/webhook/receipts.d.ts +3 -0
- package/dist/cmd/cloud/webhook/receipts.d.ts.map +1 -0
- package/dist/cmd/cloud/webhook/receipts.js +128 -0
- package/dist/cmd/cloud/webhook/receipts.js.map +1 -0
- package/dist/cmd/cloud/webhook/util.d.ts +27 -0
- package/dist/cmd/cloud/webhook/util.d.ts.map +1 -0
- package/dist/cmd/cloud/webhook/util.js +20 -0
- package/dist/cmd/cloud/webhook/util.js.map +1 -0
- package/dist/config.d.ts +8 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/types.d.ts +10 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +3 -2
- package/dist/types.js.map +1 -1
- package/dist/version-check.d.ts.map +1 -1
- package/dist/version-check.js +18 -3
- package/dist/version-check.js.map +1 -1
- package/package.json +6 -6
- package/src/auth.ts +7 -0
- package/src/cache/resource-region.ts +4 -1
- package/src/cmd/ai/claude-code/install.ts +0 -3
- package/src/cmd/build/vite/public-asset-path-plugin.ts +18 -4
- package/src/cmd/cloud/email/create.ts +70 -0
- package/src/cmd/cloud/email/delete.ts +53 -0
- package/src/cmd/cloud/email/destination/delete.ts +65 -0
- package/src/cmd/cloud/email/destination/index.ts +15 -0
- package/src/cmd/cloud/email/destination/list.ts +46 -0
- package/src/cmd/cloud/email/destination/schemas.ts +9 -0
- package/src/cmd/cloud/email/destination/url.ts +75 -0
- package/src/cmd/cloud/email/get.ts +52 -0
- package/src/cmd/cloud/email/inbound/get.ts +53 -0
- package/src/cmd/cloud/email/inbound/index.ts +13 -0
- package/src/cmd/cloud/email/inbound/list.ts +50 -0
- package/src/cmd/cloud/email/inbound/schemas.ts +11 -0
- package/src/cmd/cloud/email/index.ts +29 -0
- package/src/cmd/cloud/email/list.ts +44 -0
- package/src/cmd/cloud/email/outbound/get.ts +54 -0
- package/src/cmd/cloud/email/outbound/index.ts +13 -0
- package/src/cmd/cloud/email/outbound/list.ts +50 -0
- package/src/cmd/cloud/email/outbound/schemas.ts +15 -0
- package/src/cmd/cloud/email/send.ts +91 -0
- package/src/cmd/cloud/email/util.ts +89 -0
- package/src/cmd/cloud/index.ts +8 -0
- package/src/cmd/cloud/region-lookup.ts +58 -2
- package/src/cmd/cloud/sandbox/snapshot/build.ts +59 -55
- package/src/cmd/cloud/sandbox/snapshot/generate.ts +5 -1
- package/src/cmd/cloud/schedule/create.ts +83 -0
- package/src/cmd/cloud/schedule/delete.ts +43 -0
- package/src/cmd/cloud/schedule/delivery/get.ts +85 -0
- package/src/cmd/cloud/schedule/delivery/index.ts +24 -0
- package/src/cmd/cloud/schedule/delivery/list.ts +82 -0
- package/src/cmd/cloud/schedule/destination/create.ts +110 -0
- package/src/cmd/cloud/schedule/destination/delete.ts +46 -0
- package/src/cmd/cloud/schedule/destination/get.ts +66 -0
- package/src/cmd/cloud/schedule/destination/index.ts +27 -0
- package/src/cmd/cloud/schedule/destination/list.ts +72 -0
- package/src/cmd/cloud/schedule/get.ts +92 -0
- package/src/cmd/cloud/schedule/index.ts +36 -0
- package/src/cmd/cloud/schedule/list.ts +78 -0
- package/src/cmd/cloud/schedule/update.ts +74 -0
- package/src/cmd/cloud/schedule/util.ts +34 -0
- package/src/cmd/cloud/task/create.ts +124 -0
- package/src/cmd/cloud/task/get.ts +138 -0
- package/src/cmd/cloud/task/index.ts +34 -0
- package/src/cmd/cloud/task/list.ts +191 -0
- package/src/cmd/cloud/task/update.ts +123 -0
- package/src/cmd/cloud/task/util.ts +74 -0
- package/src/cmd/cloud/webhook/create.ts +66 -0
- package/src/cmd/cloud/webhook/delete.ts +57 -0
- package/src/cmd/cloud/webhook/deliveries.ts +149 -0
- package/src/cmd/cloud/webhook/destinations.ts +274 -0
- package/src/cmd/cloud/webhook/get.ts +59 -0
- package/src/cmd/cloud/webhook/index.ts +46 -0
- package/src/cmd/cloud/webhook/list.ts +82 -0
- package/src/cmd/cloud/webhook/receipts.ts +157 -0
- package/src/cmd/cloud/webhook/util.ts +35 -0
- package/src/types.ts +3 -1
- package/src/version-check.ts +22 -3
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { createCommand } from '../../../types';
|
|
3
|
+
import * as tui from '../../../tui';
|
|
4
|
+
import { createWebhookAPIClient, getWebhookApiOptions } from './util';
|
|
5
|
+
import { getCommand } from '../../../command-prefix';
|
|
6
|
+
import { listWebhooks, type Webhook } from '@agentuity/server';
|
|
7
|
+
|
|
8
|
+
const WebhookListResponseSchema = z.object({
|
|
9
|
+
webhooks: z.array(
|
|
10
|
+
z.object({
|
|
11
|
+
name: z.string(),
|
|
12
|
+
id: z.string(),
|
|
13
|
+
description: z.string().nullable().optional(),
|
|
14
|
+
created_at: z.string(),
|
|
15
|
+
})
|
|
16
|
+
),
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
export const listSubcommand = createCommand({
|
|
20
|
+
name: 'list',
|
|
21
|
+
aliases: ['ls'],
|
|
22
|
+
description: 'List all webhooks',
|
|
23
|
+
tags: ['read-only', 'fast', 'requires-auth'],
|
|
24
|
+
requires: { auth: true },
|
|
25
|
+
examples: [
|
|
26
|
+
{ command: getCommand('cloud webhook list'), description: 'List all webhooks' },
|
|
27
|
+
{ command: getCommand('cloud webhook ls'), description: 'List all webhooks (alias)' },
|
|
28
|
+
],
|
|
29
|
+
schema: {
|
|
30
|
+
args: z.object({}),
|
|
31
|
+
options: z.object({
|
|
32
|
+
orgId: z.string().optional().describe('Filter by organization ID'),
|
|
33
|
+
limit: z.coerce
|
|
34
|
+
.number()
|
|
35
|
+
.min(0)
|
|
36
|
+
.optional()
|
|
37
|
+
.describe('Maximum number of webhooks to return'),
|
|
38
|
+
offset: z.coerce.number().min(0).optional().describe('Offset for pagination'),
|
|
39
|
+
}),
|
|
40
|
+
response: WebhookListResponseSchema,
|
|
41
|
+
},
|
|
42
|
+
idempotent: true,
|
|
43
|
+
|
|
44
|
+
async handler(ctx) {
|
|
45
|
+
const { options, opts } = ctx;
|
|
46
|
+
const client = await createWebhookAPIClient(ctx);
|
|
47
|
+
const webhookOptions = opts?.orgId ? { orgId: opts.orgId } : getWebhookApiOptions(ctx);
|
|
48
|
+
const result = await listWebhooks(
|
|
49
|
+
client,
|
|
50
|
+
{
|
|
51
|
+
limit: opts.limit,
|
|
52
|
+
offset: opts.offset,
|
|
53
|
+
},
|
|
54
|
+
webhookOptions
|
|
55
|
+
);
|
|
56
|
+
|
|
57
|
+
if (!options.json) {
|
|
58
|
+
if (result.webhooks.length === 0) {
|
|
59
|
+
tui.info('No webhooks found');
|
|
60
|
+
} else {
|
|
61
|
+
const tableData = result.webhooks.map((w: Webhook) => ({
|
|
62
|
+
Name: w.name,
|
|
63
|
+
ID: w.id,
|
|
64
|
+
Description: w.description ?? '-',
|
|
65
|
+
Created: new Date(w.created_at).toLocaleString(),
|
|
66
|
+
}));
|
|
67
|
+
tui.table(tableData, ['Name', 'ID', 'Description', 'Created']);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
return {
|
|
72
|
+
webhooks: result.webhooks.map((w: Webhook) => ({
|
|
73
|
+
name: w.name,
|
|
74
|
+
id: w.id,
|
|
75
|
+
description: w.description,
|
|
76
|
+
created_at: w.created_at,
|
|
77
|
+
})),
|
|
78
|
+
};
|
|
79
|
+
},
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
export default listSubcommand;
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { createCommand, createSubcommand } from '../../../types';
|
|
3
|
+
import * as tui from '../../../tui';
|
|
4
|
+
import { createWebhookAPIClient, getWebhookApiOptions } from './util';
|
|
5
|
+
import { getCommand } from '../../../command-prefix';
|
|
6
|
+
import {
|
|
7
|
+
listWebhookReceipts,
|
|
8
|
+
getWebhookReceipt,
|
|
9
|
+
WebhookReceiptSchema,
|
|
10
|
+
type WebhookReceipt,
|
|
11
|
+
} from '@agentuity/server';
|
|
12
|
+
|
|
13
|
+
const ReceiptsListResponseSchema = z.object({
|
|
14
|
+
receipts: z.array(
|
|
15
|
+
z.object({
|
|
16
|
+
id: z.string(),
|
|
17
|
+
date: z.string(),
|
|
18
|
+
webhook_id: z.string(),
|
|
19
|
+
})
|
|
20
|
+
),
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
const listReceiptsSubcommand = createSubcommand({
|
|
24
|
+
name: 'list',
|
|
25
|
+
aliases: ['ls'],
|
|
26
|
+
description: 'List receipts for a webhook',
|
|
27
|
+
tags: ['read-only', 'fast', 'requires-auth'],
|
|
28
|
+
requires: { auth: true },
|
|
29
|
+
examples: [
|
|
30
|
+
{
|
|
31
|
+
command: getCommand('cloud webhook receipts list wh_abc123'),
|
|
32
|
+
description: 'List webhook receipts',
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
schema: {
|
|
36
|
+
args: z.object({
|
|
37
|
+
webhook_id: z.string().min(1).describe('Webhook ID'),
|
|
38
|
+
}),
|
|
39
|
+
options: z.object({
|
|
40
|
+
limit: z.coerce
|
|
41
|
+
.number()
|
|
42
|
+
.min(0)
|
|
43
|
+
.optional()
|
|
44
|
+
.describe('Maximum number of receipts to return'),
|
|
45
|
+
offset: z.coerce.number().min(0).optional().describe('Offset for pagination'),
|
|
46
|
+
}),
|
|
47
|
+
response: ReceiptsListResponseSchema,
|
|
48
|
+
},
|
|
49
|
+
idempotent: true,
|
|
50
|
+
|
|
51
|
+
async handler(ctx) {
|
|
52
|
+
const { args, opts, options } = ctx;
|
|
53
|
+
const client = await createWebhookAPIClient(ctx);
|
|
54
|
+
const result = await listWebhookReceipts(
|
|
55
|
+
client,
|
|
56
|
+
args.webhook_id,
|
|
57
|
+
{
|
|
58
|
+
limit: opts.limit,
|
|
59
|
+
offset: opts.offset,
|
|
60
|
+
},
|
|
61
|
+
getWebhookApiOptions(ctx)
|
|
62
|
+
);
|
|
63
|
+
|
|
64
|
+
if (!options.json) {
|
|
65
|
+
if (result.receipts.length === 0) {
|
|
66
|
+
tui.info('No receipts found');
|
|
67
|
+
} else {
|
|
68
|
+
const tableData = result.receipts.map((r: WebhookReceipt) => ({
|
|
69
|
+
ID: r.id,
|
|
70
|
+
Date: new Date(r.date).toLocaleString(),
|
|
71
|
+
'Webhook ID': r.webhook_id,
|
|
72
|
+
}));
|
|
73
|
+
tui.table(tableData, ['ID', 'Date', 'Webhook ID']);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
return {
|
|
78
|
+
receipts: result.receipts.map((r: WebhookReceipt) => ({
|
|
79
|
+
id: r.id,
|
|
80
|
+
date: r.date,
|
|
81
|
+
webhook_id: r.webhook_id,
|
|
82
|
+
})),
|
|
83
|
+
};
|
|
84
|
+
},
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
const getReceiptSubcommand = createSubcommand({
|
|
88
|
+
name: 'get',
|
|
89
|
+
description: 'Get receipt details',
|
|
90
|
+
tags: ['read-only', 'fast', 'requires-auth'],
|
|
91
|
+
requires: { auth: true },
|
|
92
|
+
examples: [
|
|
93
|
+
{
|
|
94
|
+
command: getCommand('cloud webhook receipts get wh_abc123 whrc_def456'),
|
|
95
|
+
description: 'Get receipt details',
|
|
96
|
+
},
|
|
97
|
+
],
|
|
98
|
+
schema: {
|
|
99
|
+
args: z.object({
|
|
100
|
+
webhook_id: z.string().min(1).describe('Webhook ID'),
|
|
101
|
+
receipt_id: z.string().min(1).describe('Receipt ID'),
|
|
102
|
+
}),
|
|
103
|
+
response: WebhookReceiptSchema,
|
|
104
|
+
},
|
|
105
|
+
idempotent: true,
|
|
106
|
+
|
|
107
|
+
async handler(ctx) {
|
|
108
|
+
const { args, options } = ctx;
|
|
109
|
+
const client = await createWebhookAPIClient(ctx);
|
|
110
|
+
const receipt = await getWebhookReceipt(
|
|
111
|
+
client,
|
|
112
|
+
args.webhook_id,
|
|
113
|
+
args.receipt_id,
|
|
114
|
+
getWebhookApiOptions(ctx)
|
|
115
|
+
);
|
|
116
|
+
|
|
117
|
+
if (!options.json) {
|
|
118
|
+
const details: Record<string, unknown> = {
|
|
119
|
+
ID: receipt.id,
|
|
120
|
+
Date: new Date(receipt.date).toLocaleString(),
|
|
121
|
+
'Webhook ID': receipt.webhook_id,
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
tui.table([details], undefined, { layout: 'vertical' });
|
|
125
|
+
|
|
126
|
+
tui.newline();
|
|
127
|
+
tui.info('Headers');
|
|
128
|
+
tui.json(receipt.headers);
|
|
129
|
+
|
|
130
|
+
tui.newline();
|
|
131
|
+
tui.info('Payload');
|
|
132
|
+
tui.json(receipt.payload);
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
return receipt;
|
|
136
|
+
},
|
|
137
|
+
});
|
|
138
|
+
|
|
139
|
+
export const receiptsSubcommand = createCommand({
|
|
140
|
+
name: 'receipts',
|
|
141
|
+
description: 'Manage webhook receipts',
|
|
142
|
+
tags: ['requires-auth'],
|
|
143
|
+
requires: { auth: true },
|
|
144
|
+
examples: [
|
|
145
|
+
{
|
|
146
|
+
command: getCommand('cloud webhook receipts list wh_abc123'),
|
|
147
|
+
description: 'List receipts',
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
command: getCommand('cloud webhook receipts get wh_abc123 whrc_def456'),
|
|
151
|
+
description: 'Get receipt details',
|
|
152
|
+
},
|
|
153
|
+
],
|
|
154
|
+
subcommands: [listReceiptsSubcommand, getReceiptSubcommand],
|
|
155
|
+
});
|
|
156
|
+
|
|
157
|
+
export default receiptsSubcommand;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { Logger } from '@agentuity/core';
|
|
2
|
+
import { APIClient, type WebhookApiOptions } from '@agentuity/server';
|
|
3
|
+
import { getGlobalCatalystAPIClient } from '../../../config';
|
|
4
|
+
import type { AuthData, Config, GlobalOptions } from '../../../types';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Context required for webhook API operations.
|
|
8
|
+
*/
|
|
9
|
+
export interface WebhookContext {
|
|
10
|
+
logger: Logger;
|
|
11
|
+
auth: AuthData;
|
|
12
|
+
config: Config | null;
|
|
13
|
+
options: GlobalOptions;
|
|
14
|
+
orgId?: string;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Creates an API client for webhook operations.
|
|
19
|
+
*
|
|
20
|
+
* Webhooks are global resources that don't require a project context.
|
|
21
|
+
* Uses the global Catalyst API client with user authentication.
|
|
22
|
+
*/
|
|
23
|
+
export async function createWebhookAPIClient(ctx: WebhookContext): Promise<APIClient> {
|
|
24
|
+
return getGlobalCatalystAPIClient(ctx.logger, ctx.auth, ctx.config?.name);
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Creates WebhookApiOptions from the CLI context.
|
|
29
|
+
* Prioritizes explicit orgId on context, then falls back to global --org-id option,
|
|
30
|
+
* and finally to the preferred org from the profile configuration.
|
|
31
|
+
*/
|
|
32
|
+
export function getWebhookApiOptions(ctx: WebhookContext): WebhookApiOptions | undefined {
|
|
33
|
+
const orgId = ctx.orgId ?? ctx.options.orgId ?? ctx.config?.preferences?.orgId;
|
|
34
|
+
return orgId ? { orgId } : undefined;
|
|
35
|
+
}
|
package/src/types.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import type { Logger } from '@agentuity/core';
|
|
2
2
|
import {
|
|
3
3
|
DeploymentConfig,
|
|
4
|
+
ProjectBuildConfig,
|
|
4
5
|
BuildMetadataSchema as ServerBuildMetadataSchema,
|
|
5
6
|
} from '@agentuity/server';
|
|
6
7
|
import type * as z from 'zod';
|
|
7
8
|
import { z as zod } from 'zod';
|
|
8
9
|
import type { APIClient } from './api';
|
|
9
10
|
|
|
10
|
-
export { DeploymentConfig };
|
|
11
|
+
export { DeploymentConfig, ProjectBuildConfig };
|
|
11
12
|
|
|
12
13
|
export type { Logger };
|
|
13
14
|
|
|
@@ -720,6 +721,7 @@ export const ProjectSchema = zod.object({
|
|
|
720
721
|
orgId: zod.string().describe('the organization id'),
|
|
721
722
|
region: zod.string().describe('the region identifier that the project is deployed into'),
|
|
722
723
|
deployment: DeploymentConfig.optional().describe('the deployment configuration'),
|
|
724
|
+
build: ProjectBuildConfig.optional().describe('the CI/CD build configuration'),
|
|
723
725
|
skipGitSetup: zod
|
|
724
726
|
.boolean()
|
|
725
727
|
.optional()
|
package/src/version-check.ts
CHANGED
|
@@ -215,10 +215,29 @@ async function performUpgrade(logger: Logger, targetVersion: string): Promise<vo
|
|
|
215
215
|
// Exit with the same exit code as the new process
|
|
216
216
|
process.exit(proc.exitCode ?? 0);
|
|
217
217
|
} catch (error) {
|
|
218
|
-
|
|
219
|
-
logger.error('Upgrade failed: %s',
|
|
218
|
+
const errorMessage = error instanceof Error ? error.message : 'Unknown error';
|
|
219
|
+
logger.error('Upgrade failed: %s', errorMessage);
|
|
220
|
+
|
|
221
|
+
// Check for known bun package manager bug (oven-sh/bun#18354)
|
|
222
|
+
if (errorMessage.includes('BadPathName')) {
|
|
223
|
+
tui.newline();
|
|
224
|
+
tui.warning(
|
|
225
|
+
'This appears to be a known bun package manager issue with stale global packages.'
|
|
226
|
+
);
|
|
227
|
+
tui.info('To fix this, run one of the following:');
|
|
228
|
+
tui.newline();
|
|
229
|
+
tui.info(` ${tui.bold('Option 1:')} Clear stale packages and reinstall`);
|
|
230
|
+
tui.info(` ${tui.muted('$')} rm -rf ~/.bun/install/global`);
|
|
231
|
+
tui.info(` ${tui.muted('$')} bun add -g @agentuity/cli@latest`);
|
|
232
|
+
tui.newline();
|
|
233
|
+
tui.info(` ${tui.bold('Option 2:')} Use the install script`);
|
|
234
|
+
tui.info(` ${tui.muted('$')} curl -fsSL https://agentuity.sh | sh`);
|
|
235
|
+
tui.newline();
|
|
236
|
+
}
|
|
237
|
+
|
|
220
238
|
tui.warning('Continuing with current version...');
|
|
221
|
-
tui.info('');
|
|
239
|
+
tui.info('You can upgrade later by running: agentuity upgrade');
|
|
240
|
+
tui.newline();
|
|
222
241
|
}
|
|
223
242
|
}
|
|
224
243
|
|