@x-code-cli/core 0.2.4 → 0.2.5
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/agent/loop-state.d.ts +3 -3
- package/dist/agent/loop-state.d.ts.map +1 -1
- package/dist/tools/glob.d.ts.map +1 -1
- package/dist/tools/glob.js +65 -11
- package/dist/tools/glob.js.map +1 -1
- package/dist/tools/grep.d.ts.map +1 -1
- package/dist/tools/grep.js +1 -15
- package/dist/tools/grep.js.map +1 -1
- package/dist/tools/index.d.ts +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +1 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/truncate.d.ts +0 -4
- package/dist/tools/truncate.d.ts.map +1 -1
- package/dist/tools/truncate.js +0 -4
- package/dist/tools/truncate.js.map +1 -1
- package/dist/tools/utils.d.ts +7 -0
- package/dist/tools/utils.d.ts.map +1 -0
- package/dist/tools/utils.js +39 -0
- package/dist/tools/utils.js.map +1 -0
- package/dist/types/index.d.ts +4 -7
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +1 -1
- package/dist/types/index.js.map +1 -1
- package/package.json +1 -2
|
@@ -23,9 +23,9 @@ export interface LoopState {
|
|
|
23
23
|
* rebuilds it with / without the plan-mode overlay. */
|
|
24
24
|
systemPromptCache: string | null;
|
|
25
25
|
/** Current approval mode — flips between 'default' and 'plan' via
|
|
26
|
-
*
|
|
27
|
-
* Read by tool-execution to decide which system
|
|
28
|
-
* applies and which tools are advertised. */
|
|
26
|
+
* the /plan slash command (user) or the enterPlanMode/exitPlanMode
|
|
27
|
+
* tools (model). Read by tool-execution to decide which system
|
|
28
|
+
* prompt overlay applies and which tools are advertised. */
|
|
29
29
|
permissionMode: PermissionMode;
|
|
30
30
|
/** Path to the plan file when in plan mode (`.x-code/plans/{sessionId}.md`),
|
|
31
31
|
* null otherwise. Created lazily the first time the model calls
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop-state.d.ts","sourceRoot":"","sources":["../../src/agent/loop-state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAEtC,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE7E,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,6FAA6F;IAC7F,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB;;qEAEiE;IACjE,eAAe,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC1D;;;;4DAIwD;IACxD,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC;;;
|
|
1
|
+
{"version":3,"file":"loop-state.d.ts","sourceRoot":"","sources":["../../src/agent/loop-state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAEtC,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE7E,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,YAAY,EAAE,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;IACtB,6FAA6F;IAC7F,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC1B,SAAS,EAAE,MAAM,CAAA;IACjB;;qEAEiE;IACjE,eAAe,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC1D;;;;4DAIwD;IACxD,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC;;;iEAG6D;IAC7D,cAAc,EAAE,cAAc,CAAA;IAC9B;;;oCAGgC;IAChC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B;;;;;;8BAM0B;IAC1B,QAAQ,EAAE,MAAM,CAAA;IAChB;;;;;+DAK2D;IAC3D,KAAK,EAAE,QAAQ,EAAE,CAAA;IACjB;;;;;;;mEAO+D;IAC/D,qBAAqB,EAAE,MAAM,CAAA;IAI7B;;8EAE0E;IAC1E,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,sEAAsE;IACtE,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAiBD,wBAAgB,eAAe,CAAC,WAAW,GAAE,cAA0B,GAAG,SAAS,CA4BlF"}
|
package/dist/tools/glob.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glob.d.ts","sourceRoot":"","sources":["../../src/tools/glob.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"glob.d.ts","sourceRoot":"","sources":["../../src/tools/glob.ts"],"names":[],"mappings":"AAgCA,eAAO,MAAM,IAAI;;;UA8Df,CAAA"}
|
package/dist/tools/glob.js
CHANGED
|
@@ -1,12 +1,31 @@
|
|
|
1
|
-
// @x-code-cli/core — glob tool (file search by pattern)
|
|
2
|
-
|
|
1
|
+
// @x-code-cli/core — glob tool (file search by pattern, via ripgrep)
|
|
2
|
+
//
|
|
3
|
+
// We delegate the actual file walk to ripgrep (`rg --files --glob ...`)
|
|
4
|
+
// rather than using a Node glob library. Three reasons:
|
|
5
|
+
// 1. ripgrep is already a dependency for the `grep` tool — reusing it
|
|
6
|
+
// keeps the cross-tool footprint small.
|
|
7
|
+
// 2. ripgrep walks gigantic trees fast (Rust + parallel directory walk)
|
|
8
|
+
// and respects .gitignore by default.
|
|
9
|
+
// 3. ripgrep's `--sortr=modified` gives us deterministic
|
|
10
|
+
// most-recent-first ordering, which is what the model needs when
|
|
11
|
+
// results are truncated: the most relevant files survive the cap.
|
|
12
|
+
//
|
|
13
|
+
// This brings glob's actual behavior in line with its description string,
|
|
14
|
+
// which previously promised mtime ordering but resolved to library-default
|
|
15
|
+
// ordering (alphabetical via globby).
|
|
16
|
+
import { execFile } from 'node:child_process';
|
|
17
|
+
import path from 'node:path';
|
|
18
|
+
import { promisify } from 'node:util';
|
|
3
19
|
import { tool } from 'ai';
|
|
4
20
|
import { z } from 'zod';
|
|
5
21
|
import { formatToolError } from '../utils/tool-errors.js';
|
|
6
22
|
import { reportProgress } from './progress.js';
|
|
23
|
+
import { getRipgrepPath } from './utils.js';
|
|
24
|
+
const execFileAsync = promisify(execFile);
|
|
7
25
|
const MAX_GLOB_RESULTS = 200;
|
|
26
|
+
const RG_MAX_BUFFER = 20 * 1024 * 1024;
|
|
8
27
|
export const glob = tool({
|
|
9
|
-
description: `Find files matching a glob pattern. Returns file paths sorted by modification time. ` +
|
|
28
|
+
description: `Find files matching a glob pattern. Returns absolute file paths sorted by modification time, most recent first. ` +
|
|
10
29
|
`Results are capped at ${MAX_GLOB_RESULTS} files — use a more specific pattern if truncated.`,
|
|
11
30
|
inputSchema: z.object({
|
|
12
31
|
pattern: z.string().describe('Glob pattern (e.g. "**/*.ts", "src/**/*.tsx")'),
|
|
@@ -14,22 +33,57 @@ export const glob = tool({
|
|
|
14
33
|
}),
|
|
15
34
|
execute: async ({ pattern, cwd }, { toolCallId }) => {
|
|
16
35
|
try {
|
|
36
|
+
const searchDir = cwd ?? process.cwd();
|
|
17
37
|
reportProgress(toolCallId, `Matching ${pattern}`);
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
38
|
+
// ripgrep flags:
|
|
39
|
+
// --files — list files instead of searching content
|
|
40
|
+
// --sortr=modified — sort by mtime, most recent first
|
|
41
|
+
// --hidden — include dotfiles like .eslintrc / .prettierrc
|
|
42
|
+
// --glob '!.git' — explicitly exclude the git metadata directory.
|
|
43
|
+
// .gitignore typically does NOT list .git/ (git
|
|
44
|
+
// manages it internally), so without this flag
|
|
45
|
+
// `--hidden` would happily walk into .git/objects
|
|
46
|
+
// and surface thousands of internal hash files.
|
|
47
|
+
// --glob <pattern> — user's glob filter (relative to search dir)
|
|
48
|
+
//
|
|
49
|
+
// Two patterns get special handling because they interact badly with
|
|
50
|
+
// ripgrep's whitelist-style --glob semantics:
|
|
51
|
+
//
|
|
52
|
+
// • Catch-all patterns ("**/*", "**", "*") get dropped: a
|
|
53
|
+
// `--glob "**/*"` is read as an explicit whitelist that overrides
|
|
54
|
+
// .gitignore, so the result includes node_modules / dist / etc.
|
|
55
|
+
// — typically tens of thousands of files of pure noise. We drop
|
|
56
|
+
// the user's --glob entirely so ripgrep's default file walk
|
|
57
|
+
// applies (which honors .gitignore).
|
|
58
|
+
const isCatchAll = /^(\*\*\/?\*?|\*)$/.test(pattern.trim());
|
|
59
|
+
const args = ['--files', '--sortr=modified', '--hidden', '--glob', '!.git'];
|
|
60
|
+
if (!isCatchAll) {
|
|
61
|
+
args.push('--glob', pattern);
|
|
62
|
+
}
|
|
63
|
+
const { stdout } = await execFileAsync(getRipgrepPath(), args, {
|
|
64
|
+
cwd: searchDir,
|
|
65
|
+
maxBuffer: RG_MAX_BUFFER,
|
|
66
|
+
timeout: 30000,
|
|
22
67
|
});
|
|
23
|
-
|
|
68
|
+
const out = stdout.trim();
|
|
69
|
+
if (!out)
|
|
24
70
|
return 'No files found matching the pattern.';
|
|
25
|
-
const
|
|
26
|
-
const
|
|
71
|
+
const relatives = out.split('\n');
|
|
72
|
+
const absolutes = relatives.map((p) => (path.isAbsolute(p) ? p : path.join(searchDir, p)));
|
|
73
|
+
const truncated = absolutes.length > MAX_GLOB_RESULTS;
|
|
74
|
+
const result = absolutes.slice(0, MAX_GLOB_RESULTS).join('\n');
|
|
27
75
|
if (truncated) {
|
|
28
|
-
return `${result}\n\n... [${
|
|
76
|
+
return `${result}\n\n... [${absolutes.length - MAX_GLOB_RESULTS} more files not shown — ${absolutes.length} total matches, capped at ${MAX_GLOB_RESULTS}. Use a more specific pattern to narrow results.]`;
|
|
29
77
|
}
|
|
30
78
|
return result;
|
|
31
79
|
}
|
|
32
80
|
catch (err) {
|
|
81
|
+
// ripgrep exits with code 1 when no files match — surface as empty
|
|
82
|
+
// result instead of an error so the model treats "no matches" as a
|
|
83
|
+
// normal outcome rather than a tool failure to retry.
|
|
84
|
+
if (err && typeof err === 'object' && 'code' in err && err.code === 1) {
|
|
85
|
+
return 'No files found matching the pattern.';
|
|
86
|
+
}
|
|
33
87
|
return formatToolError('searching files', err);
|
|
34
88
|
}
|
|
35
89
|
},
|
package/dist/tools/glob.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glob.js","sourceRoot":"","sources":["../../src/tools/glob.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"glob.js","sourceRoot":"","sources":["../../src/tools/glob.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/grep.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"AAkBA,eAAO,MAAM,IAAI;;;;;UAqDf,CAAA"}
|
package/dist/tools/grep.js
CHANGED
|
@@ -5,25 +5,11 @@ import { tool } from 'ai';
|
|
|
5
5
|
import { z } from 'zod';
|
|
6
6
|
import { formatToolError } from '../utils/tool-errors.js';
|
|
7
7
|
import { reportProgress } from './progress.js';
|
|
8
|
+
import { getRipgrepPath } from './utils.js';
|
|
8
9
|
const execFileAsync = promisify(execFile);
|
|
9
10
|
const DEFAULT_HEAD_LIMIT = 250;
|
|
10
11
|
const MAX_COLUMNS = 500;
|
|
11
12
|
const RG_MAX_BUFFER = 20 * 1024 * 1024;
|
|
12
|
-
let _rgPath = null;
|
|
13
|
-
function getRipgrepPath() {
|
|
14
|
-
if (_rgPath)
|
|
15
|
-
return _rgPath;
|
|
16
|
-
try {
|
|
17
|
-
// @vscode/ripgrep provides the binary path
|
|
18
|
-
// eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
19
|
-
const rg = require('@vscode/ripgrep');
|
|
20
|
-
_rgPath = rg.rgPath;
|
|
21
|
-
}
|
|
22
|
-
catch {
|
|
23
|
-
_rgPath = 'rg';
|
|
24
|
-
}
|
|
25
|
-
return _rgPath;
|
|
26
|
-
}
|
|
27
13
|
export const grep = tool({
|
|
28
14
|
description: `A powerful search tool built on ripgrep.
|
|
29
15
|
|
package/dist/tools/grep.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grep.js","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AAErC,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAA;AAEzB,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"grep.js","sourceRoot":"","sources":["../../src/tools/grep.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/index.d.ts
CHANGED
|
@@ -102,6 +102,6 @@ export declare const toolRegistry: {
|
|
|
102
102
|
}, never>;
|
|
103
103
|
};
|
|
104
104
|
export { readFile, writeFile, edit, shell, glob, grep, listDir, webSearch, webFetch, askUser, enterPlanMode, exitPlanMode, todoWrite, };
|
|
105
|
-
export { MAX_TOOL_RESULT_LINES, MAX_TOOL_RESULT_BYTES,
|
|
105
|
+
export { MAX_TOOL_RESULT_LINES, MAX_TOOL_RESULT_BYTES, truncateToolResult } from './truncate.js';
|
|
106
106
|
export type { TruncateOptions } from './truncate.js';
|
|
107
107
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAcxB,CAAA;AAED,OAAO,EACL,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,SAAS,EACT,QAAQ,EACR,OAAO,EACP,aAAa,EACb,YAAY,EACZ,SAAS,GACV,CAAA;AAED,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAcxB,CAAA;AAED,OAAO,EACL,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,SAAS,EACT,QAAQ,EACR,OAAO,EACP,aAAa,EACb,YAAY,EACZ,SAAS,GACV,CAAA;AAED,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAChG,YAAY,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA"}
|
package/dist/tools/index.js
CHANGED
|
@@ -37,5 +37,5 @@ export const toolRegistry = {
|
|
|
37
37
|
todoWrite,
|
|
38
38
|
};
|
|
39
39
|
export { readFile, writeFile, edit, shell, glob, grep, listDir, webSearch, webFetch, askUser, enterPlanMode, exitPlanMode, todoWrite, };
|
|
40
|
-
export { MAX_TOOL_RESULT_LINES, MAX_TOOL_RESULT_BYTES,
|
|
40
|
+
export { MAX_TOOL_RESULT_LINES, MAX_TOOL_RESULT_BYTES, truncateToolResult } from './truncate.js';
|
|
41
41
|
//# sourceMappingURL=index.js.map
|
package/dist/tools/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,EAAE;AACF,yEAAyE;AACzE,sEAAsE;AACtE,yEAAyE;AACzE,2EAA2E;AAC3E,2EAA2E;AAC3E,2EAA2E;AAC3E,qEAAqE;AACrE,mDAAmD;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,QAAQ;IACR,SAAS;IACT,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,IAAI;IACJ,OAAO;IACP,SAAS;IACT,QAAQ;IACR,OAAO;IACP,aAAa;IACb,YAAY;IACZ,SAAS;CACV,CAAA;AAED,OAAO,EACL,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,SAAS,EACT,QAAQ,EACR,OAAO,EACP,aAAa,EACb,YAAY,EACZ,SAAS,GACV,CAAA;AAED,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,EAAE;AACF,yEAAyE;AACzE,sEAAsE;AACtE,yEAAyE;AACzE,2EAA2E;AAC3E,2EAA2E;AAC3E,2EAA2E;AAC3E,qEAAqE;AACrE,mDAAmD;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,QAAQ;IACR,SAAS;IACT,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,IAAI;IACJ,OAAO;IACP,SAAS;IACT,QAAQ;IACR,OAAO;IACP,aAAa;IACb,YAAY;IACZ,SAAS;CACV,CAAA;AAED,OAAO,EACL,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,SAAS,EACT,QAAQ,EACR,OAAO,EACP,aAAa,EACb,YAAY,EACZ,SAAS,GACV,CAAA;AAED,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA"}
|
package/dist/tools/truncate.d.ts
CHANGED
|
@@ -6,10 +6,6 @@ export declare const MAX_TOOL_RESULT_LINES = 2000;
|
|
|
6
6
|
export declare const MAX_TOOL_RESULT_BYTES: number;
|
|
7
7
|
/** Head:tail ratio when slicing. 0.2 keeps the first 20% + last 80%. */
|
|
8
8
|
export declare const DEFAULT_HEAD_RATIO = 0.2;
|
|
9
|
-
/** Per-turn aggregate cap across all tool results in one assistant message.
|
|
10
|
-
* Not enforced yet — tracked via agent loop state for future telemetry and
|
|
11
|
-
* eventual reactive compaction (mirrors claude-code's 200k-char ceiling). */
|
|
12
|
-
export declare const MAX_AGGREGATE_TOOL_RESULT_BYTES: number;
|
|
13
9
|
export interface TruncateOptions {
|
|
14
10
|
/** Max lines before truncation kicks in. Default {@link MAX_TOOL_RESULT_LINES}. */
|
|
15
11
|
maxLines?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"truncate.d.ts","sourceRoot":"","sources":["../../src/tools/truncate.ts"],"names":[],"mappings":"AAeA,yEAAyE;AACzE,eAAO,MAAM,qBAAqB,OAAO,CAAA;AAEzC;;iCAEiC;AACjC,eAAO,MAAM,qBAAqB,QAAY,CAAA;AAE9C,wEAAwE;AACxE,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAErC
|
|
1
|
+
{"version":3,"file":"truncate.d.ts","sourceRoot":"","sources":["../../src/tools/truncate.ts"],"names":[],"mappings":"AAeA,yEAAyE;AACzE,eAAO,MAAM,qBAAqB,OAAO,CAAA;AAEzC;;iCAEiC;AACjC,eAAO,MAAM,qBAAqB,QAAY,CAAA;AAE9C,wEAAwE;AACxE,eAAO,MAAM,kBAAkB,MAAM,CAAA;AAErC,MAAM,WAAW,eAAe;IAC9B,mFAAmF;IACnF,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,WAAW,GAAG,MAAM,GAAG,MAAM,CAAA;IACzC,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AA6ED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,eAAoB,GAAG,MAAM,CAgCxF"}
|
package/dist/tools/truncate.js
CHANGED
|
@@ -20,10 +20,6 @@ export const MAX_TOOL_RESULT_LINES = 2000;
|
|
|
20
20
|
export const MAX_TOOL_RESULT_BYTES = 50 * 1024;
|
|
21
21
|
/** Head:tail ratio when slicing. 0.2 keeps the first 20% + last 80%. */
|
|
22
22
|
export const DEFAULT_HEAD_RATIO = 0.2;
|
|
23
|
-
/** Per-turn aggregate cap across all tool results in one assistant message.
|
|
24
|
-
* Not enforced yet — tracked via agent loop state for future telemetry and
|
|
25
|
-
* eventual reactive compaction (mirrors claude-code's 200k-char ceiling). */
|
|
26
|
-
export const MAX_AGGREGATE_TOOL_RESULT_BYTES = 200 * 1024;
|
|
27
23
|
function byteLength(str) {
|
|
28
24
|
return Buffer.byteLength(str, 'utf-8');
|
|
29
25
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"truncate.js","sourceRoot":"","sources":["../../src/tools/truncate.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,EAAE;AACF,2EAA2E;AAC3E,+EAA+E;AAC/E,4EAA4E;AAC5E,yEAAyE;AACzE,wEAAwE;AACxE,WAAW;AACX,EAAE;AACF,8EAA8E;AAC9E,4EAA4E;AAC5E,yEAAyE;AACzE,2EAA2E;AAC3E,0EAA0E;AAE1E,yEAAyE;AACzE,MAAM,CAAC,MAAM,qBAAqB,GAAG,IAAI,CAAA;AAEzC;;iCAEiC;AACjC,MAAM,CAAC,MAAM,qBAAqB,GAAG,EAAE,GAAG,IAAI,CAAA;AAE9C,wEAAwE;AACxE,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAA;
|
|
1
|
+
{"version":3,"file":"truncate.js","sourceRoot":"","sources":["../../src/tools/truncate.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** Resolve the path to the ripgrep binary used by the `glob` and `grep`
|
|
2
|
+
* tools. Prefers @vscode/ripgrep (which ships a prebuilt binary per
|
|
3
|
+
* platform) and falls back to `rg` from PATH so dev machines with a
|
|
4
|
+
* system-wide ripgrep install still work even if the package's
|
|
5
|
+
* postinstall failed. */
|
|
6
|
+
export declare function getRipgrepPath(): string;
|
|
7
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/tools/utils.ts"],"names":[],"mappings":"AAwBA;;;;0BAI0B;AAC1B,wBAAgB,cAAc,IAAI,MAAM,CASvC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// @x-code-cli/core — small helpers shared across tool implementations.
|
|
2
|
+
//
|
|
3
|
+
// Each file in this directory whose name corresponds to a tool (glob.ts,
|
|
4
|
+
// grep.ts, shell.ts, ...) defines exactly one tool. Larger pieces of
|
|
5
|
+
// shared infrastructure get their own named module (progress.ts for the
|
|
6
|
+
// progress reporter registry, shell-provider.ts for cross-platform shell
|
|
7
|
+
// dispatch, truncate.ts for tool-result size limits). This file is for
|
|
8
|
+
// the small leftovers — single-function helpers that more than one tool
|
|
9
|
+
// uses but that don't justify a dedicated module.
|
|
10
|
+
//
|
|
11
|
+
// Keep it focused: prefer adding a small helper here over creating a new
|
|
12
|
+
// per-helper file under tools/.
|
|
13
|
+
import { createRequire } from 'node:module';
|
|
14
|
+
// `@x-code-cli/core` is an ESM package (`"type": "module"`), so the
|
|
15
|
+
// global `require` is not defined at runtime. We need `createRequire` to
|
|
16
|
+
// load CJS-only modules like `@vscode/ripgrep`, which exposes the binary
|
|
17
|
+
// path through `module.exports.rgPath` (no ESM build available).
|
|
18
|
+
const _require = createRequire(import.meta.url);
|
|
19
|
+
/** Cached path to the ripgrep binary. Resolved lazily on first use,
|
|
20
|
+
* reused for the rest of the process. */
|
|
21
|
+
let _rgPath = null;
|
|
22
|
+
/** Resolve the path to the ripgrep binary used by the `glob` and `grep`
|
|
23
|
+
* tools. Prefers @vscode/ripgrep (which ships a prebuilt binary per
|
|
24
|
+
* platform) and falls back to `rg` from PATH so dev machines with a
|
|
25
|
+
* system-wide ripgrep install still work even if the package's
|
|
26
|
+
* postinstall failed. */
|
|
27
|
+
export function getRipgrepPath() {
|
|
28
|
+
if (_rgPath)
|
|
29
|
+
return _rgPath;
|
|
30
|
+
try {
|
|
31
|
+
const rg = _require('@vscode/ripgrep');
|
|
32
|
+
_rgPath = rg.rgPath;
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
_rgPath = 'rg';
|
|
36
|
+
}
|
|
37
|
+
return _rgPath;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/tools/utils.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,EAAE;AACF,yEAAyE;AACzE,qEAAqE;AACrE,wEAAwE;AACxE,yEAAyE;AACzE,uEAAuE;AACvE,wEAAwE;AACxE,kDAAkD;AAClD,EAAE;AACF,yEAAyE;AACzE,gCAAgC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAE3C,oEAAoE;AACpE,yEAAyE;AACzE,yEAAyE;AACzE,iEAAiE;AACjE,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AAE/C;0CAC0C;AAC1C,IAAI,OAAO,GAAkB,IAAI,CAAA;AAEjC;;;;0BAI0B;AAC1B,MAAM,UAAU,cAAc;IAC5B,IAAI,OAAO;QAAE,OAAO,OAAO,CAAA;IAC3B,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,QAAQ,CAAC,iBAAiB,CAAuB,CAAA;QAC5D,OAAO,GAAG,EAAE,CAAC,MAAM,CAAA;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,IAAI,CAAA;IAChB,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -20,10 +20,7 @@ export type PermissionLevel = 'always-allow' | 'ask' | 'deny';
|
|
|
20
20
|
* the user already vetted the plan, having to click
|
|
21
21
|
* "Yes" on every writeFile during implementation is
|
|
22
22
|
* pure friction. exitPlanMode auto-switches into this
|
|
23
|
-
* mode on approval
|
|
24
|
-
* manually via Shift+Tab cycling.
|
|
25
|
-
*
|
|
26
|
-
* Cycling order on Shift+Tab: default → acceptEdits → plan → default. */
|
|
23
|
+
* mode on approval. */
|
|
27
24
|
export type PermissionMode = 'default' | 'acceptEdits' | 'plan';
|
|
28
25
|
/** A single entry on the model's working checklist.
|
|
29
26
|
*
|
|
@@ -232,14 +229,14 @@ export interface SessionSummary {
|
|
|
232
229
|
}
|
|
233
230
|
export declare const MODEL_ALIASES: Record<string, string>;
|
|
234
231
|
export declare const PROVIDER_DETECTION_ORDER: readonly [{
|
|
232
|
+
readonly envKey: "DEEPSEEK_API_KEY";
|
|
233
|
+
readonly defaultModel: "deepseek:deepseek-v4-flash";
|
|
234
|
+
}, {
|
|
235
235
|
readonly envKey: "ANTHROPIC_API_KEY";
|
|
236
236
|
readonly defaultModel: "anthropic:claude-sonnet-4-6";
|
|
237
237
|
}, {
|
|
238
238
|
readonly envKey: "OPENAI_API_KEY";
|
|
239
239
|
readonly defaultModel: "openai:gpt-4.1";
|
|
240
|
-
}, {
|
|
241
|
-
readonly envKey: "DEEPSEEK_API_KEY";
|
|
242
|
-
readonly defaultModel: "deepseek:deepseek-v4-flash";
|
|
243
240
|
}, {
|
|
244
241
|
readonly envKey: "ALIBABA_API_KEY";
|
|
245
242
|
readonly defaultModel: "alibaba:qwen-max";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAErD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAIjE,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,KAAK,GAAG,MAAM,CAAA;AAE7D
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.js
CHANGED
|
@@ -13,9 +13,9 @@ export const MODEL_ALIASES = {
|
|
|
13
13
|
};
|
|
14
14
|
// ─── Provider detection order (for smart defaults) ───
|
|
15
15
|
export const PROVIDER_DETECTION_ORDER = [
|
|
16
|
+
{ envKey: 'DEEPSEEK_API_KEY', defaultModel: 'deepseek:deepseek-v4-flash' },
|
|
16
17
|
{ envKey: 'ANTHROPIC_API_KEY', defaultModel: 'anthropic:claude-sonnet-4-6' },
|
|
17
18
|
{ envKey: 'OPENAI_API_KEY', defaultModel: 'openai:gpt-4.1' },
|
|
18
|
-
{ envKey: 'DEEPSEEK_API_KEY', defaultModel: 'deepseek:deepseek-v4-flash' },
|
|
19
19
|
{ envKey: 'ALIBABA_API_KEY', defaultModel: 'alibaba:qwen-max' },
|
|
20
20
|
{ envKey: 'GOOGLE_GENERATIVE_AI_API_KEY', defaultModel: 'google:gemini-2.5-pro' },
|
|
21
21
|
{ envKey: 'XAI_API_KEY', defaultModel: 'xai:grok-3' },
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@x-code-cli/core",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.5",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/woai3c/x-code-cli",
|
|
@@ -36,7 +36,6 @@
|
|
|
36
36
|
"diff": "^8.0.0",
|
|
37
37
|
"execa": "^9.0.0",
|
|
38
38
|
"file-type": "^22.0.1",
|
|
39
|
-
"globby": "^14.0.0",
|
|
40
39
|
"mammoth": "^1.12.0",
|
|
41
40
|
"officeparser": "^6.1.0",
|
|
42
41
|
"pdf-parse": "^2.4.5",
|