@panguard-ai/panguard 0.3.1 → 0.3.3

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 (72) hide show
  1. package/dist/cli/auth-guard.d.ts +9 -7
  2. package/dist/cli/auth-guard.d.ts.map +1 -1
  3. package/dist/cli/auth-guard.js +33 -199
  4. package/dist/cli/auth-guard.js.map +1 -1
  5. package/dist/cli/commands/doctor.d.ts.map +1 -1
  6. package/dist/cli/commands/doctor.js +146 -26
  7. package/dist/cli/commands/doctor.js.map +1 -1
  8. package/dist/cli/commands/guard.d.ts.map +1 -1
  9. package/dist/cli/commands/guard.js +264 -7
  10. package/dist/cli/commands/guard.js.map +1 -1
  11. package/dist/cli/commands/hacktivity.d.ts +10 -0
  12. package/dist/cli/commands/hacktivity.d.ts.map +1 -0
  13. package/dist/cli/commands/hacktivity.js +308 -0
  14. package/dist/cli/commands/hacktivity.js.map +1 -0
  15. package/dist/cli/commands/login.d.ts +3 -4
  16. package/dist/cli/commands/login.d.ts.map +1 -1
  17. package/dist/cli/commands/login.js +8 -258
  18. package/dist/cli/commands/login.js.map +1 -1
  19. package/dist/cli/commands/logout.d.ts +3 -3
  20. package/dist/cli/commands/logout.d.ts.map +1 -1
  21. package/dist/cli/commands/logout.js +7 -35
  22. package/dist/cli/commands/logout.js.map +1 -1
  23. package/dist/cli/commands/report.d.ts +2 -2
  24. package/dist/cli/commands/report.d.ts.map +1 -1
  25. package/dist/cli/commands/report.js +30 -40
  26. package/dist/cli/commands/report.js.map +1 -1
  27. package/dist/cli/commands/scan.d.ts.map +1 -1
  28. package/dist/cli/commands/scan.js +16 -19
  29. package/dist/cli/commands/scan.js.map +1 -1
  30. package/dist/cli/commands/setup-skill-scan.d.ts +39 -0
  31. package/dist/cli/commands/setup-skill-scan.d.ts.map +1 -0
  32. package/dist/cli/commands/setup-skill-scan.js +186 -0
  33. package/dist/cli/commands/setup-skill-scan.js.map +1 -0
  34. package/dist/cli/commands/setup.d.ts +11 -0
  35. package/dist/cli/commands/setup.d.ts.map +1 -0
  36. package/dist/cli/commands/setup.js +219 -0
  37. package/dist/cli/commands/setup.js.map +1 -0
  38. package/dist/cli/commands/status.js +43 -0
  39. package/dist/cli/commands/status.js.map +1 -1
  40. package/dist/cli/commands/threat.d.ts +3 -0
  41. package/dist/cli/commands/threat.d.ts.map +1 -1
  42. package/dist/cli/commands/threat.js +31 -11
  43. package/dist/cli/commands/threat.js.map +1 -1
  44. package/dist/cli/commands/trap.d.ts +2 -2
  45. package/dist/cli/commands/trap.d.ts.map +1 -1
  46. package/dist/cli/commands/trap.js +32 -29
  47. package/dist/cli/commands/trap.js.map +1 -1
  48. package/dist/cli/commands/upgrade.d.ts +3 -4
  49. package/dist/cli/commands/upgrade.d.ts.map +1 -1
  50. package/dist/cli/commands/upgrade.js +10 -234
  51. package/dist/cli/commands/upgrade.js.map +1 -1
  52. package/dist/cli/commands/whoami.d.ts +2 -2
  53. package/dist/cli/commands/whoami.d.ts.map +1 -1
  54. package/dist/cli/commands/whoami.js +9 -60
  55. package/dist/cli/commands/whoami.js.map +1 -1
  56. package/dist/cli/index.js +4 -0
  57. package/dist/cli/index.js.map +1 -1
  58. package/dist/cli/interactive.d.ts +1 -1
  59. package/dist/cli/interactive.d.ts.map +1 -1
  60. package/dist/cli/interactive.js +477 -236
  61. package/dist/cli/interactive.js.map +1 -1
  62. package/dist/cli/menu.d.ts.map +1 -1
  63. package/dist/cli/menu.js +2 -5
  64. package/dist/cli/menu.js.map +1 -1
  65. package/dist/index.d.ts +0 -1
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +2 -2
  68. package/dist/index.js.map +1 -1
  69. package/dist/init/wizard-runner.d.ts.map +1 -1
  70. package/dist/init/wizard-runner.js +136 -6
  71. package/dist/init/wizard-runner.js.map +1 -1
  72. package/package.json +25 -13
@@ -1,258 +1,34 @@
1
1
  /**
2
- * `panguard upgrade` - Self-service plan upgrade via Lemon Squeezy
3
- * `panguard upgrade` - 透過 Lemon Squeezy 自助升級方案
2
+ * `panguard upgrade` - All features are free and open source
3
+ * `panguard upgrade` - 所有功能皆免費開源
4
4
  *
5
- * Shows current plan, lists available tiers, opens checkout in browser.
6
- * Also supports `panguard upgrade portal` for subscription management.
5
+ * Informs users that all features are available at no cost.
7
6
  *
8
7
  * @module @panguard-ai/panguard/cli/commands/upgrade
9
8
  */
10
9
  import { Command } from 'commander';
11
- import { execFile } from 'node:child_process';
12
- import { c, box, spinner, statusPanel } from '@panguard-ai/core';
13
- import { loadCredentials, isTokenExpired, tierDisplayName, TIER_LEVEL } from '../credentials.js';
14
- import { PRICING_TIERS, refreshTierInBackground } from '../auth-guard.js';
15
- const PLAN_ORDER = ['solo', 'pro', 'business'];
16
10
  export function upgradeCommand() {
17
11
  const cmd = new Command('upgrade')
18
12
  .description('Upgrade your plan / 升級方案')
19
13
  .option('--lang <language>', 'Language override')
20
- .action(async (opts) => {
21
- await runUpgrade(opts);
14
+ .action(async (_opts) => {
15
+ console.log('All Panguard features are free and open source.');
16
+ console.log('Visit https://github.com/panguard-ai/panguard-ai for more info.');
22
17
  });
23
18
  cmd
24
19
  .command('portal')
25
20
  .description('Open subscription management portal / 開啟訂閱管理')
26
21
  .action(async () => {
27
- await runPortal();
22
+ console.log('All Panguard features are free and open source.');
23
+ console.log('Visit https://github.com/panguard-ai/panguard-ai for more info.');
28
24
  });
29
25
  cmd
30
26
  .command('status')
31
27
  .description('Check billing status / 查看帳單狀態')
32
28
  .action(async () => {
33
- await runBillingStatus();
29
+ console.log('All Panguard features are free and open source.');
30
+ console.log('Visit https://github.com/panguard-ai/panguard-ai for more info.');
34
31
  });
35
32
  return cmd;
36
33
  }
37
- async function runUpgrade(opts) {
38
- const lang = opts.lang === 'en' ? 'en' : 'zh-TW';
39
- const creds = loadCredentials();
40
- if (!creds || isTokenExpired(creds)) {
41
- console.log('');
42
- console.log(box(lang === 'zh-TW'
43
- ? `\u9700\u8981\u5148\u767B\u5165\u3002\u8ACB\u57F7\u884C ${c.sage('panguard login')}`
44
- : `Please log in first. Run ${c.sage('panguard login')}`, { borderColor: c.caution, title: 'Panguard AI' }));
45
- console.log('');
46
- process.exitCode = 1;
47
- return;
48
- }
49
- const currentLevel = TIER_LEVEL[creds.tier] ?? 0;
50
- const currentName = tierDisplayName(creds.tier);
51
- // Show current plan
52
- console.log('');
53
- const items = [
54
- {
55
- label: lang === 'zh-TW' ? '\u76EE\u524D\u65B9\u6848' : 'Current Plan',
56
- value: currentName,
57
- status: 'safe',
58
- },
59
- { label: lang === 'zh-TW' ? '\u4FE1\u7BB1' : 'Email', value: creds.email },
60
- ];
61
- console.log(statusPanel(lang === 'zh-TW' ? '\u65B9\u6848\u5347\u7D1A' : 'Plan Upgrade', items));
62
- console.log('');
63
- // List available upgrades
64
- const upgrades = PLAN_ORDER.filter((t) => (TIER_LEVEL[t] ?? 0) > currentLevel);
65
- if (upgrades.length === 0) {
66
- console.log(` ${c.safe('\u2713')} ${lang === 'zh-TW'
67
- ? '\u60A8\u5DF2\u5728\u6700\u9AD8\u65B9\u6848\uFF01'
68
- : "You're already on the highest plan!"}`);
69
- console.log('');
70
- console.log(c.dim(lang === 'zh-TW'
71
- ? ` \u7BA1\u7406\u8A02\u95B1: ${c.sage('panguard upgrade portal')}`
72
- : ` Manage subscription: ${c.sage('panguard upgrade portal')}`));
73
- console.log('');
74
- return;
75
- }
76
- console.log(` ${lang === 'zh-TW' ? '\u53EF\u7528\u65B9\u6848:' : 'Available plans:'}`);
77
- console.log('');
78
- for (let i = 0; i < upgrades.length; i++) {
79
- const tier = upgrades[i];
80
- const pricing = PRICING_TIERS[tier];
81
- const name = tierDisplayName(tier);
82
- const price = pricing ? `$${pricing.price}${pricing.unit}` : '';
83
- const machines = pricing ? pricing.machines : '';
84
- console.log(` ${c.sage(`${i + 1}.`)} ${c.bold(name)} ${price} ${c.dim(`${machines} ${lang === 'zh-TW' ? '\u53F0\u6A5F\u5668' : 'machine(s)'}`)}`);
85
- }
86
- console.log('');
87
- console.log(c.dim(lang === 'zh-TW'
88
- ? ' \u8F38\u5165\u7DE8\u865F\u9078\u64C7\u65B9\u6848 (Ctrl+C \u53D6\u6D88):'
89
- : ' Enter number to select plan (Ctrl+C to cancel):'));
90
- // Read user selection from stdin
91
- const selection = await readLine();
92
- const idx = parseInt(selection.trim(), 10) - 1;
93
- if (isNaN(idx) || idx < 0 || idx >= upgrades.length) {
94
- console.log(c.dim(lang === 'zh-TW' ? ' \u5DF2\u53D6\u6D88' : ' Cancelled'));
95
- return;
96
- }
97
- const selectedTier = upgrades[idx];
98
- // Call billing checkout API
99
- const sp = spinner(lang === 'zh-TW'
100
- ? '\u6B63\u5728\u5EFA\u7ACB\u7D50\u5E33\u9023\u7D50...'
101
- : 'Creating checkout session...');
102
- try {
103
- const res = await fetch(`${creds.apiUrl}/api/billing/checkout`, {
104
- method: 'POST',
105
- headers: {
106
- Authorization: `Bearer ${creds.token}`,
107
- 'Content-Type': 'application/json',
108
- },
109
- body: JSON.stringify({ tier: selectedTier }),
110
- });
111
- const data = (await res.json());
112
- if (!data.ok || !data.data?.url) {
113
- sp.fail(data.error ?? 'Failed to create checkout session');
114
- process.exitCode = 1;
115
- return;
116
- }
117
- sp.succeed(lang === 'zh-TW' ? '\u7D50\u5E33\u9023\u7D50\u5DF2\u5EFA\u7ACB' : 'Checkout session created');
118
- console.log('');
119
- console.log(lang === 'zh-TW' ? ` \u6B63\u5728\u958B\u555F\u700F\u89BD\u5668...` : ' Opening browser...');
120
- await openBrowser(data.data.url);
121
- console.log('');
122
- console.log(lang === 'zh-TW'
123
- ? ` ${c.sage('\u25C6')} \u8ACB\u5728\u700F\u89BD\u5668\u4E2D\u5B8C\u6210\u4ED8\u6B3E\u3002`
124
- : ` ${c.sage('\u25C6')} Please complete payment in the browser.`);
125
- console.log(c.dim(lang === 'zh-TW'
126
- ? ' \u4ED8\u6B3E\u5B8C\u6210\u5F8C\uFF0C\u60A8\u7684\u65B9\u6848\u5C07\u81EA\u52D5\u5347\u7D1A\u3002'
127
- : ' Your plan will be upgraded automatically after payment.'));
128
- console.log('');
129
- // Trigger a background tier refresh so next CLI command picks up the new tier
130
- refreshTierInBackground();
131
- }
132
- catch (err) {
133
- sp.fail(`${err instanceof Error ? err.message : String(err)}`);
134
- process.exitCode = 1;
135
- }
136
- }
137
- async function runPortal() {
138
- const creds = loadCredentials();
139
- if (!creds || isTokenExpired(creds)) {
140
- console.log('');
141
- console.log(` ${c.caution('Please log in first:')} ${c.sage('panguard login')}`);
142
- console.log('');
143
- process.exitCode = 1;
144
- return;
145
- }
146
- const sp = spinner('Opening subscription portal...');
147
- try {
148
- const res = await fetch(`${creds.apiUrl}/api/billing/portal`, {
149
- headers: { Authorization: `Bearer ${creds.token}` },
150
- });
151
- const data = (await res.json());
152
- if (!data.ok || !data.data?.url) {
153
- sp.fail(data.error ?? 'No active subscription found');
154
- if (!data.ok && data.error?.includes('No active subscription')) {
155
- console.log(c.dim(` Run ${c.sage('panguard upgrade')} to subscribe.`));
156
- }
157
- return;
158
- }
159
- sp.succeed('Portal link ready');
160
- await openBrowser(data.data.url);
161
- console.log(c.dim(' Subscription portal opened in browser.'));
162
- console.log('');
163
- }
164
- catch (err) {
165
- sp.fail(`${err instanceof Error ? err.message : String(err)}`);
166
- process.exitCode = 1;
167
- }
168
- }
169
- async function runBillingStatus() {
170
- const creds = loadCredentials();
171
- if (!creds || isTokenExpired(creds)) {
172
- console.log('');
173
- console.log(` ${c.caution('Please log in first:')} ${c.sage('panguard login')}`);
174
- console.log('');
175
- process.exitCode = 1;
176
- return;
177
- }
178
- const sp = spinner('Fetching billing status...');
179
- try {
180
- const res = await fetch(`${creds.apiUrl}/api/billing/status`, {
181
- headers: { Authorization: `Bearer ${creds.token}` },
182
- });
183
- const data = (await res.json());
184
- if (!data.ok) {
185
- sp.fail('Failed to fetch billing status');
186
- return;
187
- }
188
- sp.succeed('Billing info loaded');
189
- console.log('');
190
- const d = data.data;
191
- const statusItems = [
192
- { label: 'Plan', value: tierDisplayName(d.tier), status: 'safe' },
193
- ];
194
- if (d.subscription) {
195
- statusItems.push({ label: 'Status', value: d.subscription.status });
196
- if (d.subscription.renewsAt) {
197
- statusItems.push({
198
- label: 'Renews',
199
- value: new Date(d.subscription.renewsAt).toLocaleDateString(),
200
- });
201
- }
202
- if (d.subscription.endsAt) {
203
- statusItems.push({
204
- label: 'Ends',
205
- value: new Date(d.subscription.endsAt).toLocaleDateString(),
206
- status: 'caution',
207
- });
208
- }
209
- }
210
- else {
211
- statusItems.push({ label: 'Subscription', value: 'None (free tier)' });
212
- }
213
- console.log(statusPanel('Billing Status', statusItems));
214
- console.log('');
215
- }
216
- catch (err) {
217
- sp.fail(`${err instanceof Error ? err.message : String(err)}`);
218
- process.exitCode = 1;
219
- }
220
- }
221
- // ── Helpers ─────────────────────────────────────────────────
222
- function readLine() {
223
- return new Promise((resolve) => {
224
- process.stdout.write(' > ');
225
- process.stdin.setEncoding('utf-8');
226
- process.stdin.resume();
227
- process.stdin.once('data', (data) => {
228
- process.stdin.pause();
229
- resolve(String(data));
230
- });
231
- });
232
- }
233
- function openBrowser(url) {
234
- return new Promise((resolve, reject) => {
235
- const platform = process.platform;
236
- let bin;
237
- let args;
238
- if (platform === 'darwin') {
239
- bin = 'open';
240
- args = [url];
241
- }
242
- else if (platform === 'win32') {
243
- bin = 'cmd';
244
- args = ['/c', 'start', '', url];
245
- }
246
- else {
247
- bin = 'xdg-open';
248
- args = [url];
249
- }
250
- execFile(bin, args, (err) => {
251
- if (err)
252
- reject(err);
253
- else
254
- resolve();
255
- });
256
- });
257
- }
258
34
  //# sourceMappingURL=upgrade.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../../src/cli/commands/upgrade.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"upgrade.js","sourceRoot":"","sources":["../../../src/cli/commands/upgrade.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,UAAU,cAAc;IAC5B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC;SAC/B,WAAW,CAAC,0BAA0B,CAAC;SACvC,MAAM,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;SAChD,MAAM,CAAC,KAAK,EAAE,KAAwB,EAAE,EAAE;QACzC,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;IAEL,GAAG;SACA,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,8CAA8C,CAAC;SAC3D,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;IAEL,GAAG;SACA,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,+BAA+B,CAAC;SAC5C,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;IACjF,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
- * `panguard whoami` - Show current user info
3
- * `panguard whoami` - 顯示目前用戶資訊
2
+ * `panguard whoami` - All features available without login
3
+ * `panguard whoami` - 所有功能無需登入即可使用
4
4
  *
5
5
  * @module @panguard-ai/panguard/cli/commands/whoami
6
6
  */
@@ -1 +1 @@
1
- {"version":3,"file":"whoami.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/whoami.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,wBAAgB,aAAa,IAAI,OAAO,CA6FvC"}
1
+ {"version":3,"file":"whoami.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/whoami.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,wBAAgB,aAAa,IAAI,OAAO,CAkBvC"}
@@ -1,77 +1,26 @@
1
1
  /**
2
- * `panguard whoami` - Show current user info
3
- * `panguard whoami` - 顯示目前用戶資訊
2
+ * `panguard whoami` - All features available without login
3
+ * `panguard whoami` - 所有功能無需登入即可使用
4
4
  *
5
5
  * @module @panguard-ai/panguard/cli/commands/whoami
6
6
  */
7
7
  import { Command } from 'commander';
8
- import { c, symbols, statusPanel, timeAgo } from '@panguard-ai/core';
9
- import { loadCredentials, isTokenExpired, tierDisplayName } from '../credentials.js';
10
8
  export function whoamiCommand() {
11
9
  return new Command('whoami')
12
- .description('Show current user info / \u986F\u793A\u76EE\u524D\u7528\u6236\u8CC7\u8A0A')
10
+ .description('Show current user info / 顯示目前用戶資訊')
13
11
  .option('--json', 'Output as JSON')
14
12
  .option('--lang <language>', 'Language override')
15
13
  .action(async (opts) => {
16
- const lang = opts.lang === 'en' ? 'en' : 'zh-TW';
17
- const creds = loadCredentials();
18
- if (!creds) {
19
- if (opts.json) {
20
- console.log(JSON.stringify({ authenticated: false }));
21
- return;
22
- }
23
- console.log('');
24
- console.log(` ${symbols.warn} ${lang === 'zh-TW'
25
- ? '\u672A\u767B\u5165\u3002\u57F7\u884C \u300Cpanguard login\u300D\u4F86\u9A57\u8B49\u3002'
26
- : 'Not logged in. Run "panguard login" to authenticate.'}`);
27
- console.log('');
28
- process.exitCode = 1;
29
- return;
30
- }
31
- const expired = isTokenExpired(creds);
32
14
  if (opts.json) {
33
- console.log(JSON.stringify({
34
- authenticated: !expired,
35
- email: creds.email,
36
- name: creds.name,
37
- tier: creds.tier,
38
- expiresAt: creds.expiresAt,
39
- expired,
40
- apiUrl: creds.apiUrl,
41
- }, null, 2));
15
+ console.log(JSON.stringify({ authenticated: true, tier: 'community', note: 'All features available (no login required)' }, null, 2));
42
16
  return;
43
17
  }
44
- if (expired) {
45
- console.log('');
46
- console.log(` ${symbols.warn} ${lang === 'zh-TW'
47
- ? `\u5E33\u865F ${c.sage(creds.email)} \u7684 session \u5DF2\u904E\u671F\u3002\u8ACB\u91CD\u65B0\u57F7\u884C ${c.sage('panguard login')}\u3002`
48
- : `Session for ${c.sage(creds.email)} has expired. Run ${c.sage('panguard login')} to re-authenticate.`}`);
49
- console.log('');
50
- process.exitCode = 1;
51
- return;
52
- }
53
- // Build status display
54
- const items = [
55
- { label: lang === 'zh-TW' ? '\u4FE1\u7BB1' : 'Email', value: creds.email, status: 'safe' },
56
- { label: lang === 'zh-TW' ? '\u540D\u7A31' : 'Name', value: creds.name },
57
- {
58
- label: lang === 'zh-TW' ? '\u8A02\u95B1\u7B49\u7D1A' : 'Tier',
59
- value: tierDisplayName(creds.tier),
60
- status: creds.tier === 'enterprise' || creds.tier === 'pro' || creds.tier === 'business'
61
- ? 'safe'
62
- : undefined,
63
- },
64
- {
65
- label: lang === 'zh-TW' ? '\u5230\u671F\u6642\u9593' : 'Expires',
66
- value: timeAgo(creds.expiresAt),
67
- },
68
- {
69
- label: lang === 'zh-TW' ? '\u4F3A\u670D\u5668' : 'Server',
70
- value: creds.apiUrl,
71
- },
72
- ];
73
18
  console.log('');
74
- console.log(statusPanel(lang === 'zh-TW' ? 'Panguard AI \u5E33\u6236\u8CC7\u8A0A' : 'Panguard AI Account', items));
19
+ console.log(' All features available (no login required).');
20
+ console.log(' 所有功能皆可使用(無需登入)。');
21
+ console.log('');
22
+ console.log(' Panguard AI is free and open source.');
23
+ console.log(' Visit https://github.com/panguard-ai/panguard-ai for more info.');
75
24
  console.log('');
76
25
  });
77
26
  }
@@ -1 +1 @@
1
- {"version":3,"file":"whoami.js","sourceRoot":"","sources":["../../../src/cli/commands/whoami.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"whoami.js","sourceRoot":"","sources":["../../../src/cli/commands/whoami.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,UAAU,aAAa;IAC3B,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC;SACzB,WAAW,CAAC,mCAAmC,CAAC;SAChD,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;SAChD,MAAM,CAAC,KAAK,EAAE,IAAuC,EAAE,EAAE;QACxD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,4CAA4C,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACrI,OAAO;QACT,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC;QACjF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC"}
package/dist/cli/index.js CHANGED
@@ -31,6 +31,8 @@ import { upgradeCommand } from './commands/upgrade.js';
31
31
  import { configCommand } from './commands/config.js';
32
32
  import { doctorCommand } from './commands/doctor.js';
33
33
  import { auditCommand } from './commands/audit.js';
34
+ import { hacktivityCommand } from './commands/hacktivity.js';
35
+ import { setupCommand } from './commands/setup.js';
34
36
  import { startInteractive } from './interactive.js';
35
37
  import { refreshTierInBackground } from './auth-guard.js';
36
38
  const program = new Command();
@@ -59,6 +61,8 @@ program.addCommand(upgradeCommand());
59
61
  program.addCommand(configCommand());
60
62
  program.addCommand(doctorCommand());
61
63
  program.addCommand(auditCommand());
64
+ program.addCommand(hacktivityCommand());
65
+ program.addCommand(setupCommand());
62
66
  // Refresh tier from server in background (non-blocking)
63
67
  refreshTierInBackground();
64
68
  const userArgs = process.argv.slice(2);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Panguard AI - Interactive CLI Mode
3
3
  *
4
- * Number-key menu [0]-[7] with panguard > prompt for text commands.
4
+ * Number-key menu [0]-[8] with panguard > prompt for text commands.
5
5
  * Box-bordered status panel, breadcrumb navigation, no "press any key" interrupts.
6
6
  *
7
7
  * @module @panguard-ai/panguard/cli/interactive
@@ -1 +1 @@
1
- {"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../src/cli/interactive.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA+UH,wBAAsB,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoGnE"}
1
+ {"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../src/cli/interactive.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAqWH,wBAAsB,gBAAgB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsHnE"}