fluxflow-cli 1.18.21 → 1.18.22

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 +17 -16
  2. package/package.json +1 -1
package/dist/fluxflow.js CHANGED
@@ -4310,7 +4310,7 @@ var init_search_keyword = __esm({
4310
4310
  } else {
4311
4311
  if (isWindows) {
4312
4312
  const excludePattern = excludes.join("|").replace(/\./g, "\\.");
4313
- command = `powershell -NoProfile -Command "Get-ChildItem -Path . -Recurse -File -ErrorAction SilentlyContinue | Where-Object { $_.FullName -notmatch '${excludePattern}' } | Select-String -Pattern '${keyword}' -ErrorAction SilentlyContinue | Select-Object -First 150 | ForEach-Object { '{0}|{1}' -f $_.Path, $_.LineNumber }"`;
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
4314
  } else {
4315
4315
  const excludeDirArgs = excludes.map((d) => `--exclude-dir="${d}"`).join(" ");
4316
4316
  command = `grep -rnI ${excludeDirArgs} "${keyword}" . | head -n 150`;
@@ -4329,23 +4329,18 @@ var init_search_keyword = __esm({
4329
4329
  }
4330
4330
  const rawLines = stdout.trim().split("\n").filter((l) => l.trim() !== "");
4331
4331
  if (rawLines.length === 0) return resolve(`Found 0 matches for keyword: "${keyword}"${file ? ` in file: ${file}` : ""}`);
4332
- const filteredLines = rawLines.filter((line) => {
4333
- const lower = line.toLowerCase();
4334
- return !lower.includes("node_modules") && !lower.includes(".git") && !lower.includes("dist") && !lower.includes(".next") && !lower.includes(".gemini");
4335
- });
4336
- if (filteredLines.length === 0) return resolve(`Found 0 matches for keyword: "${keyword}"${file ? ` in file: ${file}` : ""}`);
4337
- const matches = filteredLines.slice(0, 150).map((line) => {
4332
+ const matches = rawLines.slice(0, 150).map((line) => {
4333
+ let filePath, lineNum;
4338
4334
  if (line.includes("|")) {
4339
4335
  const parts = line.split("|");
4340
4336
  let rawPath = parts[0];
4341
4337
  if (path13.isAbsolute(rawPath)) {
4342
4338
  rawPath = path13.relative(process.cwd(), rawPath);
4343
4339
  }
4344
- const filePath = rawPath.replace(/^(\.\/|\.\\)/, "").replace(/\\/g, "/");
4345
- const lineNum = parts[1];
4346
- return `${filePath} ${lineNum}`;
4340
+ filePath = rawPath.replace(/^(\.\/|\.\\)/, "").replace(/\\/g, "/");
4341
+ lineNum = parts[1];
4347
4342
  } else {
4348
- let rawPath, lineNum;
4343
+ let rawPath;
4349
4344
  const driveMatch = line.match(/^([a-zA-Z]:)/);
4350
4345
  if (driveMatch) {
4351
4346
  const startSearch = 2;
@@ -4367,15 +4362,21 @@ var init_search_keyword = __esm({
4367
4362
  if (path13.isAbsolute(rawPath)) {
4368
4363
  rawPath = path13.relative(process.cwd(), rawPath);
4369
4364
  }
4370
- const filePath = rawPath.replace(/^(\.\/|\.\\)/, "").replace(/\\/g, "/");
4371
- return `${filePath} ${lineNum}`;
4372
- }
4365
+ filePath = rawPath.replace(/^(\.\/|\.\\)/, "").replace(/\\/g, "/");
4366
+ lineNum = lineNum;
4367
+ }
4368
+ if (!filePath || !lineNum) return null;
4369
+ const lowerPath = filePath.toLowerCase();
4370
+ const isNoise = excludes.some((ex) => lowerPath.split("/").includes(ex.toLowerCase()));
4371
+ if (isNoise) return null;
4372
+ return `${filePath} ${lineNum}`;
4373
4373
  }).filter(Boolean);
4374
- let output = `Found ${filteredLines.length} matches:
4374
+ if (matches.length === 0) return resolve(`Found 0 matches for keyword: "${keyword}"${file ? ` in file: ${file}` : ""}`);
4375
+ let output = `Found ${matches.length} matches:
4375
4376
 
4376
4377
  `;
4377
4378
  output += matches.join("\n");
4378
- if (filteredLines.length > 150) {
4379
+ if (matches.length > 150) {
4379
4380
  output += "\n\n... (Truncated to first 150 matches)";
4380
4381
  }
4381
4382
  resolve(output);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fluxflow-cli",
3
- "version": "1.18.21",
3
+ "version": "1.18.22",
4
4
  "date": "2026-06-02",
5
5
  "description": "A high-fidelity agentic terminal assistant for the Flux Era.",
6
6
  "keywords": [