fluxflow-cli 1.18.22 → 1.18.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/fluxflow.js +9 -4
  2. package/package.json +1 -1
package/dist/fluxflow.js CHANGED
@@ -4300,6 +4300,7 @@ var init_search_keyword = __esm({
4300
4300
  if (!keyword) return 'ERROR: Missing "keyword" argument.';
4301
4301
  const isWindows = process.platform === "win32";
4302
4302
  const excludes = ["node_modules", ".git", "dist", ".next", ".gemini"];
4303
+ const currentFolder = path13.basename(process.cwd());
4303
4304
  let command = "";
4304
4305
  if (file) {
4305
4306
  if (isWindows) {
@@ -4310,7 +4311,7 @@ var init_search_keyword = __esm({
4310
4311
  } else {
4311
4312
  if (isWindows) {
4312
4313
  const excludePattern = excludes.join("|").replace(/\./g, "\\.");
4313
- command = `powershell -NoProfile -Command "Get-ChildItem -Path . -Recurse -File -ErrorAction SilentlyContinue | Where-Object { ($_.FullName -replace [regex]::Escape($pwd.Path), '') -notmatch '${excludePattern}' } | Select-String -Pattern '${keyword}' -ErrorAction SilentlyContinue | Select-Object -First 150 | ForEach-Object { '{0}|{1}' -f $_.Path, $_.LineNumber }"`;
4314
+ command = `powershell -NoProfile -Command "Get-ChildItem -Path . -Recurse -File -ErrorAction SilentlyContinue | Where-Object { $_.FullName -notmatch '${currentFolder}.*\\\\(${excludePattern})' } | Select-String -Pattern '${keyword}' -ErrorAction SilentlyContinue | Select-Object -First 150 | ForEach-Object { '{0}|{1}' -f $_.Path, $_.LineNumber }"`;
4314
4315
  } else {
4315
4316
  const excludeDirArgs = excludes.map((d) => `--exclude-dir="${d}"`).join(" ");
4316
4317
  command = `grep -rnI ${excludeDirArgs} "${keyword}" . | head -n 150`;
@@ -4366,8 +4367,12 @@ var init_search_keyword = __esm({
4366
4367
  lineNum = lineNum;
4367
4368
  }
4368
4369
  if (!filePath || !lineNum) return null;
4369
- const lowerPath = filePath.toLowerCase();
4370
- const isNoise = excludes.some((ex) => lowerPath.split("/").includes(ex.toLowerCase()));
4370
+ const absoluteFilePath = path13.resolve(process.cwd(), filePath).toLowerCase().replace(/\\/g, "/");
4371
+ const pathSegments = absoluteFilePath.split("/");
4372
+ const currentFolderLower = currentFolder.toLowerCase();
4373
+ const folderIndex = pathSegments.lastIndexOf(currentFolderLower);
4374
+ const relativeSegments = folderIndex !== -1 ? pathSegments.slice(folderIndex + 1) : pathSegments;
4375
+ const isNoise = excludes.some((ex) => relativeSegments.includes(ex.toLowerCase()));
4371
4376
  if (isNoise) return null;
4372
4377
  return `${filePath} ${lineNum}`;
4373
4378
  }).filter(Boolean);
@@ -4376,7 +4381,7 @@ var init_search_keyword = __esm({
4376
4381
 
4377
4382
  `;
4378
4383
  output += matches.join("\n");
4379
- if (matches.length > 150) {
4384
+ if (matches.length >= 150) {
4380
4385
  output += "\n\n... (Truncated to first 150 matches)";
4381
4386
  }
4382
4387
  resolve(output);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fluxflow-cli",
3
- "version": "1.18.22",
3
+ "version": "1.18.23",
4
4
  "date": "2026-06-02",
5
5
  "description": "A high-fidelity agentic terminal assistant for the Flux Era.",
6
6
  "keywords": [