Egy valódi Claude Code automatikus programozási eset alapján – néhány prompt trükk megosztása

Ez a cikk egy valódi eset útján mutatja be a Claude Code gyakorlati alkalmazását. A megosztás előtt végezzünk egy kis felmérést.
Eredeti igény: Egy tisztelt fizető felhasználó szeretné, hogy a cikkekben megjelenjen a módosítás időpontja.
Első pillantásra ez az igény nehezen megvalósíthatónak tűnik. Mivel a weboldalamon található cikkek nem adatbázisban tárolódnak, hanem a next.js SSG-jével készülnek. Ezeknek alapból nincs frissítési idejük.
Itt egy trükk: a probléma megoldásánál ne adjuk közvetlenül az eredeti igényt a Claude Code-nak, ennek több oka van:
1. Az eredeti igény viszonylag homályos, és félreértelmezheti. Ha egyszer félreérti, akkor bár hozzáad egy időpontot, az nem feltétlenül megbízható.
2. A Claude Code Token-fogyasztása igazán magas, így a homályos igény értelmetlenül sok Token elpazarlásához vezethet.
Ezért az eredeti igényt fel kell bontani. Először a deepseek-ben kérdeztem rá, ami két megoldást ajánlott:
1. Fájl építési idő – minden build során meg kell kapnunk a fájl építési idejét. De a turbopack csomagolási stratégiája kissé más, minden buildnél a fájl hash értéke változik, így ez az építési idő nem feltétlenül megbízható.
2. git commit idő – úgy gondoltam, ez megbízhatóbb lehet.
A hozzávetőleges megoldási irány ismeretében elkészült ez az egyszerű prompt: fordítsd le a git commit időt minden egyes .mdx cikk fejlécébe.
A Claude Code meglehetősen megbízható, ha a prompt pontos, általában nincs vele gond, csak rávág és végrehajtja.
Miután 7 dollár keretem elfogyott, és körülbelül 20 percet vett igénybe, végül sikerrel járt.
Ahol nem számítottam problémára, ott mégis történt: kihagyott 171 fájlt a módosításból.
Itt van egy nagy buktató: valójában ezek a kihagyott fájlok csak egy extra pass paramétert kaptak meg, minden más teljesen ugyanaz.
<PostLayout pass>...De nem volt rugalmas, és ezt a plusz paramétert teljesen különböző egyéni komponensként értelmezte. Aztán kihagyta a feldolgozást ~ ~
import Layout from 'components/post-layout';
import { getGitFileInfo } from '@/utils/git-info';
export default function Article({ children }: any) {
const gitInfo = getGitFileInfo('src/app/az-utad/page.mdx');
return (
{children}
);
}De a valós helyzet az, hogy nekem így kellett volna lennie, a futási eredmény teljesen azonos lett volna.
import MdxLayout from 'components/mdx-layout';
export default function Article({ children }: any) {
return (
{children}
);
}És ekkor belebotlottam a promptba.
Újra beírtam a promptot: használd ugyanazt a módszert, mint fent, hogy átalakítsd a kihagyott 171 fájlt.
Ha jobban meggondolom, ez a kifejezés kissé kétértelmű. Mivel a Claude Code már adott egy javasolt megoldást, de én nem fogadtam el, a szándékom az volt, hogy a már módosított több száz fájl mintájára módosítsam a kihagyott fájlokat. De a végrehajtás során úgy értelmezte, hogy: a fent javasolt megoldásra gondolok.
Ez a kétértelműség azt eredményezte, hogy 20 percig hajtotta végre a nem kívánt megoldást, közben 2 hibát javított ki önmagától, és mohón nyelte a tokenjeimet. A kétféle értelmezés ütközése hibákhoz vezetett.
Végül kénytelen voltam feladni ezt a végrehajtást, és újra egyértelművé tenni a szándékomat.
Összefoglalás
1. A promptban érdemes viszonylag stabil és pontos megoldási módot tartalmazni, minél kevesebbet kelljen gondolkodnia az AI-nak, így csökkenthető a hallucináció aránya.
2. A promptban ne legyen kétértelműség, mert az könnyen hibákhoz vezet. Bár a Claude Code végül javíthat, de ez nagy mennyiségű token fogyasztással jár. És mivel az LLM előrejelzési mechanizmuson alapuló eredményeket produkál, a korai félreértések, kétértelműségek minden további lépést egyre távolabb visznek a helyes iránytól, és megpróbál logikailag önmagát alátámasztani, olyan dolgokat generál, amelyek nem léteznek. Minél tovább ír, annál nagyobbak a problémák, és növeli a fejlesztő ellenőrzési nehézségeit is. Ha átver a hallucinációja, az súlyos következményekkel járhat.
3. A természetes nyelv korlátozó ereje nem olyan pontos, mint a kódé. A promptban a fájlnév, kódváltozók, kód specifikus szavak, szakkifejezések használata jelentősen csökkenti a Claude Code hallucinációját.





