@intelligentelectron/pdf-analyzer 0.2.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.
Files changed (49) hide show
  1. package/dist/cli/commands.d.ts +6 -2
  2. package/dist/cli/commands.d.ts.map +1 -1
  3. package/dist/cli/commands.js +83 -100
  4. package/dist/cli/commands.js.map +1 -1
  5. package/dist/index.d.ts +2 -1
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +9 -3
  8. package/dist/index.js.map +1 -1
  9. package/dist/keychain.d.ts +21 -7
  10. package/dist/keychain.d.ts.map +1 -1
  11. package/dist/keychain.js +79 -38
  12. package/dist/keychain.js.map +1 -1
  13. package/dist/pdf-utils.d.ts +28 -0
  14. package/dist/pdf-utils.d.ts.map +1 -0
  15. package/dist/pdf-utils.js +93 -0
  16. package/dist/pdf-utils.js.map +1 -0
  17. package/dist/providers/anthropic.d.ts +9 -0
  18. package/dist/providers/anthropic.d.ts.map +1 -0
  19. package/dist/providers/anthropic.js +69 -0
  20. package/dist/providers/anthropic.js.map +1 -0
  21. package/dist/providers/google.d.ts +13 -0
  22. package/dist/providers/google.d.ts.map +1 -0
  23. package/dist/providers/google.js +120 -0
  24. package/dist/providers/google.js.map +1 -0
  25. package/dist/providers/openai.d.ts +9 -0
  26. package/dist/providers/openai.d.ts.map +1 -0
  27. package/dist/providers/openai.js +70 -0
  28. package/dist/providers/openai.js.map +1 -0
  29. package/dist/providers/registry.d.ts +23 -0
  30. package/dist/providers/registry.d.ts.map +1 -0
  31. package/dist/providers/registry.js +44 -0
  32. package/dist/providers/registry.js.map +1 -0
  33. package/dist/providers/types.d.ts +70 -0
  34. package/dist/providers/types.d.ts.map +1 -0
  35. package/dist/providers/types.js +2 -0
  36. package/dist/providers/types.js.map +1 -0
  37. package/dist/server.d.ts +2 -1
  38. package/dist/server.d.ts.map +1 -1
  39. package/dist/server.js +27 -31
  40. package/dist/server.js.map +1 -1
  41. package/dist/service.d.ts +7 -35
  42. package/dist/service.d.ts.map +1 -1
  43. package/dist/service.js +99 -274
  44. package/dist/service.js.map +1 -1
  45. package/dist/types.d.ts +20 -12
  46. package/dist/types.d.ts.map +1 -1
  47. package/dist/types.js +15 -45
  48. package/dist/types.js.map +1 -1
  49. package/package.json +12 -4
@@ -1,5 +1,5 @@
1
1
  /**
2
- * CLI command handlers for --version, --help, --update, --set-key, and --uninstall.
2
+ * CLI command handlers for --version, --help, --setup, --update, and --uninstall.
3
3
  */
4
4
  /**
5
5
  * Print version information.
@@ -10,7 +10,11 @@ export declare const printVersion: () => void;
10
10
  */
11
11
  export declare const printHelp: () => void;
12
12
  /**
13
- * Handle the --set-key flag: store Gemini API key in OS credential store.
13
+ * Handle the --setup flag: choose provider and store API key.
14
+ */
15
+ export declare const handleSetupCommand: () => Promise<void>;
16
+ /**
17
+ * Handle the deprecated --set-key flag.
14
18
  */
15
19
  export declare const handleSetKeyCommand: () => Promise<void>;
16
20
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH;;GAEG;AACH,eAAO,MAAM,YAAY,QAAO,IAE/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,QAAO,IAuC5B,CAAC;AAsFF;;GAEG;AACH,eAAO,MAAM,mBAAmB,QAAa,OAAO,CAAC,IAAI,CA0BxD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,QAAa,OAAO,CAAC,IAAI,CAqCxD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,QAAa,OAAO,CAAC,IAAI,CAiD3D,CAAC"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"AAAA;;GAEG;AAoBH;;GAEG;AACH,eAAO,MAAM,YAAY,QAAO,IAE/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,QAAO,IA0C5B,CAAC;AAYF;;GAEG;AACH,eAAO,MAAM,kBAAkB,QAAa,OAAO,CAAC,IAAI,CAmEvD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,QAAa,OAAO,CAAC,IAAI,CAGxD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,QAAa,OAAO,CAAC,IAAI,CAmCxD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,QAAa,OAAO,CAAC,IAAI,CAoD3D,CAAC"}
@@ -1,13 +1,15 @@
1
1
  /**
2
- * CLI command handlers for --version, --help, --update, --set-key, and --uninstall.
2
+ * CLI command handlers for --version, --help, --setup, --update, and --uninstall.
3
3
  */
4
4
  import * as fs from "node:fs";
5
5
  import * as path from "node:path";
6
6
  import * as os from "node:os";
7
+ import * as clack from "@clack/prompts";
7
8
  import { VERSION, GITHUB_REPO, BINARY_NAME } from "../version.js";
8
9
  import { checkForUpdate, performUpdate } from "./updater.js";
9
10
  import { removeFromPath } from "./shell.js";
10
- import { getStoredApiKey, setStoredApiKey, deleteStoredApiKey } from "../keychain.js";
11
+ import { getApiKey, setApiKey, getActiveProvider, setActiveProvider, getModel, setModel, deleteAllCredentials, } from "../keychain.js";
12
+ import { providerList } from "../providers/registry.js";
11
13
  /**
12
14
  * Print version information.
13
15
  */
@@ -21,22 +23,25 @@ export const printHelp = () => {
21
23
  console.log(`
22
24
  ${BINARY_NAME} v${VERSION}
23
25
 
24
- MCP server for analyzing PDF documents using Gemini AI.
26
+ MCP server for analyzing PDF documents using AI.
27
+ Supports Google Gemini, Anthropic Claude, and OpenAI.
25
28
 
26
29
  USAGE:
27
30
  ${BINARY_NAME} [OPTIONS]
28
31
 
29
32
  OPTIONS:
30
33
  --version, -v Print version and exit
31
- --set-key Store your Gemini API key in the OS credential store
34
+ --setup Choose an LLM provider and store your API key
35
+ --set-key Alias for --setup (deprecated)
32
36
  --update Check for updates and apply if available
33
37
  --uninstall Remove ${BINARY_NAME} from the system
34
38
  --help, -h Show this help message
35
39
 
36
- API KEY SETUP:
37
- ${BINARY_NAME} --set-key
40
+ PROVIDER SETUP:
41
+ ${BINARY_NAME} --setup
38
42
 
39
- Stores your Gemini API key in the OS credential store (macOS Keychain,
43
+ Lets you choose a provider (Google Gemini, Anthropic Claude, or OpenAI)
44
+ and stores your API key in the OS credential store (macOS Keychain,
40
45
  Windows Credential Manager, or Linux secret-tool).
41
46
 
42
47
  INSTALLATION:
@@ -56,104 +61,81 @@ MORE INFO:
56
61
  `.trim());
57
62
  };
58
63
  /**
59
- * Simple confirmation prompt for terminal.
64
+ * Check if a clack prompt was cancelled (Ctrl+C).
60
65
  */
61
- const confirm = async (message) => {
62
- return new Promise((resolve) => {
63
- process.stdout.write(`${message} [y/N] `);
64
- const onData = (data) => {
65
- const answer = data.toString().trim().toLowerCase();
66
- process.stdin.removeListener("data", onData);
67
- process.stdin.pause();
68
- resolve(answer === "y" || answer === "yes");
69
- };
70
- process.stdin.resume();
71
- process.stdin.setEncoding("utf8");
72
- process.stdin.once("data", onData);
73
- });
74
- };
75
- /**
76
- * Read a line from the terminal with masked input (each character shown as *).
77
- */
78
- const readMaskedInput = (prompt) => {
79
- return new Promise((resolve) => {
80
- process.stdout.write(prompt);
81
- const chars = [];
82
- if (!process.stdin.isTTY) {
83
- // Non-TTY fallback: read a line normally
84
- const onData = (data) => {
85
- process.stdin.removeListener("data", onData);
86
- process.stdin.pause();
87
- resolve(data.toString().trim());
88
- };
89
- process.stdin.resume();
90
- process.stdin.setEncoding("utf8");
91
- process.stdin.once("data", onData);
92
- return;
93
- }
94
- process.stdin.setRawMode(true);
95
- process.stdin.resume();
96
- process.stdin.setEncoding("utf8");
97
- const onData = (key) => {
98
- // Ctrl+C
99
- if (key === "\u0003") {
100
- process.stdin.setRawMode(false);
101
- process.stdin.removeListener("data", onData);
102
- process.stdin.pause();
103
- process.stdout.write("\n");
104
- process.exit(130);
105
- }
106
- // Enter
107
- if (key === "\r" || key === "\n") {
108
- process.stdin.setRawMode(false);
109
- process.stdin.removeListener("data", onData);
110
- process.stdin.pause();
111
- process.stdout.write("\n");
112
- resolve(chars.join(""));
113
- return;
114
- }
115
- // Backspace / Delete
116
- if (key === "\u007F" || key === "\b") {
117
- if (chars.length > 0) {
118
- chars.pop();
119
- process.stdout.write("\b \b");
120
- }
121
- return;
122
- }
123
- // Regular character
124
- chars.push(key);
125
- process.stdout.write("*");
126
- };
127
- process.stdin.on("data", onData);
128
- });
129
- };
66
+ function assertNotCancelled(value) {
67
+ if (clack.isCancel(value)) {
68
+ clack.cancel("Setup cancelled.");
69
+ process.exit(0);
70
+ }
71
+ }
130
72
  /**
131
- * Handle the --set-key flag: store Gemini API key in OS credential store.
73
+ * Handle the --setup flag: choose provider and store API key.
132
74
  */
133
- export const handleSetKeyCommand = async () => {
134
- const existing = getStoredApiKey();
135
- if (existing) {
136
- const overwrite = await confirm("A Gemini API key is already stored. Overwrite it?");
137
- if (!overwrite) {
138
- console.log("Cancelled.");
75
+ export const handleSetupCommand = async () => {
76
+ clack.intro("pdf-analyzer setup");
77
+ const existingProvider = getActiveProvider();
78
+ const existingKey = getApiKey();
79
+ const existingModel = getModel();
80
+ if (existingProvider && existingKey) {
81
+ const providerConfig = providerList.find((p) => p.id === existingProvider);
82
+ const providerName = providerConfig?.displayName ?? existingProvider;
83
+ const modelName = providerConfig?.models.find((m) => m.id === existingModel)?.displayName ?? existingModel;
84
+ const shouldReconfigure = await clack.confirm({
85
+ message: `Already configured with ${providerName} (${modelName}). Reconfigure?`,
86
+ });
87
+ assertNotCancelled(shouldReconfigure);
88
+ if (!shouldReconfigure) {
89
+ clack.outro("No changes made.");
139
90
  return;
140
91
  }
141
92
  }
142
- const key = await readMaskedInput("Enter your Gemini API key: ");
143
- if (!key) {
144
- console.error("No key entered.");
145
- process.exit(1);
146
- }
93
+ const providerId = await clack.select({
94
+ message: "Choose your LLM provider",
95
+ options: providerList.map((p) => ({
96
+ value: p.id,
97
+ label: p.displayName,
98
+ })),
99
+ });
100
+ assertNotCancelled(providerId);
101
+ const selected = providerList.find((p) => p.id === providerId);
102
+ const modelId = await clack.select({
103
+ message: "Choose a model",
104
+ options: selected.models.map((m) => ({
105
+ value: m.id,
106
+ label: `${m.displayName} - ${m.hint}`,
107
+ })),
108
+ });
109
+ assertNotCancelled(modelId);
110
+ const selectedModel = selected.models.find((m) => m.id === modelId);
111
+ clack.note(`Model: ${selectedModel.displayName} (${modelId})\nGet your API key from: ${selected.apiKeyUrl}`, selected.displayName);
112
+ const key = await clack.password({
113
+ message: "Enter your API key",
114
+ validate: (value) => {
115
+ if (!value)
116
+ return "API key is required";
117
+ },
118
+ });
119
+ assertNotCancelled(key);
147
120
  try {
148
- setStoredApiKey(key);
149
- console.log("API key stored successfully.");
121
+ setActiveProvider(selected.id);
122
+ setModel(modelId);
123
+ setApiKey(key);
124
+ clack.outro(`${selected.displayName} (${selectedModel.displayName}) configured successfully.`);
150
125
  }
151
126
  catch (error) {
152
127
  const message = error instanceof Error ? error.message : "Unknown error";
153
- console.error(`Failed to store API key: ${message}`);
128
+ clack.cancel(`Failed to store credentials: ${message}`);
154
129
  process.exit(1);
155
130
  }
156
131
  };
132
+ /**
133
+ * Handle the deprecated --set-key flag.
134
+ */
135
+ export const handleSetKeyCommand = async () => {
136
+ clack.log.warn("--set-key is deprecated. Use --setup instead.");
137
+ await handleSetupCommand();
138
+ };
157
139
  /**
158
140
  * Handle the --update flag: check and apply updates interactively.
159
141
  */
@@ -173,15 +155,13 @@ export const handleUpdateCommand = async () => {
173
155
  console.error("Update available but no download URL found for your platform");
174
156
  process.exit(1);
175
157
  }
176
- console.log(`Update available: ${VERSION} ${check.latestVersion}`);
158
+ console.log(`Update available: ${VERSION} -> ${check.latestVersion}`);
177
159
  console.log("Downloading...");
178
160
  const result = await performUpdate(check.downloadUrl, check.latestVersion);
179
161
  if (!result.success) {
180
162
  console.error(`Update failed: ${result.error}`);
181
163
  process.exit(1);
182
164
  }
183
- // On Windows, we need to ensure stdout is flushed before exiting
184
- // because replacing the running executable can cause issues
185
165
  const message = `Successfully updated to ${result.newVersion}\n`;
186
166
  await new Promise((resolve) => {
187
167
  process.stdout.write(message, () => resolve());
@@ -199,17 +179,20 @@ export const handleUninstallCommand = async () => {
199
179
  console.log(` - Binary: ${binaryPath}`);
200
180
  console.log(` - Directory: ${installDir}`);
201
181
  console.log(" - PATH entries from shell config files");
202
- console.log(" - Stored API key from OS credential store");
182
+ console.log(" - Stored credentials from OS credential store");
203
183
  console.log("");
204
- const confirmed = await confirm("Are you sure you want to uninstall?");
184
+ const confirmed = await clack.confirm({
185
+ message: "Are you sure you want to uninstall?",
186
+ });
187
+ assertNotCancelled(confirmed);
205
188
  if (!confirmed) {
206
189
  console.log("Uninstall cancelled.");
207
190
  return;
208
191
  }
209
192
  console.log("");
210
- // Remove stored API key from OS credential store
211
- deleteStoredApiKey();
212
- console.log("Removed stored API key");
193
+ // Remove all stored credentials
194
+ deleteAllCredentials();
195
+ console.log("Removed stored credentials");
213
196
  // Remove PATH entries from shell rc files
214
197
  const modifiedFiles = removeFromPath();
215
198
  if (modifiedFiles.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/cli/commands.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -7,7 +7,8 @@
7
7
  *
8
8
  * CLI flags:
9
9
  * --version, -v Print version and exit
10
- * --set-key Store Gemini API key in OS credential store
10
+ * --setup Choose LLM provider and store API key
11
+ * --set-key Deprecated alias for --setup
11
12
  * --update Check for updates and apply if available
12
13
  * --uninstall Remove pdf-analyzer from the system
13
14
  * --help, -h Show help
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;GAYG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;GAaG"}
package/dist/index.js CHANGED
@@ -7,13 +7,14 @@
7
7
  *
8
8
  * CLI flags:
9
9
  * --version, -v Print version and exit
10
- * --set-key Store Gemini API key in OS credential store
10
+ * --setup Choose LLM provider and store API key
11
+ * --set-key Deprecated alias for --setup
11
12
  * --update Check for updates and apply if available
12
13
  * --uninstall Remove pdf-analyzer from the system
13
14
  * --help, -h Show help
14
15
  */
15
16
  import { autoUpdate, reexec } from "./cli/updater.js";
16
- import { printVersion, printHelp, handleSetKeyCommand, handleUpdateCommand, handleUninstallCommand, } from "./cli/commands.js";
17
+ import { printVersion, printHelp, handleSetupCommand, handleSetKeyCommand, handleUpdateCommand, handleUninstallCommand, } from "./cli/commands.js";
17
18
  import { runServer } from "./server.js";
18
19
  /**
19
20
  * Main entry point for the PDF Analyzer MCP server.
@@ -30,7 +31,12 @@ const main = async () => {
30
31
  printHelp();
31
32
  return;
32
33
  }
33
- // Handle --set-key
34
+ // Handle --setup
35
+ if (args.includes("--setup")) {
36
+ await handleSetupCommand();
37
+ return;
38
+ }
39
+ // Handle --set-key (deprecated alias)
34
40
  if (args.includes("--set-key")) {
35
41
  await handleSetKeyCommand();
36
42
  return;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EACL,YAAY,EACZ,SAAS,EACT,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;GAEG;AACH,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;IACrC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,wBAAwB;IACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,YAAY,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IAED,qBAAqB;IACrB,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,SAAS,EAAE,CAAC;QACZ,OAAO;IACT,CAAC;IAED,mBAAmB;IACnB,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,MAAM,mBAAmB,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,kBAAkB;IAClB,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,MAAM,mBAAmB,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,qBAAqB;IACrB,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACjC,MAAM,sBAAsB,EAAE,CAAC;QAC/B,OAAO;IACT,CAAC;IAED,mFAAmF;IACnF,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,OAAO;IACT,CAAC;IAED,+BAA+B;IAC/B,MAAM,OAAO,GAAG,MAAM,UAAU,EAAE,CAAC;IACnC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,EAAE,CAAC;IACX,CAAC;IAED,MAAM,SAAS,EAAE,CAAC;AACpB,CAAC,CAAC;AAEF,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,EACL,YAAY,EACZ,SAAS,EACT,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;GAEG;AACH,MAAM,IAAI,GAAG,KAAK,IAAmB,EAAE;IACrC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,wBAAwB;IACxB,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,YAAY,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IAED,qBAAqB;IACrB,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,SAAS,EAAE,CAAC;QACZ,OAAO;IACT,CAAC;IAED,iBAAiB;IACjB,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,kBAAkB,EAAE,CAAC;QAC3B,OAAO;IACT,CAAC;IAED,sCAAsC;IACtC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,MAAM,mBAAmB,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,kBAAkB;IAClB,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,MAAM,mBAAmB,EAAE,CAAC;QAC5B,OAAO;IACT,CAAC;IAED,qBAAqB;IACrB,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACjC,MAAM,sBAAsB,EAAE,CAAC;QAC/B,OAAO;IACT,CAAC;IAED,mFAAmF;IACnF,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QACtD,OAAO;IACT,CAAC;IAED,+BAA+B;IAC/B,MAAM,OAAO,GAAG,MAAM,UAAU,EAAE,CAAC;IACnC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,EAAE,CAAC;IACX,CAAC;IAED,MAAM,SAAS,EAAE,CAAC;AACpB,CAAC,CAAC;AAEF,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IACtC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * OS-native credential storage for GEMINI_API_KEY.
2
+ * OS-native credential storage.
3
3
  *
4
4
  * Uses platform CLI tools (no native addons) so it works with Bun-compiled binaries.
5
5
  * - macOS: `security` CLI (Keychain Access)
@@ -11,10 +11,24 @@
11
11
  * Wraps in single quotes and escapes any embedded single quotes.
12
12
  */
13
13
  export declare function escapeShellArg(arg: string): string;
14
- /** Read the stored API key from the OS credential store. Returns null if not found. */
15
- export declare function getStoredApiKey(service?: string): string | null;
16
- /** Write the API key to the OS credential store. */
17
- export declare function setStoredApiKey(key: string, service?: string): void;
18
- /** Remove the stored API key from the OS credential store (best-effort). */
19
- export declare function deleteStoredApiKey(service?: string): void;
14
+ /** Read a value from the OS credential store. */
15
+ export declare function getStoredValue(account: string, service?: string): string | null;
16
+ /** Write a value to the OS credential store. */
17
+ export declare function setStoredValue(account: string, value: string, service?: string): void;
18
+ /** Remove a value from the OS credential store (best-effort). */
19
+ export declare function deleteStoredValue(account: string, service?: string): void;
20
+ /** Get the active provider ID. Returns null if not set. */
21
+ export declare function getActiveProvider(): string | null;
22
+ /** Store the active provider ID. */
23
+ export declare function setActiveProvider(providerId: string): void;
24
+ /** Get the stored API key. Returns null if not found. */
25
+ export declare function getApiKey(): string | null;
26
+ /** Store the API key. */
27
+ export declare function setApiKey(key: string): void;
28
+ /** Get the stored model ID. Returns null if not set. */
29
+ export declare function getModel(): string | null;
30
+ /** Store the selected model ID. */
31
+ export declare function setModel(modelId: string): void;
32
+ /** Delete all stored credentials (provider + API key + model). Best-effort. */
33
+ export declare function deleteAllCredentials(): void;
20
34
  //# sourceMappingURL=keychain.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keychain.d.ts","sourceRoot":"","sources":["../src/keychain.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAElD;AAoID,uFAAuF;AACvF,wBAAgB,eAAe,CAAC,OAAO,GAAE,MAA6B,GAAG,MAAM,GAAG,IAAI,CAWrF;AAED,oDAAoD;AACpD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,GAAE,MAA6B,GAAG,IAAI,CAczF;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,MAA6B,GAAG,IAAI,CAe/E"}
1
+ {"version":3,"file":"keychain.d.ts","sourceRoot":"","sources":["../src/keychain.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAElD;AA2ID,iDAAiD;AACjD,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,MAAwB,GAAG,MAAM,GAAG,IAAI,CAWhG;AAED,gDAAgD;AAChD,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,MAAwB,GAChC,IAAI,CAcN;AAED,iEAAiE;AACjE,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,MAAwB,GAAG,IAAI,CAe1F;AAUD,2DAA2D;AAC3D,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,IAAI,CAEjD;AAED,oCAAoC;AACpC,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAE1D;AAED,yDAAyD;AACzD,wBAAgB,SAAS,IAAI,MAAM,GAAG,IAAI,CAEzC;AAED,yBAAyB;AACzB,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE3C;AAED,wDAAwD;AACxD,wBAAgB,QAAQ,IAAI,MAAM,GAAG,IAAI,CAExC;AAED,mCAAmC;AACnC,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE9C;AAED,+EAA+E;AAC/E,wBAAgB,oBAAoB,IAAI,IAAI,CAI3C"}