@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/dist/setup.js
ADDED
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
import { spawnSync } from 'node:child_process';
|
|
2
|
+
import { stdout, stderr } from 'node:process';
|
|
3
|
+
import { createInterface } from 'node:readline/promises';
|
|
4
|
+
const STACK_MCP_URL = 'https://mcp.getstack.run/mcp';
|
|
5
|
+
const CLIENTS = [
|
|
6
|
+
{ id: 'claude', label: 'Claude Code', commands: ['claude'] },
|
|
7
|
+
{ id: 'codex', label: 'Codex', commands: ['codex'] },
|
|
8
|
+
{ id: 'cursor', label: 'Cursor', commands: ['cursor'] },
|
|
9
|
+
];
|
|
10
|
+
function run(executable, args, inherit = false) {
|
|
11
|
+
const result = spawnSync(executable, args, {
|
|
12
|
+
encoding: 'utf8',
|
|
13
|
+
stdio: inherit ? 'inherit' : 'pipe',
|
|
14
|
+
shell: process.platform === 'win32' && /\.(cmd|bat)$/i.test(executable),
|
|
15
|
+
});
|
|
16
|
+
return {
|
|
17
|
+
status: result.status ?? 1,
|
|
18
|
+
stdout: result.stdout ?? '',
|
|
19
|
+
stderr: result.stderr ?? result.error?.message ?? '',
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
function findExecutable(command) {
|
|
23
|
+
const locator = process.platform === 'win32' ? 'where.exe' : 'which';
|
|
24
|
+
const result = run(locator, [command]);
|
|
25
|
+
if (result.status !== 0)
|
|
26
|
+
return undefined;
|
|
27
|
+
return result.stdout
|
|
28
|
+
.split(/\r?\n/)
|
|
29
|
+
.map((line) => line.trim())
|
|
30
|
+
.filter(Boolean)
|
|
31
|
+
.sort((a, b) => {
|
|
32
|
+
const rank = (value) => /\.exe$/i.test(value) ? 0 : /\.cmd$/i.test(value) ? 1 : /\.bat$/i.test(value) ? 2 : 3;
|
|
33
|
+
return rank(a) - rank(b);
|
|
34
|
+
})[0];
|
|
35
|
+
}
|
|
36
|
+
export function parseClientSelection(value, detected) {
|
|
37
|
+
const available = new Set(detected.map((client) => client.id));
|
|
38
|
+
const normalized = value.trim().toLowerCase();
|
|
39
|
+
if (normalized === 'all')
|
|
40
|
+
return [...available];
|
|
41
|
+
const selected = [];
|
|
42
|
+
for (const item of normalized.split(',').map((part) => part.trim()).filter(Boolean)) {
|
|
43
|
+
const id = item;
|
|
44
|
+
if (!CLIENTS.some((client) => client.id === id)) {
|
|
45
|
+
throw new Error(`unsupported MCP client "${item}". Use claude, codex, or cursor.`);
|
|
46
|
+
}
|
|
47
|
+
if (!available.has(id)) {
|
|
48
|
+
throw new Error(`${id} is not installed or is not on PATH.`);
|
|
49
|
+
}
|
|
50
|
+
if (!selected.includes(id))
|
|
51
|
+
selected.push(id);
|
|
52
|
+
}
|
|
53
|
+
if (selected.length === 0)
|
|
54
|
+
throw new Error('select at least one MCP client.');
|
|
55
|
+
return selected;
|
|
56
|
+
}
|
|
57
|
+
export function setupCommands(client) {
|
|
58
|
+
if (client === 'claude') {
|
|
59
|
+
return [
|
|
60
|
+
['mcp', 'add', '--transport', 'http', '--scope', 'user', 'stack', STACK_MCP_URL],
|
|
61
|
+
['mcp', 'login', 'stack'],
|
|
62
|
+
['mcp', 'get', 'stack'],
|
|
63
|
+
];
|
|
64
|
+
}
|
|
65
|
+
if (client === 'codex') {
|
|
66
|
+
return [
|
|
67
|
+
['mcp', 'add', 'stack', '--url', STACK_MCP_URL],
|
|
68
|
+
['mcp', 'login', 'stack'],
|
|
69
|
+
['mcp', 'get', 'stack', '--json'],
|
|
70
|
+
];
|
|
71
|
+
}
|
|
72
|
+
return [['--add-mcp', JSON.stringify({ name: 'stack', url: STACK_MCP_URL })]];
|
|
73
|
+
}
|
|
74
|
+
function inspectCommand(client) {
|
|
75
|
+
if (client === 'claude')
|
|
76
|
+
return ['mcp', 'get', 'stack'];
|
|
77
|
+
if (client === 'codex')
|
|
78
|
+
return ['mcp', 'get', 'stack', '--json'];
|
|
79
|
+
return undefined;
|
|
80
|
+
}
|
|
81
|
+
function detectClients() {
|
|
82
|
+
return CLIENTS.flatMap((client) => {
|
|
83
|
+
for (const command of client.commands) {
|
|
84
|
+
const executable = findExecutable(command);
|
|
85
|
+
if (executable)
|
|
86
|
+
return [{ id: client.id, label: client.label, executable }];
|
|
87
|
+
}
|
|
88
|
+
return [];
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
async function chooseClients(detected, requested) {
|
|
92
|
+
if (requested) {
|
|
93
|
+
const selected = new Set(parseClientSelection(requested, detected));
|
|
94
|
+
return detected.filter((client) => selected.has(client.id));
|
|
95
|
+
}
|
|
96
|
+
if (!process.stdin.isTTY) {
|
|
97
|
+
throw new Error('use --clients claude,codex,cursor when setup has no interactive terminal.');
|
|
98
|
+
}
|
|
99
|
+
stdout.write('\nDetected MCP clients:\n\n');
|
|
100
|
+
detected.forEach((client, index) => stdout.write(` ${index + 1}. ${client.label}\n`));
|
|
101
|
+
const rl = createInterface({ input: process.stdin, output: process.stderr });
|
|
102
|
+
try {
|
|
103
|
+
const answer = (await rl.question('\nChoose one or several clients. Use numbers separated by commas: ')).trim();
|
|
104
|
+
const selectedIndexes = new Set(answer.split(',').map((part) => Number.parseInt(part.trim(), 10) - 1));
|
|
105
|
+
if ([...selectedIndexes].some((index) => !Number.isInteger(index) || !detected[index])) {
|
|
106
|
+
throw new Error('the client selection is not valid.');
|
|
107
|
+
}
|
|
108
|
+
return detected.filter((_client, index) => selectedIndexes.has(index));
|
|
109
|
+
}
|
|
110
|
+
finally {
|
|
111
|
+
rl.close();
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
function configuredAtStackUrl(client) {
|
|
115
|
+
const inspect = inspectCommand(client.id);
|
|
116
|
+
if (!inspect)
|
|
117
|
+
return false;
|
|
118
|
+
const result = run(client.executable, inspect);
|
|
119
|
+
if (result.status !== 0)
|
|
120
|
+
return false;
|
|
121
|
+
if (!result.stdout.includes(STACK_MCP_URL)) {
|
|
122
|
+
throw new Error(`${client.label} already has an MCP server named stack with a different URL. Remove or rename it first.`);
|
|
123
|
+
}
|
|
124
|
+
if (client.id === 'claude' && !/^\s*Scope:\s*User\b/im.test(result.stdout)) {
|
|
125
|
+
return false;
|
|
126
|
+
}
|
|
127
|
+
return true;
|
|
128
|
+
}
|
|
129
|
+
function claudeConnectionIsLive(client) {
|
|
130
|
+
if (client.id !== 'claude')
|
|
131
|
+
return false;
|
|
132
|
+
const result = run(client.executable, ['mcp', 'get', 'stack']);
|
|
133
|
+
return result.status === 0 && /^\s*Status:\s*.*Connected\b/im.test(result.stdout);
|
|
134
|
+
}
|
|
135
|
+
function configureClient(client) {
|
|
136
|
+
const commands = setupCommands(client.id);
|
|
137
|
+
const commandAt = (index) => {
|
|
138
|
+
const command = commands[index];
|
|
139
|
+
if (!command)
|
|
140
|
+
throw new Error(`no setup command exists for ${client.label}.`);
|
|
141
|
+
return [...command];
|
|
142
|
+
};
|
|
143
|
+
stdout.write(`\n${client.label}:\n`);
|
|
144
|
+
if (client.id === 'cursor') {
|
|
145
|
+
const result = run(client.executable, commandAt(0), true);
|
|
146
|
+
if (result.status !== 0)
|
|
147
|
+
throw new Error(`${client.label} did not accept the MCP configuration.`);
|
|
148
|
+
stdout.write(` Added STACK at ${STACK_MCP_URL}.\n`);
|
|
149
|
+
stdout.write(' Cursor does not expose MCP OAuth or live tool discovery through its CLI.\n');
|
|
150
|
+
stdout.write(' In Cursor chat, enter: List my STACK agents.\n');
|
|
151
|
+
stdout.write(' Complete the sign-in prompt. Then send the same instruction again.\n');
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
154
|
+
if (configuredAtStackUrl(client)) {
|
|
155
|
+
stdout.write(` STACK already uses ${STACK_MCP_URL}.\n`);
|
|
156
|
+
}
|
|
157
|
+
else {
|
|
158
|
+
const add = run(client.executable, commandAt(0), true);
|
|
159
|
+
if (add.status !== 0)
|
|
160
|
+
throw new Error(`${client.label} did not accept the MCP configuration.`);
|
|
161
|
+
stdout.write(` Added STACK at ${STACK_MCP_URL}.\n`);
|
|
162
|
+
}
|
|
163
|
+
if (claudeConnectionIsLive(client)) {
|
|
164
|
+
stdout.write(' The existing STACK sign-in is active.\n');
|
|
165
|
+
}
|
|
166
|
+
else {
|
|
167
|
+
stdout.write(' Starting STACK sign-in.\n');
|
|
168
|
+
const login = run(client.executable, commandAt(1), true);
|
|
169
|
+
if (login.status !== 0)
|
|
170
|
+
throw new Error(`${client.label} did not complete STACK sign-in.`);
|
|
171
|
+
}
|
|
172
|
+
const verify = run(client.executable, commandAt(2));
|
|
173
|
+
if (verify.status !== 0)
|
|
174
|
+
throw new Error(`${client.label} could not read the STACK MCP configuration.`);
|
|
175
|
+
if (client.id === 'claude') {
|
|
176
|
+
if (!/^\s*Status:\s*.*Connected\b/im.test(verify.stdout)) {
|
|
177
|
+
throw new Error('Claude Code did not report a live STACK connection.');
|
|
178
|
+
}
|
|
179
|
+
stdout.write(' Claude Code confirmed the STACK server connection.\n');
|
|
180
|
+
stdout.write(' Claude Code does not expose its live MCP tool list through this command.\n');
|
|
181
|
+
stdout.write(' In Claude Code, enter: List my STACK agents.\n');
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
stdout.write(' Codex confirmed the STACK server configuration.\n');
|
|
185
|
+
stdout.write(' Codex does not expose live MCP tool discovery through its CLI.\n');
|
|
186
|
+
stdout.write(' Start a new Codex session. Then enter: List my STACK agents.\n');
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
export async function cmdSetup(args) {
|
|
190
|
+
let requested;
|
|
191
|
+
const clientsIndex = args.indexOf('--clients');
|
|
192
|
+
if (clientsIndex !== -1) {
|
|
193
|
+
const value = args[clientsIndex + 1];
|
|
194
|
+
if (!value || value.startsWith('--'))
|
|
195
|
+
throw new Error('--clients requires a comma-separated value.');
|
|
196
|
+
requested = value;
|
|
197
|
+
}
|
|
198
|
+
const detected = detectClients();
|
|
199
|
+
if (detected.length === 0) {
|
|
200
|
+
stderr.write('error: no supported MCP client was found. Install Claude Code, Codex, or Cursor first.\n');
|
|
201
|
+
process.exitCode = 1;
|
|
202
|
+
return;
|
|
203
|
+
}
|
|
204
|
+
let selected;
|
|
205
|
+
try {
|
|
206
|
+
selected = await chooseClients(detected, requested);
|
|
207
|
+
}
|
|
208
|
+
catch (error) {
|
|
209
|
+
stderr.write(`error: ${error.message}\n`);
|
|
210
|
+
process.exitCode = 2;
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
let failures = 0;
|
|
214
|
+
for (const client of selected) {
|
|
215
|
+
try {
|
|
216
|
+
configureClient(client);
|
|
217
|
+
}
|
|
218
|
+
catch (error) {
|
|
219
|
+
failures += 1;
|
|
220
|
+
stderr.write(` error: ${error.message}\n`);
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
if (failures > 0)
|
|
224
|
+
process.exitCode = 1;
|
|
225
|
+
}
|
|
226
|
+
//# sourceMappingURL=setup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../src/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAyB,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,aAAa,GAAG,8BAA8B,CAAC;AAgBrD,MAAM,OAAO,GAAiF;IAC5F,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE;IAC5D,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE;IACpD,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE;CACxD,CAAC;AAEF,SAAS,GAAG,CACV,UAAkB,EAClB,IAAc,EACd,OAAO,GAAG,KAAK;IAEf,MAAM,MAAM,GAA6B,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE;QACnE,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;QACnC,KAAK,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC;KACxE,CAAC,CAAC;IACH,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,CAAC;QAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;QAC3B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE;KACrD,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,OAAe;IACrC,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC;IACrE,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACvC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1C,OAAO,MAAM,CAAC,MAAM;SACjB,KAAK,CAAC,OAAO,CAAC;SACd,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACb,MAAM,IAAI,GAAG,CAAC,KAAa,EAAU,EAAE,CACrC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACxF,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACV,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,KAAa,EACb,QAAmD;IAEnD,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/D,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,IAAI,UAAU,KAAK,KAAK;QAAE,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC;IAEhD,MAAM,QAAQ,GAAyB,EAAE,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QACpF,MAAM,EAAE,GAAG,IAA0B,CAAC;QACtC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,kCAAkC,CAAC,CAAC;QACrF,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,GAAG,EAAE,sCAAsC,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAC9E,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAA0B;IACtD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,OAAO;YACL,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC;YAChF,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;YACzB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC;SACxB,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACvB,OAAO;YACL,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC;YAC/C,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;YACzB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC;SAClC,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,cAAc,CAAC,MAA0B;IAChD,IAAI,MAAM,KAAK,QAAQ;QAAE,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACxD,IAAI,MAAM,KAAK,OAAO;QAAE,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IACjE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,aAAa;IACpB,OAAO,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QAChC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACtC,MAAM,UAAU,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;YAC3C,IAAI,UAAU;gBAAE,OAAO,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QAC9E,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,QAA0B,EAAE,SAAkB;IACzE,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,oBAAoB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;QACpE,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC/F,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;IAC5C,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;IACvF,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7E,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oEAAoE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAChH,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CACtE,CAAC;QACF,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACvF,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,CAAC;QACD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IACzE,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAsB;IAClD,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IAC3B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC/C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACtC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CACb,GAAG,MAAM,CAAC,KAAK,yFAAyF,CACzG,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAsB;IACpD,IAAI,MAAM,CAAC,EAAE,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACzC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/D,OAAO,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,+BAA+B,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,eAAe,CAAC,MAAsB;IAC7C,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,CAAC,KAAa,EAAY,EAAE;QAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;QAC9E,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC;IACtB,CAAC,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,KAAK,KAAK,CAAC,CAAC;IAErC,IAAI,MAAM,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC1D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,wCAAwC,CAAC,CAAC;QAClG,MAAM,CAAC,KAAK,CAAC,oBAAoB,aAAa,KAAK,CAAC,CAAC;QACrD,MAAM,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAC;QAC7F,MAAM,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACjE,MAAM,CAAC,KAAK,CAAC,wEAAwE,CAAC,CAAC;QACvF,OAAO;IACT,CAAC;IAED,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC;QACjC,MAAM,CAAC,KAAK,CAAC,wBAAwB,aAAa,KAAK,CAAC,CAAC;IAC3D,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACvD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,wCAAwC,CAAC,CAAC;QAC/F,MAAM,CAAC,KAAK,CAAC,oBAAoB,aAAa,KAAK,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACzD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,kCAAkC,CAAC,CAAC;IAC7F,CAAC;IAED,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,8CAA8C,CAAC,CAAC;IACxG,IAAI,MAAM,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACvE,MAAM,CAAC,KAAK,CAAC,8EAA8E,CAAC,CAAC;QAC7F,MAAM,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACnE,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACpE,MAAM,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACnF,MAAM,CAAC,KAAK,CAAC,kEAAkE,CAAC,CAAC;IACnF,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAc;IAC3C,IAAI,SAA6B,CAAC;IAClC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC/C,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;QACrG,SAAS,GAAG,KAAK,CAAC;IACpB,CAAC;IAED,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAC;IACjC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,CAAC,KAAK,CAAC,0FAA0F,CAAC,CAAC;QACzG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,IAAI,QAA0B,CAAC;IAC/B,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,UAAW,KAAe,CAAC,OAAO,IAAI,CAAC,CAAC;QACrD,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,eAAe,CAAC,MAAM,CAAC,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,QAAQ,IAAI,CAAC,CAAC;YACd,MAAM,CAAC,KAAK,CAAC,YAAa,KAAe,CAAC,OAAO,IAAI,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,GAAG,CAAC;QAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACzC,CAAC"}
|
package/dist/usage.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"AA6EA,QAAA,MAAM,OAAO,wFASH,CAAC;AACX,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9C,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,cAAc,CAkCvE;AAyCD,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA+H5D"}
|
package/dist/usage.js
CHANGED
|
@@ -13,7 +13,16 @@
|
|
|
13
13
|
import { stdout, stderr, exit } from 'node:process';
|
|
14
14
|
import { api, takeFlag } from './api.js';
|
|
15
15
|
import { printJson, fmt } from './format.js';
|
|
16
|
-
const PRESETS = [
|
|
16
|
+
const PRESETS = [
|
|
17
|
+
'today',
|
|
18
|
+
'yesterday',
|
|
19
|
+
'7d',
|
|
20
|
+
'week',
|
|
21
|
+
'30d',
|
|
22
|
+
'month',
|
|
23
|
+
'last-month',
|
|
24
|
+
'billing',
|
|
25
|
+
];
|
|
17
26
|
/**
|
|
18
27
|
* Resolve a period preset to a [since, until) window in LOCAL time. Pure —
|
|
19
28
|
* `now` is injected so it's deterministic under test. 'billing' returns no
|
|
@@ -119,6 +128,10 @@ export async function cmdUsage(args) {
|
|
|
119
128
|
windowLabel = 'custom range';
|
|
120
129
|
}
|
|
121
130
|
const u = await api('GET', '/v1/usage', { query });
|
|
131
|
+
/** `used / included` for a pass-through allowance; `included` may be null. */
|
|
132
|
+
function passthrough(p) {
|
|
133
|
+
return `${p.used} / ${p.included ?? '∞'}`;
|
|
134
|
+
}
|
|
122
135
|
if (json)
|
|
123
136
|
return printJson(u);
|
|
124
137
|
const windowed = u.period_label !== 'billing';
|
|
@@ -126,12 +139,39 @@ export async function cmdUsage(args) {
|
|
|
126
139
|
const s = u.spend_cents;
|
|
127
140
|
// Two side-by-side blocks: consumption meters (left), spend lines (right).
|
|
128
141
|
// A null row is a blank spacer; 'rule' is the separator before the total.
|
|
142
|
+
// The meter first, because it is the only number that gates anything. The
|
|
143
|
+
// Total activity and the metered subset are different clocks. Keep both
|
|
144
|
+
// visible. Do not render a partial historical kind split as a set of zeros.
|
|
129
145
|
const left = [
|
|
130
|
-
[
|
|
146
|
+
[
|
|
147
|
+
'Total actions',
|
|
148
|
+
c.activity.total_coverage === 'complete'
|
|
149
|
+
? group(c.activity.total)
|
|
150
|
+
: `${group(c.activity.total)}+`,
|
|
151
|
+
],
|
|
152
|
+
[
|
|
153
|
+
'Metered actions',
|
|
154
|
+
c.actions.allowance_coverage === 'complete'
|
|
155
|
+
? meter(c.actions)
|
|
156
|
+
: `${group(c.actions.used)} / unknown historical limit`,
|
|
157
|
+
],
|
|
158
|
+
['Not metered', c.activity.non_metered === null ? 'unknown' : group(c.activity.non_metered)],
|
|
159
|
+
...(c.actions.detail_coverage === 'complete'
|
|
160
|
+
? []
|
|
161
|
+
: [['Action detail', c.actions.detail_coverage]]),
|
|
162
|
+
['Seats', `${u.seats.used} / ${u.seats.total ?? '∞'}`],
|
|
163
|
+
null,
|
|
164
|
+
// Absent under a window: the pass-through counters only exist for the
|
|
165
|
+
// current month, and the server sends null rather than the wrong one.
|
|
166
|
+
...(u.passthrough
|
|
167
|
+
? [
|
|
168
|
+
['L3 classify', passthrough(u.passthrough.l3_classifications)],
|
|
169
|
+
['SMS', passthrough(u.passthrough.sms)],
|
|
170
|
+
['Email', passthrough(u.passthrough.email)],
|
|
171
|
+
null,
|
|
172
|
+
]
|
|
173
|
+
: []),
|
|
131
174
|
['Agents', inventoryMeter(c.agents, windowed)],
|
|
132
|
-
['Proxy calls', meter(c.proxy_calls)],
|
|
133
|
-
['Dropoffs', meter(c.dropoffs)],
|
|
134
|
-
['Skill invs', meter(c.skill_invocations)],
|
|
135
175
|
['Pub. skills', inventoryMeter(c.published_skills, windowed)],
|
|
136
176
|
];
|
|
137
177
|
const right = [
|
package/dist/usage.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage.js","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,8EAA8E;AAC9E,4EAA4E;AAC5E,gDAAgD;AAChD,EAAE;AACF,gFAAgF;AAChF,+EAA+E;AAC/E,6EAA6E;AAC7E,8EAA8E;AAC9E,4EAA4E;AAC5E,2EAA2E;AAC3E,4DAA4D;AAE5D,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"usage.js","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@getstackrun/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "STACK from your terminal. Issue passports, register agents, grant credentials, revoke in one call, and tail the live audit log. The operator CLI for every STACK surface.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"prepublishOnly": "npm run build"
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@getstackrun/sdk": "^0.
|
|
42
|
+
"@getstackrun/sdk": "^1.0.0",
|
|
43
43
|
"cbor-x": "^1.6.4"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|