@sourcegraph/amp 0.0.1748908907-gbc3502 → 0.0.1748917891-gc53039

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 (44) hide show
  1. package/dist/amp.js +3 -3
  2. package/dist/{client-BdpLPYaH.js → client-CJDF5IOf.js} +2 -2
  3. package/dist/{client-BdpLPYaH.js.map → client-CJDF5IOf.js.map} +1 -1
  4. package/dist/{console-CqG_XvSY.js → console-EFuuJ6Do.js} +80 -79
  5. package/dist/{console-CqG_XvSY.js.map → console-EFuuJ6Do.js.map} +1 -1
  6. package/dist/{create_file.node-ADITw5B2.js → create_file.node-znCV9y1u.js} +2 -2
  7. package/dist/{create_file.node-ADITw5B2.js.map → create_file.node-znCV9y1u.js.map} +1 -1
  8. package/dist/{edit_file.node-DXreHiOg.js → edit_file.node-Ox45wer9.js} +5 -5
  9. package/dist/{edit_file.node-DXreHiOg.js.map → edit_file.node-Ox45wer9.js.map} +1 -1
  10. package/dist/{executable-CNRwugd8.js → executable-Dny7Sqei.js} +2 -2
  11. package/dist/{executable-CNRwugd8.js.map → executable-Dny7Sqei.js.map} +1 -1
  12. package/dist/{files-BmtGFG0Q.js → files-XMouM7Xy.js} +2 -2
  13. package/dist/{files-BmtGFG0Q.js.map → files-XMouM7Xy.js.map} +1 -1
  14. package/dist/{glob.node-CVEV9zgB.js → glob.node-CQYWJD-w.js} +6 -6
  15. package/dist/{glob.node-CVEV9zgB.js.map → glob.node-CQYWJD-w.js.map} +1 -1
  16. package/dist/{index-BqIcA2B7.js → index-tUVCK-3e.js} +2 -2
  17. package/dist/{index-BqIcA2B7.js.map → index-tUVCK-3e.js.map} +1 -1
  18. package/dist/{list_directory.node-BemKxEzJ.js → list_directory.node-CBATT0WM.js} +2 -2
  19. package/dist/{list_directory.node-BemKxEzJ.js.map → list_directory.node-CBATT0WM.js.map} +1 -1
  20. package/dist/{load-profile-DrobQ5m2.js → load-profile-C07m9AR8.js} +2 -2
  21. package/dist/{load-profile-DrobQ5m2.js.map → load-profile-C07m9AR8.js.map} +1 -1
  22. package/dist/{main-DSExaIdm.js → main-BqEui1IZ.js} +7875 -7094
  23. package/dist/main-BqEui1IZ.js.map +1 -0
  24. package/dist/{node-CY_sNxT5.js → node-B514W51x.js} +7 -7
  25. package/dist/{node-CY_sNxT5.js.map → node-B514W51x.js.map} +1 -1
  26. package/dist/{node-D3-y_ogB.js → node-BTp0pR0E.js} +2 -2
  27. package/dist/{node-D3-y_ogB.js.map → node-BTp0pR0E.js.map} +1 -1
  28. package/dist/{node-CWIBdJry.js → node-CC00cSMA.js} +3 -3
  29. package/dist/{node-CWIBdJry.js.map → node-CC00cSMA.js.map} +1 -1
  30. package/dist/{node-DS32BXFS.js → node-DBTLyS3b.js} +14 -14
  31. package/dist/{node-DS32BXFS.js.map → node-DBTLyS3b.js.map} +1 -1
  32. package/dist/{node-CIdEg4qU.js → node-DXJQ7rm8.js} +3 -3
  33. package/dist/{node-CIdEg4qU.js.map → node-DXJQ7rm8.js.map} +1 -1
  34. package/dist/{node-oyrvsiXU.js → node-O3hoyYss.js} +2 -2
  35. package/dist/{node-oyrvsiXU.js.map → node-O3hoyYss.js.map} +1 -1
  36. package/dist/{read_file.node-6hnIOwx2.js → read_file.node-Cr1TQq-u.js} +2 -2
  37. package/dist/{read_file.node-6hnIOwx2.js.map → read_file.node-Cr1TQq-u.js.map} +1 -1
  38. package/dist/{stdio-ChTqjQy8.js → stdio-Ba8PP3i9.js} +3 -3
  39. package/dist/{stdio-ChTqjQy8.js.map → stdio-Ba8PP3i9.js.map} +1 -1
  40. package/dist/storybook.js +1 -1
  41. package/dist/{undo_edit.node-PvuGXz4H.js → undo_edit.node-BOccAnc1.js} +6 -6
  42. package/dist/{undo_edit.node-PvuGXz4H.js.map → undo_edit.node-BOccAnc1.js.map} +1 -1
  43. package/package.json +1 -1
  44. package/dist/main-DSExaIdm.js.map +0 -1
package/dist/amp.js CHANGED
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
- import "./console-CqG_XvSY.js";
3
- import "./main-DSExaIdm.js";
2
+ import "./console-EFuuJ6Do.js";
3
+ import "./main-BqEui1IZ.js";
4
4
  import "node:crypto";
5
5
  import "node:fs/promises";
6
6
  import "node:path";
7
7
  import "node:process";
8
- import "./client-BdpLPYaH.js";
8
+ import "./client-CJDF5IOf.js";
9
9
  //# sourceMappingURL=amp.js.map
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { f as i, E as o, aQ as n, s as p, p as c } from "./console-CqG_XvSY.js";
2
+ import { f as i, E as o, aR as n, s as p, p as c } from "./console-EFuuJ6Do.js";
3
3
  const u = o.pipe(
4
4
  p(({ settings: e, secrets: t }) => c(async () => await t.getToken("apiKey", e.url) !== void 0))
5
5
  );
@@ -32,4 +32,4 @@ export {
32
32
  w as f,
33
33
  u as i
34
34
  };
35
- //# sourceMappingURL=client-BdpLPYaH.js.map
35
+ //# sourceMappingURL=client-CJDF5IOf.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client-BdpLPYaH.js","sources":["../../core/src/server-api/client.ts"],"sourcesContent":["import type { ThreadOperatorShare } from '@sourcegraph/amp-api-types'\nimport type { Observable } from '@sourcegraph/observable'\nimport {\n\tdistinctUntilChanged,\n\tfirstValueFrom,\n\tmap,\n\ttype pendingOperation,\n\tpromiseFactoryToObservable,\n\tswitchMap,\n\tswitchMapReplayOperation,\n} from '@sourcegraph/observable'\nimport { isEqualJSON } from '../common/isEqualJSON'\nimport { type PickResolvedConfiguration, resolvedConfig } from '../configuration/resolver'\nimport { clientIdentificationHeaders } from '../misc/known-clients'\nimport type { ThreadID } from '../threads/thread'\nimport type { ThreadService } from '../threads/thread-service'\n\nexport const isAmpServerConfigured = resolvedConfig.pipe(\n\tswitchMap(({ settings, secrets }) => {\n\t\treturn promiseFactoryToObservable(async () => {\n\t\t\tconst apiKey = await secrets.getToken('apiKey', settings.url)\n\t\t\treturn apiKey !== undefined\n\t\t})\n\t}),\n)\n\n/**\n * Returns the URL to a thread on the Amp server.\n */\nexport function threadURL(ampURL: URL, threadID: ThreadID): URL {\n\treturn new URL(`/threads/${threadID}`, ampURL)\n}\n\n/**\n * Makes a request to the Amp API with the proper configuration\n */\nexport async function fetchFromAmpServer(\n\tpathAndQuery: string,\n\tinit?: RequestInit,\n): Promise<Response> {\n\tconst config = await firstValueFrom(resolvedConfig, init?.signal ?? undefined)\n\treturn fetchFromAmpServerWithConfig(config, pathAndQuery, init)\n}\n\nexport function watchOnAmpServer<T>(\n\tpathAndQuery: string,\n\tinit?: Omit<RequestInit, 'signal'>,\n): Observable<T | typeof pendingOperation | Error> {\n\treturn resolvedConfig.pipe(\n\t\tmap(\n\t\t\t({ settings, secrets }) =>\n\t\t\t\t({\n\t\t\t\t\tsettings: {\n\t\t\t\t\t\turl: settings.url,\n\t\t\t\t\t},\n\t\t\t\t\tsecrets,\n\t\t\t\t}) satisfies PickResolvedConfiguration<{\n\t\t\t\t\tsettings: 'url'\n\t\t\t\t\tsecrets: true\n\t\t\t\t}>,\n\t\t),\n\t\tdistinctUntilChanged(\n\t\t\t(a, b) => isEqualJSON(a.settings, b.settings) && a.secrets === b.secrets,\n\t\t),\n\t\tswitchMapReplayOperation((config) =>\n\t\t\tpromiseFactoryToObservable(async (signal) => {\n\t\t\t\tconst resp = await fetchFromAmpServerWithConfig(config, pathAndQuery, {\n\t\t\t\t\t...init,\n\t\t\t\t\tsignal,\n\t\t\t\t})\n\t\t\t\tif (!resp.ok) {\n\t\t\t\t\tconst text = await resp.text()\n\t\t\t\t\tif (text) {\n\t\t\t\t\t\tthrow new Error(`HTTP ${resp.status}: ${text}`)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow new Error(`HTTP ${resp.status}`)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn (await resp.json()) as T\n\t\t\t}),\n\t\t),\n\t)\n}\n\n/**\n * Share a thread with the operator (i.e., the Amp team).\n */\nexport async function shareThreadWithOperator(\n\tthreadService: ThreadService,\n\tthreadID: ThreadID,\n): Promise<void> {\n\tconst thread = await firstValueFrom(threadService.observe(threadID))\n\tif (!thread) {\n\t\tthrow new Error(`Thread not found: ${threadID}`)\n\t}\n\n\tconst response = await fetchFromAmpServer('/api/internal/share-thread-with-operator', {\n\t\tmethod: 'POST',\n\t\theaders: {\n\t\t\t'Content-Type': 'application/json',\n\t\t},\n\t\tbody: JSON.stringify({ threadData: thread } as Pick<ThreadOperatorShare, 'threadData'>),\n\t})\n\tif (!response.ok) {\n\t\tconst text = await response.text()\n\t\tthrow new Error(`Failed to share thread: ${response.status} ${text}`)\n\t}\n}\n\n/**\n * Submit autoedit feedback to the server.\n */\nexport async function submitAutoeditFeedback(feedbackData: {\n\tfile_path: string\n\tprefix: string\n\tsuffix: string\n\tcode_to_replace_prefix: string\n\tcode_to_replace_suffix: string\n\tcontext: Array<{\n\t\tidentifier: string\n\t\tcontent: string\n\t\tfile_path: string\n\t\tstart_line?: number\n\t\tend_line?: number\n\t\tmetadata?: {\n\t\t\ttime_since_action_ms?: number\n\t\t\tretriever_metadata?: Record<string, number | string>\n\t\t}\n\t}>\n\tchosen: string\n\trejected: string\n\tassertions: string\n}): Promise<void> {\n\tconst response = await fetchFromAmpServer('/api/tab/feedback', {\n\t\tmethod: 'POST',\n\t\theaders: {\n\t\t\t'Content-Type': 'application/json',\n\t\t},\n\t\tbody: JSON.stringify(feedbackData),\n\t})\n\n\tif (!response.ok) {\n\t\tconst text = await response.text()\n\t\tlet errorMessage: string\n\t\ttry {\n\t\t\tconst errorData = JSON.parse(text)\n\t\t\terrorMessage = errorData.error || `HTTP ${response.status}`\n\t\t} catch {\n\t\t\terrorMessage = text || `HTTP ${response.status}`\n\t\t}\n\t\tthrow new Error(`Failed to submit feedback: ${errorMessage}`)\n\t}\n}\n\nasync function fetchFromAmpServerWithConfig(\n\tconfig: PickResolvedConfiguration<{\n\t\tsettings: 'url'\n\t\tsecrets: true\n\t}>,\n\tpathAndQuery: string,\n\tinit?: RequestInit,\n): Promise<Response> {\n\tif (pathAndQuery.startsWith('http:') || pathAndQuery.startsWith('https:')) {\n\t\tthrow new Error('input must be a path, not an absolute URL')\n\t}\n\tif (!pathAndQuery.startsWith('/')) {\n\t\tthrow new Error('pathAndQuery must start with /')\n\t}\n\n\tconst baseURL = config.settings.url\n\tif (!baseURL) {\n\t\tthrow new Error('amp.url is not set')\n\t}\n\n\tconst apiKey = await config.secrets.getToken('apiKey', baseURL)\n\tif (!apiKey) {\n\t\tthrow new Error('Amp API key is not set')\n\t}\n\n\treturn fetch(new URL(pathAndQuery, baseURL), {\n\t\t...init,\n\t\theaders: {\n\t\t\t...init?.headers,\n\t\t\t...clientIdentificationHeaders(),\n\t\t\t'Content-Type': 'application/json',\n\t\t\tAuthorization: `Bearer ${apiKey}`,\n\t\t},\n\t})\n}\n"],"names":["isAmpServerConfigured","resolvedConfig","switchMap","settings","secrets","promiseFactoryToObservable","fetchFromAmpServer","pathAndQuery","init","config","firstValueFrom","fetchFromAmpServerWithConfig","baseURL","apiKey","clientIdentificationHeaders"],"mappings":";;AAiBO,MAAMA,IAAwBC,EAAe;AAAA,EACnDC,EAAU,CAAC,EAAE,UAAAC,GAAU,SAAAC,QACfC,EAA2B,YAClB,MAAMD,EAAQ,SAAS,UAAUD,EAAS,GAAG,MAC1C,MAClB,CACD;AACF;AAYsB,eAAAG,EACrBC,GACAC,GACoB;AACpB,QAAMC,IAAS,MAAMC,EAAeT,GAAgBO,GAAM,UAAU,MAAS;AACtE,SAAAG,EAA6BF,GAAQF,GAAcC,CAAI;AAC/D;AAgHA,eAAeG,EACdF,GAIAF,GACAC,GACoB;AACpB,MAAID,EAAa,WAAW,OAAO,KAAKA,EAAa,WAAW,QAAQ;AACjE,UAAA,IAAI,MAAM,2CAA2C;AAE5D,MAAI,CAACA,EAAa,WAAW,GAAG;AACzB,UAAA,IAAI,MAAM,gCAAgC;AAG3C,QAAAK,IAAUH,EAAO,SAAS;AAChC,MAAI,CAACG;AACE,UAAA,IAAI,MAAM,oBAAoB;AAGrC,QAAMC,IAAS,MAAMJ,EAAO,QAAQ,SAAS,UAAUG,CAAO;AAC9D,MAAI,CAACC;AACE,UAAA,IAAI,MAAM,wBAAwB;AAGzC,SAAO,MAAM,IAAI,IAAIN,GAAcK,CAAO,GAAG;AAAA,IAC5C,GAAGJ;AAAA,IACH,SAAS;AAAA,MACR,GAAGA,GAAM;AAAA,MACT,GAAGM,EAA4B;AAAA,MAC/B,gBAAgB;AAAA,MAChB,eAAe,UAAUD,CAAM;AAAA,IAAA;AAAA,EAChC,CACA;AACF;"}
1
+ {"version":3,"file":"client-CJDF5IOf.js","sources":["../../core/src/server-api/client.ts"],"sourcesContent":["import type { ThreadOperatorShare } from '@sourcegraph/amp-api-types'\nimport type { Observable } from '@sourcegraph/observable'\nimport {\n\tdistinctUntilChanged,\n\tfirstValueFrom,\n\tmap,\n\ttype pendingOperation,\n\tpromiseFactoryToObservable,\n\tswitchMap,\n\tswitchMapReplayOperation,\n} from '@sourcegraph/observable'\nimport { isEqualJSON } from '../common/isEqualJSON'\nimport { type PickResolvedConfiguration, resolvedConfig } from '../configuration/resolver'\nimport { clientIdentificationHeaders } from '../misc/known-clients'\nimport type { ThreadID } from '../threads/thread'\nimport type { ThreadService } from '../threads/thread-service'\n\nexport const isAmpServerConfigured = resolvedConfig.pipe(\n\tswitchMap(({ settings, secrets }) => {\n\t\treturn promiseFactoryToObservable(async () => {\n\t\t\tconst apiKey = await secrets.getToken('apiKey', settings.url)\n\t\t\treturn apiKey !== undefined\n\t\t})\n\t}),\n)\n\n/**\n * Returns the URL to a thread on the Amp server.\n */\nexport function threadURL(ampURL: URL, threadID: ThreadID): URL {\n\treturn new URL(`/threads/${threadID}`, ampURL)\n}\n\n/**\n * Makes a request to the Amp API with the proper configuration\n */\nexport async function fetchFromAmpServer(\n\tpathAndQuery: string,\n\tinit?: RequestInit,\n): Promise<Response> {\n\tconst config = await firstValueFrom(resolvedConfig, init?.signal ?? undefined)\n\treturn fetchFromAmpServerWithConfig(config, pathAndQuery, init)\n}\n\nexport function watchOnAmpServer<T>(\n\tpathAndQuery: string,\n\tinit?: Omit<RequestInit, 'signal'>,\n): Observable<T | typeof pendingOperation | Error> {\n\treturn resolvedConfig.pipe(\n\t\tmap(\n\t\t\t({ settings, secrets }) =>\n\t\t\t\t({\n\t\t\t\t\tsettings: {\n\t\t\t\t\t\turl: settings.url,\n\t\t\t\t\t},\n\t\t\t\t\tsecrets,\n\t\t\t\t}) satisfies PickResolvedConfiguration<{\n\t\t\t\t\tsettings: 'url'\n\t\t\t\t\tsecrets: true\n\t\t\t\t}>,\n\t\t),\n\t\tdistinctUntilChanged(\n\t\t\t(a, b) => isEqualJSON(a.settings, b.settings) && a.secrets === b.secrets,\n\t\t),\n\t\tswitchMapReplayOperation((config) =>\n\t\t\tpromiseFactoryToObservable(async (signal) => {\n\t\t\t\tconst resp = await fetchFromAmpServerWithConfig(config, pathAndQuery, {\n\t\t\t\t\t...init,\n\t\t\t\t\tsignal,\n\t\t\t\t})\n\t\t\t\tif (!resp.ok) {\n\t\t\t\t\tconst text = await resp.text()\n\t\t\t\t\tif (text) {\n\t\t\t\t\t\tthrow new Error(`HTTP ${resp.status}: ${text}`)\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthrow new Error(`HTTP ${resp.status}`)\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn (await resp.json()) as T\n\t\t\t}),\n\t\t),\n\t)\n}\n\n/**\n * Share a thread with the operator (i.e., the Amp team).\n */\nexport async function shareThreadWithOperator(\n\tthreadService: ThreadService,\n\tthreadID: ThreadID,\n): Promise<void> {\n\tconst thread = await firstValueFrom(threadService.observe(threadID))\n\tif (!thread) {\n\t\tthrow new Error(`Thread not found: ${threadID}`)\n\t}\n\n\tconst response = await fetchFromAmpServer('/api/internal/share-thread-with-operator', {\n\t\tmethod: 'POST',\n\t\theaders: {\n\t\t\t'Content-Type': 'application/json',\n\t\t},\n\t\tbody: JSON.stringify({ threadData: thread } as Pick<ThreadOperatorShare, 'threadData'>),\n\t})\n\tif (!response.ok) {\n\t\tconst text = await response.text()\n\t\tthrow new Error(`Failed to share thread: ${response.status} ${text}`)\n\t}\n}\n\n/**\n * Submit autoedit feedback to the server.\n */\nexport async function submitAutoeditFeedback(feedbackData: {\n\tfile_path: string\n\tprefix: string\n\tsuffix: string\n\tcode_to_replace_prefix: string\n\tcode_to_replace_suffix: string\n\tcontext: Array<{\n\t\tidentifier: string\n\t\tcontent: string\n\t\tfile_path: string\n\t\tstart_line?: number\n\t\tend_line?: number\n\t\tmetadata?: {\n\t\t\ttime_since_action_ms?: number\n\t\t\tretriever_metadata?: Record<string, number | string>\n\t\t}\n\t}>\n\tchosen: string\n\trejected: string\n\tassertions: string\n}): Promise<void> {\n\tconst response = await fetchFromAmpServer('/api/tab/feedback', {\n\t\tmethod: 'POST',\n\t\theaders: {\n\t\t\t'Content-Type': 'application/json',\n\t\t},\n\t\tbody: JSON.stringify(feedbackData),\n\t})\n\n\tif (!response.ok) {\n\t\tconst text = await response.text()\n\t\tlet errorMessage: string\n\t\ttry {\n\t\t\tconst errorData = JSON.parse(text)\n\t\t\terrorMessage = errorData.error || `HTTP ${response.status}`\n\t\t} catch {\n\t\t\terrorMessage = text || `HTTP ${response.status}`\n\t\t}\n\t\tthrow new Error(`Failed to submit feedback: ${errorMessage}`)\n\t}\n}\n\nasync function fetchFromAmpServerWithConfig(\n\tconfig: PickResolvedConfiguration<{\n\t\tsettings: 'url'\n\t\tsecrets: true\n\t}>,\n\tpathAndQuery: string,\n\tinit?: RequestInit,\n): Promise<Response> {\n\tif (pathAndQuery.startsWith('http:') || pathAndQuery.startsWith('https:')) {\n\t\tthrow new Error('input must be a path, not an absolute URL')\n\t}\n\tif (!pathAndQuery.startsWith('/')) {\n\t\tthrow new Error('pathAndQuery must start with /')\n\t}\n\n\tconst baseURL = config.settings.url\n\tif (!baseURL) {\n\t\tthrow new Error('amp.url is not set')\n\t}\n\n\tconst apiKey = await config.secrets.getToken('apiKey', baseURL)\n\tif (!apiKey) {\n\t\tthrow new Error('Amp API key is not set')\n\t}\n\n\treturn fetch(new URL(pathAndQuery, baseURL), {\n\t\t...init,\n\t\theaders: {\n\t\t\t...init?.headers,\n\t\t\t...clientIdentificationHeaders(),\n\t\t\t'Content-Type': 'application/json',\n\t\t\tAuthorization: `Bearer ${apiKey}`,\n\t\t},\n\t})\n}\n"],"names":["isAmpServerConfigured","resolvedConfig","switchMap","settings","secrets","promiseFactoryToObservable","fetchFromAmpServer","pathAndQuery","init","config","firstValueFrom","fetchFromAmpServerWithConfig","baseURL","apiKey","clientIdentificationHeaders"],"mappings":";;AAiBO,MAAMA,IAAwBC,EAAe;AAAA,EACnDC,EAAU,CAAC,EAAE,UAAAC,GAAU,SAAAC,QACfC,EAA2B,YAClB,MAAMD,EAAQ,SAAS,UAAUD,EAAS,GAAG,MAC1C,MAClB,CACD;AACF;AAYsB,eAAAG,EACrBC,GACAC,GACoB;AACpB,QAAMC,IAAS,MAAMC,EAAeT,GAAgBO,GAAM,UAAU,MAAS;AACtE,SAAAG,EAA6BF,GAAQF,GAAcC,CAAI;AAC/D;AAgHA,eAAeG,EACdF,GAIAF,GACAC,GACoB;AACpB,MAAID,EAAa,WAAW,OAAO,KAAKA,EAAa,WAAW,QAAQ;AACjE,UAAA,IAAI,MAAM,2CAA2C;AAE5D,MAAI,CAACA,EAAa,WAAW,GAAG;AACzB,UAAA,IAAI,MAAM,gCAAgC;AAG3C,QAAAK,IAAUH,EAAO,SAAS;AAChC,MAAI,CAACG;AACE,UAAA,IAAI,MAAM,oBAAoB;AAGrC,QAAMC,IAAS,MAAMJ,EAAO,QAAQ,SAAS,UAAUG,CAAO;AAC9D,MAAI,CAACC;AACE,UAAA,IAAI,MAAM,wBAAwB;AAGzC,SAAO,MAAM,IAAI,IAAIN,GAAcK,CAAO,GAAG;AAAA,IAC5C,GAAGJ;AAAA,IACH,SAAS;AAAA,MACR,GAAGA,GAAM;AAAA,MACT,GAAGM,EAA4B;AAAA,MAC/B,gBAAgB;AAAA,MAChB,eAAe,UAAUD,CAAM;AAAA,IAAA;AAAA,EAChC,CACA;AACF;"}
@@ -1045,7 +1045,7 @@ COMPLEMENTARY USE WITH CODEBASE_SEARCH:
1045
1045
  },
1046
1046
  source: "builtin"
1047
1047
  },
1048
- fn: import("./node-CY_sNxT5.js").then(({ nodeGrepTool: n }) => n)
1048
+ fn: import("./node-B514W51x.js").then(({ nodeGrepTool: n }) => n)
1049
1049
  };
1050
1050
  var Vc = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
1051
1051
  function fs(n) {
@@ -1895,7 +1895,7 @@ It's VERY IMPORTANT to use specific tools when searching for files, instead of i
1895
1895
  },
1896
1896
  source: "builtin"
1897
1897
  },
1898
- fn: import("./node-CWIBdJry.js").then(({ nodeBashTool: n }) => n),
1898
+ fn: import("./node-CC00cSMA.js").then(({ nodeBashTool: n }) => n),
1899
1899
  preprocessArgs: (n) => {
1900
1900
  if (!n.cwd)
1901
1901
  try {
@@ -1948,7 +1948,7 @@ Prefer this tool over \`edit_file\` when you want to ovewrite the entire content
1948
1948
  },
1949
1949
  source: "builtin"
1950
1950
  },
1951
- fn: import("./create_file.node-ADITw5B2.js").then(
1951
+ fn: import("./create_file.node-znCV9y1u.js").then(
1952
1952
  ({ nodeCreateFileTool: n }) => n
1953
1953
  )
1954
1954
  };
@@ -4780,7 +4780,7 @@ Returns the contents of the file with each line prefixed by its line number. For
4780
4780
  switch ("node") {
4781
4781
  case "node":
4782
4782
  case "vscode":
4783
- return import("./read_file.node-6hnIOwx2.js").then(({ nodeReadFileTool: n }) => n);
4783
+ return import("./read_file.node-Cr1TQq-u.js").then(({ nodeReadFileTool: n }) => n);
4784
4784
  }
4785
4785
  })()
4786
4786
  }, iB = L8({
@@ -4809,7 +4809,7 @@ If you need to replace the entire contents of a file, use \`${qu}\` instead, sin
4809
4809
  inputSchema: X4(iB),
4810
4810
  source: "builtin"
4811
4811
  },
4812
- fn: import("./edit_file.node-DXreHiOg.js").then(({ nodeEditFileTool: n }) => n)
4812
+ fn: import("./edit_file.node-Ox45wer9.js").then(({ nodeEditFileTool: n }) => n)
4813
4813
  };
4814
4814
  async function cAe(n, e, t, r) {
4815
4815
  e = Tl(e);
@@ -4976,7 +4976,7 @@ Note: Results are sorted by modification time with the most recently modified fi
4976
4976
  },
4977
4977
  source: "builtin"
4978
4978
  },
4979
- fn: import("./glob.node-CVEV9zgB.js").then(({ nodeGlobTool: n }) => n)
4979
+ fn: import("./glob.node-CQYWJD-w.js").then(({ nodeGlobTool: n }) => n)
4980
4980
  }, Vu = "list_directory", DE = {
4981
4981
  spec: {
4982
4982
  name: Vu,
@@ -4997,7 +4997,7 @@ Note: Results are sorted by modification time with the most recently modified fi
4997
4997
  switch ("node") {
4998
4998
  case "node":
4999
4999
  case "vscode":
5000
- return import("./list_directory.node-BemKxEzJ.js").then(
5000
+ return import("./list_directory.node-CBATT0WM.js").then(
5001
5001
  ({ nodeListDirectoryTool: n }) => n
5002
5002
  );
5003
5003
  }
@@ -5084,7 +5084,7 @@ This tool converts web content to markdown format for better readability.`,
5084
5084
  requiresNetwork: !0
5085
5085
  }
5086
5086
  },
5087
- fn: import("./node-D3-y_ogB.js").then(({ nodeReadWebPageTool: n }) => n)
5087
+ fn: import("./node-BTp0pR0E.js").then(({ nodeReadWebPageTool: n }) => n)
5088
5088
  }, YN = "think", _B = (n, e) => po(async () => ({ status: "done", result: "Thoughts have been logged." })), fB = {
5089
5089
  spec: {
5090
5090
  name: YN,
@@ -5149,7 +5149,7 @@ the \`${I1}\` with the url.
5149
5149
  requiresNetwork: !0
5150
5150
  }
5151
5151
  },
5152
- fn: import("./node-CIdEg4qU.js").then(({ nodeWebSearchTool: n }) => n)
5152
+ fn: import("./node-DXJQ7rm8.js").then(({ nodeWebSearchTool: n }) => n)
5153
5153
  };
5154
5154
  function HN({ onlyFirst: n = !1 } = {}) {
5155
5155
  const t = [
@@ -28341,7 +28341,7 @@ async function sV(n, e) {
28341
28341
  }
28342
28342
  }
28343
28343
  async function oV(n, e) {
28344
- return (await import("./list_directory.node-BemKxEzJ.js")).resolveArgumentDirectoryNode(n, e);
28344
+ return (await import("./list_directory.node-CBATT0WM.js")).resolveArgumentDirectoryNode(n, e);
28345
28345
  }
28346
28346
  class lV extends Dd {
28347
28347
  #e = new AbortController();
@@ -30289,7 +30289,7 @@ async function wV({
30289
30289
  fileMentions: void 0,
30290
30290
  userState: void 0
30291
30291
  };
30292
- const i = (await import("./files-BmtGFG0Q.js").then(
30292
+ const i = (await import("./files-XMouM7Xy.js").then(
30293
30293
  ({ getFileMentions: o }) => o(
30294
30294
  VN(t.content),
30295
30295
  a,
@@ -31358,7 +31358,7 @@ Returns a git-style diff showing the changes that were undone as formatted markd
31358
31358
  },
31359
31359
  source: "builtin"
31360
31360
  },
31361
- fn: import("./undo_edit.node-PvuGXz4H.js").then(({ nodeUndoEditTool: n }) => n)
31361
+ fn: import("./undo_edit.node-BOccAnc1.js").then(({ nodeUndoEditTool: n }) => n)
31362
31362
  }, JE = globalThis.window?.document !== void 0;
31363
31363
  globalThis.process?.versions?.node;
31364
31364
  globalThis.process?.versions?.bun;
@@ -75535,7 +75535,7 @@ export {
75535
75535
  xAe as Z,
75536
75536
  Js as _,
75537
75537
  B2 as a,
75538
- Lw as a$,
75538
+ zU as a$,
75539
75539
  oB as a0,
75540
75540
  UAe as a1,
75541
75541
  fB as a2,
@@ -75544,72 +75544,73 @@ export {
75544
75544
  dAe as a5,
75545
75545
  gB as a6,
75546
75546
  BAe as a7,
75547
- oAe as a8,
75548
- Vc as a9,
75549
- Nw as aA,
75550
- ww as aB,
75551
- DAe as aC,
75552
- cAe as aD,
75553
- iB as aE,
75554
- $ve as aF,
75555
- tAe as aG,
75556
- CU as aH,
75557
- RAe as aI,
75558
- w1 as aJ,
75559
- lB as aK,
75560
- V2 as aL,
75561
- $2 as aM,
75562
- AAe as aN,
75563
- vAe as aO,
75564
- Dw as aP,
75565
- bU as aQ,
75566
- e5 as aR,
75567
- lAe as aS,
75568
- ll as aT,
75569
- t5 as aU,
75570
- pV as aV,
75571
- eV as aW,
75572
- ui as aX,
75573
- Zl as aY,
75574
- kw as aZ,
75575
- zU as a_,
75576
- GZ as aa,
75577
- qve as ab,
75578
- Hs as ac,
75579
- LAe as ad,
75580
- SU as ae,
75581
- Al as af,
75582
- Zve as ag,
75583
- qAe as ah,
75584
- pAe as ai,
75585
- ql as aj,
75586
- Sl as ak,
75587
- aa as al,
75588
- Qve as am,
75589
- $N as an,
75590
- Wve as ao,
75591
- HAe as ap,
75592
- YAe as aq,
75593
- zAe as ar,
75594
- GAe as as,
75595
- vE as at,
75596
- _Ae as au,
75597
- _O as av,
75598
- FAe as aw,
75599
- bAe as ax,
75600
- fAe as ay,
75601
- $r as az,
75547
+ e0 as a8,
75548
+ oAe as a9,
75549
+ $r as aA,
75550
+ Nw as aB,
75551
+ ww as aC,
75552
+ DAe as aD,
75553
+ cAe as aE,
75554
+ iB as aF,
75555
+ $ve as aG,
75556
+ tAe as aH,
75557
+ CU as aI,
75558
+ RAe as aJ,
75559
+ w1 as aK,
75560
+ lB as aL,
75561
+ V2 as aM,
75562
+ $2 as aN,
75563
+ AAe as aO,
75564
+ vAe as aP,
75565
+ Dw as aQ,
75566
+ bU as aR,
75567
+ e5 as aS,
75568
+ lAe as aT,
75569
+ ll as aU,
75570
+ t5 as aV,
75571
+ pV as aW,
75572
+ eV as aX,
75573
+ ui as aY,
75574
+ Zl as aZ,
75575
+ kw as a_,
75576
+ Vc as aa,
75577
+ GZ as ab,
75578
+ qve as ac,
75579
+ Hs as ad,
75580
+ LAe as ae,
75581
+ SU as af,
75582
+ Al as ag,
75583
+ Zve as ah,
75584
+ qAe as ai,
75585
+ pAe as aj,
75586
+ ql as ak,
75587
+ Sl as al,
75588
+ aa as am,
75589
+ Qve as an,
75590
+ $N as ao,
75591
+ Wve as ap,
75592
+ HAe as aq,
75593
+ YAe as ar,
75594
+ zAe as as,
75595
+ GAe as at,
75596
+ vE as au,
75597
+ _Ae as av,
75598
+ _O as aw,
75599
+ FAe as ax,
75600
+ bAe as ay,
75601
+ fAe as az,
75602
75602
  TN as b,
75603
- BU as b0,
75604
- cO as b1,
75605
- PAe as b2,
75606
- SV as b3,
75607
- js as b4,
75608
- bf as b5,
75609
- LU as b6,
75610
- kU as b7,
75611
- PU as b8,
75612
- CAe as b9,
75603
+ Lw as b0,
75604
+ BU as b1,
75605
+ cO as b2,
75606
+ PAe as b3,
75607
+ SV as b4,
75608
+ js as b5,
75609
+ bf as b6,
75610
+ LU as b7,
75611
+ kU as b8,
75612
+ PU as b9,
75613
+ CAe as ba,
75613
75614
  aAe as c,
75614
75615
  iAe as d,
75615
75616
  P2 as e,
@@ -75635,4 +75636,4 @@ export {
75635
75636
  wAe as y,
75636
75637
  fs as z
75637
75638
  };
75638
- //# sourceMappingURL=console-CqG_XvSY.js.map
75639
+ //# sourceMappingURL=console-EFuuJ6Do.js.map