@sourcegraph/amp 0.0.1748917891-gc53039 → 0.0.1748929708-g4e0808

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-CJDF5IOf.js → client-DM7cuALa.js} +2 -2
  3. package/dist/{client-CJDF5IOf.js.map → client-DM7cuALa.js.map} +1 -1
  4. package/dist/{console-EFuuJ6Do.js → console-mWOvD6Pa.js} +20 -13
  5. package/dist/{console-EFuuJ6Do.js.map → console-mWOvD6Pa.js.map} +1 -1
  6. package/dist/{create_file.node-znCV9y1u.js → create_file.node-C811NWdx.js} +2 -2
  7. package/dist/{create_file.node-znCV9y1u.js.map → create_file.node-C811NWdx.js.map} +1 -1
  8. package/dist/{edit_file.node-Ox45wer9.js → edit_file.node-BHKC-gQq.js} +3 -3
  9. package/dist/{edit_file.node-Ox45wer9.js.map → edit_file.node-BHKC-gQq.js.map} +1 -1
  10. package/dist/{executable-Dny7Sqei.js → executable-C7hPnzew.js} +2 -2
  11. package/dist/{executable-Dny7Sqei.js.map → executable-C7hPnzew.js.map} +1 -1
  12. package/dist/{files-XMouM7Xy.js → files-B8V2eCKM.js} +2 -2
  13. package/dist/{files-XMouM7Xy.js.map → files-B8V2eCKM.js.map} +1 -1
  14. package/dist/{glob.node-CQYWJD-w.js → glob.node-BaOYqDt4.js} +4 -4
  15. package/dist/{glob.node-CQYWJD-w.js.map → glob.node-BaOYqDt4.js.map} +1 -1
  16. package/dist/{index-tUVCK-3e.js → index-C8J8Ux8A.js} +2 -2
  17. package/dist/{index-tUVCK-3e.js.map → index-C8J8Ux8A.js.map} +1 -1
  18. package/dist/{list_directory.node-CBATT0WM.js → list_directory.node-BgRfRZbc.js} +2 -2
  19. package/dist/{list_directory.node-CBATT0WM.js.map → list_directory.node-BgRfRZbc.js.map} +1 -1
  20. package/dist/{load-profile-C07m9AR8.js → load-profile-zboUN1ze.js} +2 -2
  21. package/dist/{load-profile-C07m9AR8.js.map → load-profile-zboUN1ze.js.map} +1 -1
  22. package/dist/{main-BqEui1IZ.js → main-Bw6YRo_L.js} +1540 -1504
  23. package/dist/main-Bw6YRo_L.js.map +1 -0
  24. package/dist/{node-DBTLyS3b.js → node-B-tg-yFK.js} +3 -3
  25. package/dist/{node-DBTLyS3b.js.map → node-B-tg-yFK.js.map} +1 -1
  26. package/dist/{node-DXJQ7rm8.js → node-CcXhHJLX.js} +3 -3
  27. package/dist/{node-DXJQ7rm8.js.map → node-CcXhHJLX.js.map} +1 -1
  28. package/dist/{node-B514W51x.js → node-Cvj0SzTq.js} +4 -4
  29. package/dist/{node-B514W51x.js.map → node-Cvj0SzTq.js.map} +1 -1
  30. package/dist/{node-O3hoyYss.js → node-De4liSZz.js} +2 -2
  31. package/dist/{node-O3hoyYss.js.map → node-De4liSZz.js.map} +1 -1
  32. package/dist/{node-CC00cSMA.js → node-DoPUdUgl.js} +3 -3
  33. package/dist/{node-CC00cSMA.js.map → node-DoPUdUgl.js.map} +1 -1
  34. package/dist/{node-BTp0pR0E.js → node-cHFAXE7T.js} +2 -2
  35. package/dist/{node-BTp0pR0E.js.map → node-cHFAXE7T.js.map} +1 -1
  36. package/dist/{read_file.node-Cr1TQq-u.js → read_file.node-CljqDFUj.js} +2 -2
  37. package/dist/{read_file.node-Cr1TQq-u.js.map → read_file.node-CljqDFUj.js.map} +1 -1
  38. package/dist/{stdio-Ba8PP3i9.js → stdio-D9Zqzkf5.js} +3 -3
  39. package/dist/{stdio-Ba8PP3i9.js.map → stdio-D9Zqzkf5.js.map} +1 -1
  40. package/dist/storybook.js +1 -1
  41. package/dist/{undo_edit.node-BOccAnc1.js → undo_edit.node-BgCpAlBA.js} +2 -2
  42. package/dist/{undo_edit.node-BOccAnc1.js.map → undo_edit.node-BgCpAlBA.js.map} +1 -1
  43. package/package.json +1 -1
  44. package/dist/main-BqEui1IZ.js.map +0 -1
package/dist/amp.js CHANGED
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
- import "./console-EFuuJ6Do.js";
3
- import "./main-BqEui1IZ.js";
2
+ import "./console-mWOvD6Pa.js";
3
+ import "./main-Bw6YRo_L.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-CJDF5IOf.js";
8
+ import "./client-DM7cuALa.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, aR as n, s as p, p as c } from "./console-EFuuJ6Do.js";
2
+ import { f as i, E as o, aR as n, s as p, p as c } from "./console-mWOvD6Pa.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-CJDF5IOf.js.map
35
+ //# sourceMappingURL=client-DM7cuALa.js.map
@@ -1 +1 @@
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;"}
1
+ {"version":3,"file":"client-DM7cuALa.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-B514W51x.js").then(({ nodeGrepTool: n }) => n)
1048
+ fn: import("./node-Cvj0SzTq.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-CC00cSMA.js").then(({ nodeBashTool: n }) => n),
1898
+ fn: import("./node-DoPUdUgl.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-znCV9y1u.js").then(
1951
+ fn: import("./create_file.node-C811NWdx.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-Cr1TQq-u.js").then(({ nodeReadFileTool: n }) => n);
4783
+ return import("./read_file.node-CljqDFUj.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-Ox45wer9.js").then(({ nodeEditFileTool: n }) => n)
4812
+ fn: import("./edit_file.node-BHKC-gQq.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-CQYWJD-w.js").then(({ nodeGlobTool: n }) => n)
4979
+ fn: import("./glob.node-BaOYqDt4.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-CBATT0WM.js").then(
5000
+ return import("./list_directory.node-BgRfRZbc.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-BTp0pR0E.js").then(({ nodeReadWebPageTool: n }) => n)
5087
+ fn: import("./node-cHFAXE7T.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-DXJQ7rm8.js").then(({ nodeWebSearchTool: n }) => n)
5152
+ fn: import("./node-CcXhHJLX.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-CBATT0WM.js")).resolveArgumentDirectoryNode(n, e);
28344
+ return (await import("./list_directory.node-BgRfRZbc.js")).resolveArgumentDirectoryNode(n, e);
28345
28345
  }
28346
28346
  class lV extends Dd {
28347
28347
  #e = new AbortController();
@@ -29013,6 +29013,13 @@ const EV = [
29013
29013
  pattern: String.raw`(sgamp_user_[A-Z0-9]{26}_[a-f0-9]{64})`,
29014
29014
  keywords: ["sgamp_user_"]
29015
29015
  },
29016
+ {
29017
+ id: "sourcegraph-amp-auth-bypass",
29018
+ category: "sourcegraph",
29019
+ title: "Sourcegraph Amp Auth Bypass Token",
29020
+ pattern: String.raw`(sgamp_user_auth-bypass_[a-zA-Z0-9_-]+)`,
29021
+ keywords: ["sgamp_user_auth-bypass_"]
29022
+ },
29016
29023
  {
29017
29024
  id: "github-pat",
29018
29025
  category: "github",
@@ -30289,7 +30296,7 @@ async function wV({
30289
30296
  fileMentions: void 0,
30290
30297
  userState: void 0
30291
30298
  };
30292
- const i = (await import("./files-XMouM7Xy.js").then(
30299
+ const i = (await import("./files-B8V2eCKM.js").then(
30293
30300
  ({ getFileMentions: o }) => o(
30294
30301
  VN(t.content),
30295
30302
  a,
@@ -31358,7 +31365,7 @@ Returns a git-style diff showing the changes that were undone as formatted markd
31358
31365
  },
31359
31366
  source: "builtin"
31360
31367
  },
31361
- fn: import("./undo_edit.node-BOccAnc1.js").then(({ nodeUndoEditTool: n }) => n)
31368
+ fn: import("./undo_edit.node-BgCpAlBA.js").then(({ nodeUndoEditTool: n }) => n)
31362
31369
  }, JE = globalThis.window?.document !== void 0;
31363
31370
  globalThis.process?.versions?.node;
31364
31371
  globalThis.process?.versions?.bun;
@@ -75636,4 +75643,4 @@ export {
75636
75643
  wAe as y,
75637
75644
  fs as z
75638
75645
  };
75639
- //# sourceMappingURL=console-EFuuJ6Do.js.map
75646
+ //# sourceMappingURL=console-mWOvD6Pa.js.map