coder-config 0.53.1-beta → 0.53.3-beta

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.
@@ -19,7 +19,7 @@
19
19
 
20
20
  <!-- PWA Manifest -->
21
21
  <link rel="manifest" href="/manifest.json">
22
- <script type="module" crossorigin src="/assets/index-C8HMhykN.js"></script>
22
+ <script type="module" crossorigin src="/assets/index-zzyFCvAA.js"></script>
23
23
  <link rel="stylesheet" crossorigin href="/assets/index-BiF3i3y5.css">
24
24
  </head>
25
25
  <body>
@@ -93,6 +93,7 @@ function scanFolderForExplorer(dir, manager, label = null) {
93
93
  name: 'AGENTS.md (root)',
94
94
  path: rootAgentsMd,
95
95
  type: 'agentsmd',
96
+ tool: 'codex',
96
97
  size: fs.statSync(rootAgentsMd).size,
97
98
  isRoot: true
98
99
  });
@@ -105,6 +106,8 @@ function scanFolderForExplorer(dir, manager, label = null) {
105
106
  name: 'AGENTS.override.md (root)',
106
107
  path: rootAgentsOverrideMd,
107
108
  type: 'agentsmd',
109
+ tool: 'codex',
110
+ isOverride: true,
108
111
  size: fs.statSync(rootAgentsOverrideMd).size,
109
112
  isRoot: true
110
113
  });
@@ -452,6 +455,10 @@ function createClaudeFile(body) {
452
455
  case 'claudemd':
453
456
  filePath = path.join(dir, '.claude', 'CLAUDE.md');
454
457
  break;
458
+ case 'geminimd':
459
+ filePath = path.join(dir, 'GEMINI.md');
460
+ initialContent = content || '# Project Instructions\n\nInstructions for Gemini CLI.\n';
461
+ break;
455
462
  case 'agentsmd':
456
463
  filePath = path.join(dir, 'AGENTS.md');
457
464
  initialContent = content || '# Project Instructions\n\nInstructions for Codex CLI.\n';
@@ -847,9 +854,9 @@ function getFileHashes(manager, projectDir, config = {}) {
847
854
  */
848
855
  function getInstructionHierarchy(dir) {
849
856
  const home = os.homedir();
850
- const hierarchy = { claude: [], gemini: [], codex: [] };
857
+ const hierarchy = { dir: path.resolve(dir), claude: [], gemini: [], codex: [] };
851
858
 
852
- // Walk from dir up to filesystem root
859
+ // Walk from dir up to HOME (don't traverse above home directory)
853
860
  let current = path.resolve(dir);
854
861
  const seen = new Set();
855
862
 
@@ -889,19 +896,29 @@ function getInstructionHierarchy(dir) {
889
896
  }
890
897
  }
891
898
 
892
- // Also check ~/.codex/AGENTS.md for global Codex instructions
893
- if (current === home) {
894
- const globalAgents = path.join(home, '.codex', 'AGENTS.md');
895
- if (fs.existsSync(globalAgents)) {
896
- hierarchy.codex.push({ path: globalAgents, dir: '~/.codex', name: 'AGENTS.md', size: fs.statSync(globalAgents).size });
897
- }
898
- }
899
-
899
+ // Stop at HOME directory (don't walk above it)
900
+ if (current === home) break;
900
901
  const parent = path.dirname(current);
901
902
  if (parent === current) break;
902
903
  current = parent;
903
904
  }
904
905
 
906
+ // Always check home directory last (global scope)
907
+ if (!seen.has(home)) {
908
+ const globalClaudeMd = path.join(home, '.claude', 'CLAUDE.md');
909
+ if (fs.existsSync(globalClaudeMd)) {
910
+ hierarchy.claude.push({ path: globalClaudeMd, dir: '~/.claude', size: fs.statSync(globalClaudeMd).size });
911
+ }
912
+ const globalGeminiMd = path.join(home, '.gemini', 'GEMINI.md');
913
+ if (fs.existsSync(globalGeminiMd)) {
914
+ hierarchy.gemini.push({ path: globalGeminiMd, dir: '~/.gemini', size: fs.statSync(globalGeminiMd).size });
915
+ }
916
+ const globalAgentsMd = path.join(home, '.codex', 'AGENTS.md');
917
+ if (fs.existsSync(globalAgentsMd)) {
918
+ hierarchy.codex.push({ path: globalAgentsMd, dir: '~/.codex', name: 'AGENTS.md', size: fs.statSync(globalAgentsMd).size });
919
+ }
920
+ }
921
+
905
922
  return hierarchy;
906
923
  }
907
924