@easynet/agent-tool-buildin 0.0.44 → 0.0.46
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.
- package/dist/core-tools-manifest.json +4845 -1222
- package/dist/src/calendar/calendarCreateEvent.d.ts +31 -0
- package/dist/src/calendar/calendarCreateEvent.d.ts.map +1 -0
- package/dist/src/calendar/calendarCreateEvent.js +67 -0
- package/dist/src/calendar/calendarCreateEvent.js.map +1 -0
- package/dist/src/calendar/calendarDeleteEvent.d.ts +22 -0
- package/dist/src/calendar/calendarDeleteEvent.d.ts.map +1 -0
- package/dist/src/calendar/calendarDeleteEvent.js +41 -0
- package/dist/src/calendar/calendarDeleteEvent.js.map +1 -0
- package/dist/src/calendar/calendarListEvents.d.ts +32 -0
- package/dist/src/calendar/calendarListEvents.d.ts.map +1 -0
- package/dist/src/calendar/calendarListEvents.js +95 -0
- package/dist/src/calendar/calendarListEvents.js.map +1 -0
- package/dist/src/calendar/calendarRescheduleEventByTitle.d.ts +30 -0
- package/dist/src/calendar/calendarRescheduleEventByTitle.d.ts.map +1 -0
- package/dist/src/calendar/calendarRescheduleEventByTitle.js +94 -0
- package/dist/src/calendar/calendarRescheduleEventByTitle.js.map +1 -0
- package/dist/src/calendar/calendarSearchEventsByTitle.d.ts +33 -0
- package/dist/src/calendar/calendarSearchEventsByTitle.d.ts.map +1 -0
- package/dist/src/calendar/calendarSearchEventsByTitle.js +95 -0
- package/dist/src/calendar/calendarSearchEventsByTitle.js.map +1 -0
- package/dist/src/calendar/calendarUpdateEvent.d.ts +27 -0
- package/dist/src/calendar/calendarUpdateEvent.d.ts.map +1 -0
- package/dist/src/calendar/calendarUpdateEvent.js +58 -0
- package/dist/src/calendar/calendarUpdateEvent.js.map +1 -0
- package/dist/src/cron/cronListEntries.d.ts +19 -0
- package/dist/src/cron/cronListEntries.d.ts.map +1 -0
- package/dist/src/cron/cronListEntries.js +33 -0
- package/dist/src/cron/cronListEntries.js.map +1 -0
- package/dist/src/cron/cronRemoveTaggedEntries.d.ts +21 -0
- package/dist/src/cron/cronRemoveTaggedEntries.d.ts.map +1 -0
- package/dist/src/cron/cronRemoveTaggedEntries.js +41 -0
- package/dist/src/cron/cronRemoveTaggedEntries.js.map +1 -0
- package/dist/src/cron/cronSetTaggedEntry.d.ts +24 -0
- package/dist/src/cron/cronSetTaggedEntry.d.ts.map +1 -0
- package/dist/src/cron/cronSetTaggedEntry.js +51 -0
- package/dist/src/cron/cronSetTaggedEntry.js.map +1 -0
- package/dist/src/exec/runCommand.d.ts +22 -6
- package/dist/src/exec/runCommand.d.ts.map +1 -1
- package/dist/src/exec/runCommand.js +22 -13
- package/dist/src/exec/runCommand.js.map +1 -1
- package/dist/src/fs/listDir.d.ts +2 -1
- package/dist/src/fs/listDir.d.ts.map +1 -1
- package/dist/src/fs/listDir.js +1 -4
- package/dist/src/fs/listDir.js.map +1 -1
- package/dist/src/git/common.d.ts +34 -0
- package/dist/src/git/common.d.ts.map +1 -0
- package/dist/src/git/common.js +119 -0
- package/dist/src/git/common.js.map +1 -0
- package/dist/src/git/defaults.d.ts +1 -0
- package/dist/src/git/defaults.d.ts.map +1 -1
- package/dist/src/git/defaults.js +15 -0
- package/dist/src/git/defaults.js.map +1 -1
- package/dist/src/git/ghRead.d.ts +29 -0
- package/dist/src/git/ghRead.d.ts.map +1 -0
- package/dist/src/git/ghRead.js +63 -0
- package/dist/src/git/ghRead.js.map +1 -0
- package/dist/src/git/gitAdd.d.ts +29 -0
- package/dist/src/git/gitAdd.d.ts.map +1 -0
- package/dist/src/git/gitAdd.js +57 -0
- package/dist/src/git/gitAdd.js.map +1 -0
- package/dist/src/git/gitCommit.d.ts +29 -0
- package/dist/src/git/gitCommit.d.ts.map +1 -0
- package/dist/src/git/gitCommit.js +56 -0
- package/dist/src/git/gitCommit.js.map +1 -0
- package/dist/src/git/gitDiff.d.ts +28 -0
- package/dist/src/git/gitDiff.d.ts.map +1 -0
- package/dist/src/git/gitDiff.js +54 -0
- package/dist/src/git/gitDiff.js.map +1 -0
- package/dist/src/git/gitLogHistory.d.ts +37 -0
- package/dist/src/git/gitLogHistory.d.ts.map +1 -0
- package/dist/src/git/gitLogHistory.js +85 -0
- package/dist/src/git/gitLogHistory.js.map +1 -0
- package/dist/src/git/gitPrView.d.ts +26 -0
- package/dist/src/git/gitPrView.d.ts.map +1 -0
- package/dist/src/git/gitPrView.js +66 -0
- package/dist/src/git/gitPrView.js.map +1 -0
- package/dist/src/git/gitPull.d.ts +31 -0
- package/dist/src/git/gitPull.d.ts.map +1 -0
- package/dist/src/git/gitPull.js +56 -0
- package/dist/src/git/gitPull.js.map +1 -0
- package/dist/src/git/gitRead.d.ts +28 -0
- package/dist/src/git/gitRead.d.ts.map +1 -0
- package/dist/src/git/gitRead.js +59 -0
- package/dist/src/git/gitRead.js.map +1 -0
- package/dist/src/git/gitStatus.d.ts +28 -0
- package/dist/src/git/gitStatus.d.ts.map +1 -0
- package/dist/src/git/gitStatus.js +55 -0
- package/dist/src/git/gitStatus.js.map +1 -0
- package/dist/src/git/gitSwitchBranch.d.ts +29 -0
- package/dist/src/git/gitSwitchBranch.d.ts.map +1 -0
- package/dist/src/git/gitSwitchBranch.js +57 -0
- package/dist/src/git/gitSwitchBranch.js.map +1 -0
- package/dist/src/git/gitTools.d.ts +10 -155
- package/dist/src/git/gitTools.d.ts.map +1 -1
- package/dist/src/git/gitTools.js +10 -396
- package/dist/src/git/gitTools.js.map +1 -1
- package/dist/src/http/downloadFile.d.ts +2 -2
- package/dist/src/http/downloadFile.d.ts.map +1 -1
- package/dist/src/http/fetchJson.d.ts +2 -2
- package/dist/src/http/fetchJson.d.ts.map +1 -1
- package/dist/src/http/fetchPageMainContent.d.ts +1 -1
- package/dist/src/http/fetchPageMainContent.d.ts.map +1 -1
- package/dist/src/http/fetchText.d.ts +2 -2
- package/dist/src/http/fetchText.d.ts.map +1 -1
- package/dist/src/http/head.d.ts +1 -1
- package/dist/src/http/head.d.ts.map +1 -1
- package/dist/src/http/yahooFinance.d.ts +5 -4
- package/dist/src/http/yahooFinance.d.ts.map +1 -1
- package/dist/src/http/yahooFinance.js +6 -6
- package/dist/src/http/yahooFinance.js.map +1 -1
- package/dist/src/iterm/common.d.ts +8 -0
- package/dist/src/iterm/common.d.ts.map +1 -1
- package/dist/src/iterm/common.js +28 -2
- package/dist/src/iterm/common.js.map +1 -1
- package/dist/src/iterm/itermCreateTab.d.ts +1 -1
- package/dist/src/iterm/itermCreateTab.d.ts.map +1 -1
- package/dist/src/iterm/itermCreateTab.js +18 -4
- package/dist/src/iterm/itermCreateTab.js.map +1 -1
- package/dist/src/iterm/itermCreateWindow.d.ts +1 -1
- package/dist/src/iterm/itermCreateWindow.d.ts.map +1 -1
- package/dist/src/iterm/itermCreateWindow.js +25 -9
- package/dist/src/iterm/itermCreateWindow.js.map +1 -1
- package/dist/src/iterm/itermGetSessionInfo.d.ts +1 -1
- package/dist/src/iterm/itermGetSessionInfo.js +2 -2
- package/dist/src/iterm/itermGetSessionInfo.js.map +1 -1
- package/dist/src/iterm/itermListCurrentWindowSessions.d.ts +14 -35
- package/dist/src/iterm/itermListCurrentWindowSessions.d.ts.map +1 -1
- package/dist/src/iterm/itermListCurrentWindowSessions.js +3 -3
- package/dist/src/iterm/itermListCurrentWindowSessions.js.map +1 -1
- package/dist/src/iterm/itermListWindows.d.ts +1 -1
- package/dist/src/iterm/itermListWindows.js +3 -3
- package/dist/src/iterm/itermListWindows.js.map +1 -1
- package/dist/src/iterm/itermRename.d.ts +1 -1
- package/dist/src/iterm/itermRename.js +3 -3
- package/dist/src/iterm/itermRename.js.map +1 -1
- package/dist/src/iterm/itermResizeWindow.d.ts +1 -1
- package/dist/src/iterm/itermResizeWindow.js +3 -3
- package/dist/src/iterm/itermResizeWindow.js.map +1 -1
- package/dist/src/iterm/itermRunCommandInSession.d.ts +13 -3
- package/dist/src/iterm/itermRunCommandInSession.d.ts.map +1 -1
- package/dist/src/iterm/itermRunCommandInSession.js +48 -6
- package/dist/src/iterm/itermRunCommandInSession.js.map +1 -1
- package/dist/src/iterm/itermSendText.d.ts +4 -1
- package/dist/src/iterm/itermSendText.d.ts.map +1 -1
- package/dist/src/iterm/itermSendText.js +23 -4
- package/dist/src/iterm/itermSendText.js.map +1 -1
- package/dist/src/iterm/itermSetBackgroundColor.d.ts +1 -1
- package/dist/src/iterm/itermSetBackgroundColor.js +2 -2
- package/dist/src/iterm/itermSetBackgroundColor.js.map +1 -1
- package/dist/src/iterm/itermSetSessionColors.d.ts +48 -0
- package/dist/src/iterm/itermSetSessionColors.d.ts.map +1 -0
- package/dist/src/iterm/itermSetSessionColors.js +71 -0
- package/dist/src/iterm/itermSetSessionColors.js.map +1 -0
- package/dist/src/iterm/itermSplitPane.d.ts +1 -1
- package/dist/src/iterm/itermSplitPane.d.ts.map +1 -1
- package/dist/src/iterm/itermSplitPane.js +21 -2
- package/dist/src/iterm/itermSplitPane.js.map +1 -1
- package/dist/src/iterm/itermTools.d.ts +1 -0
- package/dist/src/iterm/itermTools.d.ts.map +1 -1
- package/dist/src/iterm/itermTools.js +1 -0
- package/dist/src/iterm/itermTools.js.map +1 -1
- package/dist/src/messages/messagesFindChatsByParticipant.d.ts +27 -0
- package/dist/src/messages/messagesFindChatsByParticipant.d.ts.map +1 -0
- package/dist/src/messages/messagesFindChatsByParticipant.js +95 -0
- package/dist/src/messages/messagesFindChatsByParticipant.js.map +1 -0
- package/dist/src/messages/messagesListChats.d.ts +25 -0
- package/dist/src/messages/messagesListChats.d.ts.map +1 -0
- package/dist/src/messages/messagesListChats.js +69 -0
- package/dist/src/messages/messagesListChats.js.map +1 -0
- package/dist/src/messages/messagesReadChat.d.ts +28 -0
- package/dist/src/messages/messagesReadChat.d.ts.map +1 -0
- package/dist/src/messages/messagesReadChat.js +88 -0
- package/dist/src/messages/messagesReadChat.js.map +1 -0
- package/dist/src/messages/messagesSendByChatId.d.ts +22 -0
- package/dist/src/messages/messagesSendByChatId.d.ts.map +1 -0
- package/dist/src/messages/messagesSendByChatId.js +48 -0
- package/dist/src/messages/messagesSendByChatId.js.map +1 -0
- package/dist/src/messages/messagesSendByHandle.d.ts +26 -0
- package/dist/src/messages/messagesSendByHandle.d.ts.map +1 -0
- package/dist/src/messages/messagesSendByHandle.js +67 -0
- package/dist/src/messages/messagesSendByHandle.js.map +1 -0
- package/dist/src/messages/messagesSendByParticipantQuery.d.ts +26 -0
- package/dist/src/messages/messagesSendByParticipantQuery.d.ts.map +1 -0
- package/dist/src/messages/messagesSendByParticipantQuery.js +93 -0
- package/dist/src/messages/messagesSendByParticipantQuery.js.map +1 -0
- package/dist/src/notes/notesCreate.d.ts +23 -0
- package/dist/src/notes/notesCreate.d.ts.map +1 -0
- package/dist/src/notes/notesCreate.js +56 -0
- package/dist/src/notes/notesCreate.js.map +1 -0
- package/dist/src/notes/notesDelete.d.ts +20 -0
- package/dist/src/notes/notesDelete.d.ts.map +1 -0
- package/dist/src/notes/notesDelete.js +58 -0
- package/dist/src/notes/notesDelete.js.map +1 -0
- package/dist/src/notes/notesList.d.ts +26 -0
- package/dist/src/notes/notesList.d.ts.map +1 -0
- package/dist/src/notes/notesList.js +80 -0
- package/dist/src/notes/notesList.js.map +1 -0
- package/dist/src/notes/notesRead.d.ts +26 -0
- package/dist/src/notes/notesRead.d.ts.map +1 -0
- package/dist/src/notes/notesRead.js +82 -0
- package/dist/src/notes/notesRead.js.map +1 -0
- package/dist/src/notes/notesUpdate.d.ts +24 -0
- package/dist/src/notes/notesUpdate.d.ts.map +1 -0
- package/dist/src/notes/notesUpdate.js +75 -0
- package/dist/src/notes/notesUpdate.js.map +1 -0
- package/dist/src/osascript/common.d.ts +6 -0
- package/dist/src/osascript/common.d.ts.map +1 -0
- package/dist/src/osascript/common.js +52 -0
- package/dist/src/osascript/common.js.map +1 -0
- package/dist/src/platform/adapters/darwin.d.ts +3 -0
- package/dist/src/platform/adapters/darwin.d.ts.map +1 -0
- package/dist/src/platform/adapters/darwin.js +14 -0
- package/dist/src/platform/adapters/darwin.js.map +1 -0
- package/dist/src/platform/adapters/linux.d.ts +3 -0
- package/dist/src/platform/adapters/linux.d.ts.map +1 -0
- package/dist/src/platform/adapters/linux.js +8 -0
- package/dist/src/platform/adapters/linux.js.map +1 -0
- package/dist/src/platform/adapters/win32.d.ts +3 -0
- package/dist/src/platform/adapters/win32.d.ts.map +1 -0
- package/dist/src/platform/adapters/win32.js +8 -0
- package/dist/src/platform/adapters/win32.js.map +1 -0
- package/dist/src/platform/index.d.ts +4 -0
- package/dist/src/platform/index.d.ts.map +1 -0
- package/dist/src/platform/index.js +4 -0
- package/dist/src/platform/index.js.map +1 -0
- package/dist/src/platform/platformGetCapabilities.d.ts +23 -0
- package/dist/src/platform/platformGetCapabilities.d.ts.map +1 -0
- package/dist/src/platform/platformGetCapabilities.js +32 -0
- package/dist/src/platform/platformGetCapabilities.js.map +1 -0
- package/dist/src/platform/registry.d.ts +3 -0
- package/dist/src/platform/registry.d.ts.map +1 -0
- package/dist/src/platform/registry.js +16 -0
- package/dist/src/platform/registry.js.map +1 -0
- package/dist/src/platform/runtime.d.ts +15 -0
- package/dist/src/platform/runtime.d.ts.map +1 -0
- package/dist/src/platform/runtime.js +37 -0
- package/dist/src/platform/runtime.js.map +1 -0
- package/dist/src/platform/types.d.ts +10 -0
- package/dist/src/platform/types.d.ts.map +1 -0
- package/dist/src/platform/types.js +10 -0
- package/dist/src/platform/types.js.map +1 -0
- package/dist/src/reminders/remindersComplete.d.ts +22 -0
- package/dist/src/reminders/remindersComplete.d.ts.map +1 -0
- package/dist/src/reminders/remindersComplete.js +60 -0
- package/dist/src/reminders/remindersComplete.js.map +1 -0
- package/dist/src/reminders/remindersCreate.d.ts +24 -0
- package/dist/src/reminders/remindersCreate.d.ts.map +1 -0
- package/dist/src/reminders/remindersCreate.js +57 -0
- package/dist/src/reminders/remindersCreate.js.map +1 -0
- package/dist/src/reminders/remindersDelete.d.ts +22 -0
- package/dist/src/reminders/remindersDelete.d.ts.map +1 -0
- package/dist/src/reminders/remindersDelete.js +60 -0
- package/dist/src/reminders/remindersDelete.js.map +1 -0
- package/dist/src/reminders/remindersFind.d.ts +30 -0
- package/dist/src/reminders/remindersFind.d.ts.map +1 -0
- package/dist/src/reminders/remindersFind.js +85 -0
- package/dist/src/reminders/remindersFind.js.map +1 -0
- package/dist/src/reminders/remindersList.d.ts +28 -0
- package/dist/src/reminders/remindersList.d.ts.map +1 -0
- package/dist/src/reminders/remindersList.js +78 -0
- package/dist/src/reminders/remindersList.js.map +1 -0
- package/dist/src/reminders/remindersSyncFromCalendar.d.ts +31 -0
- package/dist/src/reminders/remindersSyncFromCalendar.d.ts.map +1 -0
- package/dist/src/reminders/remindersSyncFromCalendar.js +125 -0
- package/dist/src/reminders/remindersSyncFromCalendar.js.map +1 -0
- package/dist/src/safari/safariCloseTab.d.ts +22 -0
- package/dist/src/safari/safariCloseTab.d.ts.map +1 -0
- package/dist/src/safari/safariCloseTab.js +39 -0
- package/dist/src/safari/safariCloseTab.js.map +1 -0
- package/dist/src/safari/safariGetActiveTab.d.ts +18 -0
- package/dist/src/safari/safariGetActiveTab.d.ts.map +1 -0
- package/dist/src/safari/safariGetActiveTab.js +34 -0
- package/dist/src/safari/safariGetActiveTab.js.map +1 -0
- package/dist/src/safari/safariListTabs.d.ts +26 -0
- package/dist/src/safari/safariListTabs.d.ts.map +1 -0
- package/dist/src/safari/safariListTabs.js +71 -0
- package/dist/src/safari/safariListTabs.js.map +1 -0
- package/dist/src/safari/safariOpenWebUrl.d.ts +22 -0
- package/dist/src/safari/safariOpenWebUrl.d.ts.map +1 -0
- package/dist/src/safari/safariOpenWebUrl.js +49 -0
- package/dist/src/safari/safariOpenWebUrl.js.map +1 -0
- package/dist/src/safari/safariReadPageContent.d.ts +31 -0
- package/dist/src/safari/safariReadPageContent.d.ts.map +1 -0
- package/dist/src/safari/safariReadPageContent.js +69 -0
- package/dist/src/safari/safariReadPageContent.js.map +1 -0
- package/dist/src/safari/safariReadSelection.d.ts +26 -0
- package/dist/src/safari/safariReadSelection.d.ts.map +1 -0
- package/dist/src/safari/safariReadSelection.js +75 -0
- package/dist/src/safari/safariReadSelection.js.map +1 -0
- package/package.json +10 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.js","sourceRoot":"","sources":["../../../src/git/common.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Git tool defaults. All overridable via extension config.
|
|
3
3
|
*/
|
|
4
4
|
export declare const DEFAULT_GIT_READ_COMMANDS: readonly ["status", "log", "show", "diff", "branch", "rev-parse", "remote", "tag", "reflog", "blame", "ls-files", "grep", "shortlog", "describe", "ls-remote", "cat-file"];
|
|
5
|
+
export declare const DEFAULT_GH_READ_COMMANDS: readonly ["repo view", "pr list", "pr view", "issue list", "issue view", "search prs", "search issues", "release list", "release view", "workflow list", "workflow view", "run list", "run view"];
|
|
5
6
|
export declare const DEFAULT_GIT_TIMEOUT_MS = 30000;
|
|
6
7
|
export declare const DEFAULT_GIT_MAX_OUTPUT_BYTES: number;
|
|
7
8
|
export declare const DEFAULT_GIT_HISTORY_MAX_COUNT = 100;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../src/git/defaults.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,yBAAyB,4KAiB5B,CAAC;AAEX,eAAO,MAAM,sBAAsB,QAAS,CAAC;AAC7C,eAAO,MAAM,4BAA4B,QAAkB,CAAC;AAC5D,eAAO,MAAM,6BAA6B,MAAM,CAAC;AACjD,eAAO,MAAM,qCAAqC,IAAI,CAAC;AAEvD,eAAO,MAAM,oBAAoB,wIAYvB,CAAC"}
|
|
1
|
+
{"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../src/git/defaults.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,yBAAyB,4KAiB5B,CAAC;AAEX,eAAO,MAAM,wBAAwB,mMAc3B,CAAC;AAEX,eAAO,MAAM,sBAAsB,QAAS,CAAC;AAC7C,eAAO,MAAM,4BAA4B,QAAkB,CAAC;AAC5D,eAAO,MAAM,6BAA6B,MAAM,CAAC;AACjD,eAAO,MAAM,qCAAqC,IAAI,CAAC;AAEvD,eAAO,MAAM,oBAAoB,wIAYvB,CAAC"}
|
package/dist/src/git/defaults.js
CHANGED
|
@@ -19,6 +19,21 @@ export const DEFAULT_GIT_READ_COMMANDS = [
|
|
|
19
19
|
"ls-remote",
|
|
20
20
|
"cat-file",
|
|
21
21
|
];
|
|
22
|
+
export const DEFAULT_GH_READ_COMMANDS = [
|
|
23
|
+
"repo view",
|
|
24
|
+
"pr list",
|
|
25
|
+
"pr view",
|
|
26
|
+
"issue list",
|
|
27
|
+
"issue view",
|
|
28
|
+
"search prs",
|
|
29
|
+
"search issues",
|
|
30
|
+
"release list",
|
|
31
|
+
"release view",
|
|
32
|
+
"workflow list",
|
|
33
|
+
"workflow view",
|
|
34
|
+
"run list",
|
|
35
|
+
"run view",
|
|
36
|
+
];
|
|
22
37
|
export const DEFAULT_GIT_TIMEOUT_MS = 30_000;
|
|
23
38
|
export const DEFAULT_GIT_MAX_OUTPUT_BYTES = 2 * 1024 * 1024;
|
|
24
39
|
export const DEFAULT_GIT_HISTORY_MAX_COUNT = 100;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/git/defaults.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,QAAQ;IACR,KAAK;IACL,MAAM;IACN,MAAM;IACN,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,KAAK;IACL,QAAQ;IACR,OAAO;IACP,UAAU;IACV,MAAM;IACN,UAAU;IACV,UAAU;IACV,WAAW;IACX,UAAU;CACF,CAAC;AAEX,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAC7C,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAC5D,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,CAAC;AACjD,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC;AAEvD,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,QAAQ;IACR,OAAO;IACP,OAAO;IACP,QAAQ;IACR,aAAa;IACb,aAAa;IACb,SAAS;IACT,KAAK;IACL,WAAW;IACX,gBAAgB;IAChB,MAAM;CACE,CAAC"}
|
|
1
|
+
{"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/git/defaults.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,QAAQ;IACR,KAAK;IACL,MAAM;IACN,MAAM;IACN,QAAQ;IACR,WAAW;IACX,QAAQ;IACR,KAAK;IACL,QAAQ;IACR,OAAO;IACP,UAAU;IACV,MAAM;IACN,UAAU;IACV,UAAU;IACV,WAAW;IACX,UAAU;CACF,CAAC;AAEX,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,WAAW;IACX,SAAS;IACT,SAAS;IACT,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,cAAc;IACd,cAAc;IACd,eAAe;IACf,eAAe;IACf,UAAU;IACV,UAAU;CACF,CAAC;AAEX,MAAM,CAAC,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAC7C,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AAC5D,MAAM,CAAC,MAAM,6BAA6B,GAAG,GAAG,CAAC;AACjD,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC;AAEvD,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,QAAQ;IACR,OAAO;IACP,OAAO;IACP,QAAQ;IACR,aAAa;IACb,aAAa;IACb,SAAS;IACT,KAAK;IACL,WAAW;IACX,gBAAgB;IAChB,MAAM;CACE,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Read-only GitHub CLI execution with allowlisted gh command/subcommand pairs.
|
|
3
|
+
* @tool
|
|
4
|
+
* @effect none
|
|
5
|
+
*/
|
|
6
|
+
export declare function ghRead(args: {
|
|
7
|
+
path: string;
|
|
8
|
+
repoPath?: string;
|
|
9
|
+
command: string;
|
|
10
|
+
subcommand?: string;
|
|
11
|
+
args?: string[];
|
|
12
|
+
timeoutMs?: number;
|
|
13
|
+
}): Promise<{
|
|
14
|
+
result: {
|
|
15
|
+
path: string;
|
|
16
|
+
command: string;
|
|
17
|
+
subcommand: string | null;
|
|
18
|
+
args: string[];
|
|
19
|
+
stdout: string;
|
|
20
|
+
stderr: string;
|
|
21
|
+
exitCode: number;
|
|
22
|
+
};
|
|
23
|
+
evidence: {
|
|
24
|
+
type: string;
|
|
25
|
+
summary: string;
|
|
26
|
+
createdAt: string;
|
|
27
|
+
}[];
|
|
28
|
+
}>;
|
|
29
|
+
//# sourceMappingURL=ghRead.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ghRead.d.ts","sourceRoot":"","sources":["../../../src/git/ghRead.ts"],"names":[],"mappings":"AAUA;;;;GAIG;AACH,wBAAsB,MAAM,CAAC,IAAI,EAAE;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;;;;;;;;;;;;;;;GA6DA"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { createTaggedError } from "@easynet/agent-tool";
|
|
2
|
+
import { getExtensionContext } from "../../index.js";
|
|
3
|
+
import { overrideWithConfig } from "../util/overrideWithConfig.js";
|
|
4
|
+
import { DEFAULT_GH_READ_COMMANDS, DEFAULT_GIT_MAX_OUTPUT_BYTES, DEFAULT_GIT_TIMEOUT_MS, } from "./defaults.js";
|
|
5
|
+
import { ensureGhAvailable, failOnNonZero, resolveCwd, resolveRepoPath, runProcess } from "./common.js";
|
|
6
|
+
/**
|
|
7
|
+
* Read-only GitHub CLI execution with allowlisted gh command/subcommand pairs.
|
|
8
|
+
* @tool
|
|
9
|
+
* @effect none
|
|
10
|
+
*/
|
|
11
|
+
export async function ghRead(args) {
|
|
12
|
+
const defaults = {
|
|
13
|
+
sandboxRoot: "",
|
|
14
|
+
ghReadCommands: DEFAULT_GH_READ_COMMANDS,
|
|
15
|
+
gitTimeoutMs: DEFAULT_GIT_TIMEOUT_MS,
|
|
16
|
+
gitMaxOutputBytes: DEFAULT_GIT_MAX_OUTPUT_BYTES,
|
|
17
|
+
};
|
|
18
|
+
const ctx = getExtensionContext();
|
|
19
|
+
const cfg = overrideWithConfig(defaults, ctx.config);
|
|
20
|
+
const repoPath = await resolveRepoPath((args.path ?? args.repoPath ?? "").trim(), cfg.sandboxRoot ?? "");
|
|
21
|
+
const command = args.command?.trim();
|
|
22
|
+
const subcommand = args.subcommand?.trim();
|
|
23
|
+
if (!command) {
|
|
24
|
+
throw createTaggedError("GIT_INVALID", "command is required", {});
|
|
25
|
+
}
|
|
26
|
+
const commandKey = subcommand ? `${command} ${subcommand}` : command;
|
|
27
|
+
const allowed = Array.from((cfg.ghReadCommands ?? DEFAULT_GH_READ_COMMANDS));
|
|
28
|
+
if (!allowed.includes(commandKey)) {
|
|
29
|
+
throw createTaggedError("GIT_NOT_ALLOWED", `ghRead only allows read-only commands. \"${commandKey}\" is not allowed`, { command: commandKey, allowed });
|
|
30
|
+
}
|
|
31
|
+
await ensureGhAvailable({
|
|
32
|
+
cwd: repoPath,
|
|
33
|
+
timeoutMs: args.timeoutMs ?? cfg.gitTimeoutMs ?? DEFAULT_GIT_TIMEOUT_MS,
|
|
34
|
+
});
|
|
35
|
+
const cmdArgs = [command, ...(subcommand ? [subcommand] : []), ...(args.args ?? [])];
|
|
36
|
+
const out = await runProcess({
|
|
37
|
+
bin: "gh",
|
|
38
|
+
cmdArgs,
|
|
39
|
+
cwd: resolveCwd(repoPath),
|
|
40
|
+
timeoutMs: args.timeoutMs ?? cfg.gitTimeoutMs ?? DEFAULT_GIT_TIMEOUT_MS,
|
|
41
|
+
maxOutputBytes: cfg.gitMaxOutputBytes ?? DEFAULT_GIT_MAX_OUTPUT_BYTES,
|
|
42
|
+
});
|
|
43
|
+
failOnNonZero(`gh ${commandKey}`, out);
|
|
44
|
+
return {
|
|
45
|
+
result: {
|
|
46
|
+
path: repoPath,
|
|
47
|
+
command,
|
|
48
|
+
subcommand: subcommand ?? null,
|
|
49
|
+
args: args.args ?? [],
|
|
50
|
+
stdout: out.stdout,
|
|
51
|
+
stderr: out.stderr,
|
|
52
|
+
exitCode: out.exitCode,
|
|
53
|
+
},
|
|
54
|
+
evidence: [
|
|
55
|
+
{
|
|
56
|
+
type: "git",
|
|
57
|
+
summary: `ghRead: gh ${commandKey} in ${repoPath}`,
|
|
58
|
+
createdAt: new Date().toISOString(),
|
|
59
|
+
},
|
|
60
|
+
],
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=ghRead.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ghRead.js","sourceRoot":"","sources":["../../../src/git/ghRead.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Stage files in git index.
|
|
3
|
+
* @tool
|
|
4
|
+
* @effect local_write
|
|
5
|
+
*/
|
|
6
|
+
export declare function gitAdd(args: {
|
|
7
|
+
path: string;
|
|
8
|
+
repoPath?: string;
|
|
9
|
+
files?: string[];
|
|
10
|
+
all?: boolean;
|
|
11
|
+
update?: boolean;
|
|
12
|
+
timeoutMs?: number;
|
|
13
|
+
}): Promise<{
|
|
14
|
+
result: {
|
|
15
|
+
path: string;
|
|
16
|
+
files: string[];
|
|
17
|
+
all: boolean;
|
|
18
|
+
update: boolean;
|
|
19
|
+
stdout: string;
|
|
20
|
+
stderr: string;
|
|
21
|
+
exitCode: number;
|
|
22
|
+
};
|
|
23
|
+
evidence: {
|
|
24
|
+
type: string;
|
|
25
|
+
summary: string;
|
|
26
|
+
createdAt: string;
|
|
27
|
+
}[];
|
|
28
|
+
}>;
|
|
29
|
+
//# sourceMappingURL=gitAdd.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitAdd.d.ts","sourceRoot":"","sources":["../../../src/git/gitAdd.ts"],"names":[],"mappings":"AAQA;;;;GAIG;AACH,wBAAsB,MAAM,CAAC,IAAI,EAAE;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;;;;;;;;;;;;;;;GA8CA"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { DEFAULT_GIT_MAX_OUTPUT_BYTES, DEFAULT_GIT_TIMEOUT_MS, } from "./defaults.js";
|
|
2
|
+
import { failOnNonZero, resolveCwd, resolveRepoPath, runProcess } from "./common.js";
|
|
3
|
+
import { getExtensionContext } from "../../index.js";
|
|
4
|
+
import { overrideWithConfig } from "../util/overrideWithConfig.js";
|
|
5
|
+
/**
|
|
6
|
+
* Stage files in git index.
|
|
7
|
+
* @tool
|
|
8
|
+
* @effect local_write
|
|
9
|
+
*/
|
|
10
|
+
export async function gitAdd(args) {
|
|
11
|
+
const defaults = {
|
|
12
|
+
sandboxRoot: "",
|
|
13
|
+
gitTimeoutMs: DEFAULT_GIT_TIMEOUT_MS,
|
|
14
|
+
gitMaxOutputBytes: DEFAULT_GIT_MAX_OUTPUT_BYTES,
|
|
15
|
+
};
|
|
16
|
+
const ctx = getExtensionContext();
|
|
17
|
+
const cfg = overrideWithConfig(defaults, ctx.config);
|
|
18
|
+
const repoPath = await resolveRepoPath((args.path ?? args.repoPath ?? "").trim(), cfg.sandboxRoot ?? "");
|
|
19
|
+
const cmdArgs = ["add"];
|
|
20
|
+
if (args.all)
|
|
21
|
+
cmdArgs.push("--all");
|
|
22
|
+
if (args.update)
|
|
23
|
+
cmdArgs.push("--update");
|
|
24
|
+
if (Array.isArray(args.files) && args.files.length > 0) {
|
|
25
|
+
cmdArgs.push("--", ...args.files.map((f) => f.trim()).filter(Boolean));
|
|
26
|
+
}
|
|
27
|
+
else if (!args.all && !args.update) {
|
|
28
|
+
cmdArgs.push("--all");
|
|
29
|
+
}
|
|
30
|
+
const out = await runProcess({
|
|
31
|
+
bin: "git",
|
|
32
|
+
cmdArgs,
|
|
33
|
+
cwd: resolveCwd(repoPath),
|
|
34
|
+
timeoutMs: args.timeoutMs ?? cfg.gitTimeoutMs ?? DEFAULT_GIT_TIMEOUT_MS,
|
|
35
|
+
maxOutputBytes: cfg.gitMaxOutputBytes ?? DEFAULT_GIT_MAX_OUTPUT_BYTES,
|
|
36
|
+
});
|
|
37
|
+
failOnNonZero("add", out);
|
|
38
|
+
return {
|
|
39
|
+
result: {
|
|
40
|
+
path: repoPath,
|
|
41
|
+
files: args.files ?? [],
|
|
42
|
+
all: args.all ?? (!args.files?.length && !args.update),
|
|
43
|
+
update: args.update ?? false,
|
|
44
|
+
stdout: out.stdout,
|
|
45
|
+
stderr: out.stderr,
|
|
46
|
+
exitCode: out.exitCode,
|
|
47
|
+
},
|
|
48
|
+
evidence: [
|
|
49
|
+
{
|
|
50
|
+
type: "git",
|
|
51
|
+
summary: `gitAdd: staged changes in ${repoPath}`,
|
|
52
|
+
createdAt: new Date().toISOString(),
|
|
53
|
+
},
|
|
54
|
+
],
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=gitAdd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitAdd.js","sourceRoot":"","sources":["../../../src/git/gitAdd.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,IAO5B;IACC,MAAM,QAAQ,GAAG;QACf,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,sBAAsB;QACpC,iBAAiB,EAAE,4BAA4B;KAChD,CAAC;IACF,MAAM,GAAG,GAAG,mBAAmB,EAAE,CAAC;IAClC,MAAM,GAAG,GAAG,kBAAkB,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAErD,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;IACzG,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC;IACxB,IAAI,IAAI,CAAC,GAAG;QAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,IAAI,CAAC,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvD,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IACzE,CAAC;SAAM,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC;QAC3B,GAAG,EAAE,KAAK;QACV,OAAO;QACP,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC;QACzB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,YAAY,IAAI,sBAAsB;QACvE,cAAc,EAAE,GAAG,CAAC,iBAAiB,IAAI,4BAA4B;KACtE,CAAC,CAAC;IACH,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAE1B,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;YACvB,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YACtD,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,KAAK;YAC5B,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB;QACD,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,6BAA6B,QAAQ,EAAE;gBAChD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Create a git commit.
|
|
3
|
+
* @tool
|
|
4
|
+
* @effect local_write
|
|
5
|
+
*/
|
|
6
|
+
export declare function gitCommit(args: {
|
|
7
|
+
path: string;
|
|
8
|
+
repoPath?: string;
|
|
9
|
+
message: string;
|
|
10
|
+
all?: boolean;
|
|
11
|
+
noVerify?: boolean;
|
|
12
|
+
timeoutMs?: number;
|
|
13
|
+
}): Promise<{
|
|
14
|
+
result: {
|
|
15
|
+
path: string;
|
|
16
|
+
message: string;
|
|
17
|
+
all: boolean;
|
|
18
|
+
noVerify: boolean;
|
|
19
|
+
stdout: string;
|
|
20
|
+
stderr: string;
|
|
21
|
+
exitCode: number;
|
|
22
|
+
};
|
|
23
|
+
evidence: {
|
|
24
|
+
type: string;
|
|
25
|
+
summary: string;
|
|
26
|
+
createdAt: string;
|
|
27
|
+
}[];
|
|
28
|
+
}>;
|
|
29
|
+
//# sourceMappingURL=gitCommit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitCommit.d.ts","sourceRoot":"","sources":["../../../src/git/gitCommit.ts"],"names":[],"mappings":"AASA;;;;GAIG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;;;;;;;;;;;;;;;GA8CA"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { createTaggedError } from "@easynet/agent-tool";
|
|
2
|
+
import { DEFAULT_GIT_MAX_OUTPUT_BYTES, DEFAULT_GIT_TIMEOUT_MS, } from "./defaults.js";
|
|
3
|
+
import { failOnNonZero, resolveCwd, resolveRepoPath, runProcess } from "./common.js";
|
|
4
|
+
import { getExtensionContext } from "../../index.js";
|
|
5
|
+
import { overrideWithConfig } from "../util/overrideWithConfig.js";
|
|
6
|
+
/**
|
|
7
|
+
* Create a git commit.
|
|
8
|
+
* @tool
|
|
9
|
+
* @effect local_write
|
|
10
|
+
*/
|
|
11
|
+
export async function gitCommit(args) {
|
|
12
|
+
const defaults = {
|
|
13
|
+
sandboxRoot: "",
|
|
14
|
+
gitTimeoutMs: DEFAULT_GIT_TIMEOUT_MS,
|
|
15
|
+
gitMaxOutputBytes: DEFAULT_GIT_MAX_OUTPUT_BYTES,
|
|
16
|
+
};
|
|
17
|
+
const ctx = getExtensionContext();
|
|
18
|
+
const cfg = overrideWithConfig(defaults, ctx.config);
|
|
19
|
+
const repoPath = await resolveRepoPath((args.path ?? args.repoPath ?? "").trim(), cfg.sandboxRoot ?? "");
|
|
20
|
+
const message = args.message?.trim();
|
|
21
|
+
if (!message) {
|
|
22
|
+
throw createTaggedError("GIT_INVALID", "message is required", {});
|
|
23
|
+
}
|
|
24
|
+
const cmdArgs = ["commit", "-m", message];
|
|
25
|
+
if (args.all)
|
|
26
|
+
cmdArgs.push("--all");
|
|
27
|
+
if (args.noVerify)
|
|
28
|
+
cmdArgs.push("--no-verify");
|
|
29
|
+
const out = await runProcess({
|
|
30
|
+
bin: "git",
|
|
31
|
+
cmdArgs,
|
|
32
|
+
cwd: resolveCwd(repoPath),
|
|
33
|
+
timeoutMs: args.timeoutMs ?? cfg.gitTimeoutMs ?? DEFAULT_GIT_TIMEOUT_MS,
|
|
34
|
+
maxOutputBytes: cfg.gitMaxOutputBytes ?? DEFAULT_GIT_MAX_OUTPUT_BYTES,
|
|
35
|
+
});
|
|
36
|
+
failOnNonZero("commit", out);
|
|
37
|
+
return {
|
|
38
|
+
result: {
|
|
39
|
+
path: repoPath,
|
|
40
|
+
message,
|
|
41
|
+
all: args.all ?? false,
|
|
42
|
+
noVerify: args.noVerify ?? false,
|
|
43
|
+
stdout: out.stdout,
|
|
44
|
+
stderr: out.stderr,
|
|
45
|
+
exitCode: out.exitCode,
|
|
46
|
+
},
|
|
47
|
+
evidence: [
|
|
48
|
+
{
|
|
49
|
+
type: "git",
|
|
50
|
+
summary: `gitCommit: committed in ${repoPath}`,
|
|
51
|
+
createdAt: new Date().toISOString(),
|
|
52
|
+
},
|
|
53
|
+
],
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=gitCommit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitCommit.js","sourceRoot":"","sources":["../../../src/git/gitCommit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAO/B;IACC,MAAM,QAAQ,GAAG;QACf,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,sBAAsB;QACpC,iBAAiB,EAAE,4BAA4B;KAChD,CAAC;IACF,MAAM,GAAG,GAAG,mBAAmB,EAAE,CAAC;IAClC,MAAM,GAAG,GAAG,kBAAkB,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAErD,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;IACzG,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC;IACrC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,iBAAiB,CAAC,aAAa,EAAE,qBAAqB,EAAE,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,IAAI,IAAI,CAAC,GAAG;QAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,IAAI,CAAC,QAAQ;QAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE/C,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC;QAC3B,GAAG,EAAE,KAAK;QACV,OAAO;QACP,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC;QACzB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,YAAY,IAAI,sBAAsB;QACvE,cAAc,EAAE,GAAG,CAAC,iBAAiB,IAAI,4BAA4B;KACtE,CAAC,CAAC;IACH,aAAa,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IAE7B,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,OAAO;YACP,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,KAAK;YACtB,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,KAAK;YAChC,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB;QACD,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,2BAA2B,QAAQ,EAAE;gBAC9C,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get git diff output for working tree or staged changes.
|
|
3
|
+
* @tool
|
|
4
|
+
* @effect none
|
|
5
|
+
*/
|
|
6
|
+
export declare function gitDiff(args: {
|
|
7
|
+
path: string;
|
|
8
|
+
repoPath?: string;
|
|
9
|
+
staged?: boolean;
|
|
10
|
+
filePath?: string;
|
|
11
|
+
contextLines?: number;
|
|
12
|
+
timeoutMs?: number;
|
|
13
|
+
}): Promise<{
|
|
14
|
+
result: {
|
|
15
|
+
path: string;
|
|
16
|
+
staged: boolean;
|
|
17
|
+
filePath: string | null;
|
|
18
|
+
diff: string;
|
|
19
|
+
stderr: string;
|
|
20
|
+
exitCode: number;
|
|
21
|
+
};
|
|
22
|
+
evidence: {
|
|
23
|
+
type: string;
|
|
24
|
+
summary: string;
|
|
25
|
+
createdAt: string;
|
|
26
|
+
}[];
|
|
27
|
+
}>;
|
|
28
|
+
//# sourceMappingURL=gitDiff.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitDiff.d.ts","sourceRoot":"","sources":["../../../src/git/gitDiff.ts"],"names":[],"mappings":"AAQA;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;;;;;;;;;;;;;;GA6CA"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { DEFAULT_GIT_MAX_OUTPUT_BYTES, DEFAULT_GIT_TIMEOUT_MS, } from "./defaults.js";
|
|
2
|
+
import { failOnNonZero, resolveCwd, resolveRepoPath, runProcess } from "./common.js";
|
|
3
|
+
import { getExtensionContext } from "../../index.js";
|
|
4
|
+
import { overrideWithConfig } from "../util/overrideWithConfig.js";
|
|
5
|
+
/**
|
|
6
|
+
* Get git diff output for working tree or staged changes.
|
|
7
|
+
* @tool
|
|
8
|
+
* @effect none
|
|
9
|
+
*/
|
|
10
|
+
export async function gitDiff(args) {
|
|
11
|
+
const defaults = {
|
|
12
|
+
sandboxRoot: "",
|
|
13
|
+
gitTimeoutMs: DEFAULT_GIT_TIMEOUT_MS,
|
|
14
|
+
gitMaxOutputBytes: DEFAULT_GIT_MAX_OUTPUT_BYTES,
|
|
15
|
+
};
|
|
16
|
+
const ctx = getExtensionContext();
|
|
17
|
+
const cfg = overrideWithConfig(defaults, ctx.config);
|
|
18
|
+
const repoPath = await resolveRepoPath((args.path ?? args.repoPath ?? "").trim(), cfg.sandboxRoot ?? "");
|
|
19
|
+
const cmdArgs = ["--no-pager", "diff"];
|
|
20
|
+
if (args.staged)
|
|
21
|
+
cmdArgs.push("--cached");
|
|
22
|
+
if (typeof args.contextLines === "number" && Number.isFinite(args.contextLines)) {
|
|
23
|
+
cmdArgs.push(`-U${Math.max(0, Math.trunc(args.contextLines))}`);
|
|
24
|
+
}
|
|
25
|
+
if (args.filePath?.trim()) {
|
|
26
|
+
cmdArgs.push("--", args.filePath.trim());
|
|
27
|
+
}
|
|
28
|
+
const out = await runProcess({
|
|
29
|
+
bin: "git",
|
|
30
|
+
cmdArgs,
|
|
31
|
+
cwd: resolveCwd(repoPath),
|
|
32
|
+
timeoutMs: args.timeoutMs ?? cfg.gitTimeoutMs ?? DEFAULT_GIT_TIMEOUT_MS,
|
|
33
|
+
maxOutputBytes: cfg.gitMaxOutputBytes ?? DEFAULT_GIT_MAX_OUTPUT_BYTES,
|
|
34
|
+
});
|
|
35
|
+
failOnNonZero("diff", out);
|
|
36
|
+
return {
|
|
37
|
+
result: {
|
|
38
|
+
path: repoPath,
|
|
39
|
+
staged: args.staged ?? false,
|
|
40
|
+
filePath: args.filePath ?? null,
|
|
41
|
+
diff: out.stdout,
|
|
42
|
+
stderr: out.stderr,
|
|
43
|
+
exitCode: out.exitCode,
|
|
44
|
+
},
|
|
45
|
+
evidence: [
|
|
46
|
+
{
|
|
47
|
+
type: "git",
|
|
48
|
+
summary: `gitDiff: ${args.staged ? "staged" : "working tree"} diff in ${repoPath}`,
|
|
49
|
+
createdAt: new Date().toISOString(),
|
|
50
|
+
},
|
|
51
|
+
],
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=gitDiff.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitDiff.js","sourceRoot":"","sources":["../../../src/git/gitDiff.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAO7B;IACC,MAAM,QAAQ,GAAG;QACf,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,sBAAsB;QACpC,iBAAiB,EAAE,4BAA4B;KAChD,CAAC;IACF,MAAM,GAAG,GAAG,mBAAmB,EAAE,CAAC;IAClC,MAAM,GAAG,GAAG,kBAAkB,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAErD,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;IACzG,MAAM,OAAO,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,IAAI,CAAC,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;QAChF,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,UAAU,CAAC;QAC3B,GAAG,EAAE,KAAK;QACV,OAAO;QACP,GAAG,EAAE,UAAU,CAAC,QAAQ,CAAC;QACzB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,GAAG,CAAC,YAAY,IAAI,sBAAsB;QACvE,cAAc,EAAE,GAAG,CAAC,iBAAiB,IAAI,4BAA4B;KACtE,CAAC,CAAC;IACH,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAE3B,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,KAAK;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI;YAC/B,IAAI,EAAE,GAAG,CAAC,MAAM;YAChB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,QAAQ,EAAE,GAAG,CAAC,QAAQ;SACvB;QACD,QAAQ,EAAE;YACR;gBACE,IAAI,EAAE,KAAK;gBACX,OAAO,EAAE,YAAY,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,YAAY,QAAQ,EAAE;gBAClF,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACpC;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Track detailed git commit history, optionally scoped to a file and including patches.
|
|
3
|
+
* @tool
|
|
4
|
+
* @effect none
|
|
5
|
+
*/
|
|
6
|
+
export declare function gitLogHistory(args: {
|
|
7
|
+
path: string;
|
|
8
|
+
repoPath?: string;
|
|
9
|
+
filePath?: string;
|
|
10
|
+
maxCount?: number;
|
|
11
|
+
since?: string;
|
|
12
|
+
until?: string;
|
|
13
|
+
author?: string;
|
|
14
|
+
grep?: string;
|
|
15
|
+
revisionRange?: string;
|
|
16
|
+
follow?: boolean;
|
|
17
|
+
includePatch?: boolean;
|
|
18
|
+
patchMaxCommits?: number;
|
|
19
|
+
timeoutMs?: number;
|
|
20
|
+
}): Promise<{
|
|
21
|
+
result: {
|
|
22
|
+
path: string;
|
|
23
|
+
filePath: string | undefined;
|
|
24
|
+
total: number;
|
|
25
|
+
commits: import("./common.js").GitHistoryCommit[];
|
|
26
|
+
patches: {
|
|
27
|
+
hash: string;
|
|
28
|
+
patch: string;
|
|
29
|
+
}[];
|
|
30
|
+
};
|
|
31
|
+
evidence: {
|
|
32
|
+
type: string;
|
|
33
|
+
summary: string;
|
|
34
|
+
createdAt: string;
|
|
35
|
+
}[];
|
|
36
|
+
}>;
|
|
37
|
+
//# sourceMappingURL=gitLogHistory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitLogHistory.d.ts","sourceRoot":"","sources":["../../../src/git/gitLogHistory.ts"],"names":[],"mappings":"AAUA;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;;;;;;;kBAwC4B,MAAM;mBAAS,MAAM;;;;;;;;GAkCjD"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { DEFAULT_GIT_HISTORY_MAX_COUNT, DEFAULT_GIT_HISTORY_PATCH_MAX_COMMITS, DEFAULT_GIT_MAX_OUTPUT_BYTES, DEFAULT_GIT_TIMEOUT_MS, } from "./defaults.js";
|
|
2
|
+
import { failOnNonZero, parseGitHistory, resolveCwd, resolveRepoPath, runProcess } from "./common.js";
|
|
3
|
+
import { getExtensionContext } from "../../index.js";
|
|
4
|
+
import { overrideWithConfig } from "../util/overrideWithConfig.js";
|
|
5
|
+
/**
|
|
6
|
+
* Track detailed git commit history, optionally scoped to a file and including patches.
|
|
7
|
+
* @tool
|
|
8
|
+
* @effect none
|
|
9
|
+
*/
|
|
10
|
+
export async function gitLogHistory(args) {
|
|
11
|
+
const defaults = {
|
|
12
|
+
sandboxRoot: "",
|
|
13
|
+
gitTimeoutMs: DEFAULT_GIT_TIMEOUT_MS,
|
|
14
|
+
gitMaxOutputBytes: DEFAULT_GIT_MAX_OUTPUT_BYTES,
|
|
15
|
+
gitHistoryMaxCount: DEFAULT_GIT_HISTORY_MAX_COUNT,
|
|
16
|
+
gitHistoryPatchMaxCommits: DEFAULT_GIT_HISTORY_PATCH_MAX_COMMITS,
|
|
17
|
+
};
|
|
18
|
+
const ctx = getExtensionContext();
|
|
19
|
+
const cfg = overrideWithConfig(defaults, ctx.config);
|
|
20
|
+
const repoPath = await resolveRepoPath((args.path ?? args.repoPath ?? "").trim(), cfg.sandboxRoot ?? "");
|
|
21
|
+
const maxCount = args.maxCount ?? cfg.gitHistoryMaxCount ?? DEFAULT_GIT_HISTORY_MAX_COUNT;
|
|
22
|
+
const cmdArgs = [
|
|
23
|
+
"--no-pager",
|
|
24
|
+
"log",
|
|
25
|
+
`--max-count=${maxCount}`,
|
|
26
|
+
"--date=iso-strict",
|
|
27
|
+
"--pretty=format:%H%x1f%an%x1f%ae%x1f%ad%x1f%s%x1f%b%x1e",
|
|
28
|
+
];
|
|
29
|
+
if (args.since?.trim())
|
|
30
|
+
cmdArgs.push(`--since=${args.since.trim()}`);
|
|
31
|
+
if (args.until?.trim())
|
|
32
|
+
cmdArgs.push(`--until=${args.until.trim()}`);
|
|
33
|
+
if (args.author?.trim())
|
|
34
|
+
cmdArgs.push(`--author=${args.author.trim()}`);
|
|
35
|
+
if (args.grep?.trim())
|
|
36
|
+
cmdArgs.push(`--grep=${args.grep.trim()}`);
|
|
37
|
+
if (args.follow ?? Boolean(args.filePath))
|
|
38
|
+
cmdArgs.push("--follow");
|
|
39
|
+
if (args.revisionRange?.trim())
|
|
40
|
+
cmdArgs.push(args.revisionRange.trim());
|
|
41
|
+
if (args.filePath?.trim())
|
|
42
|
+
cmdArgs.push("--", args.filePath.trim());
|
|
43
|
+
const out = await runProcess({
|
|
44
|
+
bin: "git",
|
|
45
|
+
cmdArgs,
|
|
46
|
+
cwd: resolveCwd(repoPath),
|
|
47
|
+
timeoutMs: args.timeoutMs ?? cfg.gitTimeoutMs ?? DEFAULT_GIT_TIMEOUT_MS,
|
|
48
|
+
maxOutputBytes: cfg.gitMaxOutputBytes ?? DEFAULT_GIT_MAX_OUTPUT_BYTES,
|
|
49
|
+
});
|
|
50
|
+
failOnNonZero("log", out);
|
|
51
|
+
const commits = parseGitHistory(out.stdout);
|
|
52
|
+
let patches = [];
|
|
53
|
+
if (args.includePatch) {
|
|
54
|
+
const patchMaxCommits = args.patchMaxCommits ?? cfg.gitHistoryPatchMaxCommits ?? DEFAULT_GIT_HISTORY_PATCH_MAX_COMMITS;
|
|
55
|
+
const limited = commits.slice(0, Math.max(0, patchMaxCommits));
|
|
56
|
+
for (const commit of limited) {
|
|
57
|
+
const show = await runProcess({
|
|
58
|
+
bin: "git",
|
|
59
|
+
cmdArgs: ["--no-pager", "show", "--format=", "--patch", "--stat", commit.hash],
|
|
60
|
+
cwd: resolveCwd(repoPath),
|
|
61
|
+
timeoutMs: args.timeoutMs ?? cfg.gitTimeoutMs ?? DEFAULT_GIT_TIMEOUT_MS,
|
|
62
|
+
maxOutputBytes: cfg.gitMaxOutputBytes ?? DEFAULT_GIT_MAX_OUTPUT_BYTES,
|
|
63
|
+
});
|
|
64
|
+
failOnNonZero(`show ${commit.hash}`, show);
|
|
65
|
+
patches.push({ hash: commit.hash, patch: show.stdout });
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
result: {
|
|
70
|
+
path: repoPath,
|
|
71
|
+
filePath: args.filePath,
|
|
72
|
+
total: commits.length,
|
|
73
|
+
commits,
|
|
74
|
+
patches,
|
|
75
|
+
},
|
|
76
|
+
evidence: [
|
|
77
|
+
{
|
|
78
|
+
type: "git",
|
|
79
|
+
summary: `gitLogHistory: ${commits.length} commit(s) in ${repoPath}`,
|
|
80
|
+
createdAt: new Date().toISOString(),
|
|
81
|
+
},
|
|
82
|
+
],
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=gitLogHistory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitLogHistory.js","sourceRoot":"","sources":["../../../src/git/gitLogHistory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* View a GitHub pull request using GitHub CLI (gh pr view).
|
|
3
|
+
* @tool
|
|
4
|
+
* @effect none
|
|
5
|
+
*/
|
|
6
|
+
export declare function gitPrView(args: {
|
|
7
|
+
path: string;
|
|
8
|
+
repoPath?: string;
|
|
9
|
+
prNumber: number;
|
|
10
|
+
comments?: boolean;
|
|
11
|
+
jsonFields?: string[];
|
|
12
|
+
timeoutMs?: number;
|
|
13
|
+
}): Promise<{
|
|
14
|
+
result: {
|
|
15
|
+
path: string;
|
|
16
|
+
prNumber: number;
|
|
17
|
+
fields: string[];
|
|
18
|
+
pr: unknown;
|
|
19
|
+
};
|
|
20
|
+
evidence: {
|
|
21
|
+
type: string;
|
|
22
|
+
summary: string;
|
|
23
|
+
createdAt: string;
|
|
24
|
+
}[];
|
|
25
|
+
}>;
|
|
26
|
+
//# sourceMappingURL=gitPrView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitPrView.d.ts","sourceRoot":"","sources":["../../../src/git/gitPrView.ts"],"names":[],"mappings":"AAUA;;;;GAIG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;;;;;;;;;;;;GA4DA"}
|