@gaunt-sloth/agent 2.0.0-alpha.18 → 2.0.0-alpha.19
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/builtInToolsConfig.d.ts +8 -0
- package/dist/builtInToolsConfig.js +8 -0
- package/dist/builtInToolsConfig.js.map +1 -1
- package/dist/tools/GthFileSystemToolkit.js +44 -5
- package/dist/tools/GthFileSystemToolkit.js.map +1 -1
- package/dist/tools/gthGrepTool.d.ts +40 -0
- package/dist/tools/gthGrepTool.js +405 -0
- package/dist/tools/gthGrepTool.js.map +1 -0
- package/package.json +2 -2
|
@@ -24,6 +24,14 @@ export declare const AVAILABLE_BUILT_IN_TOOLS: {
|
|
|
24
24
|
* by default (see {@link DEFAULT_CONFIG}); disable by setting your own `builtInTools`.
|
|
25
25
|
*/
|
|
26
26
|
readonly gth_checklist: '#src/tools/gthChecklistTool.js';
|
|
27
|
+
/**
|
|
28
|
+
* Content-search (grep) tool: ripgrep-backed regex search over file CONTENTS, with an
|
|
29
|
+
* in-process JS fallback when `rg` is absent. Permission-light (no shell approval) and
|
|
30
|
+
* available in every mode. Named `gth_grep` to avoid colliding with the deep backend's
|
|
31
|
+
* built-in `grep`. Register-only here — not in {@link DEFAULT_CONFIG.builtInTools}; enable it
|
|
32
|
+
* via a `builtInTools` setting until the default is flipped.
|
|
33
|
+
*/
|
|
34
|
+
readonly gth_grep: '#src/tools/gthGrepTool.js';
|
|
27
35
|
};
|
|
28
36
|
/**
|
|
29
37
|
* Get default tools based on filesystem and built-in tools configuration
|
|
@@ -31,6 +31,14 @@ export const AVAILABLE_BUILT_IN_TOOLS = {
|
|
|
31
31
|
* by default (see {@link DEFAULT_CONFIG}); disable by setting your own `builtInTools`.
|
|
32
32
|
*/
|
|
33
33
|
gth_checklist: '#src/tools/gthChecklistTool.js',
|
|
34
|
+
/**
|
|
35
|
+
* Content-search (grep) tool: ripgrep-backed regex search over file CONTENTS, with an
|
|
36
|
+
* in-process JS fallback when `rg` is absent. Permission-light (no shell approval) and
|
|
37
|
+
* available in every mode. Named `gth_grep` to avoid colliding with the deep backend's
|
|
38
|
+
* built-in `grep`. Register-only here — not in {@link DEFAULT_CONFIG.builtInTools}; enable it
|
|
39
|
+
* via a `builtInTools` setting until the default is flipped.
|
|
40
|
+
*/
|
|
41
|
+
gth_grep: '#src/tools/gthGrepTool.js',
|
|
34
42
|
};
|
|
35
43
|
/**
|
|
36
44
|
* Get default tools based on filesystem and built-in tools configuration
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtInToolsConfig.js","sourceRoot":"","sources":["../src/builtInToolsConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,oBAAoB,MAAM,oCAAoC,CAAC;AAEtE,OAAO,EAIL,0BAA0B,EAC1B,qBAAqB,EACrB,yBAAyB,EACzB,cAAc,GACf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAE3E,OAAO,aAAa,MAAM,6BAA6B,CAAC;AACxD,OAAO,gBAAgB,MAAM,gCAAgC,CAAC;AAE9D;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC;;OAEG;IACH,iBAAiB,EAAE,mCAAmC;IACtD;;OAEG;IACH,aAAa,EAAE,+BAA+B;IAC9C;;OAEG;IACH,iBAAiB,EAAE,mCAAmC;IACtD;;;OAGG;IACH,aAAa,EAAE,gCAAgC;
|
|
1
|
+
{"version":3,"file":"builtInToolsConfig.js","sourceRoot":"","sources":["../src/builtInToolsConfig.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,oBAAoB,MAAM,oCAAoC,CAAC;AAEtE,OAAO,EAIL,0BAA0B,EAC1B,qBAAqB,EACrB,yBAAyB,EACzB,cAAc,GACf,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAE3E,OAAO,aAAa,MAAM,6BAA6B,CAAC;AACxD,OAAO,gBAAgB,MAAM,gCAAgC,CAAC;AAE9D;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC;;OAEG;IACH,iBAAiB,EAAE,mCAAmC;IACtD;;OAEG;IACH,aAAa,EAAE,+BAA+B;IAC9C;;OAEG;IACH,iBAAiB,EAAE,mCAAmC;IACtD;;;OAGG;IACH,aAAa,EAAE,gCAAgC;IAC/C;;;;;;OAMG;IACH,QAAQ,EAAE,2BAA2B;CAC7B,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAiB,EACjB,OAAoB;IAEpB,MAAM,eAAe,GAAG,qBAAqB,CAC3C,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,aAAa,CACrB,CAAC;IACF,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;IACnD,2FAA2F;IAC3F,iGAAiG;IACjG,kGAAkG;IAClG,oFAAoF;IACpF,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,IAAI,MAAM,CAAC,YAAY,KAAK,IAAI,CAAC;IACnE,MAAM,aAAa,GAAG,0BAA0B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClE,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAClF,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,eAAe,EAAE,GAAG,QAAQ,EAAE,GAAG,WAAW,EAAE,GAAG,YAAY,CAAC,CAAC;AAC5E,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,OAA+B,EAC/B,aAA4C;IAE5C,4FAA4F;IAC5F,uFAAuF;IACvF,2FAA2F;IAC3F,6FAA6F;IAC7F,sEAAsE;IACtE,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QAC7C,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACzC,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,oFAAoF;IACpF,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,aAAa,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;AACjC,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,MAAiB,EAAE,OAAoB;IAC7D,sCAAsC;IACtC,IAAI,WAAkD,CAAC;IAEvD,IAAI,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3C,4CAA4C;QAC5C,IAAI,aAAa,IAAI,SAAS,EAAE,CAAC;YAC/B,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,8BAA8B;YAC9B,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QACnC,CAAC;IACH,CAAC;SAAM,CAAC;QACN,4DAA4D;QAC5D,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IACnC,CAAC;IAED,mDAAmD;IACnD,IAAI,WAAW,KAAK,KAAK,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,4CAA4C;IAC5C,MAAM,OAAO,GAAG,IAAI,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAClD,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;AAC5B,CAAC;AAED;;GAEG;AAEH,SAAS,qBAAqB,CAC5B,gBAAoD,EACpD,cAGC,EACD,aAA0C;IAE1C,MAAM,OAAO,GAAG,IAAI,oBAAoB,CAAC;QACvC,kBAAkB,EAAE,CAAC,iBAAiB,EAAE,CAAC;QACzC,cAAc;QACd,aAAa;KACd,CAAC,CAAC;IACH,IAAI,gBAAgB,KAAK,KAAK,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,IAAI,gBAAgB,KAAK,MAAM,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,gBAAgB,KAAK,MAAM,EAAE,CAAC;QAChC,wCAAwC;QACxC,OAAO,OAAO,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACrC,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,IAAI,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,yDAAyD;IACzD,MAAM,YAAY,GAA8B,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC/E,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC,CAAC,EAAE,CAAC;IAEP,iCAAiC;IACjC,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAC9B,gBAAgB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,KAAK,CAAC,CACrE,CAAC;IACF,MAAM,kBAAkB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QAC5D,OAAO,IAAI,CAAC,IAAI,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,0BAA0B;IAC1B,MAAM,eAAe,GAAG,CAAC,GAAG,YAAY,EAAE,GAAG,kBAAkB,CAAC,CAAC;IACjE,OAAO,eAAe,CAAC,MAAM,CAC3B,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,CAC3E,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,eAAe,CAAC,MAAiB;IAC9C,MAAM,KAAK,GAA8B,EAAE,CAAC;IAE5C,+FAA+F;IAC/F,8FAA8F;IAC9F,gGAAgG;IAChG,MAAM,QAAQ,GAAG,qBAAqB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAE5D,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzD,IAAI,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtC,SAAS;QACX,CAAC;QACD,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,SAAS;QACX,CAAC;QACD,IAAI,QAAQ,IAAI,wBAAwB,EAAE,CAAC;YACzC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,MAAM,CACvB,wBAAwB,CAAC,QAAiD,CAAC,CAC5E,CAAC;gBACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YAC/B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,cAAc,CAAC,iCAAiC,QAAQ,MAAM,KAAK,EAAE,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,cAAc,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -402,6 +402,7 @@ export default class GthFileSystemToolkit extends BaseToolkit {
|
|
|
402
402
|
let chunk = Buffer.alloc(CHUNK_SIZE);
|
|
403
403
|
let linesFound = 0;
|
|
404
404
|
let remainingText = '';
|
|
405
|
+
let firstChunk = true;
|
|
405
406
|
while (position > 0 && linesFound < numLines) {
|
|
406
407
|
const size = Math.min(CHUNK_SIZE, position);
|
|
407
408
|
position -= size;
|
|
@@ -410,7 +411,17 @@ export default class GthFileSystemToolkit extends BaseToolkit {
|
|
|
410
411
|
break;
|
|
411
412
|
const readData = chunk.slice(0, bytesRead).toString('utf-8');
|
|
412
413
|
const chunkText = readData + remainingText;
|
|
413
|
-
const
|
|
414
|
+
const normalizedChunk = this.normalizeLineEndings(chunkText);
|
|
415
|
+
const chunkLines = normalizedChunk.split('\n');
|
|
416
|
+
// We read backward from EOF, so the file's terminating newline (if any) is only
|
|
417
|
+
// ever in this first chunk. Its split yields a phantom trailing empty element that
|
|
418
|
+
// must not be counted as the last line. Drop exactly one here so tail counting
|
|
419
|
+
// matches head/full reads; a file without a trailing newline is untouched and a
|
|
420
|
+
// genuine blank last line ("...\n\n") is preserved (only one element removed).
|
|
421
|
+
if (firstChunk && normalizedChunk.endsWith('\n')) {
|
|
422
|
+
chunkLines.pop();
|
|
423
|
+
}
|
|
424
|
+
firstChunk = false;
|
|
414
425
|
if (position > 0) {
|
|
415
426
|
remainingText = chunkLines[0];
|
|
416
427
|
chunkLines.shift();
|
|
@@ -467,7 +478,17 @@ export default class GthFileSystemToolkit extends BaseToolkit {
|
|
|
467
478
|
*/
|
|
468
479
|
async headAndTailFile(filePath, head, tail) {
|
|
469
480
|
const content = await fs.readFile(filePath, 'utf-8');
|
|
470
|
-
const
|
|
481
|
+
const normalized = this.normalizeLineEndings(content);
|
|
482
|
+
const lines = normalized.split('\n');
|
|
483
|
+
// A terminating newline yields a phantom trailing empty element that would be
|
|
484
|
+
// miscounted as a real line (inflating `total`, so the true last line gets pushed
|
|
485
|
+
// into the "skipped" gap and the tail comes back empty). Drop exactly one when the
|
|
486
|
+
// file ends in a newline so counting/slicing matches head/full reads. Files without a
|
|
487
|
+
// trailing newline are untouched, and a genuine blank last line ("...\n\n") is
|
|
488
|
+
// preserved because only a single element is removed.
|
|
489
|
+
if (normalized.endsWith('\n')) {
|
|
490
|
+
lines.pop();
|
|
491
|
+
}
|
|
471
492
|
const total = lines.length;
|
|
472
493
|
if (head + tail >= total) {
|
|
473
494
|
return content;
|
|
@@ -588,12 +609,30 @@ export default class GthFileSystemToolkit extends BaseToolkit {
|
|
|
588
609
|
}, 'read'),
|
|
589
610
|
createGthTool(async (args) => {
|
|
590
611
|
displayInfo(`\n📁 Writing file: ${args.path}\n`);
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
612
|
+
try {
|
|
613
|
+
const validPath = await this.validatePath(args.path);
|
|
614
|
+
// Create any missing parent directories (mkdir -p) so a write into a
|
|
615
|
+
// not-yet-created subdirectory succeeds instead of throwing ENOENT. The
|
|
616
|
+
// model expects the near-universal agent-tool `mkdir -p` semantics and
|
|
617
|
+
// routinely writes a new file before creating its dir. validatePath has
|
|
618
|
+
// already confirmed the nearest existing ancestor is inside the sandbox,
|
|
619
|
+
// so the new directories are created within an allowed root.
|
|
620
|
+
await fs.mkdir(path.dirname(validPath), { recursive: true });
|
|
621
|
+
await fs.writeFile(validPath, args.content, 'utf-8');
|
|
622
|
+
return `Successfully wrote to ${args.path}`;
|
|
623
|
+
}
|
|
624
|
+
catch (error) {
|
|
625
|
+
// Surface the failure to the model as a recoverable tool result rather
|
|
626
|
+
// than throwing, which would abort the entire agent run (GS2-36). The
|
|
627
|
+
// model can read the message and adjust (e.g. the path is a directory,
|
|
628
|
+
// or is denied by the sandbox) instead of the session dying.
|
|
629
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
630
|
+
return `Error writing file ${args.path}: ${message}`;
|
|
631
|
+
}
|
|
594
632
|
}, {
|
|
595
633
|
name: 'write_file',
|
|
596
634
|
description: 'Create a new file or completely overwrite an existing file with new content. ' +
|
|
635
|
+
'Missing parent directories are created automatically. ' +
|
|
597
636
|
'Use with caution as it will overwrite existing files without warning. ' +
|
|
598
637
|
'Handles text content with proper encoding. Only works within allowed directories.',
|
|
599
638
|
schema: WriteFileArgsSchema,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GthFileSystemToolkit.js","sourceRoot":"","sources":["../../src/tools/GthFileSystemToolkit.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"GthFileSystemToolkit.js","sourceRoot":"","sources":["../../src/tools/GthFileSystemToolkit.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { GthConfig } from '@gaunt-sloth/core/config.js';
|
|
3
|
+
export declare const GREP_TOOL_NAME = "gth_grep";
|
|
4
|
+
/** A single content match. `path` is relative to the search root; `line` is 1-based. */
|
|
5
|
+
export interface GrepMatch {
|
|
6
|
+
path: string;
|
|
7
|
+
line: number;
|
|
8
|
+
/** The matching line's text, untruncated (bounded at format time). */
|
|
9
|
+
text: string;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Render matches in the concise, opencode-style grouped form. Shared by BOTH execution paths so
|
|
13
|
+
* the rg and JS-fallback outputs are provably identical.
|
|
14
|
+
*/
|
|
15
|
+
export declare function formatGrepOutput(matches: GrepMatch[]): string;
|
|
16
|
+
/**
|
|
17
|
+
* Compile an include glob (matched against a file's basename in the JS fallback) to a RegExp.
|
|
18
|
+
* Supports `*`, `?`, and `{a,b,c}` brace alternation, e.g. `*.ts`, `*.{ts,tsx}`.
|
|
19
|
+
*
|
|
20
|
+
* NOTE (rg-vs-JS divergence): this matches the basename only, whereas rg applies `--glob` with full
|
|
21
|
+
* gitignore-style path-glob semantics (a glob can match against the path, not just the basename).
|
|
22
|
+
* For the common `*.ext` case the two agree; more elaborate globs may differ between the two paths.
|
|
23
|
+
*/
|
|
24
|
+
export declare function globToRegExp(glob: string): RegExp;
|
|
25
|
+
export declare function get(_config: GthConfig): import("@langchain/core/tools").DynamicStructuredTool<z.ZodObject<{
|
|
26
|
+
pattern: z.ZodString;
|
|
27
|
+
path: z.ZodOptional<z.ZodString>;
|
|
28
|
+
include: z.ZodOptional<z.ZodString>;
|
|
29
|
+
limit: z.ZodOptional<z.ZodNumber>;
|
|
30
|
+
}, z.core.$strip>, {
|
|
31
|
+
pattern: string;
|
|
32
|
+
path?: string | undefined;
|
|
33
|
+
include?: string | undefined;
|
|
34
|
+
limit?: number | undefined;
|
|
35
|
+
}, {
|
|
36
|
+
pattern: string;
|
|
37
|
+
path?: string | undefined;
|
|
38
|
+
include?: string | undefined;
|
|
39
|
+
limit?: number | undefined;
|
|
40
|
+
}, string, unknown, "gth_grep">;
|
|
@@ -0,0 +1,405 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module gthGrepTool
|
|
3
|
+
* The `gth_grep` content-search tool — a structured, permission-light regex search over file
|
|
4
|
+
* CONTENTS. Complements `search_files` (which only matches file NAMES) and gives the lean agent a
|
|
5
|
+
* grep primitive without falling back to the shell-approval-gated `run_shell_command`. Being a
|
|
6
|
+
* built-in (not a dev tool) it is available in every mode, unlike `run_shell_command`.
|
|
7
|
+
*
|
|
8
|
+
* Two execution paths, ONE output shape:
|
|
9
|
+
* - shell out to ripgrep (`rg`) when it is on PATH;
|
|
10
|
+
* - fall back to an in-process JS scanner when `rg` is absent (CI machines may not have ripgrep).
|
|
11
|
+
* Both sandbox to the current work-dir boundary ({@link getCurrentWorkDir}), bound each matching
|
|
12
|
+
* line's preview, and cap the total match count.
|
|
13
|
+
*
|
|
14
|
+
* Named `gth_grep`, NOT `grep`: the experimental deep backend (deepagents) registers its own `grep`
|
|
15
|
+
* built-in and `createDeepAgent` throws on a name collision because both backends share the resolved
|
|
16
|
+
* toolset — the same reason {@link file://./gthChecklistTool.ts} is not called `write_todos`.
|
|
17
|
+
*/
|
|
18
|
+
import { tool } from '@langchain/core/tools';
|
|
19
|
+
import { z } from 'zod';
|
|
20
|
+
import { execFile } from 'node:child_process';
|
|
21
|
+
import fs from 'node:fs/promises';
|
|
22
|
+
import path from 'node:path';
|
|
23
|
+
import { getCurrentWorkDir } from '@gaunt-sloth/core/utils/systemUtils.js';
|
|
24
|
+
export const GREP_TOOL_NAME = 'gth_grep';
|
|
25
|
+
/** Default cap on the number of matches returned when the caller does not pass `limit`. */
|
|
26
|
+
const DEFAULT_LIMIT = 100;
|
|
27
|
+
/** Noise directories both paths skip: the JS fallback walk, and rg via `--glob !<dir>` excludes. */
|
|
28
|
+
const IGNORED_DIRS = new Set(['.git', 'node_modules', 'dist', '.idea']);
|
|
29
|
+
/** Longest matching-line preview kept before truncation, so one minified line can't blow context. */
|
|
30
|
+
const MAX_LINE_LENGTH = 250;
|
|
31
|
+
const TRUNCATION_MARKER = ' … (line truncated)';
|
|
32
|
+
/**
|
|
33
|
+
* JS-fallback only: cap the length of text fed to the regex per line. A single huge/minified line
|
|
34
|
+
* would otherwise let a model-supplied pattern block the event loop (large linear scans, and
|
|
35
|
+
* catastrophic backtracking grows with input length). rg (native, non-backtracking) is immune, so
|
|
36
|
+
* this bounds the fallback only. Matches beyond the cap on such a line are not found.
|
|
37
|
+
*/
|
|
38
|
+
const MAX_SCAN_LINE_LENGTH = 4096;
|
|
39
|
+
/** Ceiling on rg stdout we buffer (matches are sliced to `limit` anyway). */
|
|
40
|
+
const RG_MAX_BUFFER = 32 * 1024 * 1024;
|
|
41
|
+
const schema = z.object({
|
|
42
|
+
pattern: z.string().min(1).describe('Regular expression to search file CONTENTS for.'),
|
|
43
|
+
path: z
|
|
44
|
+
.string()
|
|
45
|
+
.optional()
|
|
46
|
+
.describe('Relative directory or file to search, within the working directory. Defaults to the ' +
|
|
47
|
+
'current working directory.'),
|
|
48
|
+
include: z
|
|
49
|
+
.string()
|
|
50
|
+
.optional()
|
|
51
|
+
.describe('Optional file glob to filter matched files, e.g. "*.ts" or "*.{ts,tsx}".'),
|
|
52
|
+
limit: z
|
|
53
|
+
.number()
|
|
54
|
+
.int()
|
|
55
|
+
.positive()
|
|
56
|
+
.optional()
|
|
57
|
+
.describe(`Maximum number of matches to return (default ${DEFAULT_LIMIT}).`),
|
|
58
|
+
});
|
|
59
|
+
const description = [
|
|
60
|
+
'Search file CONTENTS by regular expression (ripgrep-backed, with an in-process fallback).',
|
|
61
|
+
'Use this to find WHERE a symbol, string, or pattern appears across files — unlike search_files,',
|
|
62
|
+
'which matches file NAMES only. Returns matching files with 1-based line numbers and a bounded',
|
|
63
|
+
'preview of each matching line.',
|
|
64
|
+
'',
|
|
65
|
+
'Args: pattern (regex, required); path (relative dir/file, defaults to the working directory);',
|
|
66
|
+
'include (file glob such as "*.ts" or "*.{ts,tsx}"); limit (max matches). Searches are confined',
|
|
67
|
+
'to the working directory.',
|
|
68
|
+
].join('\n');
|
|
69
|
+
/** Error whose message is safe to return to the model as the tool observation. */
|
|
70
|
+
class GrepError extends Error {
|
|
71
|
+
}
|
|
72
|
+
/** Sentinel: `rg` is not installed — the orchestrator must use the JS fallback. */
|
|
73
|
+
class RipgrepUnavailableError extends Error {
|
|
74
|
+
}
|
|
75
|
+
/** Truncate an over-long matching-line preview with a clear marker. */
|
|
76
|
+
function truncateLine(text) {
|
|
77
|
+
if (text.length <= MAX_LINE_LENGTH)
|
|
78
|
+
return text;
|
|
79
|
+
return text.slice(0, MAX_LINE_LENGTH) + TRUNCATION_MARKER;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Render matches in the concise, opencode-style grouped form. Shared by BOTH execution paths so
|
|
83
|
+
* the rg and JS-fallback outputs are provably identical.
|
|
84
|
+
*/
|
|
85
|
+
export function formatGrepOutput(matches) {
|
|
86
|
+
if (matches.length === 0)
|
|
87
|
+
return 'No matches found';
|
|
88
|
+
const lines = [`Found ${matches.length} matches`];
|
|
89
|
+
let currentPath = '';
|
|
90
|
+
for (const m of matches) {
|
|
91
|
+
if (m.path !== currentPath) {
|
|
92
|
+
if (currentPath)
|
|
93
|
+
lines.push('');
|
|
94
|
+
currentPath = m.path;
|
|
95
|
+
lines.push(`${m.path}:`);
|
|
96
|
+
}
|
|
97
|
+
lines.push(` Line ${m.line}: ${truncateLine(m.text)}`);
|
|
98
|
+
}
|
|
99
|
+
return lines.join('\n');
|
|
100
|
+
}
|
|
101
|
+
/** rg prints `./foo` for the cwd root; normalise to bare relative paths to match the JS scanner. */
|
|
102
|
+
function normalizeRelPath(p) {
|
|
103
|
+
return p.startsWith('./') ? p.slice(2) : p;
|
|
104
|
+
}
|
|
105
|
+
/** Escape the literal parts of a glob for use inside a RegExp. */
|
|
106
|
+
function escapeRegExp(s) {
|
|
107
|
+
return s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Compile an include glob (matched against a file's basename in the JS fallback) to a RegExp.
|
|
111
|
+
* Supports `*`, `?`, and `{a,b,c}` brace alternation, e.g. `*.ts`, `*.{ts,tsx}`.
|
|
112
|
+
*
|
|
113
|
+
* NOTE (rg-vs-JS divergence): this matches the basename only, whereas rg applies `--glob` with full
|
|
114
|
+
* gitignore-style path-glob semantics (a glob can match against the path, not just the basename).
|
|
115
|
+
* For the common `*.ext` case the two agree; more elaborate globs may differ between the two paths.
|
|
116
|
+
*/
|
|
117
|
+
export function globToRegExp(glob) {
|
|
118
|
+
let re = '';
|
|
119
|
+
let i = 0;
|
|
120
|
+
while (i < glob.length) {
|
|
121
|
+
const c = glob[i];
|
|
122
|
+
if (c === '*') {
|
|
123
|
+
re += '[^/]*';
|
|
124
|
+
}
|
|
125
|
+
else if (c === '?') {
|
|
126
|
+
re += '[^/]';
|
|
127
|
+
}
|
|
128
|
+
else if (c === '{') {
|
|
129
|
+
const end = glob.indexOf('}', i);
|
|
130
|
+
if (end === -1) {
|
|
131
|
+
re += '\\{';
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
const options = glob
|
|
135
|
+
.slice(i + 1, end)
|
|
136
|
+
.split(',')
|
|
137
|
+
.map(escapeRegExp);
|
|
138
|
+
re += '(?:' + options.join('|') + ')';
|
|
139
|
+
i = end + 1;
|
|
140
|
+
continue;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
re += escapeRegExp(c);
|
|
145
|
+
}
|
|
146
|
+
i++;
|
|
147
|
+
}
|
|
148
|
+
return new RegExp('^' + re + '$');
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Resolve a path to its real, symlink-free location, walking up to the nearest EXISTING ancestor
|
|
152
|
+
* when the path itself does not exist yet. Only an existing component can be (or sit behind) a
|
|
153
|
+
* symlink, so resolving the nearest real ancestor is enough to catch an intermediate symlinked
|
|
154
|
+
* directory. Terminates because `path.dirname` strictly shortens the path to the filesystem root.
|
|
155
|
+
*/
|
|
156
|
+
async function realpathNearestExisting(absPath) {
|
|
157
|
+
let current = absPath;
|
|
158
|
+
for (;;) {
|
|
159
|
+
try {
|
|
160
|
+
return await fs.realpath(current);
|
|
161
|
+
}
|
|
162
|
+
catch {
|
|
163
|
+
const parent = path.dirname(current);
|
|
164
|
+
if (parent === current)
|
|
165
|
+
return current; // filesystem root; nothing left to resolve
|
|
166
|
+
current = parent;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
/** True when `child` equals `root` or is a descendant of it. */
|
|
171
|
+
function isWithin(child, root) {
|
|
172
|
+
return child === root || child.startsWith(`${root}${path.sep}`);
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
175
|
+
* Resolve `path` under the working directory and refuse anything that escapes it. The whole tool
|
|
176
|
+
* is sandboxed to this boundary.
|
|
177
|
+
*/
|
|
178
|
+
async function resolveTarget(inputPath, workDir) {
|
|
179
|
+
const absWorkDir = path.resolve(workDir);
|
|
180
|
+
const requested = path.resolve(absWorkDir, inputPath ?? '.');
|
|
181
|
+
const rel = path.relative(absWorkDir, requested);
|
|
182
|
+
if (rel.startsWith('..') || path.isAbsolute(rel)) {
|
|
183
|
+
throw new GrepError(`Refusing to search '${inputPath}': path escapes the working directory (${absWorkDir}).`);
|
|
184
|
+
}
|
|
185
|
+
// Symlink containment: the lexical check above cannot catch a symlink INSIDE the workdir that
|
|
186
|
+
// points outside it (rel would not start with `..`, and stat/rg/the walk would then follow it out
|
|
187
|
+
// of the sandbox). Resolve real paths and re-assert containment. The workdir root is realpath'd
|
|
188
|
+
// too, since its own path may contain symlinks (e.g. /tmp -> /private/tmp). A not-yet-existing
|
|
189
|
+
// target resolves via its nearest existing ancestor, so a missing path is contained here and then
|
|
190
|
+
// reported as "not found" by the stat below, rather than crashing.
|
|
191
|
+
const realRoot = await realpathNearestExisting(absWorkDir);
|
|
192
|
+
const realTarget = await realpathNearestExisting(requested);
|
|
193
|
+
if (!isWithin(realTarget, realRoot)) {
|
|
194
|
+
throw new GrepError(`Refusing to search '${inputPath}': path escapes the working directory (${absWorkDir}).`);
|
|
195
|
+
}
|
|
196
|
+
let stat;
|
|
197
|
+
try {
|
|
198
|
+
stat = await fs.stat(requested);
|
|
199
|
+
}
|
|
200
|
+
catch {
|
|
201
|
+
throw new GrepError(`Path not found: ${inputPath ?? '.'}`);
|
|
202
|
+
}
|
|
203
|
+
if (stat.isDirectory()) {
|
|
204
|
+
return { searchRoot: requested };
|
|
205
|
+
}
|
|
206
|
+
return { searchRoot: path.dirname(requested), file: path.basename(requested) };
|
|
207
|
+
}
|
|
208
|
+
/** Parse ripgrep's `path:line:text` output (with `--with-filename --line-number --no-heading`). */
|
|
209
|
+
function parseRipgrepOutput(stdout) {
|
|
210
|
+
const matches = [];
|
|
211
|
+
for (const raw of stdout.split('\n')) {
|
|
212
|
+
if (!raw)
|
|
213
|
+
continue;
|
|
214
|
+
const first = raw.indexOf(':');
|
|
215
|
+
if (first < 0)
|
|
216
|
+
continue;
|
|
217
|
+
const second = raw.indexOf(':', first + 1);
|
|
218
|
+
if (second < 0)
|
|
219
|
+
continue;
|
|
220
|
+
const lineNum = Number(raw.slice(first + 1, second));
|
|
221
|
+
if (!Number.isInteger(lineNum))
|
|
222
|
+
continue;
|
|
223
|
+
matches.push({
|
|
224
|
+
path: normalizeRelPath(raw.slice(0, first)),
|
|
225
|
+
line: lineNum,
|
|
226
|
+
text: raw.slice(second + 1),
|
|
227
|
+
});
|
|
228
|
+
}
|
|
229
|
+
return matches;
|
|
230
|
+
}
|
|
231
|
+
function buildRipgrepArgs(pattern, target, include) {
|
|
232
|
+
// NOTE (rg-vs-JS divergence): rg additionally honours `.gitignore`/`.ignore` files and skips
|
|
233
|
+
// hidden dot-files by default, whereas the JS fallback ({@link collectFiles}) only skips
|
|
234
|
+
// IGNORED_DIRS. So the set of files searched can differ depending on whether ripgrep is installed.
|
|
235
|
+
// This gitignore/hidden behaviour is left as-is deliberately (open product decision); do not
|
|
236
|
+
// "fix" it by passing --no-ignore / --hidden without a decision.
|
|
237
|
+
const args = ['--line-number', '--no-heading', '--with-filename', '--color=never'];
|
|
238
|
+
// Exclude the same noise dirs the JS fallback skips, so the two paths stay consistent. rg only
|
|
239
|
+
// auto-skips node_modules etc. when a .gitignore says so; outside a git repo it descends into
|
|
240
|
+
// them, so we exclude them explicitly here.
|
|
241
|
+
for (const dir of IGNORED_DIRS) {
|
|
242
|
+
args.push('--glob', `!${dir}`);
|
|
243
|
+
}
|
|
244
|
+
if (include) {
|
|
245
|
+
args.push('--glob', include);
|
|
246
|
+
}
|
|
247
|
+
args.push('-e', pattern, '--', target.file ?? '.');
|
|
248
|
+
return args;
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* Run ripgrep. Resolves to matches (empty on rg exit 1 = "no matches"). Rejects with
|
|
252
|
+
* {@link RipgrepUnavailableError} when `rg` is not on PATH, or {@link GrepError} on a real rg error
|
|
253
|
+
* (e.g. an invalid regex → rg exit 2).
|
|
254
|
+
*/
|
|
255
|
+
function runRipgrep(pattern, target, include) {
|
|
256
|
+
const args = buildRipgrepArgs(pattern, target, include);
|
|
257
|
+
return new Promise((resolve, reject) => {
|
|
258
|
+
execFile('rg', args, { cwd: target.searchRoot, maxBuffer: RG_MAX_BUFFER }, (error, stdout, stderr) => {
|
|
259
|
+
if (error) {
|
|
260
|
+
const code = error
|
|
261
|
+
.code;
|
|
262
|
+
if (code === 'ENOENT') {
|
|
263
|
+
reject(new RipgrepUnavailableError('ripgrep (rg) not found on PATH'));
|
|
264
|
+
return;
|
|
265
|
+
}
|
|
266
|
+
// rg exit code 1 == no matches (execFile surfaces the non-zero exit as an error).
|
|
267
|
+
if (code === 1) {
|
|
268
|
+
resolve([]);
|
|
269
|
+
return;
|
|
270
|
+
}
|
|
271
|
+
const detail = (stderr ?? '').toString().trim();
|
|
272
|
+
reject(new GrepError(`Search failed: ${detail || error.message}`));
|
|
273
|
+
return;
|
|
274
|
+
}
|
|
275
|
+
resolve(parseRipgrepOutput(stdout.toString()));
|
|
276
|
+
});
|
|
277
|
+
});
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* Recursively collect regular files under `dir`, skipping {@link IGNORED_DIRS}. Symlinked entries
|
|
281
|
+
* (dirs and files) report `isDirectory()`/`isFile()` as false here, so the walk never follows them
|
|
282
|
+
* out of the sandbox — only the explicit target path needs the realpath guard in {@link resolveTarget}.
|
|
283
|
+
*
|
|
284
|
+
* NOTE (rg-vs-JS divergence): unlike rg, this does NOT consult `.gitignore`/`.ignore` and does NOT
|
|
285
|
+
* skip hidden dot-files; it only skips IGNORED_DIRS. The searched file-set can therefore differ from
|
|
286
|
+
* the rg path. Deliberately left as-is (open product decision).
|
|
287
|
+
*/
|
|
288
|
+
async function collectFiles(dir, out) {
|
|
289
|
+
let entries;
|
|
290
|
+
try {
|
|
291
|
+
entries = (await fs.readdir(dir, { withFileTypes: true }));
|
|
292
|
+
}
|
|
293
|
+
catch {
|
|
294
|
+
return;
|
|
295
|
+
}
|
|
296
|
+
for (const entry of entries) {
|
|
297
|
+
const full = path.join(dir, entry.name);
|
|
298
|
+
if (entry.isDirectory()) {
|
|
299
|
+
if (IGNORED_DIRS.has(entry.name))
|
|
300
|
+
continue;
|
|
301
|
+
await collectFiles(full, out);
|
|
302
|
+
}
|
|
303
|
+
else if (entry.isFile()) {
|
|
304
|
+
out.push(full);
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
/**
|
|
309
|
+
* In-process fallback used when `rg` is absent: walk files under the target (respecting `include`
|
|
310
|
+
* and the ignore list) and apply the regex per line. Produces the identical {@link GrepMatch} shape
|
|
311
|
+
* as the ripgrep path.
|
|
312
|
+
*/
|
|
313
|
+
async function runJsScanner(pattern, target, include, limit) {
|
|
314
|
+
let regex;
|
|
315
|
+
try {
|
|
316
|
+
// NOTE (rg-vs-JS divergence): the fallback uses the ECMAScript regex dialect (`new RegExp`),
|
|
317
|
+
// whereas rg uses the Rust `regex` crate. Host-specific features differ — notably lookaround
|
|
318
|
+
// and backreferences work here but are unsupported by rg — so the same pattern can behave
|
|
319
|
+
// differently depending on which path runs.
|
|
320
|
+
regex = new RegExp(pattern);
|
|
321
|
+
}
|
|
322
|
+
catch (e) {
|
|
323
|
+
throw new GrepError(`Search failed: invalid regular expression: ${e.message}`);
|
|
324
|
+
}
|
|
325
|
+
const includeRe = include ? globToRegExp(include) : undefined;
|
|
326
|
+
const files = [];
|
|
327
|
+
if (target.file) {
|
|
328
|
+
files.push(path.join(target.searchRoot, target.file));
|
|
329
|
+
}
|
|
330
|
+
else {
|
|
331
|
+
await collectFiles(target.searchRoot, files);
|
|
332
|
+
}
|
|
333
|
+
const matches = [];
|
|
334
|
+
for (const file of files) {
|
|
335
|
+
if (matches.length >= limit)
|
|
336
|
+
break;
|
|
337
|
+
if (includeRe && !includeRe.test(path.basename(file)))
|
|
338
|
+
continue;
|
|
339
|
+
let content;
|
|
340
|
+
try {
|
|
341
|
+
content = await fs.readFile(file, 'utf8');
|
|
342
|
+
}
|
|
343
|
+
catch {
|
|
344
|
+
continue; // unreadable / non-text; skip
|
|
345
|
+
}
|
|
346
|
+
const rel = normalizeRelPath(path.relative(target.searchRoot, file));
|
|
347
|
+
const lines = content.split('\n');
|
|
348
|
+
for (let i = 0; i < lines.length; i++) {
|
|
349
|
+
if (matches.length >= limit)
|
|
350
|
+
break;
|
|
351
|
+
const line = lines[i];
|
|
352
|
+
// Bound the regex input per line (see MAX_SCAN_LINE_LENGTH): a huge/minified line must not
|
|
353
|
+
// block the event loop. We test a truncated view but store the original line (its preview is
|
|
354
|
+
// bounded again at format time); a match beyond the cap on such a line is not reported.
|
|
355
|
+
const scanText = line.length > MAX_SCAN_LINE_LENGTH ? line.slice(0, MAX_SCAN_LINE_LENGTH) : line;
|
|
356
|
+
if (regex.test(scanText)) {
|
|
357
|
+
matches.push({ path: rel, line: i + 1, text: line });
|
|
358
|
+
}
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
return matches;
|
|
362
|
+
}
|
|
363
|
+
async function grepImpl(args, workDir) {
|
|
364
|
+
const limit = args.limit ?? DEFAULT_LIMIT;
|
|
365
|
+
let target;
|
|
366
|
+
try {
|
|
367
|
+
target = await resolveTarget(args.path, workDir);
|
|
368
|
+
}
|
|
369
|
+
catch (e) {
|
|
370
|
+
if (e instanceof GrepError)
|
|
371
|
+
return e.message;
|
|
372
|
+
throw e;
|
|
373
|
+
}
|
|
374
|
+
let matches;
|
|
375
|
+
try {
|
|
376
|
+
matches = await runRipgrep(args.pattern, target, args.include);
|
|
377
|
+
}
|
|
378
|
+
catch (e) {
|
|
379
|
+
if (e instanceof RipgrepUnavailableError) {
|
|
380
|
+
try {
|
|
381
|
+
matches = await runJsScanner(args.pattern, target, args.include, limit);
|
|
382
|
+
}
|
|
383
|
+
catch (inner) {
|
|
384
|
+
if (inner instanceof GrepError)
|
|
385
|
+
return inner.message;
|
|
386
|
+
throw inner;
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
else if (e instanceof GrepError) {
|
|
390
|
+
return e.message;
|
|
391
|
+
}
|
|
392
|
+
else {
|
|
393
|
+
throw e;
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
// ripgrep has no total-match cap of its own; bound the count here so both paths agree.
|
|
397
|
+
if (matches.length > limit)
|
|
398
|
+
matches = matches.slice(0, limit);
|
|
399
|
+
return formatGrepOutput(matches);
|
|
400
|
+
}
|
|
401
|
+
export function get(_config) {
|
|
402
|
+
const impl = async (args) => grepImpl(args, getCurrentWorkDir());
|
|
403
|
+
return tool(impl, { name: GREP_TOOL_NAME, description, schema });
|
|
404
|
+
}
|
|
405
|
+
//# sourceMappingURL=gthGrepTool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gthGrepTool.js","sourceRoot":"","sources":["../../src/tools/gthGrepTool.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gaunt-sloth/agent",
|
|
3
|
-
"version": "2.0.0-alpha.
|
|
3
|
+
"version": "2.0.0-alpha.19",
|
|
4
4
|
"description": "Deep agent runtime for Gaunt Sloth: tools, middleware, MCP/A2A clients and the AG-UI server",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Andrew Kondratev",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"undici": "^8.7.0",
|
|
54
54
|
"uuid": "^14.0.1",
|
|
55
55
|
"zod": "^4.4.3",
|
|
56
|
-
"@gaunt-sloth/core": "2.0.0-alpha.
|
|
56
|
+
"@gaunt-sloth/core": "2.0.0-alpha.19"
|
|
57
57
|
},
|
|
58
58
|
"files": [
|
|
59
59
|
"./dist/*",
|