@getstackrun/cli 0.23.0 → 1.0.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/README.md +8 -1
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +76 -16
- package/dist/agent.js.map +1 -1
- package/dist/api.d.ts +18 -12
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +52 -17
- package/dist/api.js.map +1 -1
- package/dist/auth.d.ts +2 -0
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +46 -28
- package/dist/auth.js.map +1 -1
- package/dist/authority.d.ts +2 -0
- package/dist/authority.d.ts.map +1 -0
- package/dist/authority.js +63 -0
- package/dist/authority.js.map +1 -0
- package/dist/detectors.d.ts.map +1 -1
- package/dist/detectors.js +4 -3
- package/dist/detectors.js.map +1 -1
- package/dist/dropoffs.d.ts.map +1 -1
- package/dist/dropoffs.js +12 -4
- package/dist/dropoffs.js.map +1 -1
- package/dist/format.d.ts +0 -1
- package/dist/format.d.ts.map +1 -1
- package/dist/format.js +19 -0
- package/dist/format.js.map +1 -1
- package/dist/governance.d.ts +13 -0
- package/dist/governance.d.ts.map +1 -0
- package/dist/governance.js +69 -0
- package/dist/governance.js.map +1 -0
- package/dist/identity.d.ts.map +1 -1
- package/dist/identity.js +131 -1
- package/dist/identity.js.map +1 -1
- package/dist/inbound-webhooks.d.ts +3 -0
- package/dist/inbound-webhooks.d.ts.map +1 -1
- package/dist/inbound-webhooks.js +4 -1
- package/dist/inbound-webhooks.js.map +1 -1
- package/dist/index.js +39 -11
- package/dist/index.js.map +1 -1
- package/dist/intents.d.ts.map +1 -1
- package/dist/intents.js +25 -30
- package/dist/intents.js.map +1 -1
- package/dist/llm.d.ts +1 -0
- package/dist/llm.d.ts.map +1 -1
- package/dist/llm.js +20 -13
- package/dist/llm.js.map +1 -1
- package/dist/partner.d.ts.map +1 -1
- package/dist/partner.js +62 -0
- package/dist/partner.js.map +1 -1
- package/dist/passports.d.ts.map +1 -1
- package/dist/passports.js +67 -17
- package/dist/passports.js.map +1 -1
- package/dist/pii.d.ts +2 -0
- package/dist/pii.d.ts.map +1 -0
- package/dist/pii.js +95 -0
- package/dist/pii.js.map +1 -0
- package/dist/proxy-serve.d.ts.map +1 -1
- package/dist/proxy-serve.js +29 -14
- package/dist/proxy-serve.js.map +1 -1
- package/dist/quickstart.d.ts +17 -0
- package/dist/quickstart.d.ts.map +1 -1
- package/dist/quickstart.js +54 -8
- package/dist/quickstart.js.map +1 -1
- package/dist/secret-input.d.ts +3 -0
- package/dist/secret-input.d.ts.map +1 -0
- package/dist/secret-input.js +41 -0
- package/dist/secret-input.js.map +1 -0
- package/dist/services.d.ts +10 -0
- package/dist/services.d.ts.map +1 -1
- package/dist/services.js +152 -20
- package/dist/services.js.map +1 -1
- package/dist/setup.d.ts +11 -0
- package/dist/setup.d.ts.map +1 -0
- package/dist/setup.js +226 -0
- package/dist/setup.js.map +1 -0
- package/dist/usage.d.ts.map +1 -1
- package/dist/usage.js +45 -5
- package/dist/usage.js.map +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -39,11 +39,18 @@ STACK has three client surfaces. Pick by who is driving.
|
|
|
39
39
|
| --- | --- | --- | --- |
|
|
40
40
|
| **MCP** (`mcp.getstack.run`) | an LLM assistant (Claude Code, Cursor) | dev and setup, in natural language | auto-discovered `stack_*` tools over OAuth |
|
|
41
41
|
| **SDK** (`@getstackrun/sdk`, `getstack`) | the agent's own code | the runtime hot path | offline passport verification, in-process |
|
|
42
|
-
| **CLI** (`npx @getstackrun/cli`) | a human operator in a terminal | ops, scripts, CI |
|
|
42
|
+
| **CLI** (`npx @getstackrun/cli`) | a human operator in a terminal | ops, scripts, CI | routine operator actions + live audit tail; sensitive management commands require explicit OAuth scopes |
|
|
43
43
|
|
|
44
44
|
The three share one credential: `auth login` writes `~/.stack/credentials.json`,
|
|
45
45
|
and both SDKs read it. Sign in once, all three work.
|
|
46
46
|
|
|
47
|
+
The default CLI login does not grant account/team administration, raw
|
|
48
|
+
credential retrieval, billing writes, OAuth-app/CMEK changes, authority or
|
|
49
|
+
security-policy mutation, partner administration, or platform admin. For a
|
|
50
|
+
deliberate management session, set `STACK_OAUTH_SCOPE` to the exact scopes you
|
|
51
|
+
need and sign in again; refresh tokens preserve or narrow scope and cannot add
|
|
52
|
+
it later.
|
|
53
|
+
|
|
47
54
|
## Commands
|
|
48
55
|
|
|
49
56
|
`npx @getstackrun/cli --help` prints the full verb set: `agent`, `passport`,
|
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AA4MA,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA4C/F;AAKD,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEpE;AAiED,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,OAAO,CAAC,IAAI,CAAC,CA+Cf;AAqOD,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA6H5D"}
|
package/dist/agent.js
CHANGED
|
@@ -27,6 +27,7 @@ import { existsSync } from 'node:fs';
|
|
|
27
27
|
import { join } from 'node:path';
|
|
28
28
|
import { homedir } from 'node:os';
|
|
29
29
|
import { getAccessToken, invokeHint } from './auth.js';
|
|
30
|
+
import { governedApi } from './governance.js';
|
|
30
31
|
const API_URL = env['STACK_API_URL'] ?? 'https://api.getstack.run';
|
|
31
32
|
function keyPath(agentId) {
|
|
32
33
|
return join(homedir(), '.stack', 'agents', `${agentId}.json`);
|
|
@@ -340,9 +341,64 @@ function parseBoolFlag(flagName, value) {
|
|
|
340
341
|
stderr.write(`error: ${flagName} must be true or false (got "${String(value)}").\n`);
|
|
341
342
|
process.exit(2);
|
|
342
343
|
}
|
|
344
|
+
async function agentPolicyBody(args, allowRegistrationOnly) {
|
|
345
|
+
const fromFile = takeFlag(args, '--from-file');
|
|
346
|
+
let body = {};
|
|
347
|
+
if (typeof fromFile === 'string') {
|
|
348
|
+
const parsed = JSON.parse(await readFile(fromFile, 'utf8'));
|
|
349
|
+
if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
|
|
350
|
+
stderr.write('error: --from-file must contain one JSON object.\n');
|
|
351
|
+
process.exit(2);
|
|
352
|
+
}
|
|
353
|
+
body = { ...parsed };
|
|
354
|
+
}
|
|
355
|
+
const stringFlags = [
|
|
356
|
+
['--accountability-mode', 'accountability_mode'],
|
|
357
|
+
['--on-warning', 'on_warning'],
|
|
358
|
+
['--on-critical', 'on_critical'],
|
|
359
|
+
['--credential-access', 'credential_access'],
|
|
360
|
+
['--skill-access-mode', 'skill_access_mode'],
|
|
361
|
+
['--twin-policy', 'twin_policy'],
|
|
362
|
+
['--twin-llm-model', 'twin_llm_model'],
|
|
363
|
+
['--icon-url', 'icon_url'],
|
|
364
|
+
];
|
|
365
|
+
if (allowRegistrationOnly)
|
|
366
|
+
stringFlags.push(['--key-mode', 'key_mode']);
|
|
367
|
+
for (const [flag, field] of stringFlags) {
|
|
368
|
+
const value = takeFlag(args, flag);
|
|
369
|
+
if (typeof value === 'string')
|
|
370
|
+
body[field] = value;
|
|
371
|
+
}
|
|
372
|
+
const csvFlags = [['--allowed-skills', 'allowed_skills']];
|
|
373
|
+
if (!allowRegistrationOnly)
|
|
374
|
+
csvFlags.push(['--identity-claims', 'identity_claim_ids']);
|
|
375
|
+
for (const [flag, field] of csvFlags) {
|
|
376
|
+
const value = takeFlag(args, flag);
|
|
377
|
+
if (typeof value === 'string') {
|
|
378
|
+
body[field] = value.split(',').map((item) => item.trim()).filter(Boolean);
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
const boolFlags = [
|
|
382
|
+
['--synthetic', 'is_synthetic'],
|
|
383
|
+
['--llm-inject-system-prompt', 'llm_inject_system_prompt'],
|
|
384
|
+
['--llm-redact-pii', 'llm_redact_pii'],
|
|
385
|
+
];
|
|
386
|
+
if (!allowRegistrationOnly)
|
|
387
|
+
boolFlags.push(['--eval-traffic', 'eval_traffic']);
|
|
388
|
+
for (const [flag, field] of boolFlags) {
|
|
389
|
+
const value = parseBoolFlag(flag, takeFlag(args, flag));
|
|
390
|
+
if (value !== undefined)
|
|
391
|
+
body[field] = value;
|
|
392
|
+
}
|
|
393
|
+
if (args.includes('--clear-twin-llm-model'))
|
|
394
|
+
body['twin_llm_model'] = null;
|
|
395
|
+
if (args.includes('--clear-icon'))
|
|
396
|
+
body['icon_url'] = null;
|
|
397
|
+
return body;
|
|
398
|
+
}
|
|
343
399
|
const PII_REDACTION_OFF_WARNING = ' warning: PII redaction disabled — user-message PII flows to the LLM provider unredacted\n';
|
|
344
|
-
async function cmdAgentRegister(name, description, keyMode, credentialAccess, profile, llmInjectSystemPrompt, llmRedactPii, json) {
|
|
345
|
-
const body = { name };
|
|
400
|
+
async function cmdAgentRegister(name, description, keyMode, credentialAccess, profile, llmInjectSystemPrompt, llmRedactPii, policyBody, json) {
|
|
401
|
+
const body = { ...policyBody, name };
|
|
346
402
|
if (description)
|
|
347
403
|
body.description = description;
|
|
348
404
|
if (profile) {
|
|
@@ -379,7 +435,9 @@ async function cmdAgentRegister(name, description, keyMode, credentialAccess, pr
|
|
|
379
435
|
const notes = [
|
|
380
436
|
profile ? profile : null,
|
|
381
437
|
keyMode && keyMode !== 'stack_managed' ? keyMode : null,
|
|
382
|
-
|
|
438
|
+
// GET-267 — the default is now proxy_only, so what is worth surfacing in
|
|
439
|
+
// the note is a value that LOOSENS it (direct / proxy_preferred).
|
|
440
|
+
credentialAccess && credentialAccess !== 'proxy_only' ? credentialAccess : null,
|
|
383
441
|
llmInjectSystemPrompt === false ? 'llm_inject_system_prompt=false' : null,
|
|
384
442
|
llmRedactPii === false ? 'llm_redact_pii=false' : null,
|
|
385
443
|
].filter(Boolean);
|
|
@@ -404,8 +462,8 @@ async function cmdAgentSuspend(nameOrId, status, json) {
|
|
|
404
462
|
// LLM-gateway toggles). Same explicit-value idiom as
|
|
405
463
|
// `identity update-settings --auto-revoke true|false`. Suspend/unsuspend
|
|
406
464
|
// stay dedicated verbs; this verb carries the settings PATCH surface.
|
|
407
|
-
async function cmdAgentUpdate(nameOrId, llmInjectSystemPrompt, llmRedactPii, json) {
|
|
408
|
-
const body = {};
|
|
465
|
+
async function cmdAgentUpdate(nameOrId, llmInjectSystemPrompt, llmRedactPii, policyBody, json) {
|
|
466
|
+
const body = { ...policyBody };
|
|
409
467
|
if (llmInjectSystemPrompt !== undefined)
|
|
410
468
|
body.llm_inject_system_prompt = llmInjectSystemPrompt;
|
|
411
469
|
if (llmRedactPii !== undefined)
|
|
@@ -437,7 +495,7 @@ async function cmdAgentDelete(nameOrId, json) {
|
|
|
437
495
|
async function cmdAgentUnblock(nameOrId, json) {
|
|
438
496
|
const token = await bearer();
|
|
439
497
|
const agent = await resolveAgent(nameOrId, token);
|
|
440
|
-
const result = await
|
|
498
|
+
const result = await governedApi('POST', `/v1/agents/${agent.id}/unblock`, { body: {} });
|
|
441
499
|
if (json)
|
|
442
500
|
return printJson(result);
|
|
443
501
|
stdout.write(`unblocked ${agent.name} (${agent.id}) — it can issue passports again\n`);
|
|
@@ -471,26 +529,28 @@ export async function cmdAgent(args) {
|
|
|
471
529
|
}
|
|
472
530
|
if (sub === 'register') {
|
|
473
531
|
if (!target) {
|
|
474
|
-
stderr.write(`usage: ${invokeHint('agent register <name> [--profile proxied-llm-bot] [--description "..."]
|
|
532
|
+
stderr.write(`usage: ${invokeHint('agent register <name> [--from-file policy.json] [--profile proxied-llm-bot] [--description "..."]')}\n`);
|
|
475
533
|
process.exit(2);
|
|
476
534
|
}
|
|
477
535
|
const description = takeFlag(args, '--description');
|
|
478
|
-
const
|
|
479
|
-
const
|
|
536
|
+
const policyBody = await agentPolicyBody(args, true);
|
|
537
|
+
const keyMode = policyBody['key_mode'];
|
|
538
|
+
const credentialAccess = policyBody['credential_access'];
|
|
480
539
|
const profile = takeFlag(args, '--profile');
|
|
481
|
-
const llmInjectSystemPrompt =
|
|
482
|
-
const llmRedactPii =
|
|
483
|
-
await cmdAgentRegister(target, typeof description === 'string' ? description : undefined, typeof keyMode === 'string' ? keyMode : undefined, typeof credentialAccess === 'string' ? credentialAccess : undefined, typeof profile === 'string' ? profile : undefined, llmInjectSystemPrompt, llmRedactPii, json);
|
|
540
|
+
const llmInjectSystemPrompt = policyBody['llm_inject_system_prompt'];
|
|
541
|
+
const llmRedactPii = policyBody['llm_redact_pii'];
|
|
542
|
+
await cmdAgentRegister(target, typeof description === 'string' ? description : undefined, typeof keyMode === 'string' ? keyMode : undefined, typeof credentialAccess === 'string' ? credentialAccess : undefined, typeof profile === 'string' ? profile : undefined, llmInjectSystemPrompt, llmRedactPii, policyBody, json);
|
|
484
543
|
return;
|
|
485
544
|
}
|
|
486
545
|
if (sub === 'update') {
|
|
487
546
|
if (!target) {
|
|
488
|
-
stderr.write(`usage: ${invokeHint('agent update <name|id> [--
|
|
547
|
+
stderr.write(`usage: ${invokeHint('agent update <name|id> [--from-file policy.json] [policy flags...]')}\n`);
|
|
489
548
|
process.exit(2);
|
|
490
549
|
}
|
|
491
|
-
const
|
|
492
|
-
const
|
|
493
|
-
|
|
550
|
+
const policyBody = await agentPolicyBody(args, false);
|
|
551
|
+
const llmInjectSystemPrompt = policyBody['llm_inject_system_prompt'];
|
|
552
|
+
const llmRedactPii = policyBody['llm_redact_pii'];
|
|
553
|
+
await cmdAgentUpdate(target, llmInjectSystemPrompt, llmRedactPii, policyBody, json);
|
|
494
554
|
return;
|
|
495
555
|
}
|
|
496
556
|
if (sub === 'enroll') {
|
package/dist/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/api.d.ts
CHANGED
|
@@ -1,4 +1,20 @@
|
|
|
1
1
|
export declare const API_URL: string;
|
|
2
|
+
export type ApiMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
|
|
3
|
+
export interface ApiOptions {
|
|
4
|
+
body?: unknown;
|
|
5
|
+
query?: Record<string, string | number | undefined>;
|
|
6
|
+
expectEmpty?: boolean;
|
|
7
|
+
headers?: Record<string, string>;
|
|
8
|
+
}
|
|
9
|
+
export declare class ApiRequestError extends Error {
|
|
10
|
+
readonly status: number;
|
|
11
|
+
readonly method: ApiMethod;
|
|
12
|
+
readonly path: string;
|
|
13
|
+
readonly response: unknown;
|
|
14
|
+
constructor(status: number, method: ApiMethod, path: string, response: unknown);
|
|
15
|
+
get code(): string | undefined;
|
|
16
|
+
get details(): Record<string, unknown> | undefined;
|
|
17
|
+
}
|
|
2
18
|
/**
|
|
3
19
|
* Require an auth token or exit with a clear "not signed in" message.
|
|
4
20
|
* Most CLI commands gate on this; the few that don't (--demo style)
|
|
@@ -11,18 +27,8 @@ export declare function requireToken(): Promise<string>;
|
|
|
11
27
|
* Returns parsed JSON on success. On error: prints to stderr (with the
|
|
12
28
|
* actual API reason) and exits 1.
|
|
13
29
|
*/
|
|
14
|
-
export declare function
|
|
15
|
-
|
|
16
|
-
query?: Record<string, string | number | undefined>;
|
|
17
|
-
expectEmpty?: boolean;
|
|
18
|
-
/**
|
|
19
|
-
* Extra headers merged after Bearer auth + Content-Type. The
|
|
20
|
-
* caller cannot override Authorization (we set it last in the
|
|
21
|
-
* merge below). Used today for X-Passport-Token on proxy- and
|
|
22
|
-
* intent-flavoured commands.
|
|
23
|
-
*/
|
|
24
|
-
headers?: Record<string, string>;
|
|
25
|
-
}): Promise<T>;
|
|
30
|
+
export declare function requestApi<T = unknown>(method: ApiMethod, path: string, opts?: ApiOptions): Promise<T>;
|
|
31
|
+
export declare function api<T = unknown>(method: ApiMethod, path: string, opts?: ApiOptions): Promise<T>;
|
|
26
32
|
/**
|
|
27
33
|
* Pull a global flag value (e.g. --json, --limit 20) from an argv slice.
|
|
28
34
|
* Returns the value as a string (for `--key val` form) or true for
|
package/dist/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,OAAO,QAAqD,CAAC;AAE1E
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,OAAO,QAAqD,CAAC;AAE1E,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;AACpE,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC;IACpD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,qBAAa,eAAgB,SAAQ,KAAK;aAEtB,MAAM,EAAE,MAAM;aACd,MAAM,EAAE,SAAS;aACjB,IAAI,EAAE,MAAM;aACZ,QAAQ,EAAE,OAAO;gBAHjB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,OAAO;IAMnC,IAAI,IAAI,IAAI,MAAM,GAAG,SAAS,CAG7B;IAED,IAAI,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAKjD;CACF;AAED;;;;GAIG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAOpD;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,CAAC,GAAG,OAAO,EAC1C,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,UAAU,GAChB,OAAO,CAAC,CAAC,CAAC,CA0CZ;AAED,wBAAsB,GAAG,CAAC,CAAC,GAAG,OAAO,EACnC,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,UAAU,GAChB,OAAO,CAAC,CAAC,CAAC,CAqBZ;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAUnF;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYtE"}
|
package/dist/api.js
CHANGED
|
@@ -12,6 +12,30 @@
|
|
|
12
12
|
import { env, stderr, exit } from 'node:process';
|
|
13
13
|
import { getAccessToken, invokeHint, stringifyOAuthError } from './auth.js';
|
|
14
14
|
export const API_URL = env['STACK_API_URL'] ?? 'https://api.getstack.run';
|
|
15
|
+
export class ApiRequestError extends Error {
|
|
16
|
+
status;
|
|
17
|
+
method;
|
|
18
|
+
path;
|
|
19
|
+
response;
|
|
20
|
+
constructor(status, method, path, response) {
|
|
21
|
+
super(stringifyOAuthError(response));
|
|
22
|
+
this.status = status;
|
|
23
|
+
this.method = method;
|
|
24
|
+
this.path = path;
|
|
25
|
+
this.response = response;
|
|
26
|
+
this.name = 'ApiRequestError';
|
|
27
|
+
}
|
|
28
|
+
get code() {
|
|
29
|
+
const error = this.response?.error;
|
|
30
|
+
return typeof error?.code === 'string' ? error.code : undefined;
|
|
31
|
+
}
|
|
32
|
+
get details() {
|
|
33
|
+
const error = this.response?.error;
|
|
34
|
+
return error?.details && typeof error.details === 'object' && !Array.isArray(error.details)
|
|
35
|
+
? error.details
|
|
36
|
+
: undefined;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
15
39
|
/**
|
|
16
40
|
* Require an auth token or exit with a clear "not signed in" message.
|
|
17
41
|
* Most CLI commands gate on this; the few that don't (--demo style)
|
|
@@ -30,7 +54,7 @@ export async function requireToken() {
|
|
|
30
54
|
* Returns parsed JSON on success. On error: prints to stderr (with the
|
|
31
55
|
* actual API reason) and exits 1.
|
|
32
56
|
*/
|
|
33
|
-
export async function
|
|
57
|
+
export async function requestApi(method, path, opts) {
|
|
34
58
|
const token = await requireToken();
|
|
35
59
|
const url = new URL(`${API_URL}${path}`);
|
|
36
60
|
if (opts?.query) {
|
|
@@ -49,7 +73,7 @@ export async function api(method, path, opts) {
|
|
|
49
73
|
body = JSON.stringify(opts.body);
|
|
50
74
|
}
|
|
51
75
|
const res = await fetch(url.toString(), { method, headers, body });
|
|
52
|
-
if (res.status === 204
|
|
76
|
+
if (res.status === 204) {
|
|
53
77
|
return undefined;
|
|
54
78
|
}
|
|
55
79
|
const text = await res.text();
|
|
@@ -60,28 +84,39 @@ export async function api(method, path, opts) {
|
|
|
60
84
|
catch {
|
|
61
85
|
// Non-JSON body — probably an HTML error page from an intermediary.
|
|
62
86
|
if (!res.ok) {
|
|
63
|
-
|
|
64
|
-
exit(1);
|
|
87
|
+
throw new ApiRequestError(res.status, method, path, text.slice(0, 200));
|
|
65
88
|
}
|
|
66
89
|
return text;
|
|
67
90
|
}
|
|
68
91
|
if (!res.ok) {
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
// broken." The most fixable-by-the-operator cause is a read-only token —
|
|
74
|
-
// signed in before the write-scope default, or with STACK_OAUTH_SCOPE
|
|
75
|
-
// pinned to reads. Point them at the fix. (Generic string — never echoes
|
|
76
|
-
// the token or scope values.)
|
|
77
|
-
stderr.write(`hint: if this is a write command, your CLI token may be read-only.\n` +
|
|
78
|
-
` Re-run \`${invokeHint('auth login')}\` to mint a write-capable token,\n` +
|
|
79
|
-
` or unset STACK_OAUTH_SCOPE if you pinned it to read-only scopes.\n`);
|
|
80
|
-
}
|
|
81
|
-
exit(1);
|
|
92
|
+
throw new ApiRequestError(res.status, method, path, data);
|
|
93
|
+
}
|
|
94
|
+
if (opts?.expectEmpty) {
|
|
95
|
+
return undefined;
|
|
82
96
|
}
|
|
83
97
|
return data;
|
|
84
98
|
}
|
|
99
|
+
export async function api(method, path, opts) {
|
|
100
|
+
try {
|
|
101
|
+
return await requestApi(method, path, opts);
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
if (error instanceof ApiRequestError) {
|
|
105
|
+
stderr.write(`error: API ${error.status} ${method} ${path}: ${error.message}\n`);
|
|
106
|
+
if (error.status === 403) {
|
|
107
|
+
// Guardrail: a 403 on a write verb is easy to misread as "the CLI is
|
|
108
|
+
// broken." An intentionally narrow OAuth family may need a fresh login
|
|
109
|
+
// with an explicit scope set. Refresh never widens a family. This stays
|
|
110
|
+
// generic because other 403s can be role or governance denials.
|
|
111
|
+
stderr.write(`hint: if this is a write command, your CLI token may be read-only.\n` +
|
|
112
|
+
` Set STACK_OAUTH_SCOPE to the exact scopes you intend, then re-run\n` +
|
|
113
|
+
` \`${invokeHint('auth login')}\`; refresh tokens cannot widen scope.\n`);
|
|
114
|
+
}
|
|
115
|
+
exit(1);
|
|
116
|
+
}
|
|
117
|
+
throw error;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
85
120
|
/**
|
|
86
121
|
* Pull a global flag value (e.g. --json, --limit 20) from an argv slice.
|
|
87
122
|
* Returns the value as a string (for `--key val` form) or true for
|
package/dist/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,0EAA0E;AAC1E,qEAAqE;AACrE,mBAAmB;AACnB,qEAAqE;AACrE,uEAAuE;AACvE,sBAAsB;AACtB,EAAE;AACF,wEAAwE;AACxE,oEAAoE;AACpE,qDAAqD;AAErD,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAE5E,MAAM,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
|
package/dist/auth.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
export declare const CLI_DEFAULT_OAUTH_SCOPES: readonly ["account:read", "team:read", "passports:read", "passports:write", "agents:read", "agents:write", "services:read", "services:write", "services:connect", "inbound-webhooks:read", "partner-grants:read", "proxy:read", "proxy:write", "audit:read", "billing:read", "identity:read", "authority:read", "governance:read", "intents:read", "intents:write", "missions:read", "missions:write", "reviews:read", "evidence:read", "evidence:write", "dropoffs:read", "dropoffs:write", "skills:read", "skills:write", "skills:invoke", "notifications:read", "security-events:read", "llm:read", "llm:invoke", "scan:read", "scan:write", "detectors:read", "pii:read", "partner:read"];
|
|
1
2
|
export declare const DEFAULT_SCOPE: string;
|
|
2
3
|
export declare function requestedScope(): string;
|
|
3
4
|
export declare function invokeHint(subcommand: string): string;
|
|
4
5
|
export declare function stringifyOAuthError(data: unknown): string;
|
|
6
|
+
export declare function openBrowser(url: string): void;
|
|
5
7
|
export declare function cmdLogin(): Promise<void>;
|
|
6
8
|
export declare function cmdStatus(): Promise<void>;
|
|
7
9
|
export declare function cmdLogout(): Promise<void>;
|
package/dist/auth.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAiCA,eAAO,MAAM,wBAAwB,+pBA2B3B,CAAC;AACX,eAAO,MAAM,aAAa,QAAqC,CAAC;AAMhE,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAUD,wBAAgB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAGrD;AAMD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAYzD;AAuGD,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAa7C;AA+DD,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CA0E9C;AAED,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAkB/C;AAED,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAmB/C;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAyD7D"}
|
package/dist/auth.js
CHANGED
|
@@ -20,28 +20,45 @@ import { spawn } from 'node:child_process';
|
|
|
20
20
|
import { createHash, randomBytes } from 'node:crypto';
|
|
21
21
|
const API_URL = env['STACK_API_URL'] ?? 'https://api.getstack.run';
|
|
22
22
|
const RESOURCE = env['STACK_OAUTH_RESOURCE'] ?? `${API_URL}`;
|
|
23
|
-
// Default login scope
|
|
24
|
-
//
|
|
25
|
-
//
|
|
26
|
-
//
|
|
27
|
-
//
|
|
28
|
-
// and
|
|
29
|
-
//
|
|
30
|
-
//
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
'
|
|
37
|
-
'
|
|
38
|
-
'
|
|
39
|
-
'proxy:read proxy:write
|
|
40
|
-
'audit:read
|
|
41
|
-
'
|
|
42
|
-
'
|
|
23
|
+
// Default login scope covers the CLI's routine runtime and inspection flows.
|
|
24
|
+
// High-impact management surfaces stay opt-in even when the CLI has a command
|
|
25
|
+
// for them: account/team mutations, raw credential retrieval, billing and
|
|
26
|
+
// payout writes, OAuth-app/CMEK administration, authority and identity
|
|
27
|
+
// mutation, notification/security-policy changes, partner administration,
|
|
28
|
+
// and platform admin. An operator can request an exact broader set for a
|
|
29
|
+
// deliberate session with STACK_OAUTH_SCOPE. Kept as a literal because the
|
|
30
|
+
// published CLI intentionally has no @stack/shared runtime dependency.
|
|
31
|
+
export const CLI_DEFAULT_OAUTH_SCOPES = [
|
|
32
|
+
'account:read',
|
|
33
|
+
'team:read',
|
|
34
|
+
'passports:read', 'passports:write',
|
|
35
|
+
'agents:read', 'agents:write',
|
|
36
|
+
'services:read', 'services:write', 'services:connect',
|
|
37
|
+
'inbound-webhooks:read',
|
|
38
|
+
'partner-grants:read',
|
|
39
|
+
'proxy:read', 'proxy:write',
|
|
40
|
+
'audit:read',
|
|
41
|
+
'billing:read',
|
|
42
|
+
'identity:read',
|
|
43
|
+
'authority:read',
|
|
44
|
+
'governance:read',
|
|
45
|
+
'intents:read', 'intents:write',
|
|
46
|
+
'missions:read', 'missions:write',
|
|
47
|
+
'reviews:read',
|
|
48
|
+
'evidence:read', 'evidence:write',
|
|
49
|
+
'dropoffs:read', 'dropoffs:write',
|
|
50
|
+
'skills:read', 'skills:write', 'skills:invoke',
|
|
51
|
+
'notifications:read',
|
|
52
|
+
'security-events:read',
|
|
53
|
+
'llm:read', 'llm:invoke',
|
|
54
|
+
'scan:read', 'scan:write',
|
|
55
|
+
'detectors:read',
|
|
56
|
+
'pii:read',
|
|
57
|
+
'partner:read',
|
|
58
|
+
];
|
|
59
|
+
export const DEFAULT_SCOPE = CLI_DEFAULT_OAUTH_SCOPES.join(' ');
|
|
43
60
|
// The scope the CLI requests at login. STACK_OAUTH_SCOPE overrides the
|
|
44
|
-
//
|
|
61
|
+
// least-privilege default (used to sign in read-only for monitoring). Read at
|
|
45
62
|
// call time, not frozen at import, so a programmatically-set env var still
|
|
46
63
|
// takes effect (and so auth.test.ts can exercise the override).
|
|
47
64
|
export function requestedScope() {
|
|
@@ -179,15 +196,16 @@ async function deleteCreds() {
|
|
|
179
196
|
/* already gone */
|
|
180
197
|
}
|
|
181
198
|
}
|
|
182
|
-
function openBrowser(url) {
|
|
199
|
+
export function openBrowser(url) {
|
|
183
200
|
// Best-effort. Failure is silent — the URL is also printed.
|
|
184
201
|
try {
|
|
185
|
-
|
|
186
|
-
spawn('open', [url], { stdio: 'ignore', detached: true })
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
202
|
+
const child = platform === 'darwin'
|
|
203
|
+
? spawn('open', [url], { stdio: 'ignore', detached: true })
|
|
204
|
+
: platform === 'win32'
|
|
205
|
+
? spawn('cmd', ['/c', 'start', '', url], { stdio: 'ignore', detached: true })
|
|
206
|
+
: spawn('xdg-open', [url], { stdio: 'ignore', detached: true });
|
|
207
|
+
child.on('error', () => undefined);
|
|
208
|
+
child.unref();
|
|
191
209
|
}
|
|
192
210
|
catch {
|
|
193
211
|
/* user opens manually */
|