@sourcegraph/amp 0.0.1748318678-gd9a87d → 0.0.1748330494-g3f0084

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 (43) hide show
  1. package/dist/amp.js +3 -3
  2. package/dist/{client-ihGyvzvX.js → client-DcfjDd4A.js} +2 -2
  3. package/dist/{client-ihGyvzvX.js.map → client-DcfjDd4A.js.map} +1 -1
  4. package/dist/{color-B6_clmkr.js → color-CXy0Mt1O.js} +26 -24
  5. package/dist/color-CXy0Mt1O.js.map +1 -0
  6. package/dist/{create_file.node-BZgB6ucQ.js → create_file.node-Cnd4Nn8b.js} +2 -2
  7. package/dist/{create_file.node-BZgB6ucQ.js.map → create_file.node-Cnd4Nn8b.js.map} +1 -1
  8. package/dist/{edit_file.node-Dn6-bMTo.js → edit_file.node-Be3medtb.js} +3 -3
  9. package/dist/{edit_file.node-Dn6-bMTo.js.map → edit_file.node-Be3medtb.js.map} +1 -1
  10. package/dist/{executable-CcU_JATb.js → executable-BbAHdBVY.js} +2 -2
  11. package/dist/{executable-CcU_JATb.js.map → executable-BbAHdBVY.js.map} +1 -1
  12. package/dist/{files-BFh-PTQi.js → files--1Q-a1ZV.js} +2 -2
  13. package/dist/{files-BFh-PTQi.js.map → files--1Q-a1ZV.js.map} +1 -1
  14. package/dist/{glob.node-C6Q_XWT2.js → glob.node-CA1MWD1b.js} +3 -3
  15. package/dist/{glob.node-C6Q_XWT2.js.map → glob.node-CA1MWD1b.js.map} +1 -1
  16. package/dist/{list_directory.node-DHFkmZJe.js → list_directory.node-C_O--JLs.js} +2 -2
  17. package/dist/{list_directory.node-DHFkmZJe.js.map → list_directory.node-C_O--JLs.js.map} +1 -1
  18. package/dist/{load-profile-BHvBvRl1.js → load-profile-0CuSgiWr.js} +2 -2
  19. package/dist/{load-profile-BHvBvRl1.js.map → load-profile-0CuSgiWr.js.map} +1 -1
  20. package/dist/{main-c79NY7GF.js → main-NdzEy1DN.js} +1258 -1246
  21. package/dist/main-NdzEy1DN.js.map +1 -0
  22. package/dist/{node-CWlY3GUy.js → node-B029Told.js} +3 -3
  23. package/dist/{node-CWlY3GUy.js.map → node-B029Told.js.map} +1 -1
  24. package/dist/{node-B1003M2a.js → node-BRttyTrh.js} +3 -3
  25. package/dist/{node-B1003M2a.js.map → node-BRttyTrh.js.map} +1 -1
  26. package/dist/{node-1lU917Fh.js → node-CS0yja_J.js} +2 -2
  27. package/dist/{node-1lU917Fh.js.map → node-CS0yja_J.js.map} +1 -1
  28. package/dist/{node-DpO0JYvi.js → node-DJQHHl-X.js} +2 -2
  29. package/dist/{node-DpO0JYvi.js.map → node-DJQHHl-X.js.map} +1 -1
  30. package/dist/{node-BpegEIRT.js → node-Dc7OwtlA.js} +3 -3
  31. package/dist/{node-BpegEIRT.js.map → node-Dc7OwtlA.js.map} +1 -1
  32. package/dist/{node--dWo_oau.js → node-aMyd1IN4.js} +3 -3
  33. package/dist/{node--dWo_oau.js.map → node-aMyd1IN4.js.map} +1 -1
  34. package/dist/{read_file.node-BpKarhba.js → read_file.node-BjBOaIme.js} +2 -2
  35. package/dist/{read_file.node-BpKarhba.js.map → read_file.node-BjBOaIme.js.map} +1 -1
  36. package/dist/{stdio-DFXmuJyK.js → stdio-Cb3rNj8D.js} +3 -3
  37. package/dist/{stdio-DFXmuJyK.js.map → stdio-Cb3rNj8D.js.map} +1 -1
  38. package/dist/storybook.js +1 -1
  39. package/dist/{undo_edit.node-De_mTQZH.js → undo_edit.node-DB9rujSj.js} +2 -2
  40. package/dist/{undo_edit.node-De_mTQZH.js.map → undo_edit.node-DB9rujSj.js.map} +1 -1
  41. package/package.json +5 -1
  42. package/dist/color-B6_clmkr.js.map +0 -1
  43. package/dist/main-c79NY7GF.js.map +0 -1
package/dist/amp.js CHANGED
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
- import "./color-B6_clmkr.js";
3
- import "./main-c79NY7GF.js";
2
+ import "./color-CXy0Mt1O.js";
3
+ import "./main-NdzEy1DN.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-ihGyvzvX.js";
8
+ import "./client-DcfjDd4A.js";
9
9
  //# sourceMappingURL=amp.js.map
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { f as i, b7 as n, r as a, s as p, p as c } from "./color-B6_clmkr.js";
2
+ import { f as i, b7 as n, r as a, s as p, p as c } from "./color-CXy0Mt1O.js";
3
3
  const u = a.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-ihGyvzvX.js.map
35
+ //# sourceMappingURL=client-DcfjDd4A.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client-ihGyvzvX.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\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;AAmEA,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-DcfjDd4A.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\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;AAmEA,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;"}
@@ -509,22 +509,22 @@ function EZ(t, e) {
509
509
  });
510
510
  }
511
511
  function RS(t) {
512
- const e = (r, ...n) => {
512
+ const e = t?.shouldCountRefs ?? !0, r = (n, ...a) => {
513
513
  };
514
- return (r) => {
515
- const n = new Qu();
516
- let a = null, s = !1, i, o = 0;
517
- return new Ee((l) => {
518
- o++, s ? (e("new subscriber, emitting buffered value", i), l.next(i)) : e(), a || (a = r.subscribe({
519
- next: (d) => {
520
- s = !0, i = d, n.next(d);
521
- },
522
- error: (d) => n.error(d),
523
- complete: () => n.complete()
514
+ return (n) => {
515
+ const a = new Qu();
516
+ let s = null, i = !1, o, l = 0;
517
+ return new Ee((u) => {
518
+ l++, i ? (r("new subscriber, emitting buffered value", o), u.next(o)) : r(), s || (s = n.subscribe({
519
+ next: (m) => {
520
+ i = !0, o = m, a.next(m);
521
+ },
522
+ error: (m) => a.error(m),
523
+ complete: () => a.complete()
524
524
  }));
525
- const u = n.subscribe(l);
525
+ const d = a.subscribe(u);
526
526
  return () => {
527
- o--, u.unsubscribe(), o === 0 && (a && (ct(a), a = null), s = !1);
527
+ l--, d.unsubscribe(), e && l === 0 && (s && (ct(s), s = null), i = !1);
528
528
  };
529
529
  });
530
530
  };
@@ -6986,7 +6986,7 @@ Prefer this tool over \`edit_file\` when you want to ovewrite the entire content
6986
6986
  },
6987
6987
  source: "builtin"
6988
6988
  },
6989
- fn: import("./create_file.node-BZgB6ucQ.js").then(
6989
+ fn: import("./create_file.node-Cnd4Nn8b.js").then(
6990
6990
  ({ nodeCreateFileTool: t }) => t
6991
6991
  )
6992
6992
  }, Xt = "Grep", xC = 15, LC = 250, PC = `Search for exact text patterns in files using ripgrep, a fast keyword search tool.
@@ -7119,7 +7119,7 @@ COMPLEMENTARY USE WITH CODEBASE_SEARCH:
7119
7119
  },
7120
7120
  source: "builtin"
7121
7121
  },
7122
- fn: import("./node--dWo_oau.js").then(({ nodeGrepTool: t }) => t)
7122
+ fn: import("./node-aMyd1IN4.js").then(({ nodeGrepTool: t }) => t)
7123
7123
  }, hr = "read_file", FC = 1e3, yn = {
7124
7124
  spec: {
7125
7125
  name: hr,
@@ -7151,7 +7151,7 @@ Returns the contents of the file with each line prefixed by its line number. For
7151
7151
  switch ("node") {
7152
7152
  case "node":
7153
7153
  case "vscode":
7154
- return import("./read_file.node-BpKarhba.js").then(({ nodeReadFileTool: t }) => t);
7154
+ return import("./read_file.node-BjBOaIme.js").then(({ nodeReadFileTool: t }) => t);
7155
7155
  }
7156
7156
  })()
7157
7157
  }, BC = lC({
@@ -7180,7 +7180,7 @@ If you need to replace the entire contents of a file, use \`${ni}\` instead, sin
7180
7180
  inputSchema: RD(BC),
7181
7181
  source: "builtin"
7182
7182
  },
7183
- fn: import("./edit_file.node-Dn6-bMTo.js").then(({ nodeEditFileTool: t }) => t)
7183
+ fn: import("./edit_file.node-Be3medtb.js").then(({ nodeEditFileTool: t }) => t)
7184
7184
  };
7185
7185
  async function eJ(t, e, r, n) {
7186
7186
  e = Zn(e);
@@ -8149,7 +8149,7 @@ Note: Results are sorted by modification time with the most recently modified fi
8149
8149
  },
8150
8150
  source: "builtin"
8151
8151
  },
8152
- fn: import("./glob.node-C6Q_XWT2.js").then(({ nodeGlobTool: t }) => t)
8152
+ fn: import("./glob.node-CA1MWD1b.js").then(({ nodeGlobTool: t }) => t)
8153
8153
  }, si = "list_directory", u_ = {
8154
8154
  spec: {
8155
8155
  name: si,
@@ -8170,7 +8170,7 @@ Note: Results are sorted by modification time with the most recently modified fi
8170
8170
  switch ("node") {
8171
8171
  case "node":
8172
8172
  case "vscode":
8173
- return import("./list_directory.node-DHFkmZJe.js").then(
8173
+ return import("./list_directory.node-C_O--JLs.js").then(
8174
8174
  ({ nodeListDirectoryTool: t }) => t
8175
8175
  );
8176
8176
  }
@@ -8991,7 +8991,7 @@ It's VERY IMPORTANT to use specific tools when searching for files, instead of i
8991
8991
  },
8992
8992
  source: "builtin"
8993
8993
  },
8994
- fn: import("./node-BpegEIRT.js").then(({ nodeBashTool: t }) => t)
8994
+ fn: import("./node-Dc7OwtlA.js").then(({ nodeBashTool: t }) => t)
8995
8995
  }, P0 = [
8996
8996
  "ls",
8997
8997
  "dir",
@@ -9322,7 +9322,7 @@ This tool converts web content to markdown format for better readability.`,
9322
9322
  requiresNetwork: !0
9323
9323
  }
9324
9324
  },
9325
- fn: import("./node-1lU917Fh.js").then(({ nodeReadWebPageTool: t }) => t)
9325
+ fn: import("./node-CS0yja_J.js").then(({ nodeReadWebPageTool: t }) => t)
9326
9326
  }, oh = "think", Y0 = (t, e) => An(async () => ({ status: "done", result: "Thoughts have been logged." })), q0 = {
9327
9327
  spec: {
9328
9328
  name: oh,
@@ -9387,7 +9387,7 @@ the \`${Bu}\` with the url.
9387
9387
  requiresNetwork: !0
9388
9388
  }
9389
9389
  },
9390
- fn: import("./node-B1003M2a.js").then(({ nodeWebSearchTool: t }) => t)
9390
+ fn: import("./node-BRttyTrh.js").then(({ nodeWebSearchTool: t }) => t)
9391
9391
  }, Sn = "Task", Uu = [
9392
9392
  u_,
9393
9393
  sa,
@@ -9640,6 +9640,8 @@ You use text output to communicate with the user.
9640
9640
 
9641
9641
  You format your responses with GitHub-flavored Markdown.
9642
9642
 
9643
+ You do not surround file names with backticks.
9644
+
9643
9645
  You follow the user's instructions about communication style, even if it conflicts with the following instructions.
9644
9646
 
9645
9647
  You never start your response by saying a question or idea or observation was good, great, fascinating, profound, excellent, perfect, or any other positive adjective. You skip the flattery and respond directly.
@@ -10100,7 +10102,7 @@ Returns a git-style diff showing the changes that were undone as formatted markd
10100
10102
  },
10101
10103
  source: "builtin"
10102
10104
  },
10103
- fn: import("./undo_edit.node-De_mTQZH.js").then(({ nodeUndoEditTool: t }) => t)
10105
+ fn: import("./undo_edit.node-DB9rujSj.js").then(({ nodeUndoEditTool: t }) => t)
10104
10106
  };
10105
10107
  function CJ(t, e, r) {
10106
10108
  const n = [], a = [];
@@ -54340,4 +54342,4 @@ export {
54340
54342
  MZ as y,
54341
54343
  $Z as z
54342
54344
  };
54343
- //# sourceMappingURL=color-B6_clmkr.js.map
54345
+ //# sourceMappingURL=color-CXy0Mt1O.js.map