nori-ai 19.0.3 → 19.0.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.
Files changed (27) hide show
  1. package/.claude/settings.local.json +2 -1
  2. package/build/src/cli/commands/switch-profile/profiles.d.ts.map +1 -1
  3. package/build/src/cli/commands/switch-profile/profiles.js +17 -5
  4. package/build/src/cli/commands/switch-profile/profiles.js.map +1 -1
  5. package/build/src/cli/commands/switch-profile/profiles.test.js +157 -0
  6. package/build/src/cli/commands/switch-profile/profiles.test.js.map +1 -1
  7. package/build/src/cli/features/claude-code/hooks/config/slash-command-intercept.js +58 -36
  8. package/build/src/cli/features/claude-code/profiles/skills/loader.d.ts.map +1 -1
  9. package/build/src/cli/features/claude-code/profiles/skills/loader.js +43 -27
  10. package/build/src/cli/features/claude-code/profiles/skills/loader.js.map +1 -1
  11. package/build/src/cli/features/claude-code/profiles/skills/loader.test.js +38 -0
  12. package/build/src/cli/features/claude-code/profiles/skills/loader.test.js.map +1 -1
  13. package/build/src/cli/features/claude-code/profiles/slashcommands/loader.d.ts.map +1 -1
  14. package/build/src/cli/features/claude-code/profiles/slashcommands/loader.js +12 -5
  15. package/build/src/cli/features/claude-code/profiles/slashcommands/loader.js.map +1 -1
  16. package/build/src/cli/features/claude-code/profiles/slashcommands/loader.test.js +40 -0
  17. package/build/src/cli/features/claude-code/profiles/slashcommands/loader.test.js.map +1 -1
  18. package/build/src/cli/features/claude-code/profiles/subagents/loader.d.ts.map +1 -1
  19. package/build/src/cli/features/claude-code/profiles/subagents/loader.js +12 -5
  20. package/build/src/cli/features/claude-code/profiles/subagents/loader.js.map +1 -1
  21. package/build/src/cli/features/claude-code/profiles/subagents/loader.test.js +40 -0
  22. package/build/src/cli/features/claude-code/profiles/subagents/loader.test.js.map +1 -1
  23. package/build/src/cli/features/claude-code/statusline/config/nori-statusline.sh +3 -3
  24. package/build/src/cli/features/config/loader.d.ts.map +1 -1
  25. package/build/src/cli/features/config/loader.js +5 -2
  26. package/build/src/cli/features/config/loader.js.map +1 -1
  27. package/package.json +1 -1
@@ -3,7 +3,8 @@
3
3
  "allow": [
4
4
  "Bash(gh pr checks:*)",
5
5
  "Bash(npm run format:*)",
6
- "Bash(npm run lint)"
6
+ "Bash(npm run lint)",
7
+ "Bash(npm test:*)"
7
8
  ],
8
9
  "deny": [],
9
10
  "ask": []
@@ -1 +1 @@
1
- {"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/switch-profile/profiles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAYH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8GzC;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,GAAI,MAAM;IACjD,OAAO,EAAE,OAAO,CAAC;CAClB,KAAG,IA8DH,CAAC"}
1
+ {"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/switch-profile/profiles.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAYH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8GzC;;;;GAIG;AACH,eAAO,MAAM,4BAA4B,GAAI,MAAM;IACjD,OAAO,EAAE,OAAO,CAAC;CAClB,KAAG,IA6EH,CAAC"}
@@ -6,7 +6,7 @@ import { loadConfig, getAgentProfile, getInstalledAgents, } from "../../../cli/c
6
6
  import { AgentRegistry } from "../../../cli/features/agentRegistry.js";
7
7
  import { error, info, success, newline } from "../../../cli/logger.js";
8
8
  import { promptUser } from "../../../cli/prompt.js";
9
- import { normalizeInstallDir } from "../../../utils/path.js";
9
+ import { normalizeInstallDir, getInstallDirs } from "../../../utils/path.js";
10
10
  /**
11
11
  * Determine which agent to use for switch-profile command when no --agent flag provided
12
12
  * @param args - Configuration arguments
@@ -100,10 +100,22 @@ export const registerSwitchProfileCommand = (args) => {
100
100
  .action(async (name, options) => {
101
101
  // Get global options from parent
102
102
  const globalOpts = program.opts();
103
- const installDir = normalizeInstallDir({
104
- installDir: globalOpts.installDir || null,
105
- });
106
103
  const nonInteractive = globalOpts.nonInteractive ?? false;
104
+ // Determine installation directory
105
+ let installDir;
106
+ if (globalOpts.installDir != null && globalOpts.installDir !== "") {
107
+ // Explicit install dir provided - use it directly
108
+ installDir = normalizeInstallDir({ installDir: globalOpts.installDir });
109
+ }
110
+ else {
111
+ // Auto-detect installation
112
+ const installations = getInstallDirs({ currentDir: process.cwd() });
113
+ if (installations.length === 0) {
114
+ throw new Error("No Nori installations found in current directory or parent directories. " +
115
+ "Run 'nori-ai install' to create a new installation, or use --install-dir to specify a location.");
116
+ }
117
+ installDir = installations[0]; // Use closest installation
118
+ }
107
119
  // Use local --agent option if provided, otherwise auto-detect
108
120
  // We don't use globalOpts.agent because it has a default value ("claude-code")
109
121
  // which would prevent auto-detection from working
@@ -138,7 +150,7 @@ export const registerSwitchProfileCommand = (args) => {
138
150
  await installMain({
139
151
  nonInteractive: true,
140
152
  skipUninstall: true,
141
- installDir: globalOpts.installDir || null,
153
+ installDir,
142
154
  agent: agentName,
143
155
  silent: true,
144
156
  });
@@ -1 +1 @@
1
- {"version":3,"file":"profiles.js","sourceRoot":"","sources":["../../../../../src/cli/commands/switch-profile/profiles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profiles.js","sourceRoot":"","sources":["../../../../../src/cli/commands/switch-profile/profiles.ts"],"names":[],"mappings":"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"}
@@ -789,4 +789,161 @@ describe("switch-profile confirmation", () => {
789
789
  expect(switchProfileSpy).toHaveBeenCalled();
790
790
  });
791
791
  });
792
+ describe("switch-profile getInstallDirs auto-detection", () => {
793
+ let testInstallDir;
794
+ let originalCwd;
795
+ beforeEach(async () => {
796
+ originalCwd = process.cwd();
797
+ testInstallDir = await fs.mkdtemp(path.join(tmpdir(), "switch-profile-autodetect-test-"));
798
+ // Create profiles directory with test profiles
799
+ const claudeDir = path.join(testInstallDir, ".claude");
800
+ const profilesDir = path.join(claudeDir, "profiles");
801
+ await fs.mkdir(profilesDir, { recursive: true });
802
+ for (const name of ["senior-swe", "product-manager"]) {
803
+ const dir = path.join(profilesDir, name);
804
+ await fs.mkdir(dir, { recursive: true });
805
+ await fs.writeFile(path.join(dir, "CLAUDE.md"), `# ${name}`);
806
+ }
807
+ // Create config file to mark this as a Nori installation
808
+ const configPath = path.join(testInstallDir, ".nori-config.json");
809
+ await fs.writeFile(configPath, JSON.stringify({
810
+ agents: {
811
+ "claude-code": { profile: { baseProfile: "senior-swe" } },
812
+ },
813
+ }));
814
+ AgentRegistry.resetInstance();
815
+ vi.mocked(promptUser).mockReset();
816
+ });
817
+ afterEach(async () => {
818
+ process.chdir(originalCwd);
819
+ if (testInstallDir) {
820
+ await fs.rm(testInstallDir, { recursive: true, force: true });
821
+ }
822
+ AgentRegistry.resetInstance();
823
+ vi.restoreAllMocks();
824
+ });
825
+ it("should auto-detect installation in current directory when no --install-dir provided", async () => {
826
+ // Change to the installation directory
827
+ process.chdir(testInstallDir);
828
+ const program = new Command();
829
+ program.exitOverride();
830
+ program.configureOutput({ writeErr: () => undefined });
831
+ program
832
+ .option("-d, --install-dir <path>", "Custom installation directory")
833
+ .option("-n, --non-interactive", "Run without interactive prompts")
834
+ .option("-a, --agent <name>", "AI agent to use");
835
+ registerSwitchProfileCommand({ program });
836
+ // Mock confirmation prompt to return "y"
837
+ vi.mocked(promptUser).mockResolvedValueOnce("y");
838
+ // Mock switchProfile to track calls
839
+ const claudeAgent = AgentRegistry.getInstance().get({
840
+ name: "claude-code",
841
+ });
842
+ const switchProfileSpy = vi
843
+ .spyOn(claudeAgent, "switchProfile")
844
+ .mockResolvedValue(undefined);
845
+ try {
846
+ // Note: NO --install-dir flag - should auto-detect from cwd
847
+ await program.parseAsync([
848
+ "node",
849
+ "nori-ai",
850
+ "switch-profile",
851
+ "product-manager",
852
+ ]);
853
+ }
854
+ catch {
855
+ // May throw due to exit
856
+ }
857
+ // Should detect installation in current directory and use it
858
+ expect(switchProfileSpy).toHaveBeenCalledWith({
859
+ installDir: testInstallDir,
860
+ profileName: "product-manager",
861
+ });
862
+ });
863
+ it("should auto-detect installation in parent directory when running from subdirectory", async () => {
864
+ // Create a subdirectory to run from
865
+ const subDir = path.join(testInstallDir, "src", "components");
866
+ await fs.mkdir(subDir, { recursive: true });
867
+ // Change to the subdirectory
868
+ process.chdir(subDir);
869
+ const program = new Command();
870
+ program.exitOverride();
871
+ program.configureOutput({ writeErr: () => undefined });
872
+ program
873
+ .option("-d, --install-dir <path>", "Custom installation directory")
874
+ .option("-n, --non-interactive", "Run without interactive prompts")
875
+ .option("-a, --agent <name>", "AI agent to use");
876
+ registerSwitchProfileCommand({ program });
877
+ // Mock confirmation prompt to return "y"
878
+ vi.mocked(promptUser).mockResolvedValueOnce("y");
879
+ // Mock switchProfile to track calls
880
+ const claudeAgent = AgentRegistry.getInstance().get({
881
+ name: "claude-code",
882
+ });
883
+ const switchProfileSpy = vi
884
+ .spyOn(claudeAgent, "switchProfile")
885
+ .mockResolvedValue(undefined);
886
+ try {
887
+ // Note: NO --install-dir flag - should traverse up and find installation
888
+ await program.parseAsync([
889
+ "node",
890
+ "nori-ai",
891
+ "switch-profile",
892
+ "product-manager",
893
+ ]);
894
+ }
895
+ catch {
896
+ // May throw due to exit
897
+ }
898
+ // Should traverse up and find installation in parent directory
899
+ expect(switchProfileSpy).toHaveBeenCalledWith({
900
+ installDir: testInstallDir,
901
+ profileName: "product-manager",
902
+ });
903
+ });
904
+ it("should error when no installation found in current or ancestor directories", async () => {
905
+ // Create a directory WITHOUT a Nori installation
906
+ const emptyDir = await fs.mkdtemp(path.join(tmpdir(), "switch-profile-empty-test-"));
907
+ try {
908
+ // Change to the empty directory
909
+ process.chdir(emptyDir);
910
+ const program = new Command();
911
+ program.exitOverride();
912
+ let errorOutput = "";
913
+ program.configureOutput({
914
+ writeErr: (str) => {
915
+ errorOutput += str;
916
+ },
917
+ });
918
+ program
919
+ .option("-d, --install-dir <path>", "Custom installation directory")
920
+ .option("-n, --non-interactive", "Run without interactive prompts")
921
+ .option("-a, --agent <name>", "AI agent to use");
922
+ registerSwitchProfileCommand({ program });
923
+ let thrownError = null;
924
+ try {
925
+ // Note: NO --install-dir flag - should fail to find any installation
926
+ await program.parseAsync([
927
+ "node",
928
+ "nori-ai",
929
+ "switch-profile",
930
+ "product-manager",
931
+ ]);
932
+ }
933
+ catch (err) {
934
+ thrownError = err;
935
+ }
936
+ // Should error because no installation found
937
+ expect(thrownError).not.toBeNull();
938
+ // Error message should mention no installation found
939
+ expect(errorOutput.toLowerCase().includes("no") ||
940
+ thrownError?.message.toLowerCase().includes("no") ||
941
+ errorOutput.toLowerCase().includes("not found") ||
942
+ thrownError?.message.toLowerCase().includes("not found")).toBe(true);
943
+ }
944
+ finally {
945
+ await fs.rm(emptyDir, { recursive: true, force: true });
946
+ }
947
+ });
948
+ });
792
949
  //# sourceMappingURL=profiles.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"profiles.test.js","sourceRoot":"","sources":["../../../../../src/cli/commands/switch-profile/profiles.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profiles.test.js","sourceRoot":"","sources":["../../../../../src/cli/commands/switch-profile/profiles.test.ts"],"names":[],"mappings":"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"}
@@ -39500,7 +39500,14 @@ var installSkills = async (args) => {
39500
39500
  const claudeSkillsDir = getClaudeSkillsDir({ installDir: config.installDir });
39501
39501
  await fs21.rm(claudeSkillsDir, { recursive: true, force: true });
39502
39502
  await fs21.mkdir(claudeSkillsDir, { recursive: true });
39503
- const entries = await fs21.readdir(configDir, { withFileTypes: true });
39503
+ let entries;
39504
+ try {
39505
+ entries = await fs21.readdir(configDir, { withFileTypes: true });
39506
+ } catch {
39507
+ info({ message: "Profile skills directory not found, skipping" });
39508
+ await configureSkillsPermissions({ config });
39509
+ return;
39510
+ }
39504
39511
  for (const entry of entries) {
39505
39512
  const sourcePath = path20.join(configDir, entry.name);
39506
39513
  if (!entry.isDirectory()) {
@@ -39645,35 +39652,38 @@ var validate3 = async (args) => {
39645
39652
  profileName,
39646
39653
  installDir: config.installDir
39647
39654
  });
39648
- const sourceEntries = await fs21.readdir(configDir, { withFileTypes: true });
39649
- for (const entry of sourceEntries) {
39650
- if (!entry.isDirectory()) {
39651
- continue;
39652
- }
39653
- if (entry.name.startsWith("paid-")) {
39654
- if (isPaidInstall({ config })) {
39655
- const destName = entry.name.replace(/^paid-/, "");
39655
+ try {
39656
+ const sourceEntries = await fs21.readdir(configDir, { withFileTypes: true });
39657
+ for (const entry of sourceEntries) {
39658
+ if (!entry.isDirectory()) {
39659
+ continue;
39660
+ }
39661
+ if (entry.name.startsWith("paid-")) {
39662
+ if (isPaidInstall({ config })) {
39663
+ const destName = entry.name.replace(/^paid-/, "");
39664
+ try {
39665
+ await fs21.access(path20.join(claudeSkillsDir, destName));
39666
+ } catch {
39667
+ errors.push(`Expected skill '${destName}' not found (paid tier)`);
39668
+ }
39669
+ }
39670
+ } else {
39656
39671
  try {
39657
- await fs21.access(path20.join(claudeSkillsDir, destName));
39672
+ await fs21.access(path20.join(claudeSkillsDir, entry.name));
39658
39673
  } catch {
39659
- errors.push(`Expected skill '${destName}' not found (paid tier)`);
39674
+ errors.push(`Expected skill '${entry.name}' not found`);
39660
39675
  }
39661
39676
  }
39662
- } else {
39663
- try {
39664
- await fs21.access(path20.join(claudeSkillsDir, entry.name));
39665
- } catch {
39666
- errors.push(`Expected skill '${entry.name}' not found`);
39667
- }
39668
39677
  }
39669
- }
39670
- if (errors.length > 0) {
39671
- errors.push('Run "nori-ai install" to reinstall skills');
39672
- return {
39673
- valid: false,
39674
- message: "Skills directory incomplete",
39675
- errors
39676
- };
39678
+ if (errors.length > 0) {
39679
+ errors.push('Run "nori-ai install" to reinstall skills');
39680
+ return {
39681
+ valid: false,
39682
+ message: "Skills directory incomplete",
39683
+ errors
39684
+ };
39685
+ }
39686
+ } catch {
39677
39687
  }
39678
39688
  try {
39679
39689
  const content = await fs21.readFile(claudeSettingsFile, "utf-8");
@@ -39746,7 +39756,13 @@ var registerSlashCommands = async (args) => {
39746
39756
  await fs22.mkdir(claudeCommandsDir, { recursive: true });
39747
39757
  let registeredCount = 0;
39748
39758
  let skippedCount = 0;
39749
- const files = await fs22.readdir(configDir);
39759
+ let files;
39760
+ try {
39761
+ files = await fs22.readdir(configDir);
39762
+ } catch {
39763
+ info({ message: "Profile slashcommands directory not found, skipping" });
39764
+ return;
39765
+ }
39750
39766
  const mdFiles = files.filter((file) => file.endsWith(".md") && file !== "docs.md");
39751
39767
  for (const file of mdFiles) {
39752
39768
  const commandSrc = path21.join(configDir, file);
@@ -39886,11 +39902,10 @@ var validate4 = async (args) => {
39886
39902
  }
39887
39903
  }
39888
39904
  } catch {
39889
- errors.push(`Profile slashcommands directory not found at ${configDir}`);
39890
39905
  return {
39891
- valid: false,
39892
- message: "Profile slashcommands directory not found",
39893
- errors
39906
+ valid: true,
39907
+ message: "No slash commands configured for this profile",
39908
+ errors: null
39894
39909
  };
39895
39910
  }
39896
39911
  if (missingCommands.length > 0) {
@@ -39951,7 +39966,13 @@ var registerSubagents = async (args) => {
39951
39966
  await fs23.mkdir(claudeAgentsDir, { recursive: true });
39952
39967
  let registeredCount = 0;
39953
39968
  let skippedCount = 0;
39954
- const files = await fs23.readdir(configDir);
39969
+ let files;
39970
+ try {
39971
+ files = await fs23.readdir(configDir);
39972
+ } catch {
39973
+ info({ message: "Profile subagents directory not found, skipping" });
39974
+ return;
39975
+ }
39955
39976
  const mdFiles = files.filter((file) => file.endsWith(".md") && file !== "docs.md");
39956
39977
  for (const file of mdFiles) {
39957
39978
  const subagentSrc = path22.join(configDir, file);
@@ -40087,11 +40108,10 @@ var validate5 = async (args) => {
40087
40108
  }
40088
40109
  }
40089
40110
  } catch {
40090
- errors.push(`Profile subagents directory not found at ${configDir}`);
40091
40111
  return {
40092
- valid: false,
40093
- message: "Profile subagents directory not found",
40094
- errors
40112
+ valid: true,
40113
+ message: "No subagents configured for this profile",
40114
+ errors: null
40095
40115
  };
40096
40116
  }
40097
40117
  if (missingSubagents.length > 0) {
@@ -40866,7 +40886,9 @@ var installConfig = async (args) => {
40866
40886
  message: " Hint: Network error. Check your internet connection."
40867
40887
  });
40868
40888
  }
40869
- throw err;
40889
+ warn({
40890
+ message: " Continuing installation without authentication. Backend features will be unavailable."
40891
+ });
40870
40892
  }
40871
40893
  }
40872
40894
  const currentVersion = getCurrentPackageVersion();
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../../../../../src/cli/features/claude-code/profiles/skills/loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgBH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAC;AAgZlG;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,aAY1B,CAAC"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../../../../../src/cli/features/claude-code/profiles/skills/loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgBH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8DAA8D,CAAC;AAgalG;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,aAY1B,CAAC"}
@@ -86,7 +86,16 @@ const installSkills = async (args) => {
86
86
  // Create skills directory
87
87
  await fs.mkdir(claudeSkillsDir, { recursive: true });
88
88
  // Read all entries from config directory
89
- const entries = await fs.readdir(configDir, { withFileTypes: true });
89
+ let entries;
90
+ try {
91
+ entries = await fs.readdir(configDir, { withFileTypes: true });
92
+ }
93
+ catch {
94
+ info({ message: "Profile skills directory not found, skipping" });
95
+ // Still configure permissions for the empty skills directory
96
+ await configureSkillsPermissions({ config });
97
+ return;
98
+ }
90
99
  for (const entry of entries) {
91
100
  const sourcePath = path.join(configDir, entry.name);
92
101
  if (!entry.isDirectory()) {
@@ -291,40 +300,47 @@ const validate = async (args) => {
291
300
  profileName,
292
301
  installDir: config.installDir,
293
302
  });
294
- const sourceEntries = await fs.readdir(configDir, { withFileTypes: true });
295
- for (const entry of sourceEntries) {
296
- if (!entry.isDirectory()) {
297
- continue;
298
- }
299
- // For paid-prefixed skills, check if they exist without prefix (paid tier only)
300
- if (entry.name.startsWith("paid-")) {
301
- if (isPaidInstall({ config })) {
302
- const destName = entry.name.replace(/^paid-/, "");
303
+ // Check expected skills from profile config (if directory exists)
304
+ try {
305
+ const sourceEntries = await fs.readdir(configDir, { withFileTypes: true });
306
+ for (const entry of sourceEntries) {
307
+ if (!entry.isDirectory()) {
308
+ continue;
309
+ }
310
+ // For paid-prefixed skills, check if they exist without prefix (paid tier only)
311
+ if (entry.name.startsWith("paid-")) {
312
+ if (isPaidInstall({ config })) {
313
+ const destName = entry.name.replace(/^paid-/, "");
314
+ try {
315
+ await fs.access(path.join(claudeSkillsDir, destName));
316
+ }
317
+ catch {
318
+ errors.push(`Expected skill '${destName}' not found (paid tier)`);
319
+ }
320
+ }
321
+ }
322
+ else {
323
+ // Non-paid skills should exist for all tiers
303
324
  try {
304
- await fs.access(path.join(claudeSkillsDir, destName));
325
+ await fs.access(path.join(claudeSkillsDir, entry.name));
305
326
  }
306
327
  catch {
307
- errors.push(`Expected skill '${destName}' not found (paid tier)`);
328
+ errors.push(`Expected skill '${entry.name}' not found`);
308
329
  }
309
330
  }
310
331
  }
311
- else {
312
- // Non-paid skills should exist for all tiers
313
- try {
314
- await fs.access(path.join(claudeSkillsDir, entry.name));
315
- }
316
- catch {
317
- errors.push(`Expected skill '${entry.name}' not found`);
318
- }
332
+ if (errors.length > 0) {
333
+ errors.push('Run "nori-ai install" to reinstall skills');
334
+ return {
335
+ valid: false,
336
+ message: "Skills directory incomplete",
337
+ errors,
338
+ };
319
339
  }
320
340
  }
321
- if (errors.length > 0) {
322
- errors.push('Run "nori-ai install" to reinstall skills');
323
- return {
324
- valid: false,
325
- message: "Skills directory incomplete",
326
- errors,
327
- };
341
+ catch {
342
+ // Profile skills directory not found - this is valid (0 skills expected)
343
+ // Continue to check permissions
328
344
  }
329
345
  // Check if permissions are configured in settings.json
330
346
  try {