@jx-grxf/patchpilot 0.3.1-beta → 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 (81) hide show
  1. package/.env.example +17 -1
  2. package/README.md +80 -22
  3. package/SECURITY.md +10 -2
  4. package/dist/cli.js +59 -13
  5. package/dist/cli.js.map +1 -1
  6. package/dist/core/agent.d.ts +3 -0
  7. package/dist/core/agent.js +56 -12
  8. package/dist/core/agent.js.map +1 -1
  9. package/dist/core/cleanup.d.ts +3 -0
  10. package/dist/core/cleanup.js +29 -0
  11. package/dist/core/cleanup.js.map +1 -0
  12. package/dist/core/doctor.d.ts +4 -1
  13. package/dist/core/doctor.js +119 -1
  14. package/dist/core/doctor.js.map +1 -1
  15. package/dist/core/gemini.js +27 -14
  16. package/dist/core/gemini.js.map +1 -1
  17. package/dist/core/geminiWrapper.d.ts +51 -0
  18. package/dist/core/geminiWrapper.js +718 -0
  19. package/dist/core/geminiWrapper.js.map +1 -0
  20. package/dist/core/json.js +65 -1
  21. package/dist/core/json.js.map +1 -1
  22. package/dist/core/memory.d.ts +16 -0
  23. package/dist/core/memory.js +108 -0
  24. package/dist/core/memory.js.map +1 -0
  25. package/dist/core/modelClient.js +7 -0
  26. package/dist/core/modelClient.js.map +1 -1
  27. package/dist/core/nvidia.js +20 -2
  28. package/dist/core/nvidia.js.map +1 -1
  29. package/dist/core/openrouter.d.ts +2 -0
  30. package/dist/core/openrouter.js +51 -7
  31. package/dist/core/openrouter.js.map +1 -1
  32. package/dist/core/projectInit.d.ts +6 -0
  33. package/dist/core/projectInit.js +44 -0
  34. package/dist/core/projectInit.js.map +1 -0
  35. package/dist/core/reasoning.js +3 -0
  36. package/dist/core/reasoning.js.map +1 -1
  37. package/dist/core/session.d.ts +1 -0
  38. package/dist/core/session.js +46 -0
  39. package/dist/core/session.js.map +1 -1
  40. package/dist/core/types.d.ts +9 -4
  41. package/dist/core/workspace.d.ts +8 -0
  42. package/dist/core/workspace.js +314 -21
  43. package/dist/core/workspace.js.map +1 -1
  44. package/dist/tui/App.js +571 -81
  45. package/dist/tui/App.js.map +1 -1
  46. package/dist/tui/commands.js +35 -6
  47. package/dist/tui/commands.js.map +1 -1
  48. package/dist/tui/components/ApprovalPanel.d.ts +6 -0
  49. package/dist/tui/components/ApprovalPanel.js +16 -0
  50. package/dist/tui/components/ApprovalPanel.js.map +1 -0
  51. package/dist/tui/components/CommandSuggestions.js +8 -3
  52. package/dist/tui/components/CommandSuggestions.js.map +1 -1
  53. package/dist/tui/components/Composer.d.ts +1 -0
  54. package/dist/tui/components/Composer.js +1 -1
  55. package/dist/tui/components/Composer.js.map +1 -1
  56. package/dist/tui/components/ExperimentalPanel.d.ts +10 -0
  57. package/dist/tui/components/ExperimentalPanel.js +33 -0
  58. package/dist/tui/components/ExperimentalPanel.js.map +1 -0
  59. package/dist/tui/components/Header.js +3 -3
  60. package/dist/tui/components/Header.js.map +1 -1
  61. package/dist/tui/components/OnboardingPanel.d.ts +13 -1
  62. package/dist/tui/components/OnboardingPanel.js +23 -9
  63. package/dist/tui/components/OnboardingPanel.js.map +1 -1
  64. package/dist/tui/components/Sidebar.js +32 -26
  65. package/dist/tui/components/Sidebar.js.map +1 -1
  66. package/dist/tui/components/Transcript.js +4 -3
  67. package/dist/tui/components/Transcript.js.map +1 -1
  68. package/dist/tui/format.js +7 -7
  69. package/dist/tui/format.js.map +1 -1
  70. package/dist/tui/modes.d.ts +1 -1
  71. package/dist/tui/modes.js +8 -2
  72. package/dist/tui/modes.js.map +1 -1
  73. package/docs/gemini-wrapper.md +87 -0
  74. package/docs/releases/v0.1.1-beta.md +18 -0
  75. package/docs/releases/v0.2.1.md +1 -1
  76. package/docs/releases/v0.3.1-beta.md +4 -0
  77. package/docs/releases/v0.4.0.md +27 -0
  78. package/docs/releases/v1.0.0.md +28 -0
  79. package/docs/showcase/patchpilot-banner.png +0 -0
  80. package/docs/showcase/patchpilot-logo.png +0 -0
  81. package/package.json +5 -2
@@ -20,6 +20,8 @@ export class AgentRunner {
20
20
  root: options.workspace,
21
21
  allowWrite: options.allowWrite,
22
22
  allowShell: options.allowShell,
23
+ allowExternalFileAnalysis: options.allowExternalFileAnalysis,
24
+ memoryEnabled: options.memoryEnabled,
23
25
  signal: options.signal,
24
26
  approvalHandler: options.approvalHandler
25
27
  });
@@ -71,11 +73,14 @@ export class AgentRunner {
71
73
  const messages = [
72
74
  {
73
75
  role: "system",
74
- content: buildSystemPrompt(this.tools.root, subagentContext, workspaceSummary, {
76
+ content: buildSystemPrompt(this.tools.root, subagentContext, workspaceSummary, this.options.resumeContext ?? "", {
75
77
  mode: this.options.mode ?? (this.options.allowWrite || this.options.allowShell ? "bypass" : "plan"),
76
78
  allowWrite: this.options.allowWrite,
77
79
  allowShell: this.options.allowShell,
78
80
  hasApprovalHandler: Boolean(this.options.approvalHandler)
81
+ }, {
82
+ allowExternalFileAnalysis: Boolean(this.options.allowExternalFileAnalysis),
83
+ memoryEnabled: Boolean(this.options.memoryEnabled)
79
84
  })
80
85
  },
81
86
  {
@@ -107,13 +112,26 @@ export class AgentRunner {
107
112
  step: stepIndex + 1,
108
113
  createdAt: new Date().toISOString()
109
114
  });
110
- const modelResponse = await this.client.chat({
111
- model: this.options.model,
112
- messages,
113
- formatJson: true,
114
- reasoningEffort,
115
- signal: this.options.signal
116
- });
115
+ let modelResponse;
116
+ try {
117
+ modelResponse = await this.client.chat({
118
+ model: this.options.model,
119
+ messages,
120
+ formatJson: true,
121
+ reasoningEffort,
122
+ signal: this.options.signal
123
+ });
124
+ }
125
+ catch (error) {
126
+ const message = error instanceof Error ? error.message : String(error);
127
+ await this.options.sessionStore?.append({
128
+ type: "run.failed",
129
+ runId,
130
+ message,
131
+ failedAt: new Date().toISOString()
132
+ });
133
+ throw error;
134
+ }
117
135
  const rawResponse = modelResponse.content;
118
136
  yield {
119
137
  type: "metrics",
@@ -133,7 +151,7 @@ export class AgentRunner {
133
151
  };
134
152
  messages.push({
135
153
  role: "assistant",
136
- content: rawResponse
154
+ content: clipPromptValue(rawResponse, 2000)
137
155
  });
138
156
  messages.push({
139
157
  role: "user",
@@ -293,7 +311,7 @@ function shouldUseSubagents(task) {
293
311
  }
294
312
  return /\b(repo|repository|projekt|project|code|file|datei|test|build|fix|debug|implement|refactor|review|analyze|analyse|analysiere|prüf|pruef|bewerte|architektur|erklär|erklaer|such|find|install|commit|diff|patch|src|readme|sprache|programmiersprache|stack|framework|dependencies|abhängigkeiten|abhaengigkeiten|typescript|javascript|node|swift|python|c)\b/.test(normalizedTask);
295
313
  }
296
- function buildSystemPrompt(workspaceRoot, subagentContext, workspaceSummary, permissions) {
314
+ function buildSystemPrompt(workspaceRoot, subagentContext, workspaceSummary, resumeContext, permissions, experimental) {
297
315
  const workspaceLabel = path.basename(workspaceRoot) || "workspace";
298
316
  const writePolicy = permissions.allowWrite
299
317
  ? "write tools bypass approval for this run"
@@ -305,6 +323,9 @@ function buildSystemPrompt(workspaceRoot, subagentContext, workspaceSummary, per
305
323
  : permissions.hasApprovalHandler && permissions.mode === "build"
306
324
  ? "shell and test tools require interactive approval"
307
325
  : "shell and test tools are unavailable";
326
+ const bypassPolicy = permissions.allowWrite && permissions.allowShell
327
+ ? "Build+bypass mode may run write, script, test, or shell tools without per-tool approval. Keep actions narrow and avoid broad destructive commands."
328
+ : "Only explicitly enabled permission groups bypass approval. Unavailable tool groups stay blocked.";
308
329
  return [
309
330
  "You are PatchPilot, a local coding agent running inside a terminal TUI.",
310
331
  "You help inspect, edit, test, and explain code inside one workspace.",
@@ -316,7 +337,7 @@ function buildSystemPrompt(workspaceRoot, subagentContext, workspaceSummary, per
316
337
  permissions.mode === "plan"
317
338
  ? "Plan mode is read-only: inspect files, explain findings, and return an implementation plan. Do not call write_file, apply_patch, run_script, run_tests, or run_shell."
318
339
  : permissions.mode === "bypass"
319
- ? "Build+bypass mode may run write, script, test, or shell tools without per-tool approval. Keep actions narrow and avoid broad destructive commands."
340
+ ? bypassPolicy
320
341
  : "Build mode may request write, script, test, or shell tools when necessary. Prefer focused tool calls and keep risky actions easy to approve.",
321
342
  `All tool paths are relative to the workspace root. If the workspace is named "${workspaceLabel}", do not prefix paths with "${workspaceLabel}/". Use "." for the workspace root.`,
322
343
  "Treat short questions about this project, its language, stack, quality, architecture, dependencies, tests, or files as workspace questions.",
@@ -328,7 +349,22 @@ function buildSystemPrompt(workspaceRoot, subagentContext, workspaceSummary, per
328
349
  "For repository summaries, inspect README.md, package.json, tests, docs, and top-level source files before answering.",
329
350
  "For implementation tasks, first inspect the narrowest relevant files, then edit only what is needed.",
330
351
  "When diagnosing a failure, form a concrete hypothesis, gather targeted evidence with tools, then fix the smallest cause.",
352
+ experimental.allowExternalFileAnalysis
353
+ ? "Experimental file analysis is enabled: inspect_document may inspect supported absolute paths outside the workspace when the user provides them."
354
+ : "Experimental file analysis is disabled: inspect_document is limited to the workspace.",
355
+ experimental.memoryEnabled
356
+ ? "Experimental memory is enabled: use memory_search for relevant durable context and memory_remember when the user asks you to remember something or states durable project guidance."
357
+ : "Experimental memory is disabled.",
331
358
  workspaceSummary ? ["", "Workspace context:", workspaceSummary].join("\n") : "",
359
+ resumeContext
360
+ ? [
361
+ "",
362
+ "Resumed session context:",
363
+ resumeContext,
364
+ "",
365
+ "Use this as compact historical context. Re-read files before making claims about current workspace contents."
366
+ ].join("\n")
367
+ : "",
332
368
  subagentContext
333
369
  ? [
334
370
  "",
@@ -355,6 +391,12 @@ function buildSystemPrompt(workspaceRoot, subagentContext, workspaceSummary, per
355
391
  "- file_info: {\"path\":\"src/index.ts\"}",
356
392
  "- search_text: {\"query\":\"functionName\"}",
357
393
  "- inspect_document: {\"path\":\"docs/spec.pdf\"} for pdf, docx, and text/code files",
394
+ ...(experimental.memoryEnabled
395
+ ? [
396
+ "- memory_search: {\"query\":\"provider setup\",\"limit\":5}",
397
+ "- memory_remember: {\"content\":\"durable note\",\"tags\":[\"project\"]}"
398
+ ]
399
+ : []),
358
400
  "- git_status: {} for current branch and dirty files",
359
401
  "- git_diff: {\"path\":\"src/index.ts\"} or {} for all current changes",
360
402
  "- list_changed_files: {}",
@@ -454,12 +496,14 @@ function createToolCallId(tool) {
454
496
  return `${tool}-${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 8)}`;
455
497
  }
456
498
  async function buildWorkspaceSummary(workspaceRoot) {
457
- const [packageJson, tsconfig, readme] = await Promise.all([
499
+ const [patchPilotInstructions, packageJson, tsconfig, readme] = await Promise.all([
500
+ readWorkspaceFile(workspaceRoot, "PATCHPILOT.md", 4000),
458
501
  readWorkspaceFile(workspaceRoot, "package.json", 4000),
459
502
  readWorkspaceFile(workspaceRoot, "tsconfig.json", 1600),
460
503
  readWorkspaceFile(workspaceRoot, "README.md", 3000)
461
504
  ]);
462
505
  return [
506
+ patchPilotInstructions ? `PATCHPILOT.md instructions:\n${patchPilotInstructions}` : "",
463
507
  packageJson ? `package.json:\n${packageJson}` : "",
464
508
  tsconfig ? `tsconfig.json:\n${tsconfig}` : "",
465
509
  readme ? `README excerpt:\n${readme}` : ""
@@ -1 +1 @@
1
- {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/core/agent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export type CleanupTarget = "cache" | "sessions" | "temp" | "all";
2
+ export declare function cleanupPatchPilot(workspace: string, target: CleanupTarget): Promise<string[]>;
3
+ export declare function readCleanupTarget(value: string | undefined): CleanupTarget | null;
@@ -0,0 +1,29 @@
1
+ import { rm } from "node:fs/promises";
2
+ import path from "node:path";
3
+ export async function cleanupPatchPilot(workspace, target) {
4
+ const root = path.resolve(workspace);
5
+ const targets = [];
6
+ if (target === "cache" || target === "all") {
7
+ targets.push({ label: "workspace cache", path: path.join(root, ".patchpilot", "cache") });
8
+ }
9
+ if (target === "sessions" || target === "all") {
10
+ targets.push({ label: "workspace sessions", path: path.join(root, ".patchpilot", "sessions") });
11
+ }
12
+ if (target === "temp" || target === "all") {
13
+ targets.push({ label: "workspace temp", path: path.join(root, ".patchpilot", "tmp") });
14
+ }
15
+ const removed = [];
16
+ for (const item of targets) {
17
+ await rm(item.path, {
18
+ recursive: true,
19
+ force: true
20
+ });
21
+ removed.push(item.label);
22
+ }
23
+ return removed;
24
+ }
25
+ export function readCleanupTarget(value) {
26
+ const normalizedValue = value?.trim().toLowerCase();
27
+ return normalizedValue === "cache" || normalizedValue === "sessions" || normalizedValue === "temp" || normalizedValue === "all" ? normalizedValue : null;
28
+ }
29
+ //# sourceMappingURL=cleanup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cleanup.js","sourceRoot":"","sources":["../../src/core/cleanup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,SAAiB,EAAE,MAAqB;IAC9E,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACrC,MAAM,OAAO,GAA2C,EAAE,CAAC;IAE3D,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAC5F,CAAC;IAED,IAAI,MAAM,KAAK,UAAU,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QAC9C,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE;YAClB,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,IAAI;SACZ,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAyB;IACzD,MAAM,eAAe,GAAG,KAAK,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACpD,OAAO,eAAe,KAAK,OAAO,IAAI,eAAe,KAAK,UAAU,IAAI,eAAe,KAAK,MAAM,IAAI,eAAe,KAAK,KAAK,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3J,CAAC"}
@@ -3,5 +3,8 @@ export type DoctorResult = {
3
3
  name: string;
4
4
  ok: boolean;
5
5
  details: string;
6
+ action?: "check" | "fix" | "skipped";
6
7
  };
7
- export declare function runDoctor(provider: ModelProvider, ollamaUrl: string, model?: string): Promise<DoctorResult[]>;
8
+ export declare function runDoctor(provider: ModelProvider, ollamaUrl: string, model?: string, options?: {
9
+ fix?: boolean;
10
+ }): Promise<DoctorResult[]>;
@@ -2,10 +2,11 @@ import { spawn } from "node:child_process";
2
2
  import { describeComputeTarget } from "./compute.js";
3
3
  import { codexOAuthModels, hasCodexCliOAuth } from "./codex.js";
4
4
  import { GeminiClient, readGeminiApiKey } from "./gemini.js";
5
+ import { GeminiWrapperClient, ensureGeminiWebApiInstalled, geminiWebApiInstallCommand, geminiWrapperRequiresApiKey, isGeminiWebApiInstalled, readGeminiWrapperApiKey, readGeminiWrapperBaseUrl, readGeminiWrapperCookiesJson, readGeminiWrapperMode, readGeminiWrapperPythonCommand, readGeminiWrapperSecure1psid } from "./geminiWrapper.js";
5
6
  import { NvidiaClient, readNvidiaApiKey } from "./nvidia.js";
6
7
  import { OllamaClient } from "./ollama.js";
7
8
  import { OpenRouterClient, readOpenRouterApiKey } from "./openrouter.js";
8
- export async function runDoctor(provider, ollamaUrl, model) {
9
+ export async function runDoctor(provider, ollamaUrl, model, options = {}) {
9
10
  const results = [];
10
11
  results.push(await checkCommand("node", ["--version"]));
11
12
  results.push(await checkCommand("git", ["--version"]));
@@ -13,6 +14,10 @@ export async function runDoctor(provider, ollamaUrl, model) {
13
14
  results.push(...(await checkGemini(model)));
14
15
  return results;
15
16
  }
17
+ if (provider === "gemini-wrapper") {
18
+ results.push(...(await checkGeminiWrapper(model, options)));
19
+ return results;
20
+ }
16
21
  if (provider === "codex") {
17
22
  results.push(...(await checkCodex(model)));
18
23
  return results;
@@ -195,6 +200,119 @@ async function checkGemini(model) {
195
200
  }
196
201
  return results;
197
202
  }
203
+ async function checkGeminiWrapper(model, options = {}) {
204
+ const baseUrl = readGeminiWrapperBaseUrl();
205
+ const apiKey = readGeminiWrapperApiKey();
206
+ const mode = readGeminiWrapperMode();
207
+ if (mode === "python" || (!baseUrl && mode === "auto")) {
208
+ return await checkGeminiApiBridge(model, options);
209
+ }
210
+ const results = [
211
+ {
212
+ name: "gemini-wrapper-url",
213
+ ok: Boolean(baseUrl),
214
+ details: baseUrl
215
+ ? `using explicit wrapper URL ${baseUrl}`
216
+ : "missing. Set PATCHPILOT_GEMINI_WRAPPER_BASE_URL. PatchPilot does not collect browser cookies or reuse web login sessions."
217
+ }
218
+ ];
219
+ if (!baseUrl) {
220
+ return results;
221
+ }
222
+ results.push({
223
+ name: "gemini-wrapper-key",
224
+ ok: !geminiWrapperRequiresApiKey(baseUrl) || Boolean(apiKey),
225
+ details: apiKey
226
+ ? "explicit wrapper API key is configured"
227
+ : geminiWrapperRequiresApiKey(baseUrl)
228
+ ? "missing for remote wrapper URL. Set PATCHPILOT_GEMINI_WRAPPER_API_KEY or GEMINI_WRAPPER_API_KEY."
229
+ : "not required for local wrapper URL"
230
+ });
231
+ if (geminiWrapperRequiresApiKey(baseUrl) && !apiKey) {
232
+ return results;
233
+ }
234
+ try {
235
+ const models = await new GeminiWrapperClient().listModels();
236
+ results.push({
237
+ name: "gemini-wrapper",
238
+ ok: true,
239
+ details: models.length > 0 ? `available models: ${models.slice(0, 12).join(", ")}` : "wrapper reachable, no models listed"
240
+ });
241
+ if (model) {
242
+ results.push({
243
+ name: "gemini-wrapper-model",
244
+ ok: models.includes(model),
245
+ details: models.includes(model) ? `${model} is available` : `${model} is not listed by the wrapper models API`
246
+ });
247
+ }
248
+ }
249
+ catch (error) {
250
+ results.push({
251
+ name: "gemini-wrapper",
252
+ ok: false,
253
+ details: error instanceof Error ? error.message : String(error)
254
+ });
255
+ }
256
+ return results;
257
+ }
258
+ async function checkGeminiApiBridge(model, options = {}) {
259
+ const pythonCommand = readGeminiWrapperPythonCommand();
260
+ const hasExplicitAuth = Boolean(readGeminiWrapperCookiesJson() || readGeminiWrapperSecure1psid());
261
+ const isInstalledBefore = await isGeminiWebApiInstalled(pythonCommand);
262
+ const isInstalled = isInstalledBefore || (options.fix ? await ensureGeminiWebApiInstalled(pythonCommand) : false);
263
+ const results = [
264
+ {
265
+ name: "gemini-api-bridge",
266
+ ok: isInstalled,
267
+ details: isInstalled
268
+ ? `${isInstalledBefore ? "gemini_webapi import works" : "installed pinned gemini_webapi into PatchPilot managed venv"} through ${pythonCommand}`
269
+ : options.fix
270
+ ? `missing. PatchPilot tried the managed venv install. Manual fallback: ${geminiWebApiInstallCommand}`
271
+ : `missing. Run /doctor fix or patchpilot doctor --fix to install the managed bridge. Manual fallback: ${geminiWebApiInstallCommand}`,
272
+ action: isInstalledBefore ? "check" : options.fix && isInstalled ? "fix" : "skipped"
273
+ },
274
+ {
275
+ name: "gemini-api-auth",
276
+ ok: hasExplicitAuth,
277
+ details: hasExplicitAuth
278
+ ? "explicit cookie auth is configured"
279
+ : "missing. Set PATCHPILOT_GEMINI_WRAPPER_COOKIES_JSON or GEMINI_SECURE_1PSID. PatchPilot does not scan browser cookies."
280
+ }
281
+ ];
282
+ if (!isInstalled || !hasExplicitAuth) {
283
+ return results;
284
+ }
285
+ try {
286
+ const client = new GeminiWrapperClient();
287
+ await client.checkBridgeAuth();
288
+ const models = await client.listModels();
289
+ results.push({
290
+ name: "gemini-api-auth-check",
291
+ ok: true,
292
+ details: "Gemini-API bridge auth initializes successfully"
293
+ });
294
+ results.push({
295
+ name: "gemini-wrapper",
296
+ ok: true,
297
+ details: `Python bridge ready. Models: ${models.join(", ")}`
298
+ });
299
+ if (model) {
300
+ results.push({
301
+ name: "gemini-wrapper-model",
302
+ ok: models.includes(model),
303
+ details: models.includes(model) ? `${model} is available` : `${model} is not in the bridge default model list`
304
+ });
305
+ }
306
+ }
307
+ catch (error) {
308
+ results.push({
309
+ name: "gemini-wrapper",
310
+ ok: false,
311
+ details: error instanceof Error ? error.message : String(error)
312
+ });
313
+ }
314
+ return results;
315
+ }
198
316
  function checkCommand(command, args, name = command, missingHint) {
199
317
  return new Promise((resolve) => {
200
318
  const child = spawn(command, args, {
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/core/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/core/doctor.ts"],"names":[],"mappings":"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"}
@@ -44,20 +44,26 @@ export class GeminiClient {
44
44
  }
45
45
  async listModels() {
46
46
  this.assertConfigured();
47
- const response = await this.fetchGemini("models", {
48
- headers: {
49
- "x-goog-api-key": this.apiKey
47
+ const models = [];
48
+ let pageToken = "";
49
+ do {
50
+ const response = await this.fetchGemini(`models?pageSize=1000${pageToken ? `&pageToken=${encodeURIComponent(pageToken)}` : ""}`, {
51
+ headers: {
52
+ "x-goog-api-key": this.apiKey
53
+ }
54
+ });
55
+ const payload = (await readJsonSafely(response));
56
+ if (!response.ok || payload.error) {
57
+ const reason = payload.error?.message ? ` ${payload.error.message}` : "";
58
+ throw new Error(`Gemini models failed with HTTP ${response.status}.${reason}`);
50
59
  }
51
- });
52
- const payload = (await readJsonSafely(response));
53
- if (!response.ok || payload.error) {
54
- const reason = payload.error?.message ? ` ${payload.error.message}` : "";
55
- throw new Error(`Gemini models failed with HTTP ${response.status}.${reason}`);
56
- }
57
- return (payload.models
58
- ?.filter((model) => model.supportedGenerationMethods?.includes("generateContent"))
59
- .map((model) => stripModelPrefix(model.name))
60
- .sort() ?? []);
60
+ models.push(...(payload.models
61
+ ?.filter((model) => model.supportedGenerationMethods?.includes("generateContent"))
62
+ .map((model) => stripModelPrefix(model.name))
63
+ .filter(isLikelyGeminiAgentModel) ?? []));
64
+ pageToken = payload.nextPageToken ?? "";
65
+ } while (pageToken);
66
+ return [...new Set(models)].sort();
61
67
  }
62
68
  async fetchGemini(path, init) {
63
69
  try {
@@ -135,7 +141,7 @@ function toTelemetry(payload, durationMs, model) {
135
141
  const responseTokens = payload.usageMetadata?.candidatesTokenCount ?? 0;
136
142
  const cachedPromptTokens = payload.usageMetadata?.cachedContentTokenCount ?? 0;
137
143
  const thoughtsTokens = payload.usageMetadata?.thoughtsTokenCount ?? 0;
138
- const totalTokens = payload.usageMetadata?.totalTokenCount ?? promptTokens + responseTokens;
144
+ const totalTokens = payload.usageMetadata?.totalTokenCount ?? promptTokens + responseTokens + thoughtsTokens;
139
145
  return attachTokenCost({
140
146
  promptTokens,
141
147
  cachedPromptTokens,
@@ -149,6 +155,13 @@ function toTelemetry(payload, durationMs, model) {
149
155
  tokenSource: "provider"
150
156
  }, "gemini", model);
151
157
  }
158
+ function isLikelyGeminiAgentModel(model) {
159
+ const normalizedModel = model.toLowerCase();
160
+ if (/(embedding|imagen|veo|tts|aqa|live|bidi|audio|speech)/.test(normalizedModel)) {
161
+ return false;
162
+ }
163
+ return normalizedModel.startsWith("gemini-");
164
+ }
152
165
  async function readJsonSafely(response) {
153
166
  try {
154
167
  return await response.json();
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../src/core/gemini.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../src/core/gemini.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ import type { ModelChatOptions, ModelChatResult } from "./types.js";
2
+ export declare const defaultGeminiWrapperModel = "auto";
3
+ export declare const geminiWebApiVersion = "2.0.0";
4
+ export declare const geminiWebApiInstallCommand = "PatchPilot managed install: python3 -m venv ~/.patchpilot/gemini-wrapper-venv && ~/.patchpilot/gemini-wrapper-venv/bin/python -m pip install gemini_webapi==2.0.0";
5
+ type GeminiWrapperRuntimeOptions = {
6
+ maxTokens: number;
7
+ temperature: number;
8
+ bridgeMinIntervalMs?: number;
9
+ bridgeTimeoutMs?: number;
10
+ };
11
+ type GeminiWrapperMode = "auto" | "http" | "python";
12
+ export declare class GeminiWrapperClient {
13
+ private readonly baseUrl;
14
+ private readonly apiKey;
15
+ private readonly runtimeOptions;
16
+ private readonly mode;
17
+ private readonly pythonCommand;
18
+ private readonly cookiesJson;
19
+ constructor(baseUrl?: string, apiKey?: string, runtimeOptions?: GeminiWrapperRuntimeOptions, mode?: GeminiWrapperMode, pythonCommand?: string, cookiesJson?: string);
20
+ chat(options: ModelChatOptions): Promise<ModelChatResult>;
21
+ listModels(): Promise<string[]>;
22
+ checkBridgeAuth(): Promise<void>;
23
+ private fetchGeminiWrapper;
24
+ private headers;
25
+ private assertConfigured;
26
+ private usesPythonBridge;
27
+ private chatWithPythonBridge;
28
+ private runPythonBridge;
29
+ private assertPythonBridgeReady;
30
+ }
31
+ export declare function readGeminiWrapperMode(env?: NodeJS.ProcessEnv): GeminiWrapperMode;
32
+ export declare function readGeminiWrapperBaseUrl(env?: NodeJS.ProcessEnv): string;
33
+ export declare function readGeminiWrapperApiKey(env?: NodeJS.ProcessEnv): string;
34
+ export declare function readGeminiWrapperCookiesJson(env?: NodeJS.ProcessEnv): string;
35
+ export declare function getDefaultGeminiWrapperCookiesPath(env?: NodeJS.ProcessEnv): string;
36
+ export declare function saveGeminiWrapperCookieFile(values: {
37
+ secure1psid: string;
38
+ secure1psidts?: string;
39
+ }, env?: NodeJS.ProcessEnv): string;
40
+ export declare function readGeminiWrapperPythonCommand(env?: NodeJS.ProcessEnv): string;
41
+ export declare function readGeminiWrapperBootstrapPythonCommand(env?: NodeJS.ProcessEnv): string;
42
+ export declare function getGeminiWrapperVenvDir(env?: NodeJS.ProcessEnv): string;
43
+ export declare function getGeminiWrapperCookieCacheDir(env?: NodeJS.ProcessEnv): string;
44
+ export declare function clearGeminiWrapperCookieCache(env?: NodeJS.ProcessEnv): void;
45
+ export declare function getManagedGeminiWrapperPythonPath(env?: NodeJS.ProcessEnv): string;
46
+ export declare function readGeminiWrapperSecure1psid(env?: NodeJS.ProcessEnv): string;
47
+ export declare function readGeminiWrapperSecure1psidts(env?: NodeJS.ProcessEnv): string;
48
+ export declare function geminiWrapperRequiresApiKey(baseUrl: string): boolean;
49
+ export declare function isGeminiWebApiInstalled(pythonCommand?: string): Promise<boolean>;
50
+ export declare function ensureGeminiWebApiInstalled(pythonCommand?: string, env?: NodeJS.ProcessEnv): Promise<boolean>;
51
+ export {};