pilot-ai 0.3.1 → 0.3.2

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.
@@ -0,0 +1,4 @@
1
+ export declare function addUser(platform: string, userId: string): Promise<void>;
2
+ export declare function removeUser(platform: string, userId: string): Promise<void>;
3
+ export declare function listUsers(): Promise<void>;
4
+ //# sourceMappingURL=user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/cli/user.ts"],"names":[],"mappings":"AAaA,wBAAsB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA4B7E;AAED,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA4BhF;AAED,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAc/C"}
@@ -0,0 +1,68 @@
1
+ import { loadRawConfig, saveConfig, configExists } from '../config/store.js';
2
+ import { configSchema } from '../config/schema.js';
3
+ const VALID_PLATFORMS = ['slack', 'telegram'];
4
+ function validatePlatform(platform) {
5
+ if (!VALID_PLATFORMS.includes(platform)) {
6
+ throw new Error(`Invalid platform "${platform}". Use "slack" or "telegram".`);
7
+ }
8
+ return platform;
9
+ }
10
+ export async function addUser(platform, userId) {
11
+ const p = validatePlatform(platform);
12
+ if (!(await configExists())) {
13
+ console.error('Configuration not found. Run "npx pilot-ai init" first.');
14
+ process.exit(1);
15
+ }
16
+ const raw = await loadRawConfig();
17
+ const config = configSchema.parse(raw);
18
+ const users = config.security.allowedUsers[p];
19
+ if (users.includes(userId)) {
20
+ console.log(`User "${userId}" is already authorized on ${p}.`);
21
+ return;
22
+ }
23
+ users.push(userId);
24
+ // Save back the raw config with updated allowedUsers
25
+ const security = (raw.security ?? {});
26
+ const allowedUsers = (security.allowedUsers ?? {});
27
+ allowedUsers[p] = users;
28
+ security.allowedUsers = allowedUsers;
29
+ raw.security = security;
30
+ await saveConfig(raw);
31
+ console.log(`Added user "${userId}" to ${p} authorized users.`);
32
+ }
33
+ export async function removeUser(platform, userId) {
34
+ const p = validatePlatform(platform);
35
+ if (!(await configExists())) {
36
+ console.error('Configuration not found. Run "npx pilot-ai init" first.');
37
+ process.exit(1);
38
+ }
39
+ const raw = await loadRawConfig();
40
+ const config = configSchema.parse(raw);
41
+ const users = config.security.allowedUsers[p];
42
+ const index = users.indexOf(userId);
43
+ if (index === -1) {
44
+ console.log(`User "${userId}" is not in ${p} authorized users.`);
45
+ return;
46
+ }
47
+ users.splice(index, 1);
48
+ const security = (raw.security ?? {});
49
+ const allowedUsers = (security.allowedUsers ?? {});
50
+ allowedUsers[p] = users;
51
+ security.allowedUsers = allowedUsers;
52
+ raw.security = security;
53
+ await saveConfig(raw);
54
+ console.log(`Removed user "${userId}" from ${p} authorized users.`);
55
+ }
56
+ export async function listUsers() {
57
+ if (!(await configExists())) {
58
+ console.error('Configuration not found. Run "npx pilot-ai init" first.');
59
+ process.exit(1);
60
+ }
61
+ const raw = await loadRawConfig();
62
+ const config = configSchema.parse(raw);
63
+ const { slack, telegram } = config.security.allowedUsers;
64
+ console.log('Authorized users:');
65
+ console.log(` Slack: ${slack.length > 0 ? slack.join(', ') : '(none)'}`);
66
+ console.log(` Telegram: ${telegram.length > 0 ? telegram.join(', ') : '(none)'}`);
67
+ }
68
+ //# sourceMappingURL=user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/cli/user.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ export declare function getPilotDir(): string;
3
3
  export declare function getConfigPath(): string;
4
4
  export declare function ensurePilotDir(): Promise<void>;
5
5
  export declare function loadConfig(): Promise<PilotConfig>;
6
+ export declare function loadRawConfig(): Promise<Record<string, unknown>>;
6
7
  export declare function saveConfig(config: Partial<PilotConfig>): Promise<void>;
7
8
  export declare function configExists(): Promise<boolean>;
8
9
  //# sourceMappingURL=store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/config/store.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAG7D,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAID,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAKpD;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,WAAW,CAAC,CAiBvD;AAiDD,wBAAsB,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAK5E;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,CAOrD"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/config/store.ts"],"names":[],"mappings":"AAGA,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAG7D,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAID,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAKpD;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,WAAW,CAAC,CAiBvD;AAiDD,wBAAsB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAGtE;AAED,wBAAsB,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAK5E;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,CAOrD"}
@@ -71,6 +71,10 @@ async function resolveKeychainSecrets(config) {
71
71
  }
72
72
  return resolved;
73
73
  }
74
+ export async function loadRawConfig() {
75
+ const content = await fs.readFile(getConfigPath(), 'utf-8');
76
+ return JSON.parse(content);
77
+ }
74
78
  export async function saveConfig(config) {
75
79
  await ensurePilotDir();
76
80
  const content = JSON.stringify(config, null, 2) + '\n';
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/config/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/config/store.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -65,6 +65,31 @@ program
65
65
  process.on('SIGTERM', shutdown);
66
66
  process.on('SIGINT', shutdown);
67
67
  });
68
+ program
69
+ .command('adduser')
70
+ .description('Add an authorized user')
71
+ .argument('<platform>', 'Platform: slack or telegram')
72
+ .argument('<userId>', 'User ID to authorize')
73
+ .action(async (platform, userId) => {
74
+ const { addUser } = await import('./cli/user.js');
75
+ await addUser(platform, userId);
76
+ });
77
+ program
78
+ .command('removeuser')
79
+ .description('Remove an authorized user')
80
+ .argument('<platform>', 'Platform: slack or telegram')
81
+ .argument('<userId>', 'User ID to remove')
82
+ .action(async (platform, userId) => {
83
+ const { removeUser } = await import('./cli/user.js');
84
+ await removeUser(platform, userId);
85
+ });
86
+ program
87
+ .command('listusers')
88
+ .description('List all authorized users')
89
+ .action(async () => {
90
+ const { listUsers } = await import('./cli/user.js');
91
+ await listUsers();
92
+ });
68
93
  program.addCommand(createProjectCommand());
69
94
  program.parse();
70
95
  //# 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":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pilot-ai",
3
- "version": "0.3.1",
3
+ "version": "0.3.2",
4
4
  "description": "Personal AI agent that controls your macOS via Slack or Telegram",
5
5
  "type": "module",
6
6
  "bin": {