Blog

Kako preveriti kodo, ki jo je ustvaril AI, če ne znate brati kode: 7 preverjanj za neprogramerje v letu 2026

Markdown

AI je napisal kodo, vendar je ne znate prebrati? Pripravljen kontrolni seznam s 7 preverjanji in pozivi za odkrivanje nedelujoče kode in varnostnih lukenj pred objavo.

Preberi celoten članek

Ključne ugotovitve

AI za vas v nekaj minutah napiše kodo, vendar je zdaj njeno preverjanje vaša naloga. Spodaj je 7 preverjanj, s katerimi lahko pred predstavitvijo projekta komur koli odkrijete nedelujočo kodo, varnostne luknje in izmišljotine AI-ja. Kode vam ni treba brati.

AI je za vas v enem večeru sestavil spletno mesto ali bota. Vse se odpre, gumbi delujejo in zdi se, da vse teče. Projekt pokažete ljudem, dan pozneje pa ugotovite, da plačilni obrazec zaračuna denar, naročila pa nikoli ne prispejo. Ali pa da je zbirka podatkov s telefonskimi številkami strank odprta za ves internet.

Tudi sam sem tako objavljal svoje prve projekte: stvari, ki so bile videti delujoče, so presenetile resnične uporabnike. Zdaj pred vsako predstavitvijo projekta drugim preverim projekt po istem kontrolnem seznamu. Pri tem ne preberem niti ene vrstice kode — nisem prišel zaradi tega, pa verjetno tudi vi ne.

In to ni paranoja. Anthropic je analiziral 400.000 sej Claude Code: v sedmih mesecih se je delež dela, namenjenega odpravljanju nedelujoče kode, zmanjšal s 33% na 19%. Delež se je zmanjšal, vendar ni izginil. Vsaka peta seja je še vedno namenjena temu, da »popravi, kar je pokvaril AI«.

Pisanje kode samo po sebi ni več ozko grlo. Zdaj je pomembno, kako dobro razumete nalogo in kako dobro znate preveriti rezultat.

Dodatna gradiva o nastavitvi orodij so na voljo v dokumentaciji Ailoot.

Zakaj preverjati kodo, ki jo je ustvaril AI, če že deluje?

Ključne ugotovitve

»Deluje« in »deluje pravilno« nista isto. AI optimizira za to, da se koda zažene in je videti dokončana, ne pa za to, da je varna, poceni in počne natanko to, kar želite. Preverjanje vas varuje pred presenečenji, ki se pojavijo ob resničnih uporabnikih.

AI napiše kodo, ki je na prvi pogled videti v redu. Zažene se, zaslon se prikaže in predstavitev je prepričljiva. Toda zagon vam ne pove, ali se denar izračunava pravilno, ali je vaša zbirka podatkov izpostavljena navzven ali pa se bo vse sesulo, ko prispe stoti uporabnik.

Številke to potrjujejo. Preizkus FrontierCode je junija 2026 preveril, kako pripravljena je bila koda, ki jo je ustvaril AI, za resnično delo brez sprememb. Tudi pri najboljših modelih za najtežje naloge je bil delež približno 13%. Z drugimi besedami, pri zahtevnih nalogah je treba večino kode, ki jo ustvari AI, ročno dodelati, preden se lahko zanesete nanjo.

Dobra novica je, da lahko preverjanje opravi vsakdo. To je Anthropic ugotovil na podlagi istih 400.000 sej:

Uspeh je odvisen od tega, kako dobro oseba razume nalogo, ki jo rešuje, in ne od tega, ali zna programirati.

— Anthropic, https://www.anthropic.com/research/claude-code-expertise

Vaša prednost pred katerim koli programerjem, ki ga najamete, je v tem, da razumete svojo nalogo. Tudi preverjanje temelji na razumevanju; kode vam za to ni treba brati. Spodaj so ravno takšna preverjanja, ki jih lahko brez težav opravite sami.

Kaj gre lahko narobe pri kodi, ki jo ustvari AI?

Ključne ugotovitve

Obstaja pet vrst težav: koda ne deluje; deluje, vendar ne tako, kot želite; varnostne luknje; je draga ali počasna; AI si je nekaj izmislil. Vsako od spodnjih sedmih preverjanj obravnava eno ali več teh tveganj. Preden začnete preverjati, je koristno poznati teh pet vrst težav: tako boste pri vsakem koraku vedeli, kaj iščete.

Pred preverjanjem je koristno vedeti, kaj iščete. Koda, ki jo ustvari AI, ima pet tipičnih težav. Vseh pet lahko opazite brez branja kode, tako da spremljate, kako se projekt obnaša.

Kaj je narobeKako je to videti za vas
Ne delujeGumba ni mogoče klikniti, stran je prazna, »error 500«
Deluje napačnoPlačilo gre skozi, vendar se naročilo ne ustvari; e-pošta gre napačni osebi
Varnostna luknjaV kodi je viden skrivni ključ; zbirka podatkov je odprta; obrazec je mogoče pokvariti z vnosom
Drago ali počasnoSpletno mesto se nalaga 10 sekund; ob koncu meseca dobite račun za API AI
AI si je nekaj izmislilSklicuje se na orodje, ki ne obstaja; namesto pravih podatkov je uporabil testne podatke

Sledi sedem preverjanj po vrsti. Prvo odkrije težavi »ne deluje« in »deluje napačno«; srednja se osredotočajo na varnost in izmišljotine; zadnja pa so varovalke pred objavo. Najbolje jih je opraviti zaporedno: vsako temelji na tem, da je bilo prejšnje preverjanje dokončano.

Preverjanje 1: Prosite AI, naj svojo kodo pojasni z običajnimi besedami

Ključne ugotovitve

Najprej prosim AI, naj z običajnimi besedami in brez kode povzame, kaj je naredil. Če se povzetek ne ujema s tem, kar ste zahtevali, je koda že napačna, četudi se zažene. Tako preverite, ali je AI nalogo razumel enako kot vi.

Nalogo ste opisali z besedami. AI jo je prevedel v kodo. Med tema korakoma se lahko pomen izgubi: AI vas je morda razumel drugače, se odločil namesto vas ali ubiral bližnjice. Neskladje lahko odkrijete brez branja kode — samo prosite ga, naj z običajnimi besedami opiše, kaj je naredil.

PozivProsite AI, naj pojasni, kaj je naredil

Z običajnimi besedami in brez kode natančno pojasni, kaj si pravkar naredil:

katero nalogo rešuje ta koda

kaj se bo zgodilo, ko uporabnik klikne gumb ali pošlje obrazec

kje so shranjeni podatki in kdo ima dostop do njih

kaj bi lahko šlo narobe in v kateri situaciji

Piši, kot da bi pojasnjeval nekomu, ki še nikoli ni programiral. Če za kateri koli del nisi prepričan, da je pravilen, to jasno povej.

Preberite odgovor in ga primerjajte s tem, kar ste imeli v mislih. Če se ujema, nadaljujte. Če AI »blebeta«, se zmede v lastni razlagi ali opisuje nekaj drugega od tega, kar ste zahtevali, pomeni, da ne razume povsem, kaj je ustvaril. Zahtevajte popravke in pojasnite, kaj ste mislili, namesto da mu preprosto verjamete.

Mimogrede, če AI pogosto naredi nekaj drugega od tega, kar ste zahtevali, je težava pogosto v tem, kako ste oblikovali nalogo, in ne v samem modelu. Ločeno sem razčlenil, zakaj Claude ne naredi tega, kar ste zahtevali.

Preverjanje rezultatov AI je del inženiringa konteksta: nadzorujete tako to, kaj AI-ju posredujete kot vhod, kot tudi to, kako ocenite rezultat kot izhod.

Preverjanje 2: Preizkusite scenarije tako, kot bi jih resnični uporabnik

Ključne ugotovitve

Odprite projekt in naredite to, kar bi naredil uporabnik: registrirajte se, plačajte, pošljite obrazec. Nato namenoma povzročite težave — vnesite nesmisel, dvakrat kliknite, pustite polja prazna. Polovica težav se pokaže že tukaj, ne da bi prebrali eno samo vrstico kode. Plačilo preverite posebej in temeljito: ali je bilo naročilo ustvarjeno, ko je bil denar zaračunan?

Predstavitev AI vedno sledi idealnemu scenariju: pravilni podatki, en klik, vse se izide. Resnični uporabnik se ne vede tako. Naredi napako, klikne napačno stvar ali v polje za telefon vnese emoji. Vaša naloga je, da greste skozi projekt tako, kot bi šel uporabnik.

  1. Izvedite glavni scenarij od začetka do konca

    Naredite to, čemur je projekt namenjen: registrirajte se, oddajte naročilo, pošljite zahtevo. Pojdite do konca, ne ustavite se na polovici.

  2. Plačilo preverite ločeno in v praksi

    Če projekt sprejema denar, v testnem načinu sami izvedite plačilo najmanjšega zneska. Prepričajte se, da je bilo naročilo ustvarjeno, da se je stanje spremenilo in da ste vi in stranka prejeli e-pošto. Plačilo, ki »gre skozi«, vendar ne ustvari naročila, je klasična tiha napaka.

  3. Namenoma povzročite težave

    Pustite polja prazna. Namesto številk vnesite črke. Dvakrat zapored kliknite »Pošlji«. Naložite datoteko v napačnem formatu. Dober projekt bo vljudno sporočil: »tega ne morete narediti«; slab se bo sesul ali tiho zavrgel podatke.

  4. Odprite projekt na telefonu

    Polovica uporabnikov bo prišla prek telefona. Preverite, ali je postavitev še vedno urejena in ali tam delujejo isti gumbi.

Vse, kar ste odkrili, AI-ju podajte v enem seznamu: »To se je v teh korakih pokvarilo; popravi in pojasni, zakaj se je to zgodilo.« Težav ne obravnavajte eno po eno — posredujte mu celoten seznam, da bo videl širšo sliko in manj verjetno pokvaril eno stvar, medtem ko popravlja drugo.

Preverjanje 3: Vprašajte AI o varnosti — tukaj je poziv

Ključne ugotovitve

Varnost je nekaj, česar neprogramer ne more videti na lastne oči, posledice pa so lahko najhujše: razkriti ključi, izpostavljena zbirka podatkov, obrazec, ki ljudem omogoča vdor. Tega vam ni treba iskati samim — prosite AI, naj opravi pregled in vsako ugotovitev pojasni z običajnimi besedami. Spodaj je pripravljen poziv, ki projekt preveri za pet najpogostejših lukenj.

Nedelujoč gumb opazite takoj. Varnostne luknje ne: projekt deluje, kot da je vse v redu, dokler je nekdo ne izkoristi. Najpogostejše težave pri projektih, ustvarjenih z vibe codingom, so skrivni ključi, zapisani neposredno v kodi, zbirka podatkov, izpostavljena internetu, in obrazci, ki nekomu omogočajo pošiljanje zlonamernih vnosov. AI lahko vse to najde, če ga vprašate neposredno.

PozivPreveri moj projekt za varnostne luknje

Preglej ta projekt glede varnostnih težav in vsako ugotovitev pojasni z običajnimi besedami, brez žargona. Preveri naslednji seznam:

Preveri, ali so v kodi neposredno zapisani skrivni ključi, gesla ali žetoni. Zasebne skrivnosti se smejo uporabljati samo na strežniku, lokalna konfiguracija, kot je .env, pa mora biti izključena iz Gita. Datoteka .env in .gitignore ne preprečita vključitve javnih spremenljivk frontenda v gradnjo za brskalnik. Preglejte dejanski JavaScript, zemljevide izvorne kode, HTML in omrežne odgovore za odjemalca ter preverite odsotnost zasebnih ključev.

Preveri, ali je zbirka podatkov izpostavljena internetu in kdo ima dostop do nje.

Preveri, ali lahko vnos pokvari obrazce: z vstavljanjem v poizvedbe zbirke podatkov ali z dodatno kodo v besedilnih poljih.

Kaj se bo zgodilo, če uporabnik pošlje zlonamerne podatke?

Preveri, ali so katere notranje strani ali skrbniška plošča izpostavljene brez gesla.

Za vsako točko povej, ali obstaja težava, navedi jasen primer tveganja in pojasni, kako jo odpraviti. Začni z najnevarnejšo težavo.

Preverite tudi, ali vaš projekt slepo naredi vse, kar prejme od zunaj. Temu pravimo posredna prompt injection: ukaz je skrit v e-pošti, komentarju ali datoteki nekoga drugega, vaš agent AI pa mu sledi, ker ga zamenja za nalogo. Če projekt bere zunanje podatke in na njihovi podlagi ukrepa, vprašajte AI, kaj bi se zgodilo, če bi ti podatki vsebovali skrito navodilo.

To je obsežna tema, ki je en sam poziv ne more v celoti pokriti. Če projekt obdeluje denar ali osebne podatke strank, preberite ločen vodnik o varnosti vibe codinga.

Preverjanje 4: Ali si je AI izmislil knjižnice ali podatke?

Ključne ugotovitve

AI se včasih sklicuje na neobstoječa orodja in namesto resničnih podatkov pusti testne. Videti je prepričljivo, pozneje pa se pokvari. Neposredno vprašanje za AI in en zagon projekta to odkrijeta v minuti. Isto vprašanje vas varuje tudi pred tujo kodo, v kateri napadalci zakamuflirajo orodja z izmišljenimi imeni knjižnic.

AI samozavestno napiše stvari, ki ne obstajajo. Morda doda knjižnico z verjetnim imenom, ki v resnici ne obstaja. V projektu lahko pusti testna nadomestila: izdelek z imenom »Example«, e-poštni naslov example@example.com ali nadomestno besedilo namesto prave vsebine. V predstavitvi to zlahka spregledate, za resničnega uporabnika pa je to neprijetno ali pa ne deluje.

To lahko odkrijete v dveh korakih. Najprej vprašajte neposredno:

PozivPreveri, ali si si kaj izmislil

Preglej projekt in pošteno preveri:

Ali vsa zunanja orodja in knjižnice, ki si jih dodal, zares obstajajo in se pravilno namestijo? Si si kaj izmislil?

Ali so namesto resničnih podatkov še vedno prisotna testna nadomestila, primeri ali nadomestno besedilo?

Ali so vse povezave, naslovi in kontaktni podatki v projektu resnični in ne nadomestila?

Naštej, kaj si našel, in predlagaj, s čim to nadomestiti.

Drugič preprosto zaženite projekt in si ga oglejte. Izmišljena knjižnica ob zagonu skoraj vedno povzroči napako. Nadomestila pa zlahka opazite: če na strani piše »Izdelek 1«, jih še niste zamenjali.

Izmišljene knjižnice so še posebej nevarne, ker napadalci namenoma registrirajo orodja z imeni, ki si jih AI rad izmisli. Če tako orodje namestite, v vaš projekt pride tuja koda. Zato vprašanje »ali ta knjižnica sploh obstaja?« vzemite resno — neposredno gre za varnost vašega projekta.

Preverjanje 5: Naj drugi model preveri prvega

Ključne ugotovitve

AI, ki je napisal kodo, je slab pregledovalec: običajno se strinja sam s sabo. Projekt dajte v pregled drugemu modelu ali vsaj odprite novo sejo — svež pogled opazi, kar je prvi spregledal. To je podobno drugemu mnenju, ki bi ga pred operacijo poiskali pri drugem zdravniku.

AI ima neprijetno lastnost: strinja se. Vprašajte: »Je tukaj vse v redu?« in potrdil bo, da je, ker se prilagodi pričakovanemu odgovoru. Temu pravimo prilizovanje AI-ja, o katerem sem pisal v ločenem članku. Tak sogovornik bo do lastnega dela prizanesljiv.

Rešitev je preprosta: pridobite drugo mnenje. Odprite novo sejo ali uporabite drug model in mu dajte projekt v pregled z istim pozivom iz 3. preverjanja ter dodatkom: »to kodo je napisal drug AI; poišči njene šibke točke«. Nov model ni vezan na prejšnji pogovor in bo verjetneje opozoril na težave.

  1. Odprite čisto sejo ali uporabite drug model

    Uporabite drugi model ali istega v novem oknu brez zgodovine nalog.

  2. Predajte mu projekt in ga pravilno usmerite

    Jasno povejte: »to kodo je napisal drug AI; tvoja naloga je poiskati napake in tveganja, ne pa je hvaliti«. Tako omejite prilizovanje.

  3. Primerjajte obe mnenji

    Če se obe ujemata, imata verjetno prav. Če se ne strinjata, preverite to točko — tam postane zanimivo.

Točno to se zdaj dogaja v panogi: AI piše, AI preverja, končna odločitev pa ostane človeku. Odločitve ne morete prepustiti modelu — to je vaša naloga.

Preverjanje 6: Kako povrniti stanje, če sprememba kaj pokvari?

Ključne ugotovitve

Pred vsako spremembo shranite delujočo različico v git. Če naslednje preverjanje kaj pokvari, se lahko z enim ukazom vrnete na prejšnjo različico, namesto da bi projekt znova sestavljali. To je varovalka, ki vam vzame deset sekund. Za to vam ni treba brati kode — vse opravite z dvema preprostima zahtevama AI-ju.

Preverjanja s tega seznama pogosto vodijo do sprememb, spremembe pa včasih pokvarijo nekaj, kar je delovalo. Da se to ne sprevrže v katastrofo, pred vsakim krogom popravkov shranite delujočo različico v git. To je kot shranjevanje igre: če kaj pokvarite, naložite zadnjo shranjeno točko.

Za to vam ni treba brati kode. Samo prosite AI: »preden kaj spremeniš, shrani trenutno delujočo različico v git z jasno oznako«. Če se po spremembah vse podre: »povrni projekt na prej shranjeno različico«.

Če vam je git še vedno tuj, imam za vas dva vodnika: kako povrniti spremembe v Claude Code in kaj storiti, če je AI izbrisal vašo zbirko podatkov. Drugi je namenjen primeru, ko je za povrnitev že prepozno, vendar lahko podatke še vedno obnovite.

Preverjanje 7: Kaj nazadnje preveriti pred objavo?

Ključne ugotovitve

Zadnje preverjanje pred objavo: plačilo je preklopljeno s testnega na produkcijski način, zasebne skrivnosti ostajajo na strežniku in zunaj datotek za odjemalca, podatki imajo varnostno kopijo, objava in domena pa delujeta. Preglejte kratek seznam in nato začnite. Tu ljudje najpogosteje izgubijo svoja prva plačila: projekt deluje, vendar so pozabili eno nastavitev.

Prvih šest preverjanj se nanaša na to, kaj počne koda. Sedmo preveri, ali je projekt pripravljen na srečanje z ljudmi. Tu se ljudje najpogosteje spotaknejo: projekt deluje, vendar pozabijo plačilo preklopiti s testnega ključa na produkcijskega, zato prve stranke plačajo »zares-nezares«.

  1. Plačilo: s testnega na produkcijsko

    Če sprejemate plačila, se prepričajte, da je povezan produkcijski ključ plačilnega sistema in ne testni. Opravite eno resnično plačilo z najmanjšim zneskom in ga vrnite sami sebi.

  2. Skrivnosti so tam, kamor sodijo

    Vprašajte AI: »Ali se zasebni ključi uporabljajo samo na strežniku in je .env izključen iz Gita? Ali dejanska gradnja za brskalnik ali kateri odgovor odjemalcu vsebuje zasebni ključ, tudi prek javnih spremenljivk frontenda ali zemljevidov izvorne kode?« Preverite zgrajene datoteke in omrežne odgovore brskalnika, ne samo izvorne .env. Izključitev iz Gita vrednosti ne odstrani iz paketa frontenda.

  3. Varnostno kopirajte podatke

    Poskrbite, da se zbirka podatkov nekje samodejno shranjuje. Če se projekt izvaja na vašem strežniku, v vodniku Coolify pojasnjujem, kaj storiti glede objave.

  4. Objavljeni projekt deluje tudi zunaj vaše naprave

    Projekt odprite v telefonu prek zunanje povezave, ne le v svojem računalniku. Nekaj, kar deluje lokalno, po objavi ne deluje vedno.

Opravite vse štiri korake in projekt boste lahko brez skrbi pokazali ljudem. Če kaj ne prestane preverjanja, je bolje zdaj porabiti pol ure, kot se pozneje ukvarjati z nezadovoljnimi strankami.

Kaj če preverjanje traja predolgo — ali naj AI preprosto zaupate?

Ključne ugotovitve

Skušnjava je velika: AI je pameten, zakaj bi torej še enkrat preverjali? Toda zaupati brez preverjanja je kot podpisati pogodbo, ne da bi jo prebrali. Preverjanje traja nekaj minut, pokvarjen projekt, ki prizadene resnične ljudi, pa vam škoduje ugledu in denarnici. Poleg tega ta veščina hitro postane navada. Za rezultat ste še vedno odgovorni vi in te odgovornosti ne morete prepustiti modelu.

Razumem skušnjavo. Preverjanje se zdi dolgočasno in »ne zato sem dobil AI«. Toda za rezultat ste odgovorni vi, ne model. AI nima ugleda in ne nosi posledic: ustvaril je kodo in nanjo pozabil. Vi boste odgovarjali stranki, ki ji plačilo ni bilo izvedeno.

Ustvarjalec Claude Code ima še širši pogled:

Pisanje kode ni več ozko grlo — za to je poskrbel AI. Zdaj je vrednost drugje: v razumevanju naloge in preverjanju nastalega. To je vaša prednost — bolje kot kateri koli zunanji razvijalec veste, kakšen mora biti rezultat za vašo stranko.

Zakaj je preverjanje veščina in ne enkratna naloga?

Ključne ugotovitve

Enkratni pregled kontrolnega seznama je koristen. Resnična razlika pa se pokaže, ko preverjanje postane del vašega načina dela z AI-jem: pravi kontekst ob vnosu, navada preverjanja rezultata ob izhodu. Takrat AI preneha biti ruleta in postane orodje. Vsak naslednji projekt, ki ga ustvarite, bo sestavljen hitreje kot prejšnji.

Teh sedem preverjanj je minimum, ki ločuje »zagnal sem in upam« od »zagnal sem in vem, da deluje«. Opravite jih enkrat in večino presenečenj boste odkrili, še preden jih odkrijejo vaše stranke.

Od tam naprej to postane navada. AI-ju za vhod podajte pravi kontekst, rezultat pa preverite kot izhod, in vsak nov projekt bo nastal hitreje, ker ne boste začenjali od začetka.

Dodatna gradiva o uporabi orodij najdete v dokumentaciji Ailoot.

Več podrobnosti

Vprašanja in odgovori: Kako preveriti kodo, ki jo je ustvaril AI, če ne znate brati kode: 7 preverjanj za neprogramerje v letu 2026

Ali ključ API v .env zadošča za ohranitev skrivnosti?

Ne. Zasebni ključi se smejo uporabljati samo na strežniku. .env in .gitignore pomagata pri urejenosti repozitorija, javne spremenljivke frontenda pa se lahko kopirajo v paket brskalnika; preglejte dejanske datoteke in odgovore odjemalcu.

Kaj dokazuje delovanje plačilne poti poleg prepričljive predstavitve?

Dokončajte predvideni uporabniški scenarij ter po plačilu preverite naročilo, stanje, potrdilo ali e-pošto in shranjeni rezultat. Preizkusite tudi prazen vhod, dvojne oddaje ter obravnavo napak; sama uspešna bremenitev ne dokazuje pravilno ustvarjenega naročila.

Vsi članki