promptfoo 0.84.1 → 0.85.1

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 (146) hide show
  1. package/dist/package.json +1 -1
  2. package/dist/src/assertions.d.ts.map +1 -1
  3. package/dist/src/assertions.js +6 -5
  4. package/dist/src/assertions.js.map +1 -1
  5. package/dist/src/commands/init.js +1 -1
  6. package/dist/src/commands/init.js.map +1 -1
  7. package/dist/src/commands/redteam/init.js +3 -3
  8. package/dist/src/config.js +1 -1
  9. package/dist/src/config.js.map +1 -1
  10. package/dist/src/database/tables.d.ts +1 -0
  11. package/dist/src/database/tables.d.ts.map +1 -1
  12. package/dist/src/envars.d.ts +8 -0
  13. package/dist/src/envars.d.ts.map +1 -1
  14. package/dist/src/envars.js +16 -0
  15. package/dist/src/envars.js.map +1 -1
  16. package/dist/src/evaluator.d.ts.map +1 -1
  17. package/dist/src/evaluator.js +1 -6
  18. package/dist/src/evaluator.js.map +1 -1
  19. package/dist/src/index.d.ts +102 -0
  20. package/dist/src/index.d.ts.map +1 -1
  21. package/dist/src/index.js +3 -5
  22. package/dist/src/index.js.map +1 -1
  23. package/dist/src/matchers.d.ts +1 -0
  24. package/dist/src/matchers.d.ts.map +1 -1
  25. package/dist/src/matchers.js +12 -6
  26. package/dist/src/matchers.js.map +1 -1
  27. package/dist/src/onboarding.d.ts +11 -0
  28. package/dist/src/onboarding.d.ts.map +1 -1
  29. package/dist/src/onboarding.js +79 -19
  30. package/dist/src/onboarding.js.map +1 -1
  31. package/dist/src/prompts/index.d.ts.map +1 -1
  32. package/dist/src/prompts/index.js +4 -0
  33. package/dist/src/prompts/index.js.map +1 -1
  34. package/dist/src/prompts/processors/markdown.d.ts +3 -0
  35. package/dist/src/prompts/processors/markdown.d.ts.map +1 -0
  36. package/dist/src/prompts/processors/markdown.js +17 -0
  37. package/dist/src/prompts/processors/markdown.js.map +1 -0
  38. package/dist/src/providers/mistral.d.ts +18 -1
  39. package/dist/src/providers/mistral.d.ts.map +1 -1
  40. package/dist/src/providers/mistral.js +199 -39
  41. package/dist/src/providers/mistral.js.map +1 -1
  42. package/dist/src/providers.d.ts +3 -0
  43. package/dist/src/providers.d.ts.map +1 -1
  44. package/dist/src/providers.js +11 -2
  45. package/dist/src/providers.js.map +1 -1
  46. package/dist/src/redteam/constants.d.ts +1 -1
  47. package/dist/src/redteam/constants.d.ts.map +1 -1
  48. package/dist/src/redteam/constants.js +2 -0
  49. package/dist/src/redteam/constants.js.map +1 -1
  50. package/dist/src/redteam/graders.d.ts +71 -0
  51. package/dist/src/redteam/graders.d.ts.map +1 -1
  52. package/dist/src/redteam/graders.js +5 -2
  53. package/dist/src/redteam/graders.js.map +1 -1
  54. package/dist/src/redteam/plugins/asciiSmuggling.d.ts +18 -0
  55. package/dist/src/redteam/plugins/asciiSmuggling.d.ts.map +1 -0
  56. package/dist/src/redteam/plugins/asciiSmuggling.js +114 -0
  57. package/dist/src/redteam/plugins/asciiSmuggling.js.map +1 -0
  58. package/dist/src/redteam/plugins/base.d.ts +1 -0
  59. package/dist/src/redteam/plugins/base.d.ts.map +1 -1
  60. package/dist/src/redteam/plugins/base.js +35 -20
  61. package/dist/src/redteam/plugins/base.js.map +1 -1
  62. package/dist/src/redteam/plugins/harmful.js +1 -1
  63. package/dist/src/redteam/plugins/harmful.js.map +1 -1
  64. package/dist/src/redteam/plugins/index.d.ts.map +1 -1
  65. package/dist/src/redteam/plugins/index.js +2 -0
  66. package/dist/src/redteam/plugins/index.js.map +1 -1
  67. package/dist/src/redteam/plugins/indirectPromptInjection.d.ts.map +1 -1
  68. package/dist/src/redteam/plugins/indirectPromptInjection.js +6 -0
  69. package/dist/src/redteam/plugins/indirectPromptInjection.js.map +1 -1
  70. package/dist/src/redteam/strategies/index.d.ts.map +1 -1
  71. package/dist/src/redteam/strategies/index.js +3 -4
  72. package/dist/src/redteam/strategies/index.js.map +1 -1
  73. package/dist/src/redteam/strategies/multilingual.d.ts +1 -0
  74. package/dist/src/redteam/strategies/multilingual.d.ts.map +1 -1
  75. package/dist/src/redteam/strategies/multilingual.js +33 -2
  76. package/dist/src/redteam/strategies/multilingual.js.map +1 -1
  77. package/dist/src/redteam/strategies/promptInjections/data.json +108 -0
  78. package/dist/src/redteam/strategies/promptInjections/index.d.ts +3 -0
  79. package/dist/src/redteam/strategies/promptInjections/index.d.ts.map +1 -0
  80. package/dist/src/redteam/strategies/promptInjections/index.js +54 -0
  81. package/dist/src/redteam/strategies/promptInjections/index.js.map +1 -0
  82. package/dist/src/types/index.d.ts +6 -0
  83. package/dist/src/types/index.d.ts.map +1 -1
  84. package/dist/src/types/index.js +2 -0
  85. package/dist/src/types/index.js.map +1 -1
  86. package/dist/src/types/providers.d.ts +1 -0
  87. package/dist/src/types/providers.d.ts.map +1 -1
  88. package/dist/src/types/providers.js.map +1 -1
  89. package/dist/src/util/templates.d.ts +9 -1
  90. package/dist/src/util/templates.d.ts.map +1 -1
  91. package/dist/src/util/templates.js +10 -2
  92. package/dist/src/util/templates.js.map +1 -1
  93. package/dist/src/web/nextui/404/index.html +1 -1
  94. package/dist/src/web/nextui/404.html +1 -1
  95. package/dist/src/web/nextui/_next/static/chunks/app/eval/[id]/{page-67165aedfd3a64fc.js → page-0d9a5166ca2448c5.js} +1 -1
  96. package/dist/src/web/nextui/_next/static/chunks/app/{layout-09af904e7573507f.js → layout-d88590a8fcba3974.js} +1 -1
  97. package/dist/src/web/nextui/_next/static/chunks/app/page-7e8faab5d212f727.js +1 -0
  98. package/dist/src/web/nextui/_next/static/chunks/app/report/page-56a1a67c5d6e0af8.js +1 -0
  99. package/dist/src/web/nextui/auth/login/index.html +1 -1
  100. package/dist/src/web/nextui/auth/login/index.txt +2 -2
  101. package/dist/src/web/nextui/auth/signup/index.html +1 -1
  102. package/dist/src/web/nextui/auth/signup/index.txt +2 -2
  103. package/dist/src/web/nextui/datasets/index.html +1 -1
  104. package/dist/src/web/nextui/datasets/index.txt +2 -2
  105. package/dist/src/web/nextui/eval/index.html +1 -1
  106. package/dist/src/web/nextui/eval/index.txt +3 -3
  107. package/dist/src/web/nextui/index.html +1 -1
  108. package/dist/src/web/nextui/index.txt +2 -2
  109. package/dist/src/web/nextui/progress/index.html +1 -1
  110. package/dist/src/web/nextui/progress/index.txt +2 -2
  111. package/dist/src/web/nextui/prompts/index.html +1 -1
  112. package/dist/src/web/nextui/prompts/index.txt +2 -2
  113. package/dist/src/web/nextui/report/index.html +1 -1
  114. package/dist/src/web/nextui/report/index.txt +3 -3
  115. package/dist/src/web/nextui/setup/index.html +1 -1
  116. package/dist/src/web/nextui/setup/index.txt +2 -2
  117. package/dist/test/assertions.test.js +2 -2
  118. package/dist/test/assertions.test.js.map +1 -1
  119. package/dist/test/matchers.test.js +54 -0
  120. package/dist/test/matchers.test.js.map +1 -1
  121. package/dist/test/onboarding.test.d.ts +2 -0
  122. package/dist/test/onboarding.test.d.ts.map +1 -0
  123. package/dist/test/onboarding.test.js +48 -0
  124. package/dist/test/onboarding.test.js.map +1 -0
  125. package/dist/test/prompts.processors.markdown.test.d.ts +2 -0
  126. package/dist/test/prompts.processors.markdown.test.d.ts.map +1 -0
  127. package/dist/test/prompts.processors.markdown.test.js +79 -0
  128. package/dist/test/prompts.processors.markdown.test.js.map +1 -0
  129. package/dist/test/providers.mistral.test.d.ts +2 -0
  130. package/dist/test/providers.mistral.test.d.ts.map +1 -0
  131. package/dist/test/providers.mistral.test.js +265 -0
  132. package/dist/test/providers.mistral.test.js.map +1 -0
  133. package/dist/test/redteam/plugins/base.test.js +107 -0
  134. package/dist/test/redteam/plugins/base.test.js.map +1 -1
  135. package/dist/test/util.templates.test.js +28 -5
  136. package/dist/test/util.templates.test.js.map +1 -1
  137. package/package.json +1 -1
  138. package/dist/src/redteam/strategies/promptInjections.d.ts +0 -3
  139. package/dist/src/redteam/strategies/promptInjections.d.ts.map +0 -1
  140. package/dist/src/redteam/strategies/promptInjections.js +0 -29
  141. package/dist/src/redteam/strategies/promptInjections.js.map +0 -1
  142. package/dist/src/web/nextui/_next/static/chunks/app/page-81e3b8fee37eaf67.js +0 -1
  143. package/dist/src/web/nextui/_next/static/chunks/app/report/page-a330d7b915e8a5b9.js +0 -1
  144. /package/dist/src/web/nextui/_next/static/{bGJDb5wAMoQeDJrbe4k4i → B1WB5xk526w5umoO8Sy7u}/_buildManifest.js +0 -0
  145. /package/dist/src/web/nextui/_next/static/{bGJDb5wAMoQeDJrbe4k4i → B1WB5xk526w5umoO8Sy7u}/_ssgManifest.js +0 -0
  146. /package/dist/src/web/nextui/_next/static/chunks/{258-69ad0a2d11dc6789.js → 258-4163a0bce35a4180.js} +0 -0
@@ -4,10 +4,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.DEFAULT_README = exports.JAVASCRIPT_VAR = exports.PYTHON_VAR = exports.BASH_PROVIDER = exports.JAVASCRIPT_PROVIDER = exports.PYTHON_PROVIDER = exports.CONFIG_TEMPLATE = void 0;
7
+ exports.reportProviderAPIKeyWarnings = reportProviderAPIKeyWarnings;
7
8
  exports.createDummyFiles = createDummyFiles;
9
+ exports.initializeProject = initializeProject;
8
10
  const checkbox_1 = __importDefault(require("@inquirer/checkbox"));
11
+ const confirm_1 = __importDefault(require("@inquirer/confirm"));
12
+ const core_1 = require("@inquirer/core");
9
13
  const rawlist_1 = __importDefault(require("@inquirer/rawlist"));
10
14
  const chalk_1 = __importDefault(require("chalk"));
15
+ const dedent_1 = __importDefault(require("dedent"));
11
16
  const fs_1 = __importDefault(require("fs"));
12
17
  const path_1 = __importDefault(require("path"));
13
18
  const init_1 = require("./commands/redteam/init");
@@ -234,20 +239,46 @@ function recordOnboardingStep(step, properties = {}) {
234
239
  ...properties,
235
240
  });
236
241
  }
242
+ /**
243
+ * Iterate through user choices and determine if the user has selected a provider that needs an API key
244
+ * but has not set and API key in their environment.
245
+ */
246
+ function reportProviderAPIKeyWarnings(providerChoices) {
247
+ const ids = providerChoices.map((c) => (typeof c === 'object' ? c.id : c));
248
+ const map = {
249
+ openai: 'OPENAI_API_KEY',
250
+ anthropic: 'ANTHROPIC_API_KEY',
251
+ };
252
+ return Object.entries(map)
253
+ .filter(([prefix, key]) => ids.some((id) => id.startsWith(prefix)) && !(0, envars_1.getEnvString)(key))
254
+ .map(([prefix, key]) => (0, dedent_1.default) `
255
+ ${chalk_1.default.bold(`Warning: ${key} environment variable is not set.`)}
256
+ Please set this environment variable like: export ${key}=<my-api-key>
257
+ `);
258
+ }
237
259
  async function createDummyFiles(directory, interactive = true) {
238
- if (directory && // Make the directory if it doesn't exist
239
- !fs_1.default.existsSync(directory)) {
260
+ console.clear();
261
+ if (directory && !fs_1.default.existsSync(directory)) {
240
262
  fs_1.default.mkdirSync(directory);
241
263
  }
242
- if (directory) {
243
- if (!fs_1.default.existsSync(directory)) {
244
- logger_1.default.info(`Creating directory ${directory} ...`);
245
- fs_1.default.mkdirSync(directory);
264
+ directory = directory || '.';
265
+ // Check for existing files and prompt for overwrite
266
+ const filesToCheck = ['promptfooconfig.yaml', 'README.md'];
267
+ const existingFiles = filesToCheck.filter((file) => fs_1.default.existsSync(path_1.default.join(process.cwd(), directory, file)));
268
+ if (existingFiles.length > 0) {
269
+ const fileList = existingFiles.join(' and ');
270
+ const overwrite = await (0, confirm_1.default)({
271
+ message: `${fileList} already exist${existingFiles.length > 1 ? '' : 's'}${directory === '.' ? '' : ` in ${directory}`}. Do you want to overwrite ${existingFiles.length > 1 ? 'them' : 'it'}?`,
272
+ default: false,
273
+ });
274
+ if (!overwrite) {
275
+ const isNpx = (0, envars_1.getEnvString)('npm_execpath')?.includes('npx');
276
+ const runCommand = isNpx ? 'npx promptfoo@latest init' : 'promptfoo init';
277
+ logger_1.default.info(chalk_1.default.red(`Please run \`${runCommand}\` in a different directory or use \`${runCommand} <directory>\` to specify a new location.`));
278
+ process.exit(1);
246
279
  }
247
280
  }
248
- else {
249
- directory = '.';
250
- }
281
+ // Rest of the onboarding flow
251
282
  const prompts = [];
252
283
  const providers = [];
253
284
  let action;
@@ -292,7 +323,7 @@ async function createDummyFiles(directory, interactive = true) {
292
323
  });
293
324
  }
294
325
  const choices = [
295
- { name: 'Choose later', value: ['openai:gpt-4o-mini', 'openai:gpt-4o'] },
326
+ { name: `I'll choose later`, value: ['openai:gpt-4o-mini', 'openai:gpt-4o'] },
296
327
  {
297
328
  name: '[OpenAI] GPT 4o, GPT 4o-mini, GPT-3.5, ...',
298
329
  value: action === 'agent'
@@ -372,30 +403,38 @@ async function createDummyFiles(directory, interactive = true) {
372
403
  value: ['ollama:chat:llama3', 'ollama:chat:mixtral:8x22b'],
373
404
  },
374
405
  ];
375
- const providerChoices = await (0, checkbox_1.default)({
376
- message: 'Which model providers would you like to use? (press enter to skip)',
406
+ /**
407
+ * The potential of the object type here is given by the agent action conditional
408
+ * for openai as a value choice
409
+ */
410
+ const providerChoices = (await (0, checkbox_1.default)({
411
+ message: 'Which model providers would you like to use? (press space to select, enter to complete selection)',
377
412
  choices,
378
- });
413
+ required: true,
414
+ loop: false,
415
+ pageSize: process.stdout.rows - 6,
416
+ })).flat();
379
417
  recordOnboardingStep('choose providers', {
380
418
  value: providerChoices.map((choice) => typeof choice === 'string' ? choice : JSON.stringify(choice)),
381
419
  });
420
+ // Tell the user if they have providers selected without relevant API keys set in env.
421
+ reportProviderAPIKeyWarnings(providerChoices).forEach((warningText) => logger_1.default.warn(warningText));
382
422
  if (providerChoices.length > 0) {
383
- const flatProviders = providerChoices.flat();
384
- if (flatProviders.length > 3) {
423
+ if (providerChoices.length > 3) {
385
424
  providers.push(...providerChoices.map((choice) => (Array.isArray(choice) ? choice[0] : choice)));
386
425
  }
387
426
  else {
388
- providers.push(...flatProviders);
427
+ providers.push(...providerChoices);
389
428
  }
390
- if (flatProviders.some((choice) => typeof choice === 'string' && choice.startsWith('file://'))) {
429
+ if (providerChoices.some((choice) => typeof choice === 'string' && choice.startsWith('file://'))) {
391
430
  fs_1.default.writeFileSync(path_1.default.join(process.cwd(), directory, 'provider.js'), exports.JAVASCRIPT_PROVIDER);
392
431
  logger_1.default.info('⌛ Wrote provider.js');
393
432
  }
394
- if (flatProviders.some((choice) => typeof choice === 'string' && choice.startsWith('exec:'))) {
433
+ if (providerChoices.some((choice) => typeof choice === 'string' && choice.startsWith('exec:'))) {
395
434
  fs_1.default.writeFileSync(path_1.default.join(process.cwd(), directory, 'provider.sh'), exports.BASH_PROVIDER);
396
435
  logger_1.default.info('⌛ Wrote provider.sh');
397
436
  }
398
- if (flatProviders.some((choice) => typeof choice === 'string' && choice.startsWith('python:'))) {
437
+ if (providerChoices.some((choice) => typeof choice === 'string' && choice.startsWith('python:'))) {
399
438
  fs_1.default.writeFileSync(path_1.default.join(process.cwd(), directory, 'provider.py'), exports.PYTHON_PROVIDER);
400
439
  logger_1.default.info('⌛ Wrote provider.py');
401
440
  }
@@ -461,4 +500,25 @@ async function createDummyFiles(directory, interactive = true) {
461
500
  language,
462
501
  };
463
502
  }
503
+ async function initializeProject(directory, interactive = true) {
504
+ try {
505
+ return await createDummyFiles(directory, interactive);
506
+ }
507
+ catch (err) {
508
+ if (err instanceof core_1.ExitPromptError) {
509
+ const isNpx = (0, envars_1.getEnvString)('npm_execpath')?.includes('npx');
510
+ const runCommand = isNpx ? 'npx promptfoo@latest init' : 'promptfoo init';
511
+ logger_1.default.info('\n' +
512
+ chalk_1.default.blue('Initialization paused. To continue setup later, use the command: ') +
513
+ chalk_1.default.bold(runCommand));
514
+ logger_1.default.info(chalk_1.default.blue('For help or feedback, visit ') +
515
+ chalk_1.default.green('https://www.promptfoo.dev/contact/'));
516
+ await recordOnboardingStep('early exit');
517
+ process.exit(130);
518
+ }
519
+ else {
520
+ throw err;
521
+ }
522
+ }
523
+ }
464
524
  //# sourceMappingURL=onboarding.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../src/onboarding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../src/onboarding.ts"],"names":[],"mappings":";;;;;;AAsPA,oEAgBC;AAED,4CAsSC;AAED,8CAsBC;AAtkBD,kEAA0C;AAC1C,gEAAwC;AACxC,yCAAiD;AACjD,gEAAwC;AACxC,kDAA0B;AAC1B,oDAA4B;AAC5B,4CAAoB;AACpB,gDAAwB;AACxB,kDAAsD;AACtD,qCAAwC;AACxC,sDAA8B;AAC9B,4DAAyD;AAEzD,gDAAqD;AAExC,QAAA,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmF9B,CAAC;AAEW,QAAA,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8B9B,CAAC;AAEW,QAAA,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsClC,CAAC;AAEW,QAAA,aAAa,GAAG;;;;;;;;CAQ5B,CAAC;AAEW,QAAA,UAAU,GAAG;;;;;;;;;;;;;;;;CAgBzB,CAAC;AAEW,QAAA,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;CAoB7B,CAAC;AAEW,QAAA,cAAc,GAAG;;;;;;;;;;CAU7B,CAAC;AAEF,SAAS,oBAAoB,CAAC,IAAY,EAAE,aAAyC,EAAE;IACrF,mBAAS,CAAC,aAAa,CAAC,QAAQ,EAAE;QAChC,IAAI,EAAE,iBAAiB;QACvB,IAAI;QACJ,GAAG,UAAU;KACd,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,SAAgB,4BAA4B,CAAC,eAAoC;IAC/E,MAAM,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,CAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEpF,MAAM,GAAG,GAAuC;QAC9C,MAAM,EAAE,gBAAgB;QACxB,SAAS,EAAE,mBAAmB;KAC/B,CAAC;IAEF,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC;SACvB,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAA,qBAAY,EAAC,GAAG,CAAC,CAAC;SACxF,GAAG,CACF,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,IAAA,gBAAM,EAAA;MACzB,eAAK,CAAC,IAAI,CAAC,YAAY,GAAG,mCAAmC,CAAC;wDACZ,GAAG;GACxD,CACE,CAAC;AACN,CAAC;AAEM,KAAK,UAAU,gBAAgB,CAAC,SAAwB,EAAE,cAAuB,IAAI;IAC1F,OAAO,CAAC,KAAK,EAAE,CAAC;IAEhB,IAAI,SAAS,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3C,YAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC;IAED,SAAS,GAAG,SAAS,IAAI,GAAG,CAAC;IAE7B,oDAAoD;IACpD,MAAM,YAAY,GAAG,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAC;IAC3D,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CACjD,YAAE,CAAC,UAAU,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CACzD,CAAC;IAEF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,SAAS,GAAG,MAAM,IAAA,iBAAO,EAAC;YAC9B,OAAO,EAAE,GAAG,QAAQ,iBAAiB,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,SAAS,EAAE,8BAA8B,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG;YAC/L,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,IAAA,qBAAY,EAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC5D,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,gBAAgB,CAAC;YAC1E,gBAAM,CAAC,IAAI,CACT,eAAK,CAAC,GAAG,CACP,gBAAgB,UAAU,wCAAwC,UAAU,2CAA2C,CACxH,CACF,CAAC;YACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,8BAA8B;IAC9B,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,SAAS,GAAwB,EAAE,CAAC;IAC1C,IAAI,MAAc,CAAC;IACnB,IAAI,QAAgB,CAAC;IAErB,IAAI,WAAW,EAAE,CAAC;QAChB,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAE9B,kBAAkB;QAClB,MAAM,GAAG,MAAM,IAAA,iBAAO,EAAC;YACrB,OAAO,EAAE,4BAA4B;YACrC,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,EAAE;gBAC1C,EAAE,IAAI,EAAE,sCAAsC,EAAE,KAAK,EAAE,SAAS,EAAE;gBAClE,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,KAAK,EAAE;gBACjD,EAAE,IAAI,EAAE,4CAA4C,EAAE,KAAK,EAAE,OAAO,EAAE;gBACtE,EAAE,IAAI,EAAE,2BAA2B,EAAE,KAAK,EAAE,SAAS,EAAE;aACxD;SACF,CAAC,CAAC;QAEH,oBAAoB,CAAC,iBAAiB,EAAE;YACtC,KAAK,EAAE,MAAM;SACd,CAAC,CAAC;QAEH,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAA,kBAAW,EAAC,SAAS,IAAI,GAAG,CAAC,CAAC;YACpC,OAAO;gBACL,UAAU,EAAE,CAAC;gBACb,gBAAgB,EAAE,EAAE;gBACpB,MAAM,EAAE,SAAS;gBACjB,QAAQ,EAAE,gBAAgB;aAC3B,CAAC;QACJ,CAAC;QAED,QAAQ,GAAG,UAAU,CAAC;QACtB,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YAC3C,QAAQ,GAAG,MAAM,IAAA,iBAAO,EAAC;gBACvB,OAAO,EAAE,0DAA0D;gBACnE,OAAO,EAAE;oBACP,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,EAAE;oBAC3C,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;oBACnC,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE;iBAC5C;aACF,CAAC,CAAC;YAEH,oBAAoB,CAAC,iBAAiB,EAAE;gBACtC,KAAK,EAAE,QAAQ;aAChB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,OAAO,GAAmD;YAC9D,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,oBAAoB,EAAE,eAAe,CAAC,EAAE;YAC7E;gBACE,IAAI,EAAE,4CAA4C;gBAClD,KAAK,EACH,MAAM,KAAK,OAAO;oBAChB,CAAC,CAAC;wBACE;4BACE,EAAE,EAAE,eAAe;4BACnB,MAAM,EAAE;gCACN,KAAK,EAAE;oCACL;wCACE,IAAI,EAAE,UAAU;wCAChB,QAAQ,EAAE;4CACR,IAAI,EAAE,qBAAqB;4CAC3B,WAAW,EAAE,6CAA6C;4CAC1D,UAAU,EAAE;gDACV,IAAI,EAAE,QAAQ;gDACd,UAAU,EAAE;oDACV,QAAQ,EAAE;wDACR,IAAI,EAAE,QAAQ;wDACd,WAAW,EAAE,4CAA4C;qDAC1D;iDACF;gDACD,QAAQ,EAAE,CAAC,UAAU,CAAC;6CACvB;yCACF;qCACF;iCACF;6BACF;yBACF;qBACF;oBACH,CAAC,CAAC,CAAC,oBAAoB,EAAE,eAAe,CAAC;aAC9C;YACD;gBACE,IAAI,EAAE,6CAA6C;gBACnD,KAAK,EAAE;oBACL,+CAA+C;oBAC/C,2CAA2C;iBAC5C;aACF;YACD;gBACE,IAAI,EAAE,sCAAsC;gBAC5C,KAAK,EAAE;oBACL,iEAAiE;oBACjE,8DAA8D;oBAC9D,gDAAgD;iBACjD;aACF;YACD;gBACE,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,CAAC,oBAAoB,CAAC;aAC9B;YACD;gBACE,IAAI,EAAE,yBAAyB;gBAC/B,KAAK,EAAE,CAAC,oBAAoB,CAAC;aAC9B;YACD;gBACE,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE,CAAC,kBAAkB,CAAC;aAC5B;YACD;gBACE,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE,CAAC,kCAAkC,CAAC;aAC5C;YACD;gBACE,IAAI,EAAE,yCAAyC;gBAC/C,KAAK,EAAE;oBACL,gDAAgD;oBAChD,+CAA+C;iBAChD;aACF;YACD;gBACE,IAAI,EAAE,qCAAqC;gBAC3C,KAAK,EAAE,CAAC,kBAAkB,EAAE,uBAAuB,CAAC;aACrD;YACD,EAAE,IAAI,EAAE,wCAAwC,EAAE,KAAK,EAAE,CAAC,mBAAmB,CAAC,EAAE;YAChF;gBACE,IAAI,EAAE,gCAAgC;gBACtC,KAAK,EAAE,CAAC,oBAAoB,EAAE,2BAA2B,CAAC;aAC3D;SACF,CAAC;QAEF;;;WAGG;QACH,MAAM,eAAe,GAAwB,CAC3C,MAAM,IAAA,kBAAQ,EAAC;YACb,OAAO,EACL,mGAAmG;YACrG,OAAO;YACP,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,KAAK;YACX,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;SAClC,CAAC,CACH,CAAC,IAAI,EAAE,CAAC;QAET,oBAAoB,CAAC,kBAAkB,EAAE;YACvC,KAAK,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACpC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAC7D;SACF,CAAC,CAAC;QAEH,sFAAsF;QACtF,4BAA4B,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE,CACpE,gBAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CACzB,CAAC;QAEF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,SAAS,CAAC,IAAI,CACZ,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CACjF,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;YACrC,CAAC;YAED,IACE,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAC5F,CAAC;gBACD,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,2BAAmB,CAAC,CAAC;gBAC1F,gBAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACrC,CAAC;YACD,IACE,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAC1F,CAAC;gBACD,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,qBAAa,CAAC,CAAC;gBACpF,gBAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACrC,CAAC;YACD,IACE,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAC5F,CAAC;gBACD,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,uBAAe,CAAC,CAAC;gBACtF,gBAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACrC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAClC,CAAC;QAED,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YAC9C,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;YAC5B,OAAO,CAAC,IAAI,CACV,6FAA6F,CAC9F,CAAC;QACJ,CAAC;aAAM,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QACjE,CAAC;QAED,IAAI,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;YAC3C,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;gBAC9B,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,sBAAc,CAAC,CAAC;gBACpF,gBAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,kBAAU,CAAC,CAAC;gBAChF,gBAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QAED,oBAAoB,CAAC,UAAU,CAAC,CAAC;IACnC,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,SAAS,CAAC;QACnB,QAAQ,GAAG,UAAU,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAC9C,OAAO,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;QAC7D,SAAS,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACrC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,6BAAiB,GAAE,CAAC;IACrC,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,uBAAe,EAAE;QACpD,OAAO;QACP,SAAS;QACT,IAAI,EAAE,MAAM;QACZ,QAAQ;KACT,CAAC,CAAC;IAEH,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,sBAAsB,CAAC,EAAE,MAAM,CAAC,CAAC;IACtF,YAAE,CAAC,aAAa,CAAC,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,sBAAc,CAAC,CAAC;IAEnF,MAAM,KAAK,GAAG,IAAA,qBAAY,EAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAC1E,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;QACtB,gBAAM,CAAC,IAAI,CACT,eAAK,CAAC,KAAK,CACT,uCAAuC,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAClF,CACF,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,gBAAM,CAAC,IAAI,CAAC,qCAAqC,SAAS,EAAE,CAAC,CAAC;QAC9D,gBAAM,CAAC,IAAI,CACT,eAAK,CAAC,KAAK,CACT,SAAS,eAAK,CAAC,IAAI,CAAC,MAAM,SAAS,EAAE,CAAC,iBAAiB,eAAK,CAAC,IAAI,CAC/D,UAAU,CACX,oBAAoB,CACtB,CACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,UAAU,EAAE,OAAO,CAAC,MAAM;QAC1B,gBAAgB,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC7F,MAAM;QACN,QAAQ;KACT,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,iBAAiB,CAAC,SAAwB,EAAE,cAAuB,IAAI;IAC3F,IAAI,CAAC;QACH,OAAO,MAAM,gBAAgB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,sBAAe,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,IAAA,qBAAY,EAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC5D,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,gBAAgB,CAAC;YAC1E,gBAAM,CAAC,IAAI,CACT,IAAI;gBACF,eAAK,CAAC,IAAI,CAAC,mEAAmE,CAAC;gBAC/E,eAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CACzB,CAAC;YACF,gBAAM,CAAC,IAAI,CACT,eAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC;gBACxC,eAAK,CAAC,KAAK,CAAC,oCAAoC,CAAC,CACpD,CAAC;YACF,MAAM,oBAAoB,CAAC,YAAY,CAAC,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/prompts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,MAAM,EAEN,SAAS,EAEV,MAAM,UAAU,CAAC;AAWlB,cAAc,WAAW,CAAC;AAE1B;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,EAC9B,aAAa,EAAE,MAAM,EAAE,GACtB,SAAS,CAAC,mBAAmB,CAAC,CA4ChC;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,EACvB,QAAQ,GAAE,MAAW,EACrB,iBAAiB,GAAE,MAAU,GAC5B,OAAO,CAAC,MAAM,EAAE,CAAC,CAmEnB;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,iBAAiB,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACjF,QAAQ,GAAE,MAAW,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CAYnB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/prompts/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,aAAa,EACb,MAAM,EAEN,SAAS,EAEV,MAAM,UAAU,CAAC;AAYlB,cAAc,WAAW,CAAC;AAE1B;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,EAC9B,aAAa,EAAE,MAAM,EAAE,GACtB,SAAS,CAAC,mBAAmB,CAAC,CA4ChC;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,EACvB,QAAQ,GAAE,MAAW,EACrB,iBAAiB,GAAE,MAAU,GAC5B,OAAO,CAAC,MAAM,EAAE,CAAC,CAsEnB;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,iBAAiB,EAAE,MAAM,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACjF,QAAQ,GAAE,MAAW,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CAYnB"}
@@ -27,6 +27,7 @@ const util_1 = require("../util");
27
27
  const javascript_1 = require("./processors/javascript");
28
28
  const json_1 = require("./processors/json");
29
29
  const jsonl_1 = require("./processors/jsonl");
30
+ const markdown_1 = require("./processors/markdown");
30
31
  const python_1 = require("./processors/python");
31
32
  const string_1 = require("./processors/string");
32
33
  const text_1 = require("./processors/text");
@@ -115,6 +116,9 @@ async function processPrompt(prompt, basePath = '', maxRecursionDepth = 1) {
115
116
  if (extension && (0, util_1.isJavascriptFile)(extension)) {
116
117
  return (0, javascript_1.processJsFile)(filePath, prompt, functionName);
117
118
  }
119
+ if (extension === '.md') {
120
+ return (0, markdown_1.processMarkdownFile)(filePath, prompt);
121
+ }
118
122
  if (extension === '.py') {
119
123
  return (0, python_1.processPythonFile)(filePath, prompt, functionName);
120
124
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/prompts/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/prompts/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Prompt } from '../../types';
2
+ export declare function processMarkdownFile(filePath: string, prompt: Partial<Prompt>): Prompt[];
3
+ //# sourceMappingURL=markdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../../src/prompts/processors/markdown.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAE1C,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAQvF"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.processMarkdownFile = processMarkdownFile;
7
+ const fs_1 = __importDefault(require("fs"));
8
+ function processMarkdownFile(filePath, prompt) {
9
+ const content = fs_1.default.readFileSync(filePath, 'utf8');
10
+ return [
11
+ {
12
+ raw: content,
13
+ label: prompt.label || `${filePath}: ${content.slice(0, 50)}...`,
14
+ },
15
+ ];
16
+ }
17
+ //# sourceMappingURL=markdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../../../src/prompts/processors/markdown.ts"],"names":[],"mappings":";;;;;AAGA,kDAQC;AAXD,4CAAoB;AAGpB,SAAgB,mBAAmB,CAAC,QAAgB,EAAE,MAAuB;IAC3E,MAAM,OAAO,GAAG,YAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAClD,OAAO;QACL;YACE,GAAG,EAAE,OAAO;YACZ,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,GAAG,QAAQ,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;SACjE;KACF,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { ApiProvider, EnvOverrides, ProviderResponse } from '../types';
1
+ import type { ApiProvider, EnvOverrides, ProviderEmbeddingResponse, ProviderResponse } from '../types';
2
2
  interface MistralChatCompletionOptions {
3
3
  apiKey?: string;
4
4
  apiKeyEnvar?: string;
@@ -38,5 +38,22 @@ export declare class MistralChatCompletionProvider implements ApiProvider {
38
38
  getApiKey(): string | undefined;
39
39
  callApi(prompt: string): Promise<ProviderResponse>;
40
40
  }
41
+ export declare class MistralEmbeddingProvider implements ApiProvider {
42
+ modelName: string;
43
+ config: MistralChatCompletionOptions;
44
+ env?: EnvOverrides;
45
+ constructor(options?: {
46
+ config?: MistralChatCompletionOptions;
47
+ id?: string;
48
+ env?: EnvOverrides;
49
+ });
50
+ id(): string;
51
+ toString(): string;
52
+ getApiUrlDefault(): string;
53
+ getApiUrl(): string;
54
+ getApiKey(): string | undefined;
55
+ callApi(text: string): Promise<ProviderResponse>;
56
+ callEmbeddingApi(text: string): Promise<ProviderEmbeddingResponse>;
57
+ }
41
58
  export {};
42
59
  //# sourceMappingURL=mistral.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mistral.d.ts","sourceRoot":"","sources":["../../../src/providers/mistral.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAc,MAAM,UAAU,CAAC;AA8DxF,UAAU,4BAA4B;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE;QAAE,IAAI,EAAE,aAAa,CAAA;KAAE,CAAC;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAqCD,qBAAa,6BAA8B,YAAW,WAAW;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,4BAA4B,CAAC;IACrC,GAAG,CAAC,EAAE,YAAY,CAAC;IAEnB,MAAM,CAAC,mBAAmB;;;;;;QAAuB;IAEjD,MAAM,CAAC,yBAAyB,WAAgD;gBAG9E,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,4BAA4B,CAAC;QAAC,GAAG,CAAC,EAAE,YAAY,CAAA;KAAO;IAY1F,EAAE,IAAI,MAAM;IAIZ,QAAQ,IAAI,MAAM;IAIlB,gBAAgB,IAAI,MAAM;IAI1B,SAAS,IAAI,MAAM;IAcnB,SAAS,IAAI,MAAM,GAAG,SAAS;IAazB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAsEzD"}
1
+ {"version":3,"file":"mistral.d.ts","sourceRoot":"","sources":["../../../src/providers/mistral.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,WAAW,EACX,YAAY,EACZ,yBAAyB,EACzB,gBAAgB,EAEjB,MAAM,UAAU,CAAC;AA2FlB,UAAU,4BAA4B;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE;QAAE,IAAI,EAAE,aAAa,CAAA;KAAE,CAAC;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AA4CD,qBAAa,6BAA8B,YAAW,WAAW;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,4BAA4B,CAAC;IACrC,GAAG,CAAC,EAAE,YAAY,CAAC;IAEnB,MAAM,CAAC,mBAAmB;;;;;;QAAuB;IAEjD,MAAM,CAAC,yBAAyB,WAAgD;gBAG9E,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,4BAA4B,CAAC;QAAC,GAAG,CAAC,EAAE,YAAY,CAAA;KAAO;IAY1F,EAAE,IAAI,MAAM;IAIZ,QAAQ,IAAI,MAAM;IAIlB,gBAAgB,IAAI,MAAM;IAI1B,SAAS,IAAI,MAAM;IAcnB,SAAS,IAAI,MAAM,GAAG,SAAS;IAazB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAkGzD;AAED,qBAAa,wBAAyB,YAAW,WAAW;IAC1D,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,4BAA4B,CAAC;IACrC,GAAG,CAAC,EAAE,YAAY,CAAC;gBAGjB,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,4BAA4B,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,YAAY,CAAA;KAAO;IAQ1F,EAAE,IAAI,MAAM;IAIZ,QAAQ,IAAI,MAAM;IAIlB,gBAAgB,IAAI,MAAM;IAI1B,SAAS,IAAI,MAAM;IAcnB,SAAS,IAAI,MAAM,GAAG,SAAS;IAazB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAehD,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC;CAyDzE"}
@@ -3,69 +3,97 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.MistralChatCompletionProvider = void 0;
6
+ exports.MistralEmbeddingProvider = exports.MistralChatCompletionProvider = void 0;
7
7
  const cache_1 = require("../cache");
8
8
  const envars_1 = require("../envars");
9
9
  const logger_1 = __importDefault(require("../logger"));
10
10
  const shared_1 = require("./shared");
11
11
  const MISTRAL_CHAT_MODELS = [
12
- ...['open-mistral-7b'].map((model) => ({
13
- id: model,
12
+ ...['open-mistral-7b', 'mistral-tiny', 'mistral-tiny-2312'].map((id) => ({
13
+ id,
14
14
  cost: {
15
- input: 0.00025 / 1000,
16
- output: 0.00025 / 1000,
15
+ input: 0.25 / 1000000,
16
+ output: 0.25 / 1000000,
17
17
  },
18
18
  })),
19
- ...['open-mixtral-8x7b'].map((model) => ({
20
- id: model,
19
+ ...[
20
+ 'open-mistral-nemo',
21
+ 'open-mistral-nemo-2407',
22
+ 'mistral-tiny-2407',
23
+ 'mistral-tiny-latest',
24
+ ].map((id) => ({
25
+ id,
21
26
  cost: {
22
- input: 0.0007 / 1000,
23
- output: 0.0007 / 1000,
27
+ input: 0.3 / 1000000,
28
+ output: 0.3 / 1000000,
24
29
  },
25
30
  })),
26
- ...['open-mixtral-8x22b'].map((model) => ({
27
- id: model,
31
+ ...['mistral-small-2402', 'mistral-small-latest'].map((id) => ({
32
+ id,
28
33
  cost: {
29
- input: 0.002 / 1000,
30
- output: 0.006 / 1000,
34
+ input: 1 / 1000000,
35
+ output: 3 / 1000000,
31
36
  },
32
37
  })),
33
- ...['mistral-small-latest'].map((model) => ({
34
- id: model,
38
+ ...['mistral-medium-2312', 'mistral-medium', 'mistral-medium-latest'].map((id) => ({
39
+ id,
35
40
  cost: {
36
- input: 0.002 / 1000,
37
- output: 0.006 / 1000,
41
+ input: 2.7 / 1000000,
42
+ output: 8.1 / 1000000,
38
43
  },
39
44
  })),
40
- ...['mistral-medium-latest'].map((model) => ({
41
- id: model,
45
+ {
46
+ id: 'mistral-large-2402',
42
47
  cost: {
43
- input: 0.0027 / 1000,
44
- output: 0.0081 / 1000,
48
+ input: 4 / 1000000,
49
+ output: 12 / 1000000,
50
+ },
51
+ },
52
+ ...['mistral-large-2407', 'mistral-large-latest'].map((id) => ({
53
+ id,
54
+ cost: {
55
+ input: 3 / 1000000,
56
+ output: 9 / 1000000,
57
+ },
58
+ })),
59
+ ...['codestral-2405', 'codestral-latest'].map((id) => ({
60
+ id,
61
+ cost: {
62
+ input: 1 / 1000000,
63
+ output: 3 / 1000000,
45
64
  },
46
65
  })),
47
- ...['mistral-large-latest'].map((model) => ({
48
- id: model,
66
+ ...['codestral-mamba-2407', 'open-codestral-mamba', 'codestral-mamba-latest'].map((id) => ({
67
+ id,
49
68
  cost: {
50
- input: 0.008 / 1000,
51
- output: 0.024 / 1000,
69
+ input: 0.25 / 1000000,
70
+ output: 0.25 / 1000000,
52
71
  },
53
72
  })),
54
- ...['codestral-latest'].map((model) => ({
55
- id: model,
73
+ ...['open-mixtral-8x7b', 'mistral-small', 'mistral-small-2312'].map((id) => ({
74
+ id,
56
75
  cost: {
57
- input: 0.002 / 1000,
58
- output: 0.006 / 1000,
76
+ input: 0.7 / 1000000,
77
+ output: 0.7 / 1000000,
59
78
  },
60
79
  })),
61
- ...['codestral-mamba-2407'].map((model) => ({
62
- id: model,
80
+ ...['open-mixtral-8x22b', 'open-mixtral-8x22b-2404'].map((id) => ({
81
+ id,
63
82
  cost: {
64
- input: 0.001 / 1000,
65
- output: 0.003 / 1000,
83
+ input: 2 / 1000000,
84
+ output: 6 / 1000000,
66
85
  },
67
86
  })),
68
87
  ];
88
+ const MISTRAL_EMBEDDING_MODELS = [
89
+ {
90
+ id: 'mistral-embed',
91
+ cost: {
92
+ input: 0.1 / 1000000,
93
+ output: 0.1 / 1000000,
94
+ },
95
+ },
96
+ ];
69
97
  function getTokenUsage(data, cached) {
70
98
  if (data.usage) {
71
99
  if (cached) {
@@ -82,10 +110,14 @@ function getTokenUsage(data, cached) {
82
110
  return {};
83
111
  }
84
112
  function calculateCost(modelName, config, promptTokens, completionTokens) {
85
- if (!promptTokens || !completionTokens) {
113
+ if (!Number.isFinite(promptTokens) ||
114
+ !Number.isFinite(completionTokens) ||
115
+ typeof promptTokens !== 'number' ||
116
+ typeof completionTokens !== 'number') {
86
117
  return undefined;
87
118
  }
88
- const model = MISTRAL_CHAT_MODELS.find((m) => m.id === modelName);
119
+ const model = MISTRAL_CHAT_MODELS.find((m) => m.id === modelName) ||
120
+ MISTRAL_EMBEDDING_MODELS.find((m) => m.id === modelName);
89
121
  if (!model || !model.cost) {
90
122
  return undefined;
91
123
  }
@@ -138,7 +170,7 @@ class MistralChatCompletionProvider {
138
170
  throw new Error('Mistral API key is not set. Set the MISTRAL_API_KEY environment variable or add `apiKey` or `apiKeyEnvar` to the provider config.');
139
171
  }
140
172
  const messages = (0, shared_1.parseChatPrompt)(prompt, [{ role: 'user', content: prompt }]);
141
- const body = {
173
+ const params = {
142
174
  model: this.modelName,
143
175
  messages,
144
176
  temperature: this.config?.temperature,
@@ -148,8 +180,25 @@ class MistralChatCompletionProvider {
148
180
  random_seed: this.config?.random_seed || null,
149
181
  ...(this.config.response_format ? { response_format: this.config.response_format } : {}),
150
182
  };
183
+ const cacheKey = `mistral:${JSON.stringify(params)}`;
184
+ if ((0, cache_1.isCacheEnabled)()) {
185
+ const cache = (0, cache_1.getCache)();
186
+ if (cache) {
187
+ const cachedResult = await cache.get(cacheKey);
188
+ if (cachedResult) {
189
+ logger_1.default.debug(`Returning cached response for ${prompt}: ${JSON.stringify(cachedResult)}`);
190
+ return {
191
+ ...cachedResult,
192
+ tokenUsage: {
193
+ ...cachedResult.tokenUsage,
194
+ cached: cachedResult.tokenUsage?.total,
195
+ },
196
+ };
197
+ }
198
+ }
199
+ }
151
200
  const url = `${this.getApiUrl()}/chat/completions`;
152
- logger_1.default.debug(`Mistral API request: ${url} ${JSON.stringify(body)}`);
201
+ logger_1.default.debug(`Mistral API request: ${url} ${JSON.stringify(params)}`);
153
202
  let data, cached = false;
154
203
  try {
155
204
  ({ data, cached } = (await (0, cache_1.fetchWithCache)(url, {
@@ -158,7 +207,7 @@ class MistralChatCompletionProvider {
158
207
  'Content-Type': 'application/json',
159
208
  Authorization: `Bearer ${this.getApiKey()}`,
160
209
  },
161
- body: JSON.stringify(body),
210
+ body: JSON.stringify(params),
162
211
  }, shared_1.REQUEST_TIMEOUT_MS)));
163
212
  }
164
213
  catch (err) {
@@ -177,15 +226,126 @@ class MistralChatCompletionProvider {
177
226
  error: `Malformed response data: ${JSON.stringify(data)}`,
178
227
  };
179
228
  }
180
- return {
229
+ const result = {
181
230
  output: data.choices[0].message.content,
182
231
  tokenUsage: getTokenUsage(data, cached),
183
232
  cached,
184
233
  cost: calculateCost(this.modelName, this.config, data.usage?.prompt_tokens, data.usage?.completion_tokens),
185
234
  };
235
+ if ((0, cache_1.isCacheEnabled)()) {
236
+ try {
237
+ await (0, cache_1.getCache)().set(cacheKey, result);
238
+ }
239
+ catch (err) {
240
+ logger_1.default.error(`Failed to cache response: ${String(err)}`);
241
+ }
242
+ }
243
+ return result;
186
244
  }
187
245
  }
188
246
  exports.MistralChatCompletionProvider = MistralChatCompletionProvider;
189
247
  MistralChatCompletionProvider.MISTRAL_CHAT_MODELS = MISTRAL_CHAT_MODELS;
190
248
  MistralChatCompletionProvider.MISTRAL_CHAT_MODELS_NAMES = MISTRAL_CHAT_MODELS.map((model) => model.id);
249
+ class MistralEmbeddingProvider {
250
+ constructor(options = {}) {
251
+ const { config, env } = options;
252
+ this.modelName = 'mistral-embed';
253
+ this.config = config || {};
254
+ this.env = env;
255
+ }
256
+ id() {
257
+ return `mistral:embedding:${this.modelName}`;
258
+ }
259
+ toString() {
260
+ return `[Mistral Embedding Provider ${this.modelName}]`;
261
+ }
262
+ getApiUrlDefault() {
263
+ return 'https://api.mistral.ai/v1';
264
+ }
265
+ getApiUrl() {
266
+ const apiHost = this.config.apiHost || this.env?.MISTRAL_API_HOST || (0, envars_1.getEnvString)('MISTRAL_API_HOST');
267
+ if (apiHost) {
268
+ return `https://${apiHost}/v1`;
269
+ }
270
+ return (this.config.apiBaseUrl ||
271
+ this.env?.MISTRAL_API_BASE_URL ||
272
+ (0, envars_1.getEnvString)('MISTRAL_API_BASE_URL') ||
273
+ this.getApiUrlDefault());
274
+ }
275
+ getApiKey() {
276
+ logger_1.default.debug(`Mistral apiKeyenvar: ${this.config.apiKeyEnvar}`);
277
+ return (this.config.apiKey ||
278
+ (this.config?.apiKeyEnvar
279
+ ? process.env[this.config.apiKeyEnvar] ||
280
+ this.env?.[this.config.apiKeyEnvar]
281
+ : undefined) ||
282
+ this.env?.MISTRAL_API_KEY ||
283
+ (0, envars_1.getEnvString)('MISTRAL_API_KEY'));
284
+ }
285
+ async callApi(text) {
286
+ try {
287
+ const embeddingResponse = await this.callEmbeddingApi(text);
288
+ return {
289
+ output: JSON.stringify(embeddingResponse.embedding),
290
+ tokenUsage: embeddingResponse.tokenUsage,
291
+ cost: embeddingResponse.cost,
292
+ };
293
+ }
294
+ catch (err) {
295
+ return {
296
+ error: `Embedding API call error: ${String(err)}`,
297
+ };
298
+ }
299
+ }
300
+ async callEmbeddingApi(text) {
301
+ if (!this.getApiKey()) {
302
+ throw new Error('Mistral API key must be set for embedding');
303
+ }
304
+ const body = {
305
+ model: this.modelName,
306
+ input: text,
307
+ };
308
+ const url = `${this.getApiUrl()}/embeddings`;
309
+ logger_1.default.debug(`Mistral Embedding API request: ${url} ${JSON.stringify(body)}`);
310
+ let data;
311
+ let cached = false;
312
+ try {
313
+ ({ data, cached } = (await (0, cache_1.fetchWithCache)(url, {
314
+ method: 'POST',
315
+ headers: {
316
+ 'Content-Type': 'application/json',
317
+ Authorization: `Bearer ${this.getApiKey()}`,
318
+ },
319
+ body: JSON.stringify(body),
320
+ }, shared_1.REQUEST_TIMEOUT_MS)));
321
+ }
322
+ catch (err) {
323
+ logger_1.default.error(`API call error: ${err}`);
324
+ throw err;
325
+ }
326
+ logger_1.default.debug(`Mistral Embedding API response: ${JSON.stringify(data)}`);
327
+ try {
328
+ const embedding = data?.data?.[0]?.embedding;
329
+ if (!embedding) {
330
+ throw new Error('No embedding found in Mistral Embedding API response');
331
+ }
332
+ const tokenUsage = getTokenUsage(data, cached);
333
+ const promptTokens = tokenUsage.prompt || 0;
334
+ const completionTokens = 0; // Embeddings don't have completion tokens
335
+ return {
336
+ embedding,
337
+ tokenUsage: {
338
+ ...tokenUsage,
339
+ completion: completionTokens,
340
+ },
341
+ cost: calculateCost(this.modelName, this.config, promptTokens, completionTokens),
342
+ };
343
+ }
344
+ catch (err) {
345
+ logger_1.default.error(data.error?.message || 'Unknown error');
346
+ throw err;
347
+ }
348
+ }
349
+ }
350
+ exports.MistralEmbeddingProvider = MistralEmbeddingProvider;
191
351
  //# sourceMappingURL=mistral.js.map