@grantex/cli 0.1.4 → 0.1.6

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.
Files changed (68) hide show
  1. package/dist/commands/agents.d.ts.map +1 -1
  2. package/dist/commands/agents.js +36 -2
  3. package/dist/commands/agents.js.map +1 -1
  4. package/dist/commands/anomalies.d.ts.map +1 -1
  5. package/dist/commands/anomalies.js +10 -2
  6. package/dist/commands/anomalies.js.map +1 -1
  7. package/dist/commands/audit.d.ts.map +1 -1
  8. package/dist/commands/audit.js +65 -3
  9. package/dist/commands/audit.js.map +1 -1
  10. package/dist/commands/authorize.d.ts +3 -0
  11. package/dist/commands/authorize.d.ts.map +1 -0
  12. package/dist/commands/authorize.js +42 -0
  13. package/dist/commands/authorize.js.map +1 -0
  14. package/dist/commands/billing.d.ts.map +1 -1
  15. package/dist/commands/billing.js +10 -2
  16. package/dist/commands/billing.js.map +1 -1
  17. package/dist/commands/budgets.d.ts +3 -0
  18. package/dist/commands/budgets.d.ts.map +1 -0
  19. package/dist/commands/budgets.js +83 -0
  20. package/dist/commands/budgets.js.map +1 -0
  21. package/dist/commands/compliance.d.ts.map +1 -1
  22. package/dist/commands/compliance.js +13 -3
  23. package/dist/commands/compliance.js.map +1 -1
  24. package/dist/commands/domains.d.ts +3 -0
  25. package/dist/commands/domains.d.ts.map +1 -0
  26. package/dist/commands/domains.js +70 -0
  27. package/dist/commands/domains.js.map +1 -0
  28. package/dist/commands/events.d.ts +3 -0
  29. package/dist/commands/events.d.ts.map +1 -0
  30. package/dist/commands/events.js +34 -0
  31. package/dist/commands/events.js.map +1 -0
  32. package/dist/commands/grants.d.ts.map +1 -1
  33. package/dist/commands/grants.js +53 -2
  34. package/dist/commands/grants.js.map +1 -1
  35. package/dist/commands/me.d.ts +3 -0
  36. package/dist/commands/me.d.ts.map +1 -0
  37. package/dist/commands/me.js +46 -0
  38. package/dist/commands/me.js.map +1 -0
  39. package/dist/commands/policies.d.ts.map +1 -1
  40. package/dist/commands/policies.js +18 -2
  41. package/dist/commands/policies.js.map +1 -1
  42. package/dist/commands/principal-sessions.d.ts +3 -0
  43. package/dist/commands/principal-sessions.d.ts.map +1 -0
  44. package/dist/commands/principal-sessions.js +31 -0
  45. package/dist/commands/principal-sessions.js.map +1 -0
  46. package/dist/commands/scim.d.ts.map +1 -1
  47. package/dist/commands/scim.js +15 -3
  48. package/dist/commands/scim.js.map +1 -1
  49. package/dist/commands/sso.d.ts.map +1 -1
  50. package/dist/commands/sso.js +6 -2
  51. package/dist/commands/sso.js.map +1 -1
  52. package/dist/commands/tokens.d.ts.map +1 -1
  53. package/dist/commands/tokens.js +60 -2
  54. package/dist/commands/tokens.js.map +1 -1
  55. package/dist/commands/usage.d.ts +3 -0
  56. package/dist/commands/usage.d.ts.map +1 -0
  57. package/dist/commands/usage.js +44 -0
  58. package/dist/commands/usage.js.map +1 -0
  59. package/dist/commands/webhooks.d.ts.map +1 -1
  60. package/dist/commands/webhooks.js +10 -2
  61. package/dist/commands/webhooks.js.map +1 -1
  62. package/dist/format.d.ts +13 -5
  63. package/dist/format.d.ts.map +1 -1
  64. package/dist/format.js +42 -8
  65. package/dist/format.js.map +1 -1
  66. package/dist/index.js +28 -7
  67. package/dist/index.js.map +1 -1
  68. package/package.json +57 -54
@@ -1,15 +1,45 @@
1
1
  import { Command } from 'commander';
2
2
  import chalk from 'chalk';
3
3
  import { requireClient } from '../client.js';
4
- import { printRecord, shortDate } from '../format.js';
4
+ import { printRecord, shortDate, isJsonMode } from '../format.js';
5
5
  export function tokensCommand() {
6
- const cmd = new Command('tokens').description('Verify and revoke grant tokens');
6
+ const cmd = new Command('tokens').description('Exchange, verify, refresh, and revoke grant tokens');
7
+ cmd
8
+ .command('exchange')
9
+ .description('Exchange an authorization code for a grant token')
10
+ .requiredOption('--code <code>', 'Authorization code from consent approval')
11
+ .requiredOption('--agent-id <agentId>', 'Agent ID that was authorized')
12
+ .option('--code-verifier <verifier>', 'PKCE code verifier (if challenge was sent)')
13
+ .action(async (opts) => {
14
+ const client = await requireClient();
15
+ const res = await client.tokens.exchange({
16
+ code: opts.code,
17
+ agentId: opts.agentId,
18
+ ...(opts.codeVerifier !== undefined ? { codeVerifier: opts.codeVerifier } : {}),
19
+ });
20
+ if (isJsonMode()) {
21
+ console.log(JSON.stringify(res, null, 2));
22
+ return;
23
+ }
24
+ console.log(chalk.green('✓') + ' Token exchanged successfully.');
25
+ printRecord({
26
+ grantToken: res.grantToken.slice(0, 40) + '...',
27
+ grantId: res.grantId,
28
+ scopes: res.scopes.join(', '),
29
+ refreshToken: res.refreshToken,
30
+ expiresAt: shortDate(res.expiresAt),
31
+ });
32
+ });
7
33
  cmd
8
34
  .command('verify <token>')
9
35
  .description('Verify a grant token (online check)')
10
36
  .action(async (token) => {
11
37
  const client = await requireClient();
12
38
  const res = await client.tokens.verify(token);
39
+ if (isJsonMode()) {
40
+ console.log(JSON.stringify(res, null, 2));
41
+ return;
42
+ }
13
43
  if (!res.valid) {
14
44
  console.error(chalk.red('✗') + ' Token is invalid or has been revoked.');
15
45
  process.exit(1);
@@ -23,12 +53,40 @@ export function tokensCommand() {
23
53
  expiresAt: res.expiresAt ? shortDate(res.expiresAt) : '',
24
54
  });
25
55
  });
56
+ cmd
57
+ .command('refresh')
58
+ .description('Refresh a grant token (rotates refresh token)')
59
+ .requiredOption('--refresh-token <token>', 'Current refresh token')
60
+ .requiredOption('--agent-id <agentId>', 'Agent ID for the grant')
61
+ .action(async (opts) => {
62
+ const client = await requireClient();
63
+ const res = await client.tokens.refresh({
64
+ refreshToken: opts.refreshToken,
65
+ agentId: opts.agentId,
66
+ });
67
+ if (isJsonMode()) {
68
+ console.log(JSON.stringify(res, null, 2));
69
+ return;
70
+ }
71
+ console.log(chalk.green('✓') + ' Token refreshed successfully.');
72
+ printRecord({
73
+ grantToken: res.grantToken.slice(0, 40) + '...',
74
+ grantId: res.grantId,
75
+ scopes: res.scopes.join(', '),
76
+ refreshToken: res.refreshToken,
77
+ expiresAt: shortDate(res.expiresAt),
78
+ });
79
+ });
26
80
  cmd
27
81
  .command('revoke <jti>')
28
82
  .description('Revoke a grant token by JTI')
29
83
  .action(async (jti) => {
30
84
  const client = await requireClient();
31
85
  await client.tokens.revoke(jti);
86
+ if (isJsonMode()) {
87
+ console.log(JSON.stringify({ revoked: jti }));
88
+ return;
89
+ }
32
90
  console.log(chalk.green('✓') + ` Token ${jti} revoked.`);
33
91
  });
34
92
  return cmd;
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/commands/tokens.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,UAAU,aAAa;IAC3B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,gCAAgC,CAAC,CAAC;IAEhF,GAAG;SACA,OAAO,CAAC,gBAAgB,CAAC;SACzB,WAAW,CAAC,qCAAqC,CAAC;SAClD,MAAM,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE;QAC9B,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAE9C,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,wCAAwC,CAAC,CAAC;YACzE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC,CAAC;QACnD,WAAW,CAAC;YACV,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE;YAC1B,MAAM,EAAE,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACrC,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,EAAE;YAC9B,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE;YACtB,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;SACzD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEL,GAAG;SACA,OAAO,CAAC,cAAc,CAAC;SACvB,WAAW,CAAC,6BAA6B,CAAC;SAC1C,MAAM,CAAC,KAAK,EAAE,GAAW,EAAE,EAAE;QAC5B,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;QACrC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,UAAU,GAAG,WAAW,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/commands/tokens.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function usageCommand(): Command;
3
+ //# sourceMappingURL=usage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../src/commands/usage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,YAAY,IAAI,OAAO,CA8CtC"}
@@ -0,0 +1,44 @@
1
+ import { Command } from 'commander';
2
+ import { requireClient } from '../client.js';
3
+ import { printRecord, printTable, isJsonMode } from '../format.js';
4
+ export function usageCommand() {
5
+ const cmd = new Command('usage').description('View API usage metrics');
6
+ cmd
7
+ .command('current')
8
+ .description('Get current period usage')
9
+ .action(async () => {
10
+ const client = await requireClient();
11
+ const res = await client.usage.current();
12
+ if (isJsonMode()) {
13
+ console.log(JSON.stringify(res, null, 2));
14
+ return;
15
+ }
16
+ printRecord({
17
+ developerId: res.developerId,
18
+ period: res.period,
19
+ tokenExchanges: String(res.tokenExchanges),
20
+ authorizations: String(res.authorizations),
21
+ verifications: String(res.verifications),
22
+ totalRequests: String(res.totalRequests),
23
+ });
24
+ });
25
+ cmd
26
+ .command('history')
27
+ .description('Get historical usage')
28
+ .option('--days <n>', 'Number of days to look back (default: 30)', parseInt)
29
+ .action(async (opts) => {
30
+ const client = await requireClient();
31
+ const res = await client.usage.history({
32
+ ...(opts.days !== undefined ? { days: opts.days } : {}),
33
+ });
34
+ printTable(res.entries.map((e) => ({
35
+ DATE: e.date,
36
+ EXCHANGES: String(e.tokenExchanges),
37
+ AUTHORIZATIONS: String(e.authorizations),
38
+ VERIFICATIONS: String(e.verifications),
39
+ TOTAL: String(e.totalRequests),
40
+ })), ['DATE', 'EXCHANGES', 'AUTHORIZATIONS', 'VERIFICATIONS', 'TOTAL'], res.entries.map((e) => ({ ...e })));
41
+ });
42
+ return cmd;
43
+ }
44
+ //# sourceMappingURL=usage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage.js","sourceRoot":"","sources":["../../src/commands/usage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEnE,MAAM,UAAU,YAAY;IAC1B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAAC;IAEvE,GAAG;SACA,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,0BAA0B,CAAC;SACvC,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;QACzC,IAAI,UAAU,EAAE,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1C,OAAO;QACT,CAAC;QACD,WAAW,CAAC;YACV,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;YAC1C,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;YAC1C,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;YACxC,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC;SACzC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEL,GAAG;SACA,OAAO,CAAC,SAAS,CAAC;SAClB,WAAW,CAAC,sBAAsB,CAAC;SACnC,MAAM,CAAC,YAAY,EAAE,2CAA2C,EAAE,QAAQ,CAAC;SAC3E,MAAM,CAAC,KAAK,EAAE,IAAuB,EAAE,EAAE;QACxC,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;YACrC,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxD,CAAC,CAAC;QACH,UAAU,CACR,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACtB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC;YACnC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC;YACxC,aAAa,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC;YACtC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC;SAC/B,CAAC,CAAC,EACH,CAAC,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,CAAC,EACjE,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CACnC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/commands/webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,wBAAgB,eAAe,IAAI,OAAO,CAwDzC"}
1
+ {"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/commands/webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,wBAAgB,eAAe,IAAI,OAAO,CAiEzC"}
@@ -1,7 +1,7 @@
1
1
  import { Command } from 'commander';
2
2
  import chalk from 'chalk';
3
3
  import { requireClient } from '../client.js';
4
- import { printTable, shortDate } from '../format.js';
4
+ import { printTable, shortDate, isJsonMode } from '../format.js';
5
5
  const VALID_EVENTS = ['grant.created', 'grant.revoked', 'token.issued'];
6
6
  export function webhooksCommand() {
7
7
  const cmd = new Command('webhooks').description('Manage webhook endpoints');
@@ -16,7 +16,7 @@ export function webhooksCommand() {
16
16
  URL: w.url,
17
17
  EVENTS: w.events.join(', '),
18
18
  CREATED: shortDate(w.createdAt),
19
- })), ['ID', 'URL', 'EVENTS', 'CREATED']);
19
+ })), ['ID', 'URL', 'EVENTS', 'CREATED'], webhooks.map((w) => ({ ...w })));
20
20
  });
21
21
  cmd
22
22
  .command('create')
@@ -34,6 +34,10 @@ export function webhooksCommand() {
34
34
  }
35
35
  const client = await requireClient();
36
36
  const wh = await client.webhooks.create({ url: opts.url, events });
37
+ if (isJsonMode()) {
38
+ console.log(JSON.stringify(wh, null, 2));
39
+ return;
40
+ }
37
41
  console.log(chalk.green('✓') + ` Webhook registered: ${wh.id}`);
38
42
  console.log(`Secret: ${chalk.bold(wh.secret)} (shown once — store it securely)`);
39
43
  });
@@ -43,6 +47,10 @@ export function webhooksCommand() {
43
47
  .action(async (webhookId) => {
44
48
  const client = await requireClient();
45
49
  await client.webhooks.delete(webhookId);
50
+ if (isJsonMode()) {
51
+ console.log(JSON.stringify({ deleted: webhookId }));
52
+ return;
53
+ }
46
54
  console.log(chalk.green('✓') + ` Webhook ${webhookId} deleted.`);
47
55
  });
48
56
  return cmd;
@@ -1 +1 @@
1
- {"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/commands/webhooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/commands/webhooks.ts"],"names":[],"mappings":"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"}
package/dist/format.d.ts CHANGED
@@ -1,10 +1,18 @@
1
1
  /**
2
- * Minimal table formatter for CLI output.
3
- * Prints a header row + divider + data rows, padded to column widths.
2
+ * Output formatting for CLI.
3
+ * Supports --json global flag for machine-readable output (AI agent friendly).
4
4
  */
5
- export declare function printTable(rows: Record<string, string>[], columns: string[]): void;
5
+ export declare function setJsonMode(enabled: boolean): void;
6
+ export declare function isJsonMode(): boolean;
7
+ /**
8
+ * Print data as JSON array (if --json) or ASCII table.
9
+ * `rawRows` contains unformatted data for JSON output; `displayRows`/`columns` are for tables.
10
+ */
11
+ export declare function printTable(displayRows: Record<string, string>[], columns: string[], rawRows?: Record<string, unknown>[]): void;
6
12
  /** Format an ISO date string to a short local representation. */
7
13
  export declare function shortDate(iso: string): string;
8
- /** Print a labelled key-value block (for single-record views). */
9
- export declare function printRecord(record: Record<string, string>): void;
14
+ /** Print a single record as JSON object (if --json) or key-value block. */
15
+ export declare function printRecord(record: Record<string, string>, raw?: Record<string, unknown>): void;
16
+ /** Build table string without printing (for file writing in compliance). */
17
+ export declare function tableToString(rows: Record<string, string>[], columns: string[]): string;
10
18
  //# sourceMappingURL=format.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAkBlF;AAED,iEAAiE;AACjE,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQ7C;AAED,kEAAkE;AAClE,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAKhE"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAElD;AAED,wBAAgB,UAAU,IAAI,OAAO,CAEpC;AAED;;;GAGG;AACH,wBAAgB,UAAU,CACxB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EACrC,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAClC,IAAI,CAuBN;AAED,iEAAiE;AACjE,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAQ7C;AAED,2EAA2E;AAC3E,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAU/F;AAED,4EAA4E;AAC5E,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAcvF"}
package/dist/format.js CHANGED
@@ -1,18 +1,34 @@
1
1
  /**
2
- * Minimal table formatter for CLI output.
3
- * Prints a header row + divider + data rows, padded to column widths.
2
+ * Output formatting for CLI.
3
+ * Supports --json global flag for machine-readable output (AI agent friendly).
4
4
  */
5
- export function printTable(rows, columns) {
6
- if (rows.length === 0) {
5
+ /** Whether --json was passed globally. Set by index.ts before commands run. */
6
+ let jsonMode = false;
7
+ export function setJsonMode(enabled) {
8
+ jsonMode = enabled;
9
+ }
10
+ export function isJsonMode() {
11
+ return jsonMode;
12
+ }
13
+ /**
14
+ * Print data as JSON array (if --json) or ASCII table.
15
+ * `rawRows` contains unformatted data for JSON output; `displayRows`/`columns` are for tables.
16
+ */
17
+ export function printTable(displayRows, columns, rawRows) {
18
+ if (jsonMode) {
19
+ console.log(JSON.stringify(rawRows ?? displayRows, null, 2));
20
+ return;
21
+ }
22
+ if (displayRows.length === 0) {
7
23
  console.log('(no results)');
8
24
  return;
9
25
  }
10
- const widths = columns.map((col) => Math.max(col.length, ...rows.map((r) => (r[col] ?? '').length)));
26
+ const widths = columns.map((col) => Math.max(col.length, ...displayRows.map((r) => (r[col] ?? '').length)));
11
27
  const pad = (s, w) => s.padEnd(w);
12
28
  const divider = widths.map((w) => '-'.repeat(w)).join(' ');
13
29
  console.log(columns.map((c, i) => pad(c.toUpperCase(), widths[i] ?? c.length)).join(' '));
14
30
  console.log(divider);
15
- for (const row of rows) {
31
+ for (const row of displayRows) {
16
32
  console.log(columns.map((c, i) => pad(row[c] ?? '', widths[i] ?? 0)).join(' '));
17
33
  }
18
34
  }
@@ -26,11 +42,29 @@ export function shortDate(iso) {
26
42
  minute: '2-digit',
27
43
  });
28
44
  }
29
- /** Print a labelled key-value block (for single-record views). */
30
- export function printRecord(record) {
45
+ /** Print a single record as JSON object (if --json) or key-value block. */
46
+ export function printRecord(record, raw) {
47
+ if (jsonMode) {
48
+ console.log(JSON.stringify(raw ?? record, null, 2));
49
+ return;
50
+ }
31
51
  const keyWidth = Math.max(...Object.keys(record).map((k) => k.length));
32
52
  for (const [k, v] of Object.entries(record)) {
33
53
  console.log(`${k.padEnd(keyWidth)} ${v}`);
34
54
  }
35
55
  }
56
+ /** Build table string without printing (for file writing in compliance). */
57
+ export function tableToString(rows, columns) {
58
+ if (rows.length === 0)
59
+ return '(no results)';
60
+ const widths = columns.map((col) => Math.max(col.length, ...rows.map((r) => (r[col] ?? '').length)));
61
+ const pad = (s, w) => s.padEnd(w);
62
+ const lines = [];
63
+ lines.push(columns.map((c, i) => pad(c.toUpperCase(), widths[i] ?? c.length)).join(' '));
64
+ lines.push(widths.map((w) => '-'.repeat(w)).join(' '));
65
+ for (const row of rows) {
66
+ lines.push(columns.map((c, i) => pad(row[c] ?? '', widths[i] ?? 0)).join(' '));
67
+ }
68
+ return lines.join('\n');
69
+ }
36
70
  //# sourceMappingURL=format.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,IAA8B,EAAE,OAAiB;IAC1E,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACjC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAChE,CAAC;IAEF,MAAM,GAAG,GAAG,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE5D,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3F,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACrB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACnF,CAAC;AACH,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,SAAS,CAAC,GAAW;IACnC,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,SAAS,EAAE;QAC7C,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,OAAO;QACd,GAAG,EAAE,SAAS;QACd,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;AACL,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,WAAW,CAAC,MAA8B;IACxD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IACvE,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,36 +1,57 @@
1
1
  #!/usr/bin/env node
2
2
  import { Command } from 'commander';
3
+ import { setJsonMode } from './format.js';
3
4
  import { agentsCommand } from './commands/agents.js';
4
5
  import { anomaliesCommand } from './commands/anomalies.js';
5
6
  import { auditCommand } from './commands/audit.js';
7
+ import { authorizeCommand } from './commands/authorize.js';
8
+ import { billingCommand } from './commands/billing.js';
9
+ import { budgetsCommand } from './commands/budgets.js';
6
10
  import { complianceCommand } from './commands/compliance.js';
7
11
  import { configCommand } from './commands/config.js';
12
+ import { domainsCommand } from './commands/domains.js';
13
+ import { eventsCommand } from './commands/events.js';
8
14
  import { grantsCommand } from './commands/grants.js';
9
- import { tokensCommand } from './commands/tokens.js';
10
- import { webhooksCommand } from './commands/webhooks.js';
15
+ import { meCommand } from './commands/me.js';
11
16
  import { policiesCommand } from './commands/policies.js';
12
- import { billingCommand } from './commands/billing.js';
17
+ import { principalSessionsCommand } from './commands/principal-sessions.js';
13
18
  import { scimCommand } from './commands/scim.js';
14
19
  import { ssoCommand } from './commands/sso.js';
20
+ import { tokensCommand } from './commands/tokens.js';
21
+ import { usageCommand } from './commands/usage.js';
22
+ import { webhooksCommand } from './commands/webhooks.js';
15
23
  const program = new Command();
16
24
  program
17
25
  .name('grantex')
18
- .description('CLI tool for local Grantex development')
19
- .version('0.1.0');
26
+ .description('CLI for the Grantex delegated authorization protocol')
27
+ .version('0.1.6')
28
+ .option('--json', 'Output results as JSON (machine-readable)')
29
+ .hook('preAction', () => {
30
+ if (program.opts().json) {
31
+ setJsonMode(true);
32
+ }
33
+ });
20
34
  program.addCommand(configCommand());
35
+ program.addCommand(meCommand());
21
36
  program.addCommand(agentsCommand());
37
+ program.addCommand(authorizeCommand());
22
38
  program.addCommand(grantsCommand());
23
39
  program.addCommand(tokensCommand());
24
40
  program.addCommand(auditCommand());
25
41
  program.addCommand(webhooksCommand());
42
+ program.addCommand(policiesCommand());
43
+ program.addCommand(budgetsCommand());
44
+ program.addCommand(usageCommand());
45
+ program.addCommand(domainsCommand());
46
+ program.addCommand(eventsCommand());
47
+ program.addCommand(principalSessionsCommand());
26
48
  program.addCommand(complianceCommand());
27
49
  program.addCommand(anomaliesCommand());
28
- program.addCommand(policiesCommand());
29
50
  program.addCommand(billingCommand());
30
51
  program.addCommand(scimCommand());
31
52
  program.addCommand(ssoCommand());
32
53
  program.parseAsync(process.argv).catch((err) => {
33
- console.error((err instanceof Error ? err.message : String(err)));
54
+ console.error(err instanceof Error ? err.message : String(err));
34
55
  process.exit(1);
35
56
  });
36
57
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,wCAAwC,CAAC;KACrD,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;AACpC,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;AACpC,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;AACpC,OAAO,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;AACpC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;AACnC,OAAO,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC;AACtC,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;AACxC,OAAO,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC,CAAC;AACvC,OAAO,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC;AACtC,OAAO,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;AACrC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;AAEjC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;IACtD,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAClE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,54 +1,57 @@
1
- {
2
- "name": "@grantex/cli",
3
- "version": "0.1.4",
4
- "description": "CLI tool for local Grantex development",
5
- "homepage": "https://grantex.dev",
6
- "bugs": {
7
- "url": "https://github.com/mishrasanjeev/grantex/issues"
8
- },
9
- "type": "module",
10
- "bin": {
11
- "grantex": "./dist/index.js"
12
- },
13
- "files": [
14
- "dist",
15
- "README.md"
16
- ],
17
- "scripts": {
18
- "build": "tsc -p tsconfig.build.json",
19
- "typecheck": "tsc --noEmit",
20
- "test": "vitest run",
21
- "test:watch": "vitest",
22
- "dev": "node --loader ts-node/esm src/index.ts"
23
- },
24
- "dependencies": {
25
- "@grantex/sdk": "^0.1.1",
26
- "chalk": "^5.3.0",
27
- "commander": "^12.0.0"
28
- },
29
- "overrides": {
30
- "esbuild": ">=0.25.0"
31
- },
32
- "devDependencies": {
33
- "@types/node": "^20.11.0",
34
- "typescript": "^5.3.3",
35
- "vitest": "^1.3.1"
36
- },
37
- "engines": {
38
- "node": ">=18.0.0"
39
- },
40
- "keywords": [
41
- "grantex",
42
- "cli",
43
- "ai-agents",
44
- "authorization",
45
- "oauth",
46
- "jwt",
47
- "developer-tools"
48
- ],
49
- "license": "Apache-2.0",
50
- "repository": {
51
- "type": "git",
52
- "url": "https://github.com/mishrasanjeev/grantex"
53
- }
54
- }
1
+ {
2
+ "name": "@grantex/cli",
3
+ "version": "0.1.6",
4
+ "description": "CLI tool for local Grantex development",
5
+ "homepage": "https://grantex.dev",
6
+ "bugs": {
7
+ "url": "https://github.com/mishrasanjeev/grantex/issues"
8
+ },
9
+ "type": "module",
10
+ "bin": {
11
+ "grantex": "./dist/index.js"
12
+ },
13
+ "files": [
14
+ "dist",
15
+ "README.md"
16
+ ],
17
+ "scripts": {
18
+ "build": "tsc -p tsconfig.build.json",
19
+ "typecheck": "tsc --noEmit",
20
+ "test": "vitest run",
21
+ "test:watch": "vitest",
22
+ "dev": "node --loader ts-node/esm src/index.ts"
23
+ },
24
+ "dependencies": {
25
+ "@grantex/sdk": "^0.1.1",
26
+ "chalk": "^5.3.0",
27
+ "commander": "^12.0.0"
28
+ },
29
+ "overrides": {
30
+ "esbuild": ">=0.25.0"
31
+ },
32
+ "devDependencies": {
33
+ "@types/node": "^20.11.0",
34
+ "typescript": "^5.3.3",
35
+ "vitest": "^1.3.1"
36
+ },
37
+ "engines": {
38
+ "node": ">=18.0.0"
39
+ },
40
+ "keywords": [
41
+ "grantex",
42
+ "cli",
43
+ "ai-agents",
44
+ "authorization",
45
+ "oauth",
46
+ "jwt",
47
+ "developer-tools",
48
+ "agent-permissions",
49
+ "delegated-auth",
50
+ "grant-token"
51
+ ],
52
+ "license": "Apache-2.0",
53
+ "repository": {
54
+ "type": "git",
55
+ "url": "https://github.com/mishrasanjeev/grantex"
56
+ }
57
+ }