← 返回列表

Claude Code sorozat 3: Miért csak a terminál?

1.3 Miért írjunk kódot a terminálban?

Képzeld el: éppen egy új funkciót írsz, amikor hirtelen módosítanod kell egy alacsony szintű segédfüggvényt, amely három fájlban van szétszórva, és néhány hívás még modulokon is átível. Megnyitod a szerkesztőt, globálisan keresel, fájlt fájl után lapozgatsz, óvatosan módosítasz, majd futtatod a teszteket – és piros. Megnézed a hibát, nyomkövetést, javítod, és kezded újra.

A folyamat során a "gondolkodás, hogyan javítsd" idő valójában kevesebb, mint a fele. A másik fele mechanikus munka: fájlok keresése, hivatkozások módosítása, fordításra várás, kattintgatás.

Az AI terminálba helyezésének elsődleges célja ezen mechanikus munka csökkentése.

A terminál a legközelebb van a kódhoz

Használhatsz VS Code-ot, JetBrains-t vagy Vim-et. Bármelyiket is, a kódírás során nem kerülheted el a terminált. npm test, git log, grep, make build – ezek a műveletek természetes módon a parancssorban történnek.

Ha az AI társad is ugyanabban a terminálban van, a dolgok egyszerűbbé válnak. Nem kell fájltartalmakat másolgatni a chat ablakba, nem kell leírnod, hogy "a projektemben van egy UserService osztály, ami a src/services/user.ts 42. sorában van…". Claude Code a projekt gyökérkönyvtárában áll, és magától megnézi.

Ez egy kontextuális dimenzióugrás. Amikor azt mondod Claude Code-nak, hogy "segíts átalakítani a bejelentkezési modul hibakezelését", akkor tényleg elolvassa az auth/login.ts-t, az errors.ts-t, megkeresi az összes hívóhelyet, és közvetlenül módosítja. Nem kell közvetítőként szerepelned.

Szabadítson ki a "kezelő" szerepéből

Amikor böngészős AI chatet használunk, gyakran önkéntelenül egy "közvetítő" szerepét töltjük be: az AI kiadja a kódot, mi elolvassuk, ellenőrizzük, kimásoljuk, majd beillesztjük a szerkesztőbe. Ha a kód működik, minden rendben; ha nem, kimásoljuk a hibát, újra kérdezzük, újra másolunk. Ez a folyamat nagyon megzavarja a flow-t.

Claude Code tervezési elve az, hogy visszahelyezzen a "gondolkodó" szerepébe. Te elmondod az ötleted, ő cselekszik. A módosítás után közvetlenül a terminálban láthatod a diff-et, és eldöntheted, hogy elfogadod-e. Emellett segíthet teszteket futtatni és lint-elnivalókat is. Te többnyire csak a kódot olvasod és döntéseket hozol, nem pedig ablakokat váltogatsz.

Miért nem szerkesztői bővítmény?

Felmerülhet a kérdés: miért nem csinálunk egy AI bővítményt közvetlenül a szerkesztőbe?

A szerkesztői bővítmények természetesen hasznosak, és sok csapat használja is őket. De a terminálban lévő Claude Code-nak van néhány olyan tulajdonsága, amelyet nehéz lenne bővítménnyel pótolni:

  1. Nincs szerkesztőhöz kötve. Ma VS Code-ot használsz, holnap Neovim-re váltasz, vagy akár egy grafikus felület nélküli távoli szerveren is használhatod Claude Code-ot. Független az eszközválasztásodtól.
  2. Több "szokatlan" dolgot tehet. A terminálban bármilyen Shell parancsot végrehajthat. Ez sokkal tágabb hatókört biztosít – elindíthat Docker konténert adatbázis migráció ellenőrzéséhez, lekérhet távoli ágakat és ellenőrizheti az ütközéseket, vagy automatikusan futtathat e2e teszteket a kód módosítása után. Ezeket a szerkesztői bővítmények általában nem merik megtenni, vagy egyáltalán nem képesek rá.
  3. Kötegelt feldolgozás és automatizálás. Claude Code-ot beillesztheted szkriptekbe, hogy segítsen feldolgozni több tucat repót, tömegesen generálni dokumentációt, vagy automatikusan kezelni Issues-t. Ekkor már nem "asszisztens", hanem a folyamat egy láncszeme.

Egy saját kis példám

Korábban szükségem volt egy JavaScript projekt TypeScript-re történő migrálására, körülbelül 20 000 sornyi kóddal. Nem kézzel adtam típusokat fájlonként, és nem is számítottam arra, hogy egy szerkesztői bővítmény mindent megcsinál helyettem.

Egyszerűen elindítottam Claude Code-ot a projekt könyvtárában, és azt mondtam: "Migráld ezt a projektet fokozatosan TypeScript szigorú módba, minden alkalommal néhány fájlt módosítva, majd futtasd le a tsc --noEmit parancsot, és ha hibát talál, javítsd meg, amíg minden át nem megy."

A következő fél órában szinte csak egy dolgot csináltam: néztem a módosítások diff-jét, és bólintottam vagy megráztam a fejem. Időnként mondtam neki: "Itt ne használj any típust, definiálj egy interface-t", és folytatta a munkát. Végül a projekt lefordult, és ez sokkal gyorsabb volt, mint amire számítottam.

Ez persze nem azt jelenti, hogy Claude Code okosabb lenne, mint egy bővítmény. Hanem azt, hogy önmagában képes elvégezni a "módosítás-ellenőrzés-javítás" ciklust, ami a legfontosabb különbség közte és a chat-alapú AI között.

Végső soron a terminál kezet ad az AI-nak

Az AI terminálba helyezése lényegében végrehajtási képességet ad neki, nem csupán javaslattételi képességet.

Lehetővé teszi, hogy a kódod ne csak olvasható szöveghalmaz legyen, hanem olyan valós környezetté váljon, amelyet az AI "megérinthet", módosíthat és ellenőrizhet. Ez óriási ugrás.

Továbbra is te irányítod a projekt irányát és minden kulcsfontosságú döntést, de a fárasztó, alacsony kreativitású, ismétlődő munkák elvégzésére van egy alkalmasabb társ.

评论

暂无已展示的评论。

发表评论(匿名)