Najbitnije u tekstu (Key Takeaways):
-
Agentic AI u softverskom inženjeringu predstavlja korenitu promenu paradigme: prelazak sa pasivnih, tekstualnih četbota koji odgovaraju na pojedinačna pitanja na autonomne AI agente koji samostalno planiraju, izvršavaju komande u terminalu, popravljaju bagove i šalju gotove Pull Request-ove.
-
Suštinska razlika leži u uvođenju petlje razmišljanja i delovanja (ReAct framework: Reason + Act), mogućnosti upotrebe eksternih alata (Tool Use / Function Calling) i novog standarda pod nazivom Model Context Protocol (MCP) koji agentima omogućava bezbedan pristup bazama, fajl sistemima i API-jima.
-
Tradicionalne uloge u softverskim timovima doživljavaju tektonski poremećaj — težište rada programera pomera se sa rutinskog kucanja sintakse i pisanja boilerplate koda na arhitektonsko projektovanje, orkestraciju agenata, verifikaciju bezbednosti i upravljanje kontekstom.
-
Puna autonomija donosi i masovne inženjerske izazove: visoku potrošnju tokena, nepredvidive petlje rezonovanja, bezbednosne pretnje poput Indirektnog ubacivanja komandi (Indirect Prompt Injection) i opasnost od netransparentnog tehničkog duga u produkciji.
Samo pre nekoliko godina, dominacija generativne veštačke inteligencije u softverskom inženjeringu svodila se na prilično pasivan i predvidiv obrazac. Programer bi naišao na nepoznatu grešku u sintaksi, kopirao tekst iz terminala, zalepio ga u chat prozor alata poput ChatGPT-ja, sačekao odgovor, a zatim ručno prekopirao izgenerisani blok koda nazad u svoje razvojno okruženje. Nešto kasnije, ugradnja auto-complete asistencija direktno u urednik koda (poput prve generacije GitHub Copilot-a) ubrzala je ovaj proces, ali je suština ostala identična: čovek je i dalje bio taj koji inicira svaki korak, donosi svaku odluku i fizički spaja delove koda.
Danas se nalazimo usred nemilosrdne transformacije gde taj interaktivni, pasivni model ubrzano odlazi u istoriju.
Na scenu je stupio koncept Agentic AI — generacija veštačke inteligencije koja se ne zadovoljava time da vam pruži savet ili napiše isečak koda, već poseduje autonomiju da samostalno razmišlja, planira, izvršava komande, koristi eksterne alate, testira sopstvena rešenja i ispravlja sopstvene greške kada uoči da kôd ne prolazi CI/CD provere.
Ovo više nije priča o „pomoćniku koji vam špijunira dok kucate“. Ovo je priča o digitalnom kolegi kom možete poslati Jira tiket ili GitHub Issue sa tekstom: „Povećaj performanse pretrage u bazi i popravi bag sa autentifikacijom“, a zatim otići na kafu. Agent će samostalno analizirati celokupnu bazu koda, pronaći gde se nalaze sporni moduli, podići lokalno okruženje, napisati unit testove koji reprodukuju problem, izmeniti kod, pokrenuti testove u terminalu i na kraju poslati gotov Pull Request na vašu reviziju.
Kako je došlo do ovog skoka, šta se krije iza arhitekture ovih agenata i zašto Agentic AI u softverskom inženjeringu izaziva podjednako oduševljenje i paniku među inženjerima širom sveta?
Anatomija jedne revolucije: ReAct okvir i Model Context Protocol (MCP)
Da bismo razumeli zašto su autonomni agenti neuporedivo moćniji od klasičnih jezičkih modela, moramo raščlaniti njihovu unutrašnju arhitekturu.
Običan veli jezički model (LLM) je probabilistički kalkulator sledeće reči. On nema uvid u to šta se dešava nakon što vam ispiše odgovor. Agentic AI, sa druge strane, koristi takozvani ReAct okvir (Reasoning + Acting / Rezonovanje + Delovanje) koji model stavlja u neprekidnu radnu petlju.
Petlja rada autonomnog agenta odvija se kroz četiri sukcesivna koraka:
[ZADATAK OD ČOVEKA]
│
▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ 1. THOUGHT │ ───► │ 2. ACTION │ ───► │ 3. OBSERVE │ ───► │ 4. REFLECT │
│ (Razmišljanje│ │ (Korišćenje │ │ (Čitanje │ │ (Korekcija i │
│ i plan) │ │ alata) │ │ rezultata) │ │ sledeći korak)
└──────────────┘ └──────────────┘ └──────────────┘ └──────────────┘
▲ │
└─────────────────────────────────────────────────────────────────┘
-
Razmišljanje (Thought): Agent raščlanjuje složeni zadatak na manje, logičke korake i stvara internu strategiju (npr. „Prvo moram pročitati fajl
auth.go, zatim promeriti gde se poziva baza, pa napisati test“). -
Delovanje (Action): Agent bira i poziva konkretan alat koji mu je na raspolaganju (npr. pokreće komandu
read_file, šalje HTTP zahtev ili izvršavago testu terminalu). -
Zapažanje (Observation): Agent čita izlazni rezultat te akcije. Ako je komanda u terminalu vratila grešku (npr.
compilation error: undefined variable), agent je vidi. -
Refleksija (Reflect / Re-evaluacija): Na osnovu uočene greške, agent ne odustaje niti traži pomoć od čoveka. On prilagođava svoju strategiju, menja kôd i ponovo pokreće proces dok god ne ostvari cilj.
Povezivanje agenata sa svetom: Model Context Protocol (MCP)
Drugi ključni proboj koji je omogućio da Agentic AI u softverskom inženjeringu postane industrijski standard jeste lansiranje otvorenog standarda pod nazivom Model Context Protocol (MCP) od strane kompanije Anthropic.
Istorijski gledano, da biste AI modelu dali pristup vašoj bazi podataka, Git-u ili Slack-u, morali ste pisati prilagođene „wrapper“ skripte za svaki alat pojedinačno. MCP funkcioniše kao univerzalan „USB-C kabl za AI“.
MCP pruža standardizovani klijent-server protokol gde agent (klijent) može bezbedno komunicirati sa bilo kojim MCP serverom koji izlaže:
-
Izvore (Resources): Fajl sisteme, baze podataka, dnevnike aplikacija.
-
Alate (Tools): Komande koje agent može izvršiti (npr.
execute_sql,deploy_container,send_slack_message). -
Promptove (Prompts): Unapred definisana uputstva i šablone za rad.
Zahvaljujući MCP-ju, alati nove generacije (poput Claude Code, Cursor IDE, Windsurf ili Devin) mogu istovremeno komunicirati sa vašom lokalnom razvojnom mašinom, vektorskom bazom podataka unutar RAG sistema i proizvodnim serverima na cloudu.
Praktični primeri iz produkcije: Kako agenti rešavaju stvarne inženjerske zadatke
Da bismo razumeli koliki je ovo skok u odnosu na klasične četbote, pogledajmo tri stvarna scenarija iz svakodnevnog rada modernih inženjerskih timova.
Scenario A: Refaktoring zavisnosti i migracija zastarelog koda
Zadatak koji svaki programer mrzi jeste prebacivanje projekta sa zastarele verzije biblioteke na novu verziju (npr. migracija sa Python 2 na 3, ili prelazak sa starijeg ORM-a na noviji drajver). Ovo traži menjanje stotina fajlova, gde je posao izuzetno monoton, ali podložan greškama.
Kako ovaj zadatak rešava Agentic AI?
-
Agentu se zada komanda: „Migriraj sve baze podataka sa
pgx/v4napgx/v5u celom projektu.“ -
Agent samostalno pokreće komandu
grepili koristi ATS (Abstract Syntax Tree) za analizu projekta i pronalazi svih 140 fajlova u kojima se stari drajver koristi. -
Za svaki fajl, agent otvara kôd, vrši zamenu zastarelih funkcija novim sintaksnim profilima, proverava uvoz paketa i čuva izmene.
-
Agent u terminalu pokreće
go test ./.... Ako pet testova padne usled promenjenog potpisa neke funkcije, agent samostalno otvara te testne fajlove, popravlja ih i ponovo pokreće testiranje dok celokupan testni skup ne postane „zelen“. -
Agent pravi novu Git granu, piše sažet opis svih izmena i šalje Pull Request.
Inženjer u ovom procesu nije otkucao ni jedan jedini red koda — njegova uloga se svela na petominutni pregled (Code Review) gotovog PR-a.
Scenario B: Samostalno rešavanje incidenata u produkciji (Self-Healing Pipelines)
U naprednim CI/CD sistemima, agenti se spajaju sa sistemima za nadzor (Monitoring & Observability).
Kada sistem za praćenje zabeleži nagli skok grešaka 500 Internal Server Error nakon najnovijeg izbacivanja koda, agent dobija automatski alarm. Agent preuzima dnevnike grešaka, izoluje stak-trag (stack trace), pronalazi tačnu liniju koda koja uzrokuje pad, kreira „hotfix“ zakrpu, pokreće testove u izolovanom kontejneru i šalje predlog zakrpe dežurnom SRE inženjeru na Slack uz tekst: „Uočio sam pad servisa usled nulte vrednosti u modulu X. Pripremio sam popravku, kliknite ovde za odobrenje.“
O procesima praćenja i nadzora AI modela u produkciji pisali smo detaljno u našem vodiču kroz LLMOps u praksi i upravljanje AI sistemima u realnom radu.
Scenario C: Pisanje kompletne dokumentacije i testova
Kada se novi kôd spoji u glavnu granu, agenti zasnovani na MCP-ju mogu automatski pročitati sve izmene, ažurirati OpenAPI/Swagger specifikacije, dopisati nedostajuće unit i integracione testove, i generisati llms.txt datoteke namenjene drugim AI sistemima.
O tome kako pravilno struktuirati podatke za AI sisteme možete pročitati u tekstu o kako strukturirati podatke na sajtu pomoću Schema.org standarda i JSON-LD formata.
Mračna strana autonomije: Bezbednosne pretnje, nekontrolisani troškovi i hallucinated code
Predstaviti Agentic AI u softverskom inženjeringu kao savršeno rešenje bez mana bilo bi intelektualno nepošteno i opasno za bilo koji ozbiljan tim. Dati veštačkoj inteligenciji autonomiju i pristup terminalu nosi masovne, do sada neviđene rizične vektore.
Glavni inženjerski i bezbednosni izazovi obuhvataju:
1. Bekstvo agenta i zloupotreba sistemskih komandi
Onog momenta kada agent dobije mogućnost da izvršava komande u terminalu, on postaje potencijalno oružje u rukama napadača. Ako agent tokom pretraživanja interneta ili analize klijentskog fajla naiđe na zlonamerni tekst koji sadrži Indirektno ubacivanje komandi (Indirect Prompt Injection), agent može biti zbunjen i natjeran da obriše lokalne baze podataka, ukrade SSH ključeve ili pošalje tajne podatke na vanjski server.
2. Nekontrolisano trošenje tokena (Infinite Loops)
Budući da agenti rade u petlji rezonovanja, neretko se dešava da se agent „zaglavi“ pokušavajući da reši nerešiv problem. Na primer, ako agent pokušava da popravi kôd koji ima sintaksnu grešku u eksternoj biblioteci koju ne može promeniti, on može ući u beskonačnu petlju: izmeni kôd -> pokrene test -> test padne -> izmeni kôd na drugi način -> pokrene test…
Svaki taj prolaz kroz petlju šalje stotine hiljada tokena ka LLM provajderu. Ako nemate postavljene striktne budžetske limete na nivou platforme, samo jedan agent koji je ostao da radi preko noći može napraviti račun od nekoliko hiljada evra!
O kontroli ovih troškova saznajte više u tekstu o FinOps u praksi i metodama za smanjenje računa na cloudu za 30%.
3. Akumulacija tiho nastalog tehničkog duga
Agenti pišu kôd koji je statistički najverovatniji. Oni često naginju ka pisanju predugačkog, dupliranog koda koji na prvi pogled prolazi sve testove, ali je izuzetno tezak za kasnije ljudsko održavanje (Code Bloat). Ako inženjeri slepo prihvataju sve Pull Request-ove koje agenti generišu bez dubokog razumevanja unutrašnje arhitekture, kompanija u roku od šest meseci dobija projekat koji niko u timu više ne razume niti ume da popravi bez pomoći agenta.
Kvalitetno pisanje upita i postavljanje arhitektonskih pravila unutar .cursorrules fajlova ključno je za sprečavanje ovog problema.
Transformacija uloga u timu: Od tipkača sintakse do arhitekte konteksta
Ekspanzija pojma Agentic AI u softverskom inženjeringu menja definiciju onoga šta znači biti programer.
Zanimanje klasičnog „kucara koda“ koji dane provodi pretvarajući jednostavne zahteve iz Jira-e u sintaksu programskog jezika doživljava sudbinu daktilografa sa pojavom računara. Agenti taj posao obavljaju stotinama puta brže i jeftinije.
Međutim, ovo ne znači da su programeri postali suvišni — njihova uloga je podignuta na znatno viši, strateški nivo.
Nove ključne odgovornosti modernog inženjera uključuju:
-
Arhitekta konteksta i pravila (Context Architect): Glavni zadatak inženjera postaje priprema okruženja za rad agenata — pisanje sistemskih pravila, definisanje čiste arhitekture, postavljanje jasnih API ugovora i vođenje računa o tome da baza koda bude modularna i čitljiva i za ljude i za mašine.
-
Verifikator i revizor bezbednosti (Code & Security Auditor): Budući da agenti masovno generišu kôd, težište rada se pomera na pregled koda (Code Review), proveru logičkih graničnih slučajeva, testiranje otpornosti na napade i validaciju usklađenosti sa regulativama.
-
Orkestrator više-agentskih sistema (Multi-Agent Orchestrator): Inženjeri više ne vode pojedinačne zadatke, već upravljaju „timovima agenata“ (npr. jedan agent piše frontend, drugi backend, treći testove, a četvrti vrši reviziju koda).
Takođe, pravna zaštita vlasničkog koda koji agenti koriste zahteva pažnju, o čemu se možete informisati u našim vodičima o zaštiti intelektualne svojine i izvornog kôda, kao i pravnom i poreskom vodiču za IT poslovanje.
Uporedni pregled evolucije AI alata u softverskom inženjeringu
Da bismo jasno sistematizovali napredak koji je industrija napravila, pripremili smo komparativni pregled po generacijama alata:
| Parametar rada | 1. Generacija (Četboti – ChatGPT) | 2. Generacija (In-line Copiloti) | 3. Generacija (Agentic AI – Cursor, Claude Code, Devin) |
| Nivo autonomije | Nikakav (Pasivan odgovor na chat) | Minimalan (Auto-complete predlozi) | Visok (Samostalno planiranje i rad u petlji) |
| Pristup alatu i terminalu | Nikakav (Samo tekstualni prozor) | Ograničen na trenutni fajl | Potpun (Izvršavanje komandi, Git, MCP, Baze) |
| Rukovanje greškama | Čovek mora sam uočiti i vratiti grešku | Čovek mora prihvatiti ili odbiti predlog | Agent samostalno čita testove i popravlja kôd |
| Obim zadatka | Pojedinačne funkcije ili skripte | Linije koda ili pojedinačni fajlovi | Celokupni repozitorijumi i višeslojni moduli |
| Potreban nadzor | Konstantan rad sa chatom | Konstantan pritisak na Tab taster |
Strateški pregled koda (PR Review) i potvrda akcija |
| Sigurnosni rizik | Curenje podataka u promptu | Curenje podataka i autorska prava | Prompt Injection, bekstvo iz sandbox-a, rušenje CI/CD-a |
Kakva nas budućnost očekuje: Od pojedinačnih agenata do autonomnih softverskih kuća
Razvoj ove oblasti ide u smeru potpunog stvaranja sistema sa više agenata (Multi-Agent Systems).
U skorijoj budućnosti, softverski projekti neće izgledati tako što jedan programer zadaje zadatke jednom agentu. Radićemo sa namenskim digitalnim timovima:
-
Product Manager Agent: Čita zahteve klijenata, analizira povratne informacije i automatski generiše tehničke zadatke.
-
Architect Agent: Preuzima zadatke, projektuje API ugovore i šemu baze podataka.
-
Developer Agents: Paralelno pišu kôd za različite mikroslužbe u izolovanim kontejnerima.
-
QA & Security Agents: Pokreću automatske penetracione testove, skeniraju ranjivosti i odobravaju spajanje koda tek kada je 100% siguran.
Da bi ovako kompleksni sistemi funkcionisali bez zastoja, biće neophodna izuzetno brza i izolovana infrastruktura. Pročitajte više o primeni WebAssembly-ja izvan veba za kreiranje ultra-brzih mikroslužbi, kao i o izboru pravog jezika za sistemsko programiranje u analizi Rust vs Go u modernim backend sistemima.
Takođe, za razumevanje pozicioniranja vaših aplikacija na AI pretraživačima, pogledajte naše tekstove o GEO optimizaciji i pozicioniranju na ChatGPT-ju i Perplexity-ju, kao i kako napraviti internu bazu znanja koju pokreće AI.
I naravno, dok upravljate ovim novim digitalnim timovima, sačuvajte lično zdravlje i ergonomiju. Pogledajte naše vodiče o ergonomiji radnog prostora, odabiru OLED vs Mini-LED monitora za rad sa tekstom .
Prihvatanje nove realnosti uz punu inženjersku odgovornost
Tranzicija sa pasivnih četbota na autonomne agente u softverskom inženjeringu nije prolazni trend — to je fundamentalna promena načina na koji se softver stvara, testira i održava.
Agentic AI u softverskom inženjeringu donosi neviđeno ubrzanje i oslobađa programere monotonog posla, omogućavajući im da se usmere na kreiranje prave poslovne vrednosti i složene arhitekture.
Međutim, autonomija bez adekvatne kontrole, bezbednosnih ograda i razumevanja sistemskih rizika brzo se pretvara u finansijsku i sigurnosnu noćnu moru. Pobednici u ovoj novoj eri biće oni inženjeri i kompanije koji uspeju da uspostave savršenu ravnotežu: iskoriste punu snagu autonomnih agenata za rad u petlji, a pri tome zadrže potpunu arhitektonsku kontrolu, bezbednosnu izolaciju i konačnu reč u verifikaciji svakog izgenerisanog reda koda.
Često postavljana pitanja (FAQ)
1. Šta je to Agentic AI i kako se razlikuje od klasičnih AI četbota?
Agentic AI označava generaciju AI sistema koji imaju mogućnost da samostalno razmišljaju, planiraju zadatke u petlji (ReAct okvir), koriste eksterne alate (izvršavanje komandi u terminalu, čitanje baza, slanje HTTP zahteva) i ispravljaju sopstvene greške bez potrebe da čovek inicira svaki naredni korak. Klasični četboti samo pasivno odgovaraju na pojedinačna tekstualna pitanja.
2. Šta je to Model Context Protocol (MCP) i zašto je važan?
Model Context Protocol (MCP) je otvoreni standard koji je razvio Anthropic, a koji funkcioniše kao univerzalan interfejs između AI agenata i eksternih izvora podataka ili alata (fajl sistemi, baze podataka, GitHub, Slack). MCP omogućava agentima da bezbedno i na standardizovan način pristupaju alatima bez potrebe za pisanjem posebnih skripti za svaki servis pojedinačno.
3. Da li će autonomni AI agenti u potpunosti zameniti programere?
Ne. Agenti menjaju prirodu programerskog posla, ali ne zamenjuju inženjere. Zanimanje rutinskog kucanja koda i pisanja jednostavnih skripti nestaje, ali se težište rada pomera ka arhitektonskom projektovanju, upravljanju kontekstom, orkestraciji agenata, reviziji bezbednosti koda i donošenju ključnih poslovnih odluka koje AI ne može samostalno doneti.
4. Koji su najveći bezbednosni rizici pri upotrebi AI agenata u razvojnom okruženju?
Najveći rizici uključuju Indirektno ubacivanje komandi (Indirect Prompt Injection) gde zlonamerni podatak sa interneta preuzima kontrolu nad agentom, curenje tajnih API i SSH ključeva usled nedovoljne mrežne izolacije, nekontrolisanu potrošnju tokena u beskonačnim petljama rezonovanja i postepeno gomilanje netransparentnog tehničkog duga u bazi koda.
5. Kako sprečiti da AI agent naprave štetu na produkciji ili lokalnom računaru?
Zaštita se postiže pokretanjem agenata u strogo izolvanim okruženjima (MicroVM kao što je Firecracker ili gVisor umesto običnog Docker-a), ograničavanjem mrežnog izlaza (Egress Filtering), primenom principa najmanjih privilegija nad alatima koje agent koristi i obaveznim uvođenjem Human-in-the-loop (HITL) potvrde za sve destruktivne ili eksterne akcije (npr. spajanje koda, brisanje baza, slanje mrežnih zahteva).



