@morphllm/morphsdk 0.2.60 → 0.2.63
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{chunk-2CASO3ZO.js → chunk-3SHLMXBV.js} +4 -4
- package/dist/{chunk-2CASO3ZO.js.map → chunk-3SHLMXBV.js.map} +1 -1
- package/dist/{chunk-6N6ZYZYD.js → chunk-3WMLFUAR.js} +3 -3
- package/dist/{chunk-TPP2UGQP.js → chunk-563RLKFC.js} +21 -7
- package/dist/chunk-563RLKFC.js.map +1 -0
- package/dist/chunk-5FUTL2UF.js +22 -0
- package/dist/{chunk-YV75OQTE.js → chunk-5QRN3JNB.js} +10 -34
- package/dist/chunk-5QRN3JNB.js.map +1 -0
- package/dist/{chunk-IUG2FHNN.js → chunk-BHNJEBQJ.js} +2 -2
- package/dist/{chunk-6Y5JB4JC.js → chunk-DCIUCDWJ.js} +15 -7
- package/dist/{chunk-6Y5JB4JC.js.map → chunk-DCIUCDWJ.js.map} +1 -1
- package/dist/{chunk-4VGOBA2J.js → chunk-GJ573YH3.js} +3 -3
- package/dist/{chunk-3IQIT6MC.js → chunk-GM5VR33N.js} +3 -3
- package/dist/{chunk-QZNGKOCZ.js → chunk-IXNSTNS7.js} +2 -2
- package/dist/{chunk-ZO4PPFCZ.js → chunk-JNOZPU44.js} +2 -2
- package/dist/{chunk-5QIWYEHJ.js → chunk-PKPJWARB.js} +2 -2
- package/dist/{chunk-ILJ3J5IA.js → chunk-PNIQNTXR.js} +3 -3
- package/dist/{chunk-FN4EP3WY.js → chunk-T6677HCA.js} +8 -8
- package/dist/{chunk-374N3GIA.js → chunk-TTBXKDCT.js} +3 -3
- package/dist/client.cjs +53 -46
- package/dist/client.cjs.map +1 -1
- package/dist/client.js +14 -14
- package/dist/{finish-kXAcUJyB.d.ts → finish-pPJfB0uO.d.ts} +2 -2
- package/dist/git/client.js +1 -1
- package/dist/git/config.js +1 -1
- package/dist/git/index.js +1 -1
- package/dist/index.cjs +53 -46
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +15 -15
- package/dist/lib-GEPX5Y3T.js +14 -0
- package/dist/lib-GEPX5Y3T.js.map +1 -0
- package/dist/modelrouter/core.js +1 -1
- package/dist/modelrouter/index.js +1 -1
- package/dist/tools/browser/anthropic.js +1 -1
- package/dist/tools/browser/core.js +1 -1
- package/dist/tools/browser/index.js +1 -1
- package/dist/tools/browser/live.js +1 -1
- package/dist/tools/browser/openai.js +1 -1
- package/dist/tools/browser/prompts.js +1 -1
- package/dist/tools/browser/vercel.js +1 -1
- package/dist/tools/codebase_search/anthropic.js +1 -1
- package/dist/tools/codebase_search/core.js +1 -1
- package/dist/tools/codebase_search/index.js +1 -1
- package/dist/tools/codebase_search/openai.js +1 -1
- package/dist/tools/codebase_search/prompts.js +1 -1
- package/dist/tools/codebase_search/vercel.js +1 -1
- package/dist/tools/fastapply/anthropic.js +2 -2
- package/dist/tools/fastapply/core.js +1 -1
- package/dist/tools/fastapply/index.js +4 -4
- package/dist/tools/fastapply/openai.js +2 -2
- package/dist/tools/fastapply/prompts.js +1 -1
- package/dist/tools/fastapply/vercel.js +2 -2
- package/dist/tools/index.js +4 -4
- package/dist/tools/utils/resilience.js +1 -1
- package/dist/tools/warp_grep/agent/config.js +1 -1
- package/dist/tools/warp_grep/agent/formatter.js +1 -1
- package/dist/tools/warp_grep/agent/parser.cjs +9 -33
- package/dist/tools/warp_grep/agent/parser.cjs.map +1 -1
- package/dist/tools/warp_grep/agent/parser.js +2 -2
- package/dist/tools/warp_grep/agent/prompt.js +1 -1
- package/dist/tools/warp_grep/agent/runner.cjs +21 -40
- package/dist/tools/warp_grep/agent/runner.cjs.map +1 -1
- package/dist/tools/warp_grep/agent/runner.js +4 -4
- package/dist/tools/warp_grep/agent/types.cjs.map +1 -1
- package/dist/tools/warp_grep/agent/types.d.ts +2 -2
- package/dist/tools/warp_grep/anthropic.cjs +53 -46
- package/dist/tools/warp_grep/anthropic.cjs.map +1 -1
- package/dist/tools/warp_grep/anthropic.js +8 -8
- package/dist/tools/warp_grep/client.cjs +53 -46
- package/dist/tools/warp_grep/client.cjs.map +1 -1
- package/dist/tools/warp_grep/client.js +7 -7
- package/dist/tools/warp_grep/gemini.cjs +53 -46
- package/dist/tools/warp_grep/gemini.cjs.map +1 -1
- package/dist/tools/warp_grep/gemini.js +8 -8
- package/dist/tools/warp_grep/harness.cjs +55 -45
- package/dist/tools/warp_grep/harness.cjs.map +1 -1
- package/dist/tools/warp_grep/harness.d.ts +1 -1
- package/dist/tools/warp_grep/harness.js +5 -5
- package/dist/tools/warp_grep/harness.js.map +1 -1
- package/dist/tools/warp_grep/index.cjs +56 -46
- package/dist/tools/warp_grep/index.cjs.map +1 -1
- package/dist/tools/warp_grep/index.d.ts +1 -1
- package/dist/tools/warp_grep/index.js +11 -11
- package/dist/tools/warp_grep/openai.cjs +53 -46
- package/dist/tools/warp_grep/openai.cjs.map +1 -1
- package/dist/tools/warp_grep/openai.js +8 -8
- package/dist/tools/warp_grep/providers/local.cjs +32 -6
- package/dist/tools/warp_grep/providers/local.cjs.map +1 -1
- package/dist/tools/warp_grep/providers/local.js +3 -3
- package/dist/tools/warp_grep/providers/remote.js +1 -1
- package/dist/tools/warp_grep/utils/files.js +1 -1
- package/dist/tools/warp_grep/utils/paths.js +1 -1
- package/dist/tools/warp_grep/utils/ripgrep.cjs +42 -6
- package/dist/tools/warp_grep/utils/ripgrep.cjs.map +1 -1
- package/dist/tools/warp_grep/utils/ripgrep.js +2 -2
- package/dist/tools/warp_grep/vercel.cjs +53 -46
- package/dist/tools/warp_grep/vercel.cjs.map +1 -1
- package/dist/tools/warp_grep/vercel.js +8 -8
- package/package.json +5 -3
- package/dist/chunk-PZ5AY32C.js +0 -10
- package/dist/chunk-TPP2UGQP.js.map +0 -1
- package/dist/chunk-YV75OQTE.js.map +0 -1
- /package/dist/{chunk-6N6ZYZYD.js.map → chunk-3WMLFUAR.js.map} +0 -0
- /package/dist/{chunk-PZ5AY32C.js.map → chunk-5FUTL2UF.js.map} +0 -0
- /package/dist/{chunk-IUG2FHNN.js.map → chunk-BHNJEBQJ.js.map} +0 -0
- /package/dist/{chunk-4VGOBA2J.js.map → chunk-GJ573YH3.js.map} +0 -0
- /package/dist/{chunk-3IQIT6MC.js.map → chunk-GM5VR33N.js.map} +0 -0
- /package/dist/{chunk-QZNGKOCZ.js.map → chunk-IXNSTNS7.js.map} +0 -0
- /package/dist/{chunk-ZO4PPFCZ.js.map → chunk-JNOZPU44.js.map} +0 -0
- /package/dist/{chunk-5QIWYEHJ.js.map → chunk-PKPJWARB.js.map} +0 -0
- /package/dist/{chunk-ILJ3J5IA.js.map → chunk-PNIQNTXR.js.map} +0 -0
- /package/dist/{chunk-FN4EP3WY.js.map → chunk-T6677HCA.js.map} +0 -0
- /package/dist/{chunk-374N3GIA.js.map → chunk-TTBXKDCT.js.map} +0 -0
|
@@ -5,6 +5,9 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __getProtoOf = Object.getPrototypeOf;
|
|
7
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __commonJS = (cb, mod) => function __require() {
|
|
9
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
10
|
+
};
|
|
8
11
|
var __export = (target, all) => {
|
|
9
12
|
for (var name in all)
|
|
10
13
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -27,6 +30,15 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
27
30
|
));
|
|
28
31
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
32
|
|
|
33
|
+
// node_modules/@vscode/ripgrep/lib/index.js
|
|
34
|
+
var require_lib = __commonJS({
|
|
35
|
+
"node_modules/@vscode/ripgrep/lib/index.js"(exports2, module2) {
|
|
36
|
+
"use strict";
|
|
37
|
+
var path5 = require("path");
|
|
38
|
+
module2.exports.rgPath = path5.join(__dirname, `../bin/rg${process.platform === "win32" ? ".exe" : ""}`);
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
|
|
30
42
|
// tools/warp_grep/gemini.ts
|
|
31
43
|
var gemini_exports = {};
|
|
32
44
|
__export(gemini_exports, {
|
|
@@ -406,19 +418,19 @@ function parseNestedXmlTools(text) {
|
|
|
406
418
|
const filePath = getXmlElementText(fileContent, "path");
|
|
407
419
|
const linesStr = getXmlElementText(fileContent, "lines");
|
|
408
420
|
if (filePath && linesStr) {
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
421
|
+
if (linesStr.trim() === "*") {
|
|
422
|
+
files.push({ path: filePath, lines: "*" });
|
|
423
|
+
} else {
|
|
424
|
+
const ranges = [];
|
|
425
|
+
for (const rangeStr of linesStr.split(",")) {
|
|
414
426
|
const [s, e] = rangeStr.split("-").map((v) => parseInt(v.trim(), 10));
|
|
415
427
|
if (Number.isFinite(s) && Number.isFinite(e)) {
|
|
416
428
|
ranges.push([s, e]);
|
|
417
429
|
}
|
|
418
430
|
}
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
431
|
+
if (ranges.length > 0) {
|
|
432
|
+
files.push({ path: filePath, lines: ranges });
|
|
433
|
+
}
|
|
422
434
|
}
|
|
423
435
|
}
|
|
424
436
|
}
|
|
@@ -430,33 +442,9 @@ function parseNestedXmlTools(text) {
|
|
|
430
442
|
return tools;
|
|
431
443
|
}
|
|
432
444
|
function preprocessText(text) {
|
|
433
|
-
|
|
445
|
+
const processed = text.replace(/<think>[\s\S]*?<\/think>/gi, "").replace(/<\/?tool_call>/gi, "");
|
|
434
446
|
const nestedTools = parseNestedXmlTools(processed);
|
|
435
|
-
const openingTagRegex = /<tool_call>|<tool>/gi;
|
|
436
|
-
const closingTagRegex = /<\/tool_call>|<\/tool>/gi;
|
|
437
|
-
const openingMatches = processed.match(openingTagRegex) || [];
|
|
438
|
-
const closingMatches = processed.match(closingTagRegex) || [];
|
|
439
|
-
if (openingMatches.length > closingMatches.length) {
|
|
440
|
-
const lastClosingMatch = /<\/tool_call>|<\/tool>/gi;
|
|
441
|
-
let lastClosingIndex = -1;
|
|
442
|
-
let match;
|
|
443
|
-
while ((match = lastClosingMatch.exec(processed)) !== null) {
|
|
444
|
-
lastClosingIndex = match.index + match[0].length;
|
|
445
|
-
}
|
|
446
|
-
if (lastClosingIndex > 0) {
|
|
447
|
-
processed = processed.slice(0, lastClosingIndex);
|
|
448
|
-
}
|
|
449
|
-
}
|
|
450
447
|
const toolCallLines = [];
|
|
451
|
-
const toolTagRegex = /<tool_call>([\s\S]*?)<\/tool_call>|<tool>([\s\S]*?)<\/tool>/gi;
|
|
452
|
-
let tagMatch;
|
|
453
|
-
while ((tagMatch = toolTagRegex.exec(processed)) !== null) {
|
|
454
|
-
const content = (tagMatch[1] || tagMatch[2] || "").trim();
|
|
455
|
-
if (content) {
|
|
456
|
-
const lines = content.split(/\r?\n/).map((l) => l.trim()).filter((l) => l);
|
|
457
|
-
toolCallLines.push(...lines);
|
|
458
|
-
}
|
|
459
|
-
}
|
|
460
448
|
const allLines = processed.split(/\r?\n/).map((l) => l.trim());
|
|
461
449
|
for (const line of allLines) {
|
|
462
450
|
if (!line) continue;
|
|
@@ -673,13 +661,18 @@ async function toolListDirectory(provider, args) {
|
|
|
673
661
|
async function readFinishFiles(repoRoot, files, reader) {
|
|
674
662
|
const out = [];
|
|
675
663
|
for (const f of files) {
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
664
|
+
if (f.lines === "*") {
|
|
665
|
+
const lines = await reader(f.path);
|
|
666
|
+
out.push({ path: f.path, ranges: "*", content: lines.join("\n") });
|
|
667
|
+
} else {
|
|
668
|
+
const ranges = mergeRanges(f.lines);
|
|
669
|
+
const chunks = [];
|
|
670
|
+
for (const [s, e] of ranges) {
|
|
671
|
+
const lines = await reader(f.path, s, e);
|
|
672
|
+
chunks.push(lines.join("\n"));
|
|
673
|
+
}
|
|
674
|
+
out.push({ path: f.path, ranges, content: chunks.join("\n") });
|
|
681
675
|
}
|
|
682
|
-
out.push({ path: f.path, ranges, content: chunks.join("\n") });
|
|
683
676
|
}
|
|
684
677
|
return out;
|
|
685
678
|
}
|
|
@@ -1080,7 +1073,7 @@ async function runWarpGrep(config) {
|
|
|
1080
1073
|
}
|
|
1081
1074
|
const parts = ["Relevant context found:"];
|
|
1082
1075
|
for (const f of finishMeta.files) {
|
|
1083
|
-
const ranges = f.lines.map(([s, e]) => `${s}-${e}`).join(", ");
|
|
1076
|
+
const ranges = f.lines === "*" ? "*" : f.lines.map(([s, e]) => `${s}-${e}`).join(", ");
|
|
1084
1077
|
parts.push(`- ${f.path}: ${ranges}`);
|
|
1085
1078
|
}
|
|
1086
1079
|
const payload = parts.join("\n");
|
|
@@ -1119,9 +1112,20 @@ var import_path4 = __toESM(require("path"), 1);
|
|
|
1119
1112
|
|
|
1120
1113
|
// tools/warp_grep/utils/ripgrep.ts
|
|
1121
1114
|
var import_child_process = require("child_process");
|
|
1122
|
-
var import_ripgrep = require("@vscode/ripgrep");
|
|
1123
1115
|
var resolvedRgPath = null;
|
|
1124
1116
|
var rgPathChecked = false;
|
|
1117
|
+
var bundledRgPath = null;
|
|
1118
|
+
async function getBundledRgPath() {
|
|
1119
|
+
if (bundledRgPath !== null) return bundledRgPath;
|
|
1120
|
+
try {
|
|
1121
|
+
const module2 = await Promise.resolve().then(() => __toESM(require_lib(), 1));
|
|
1122
|
+
bundledRgPath = module2.rgPath;
|
|
1123
|
+
return bundledRgPath;
|
|
1124
|
+
} catch {
|
|
1125
|
+
bundledRgPath = "";
|
|
1126
|
+
return null;
|
|
1127
|
+
}
|
|
1128
|
+
}
|
|
1125
1129
|
function spawnRg(rgBinary, args, opts) {
|
|
1126
1130
|
return new Promise((resolve) => {
|
|
1127
1131
|
const child = (0, import_child_process.spawn)(rgBinary, args, {
|
|
@@ -1152,11 +1156,14 @@ async function runRipgrep(args, opts) {
|
|
|
1152
1156
|
return spawnRg(resolvedRgPath, args, opts);
|
|
1153
1157
|
}
|
|
1154
1158
|
if (!rgPathChecked) {
|
|
1155
|
-
const
|
|
1156
|
-
if (
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1159
|
+
const bundledPath = await getBundledRgPath();
|
|
1160
|
+
if (bundledPath) {
|
|
1161
|
+
const result = await spawnRg(bundledPath, args, opts);
|
|
1162
|
+
if (!isBinaryFailure(result)) {
|
|
1163
|
+
resolvedRgPath = bundledPath;
|
|
1164
|
+
rgPathChecked = true;
|
|
1165
|
+
return result;
|
|
1166
|
+
}
|
|
1160
1167
|
}
|
|
1161
1168
|
const fallbackResult = await spawnRg("rg", args, opts);
|
|
1162
1169
|
if (!isBinaryFailure(fallbackResult)) {
|