Blog

A Claude Code nem látja a projektfájlokat: miért, és mit tegyél 2026-ban

Markdown

Miért nem találja a Claude Code a projektfájlokat: rossz mappából indítottad el, a fájl almappában van, vagy szerepel a .gitignore fájlban. Így adhatsz hozzáférést az add-dir, a cd és a beállítások használatával.

A teljes cikk elolvasása

Ismerős helyzet: megkéred a Claude Code-ot, hogy javítson ki egy fájlt, ő pedig azt válaszolja, hogy ilyen fájl nem létezik. Vagy szó nélkül valami egészen mást módosít, mint amit szerettél volna. Megnyitod a mappát — a fájl ott van, pontosan a helyén. Claude mégsem veszi észre.

Szinte mindig egyetlen oka van, és semmi sem romlott el. Claude nem látja az egész számítógépen található fájlokat. Csak ahhoz a mappához fér hozzá, amelyből elindítottad. Szomszédos mappában vagy a projektgyökér alatt indítva szükséges fájlok kerülhetnek a munkafán kívülre. A home-hoz hasonló szülőből indítás tágabb hatókört ad; nem teszi elérhetetlenné a leszármazott projektet. Lépésről lépésre elmagyarázom, miért működik így, és hogyan adhatsz Claude-nak hozzáférést a szükséges fájlokhoz. A parancsokat és beállításokat közvetlenül a Claude Code hivatalos dokumentációjából idézem, amelyet 2026 szeptemberének elején ellenőriztem.

Az eszközök konfigurálásáról további anyagok találhatók az Ailoot dokumentációjában.

Miért nem látja a Claude Code egyes projektfájlokat?

Lényeg

A Claude Code nem a teljes meghajtóról olvassa a fájlokat, hanem csak abból a mappából, amelyből elindítottad. Ezt a mappát munkakönyvtárnak nevezzük. Claude ezen belül és az almappáiban mindent láthat és olvashat, kérdezés nélkül. A rajta kívüli dolgok — egy szomszédos mappában, egy szinttel feljebb vagy egy másik meghajtón — elérhetetlenek, amíg te magad hozzáférést nem adsz. Ezért a fájl „láthatatlanságának” leggyakoribb oka egyszerű: másik mappából indítottad el Claude-ot. Először ellenőrizd pontosan, honnan nyitottad meg.

Alapértelmezés szerint a Claude Code egy mappával dolgozik: azzal, amelyikben beírtad a claude parancsot, és elindítottad a munkamenetet. A dokumentáció ezt egyértelműen kimondja.

Alapértelmezés szerint Claude hozzáfér a mappában lévő fájlokhoz, ahonnan elindítottad.

— Claude Code Docs, Configure permissions, hivatalos dokumentáció

Ez a mappa a munkakönyvtára. Ezen belül Claude bármilyen fájlt elolvas további kérdések nélkül: prompt szerkesztése, kód keresése, egy adott fájl elolvasása — mindez azonnal működik. A mappán kívül azonban alapértelmezés szerint semmihez sem fér hozzá. Egy szomszédos mappa, egy szinttel feljebb lévő mappa vagy egy másik meghajtó — Claude nem néz oda, amíg nem engedélyezed.

Itt számíthat a munkamappa eltérése. Tegyük fel, hogy a projekt /Users/you/my-shop, de Claude-ot a testvérmappájából, /Users/you/other-project alól indítottad. A my-shop index.html fájlja ezen a munkafán kívül van. A /Users/you alól indítás más eset: a my-shop leszármazott, és a home-ból indulástól önmagában nem elérhetetlen, bár a kiválasztott kontextus tágabb a kívántnál. A mappához való hozzáférés nem jelenti minden fájl beolvasását.

Most végigveszem, hogyan ellenőrizheted és javíthatod ezt: először megnézzük, melyik mappából indult Claude, majd különböző módokon hozzáférést adunk neki a szükséges fájlokhoz — egy egyszeri utasítástól az állandó beállításig.

Hogyan ellenőrizheted, melyik mappából indult a Claude Code?

Lényeg

Kérdezd meg Claude-tól, hogy melyik mappában van, vagy kérd meg, hogy mutassa meg az aktuális könyvtárat a pwd paranccsal — ez csak ellenőriz, semmit sem változtat meg. Hasonlítsd össze a megjelenített útvonalat a projekt tényleges helyével. Ha eltérnek, ez az ok: Claude rossz mappából indult. Még megbízhatóbb megoldás, ha bezárod a munkamenetet, majd közvetlenül a projektmappából indítod újra Claude-ot: a terminálban lépj be oda, és írd be a claude parancsot.

Mielőtt bármit kijavítanál, győződj meg róla, hogy valóban a mappa okozza a problémát. Ezt könnyű ellenőrizni. Kérd meg Claude-ot a csevegésben, hogy mutassa meg, melyik könyvtárban van éppen — ekkor lefuttatja a pwd parancsot, amely biztonságos: csak megjeleníti az útvonalat, és nem nyúl semmihez.

pwd

A válasz a tényleges munkakönyvtárat mutatja. Vesd össze a teljes projektútvonallal: a /Users/you/other-project a /Users/you/my-shop testvére, a /Users/you pedig szülője. Testvérmappából a my-shop a munkafán kívül van; szülőből benne van, de nem azt a konkrét projektet választottad gyökérnek.

Az eltérés legegyszerűbben úgy szüntethető meg, ha közvetlenül a projektmappából indítod el Claude-ot. Zárd be az aktuális munkamenetet, lépj a megfelelő mappába a terminálban, majd onnan indítsd el Claude-ot:

# E szemléltető útvonal helyett a tényleges projektgyökeret add meg.
cd /Users/you/my-shop
claude

Most a my-shop lesz a munkamappa, és az összes projektfájl látható lesz. Ugyanez a szabály érvényes az olyan szerkesztőkre is, mint a VS Code: azt a mappát nyisd meg, amelyik a projektet tartalmazza. Ne az egy szinttel feljebb lévő mappát, és ne a teljes meghajtót. A megnyitott mappa határozza meg, hogy Claude mit tekint munkakönyvtárának.

Ha kényelmetlen újraindítani — például már kontextust adtál Claude-nak ebben a munkamenetben, és nem szeretnéd elveszíteni — menet közben is hozzáadhatsz vagy válthatsz mappát. Erről szól a következő két rész.

Hogyan mutathatsz meg a Claude Code-nak egy fájlt egy szomszédos mappában?

Lényeg

A munkamenet újraindítása nélkül add hozzá a szükséges mappát közvetlenül a csevegésben a /add-dir paranccsal: írd be a /add-dir parancsot és a mappa útvonalát, így a benne lévő fájlok ugyanolyan módon lesznek elérhetők, mint a főmappában lévők. Ha már Claude indulásakor meg akarod nyitni a hozzáférést, add meg a --add-dir kapcsolót és az útvonalat a claude parancsnak. Ha pedig azt szeretnéd, hogy egy mappa minden alkalommal automatikusan megnyíljon, add hozzá a additionalDirectories kulcs alá a beállításokban. Mindhárom esetben a hozzáadott mappában lévő fájlok külön megerősítés nélkül olvashatók.

Előfordul, hogy a projekt nem egyetlen mappában található. A kód az egyik helyen van, a képek vagy szövegek egy szomszédos mappában, a közös komponensek pedig egy másik közeli helyen. Kényelmetlen mindig újraindítani Claude-ot az egyes mappákban. Jobb hozzáférést adni neki a szükséges mappához úgy, hogy közben a főmappa marad a munkakönyvtár.

A legegyszerűbb megoldás, ha ezt közvetlenül az aktív munkamenetben teszed meg a paranccsal:

/add-dir ../assets

Írd be a /add-dir parancsot és a mappa útvonalát, Claude pedig azonnal hozzáfér majd a benne lévő fájlokhoz, ugyanúgy, mint a főmappában lévőkhöz. Nem fog újra engedélyt kérni: a hozzáadott mappára ugyanazok a szabályok vonatkoznak, mint a munkakönyvtárra.

A további könyvtárakban lévő fájlokra ugyanazok a hozzáférési szabályok érvényesek, mint a fő munkakönyvtárra: a rendszer prompt nélkül olvassa be őket.

— Claude Code Docs, Configure permissions, hivatalos dokumentáció

Ha előre tudod, hogy több mappával fogsz dolgozni, már Claude indulásakor nyisd meg a hozzáférést — ugyanazzal az útvonallal, de egy kapcsolóval:

claude --add-dir ../assets

Ha pedig egy projektben mindig ugyanarra a szomszédos mappára van szükséged, nem kell minden alkalommal kézzel hozzáadnod. A settings.json beállításfájlban található egy additionalDirectories kulcs. Sorold fel ott az útvonalakat, és Claude minden indításkor automatikusan megnyitja őket:

{
  "permissions": {
    "additionalDirectories": ["../assets", "../shared"]
  }
}

Windows alatt van egy fontos kivétel: hálózati mappát nem adhatsz hozzá olyan útvonallal, mint a \\server\shared — Claude nem fogad el ilyen útvonalakat. Csatold fel külön meghajtóként egy meghajtóbetűjel segítségével, majd add meg ezt a betűjelet a --add-dir kapcsolóval. A szokásos helyi mappákkal nincs ilyen probléma.

Mi van akkor, ha egy szomszédos mappa hozzáadása nem elég, és teljesen másik mappába kell átlépned? Erre külön parancs szolgál, amelyről lentebb lesz szó.

Hogyan válthatsz át a Claude Code-dal egy másik mappára munkamenet közben?

Lényeg

A /cd parancs a munkamenet bezárása nélkül módosítja a fő munkamappát: írd be a /cd parancsot és egy útvonalat, Claude pedig a beszélgetési előzményeket megtartva átlép oda. Átlépés közben betölti az új mappában található CLAUDE.md utasításfájlt, és ha még nem dolgoztál ott, megkérdezi, hogy megbízol-e benne. Az /add-dir paranccsal szemben az a különbség, hogy az /add-dir a főmappa mellé nyit meg egy szomszédos mappát, míg a /cd az egész munkakönyvtárat új helyre viszi. A parancs a 2.1.169-es verziótól érhető el.

Előfordul, hogy egy szomszédos mappa hozzáadása nem elég — módosítanod kell a főmappát, és át kell lépned egy másik projektbe anélkül, hogy elveszítenéd az addig felépített kontextust. Használd a /cd parancsot:

/cd ../another-project

Ezt követően Claude az új mappát tekinti munkakönyvtárának. A teljes beszélgetési előzmény megmarad, de megváltozik az a hely, amelyet Claude a fájlok viszonyítási pontjaként használ. Claude az új mappában található CLAUDE.md utasításfájlt is betölti, ha van ilyen — vagyis alkalmazkodik az új projekt szabályaihoz.

A bizalommal kapcsolatban egy dolgot érdemes tudni: ha még nem dolgoztál ebben a mappában, Claude megkérdezi, hogy megbízol-e benne, amikor odalépsz. Ez egy védelmi intézkedés: egy ismeretlen mappában lévő utasításfájl bármit tartalmazhat, ezért Claude először ellenőrzi, hogy ez valóban a te projekted-e. Erősítsd meg, majd folytasd.

A két parancs közötti különbség egyszerű. Az /add-dir megtartja a főmappát munkakönyvtárként, és mellette megnyit egy szomszédos mappát — ez akkor hasznos, ha a projekt részei különböző helyeken vannak. A /cd az egész munkakönyvtárat új helyre viszi — ez akkor hasznos, ha másik projektre váltasz. A /cd parancs a 2.1.169-es verzióban jelent meg, ezért ha hiányzik, frissítsd a Claude Code-ot. Külön útmutatóm van arról, hogyan frissítheted a Claude Code-ot.

Az, hogy Claude látja a fájlokat, csak az alap. A stabil eredményhez önmagában nem elég a fájlhozzáférés. Az eredmény attól függ, mi van ezekben a fájlokban, és hogyan építed fel a projekt körüli kontextust.

Miért nem látja a Claude Code az almappában lévő fájlokat?

Lényeg

Az almappák másképp működnek, mint a szomszédos mappák: Claude hozzáfér hozzájuk, de a tartalmuk nem kerül be azonnal a kontextusába. Claude az utasításfájlokat és az almappák tartalmát igény szerint tölti be, amikor megnyitja őket. Induláskor nem tölti be ezeket. Ezért előfordulhat, hogy egy mélyen beágyazott almappában lévő fájl „láthatatlan”, amíg közvetlenül meg nem adod Claude-nak az útvonalát. A megoldás egyszerű: add meg Claude-nak a fájl pontos útvonalát, vagy kérd meg, hogy előbb olvassa el a fájlt, és máris láthatóvá válik.

Fontos, hogy ne keverj össze két különböző helyzetet. Egy szomszédos mappa (amely a projekten kívül van) egyáltalán nem érhető el, amíg hozzá nem adod. A projekten belüli almappa más: Claude hozzáfér, de kezdetben nem tartja észben a mappa tartalmát.

Így működik. Amikor Claude elindul, betölti a projekt legfelső szintjein található dolgokat. Az almappákban lévő fájlokat igény szerint tölti be, amikor odalép, hogy elolvasson valamit. A dokumentáció az utasításfájlok kapcsán írja le ezt a működést, de ugyanez a logika általában a kontextusra is érvényes.

Claude felfedezi a munkakönyvtár almappáiban lévő fájlokat. Induláskor nem tölti be őket, hanem akkor veszi fel őket, amikor az adott almappákban lévő fájlokat olvassa.

— Claude Code Docs, Manage Claude's memory, hivatalos dokumentáció

Egyszerűen fogalmazva: a mélyen beágyazott almappában lévő fájl nem tűnt el, és teljes mértékben elérhető. Claude csak még nem emlékszik rá, mert még nem nézett oda — ezért tűnhet úgy, mintha Claude „nem látná” a fájlt, noha az ott van és hozzáférhető.

Egyetlen sorral megoldhatod. Add meg közvetlenül Claude-nak a fájl útvonalát — például src/components/header.jsx — vagy egyszerűen kérd meg, hogy előbb olvassa el a fájlt. Amint odanéz, a fájl bekerül a kontextusba, és a megszokott módon dolgozhatsz vele. Nem kell semmilyen beállítást módosítani.

Hol tűnnek el a fájlok a @ menüből, és mi köze ehhez a .gitignore fájlnak?

Lényeg

Amikor beírod a @ jelet, a Claude Code megjeleníti a választható fájlok listáját. Alapértelmezés szerint ez a lista elrejti mindazt, ami szerepel a .gitignore fájlban — például szolgáltatási mappákat, környezetfájlokat és buildkimeneteket. Ezért előfordulhat, hogy egy fájl a helyén van, mégsem jelenik meg a @ menüben. Ezt a respectGitignore beállítás szabályozza: alapértelmezés szerint be van kapcsolva, és elrejti ezeket a fájlokat. Állítsd false értékre, és a menü a .gitignore fájlban felsorolt fájlokat is megjeleníti. Az ilyen fájlok útvonalát bármikor beírhatod kézzel.

Egy másik gyakori ok, ami miatt azt gondolhatod, hogy Claude „elveszített” egy fájlt, a fájlválasztó. Amikor beírod a @ jelet, megjelenik egy lista, amelyből könnyen kiválaszthatsz egy fájlt a teljes útvonal beírása nélkül. A lista azonban nem mutat meg mindent.

Alapértelmezés szerint a @ menü elrejti a .gitignore fájlban felsorolt fájlokat. Ez a fájl határozza meg, mi ne kerüljön be a megosztott tárolóba: szolgáltatási mappák, jelszavakat és környezeti beállításokat tartalmazó fájlok, valamint a kész buildkimenetek. Ennek egyértelmű az oka — általában nem kell kézzel dolgoznod ezekkel a fájlokkal, ezért csak zsúfolnák a listát. Néha azonban mégis szükséged van valamelyikre, az pedig nem jelenik meg a menüben.

Ezt a respectGitignore beállítás szabályozza. Alapértelmezés szerint be van kapcsolva, így a .gitignore fájlban szereplő fájlok nem jelennek meg a menüben. Ha látni szeretnéd őket, állítsd false értékre:

{
  "respectGitignore": false
}

Ugyanezt a fájl szerkesztése nélkül is megteheted a Claude Code-on belüli /config paranccsal. Az ott található kapcsoló neve: “Respect .gitignore in file picker.” Vedd ki a jelölést, és a rejtett fájlok újra megjelennek a menüben.

Egy fontos megjegyzés: a respectGitignore csak a @ menüre vonatkozik, a fájlhozzáféréshez nincs köze. Ha egy fájl rejtve van is a listában, az útvonalát bármikor beírhatod kézzel, Claude pedig elolvassa. A menü kényelmi funkció, nem ez határozza meg a hozzáférés határait.

Mit tegyél, ha a Claude Code nem tud elolvasni egy adott fájlt?

Lényeg

Néha a mappa megfelelő, Claude mégsem hajlandó elolvasni egy adott fájlt. Ennek általában a beállításokban található korlátozás az oka. A settings.json fájlban lehetnek deny szabályok, amelyek bizonyos fájlok olvasását tiltják — leggyakrabban a kulcsokat és jelszavakat tartalmazó .env fájlokét. Van olyan beállítás is, amely teljesen letiltja a munkamappákon kívüli fájlok olvasását. Ellenőrizd mindkettőt a settings.json fájlban. Ne feledd, hogy a .env fájlra vonatkozó korlátozás alapértelmezett védelmi intézkedés; alapos ok nélkül nem érdemes eltávolítani.

Ha biztosan jó a mappa, és a hozzáférés engedélyezett, Claude mégsem hajlandó elolvasni egy adott fájlt, akkor valószínűleg korlátozás vonatkozik rá. A korlátozások a settings.json beállításfájlban találhatók, és kétfélék lehetnek.

Az első típus bizonyos fájlokra vonatkozó célzott korlátozás. A beállításokban ezek deny szabályok, és leggyakrabban a .env fájlra vonatkoznak, amely a kulcsokat és jelszavakat tárolja:

{
  "permissions": {
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)"
    ]
  }
}

Egy ilyen szabály megakadályozza, hogy Claude elolvassa a megadott fájlokat, és ez szándékos. A kulcsok és jelszavak nem kerülhetnek be a modellel folytatott beszélgetésbe, ezért a .env fájl alapértelmezés szerint le van zárva. Ha azt tapasztalod, hogy Claude nem olvassa el a .env fájlt vagy más, titkokat tartalmazó fájlt, az a tervezett működés, és alapos ok nélkül ne távolítsd el ezt a korlátozást.

A második típus minden, munkamappákon kívüli dologra vonatkozó általános korlátozás. Ezt a blockReadsOutsideWorkingDirectories beállítás szabályozza. Ha be van kapcsolva, Claude megtagadja a munkakönyvtáron kívüli fájlok olvasását, akkor is, ha közvetlenül próbálod megnyitni őket. Ha az értéke true, és szükséged van egy külső fájlra, vagy add hozzá a mappáját az /add-dir paranccsal, vagy kapcsold ki a korlátozást:

{
  "permissions": {
    "blockReadsOutsideWorkingDirectories": false
  }
}

Ez a beállítás a 2.1.257-es verzióban jelent meg. Ha már mindent megpróbáltál, de a fájl továbbra sem érhető el, ellenőrizd a deny és a blockReadsOutsideWorkingDirectories beállításokat is.

Hol kezdd, ha a Claude Code nem látja a fájlokat?

Lényeg

Kezdd a mappa ellenőrzésével: kérd meg Claude-ot, hogy a pwd paranccsal mutassa meg az aktuális könyvtárat, majd hasonlítsd össze a projekt helyével. Ha nem egyeznek, indítsd újra Claude-ot a projektmappából, vagy lépj át oda a /cd paranccsal. Kellenek fájlok egy szomszédos mappából? Nyisd meg a hozzáférést az /add-dir paranccsal. Nem lát egy almappában lévő fájlt? Add meg Claude-nak közvetlenül az útvonalat. Hiányzik egy fájl a @ menüből? Ennek a .gitignore fájlhoz van köze — módosítsd a respectGitignore beállítást. Egy fájl le van zárva? Keresd meg a deny korlátozást a settings.json fájlban.

Íme egy rövid terv, amelyen felülről lefelé haladhatsz.

  1. Ellenőrizd a munkamappát: kérd meg Claude-ot, hogy a pwd paranccsal mutassa meg az aktuális könyvtárat, majd hasonlítsd össze a projekt helyével.
  2. Ha eltérnek a mappák, indítsd újra Claude-ot a megfelelő helyről (cd project, majd claude), vagy lépj át oda a /cd paranccsal.
  3. Kellenek fájlok egy szomszédos mappából? Add hozzá az /add-dir paranccsal, vagy a Claude indításakor használd a --add-dir kapcsolót.
  4. Egy almappában lévő fájl nincs benne a kontextusban? Add meg Claude-nak közvetlenül az útvonalat, vagy kérd meg, hogy olvassa el a fájlt.
  5. Hiányzik egy fájl a @ menüből? A .gitignore az oka. Állítsd a respectGitignore értékét false-ra, vagy vedd ki a jelölést a /config menüben.
  6. Egy adott fájl le van zárva? Ellenőrizd a deny és a blockReadsOutsideWorkingDirectories szabályokat a settings.json fájlban.

Tíz esetből kilencszer már az első lépés megold mindent: Claude-ot rossz mappából indították el. A fájlhozzáférés az alap, de ettől még nem épül fel helyetted a projekt. Részletesen bemutattam, hogyan építhetsz fel kontextust Claude körül úgy, hogy észben tartsa az egész projektet, és ne veszítse el a fonalat a Second Brain a Claude Code-ban című útmutatómban.

Források

Az eszközök használatáról további anyagokat találsz az Ailoot dokumentációjában.

További részletek

Kérdések és válaszok: A Claude Code nem látja a projektfájlokat: miért, és mit tegyél 2026-ban

Miért más home-ból indítani, mint szomszédos projektből?

A home alatti projekt leszármazott, ezért onnan indítva nem kerül a munkafán kívülre; a kívántnál tágabb kontextust kapsz. A munkamappa testvére azon kívül van. Hiányzó hozzáférés diagnosztizálása előtt a teljes útvonalakat vesd össze.

Az almappához hozzáférés azt jelenti, hogy fájljai már kontextusban vannak?

Nem. Add meg a fájl útvonalát, és kérd az olvasását. Tiltásnál nézd meg az alkalmazandó jogosultságokat; a választómenüből kimaradt fájl és a megtagadott fájlolvasás külön probléma.

Összes cikk