ccperm 1.4.0 → 1.4.1

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/scanner.js +6 -5
  2. package/package.json +1 -1
package/dist/scanner.js CHANGED
@@ -44,12 +44,12 @@ async function findSettingsFiles(searchDir, onProgress, debug = false) {
44
44
  entries = await node_fs_1.default.promises.readdir(dir, { withFileTypes: true });
45
45
  }
46
46
  catch {
47
- return; // permission denied, etc.
47
+ return;
48
48
  }
49
+ const subdirs = [];
49
50
  for (const entry of entries) {
50
51
  const name = entry.name;
51
52
  if (name === '.claude' && entry.isDirectory()) {
52
- // found a .claude dir — check for settings files inside
53
53
  const claudeDir = node_path_1.default.join(dir, '.claude');
54
54
  let inner;
55
55
  try {
@@ -71,16 +71,17 @@ async function findSettingsFiles(searchDir, onProgress, debug = false) {
71
71
  catch { /* not writable */ }
72
72
  }
73
73
  }
74
- continue; // don't recurse into .claude
74
+ continue;
75
75
  }
76
76
  if (!entry.isDirectory())
77
77
  continue;
78
78
  if (SKIP.has(name))
79
79
  continue;
80
80
  if (name.startsWith('.') && name !== '.claude')
81
- continue; // skip other hidden dirs
82
- await walk(node_path_1.default.join(dir, name));
81
+ continue;
82
+ subdirs.push(walk(node_path_1.default.join(dir, name)));
83
83
  }
84
+ await Promise.all(subdirs);
84
85
  }
85
86
  await walk(searchDir);
86
87
  if (debug) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ccperm",
3
- "version": "1.4.0",
3
+ "version": "1.4.1",
4
4
  "description": "Audit Claude Code permissions across all your projects",
5
5
  "bin": {
6
6
  "ccperm": "bin/ccperm.js"