erosolar-cli 1.7.77 → 1.7.79

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.
@@ -1 +1 @@
1
- {"version":3,"file":"filesystemCapability.d.ts","sourceRoot":"","sources":["../../src/capabilities/filesystemCapability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG3G,MAAM,WAAW,2BAA2B;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,0BAA2B,YAAW,gBAAgB;IACjE,QAAQ,CAAC,EAAE,2BAA2B;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;gBAE1C,OAAO,GAAE,2BAAgC;IAI/C,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAe1E"}
1
+ {"version":3,"file":"filesystemCapability.d.ts","sourceRoot":"","sources":["../../src/capabilities/filesystemCapability.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAI3G,MAAM,WAAW,2BAA2B;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,0BAA2B,YAAW,gBAAgB;IACjE,QAAQ,CAAC,EAAE,2BAA2B;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;gBAE1C,OAAO,GAAE,2BAAgC;IAI/C,MAAM,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAe1E"}
@@ -1,4 +1,5 @@
1
1
  import { createFileTools } from '../tools/fileTools.js';
2
+ import { createExploreTools } from '../tools/exploreTools.js';
2
3
  export class FilesystemCapabilityModule {
3
4
  id = 'capability.filesystem';
4
5
  options;
@@ -13,7 +14,7 @@ export class FilesystemCapabilityModule {
13
14
  toolSuite: {
14
15
  id: 'fs',
15
16
  description: 'File operations',
16
- tools: createFileTools(workingDir),
17
+ tools: [...createFileTools(workingDir), ...createExploreTools(workingDir)],
17
18
  },
18
19
  metadata: {
19
20
  workingDir,
@@ -1 +1 @@
1
- {"version":3,"file":"filesystemCapability.js","sourceRoot":"","sources":["../../src/capabilities/filesystemCapability.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAQxD,MAAM,OAAO,0BAA0B;IAC5B,EAAE,GAAG,uBAAuB,CAAC;IACrB,OAAO,CAA8B;IAEtD,YAAY,UAAuC,EAAE;QACnD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA0B;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;QACjE,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,wBAAwB;YAC/C,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,6DAA6D;YACtG,SAAS,EAAE;gBACT,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,iBAAiB;gBAC9B,KAAK,EAAE,eAAe,CAAC,UAAU,CAAC;aACnC;YACD,QAAQ,EAAE;gBACR,UAAU;aACX;SACF,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"filesystemCapability.js","sourceRoot":"","sources":["../../src/capabilities/filesystemCapability.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAQ9D,MAAM,OAAO,0BAA0B;IAC5B,EAAE,GAAG,uBAAuB,CAAC;IACrB,OAAO,CAA8B;IAEtD,YAAY,UAAuC,EAAE;QACnD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAA0B;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC;QACjE,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,wBAAwB;YAC/C,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,6DAA6D;YACtG,SAAS,EAAE;gBACT,EAAE,EAAE,IAAI;gBACR,WAAW,EAAE,iBAAiB;gBAC9B,KAAK,EAAE,CAAC,GAAG,eAAe,CAAC,UAAU,CAAC,EAAE,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;aAC3E;YACD,QAAQ,EAAE;gBACR,UAAU;aACX;SACF,CAAC;IACJ,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"systemPrompt.d.ts","sourceRoot":"","sources":["../../src/shell/systemPrompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,sBAAsB,EAAE,EAC/B,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,CAkBR"}
1
+ {"version":3,"file":"systemPrompt.d.ts","sourceRoot":"","sources":["../../src/shell/systemPrompt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE/D,wBAAgB,4BAA4B,CAC1C,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,sBAAsB,EAAE,EAC/B,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,CAmBR"}
@@ -10,10 +10,11 @@ Tools: ${toolNames}
10
10
 
11
11
  RULES:
12
12
  - Act immediately. No preamble.
13
+ - For "what is this repo/project" questions: use 'explore' tool ONCE with depth=quick, then answer. Do NOT read additional files unless specifically asked.
13
14
  - Scale effort to task complexity:
14
- Simple questions (what is this repo?) 1-2 tool calls, stop when answered
15
- • Code changes → read relevant files, implement thoroughly, verify
16
- • Complex tasks → explore as needed, plan if necessary, execute completely
15
+ Info questions → ONE explore call, then respond
16
+ • Code changes → read relevant files, implement thoroughly
17
+ • Complex tasks → explore first, then targeted reads
17
18
  - Read before edit, combine commands`;
18
19
  }
19
20
  //# sourceMappingURL=systemPrompt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"systemPrompt.js","sourceRoot":"","sources":["../../src/shell/systemPrompt.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,4BAA4B,CAC1C,UAAkB,EAClB,YAAoB,EACpB,KAA+B,EAC/B,YAAqB;IAErB,MAAM,IAAI,GAAG,YAAY,IAAI,OAAO,CAAC;IACrC,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,YAAY,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAEhD,0EAA0E;IAC1E,OAAO,GAAG,UAAU;;UAEZ,IAAI,gBAAgB,SAAS;SAC9B,SAAS;;;;;;;;qCAQmB,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"systemPrompt.js","sourceRoot":"","sources":["../../src/shell/systemPrompt.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,4BAA4B,CAC1C,UAAkB,EAClB,YAAoB,EACpB,KAA+B,EAC/B,YAAqB;IAErB,MAAM,IAAI,GAAG,YAAY,IAAI,OAAO,CAAC;IACrC,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,YAAY,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAEhD,0EAA0E;IAC1E,OAAO,GAAG,UAAU;;UAEZ,IAAI,gBAAgB,SAAS;SAC9B,SAAS;;;;;;;;;qCASmB,CAAC;AACtC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { ToolDefinition } from '../core/toolRuntime.js';
2
+ /**
3
+ * Creates an Explore tool for efficient codebase discovery.
4
+ * Single tool call to understand a repo's structure, purpose, and key files.
5
+ */
6
+ export declare function createExploreTools(workingDir: string): ToolDefinition[];
7
+ //# sourceMappingURL=exploreTools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exploreTools.d.ts","sourceRoot":"","sources":["../../src/tools/exploreTools.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE7D;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,cAAc,EAAE,CAsEvE"}
@@ -0,0 +1,344 @@
1
+ import { readFileSync, readdirSync, statSync, existsSync } from 'node:fs';
2
+ import { join, relative, extname } from 'node:path';
3
+ /**
4
+ * Creates an Explore tool for efficient codebase discovery.
5
+ * Single tool call to understand a repo's structure, purpose, and key files.
6
+ */
7
+ export function createExploreTools(workingDir) {
8
+ return [
9
+ {
10
+ name: 'explore',
11
+ description: 'Efficiently gather codebase context in ONE call. Returns README, package info, structure, and entry points. Use for "what is this repo" questions instead of multiple read_file calls.',
12
+ parameters: {
13
+ type: 'object',
14
+ properties: {
15
+ question: {
16
+ type: 'string',
17
+ description: 'What you want to understand (e.g., "what does this repo do", "find auth code", "how is the API structured")',
18
+ },
19
+ depth: {
20
+ type: 'string',
21
+ enum: ['quick', 'normal', 'deep'],
22
+ description: 'quick: README + package only (~500 tokens). normal: + structure + entry points (~1500 tokens). deep: + code samples (~3000 tokens).',
23
+ },
24
+ },
25
+ additionalProperties: false,
26
+ },
27
+ handler: async (args) => {
28
+ const depth = normalizeDepth(args['depth']);
29
+ const question = typeof args['question'] === 'string' ? args['question'].toLowerCase() : '';
30
+ // Determine focus from question
31
+ const focus = extractFocusFromQuestion(question);
32
+ const sections = [];
33
+ // Always include README summary (truncated based on depth)
34
+ const readmeLimit = depth === 'quick' ? 800 : depth === 'normal' ? 1200 : 2000;
35
+ const readme = findAndSummarizeReadme(workingDir, readmeLimit);
36
+ if (readme) {
37
+ sections.push(`## README\n${readme}`);
38
+ }
39
+ // Always include package info
40
+ const pkgInfo = getPackageInfo(workingDir);
41
+ if (pkgInfo) {
42
+ sections.push(`## Package\n${pkgInfo}`);
43
+ }
44
+ // Normal and deep: add structure
45
+ if (depth !== 'quick') {
46
+ const structure = getDirectoryStructure(workingDir, focus);
47
+ sections.push(`## Structure\n${structure}`);
48
+ // Find entry points
49
+ const entryPoints = findEntryPoints(workingDir);
50
+ if (entryPoints.length > 0) {
51
+ sections.push(`## Entry Points\n${entryPoints.join('\n')}`);
52
+ }
53
+ }
54
+ // Deep: add code samples
55
+ if (depth === 'deep') {
56
+ const samples = getCodeSamples(workingDir, focus);
57
+ if (samples) {
58
+ sections.push(`## Code Samples\n${samples}`);
59
+ }
60
+ }
61
+ if (sections.length === 0) {
62
+ return 'No information found. This may not be a standard code repository.';
63
+ }
64
+ return sections.join('\n\n');
65
+ },
66
+ },
67
+ ];
68
+ }
69
+ /**
70
+ * Extract focus area from natural language question
71
+ */
72
+ function extractFocusFromQuestion(question) {
73
+ const focusPatterns = [
74
+ [/\b(auth|authentication|login|session)\b/i, 'auth'],
75
+ [/\b(api|endpoint|route|server)\b/i, 'api'],
76
+ [/\b(test|spec|jest|vitest)\b/i, 'test'],
77
+ [/\b(config|setting|env)\b/i, 'config'],
78
+ [/\b(ui|component|react|vue|frontend)\b/i, 'component'],
79
+ [/\b(database|db|model|schema|prisma|sequelize)\b/i, 'model'],
80
+ [/\b(util|helper|lib)\b/i, 'util'],
81
+ ];
82
+ for (const [pattern, focus] of focusPatterns) {
83
+ if (pattern.test(question)) {
84
+ return focus;
85
+ }
86
+ }
87
+ return undefined;
88
+ }
89
+ function normalizeDepth(value) {
90
+ if (value === 'quick' || value === 'deep') {
91
+ return value;
92
+ }
93
+ return 'normal';
94
+ }
95
+ function findAndSummarizeReadme(dir, maxChars = 1500) {
96
+ const readmeNames = ['README.md', 'readme.md', 'README', 'README.txt', 'README.rst'];
97
+ for (const name of readmeNames) {
98
+ const path = join(dir, name);
99
+ if (existsSync(path)) {
100
+ try {
101
+ const content = readFileSync(path, 'utf-8');
102
+ const summary = content.slice(0, maxChars);
103
+ return summary.length < content.length ? summary + '\n...(truncated)' : summary;
104
+ }
105
+ catch {
106
+ return null;
107
+ }
108
+ }
109
+ }
110
+ return null;
111
+ }
112
+ function getPackageInfo(dir) {
113
+ const packagePath = join(dir, 'package.json');
114
+ if (!existsSync(packagePath)) {
115
+ // Try pyproject.toml, Cargo.toml, go.mod
116
+ return getAlternativePackageInfo(dir);
117
+ }
118
+ try {
119
+ const pkg = JSON.parse(readFileSync(packagePath, 'utf-8'));
120
+ const lines = [];
121
+ if (pkg.name)
122
+ lines.push(`Name: ${pkg.name}`);
123
+ if (pkg.version)
124
+ lines.push(`Version: ${pkg.version}`);
125
+ if (pkg.description)
126
+ lines.push(`Description: ${pkg.description}`);
127
+ if (pkg.scripts) {
128
+ const scripts = Object.keys(pkg.scripts).slice(0, 8);
129
+ lines.push(`Scripts: ${scripts.join(', ')}`);
130
+ }
131
+ if (pkg.dependencies) {
132
+ const deps = Object.keys(pkg.dependencies).slice(0, 10);
133
+ lines.push(`Dependencies: ${deps.join(', ')}${Object.keys(pkg.dependencies).length > 10 ? '...' : ''}`);
134
+ }
135
+ return lines.join('\n');
136
+ }
137
+ catch {
138
+ return null;
139
+ }
140
+ }
141
+ function getAlternativePackageInfo(dir) {
142
+ // Python
143
+ const pyproject = join(dir, 'pyproject.toml');
144
+ if (existsSync(pyproject)) {
145
+ try {
146
+ const content = readFileSync(pyproject, 'utf-8');
147
+ const nameMatch = content.match(/name\s*=\s*"([^"]+)"/);
148
+ const versionMatch = content.match(/version\s*=\s*"([^"]+)"/);
149
+ const lines = ['Type: Python project'];
150
+ if (nameMatch)
151
+ lines.push(`Name: ${nameMatch[1]}`);
152
+ if (versionMatch)
153
+ lines.push(`Version: ${versionMatch[1]}`);
154
+ return lines.join('\n');
155
+ }
156
+ catch {
157
+ return null;
158
+ }
159
+ }
160
+ // Rust
161
+ const cargoToml = join(dir, 'Cargo.toml');
162
+ if (existsSync(cargoToml)) {
163
+ try {
164
+ const content = readFileSync(cargoToml, 'utf-8');
165
+ const nameMatch = content.match(/name\s*=\s*"([^"]+)"/);
166
+ return `Type: Rust project${nameMatch ? `\nName: ${nameMatch[1]}` : ''}`;
167
+ }
168
+ catch {
169
+ return null;
170
+ }
171
+ }
172
+ // Go
173
+ const goMod = join(dir, 'go.mod');
174
+ if (existsSync(goMod)) {
175
+ try {
176
+ const content = readFileSync(goMod, 'utf-8');
177
+ const moduleMatch = content.match(/module\s+(\S+)/);
178
+ return `Type: Go project${moduleMatch ? `\nModule: ${moduleMatch[1]}` : ''}`;
179
+ }
180
+ catch {
181
+ return null;
182
+ }
183
+ }
184
+ return null;
185
+ }
186
+ function getDirectoryStructure(dir, focus) {
187
+ const ignored = new Set(['.git', 'node_modules', 'dist', '.next', 'build', 'coverage', '__pycache__', '.venv', 'venv', 'target']);
188
+ const lines = [];
189
+ const maxEntries = 50;
190
+ let count = 0;
191
+ function walk(currentDir, depth, prefix) {
192
+ if (depth > 3 || count >= maxEntries)
193
+ return;
194
+ try {
195
+ const entries = readdirSync(currentDir, { withFileTypes: true })
196
+ .filter(e => !ignored.has(e.name) && !e.name.startsWith('.'))
197
+ .sort((a, b) => {
198
+ // Directories first
199
+ if (a.isDirectory() && !b.isDirectory())
200
+ return -1;
201
+ if (!a.isDirectory() && b.isDirectory())
202
+ return 1;
203
+ return a.name.localeCompare(b.name);
204
+ });
205
+ for (const entry of entries) {
206
+ if (count >= maxEntries) {
207
+ lines.push(`${prefix}... (truncated)`);
208
+ return;
209
+ }
210
+ const fullPath = join(currentDir, entry.name);
211
+ const relPath = relative(dir, fullPath);
212
+ // Focus filter
213
+ if (focus && !relPath.toLowerCase().includes(focus) && !entry.name.toLowerCase().includes(focus)) {
214
+ if (entry.isDirectory()) {
215
+ // Still walk into directories to find focused content
216
+ walk(fullPath, depth + 1, prefix + ' ');
217
+ }
218
+ continue;
219
+ }
220
+ count++;
221
+ if (entry.isDirectory()) {
222
+ lines.push(`${prefix}${entry.name}/`);
223
+ walk(fullPath, depth + 1, prefix + ' ');
224
+ }
225
+ else {
226
+ const stats = statSync(fullPath);
227
+ const size = formatSize(stats.size);
228
+ lines.push(`${prefix}${entry.name} (${size})`);
229
+ }
230
+ }
231
+ }
232
+ catch {
233
+ // Ignore errors
234
+ }
235
+ }
236
+ walk(dir, 0, '');
237
+ return lines.length > 0 ? lines.join('\n') : '(empty or no accessible files)';
238
+ }
239
+ function findEntryPoints(dir) {
240
+ const entryPoints = [];
241
+ // Check package.json for main/bin
242
+ const packagePath = join(dir, 'package.json');
243
+ if (existsSync(packagePath)) {
244
+ try {
245
+ const pkg = JSON.parse(readFileSync(packagePath, 'utf-8'));
246
+ if (pkg.main)
247
+ entryPoints.push(`main: ${pkg.main}`);
248
+ if (pkg.bin) {
249
+ if (typeof pkg.bin === 'string') {
250
+ entryPoints.push(`bin: ${pkg.bin}`);
251
+ }
252
+ else {
253
+ entryPoints.push(`bin: ${Object.values(pkg.bin).slice(0, 3).join(', ')}`);
254
+ }
255
+ }
256
+ }
257
+ catch {
258
+ // Ignore
259
+ }
260
+ }
261
+ // Look for common entry files
262
+ const commonEntries = [
263
+ 'src/index.ts', 'src/index.js', 'src/main.ts', 'src/main.js',
264
+ 'index.ts', 'index.js', 'main.ts', 'main.js',
265
+ 'src/app.ts', 'src/app.js', 'app.ts', 'app.js',
266
+ 'src/bin/cli.ts', 'src/bin/cli.js', 'bin/cli.ts', 'bin/cli.js',
267
+ 'lib/index.ts', 'lib/index.js',
268
+ ];
269
+ for (const entry of commonEntries) {
270
+ if (existsSync(join(dir, entry))) {
271
+ entryPoints.push(`file: ${entry}`);
272
+ }
273
+ }
274
+ return [...new Set(entryPoints)].slice(0, 5);
275
+ }
276
+ function getCodeSamples(dir, focus) {
277
+ const samples = [];
278
+ const codeExtensions = new Set(['.ts', '.js', '.tsx', '.jsx', '.py', '.go', '.rs']);
279
+ // Find key files to sample
280
+ const targetFiles = [];
281
+ // Focus-specific or entry point files
282
+ if (focus) {
283
+ findFilesWithPattern(dir, focus, codeExtensions, targetFiles, 3);
284
+ }
285
+ // Always try to include main entry
286
+ const mainFiles = ['src/index.ts', 'src/main.ts', 'index.ts', 'main.ts', 'src/index.js'];
287
+ for (const f of mainFiles) {
288
+ const path = join(dir, f);
289
+ if (existsSync(path) && !targetFiles.includes(path)) {
290
+ targetFiles.push(path);
291
+ break;
292
+ }
293
+ }
294
+ // Sample each file
295
+ for (const file of targetFiles.slice(0, 2)) {
296
+ try {
297
+ const content = readFileSync(file, 'utf-8');
298
+ const lines = content.split('\n').slice(0, 30); // First 30 lines
299
+ const relPath = relative(dir, file);
300
+ samples.push(`### ${relPath}\n\`\`\`\n${lines.join('\n')}\n\`\`\``);
301
+ }
302
+ catch {
303
+ // Ignore
304
+ }
305
+ }
306
+ return samples.length > 0 ? samples.join('\n\n') : null;
307
+ }
308
+ function findFilesWithPattern(dir, pattern, extensions, results, max) {
309
+ const ignored = new Set(['.git', 'node_modules', 'dist', '.next', 'build', 'coverage']);
310
+ function walk(currentDir, depth) {
311
+ if (depth > 4 || results.length >= max)
312
+ return;
313
+ try {
314
+ const entries = readdirSync(currentDir, { withFileTypes: true });
315
+ for (const entry of entries) {
316
+ if (ignored.has(entry.name))
317
+ continue;
318
+ if (results.length >= max)
319
+ return;
320
+ const fullPath = join(currentDir, entry.name);
321
+ if (entry.isDirectory()) {
322
+ walk(fullPath, depth + 1);
323
+ }
324
+ else if (extensions.has(extname(entry.name)) &&
325
+ (entry.name.toLowerCase().includes(pattern) ||
326
+ relative(dir, fullPath).toLowerCase().includes(pattern))) {
327
+ results.push(fullPath);
328
+ }
329
+ }
330
+ }
331
+ catch {
332
+ // Ignore
333
+ }
334
+ }
335
+ walk(dir, 0);
336
+ }
337
+ function formatSize(bytes) {
338
+ if (bytes < 1024)
339
+ return `${bytes}B`;
340
+ if (bytes < 1024 * 1024)
341
+ return `${(bytes / 1024).toFixed(1)}KB`;
342
+ return `${(bytes / (1024 * 1024)).toFixed(1)}MB`;
343
+ }
344
+ //# sourceMappingURL=exploreTools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exploreTools.js","sourceRoot":"","sources":["../../src/tools/exploreTools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "erosolar-cli",
3
- "version": "1.7.77",
3
+ "version": "1.7.79",
4
4
  "description": "Unified AI agent framework for the command line - Multi-provider support with schema-driven tools, code intelligence, and transparent reasoning",
5
5
  "main": "dist/bin/erosolar.js",
6
6
  "type": "module",