@sente-labs/cli 0.8.1 → 0.9.0
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/commands/deployWebhook.js +94 -0
- package/dist/commands/deployWebhook.js.map +1 -0
- package/dist/commands/identity.js +74 -0
- package/dist/commands/identity.js.map +1 -0
- package/dist/commands/inbox.js +108 -0
- package/dist/commands/inbox.js.map +1 -0
- package/dist/commands/login.js +16 -70
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/task.js +8 -1
- package/dist/commands/task.js.map +1 -1
- package/dist/commands/webhook.js +70 -0
- package/dist/commands/webhook.js.map +1 -0
- package/dist/config.js +14 -1
- package/dist/config.js.map +1 -1
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/oauth.js +179 -0
- package/dist/oauth.js.map +1 -0
- package/dist/skill/SKILL.md +64 -191
- package/package.json +6 -7
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.registerDeployWebhookCommands = registerDeployWebhookCommands;
|
|
4
|
+
const client_1 = require("../client");
|
|
5
|
+
const config_1 = require("../config");
|
|
6
|
+
const output_1 = require("../output");
|
|
7
|
+
/**
|
|
8
|
+
* Resolve the target project id from `--project` or the repo's `.sente/config.json`.
|
|
9
|
+
* Throws a clear error if neither is available.
|
|
10
|
+
*/
|
|
11
|
+
function resolveProjectId(explicit) {
|
|
12
|
+
const projectId = explicit ?? (0, config_1.readLocalProjectId)();
|
|
13
|
+
if (!projectId) {
|
|
14
|
+
throw new Error('No project id found. Pass --project <projectId> or run `sente init` to create a .sente/config.json.');
|
|
15
|
+
}
|
|
16
|
+
return projectId;
|
|
17
|
+
}
|
|
18
|
+
function registerDeployWebhookCommands(program, globalOpts) {
|
|
19
|
+
const webhook = program
|
|
20
|
+
.command('deploy-webhook')
|
|
21
|
+
.description('Manage a project deploy webhook (fires runOnDeploy tasks when staging/prod deploys)');
|
|
22
|
+
webhook
|
|
23
|
+
.command('status')
|
|
24
|
+
.description('Show whether a deploy webhook secret exists, plus recent deploy events')
|
|
25
|
+
.option('--project <projectId>', 'Project id (overrides .sente/config.json)')
|
|
26
|
+
.action(async (cmdOpts) => {
|
|
27
|
+
const opts = globalOpts();
|
|
28
|
+
try {
|
|
29
|
+
const projectId = resolveProjectId(cmdOpts.project);
|
|
30
|
+
const client = new client_1.GatewayClient();
|
|
31
|
+
const res = await client.request(`/api/projects/${projectId}/deploy-webhook`);
|
|
32
|
+
(0, output_1.printSuccess)({ hasSecret: res.hasSecret, secretPrefix: res.secretPrefix, events: res.events }, () => {
|
|
33
|
+
process.stdout.write(res.hasSecret
|
|
34
|
+
? `Deploy webhook: configured (secret ${res.secretPrefix}…)\n`
|
|
35
|
+
: 'Deploy webhook: no secret set (PAT-authenticated deploy events only)\n');
|
|
36
|
+
if (res.events.length === 0) {
|
|
37
|
+
process.stdout.write('No recent deploy events.\n');
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
process.stdout.write('\nRecent deploy events:\n');
|
|
41
|
+
for (const e of res.events) {
|
|
42
|
+
const sha = e.commitSha ? e.commitSha.slice(0, 8) : '—';
|
|
43
|
+
const dedup = e.deduplicated ? ' (deduplicated)' : '';
|
|
44
|
+
process.stdout.write(` ${e.createdAt} ${e.environment.padEnd(10)} ${sha} ${e.triggeredTaskIds.length} task(s)${dedup}\n`);
|
|
45
|
+
}
|
|
46
|
+
}, opts);
|
|
47
|
+
}
|
|
48
|
+
catch (err) {
|
|
49
|
+
process.exit((0, output_1.printError)(err, opts));
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
webhook
|
|
53
|
+
.command('regenerate')
|
|
54
|
+
.description('Rotate (or create) the deploy webhook secret. Returns the raw value ONCE — copy it now.')
|
|
55
|
+
.option('--project <projectId>', 'Project id (overrides .sente/config.json)')
|
|
56
|
+
.action(async (cmdOpts) => {
|
|
57
|
+
const opts = globalOpts();
|
|
58
|
+
try {
|
|
59
|
+
const projectId = resolveProjectId(cmdOpts.project);
|
|
60
|
+
const client = new client_1.GatewayClient();
|
|
61
|
+
const res = await client.request(`/api/projects/${projectId}/deploy-webhook/regenerate`, { method: 'POST', body: {} });
|
|
62
|
+
(0, output_1.printSuccess)({ rawSecret: res.rawSecret, prefix: res.prefix }, () => {
|
|
63
|
+
process.stdout.write('Deploy webhook secret rotated. This is shown ONCE:\n\n');
|
|
64
|
+
process.stdout.write(` ${res.rawSecret}\n\n`);
|
|
65
|
+
process.stdout.write('Store it as a CI secret and send it as the X-Sente-Secret header when POSTing\n' +
|
|
66
|
+
`to /api/projects/${projectId}/deploy-events after each deploy.\n`);
|
|
67
|
+
}, opts);
|
|
68
|
+
// In human mode, nudge the operator that the value won't be retrievable later.
|
|
69
|
+
if (!(0, output_1.isJson)(opts)) {
|
|
70
|
+
process.stderr.write('\nThe raw secret is not stored and cannot be retrieved again.\n');
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
catch (err) {
|
|
74
|
+
process.exit((0, output_1.printError)(err, opts));
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
webhook
|
|
78
|
+
.command('clear')
|
|
79
|
+
.description('Clear the deploy webhook secret (after this, only PAT-authenticated deploy events are accepted)')
|
|
80
|
+
.option('--project <projectId>', 'Project id (overrides .sente/config.json)')
|
|
81
|
+
.action(async (cmdOpts) => {
|
|
82
|
+
const opts = globalOpts();
|
|
83
|
+
try {
|
|
84
|
+
const projectId = resolveProjectId(cmdOpts.project);
|
|
85
|
+
const client = new client_1.GatewayClient();
|
|
86
|
+
await client.request(`/api/projects/${projectId}/deploy-webhook`, { method: 'DELETE' });
|
|
87
|
+
(0, output_1.printSuccess)({ ok: true, projectId }, `Cleared deploy webhook secret for project ${projectId}.`, opts);
|
|
88
|
+
}
|
|
89
|
+
catch (err) {
|
|
90
|
+
process.exit((0, output_1.printError)(err, opts));
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=deployWebhook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployWebhook.js","sourceRoot":"","sources":["../../src/commands/deployWebhook.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.registerIdentityCommands = registerIdentityCommands;
|
|
4
|
+
const client_1 = require("../client");
|
|
5
|
+
const output_1 = require("../output");
|
|
6
|
+
/**
|
|
7
|
+
* `sente identity …` — manage the agent's managed email identities (AgentAccount).
|
|
8
|
+
* Targets the Sente API (`/v1/identities`) with the stored API key.
|
|
9
|
+
*/
|
|
10
|
+
function registerIdentityCommands(program, globalOpts) {
|
|
11
|
+
const identity = program.command('identity').description('Manage Sente email identities');
|
|
12
|
+
identity
|
|
13
|
+
.command('create')
|
|
14
|
+
.description('Create a managed email identity on agents.sente.run')
|
|
15
|
+
.option('--name <name>', "Display name (the agent's name)")
|
|
16
|
+
.option('--description <text>', 'Free-text purpose')
|
|
17
|
+
.option('--local-part <lp>', 'Choose the address before @ (default: random)')
|
|
18
|
+
.option('--on-conflict <mode>', 'If the local-part is taken: error (default) or suffix', 'error')
|
|
19
|
+
.action(async (cmdOpts) => {
|
|
20
|
+
const opts = globalOpts();
|
|
21
|
+
try {
|
|
22
|
+
const body = {};
|
|
23
|
+
if (cmdOpts.name)
|
|
24
|
+
body.name = cmdOpts.name;
|
|
25
|
+
if (cmdOpts.description)
|
|
26
|
+
body.description = cmdOpts.description;
|
|
27
|
+
if (cmdOpts.localPart)
|
|
28
|
+
body.localPart = cmdOpts.localPart;
|
|
29
|
+
if (cmdOpts.onConflict)
|
|
30
|
+
body.onConflict = cmdOpts.onConflict;
|
|
31
|
+
const idt = await new client_1.GatewayClient().request('/v1/identities', { method: 'POST', body });
|
|
32
|
+
(0, output_1.printSuccess)(idt, `Created identity ${idt.email} (${idt.id})`, opts);
|
|
33
|
+
}
|
|
34
|
+
catch (err) {
|
|
35
|
+
process.exit((0, output_1.printError)(err, opts));
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
identity
|
|
39
|
+
.command('list')
|
|
40
|
+
.description("List the organization's identities")
|
|
41
|
+
.action(async () => {
|
|
42
|
+
const opts = globalOpts();
|
|
43
|
+
try {
|
|
44
|
+
const rows = await new client_1.GatewayClient().request('/v1/identities');
|
|
45
|
+
(0, output_1.printSuccess)(rows, () => {
|
|
46
|
+
if (rows.length === 0) {
|
|
47
|
+
process.stdout.write('No identities yet. Create one with `sente identity create`.\n');
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
for (const r of rows) {
|
|
51
|
+
process.stdout.write(`${r.email} ${r.id}${r.name ? ` (${r.name})` : ''}\n`);
|
|
52
|
+
}
|
|
53
|
+
}, opts);
|
|
54
|
+
}
|
|
55
|
+
catch (err) {
|
|
56
|
+
process.exit((0, output_1.printError)(err, opts));
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
identity
|
|
60
|
+
.command('show')
|
|
61
|
+
.description('Show one identity')
|
|
62
|
+
.argument('<id>', 'identity id')
|
|
63
|
+
.action(async (id) => {
|
|
64
|
+
const opts = globalOpts();
|
|
65
|
+
try {
|
|
66
|
+
const idt = await new client_1.GatewayClient().request(`/v1/identities/${id}`);
|
|
67
|
+
(0, output_1.printSuccess)(idt, () => process.stdout.write(`${idt.email}\n id: ${idt.id}\n name: ${idt.name ?? '-'}\n description: ${idt.description ?? '-'}\n`), opts);
|
|
68
|
+
}
|
|
69
|
+
catch (err) {
|
|
70
|
+
process.exit((0, output_1.printError)(err, opts));
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=identity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/commands/identity.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.registerInboxCommands = registerInboxCommands;
|
|
4
|
+
const node_child_process_1 = require("node:child_process");
|
|
5
|
+
const client_1 = require("../client");
|
|
6
|
+
const output_1 = require("../output");
|
|
7
|
+
function printMessages(msgs) {
|
|
8
|
+
if (msgs.length === 0) {
|
|
9
|
+
process.stdout.write('No messages.\n');
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
for (const m of msgs) {
|
|
13
|
+
const dir = m.direction === 'outbound' ? '→' : '←';
|
|
14
|
+
process.stdout.write(`${dir} ${m.fromAddr} "${m.subject ?? '(no subject)'}" ${m.createdAt} ${m.id}\n`);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* `sente inbox|wait|listen` — read and react to an identity's mail (AgentAccount).
|
|
19
|
+
* Targets the Sente API (`/v1/messages`) with the stored API key.
|
|
20
|
+
*/
|
|
21
|
+
function registerInboxCommands(program, globalOpts) {
|
|
22
|
+
program
|
|
23
|
+
.command('inbox')
|
|
24
|
+
.description("List an identity's recent messages (returns immediately)")
|
|
25
|
+
.requiredOption('--identity <id>', 'identity id')
|
|
26
|
+
.option('--since <ts>', 'only messages after this ISO timestamp')
|
|
27
|
+
.option('--direction <dir>', 'inbound | outbound')
|
|
28
|
+
.option('--limit <n>', 'max messages', '50')
|
|
29
|
+
.action(async (cmdOpts) => {
|
|
30
|
+
const opts = globalOpts();
|
|
31
|
+
try {
|
|
32
|
+
const msgs = await new client_1.GatewayClient().request('/v1/messages', {
|
|
33
|
+
query: {
|
|
34
|
+
identityId: cmdOpts.identity,
|
|
35
|
+
since: cmdOpts.since,
|
|
36
|
+
direction: cmdOpts.direction,
|
|
37
|
+
limit: cmdOpts.limit,
|
|
38
|
+
},
|
|
39
|
+
});
|
|
40
|
+
(0, output_1.printSuccess)(msgs, () => printMessages(msgs), opts);
|
|
41
|
+
}
|
|
42
|
+
catch (err) {
|
|
43
|
+
process.exit((0, output_1.printError)(err, opts));
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
program
|
|
47
|
+
.command('wait')
|
|
48
|
+
.description('Block until the next message arrives for an identity (long-poll)')
|
|
49
|
+
.requiredOption('--identity <id>', 'identity id')
|
|
50
|
+
.option('--since <ts>', 'wait for messages after this ISO timestamp')
|
|
51
|
+
.option('--timeout <s>', 'seconds to wait before giving up', '25')
|
|
52
|
+
.action(async (cmdOpts) => {
|
|
53
|
+
const opts = globalOpts();
|
|
54
|
+
try {
|
|
55
|
+
const msg = await new client_1.GatewayClient().request('/v1/messages/wait', {
|
|
56
|
+
query: { identityId: cmdOpts.identity, since: cmdOpts.since, timeout: cmdOpts.timeout },
|
|
57
|
+
});
|
|
58
|
+
if (!msg) {
|
|
59
|
+
if (!opts.json)
|
|
60
|
+
process.stderr.write('Timed out — no message.\n');
|
|
61
|
+
(0, output_1.printSuccess)(null, () => { }, opts);
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
(0, output_1.printSuccess)(msg, () => printMessages([msg]), opts);
|
|
65
|
+
}
|
|
66
|
+
catch (err) {
|
|
67
|
+
process.exit((0, output_1.printError)(err, opts));
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
program
|
|
71
|
+
.command('listen')
|
|
72
|
+
.description('Stream messages as they arrive (long-poll loop). Ctrl-C to stop.')
|
|
73
|
+
.requiredOption('--identity <id>', 'identity id')
|
|
74
|
+
.option('--since <ts>', 'start after this ISO timestamp')
|
|
75
|
+
.option('--exec <cmd>', 'run this shell command per message (message JSON on stdin)')
|
|
76
|
+
.action(async (cmdOpts) => {
|
|
77
|
+
const opts = globalOpts();
|
|
78
|
+
const client = new client_1.GatewayClient();
|
|
79
|
+
let since = cmdOpts.since;
|
|
80
|
+
process.stderr.write(`Listening on ${cmdOpts.identity}… (Ctrl-C to stop)\n`);
|
|
81
|
+
// Long-poll loop. Retry transient errors rather than dying — this is a daemon.
|
|
82
|
+
for (;;) {
|
|
83
|
+
let msg;
|
|
84
|
+
try {
|
|
85
|
+
msg = await client.request('/v1/messages/wait', {
|
|
86
|
+
query: { identityId: cmdOpts.identity, since, timeout: '25' },
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
catch (err) {
|
|
90
|
+
process.stderr.write(`(retrying in 3s: ${err.message})\n`);
|
|
91
|
+
await new Promise((r) => setTimeout(r, 3000));
|
|
92
|
+
continue;
|
|
93
|
+
}
|
|
94
|
+
if (!msg)
|
|
95
|
+
continue; // timeout → re-poll
|
|
96
|
+
const line = JSON.stringify(msg);
|
|
97
|
+
if (cmdOpts.exec) {
|
|
98
|
+
const child = (0, node_child_process_1.spawn)(cmdOpts.exec, { shell: true, stdio: ['pipe', 'inherit', 'inherit'] });
|
|
99
|
+
child.stdin.end(line + '\n');
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
process.stdout.write(line + '\n');
|
|
103
|
+
}
|
|
104
|
+
since = msg.createdAt;
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=inbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inbox.js","sourceRoot":"","sources":["../../src/commands/inbox.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/login.js
CHANGED
|
@@ -1,70 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
3
|
exports.runLoginFlow = runLoginFlow;
|
|
37
4
|
exports.registerLoginCommand = registerLoginCommand;
|
|
38
|
-
const readline = __importStar(require("readline"));
|
|
39
5
|
const client_1 = require("../client");
|
|
40
6
|
const credentials_1 = require("../credentials");
|
|
41
7
|
const config_1 = require("../config");
|
|
8
|
+
const oauth_1 = require("../oauth");
|
|
42
9
|
const output_1 = require("../output");
|
|
43
10
|
/**
|
|
44
|
-
*
|
|
45
|
-
*
|
|
11
|
+
* Login flow. Default: open the browser, sign in via Auth0 (same as app.sente.run), and
|
|
12
|
+
* mint + store a Sente API key automatically. Override: `--token` / `SENTE_API_TOKEN` (CI).
|
|
46
13
|
* Used both by `sente login` and by `sente init` when no credentials exist.
|
|
47
14
|
*
|
|
48
|
-
* Throws ApiError on
|
|
49
|
-
* via printError or treat as fatal).
|
|
15
|
+
* Throws ApiError on failure (the caller decides whether to surface or treat as fatal).
|
|
50
16
|
*/
|
|
51
17
|
async function runLoginFlow(opts = {}) {
|
|
52
|
-
let token = opts.token;
|
|
18
|
+
let token = opts.token?.trim();
|
|
53
19
|
if (!token) {
|
|
54
20
|
if (opts.nonInteractive || !process.stdin.isTTY) {
|
|
55
|
-
throw new client_1.ApiError(400, 'TOKEN_REQUIRED', '
|
|
21
|
+
throw new client_1.ApiError(400, 'TOKEN_REQUIRED', 'Not an interactive terminal. Set SENTE_API_TOKEN (CI) or run `sente login` in a terminal to sign in via the browser.');
|
|
56
22
|
}
|
|
57
|
-
|
|
58
|
-
token =
|
|
59
|
-
}
|
|
60
|
-
token = token.trim();
|
|
61
|
-
if (!token) {
|
|
62
|
-
throw new client_1.ApiError(400, 'TOKEN_REQUIRED', 'Token cannot be empty.');
|
|
23
|
+
const result = await (0, oauth_1.loginWithBrowser)();
|
|
24
|
+
token = result.token;
|
|
63
25
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
maxRetries: 1,
|
|
67
|
-
});
|
|
26
|
+
// Validate the key and fetch account context. The PAT is org-bound, so whoami needs no org header.
|
|
27
|
+
const client = new client_1.GatewayClient({ credentials: { token, gatewayUrl: (0, config_1.gatewayUrl)() }, maxRetries: 1 });
|
|
68
28
|
const me = await client.request('/api/cli/whoami');
|
|
69
29
|
const credentials = {
|
|
70
30
|
token,
|
|
@@ -77,15 +37,15 @@ async function runLoginFlow(opts = {}) {
|
|
|
77
37
|
return { credentials, whoami: me };
|
|
78
38
|
}
|
|
79
39
|
/**
|
|
80
|
-
*
|
|
81
|
-
*
|
|
40
|
+
* `sente login` — sign in via the browser (Auth0) and store a freshly-minted API key.
|
|
41
|
+
* `--token <pat>` uses an existing key instead (CI / advanced).
|
|
82
42
|
*/
|
|
83
43
|
function registerLoginCommand(program, globalOpts) {
|
|
84
44
|
program
|
|
85
45
|
.command('login')
|
|
86
|
-
.description('
|
|
87
|
-
.option('--token <token>', '
|
|
88
|
-
.option('--non-interactive', 'Fail rather than
|
|
46
|
+
.description('Sign in to Sente in your browser and store an API key (or pass --token for CI)')
|
|
47
|
+
.option('--token <token>', 'Use an existing API key instead of the browser flow (CI / advanced)')
|
|
48
|
+
.option('--non-interactive', 'Fail rather than open a browser')
|
|
89
49
|
.action(async (cmdOpts) => {
|
|
90
50
|
const opts = globalOpts();
|
|
91
51
|
try {
|
|
@@ -93,25 +53,11 @@ function registerLoginCommand(program, globalOpts) {
|
|
|
93
53
|
token: cmdOpts.token,
|
|
94
54
|
nonInteractive: cmdOpts.nonInteractive,
|
|
95
55
|
});
|
|
96
|
-
(0, output_1.printSuccess)({
|
|
97
|
-
ok: true,
|
|
98
|
-
user: me.user,
|
|
99
|
-
organization: me.organization,
|
|
100
|
-
token: me.token,
|
|
101
|
-
}, `Logged in as ${me.user.email ?? me.user.id} (${me.organization.name}, ${me.organization.role}). Token saved to ~/.sente/credentials.`, opts);
|
|
56
|
+
(0, output_1.printSuccess)({ ok: true, user: me.user, organization: me.organization }, `Logged in as ${me.user.email ?? me.user.id} (${me.organization.name}, ${me.organization.role}). Key saved to ~/.sente/credentials.`, opts);
|
|
102
57
|
}
|
|
103
58
|
catch (err) {
|
|
104
59
|
process.exit((0, output_1.printError)(err, opts));
|
|
105
60
|
}
|
|
106
61
|
});
|
|
107
62
|
}
|
|
108
|
-
function promptToken() {
|
|
109
|
-
return new Promise((resolve) => {
|
|
110
|
-
const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
|
|
111
|
-
rl.question('Paste your Sente PAT (sk_sente_...): ', (answer) => {
|
|
112
|
-
rl.close();
|
|
113
|
-
resolve(answer);
|
|
114
|
-
});
|
|
115
|
-
});
|
|
116
|
-
}
|
|
117
63
|
//# sourceMappingURL=login.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":";;AAiCA,oCA4BC;AAMD,oDAsBC;AAxFD,sCAAoD;AACpD,gDAA8D;AAC9D,sCAAuC;AACvC,oCAA4C;AAC5C,sCAAiE;AAqBjE;;;;;;GAMG;AACI,KAAK,UAAU,YAAY,CAAC,OAA4B,EAAE;IAC/D,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;IAE/B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YAChD,MAAM,IAAI,iBAAQ,CAChB,GAAG,EACH,gBAAgB,EAChB,sHAAsH,CACvH,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAA,wBAAgB,GAAE,CAAC;QACxC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IACvB,CAAC;IAED,mGAAmG;IACnG,MAAM,MAAM,GAAG,IAAI,sBAAa,CAAC,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,IAAA,mBAAU,GAAE,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;IACtG,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,OAAO,CAAiB,iBAAiB,CAAC,CAAC;IAEnE,MAAM,WAAW,GAAgB;QAC/B,KAAK;QACL,UAAU,EAAE,IAAA,mBAAU,GAAE;QACxB,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,SAAS;QACrC,cAAc,EAAE,EAAE,CAAC,YAAY,CAAC,EAAE;QAClC,gBAAgB,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI;KACvC,CAAC;IACF,IAAA,6BAAe,EAAC,WAAW,CAAC,CAAC;IAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;AACrC,CAAC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,OAAgB,EAAE,UAA4B;IACjF,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,gFAAgF,CAAC;SAC7F,MAAM,CAAC,iBAAiB,EAAE,qEAAqE,CAAC;SAChG,MAAM,CAAC,mBAAmB,EAAE,iCAAiC,CAAC;SAC9D,MAAM,CAAC,KAAK,EAAE,OAAqD,EAAE,EAAE;QACtE,MAAM,IAAI,GAAG,UAAU,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,YAAY,CAAC;gBACxC,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,cAAc,EAAE,OAAO,CAAC,cAAc;aACvC,CAAC,CAAC;YACH,IAAA,qBAAY,EACV,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC,YAAY,EAAE,EAC1D,gBAAgB,EAAE,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,YAAY,CAAC,IAAI,KAAK,EAAE,CAAC,YAAY,CAAC,IAAI,uCAAuC,EACpI,IAAI,CACL,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,IAAA,mBAAU,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;QACtC,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
|
package/dist/commands/task.js
CHANGED
|
@@ -171,6 +171,11 @@ function registerTaskCommands(program, globalOpts) {
|
|
|
171
171
|
.option('--instruction <text>', 'new instruction')
|
|
172
172
|
.option('--description <text>', 'new description')
|
|
173
173
|
.option('--steps-from <file>', 'replace steps with the JSON file contents')
|
|
174
|
+
// Mark this task as a critical flow that fires on a deploy webhook. `--no-on-deploy` unsets it.
|
|
175
|
+
// Commander folds `--on-deploy` / `--no-on-deploy` into a single `onDeploy` boolean; it stays
|
|
176
|
+
// undefined when neither is passed, so existing callers are unaffected.
|
|
177
|
+
.option('--on-deploy', 'run this task automatically on a deploy webhook (critical flow)')
|
|
178
|
+
.option('--no-on-deploy', 'stop running this task on a deploy webhook')
|
|
174
179
|
.action(async (taskId, cmdOpts) => {
|
|
175
180
|
const opts = globalOpts();
|
|
176
181
|
try {
|
|
@@ -183,8 +188,10 @@ function registerTaskCommands(program, globalOpts) {
|
|
|
183
188
|
body.description = cmdOpts.description;
|
|
184
189
|
if (cmdOpts.stepsFrom)
|
|
185
190
|
body.steps = readStepsFile(cmdOpts.stepsFrom);
|
|
191
|
+
if (cmdOpts.onDeploy !== undefined)
|
|
192
|
+
body.runOnDeploy = cmdOpts.onDeploy;
|
|
186
193
|
if (Object.keys(body).length === 0) {
|
|
187
|
-
throw new Error('No fields to update. Pass --name, --instruction, --description, or --
|
|
194
|
+
throw new Error('No fields to update. Pass --name, --instruction, --description, --steps-from, or --on-deploy.');
|
|
188
195
|
}
|
|
189
196
|
const client = new client_1.GatewayClient();
|
|
190
197
|
const res = await client.request(`/api/tasks/${taskId}`, { method: 'PUT', body });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/commands/task.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/commands/task.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.registerWebhookCommands = registerWebhookCommands;
|
|
4
|
+
const client_1 = require("../client");
|
|
5
|
+
const output_1 = require("../output");
|
|
6
|
+
/**
|
|
7
|
+
* `sente webhook …` — register YOUR endpoint so Sente pushes message events to it.
|
|
8
|
+
* Targets the Sente API (`/v1/webhooks`) with the stored API key.
|
|
9
|
+
*/
|
|
10
|
+
function registerWebhookCommands(program, globalOpts) {
|
|
11
|
+
const webhook = program.command('webhook').description('Manage Sente webhooks (push delivery)');
|
|
12
|
+
webhook
|
|
13
|
+
.command('register')
|
|
14
|
+
.description('Point Sente at your HTTPS endpoint (idempotent per url+identity)')
|
|
15
|
+
.requiredOption('--url <url>', 'your HTTPS endpoint')
|
|
16
|
+
.option('--identity <id>', 'scope to one identity (default: all of the org)')
|
|
17
|
+
.option('--events <list>', 'comma-separated events', 'message.received')
|
|
18
|
+
.action(async (cmdOpts) => {
|
|
19
|
+
const opts = globalOpts();
|
|
20
|
+
try {
|
|
21
|
+
const body = {
|
|
22
|
+
url: cmdOpts.url,
|
|
23
|
+
events: (cmdOpts.events ?? 'message.received').split(',').map((e) => e.trim()).filter(Boolean),
|
|
24
|
+
};
|
|
25
|
+
if (cmdOpts.identity)
|
|
26
|
+
body.identityId = cmdOpts.identity;
|
|
27
|
+
const w = await new client_1.GatewayClient().request('/v1/webhooks', { method: 'POST', body });
|
|
28
|
+
(0, output_1.printSuccess)(w, () => process.stdout.write(`Registered webhook ${w.id} → ${w.url}\nSecret: ${w.secret ?? '(unchanged)'}\nVerify the X-Sente-Secret header on each delivery.\n`), opts);
|
|
29
|
+
}
|
|
30
|
+
catch (err) {
|
|
31
|
+
process.exit((0, output_1.printError)(err, opts));
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
webhook
|
|
35
|
+
.command('list')
|
|
36
|
+
.description("List the organization's webhooks")
|
|
37
|
+
.action(async () => {
|
|
38
|
+
const opts = globalOpts();
|
|
39
|
+
try {
|
|
40
|
+
const rows = await new client_1.GatewayClient().request('/v1/webhooks');
|
|
41
|
+
(0, output_1.printSuccess)(rows, () => {
|
|
42
|
+
if (rows.length === 0) {
|
|
43
|
+
process.stdout.write('No webhooks. Register one with `sente webhook register --url <url>`.\n');
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
for (const w of rows) {
|
|
47
|
+
process.stdout.write(`${w.id} ${w.url} [${w.events.join(',')}]${w.identityId ? ` →${w.identityId}` : ''}\n`);
|
|
48
|
+
}
|
|
49
|
+
}, opts);
|
|
50
|
+
}
|
|
51
|
+
catch (err) {
|
|
52
|
+
process.exit((0, output_1.printError)(err, opts));
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
webhook
|
|
56
|
+
.command('delete')
|
|
57
|
+
.description('Delete a webhook')
|
|
58
|
+
.argument('<id>', 'webhook id')
|
|
59
|
+
.action(async (id) => {
|
|
60
|
+
const opts = globalOpts();
|
|
61
|
+
try {
|
|
62
|
+
await new client_1.GatewayClient().request(`/v1/webhooks/${id}`, { method: 'DELETE' });
|
|
63
|
+
(0, output_1.printSuccess)({ id, deleted: true }, `Deleted webhook ${id}`, opts);
|
|
64
|
+
}
|
|
65
|
+
catch (err) {
|
|
66
|
+
process.exit((0, output_1.printError)(err, opts));
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=webhook.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhook.js","sourceRoot":"","sources":["../../src/commands/webhook.ts"],"names":[],"mappings":"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"}
|