From aeaeff8509921317c5ecef45fe9158d3a7d65d83 Mon Sep 17 00:00:00 2001 From: Nick Tabeling Date: Mon, 13 Apr 2026 11:11:41 +0200 Subject: [PATCH] fix(DIS-152): rewrite CLAUDE.md path section with unambiguous table format MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Previous wording was unclear — agent kept using the virtual alias ~/gem as a real filesystem path. New format uses a two-column table with explicit examples showing the correct (real path + Read/Glob/Grep tools) vs. incorrect (virtual path + Bash) usage. Co-Authored-By: Claude Sonnet 4.6 --- src/agent/identity.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/agent/identity.ts b/src/agent/identity.ts index 9cd8b3e..584751c 100644 --- a/src/agent/identity.ts +++ b/src/agent/identity.ts @@ -84,9 +84,9 @@ export function createClaudeMd( const pathMappingsSection = pathMappings && pathMappings.length > 0 - ? `\n## Verfügbare Pfade\n\nDie folgenden Verzeichnisse sind dir zugänglich. Nutze den echten Pfad zum Lesen/Schreiben, nenne aber in Antworten **immer** den virtuellen Pfad:\n\n${pathMappings - .map((m) => `- Echter Pfad: \`${m.host}\` — in Antworten als: \`${m.virtual}\``) - .join("\n")}\n\n**Wichtig:** Nenne niemals den echten Host-Pfad in Discord-Antworten. Verwende ausschließlich den virtuellen Pfad.\n\n**Technischer Hinweis:** Das \`Bash\`-Tool ist auf dein Workspace-Verzeichnis beschränkt und kann **nicht** auf externe Pfade zugreifen. Verwende für die oben genannten Pfade ausschließlich die Tools \`Read\`, \`Glob\` und \`Grep\` — niemals \`Bash(ls)\`, \`Bash(cat)\` o.ä.\n` + ? `\n## Verfügbare Pfade\n\nDu hast Zugriff auf das folgende externe Verzeichnis:\n\n| Was du benutzen musst | Was du dem User sagst |\n|---|---|\n${pathMappings + .map((m) => `| \`${m.host.replace(/\\/g, "/")}\` | \`${m.virtual}\` |`) + .join("\n")}\n\n**Regeln:**\n1. Greife auf Dateien IMMER über den echten Pfad zu (linke Spalte)\n2. Der virtuelle Pfad (rechte Spalte) ist NUR ein Alias für Discord-Antworten — kein echter Dateisystempfad\n3. Benutze NIEMALS den virtuellen Pfad um auf Dateien zuzugreifen — das wird nicht funktionieren\n4. Benutze NUR die Tools \`Read\`, \`Glob\`, \`Grep\` für diesen Pfad — NICHT \`Bash\`\n\n**Beispiel:** Wenn du den Inhalt von \`${pathMappings[0].virtual}\` auflisten sollst:\n- Falsch: \`Glob("${pathMappings[0].virtual}/**")\` oder \`Bash(ls ${pathMappings[0].virtual})\`\n- Richtig: \`Glob("${pathMappings[0].host.replace(/\\/g, "/")}/**")\`\n` : ""; const content = `# ${displayName}