codeep 2.18.1 → 2.20.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 (51) hide show
  1. package/README.md +53 -16
  2. package/dist/acp/commands.js +11 -55
  3. package/dist/acp/protocol.d.ts +34 -0
  4. package/dist/acp/server.d.ts +6 -1
  5. package/dist/acp/server.js +97 -2
  6. package/dist/api/index.js +9 -0
  7. package/dist/commands/core/index.d.ts +19 -0
  8. package/dist/commands/core/index.js +28 -0
  9. package/dist/commands/core/keysync.d.ts +2 -0
  10. package/dist/commands/core/keysync.js +34 -0
  11. package/dist/commands/core/telemetry.d.ts +2 -0
  12. package/dist/commands/core/telemetry.js +34 -0
  13. package/dist/config/index.js +2 -2
  14. package/dist/config/providers.js +7 -4
  15. package/dist/renderer/App.d.ts +9 -48
  16. package/dist/renderer/App.js +113 -338
  17. package/dist/renderer/Screen.d.ts +13 -0
  18. package/dist/renderer/Screen.js +22 -0
  19. package/dist/renderer/commands/registry.js +3 -3
  20. package/dist/renderer/commands.js +19 -51
  21. package/dist/renderer/components/CommandAutocomplete.d.ts +46 -0
  22. package/dist/renderer/components/CommandAutocomplete.js +103 -0
  23. package/dist/renderer/components/HunkPicker.d.ts +48 -0
  24. package/dist/renderer/components/HunkPicker.js +140 -0
  25. package/dist/renderer/components/MentionPicker.d.ts +60 -0
  26. package/dist/renderer/components/MentionPicker.js +111 -0
  27. package/dist/renderer/components/PasteDialog.d.ts +43 -0
  28. package/dist/renderer/components/PasteDialog.js +70 -0
  29. package/dist/renderer/layout.js +1 -0
  30. package/dist/renderer/main.js +15 -39
  31. package/dist/utils/agent.js +121 -26
  32. package/dist/utils/agentChat.d.ts +11 -4
  33. package/dist/utils/agentChat.js +53 -25
  34. package/dist/utils/codeepCloud.d.ts +3 -0
  35. package/dist/utils/codeepCloud.js +62 -7
  36. package/dist/utils/personalities.d.ts +63 -5
  37. package/dist/utils/personalities.js +583 -31
  38. package/dist/utils/shell.d.ts +11 -1
  39. package/dist/utils/shell.js +169 -82
  40. package/dist/utils/ssrfGuard.d.ts +18 -0
  41. package/dist/utils/ssrfGuard.js +83 -0
  42. package/dist/utils/taskPlanner.d.ts +7 -1
  43. package/dist/utils/taskPlanner.js +16 -7
  44. package/dist/utils/tokenTracker.js +5 -3
  45. package/dist/utils/toolExecution.d.ts +1 -0
  46. package/dist/utils/toolExecution.js +48 -88
  47. package/dist/utils/tools.d.ts +3 -3
  48. package/dist/utils/tools.js +18 -13
  49. package/dist/version.d.ts +1 -1
  50. package/dist/version.js +1 -1
  51. package/package.json +1 -1
@@ -20,37 +20,13 @@ export interface ConfirmOptions {
20
20
  onConfirm: () => void;
21
21
  onCancel?: () => void;
22
22
  }
23
+ export { HunkPickerItem, HunkPickerOptions } from './components/HunkPicker';
24
+ import { type HunkPickerOptions } from './components/HunkPicker';
23
25
  /**
24
- * One hunk in the interactive `/apply --interactive` picker.
25
- * `lines` are already-formatted diff lines (e.g. `+ added`, `- removed`).
26
+ * Options for the interactive hunk picker — see components/HunkPicker.ts.
27
+ * (`onComplete` fires once with the accepted [path, hunkIndex] pairs so the
28
+ * caller can apply them via `applyHunksToFiles`.)
26
29
  */
27
- export interface HunkPickerItem {
28
- /** File path this hunk belongs to. */
29
- path: string;
30
- /** 0-based hunk index within the file diff. */
31
- hunkIndex: number;
32
- /** Human-readable hunk header, e.g. `@@ -12,3 +12,5 @@`. */
33
- header: string;
34
- /** Pre-formatted diff lines to display. */
35
- lines: string[];
36
- }
37
- /**
38
- * Options for the interactive hunk picker. The picker walks the user
39
- * through `items` one at a time; for each they accept (`y`/Enter) or
40
- * skip (`n`). `a` accepts all remaining, `q`/Esc quits.
41
- *
42
- * `onComplete` fires once with the set of accepted `[path, hunkIndex]`
43
- * pairs (possibly empty) so the caller can apply them via
44
- * `applyHunksToFiles`.
45
- */
46
- export interface HunkPickerOptions {
47
- title: string;
48
- items: HunkPickerItem[];
49
- onComplete: (accepted: Array<{
50
- path: string;
51
- hunkIndex: number;
52
- }>) => void;
53
- }
54
30
  export interface AppOptions {
55
31
  onSubmit: (message: string) => Promise<void>;
56
32
  onCommand: (command: string, args: string[]) => void;
@@ -93,30 +69,19 @@ export declare class App {
93
69
  private appStartedAt;
94
70
  /** Start of the current agent run; unlike app uptime, resets per task. */
95
71
  private agentStartedAt;
96
- private pasteInfo;
97
- private pasteInfoOpen;
72
+ private pasteDialog;
98
73
  private codeBlockCounter;
99
74
  private messageCache;
100
75
  private helpOpen;
101
76
  private helpScrollIndex;
102
77
  private statusOpen;
103
78
  private settingsState;
104
- private showAutocomplete;
105
- private autocompleteIndex;
106
- private autocompleteItems;
107
- private showMentionAutocomplete;
108
- private mentionIndex;
109
- private mentionItems;
110
- private mentionAtStart;
111
- /** Project root for resolving `suggestMentions`. Cached per update. */
112
- private mentionRoot;
79
+ private autocomplete;
80
+ private mention;
113
81
  private confirmOpen;
114
82
  private confirmOptions;
115
83
  private confirmSelection;
116
- private hunkPickerOpen;
117
- private hunkPickerOptions;
118
- private hunkPickerIndex;
119
- private hunkPickerAccepted;
84
+ private hunkPicker;
120
85
  private menuOpen;
121
86
  private menuTitle;
122
87
  /** Filtered view shown to the user; derived from `menuItemsAll` + `menuFilter`. */
@@ -449,10 +414,6 @@ export declare class App {
449
414
  * Render inline confirmation dialog below status bar
450
415
  */
451
416
  private renderInlineConfirm;
452
- /**
453
- * Render inline hunk picker (`/apply --interactive`).
454
- * Shows the current hunk's diff + the y/n/a/q key legend.
455
- */
456
417
  private renderInlineHunkPicker;
457
418
  /**
458
419
  * Render input line