01, Šta je Skills?
01, Šta je Skills?
Poštovani ispitujući, Skills je u suštini skup unapred definisanih instrukcija koje govore AI šta da radi kada naiđe na određeni tip zadataka, koje standarde da sledi, kakav format izlaza da koristi.
Konkretno, Skill je obično jedan SKILL.md fajl koji sadrži najbolje prakse za određenu klasu zadataka.

Na primer, postoji specijalan Skill za generisanje Word dokumenata, u kojem stoji kako se postavljaju fontovi, kako se rešavaju nivoi naslova, kako se dodaju zaglavlja i podnožja; takođe postoji Skill za PPT koji reguliše detalje kao što su raspored slajdova, boje, animacije. Ova iskustva su se formirala kroz mnogo proba i grešaka, nisu privremeno smišljeni Prompti.
Sa arhitektonske tačke gledišta, svaki Skill ima tri ključna elementa: naziv za identifikaciju, opis da bi sistem odlio kada da pokrene ovaj Skill, putanja fajla pokazuje na konkretne sadržaje instrukcija.

Kada korisnik pošalje zahtev, Agent će automatski pronaći relevantne Skillove na osnovu sadržaja zahteva, učitati odgovarajuće instrukcije u kontekst, i AI će izvršiti zadatak po ovom standardu.
Na primer, ako korisnik kaže "pomozite mi da napravim PPT kvartalnog izveštaja", Agent će automatski prepoznati da je ovo zadatak generisanja PPT-a, učita pptx Skill, i AI će pritom pridržavati se definisanih standarda dizajna i principa pri generisanju slajdova, umesto da slobodno stvara.
Dakle, u suštini, Skills modularizuje i standardizuje rasuta Prompt inženjerska iskustva, čineći AI izlaz stabilnijim i kontrolisanejim. Najveća razlika u poređenju sa tradicionalnim Prompt šablonima je u tome što je ovo sistemsko automatsko zakazivanje, ne zahteva ljudsko posredovanje.
Referentna verzija odgovora 2
Skills je mehanizam pakovanja strukturisanog znanja koji je Anthropic predstavio za pojačavanje Claudeovih sposobnosti u određenim zadacima. Ovo nije API poziv, nego pakovanje stručnog znanja, instrukcija i skripti u fasciklu koju Claude učitava po potrebi.
Ključni koncepti:
- Skills je fascikla koja sadrži SKILL.md fajl (obavezan) i opcionalne resursne fajlove
- SKILL.md sadrži YAML metapodatke (name, description) i Markdown instrukcije
- Claude dinamički učitava sadržaje relevantnog Skill-a na osnovu potreba zadataka
Poređenje triju:
| Poredak | Function Calling | MCP | Claude Skills |
|---|---|---|---|
| Suština | API poziv | Alatki protokol | Paket znanja |
| Format | JSON Schema | Složen protokol | Markdown + YAML |
| Potrošnja tokena | Niska (samo parametri) | Visoka (troškovi protokola) | Učitavanje po potrebi, efikasno |
| Primena | Pozivanje eksternih API-ja | Integracija kompleksnih alata | Pojačavanje sposobnosti za određene zadatke |
| Težina učenja | Srednja | Visoka | Niska |
Primer: Ako želimo da Claude bude bolji u obradi PDF-ova, pomoću Skills pristupa:
pdf-skill/
├── SKILL.md # Definiše kako se obrađuje PDF
├── examples/ # Primeri korišćenja
└── scripts/ # Pomoćne skripteUmesto da napišemo parsePdf() Function. Skills više podseća na to da Claude-u naučimo veštinu, nego što mu dajemo alat.
Referentna verzija odgovora 3
Javni Prompt je zapravo Skills.
Svaki put kada tražimo od AI da napiše kod, moramo mu reći "koristi Java", "prati Alibaba standarde kodiranja", "komentari moraju biti jasni"?
Ova ponavljajuća instrukcija je "ponavljajući kod" u razvoju softvera. U razvoju softvera, rešavamo ponavljajući kod "enkapsulacijom i ponovnom upotrebom".
Skills radi baš to. Ove javne Prompte enkapsulira u "modul veštine". Sledeći put kad je trebamo, samo pozovimo ovaj Skill, ne moramo ponavljati te instrukcije.

Ovo je kao što smo napisli alatku klasu, sledeći svi projekti mogu izravno pozivati. Razlika je u tome što je ova alatka za AI, ne za ljude.
Referentna verzija odgovora 4
Skill je Claude Code ekstenzioni mehanizam, u suštini fascikla koja sadrži SKILL.md fajl i opcione resurse (scripts, references, assets). Može transformisati Claude iz opšteg AI u eksperta u nekoj oblasti.
Na primer, ako instaliramo PDF obradni Skill, Claude nam može pomoći da spajamo PDF-ove, izvlačimo tekst, popunjavamo forme. Ako instaliramo Skill za frontend razvoj, može nam pomoći da generišemo React komponente koje su u skladu sa timskim standardima.
Standardna Skill struktura izgleda ovako:
skill-name/
├── SKILL.md # Obavezno, sadrži metapodatke i instrukcije
├── scripts/ # Opcionalno, izvršne skripte
├── references/ # Opcionalno, referentna dokumentacija
└── assets/ # Opcionalno, resursi šablona, slike itd.01-1, Znate li lokaciju direktorijuma Skills?
Lokacije Skills različitih alata:
| Alat | Lični Skills putanja | Projekat Skills putanja |
|---|---|---|
| Claude Code | ~/.claude/skills/ | .claude/skills/ |
| Codex | ~/.codex/skills/ | .codex/skills/ |
| TRAE | ~/.trae/skills/ | .trae/skills/ |
| Qoder | ~/.qoder/skills/ | .qoder/skills/ |
Treba napomenuti dve stvari, pored .codex direktorijuma, Codex podržava i .agent direktorijum; ~ je relativno prema vašem korenom direktorijumu, bez toga, relativno prema vašem projektnom direktorijumu.
memo: 3. aprila 2026. izmenjeno do ovde, danas saigrač javio dobru vest, dobio letnji praksu u Tencent-u, i pohvalio Ergeovu izmenu životopisa je pomogla, zaista je sjajno! Čestitam ovom prijatelju, takođe se nadam da će i drugi prijatelji dobiti željenu ponudu! Dodajmo mozga! 💪

02, Zašto Skills ne učitava sav sadržaj odjednom?
Poštovani ispitujući, ovo pitanje se ustvari odnosi na jedno veoma ograničavanje velikih modela, to je kontekstni prozor (Context Window) je ograničen.

Bez obzira koliko veliki kontekstni prozor modela, on je konačno resurs sa gornjom granicom.
Ako sve Skills sadržaje odjednam nabadamo u njega, prvo će zauzeti mnogo kontekstnog prostora, prostor ostavljen za stvarne korisničke zadatke će se stezati.
Na primer, ako ima ukupno desetak Skillova, svaki po nekoliko hiljada reči, ako se sve učitaju, moglo bi zauzeti nekoliko desetina hiljada tokena, prostor za obradu stvarnih korisničkih potreba će biti veoma napet.
Drugo je problem prigušivanja pažnje. Kod obrade dugog konteksta, što više informacija, manje pažnje model na svaku instrukciju, lako dolazi do "standarda koji treba slediti nisu praćeni, nebitni standardi ometaju izlaz" situacije.
Učitavanje samo Skill relevantnih za tekući zadatak, pažnja modela je fokusiranija, kvalitet izvršenja je viši.
Treća tačka je performansa i trošak. Količina tokena direktno utiče na brzinu zaključivanja i cenu API poziva, učitavanje celokupnog sadržaja znači da se svaki put obrađuje velika količina nebitnog sadržaja, odgovor je sporiji, troškovi rastu, ovo je neprihvatljivo u produkcionom okruženju.
Danasnji dizajnerski koncept je zapravo vrlo sličan povremenom učitavanju (Lazy Loading) u softverskom inženjeringu. Sistem prvo putem naziva i opisa Skill-a vrhi laku matching, oceni koje Skillove tekući zadatak treba, zatim učitava samo relevantne. Tako se osigurava preciznost instrukcija, dok se maksimalno iskorišćava kontekstni prostor.
Ovaj dizajnerski koncept se može videti na mnogo mesta, na primer RAG takođe prvo pretražuje pa generiše, umesto da ceo skladište znanja stavlja modelu. Osnovna logika je ista: stavliti najvrednije informacije u ograničenom kontekstu, ne najviše informacija.
Referentna verzija odgovora 2
AI radni prostor je ograničen.
Znamo da AI pri radu nije neograničen resursni prostor, nego radi u specifično velikom prozoru.
To je kontekstni prozor (Context Window). Moj Claude Code je podešen GLM-5, trenutno veličina je 200K, izgleda veliko, ali kad se koristi, brzo se vidi da nedostaje.

Ako ima 100 Skillova, svaki Skill pun sadržaj je po nekoliko hiljada reči Prompta, ako se sve učitaju, kontekstni prozor direktno eksplodira. AI još nije ni počeo da radi, samo učitavanje ovih Skillova potroši sve tokene.
Dizajnerska filozofija Skills-a je: ne damo AI da više zna, nego damo AI u pravo vreme da zna prave stvari.
Ovo je osnovna misao "progresivnog otkrivanja (Progressive Disclosure)" arhitekture.
02-1, Kako se konkretno ostvaruje progresivno otkrivanje?
Poštovani ispitujući, progresivno otkrivanje u scenariju Skills-a, otprilike se ostvarja u tri sloja.
Prvi sloj je laki matching indeksa. Sistem neće odmah čitati sve pun sadržaje Skillova, nego prvo održava indeks, svaki Skill izlaže samo naziv i opis dva polja.
Kada ulazi korisnikov zahtev, sistem na osnovu sadržaja zahteva i tih opisa vrši semantički matching, ocenjuje koje Skillove imaju veze sa tekućim zadatkom. Informacija ovog koraka je vrlo mala, možda svaki Skill ima po desetak reči opisa, desetak Skillova zajedno ne zauzima mnogo tokena.
Drugi sloj je učitavanje kompletnih instrukcija po potrebi. Nakon što se matchuju relevantni Skillovi, sistem čita odgovarajuće SKILL.md fajlove, učitava detaljne standarde i najbolje prakse u kontekst.
I jedan zadatak može matchovati više Skillova, na primer korisnik želi Word izveštaj sa grafikonima, može istovremeno pokrenuti docx i xlsx dva Skill-a, sistem će učitati oba, ali ostale nebitne neće dirati.
Treći sloj je postepeno širenje u procesu izvršenja. Čak i ako je jedan Skill učitan, to ne znači da sve instrukcije moraju biti izvršene odjednom.
Mnogo Skillova interno je podeljeno u fazama, na prvo se postavi skelet, onda se popuni sadržaj, na kraju se radi podešavanje formata, model će na osnovu trenutne faze izvršenja obratiti pažnju na odgovarajuće odeljke instrukcija, ne istovremeno obrađuje sva pravila.

Ova misao je posebno česta u frontend inženjeringu, kao što je kod split (Code Splitting). Prvi ekran učitava samo ključne resurse, korisnik skroluje gde pa tamo učitava sadržaj.
U suštini rešavaju isti problem: kod ograničenih resursa kako da se najkritičnije informacije pojave u najpotrebnijem trenutku. Stavljeno u scenario velikog modela, ovaj "resurs" je kontekstni prozor, "ključne informacije" su instrukcije i standardi koji tekući zadatak zaista treba.
Referentna verzija odgovora 2
Napraviti slojeviti keš. Kada se unosi Prompt, ne nositi sve Skills informacije, nego samo osnovne metainformacije. AI će vršiti semantičko poklapanje, tek kada se poklopi učitava stvarni sadržaj.

Ovaj proces se deli u tri koraka:
Prvi korak: faza otkrivanja. Pri pokretanju, AI skenira metapodatke svih Skillova, uspostavlja "registar veština". Ovaj registar sadrži samo najosnovnije informacije: naziv Skill-a, opis, ključne reči za okidač. Kao kartice kataloga biblioteke, samo nam govore naziv i poziciju knjige, neće nam pokazati ceo sadržaj.
Drugi korak: semantičko poklapanje. Kada korisnik postavi pitanje, AI će semantički matchovati relevantne Skillove. Na primer, ako pitamo "pomozite mi da napišem Java singleton patern", AI će se matchovati sa "Java generisanje koda" relevantnim Skill-om. Ovaj proces je dinamičan, zasnovan na kalkulaciji sličnosti vektora.
Treći korak: faza izvršenja. Nakon uspešnog poklapanja, učitava se pun sadržaj Skill-a. Tada AI zaista "vidi" detaljne instrukcije, primere, uslove ograničenja tog Skill-a.
Nakon što se ova tri koraka završe, jedan Skill se smatra zaista aktiviranim. Oni Skillovi koji se nisu matchovali, tokom celog procesa zauzimaju samo nekoliko tokena metaprostora. Zato možete imati desetak ili stotinu Skillova, ali ne morate brinuti o eksploziji konteksta.
02-2, Koji je princip progresivnog otkrivanja Skill-ova?
Poštovani ispitujući, princip progresivnog otkrivanja, u srcu je slojevite informacije, otpuštanje po potrebi, iza toga odgovara finim upravljanjem kontekstnim prozorom kao ograničenim resursom.
Može se uporediti sa levkastim modelom. Najviši sloj je gruba meta informacija, to jest naziv svakog Skill-a i kratak opis, ove informacije su stalne u sistemskom Promptu, zapremina je mala, cilj je da model ima "koje mogućnosti imam" globalno svestanje.
Srednji sloj je komplet fajl instrukcija, tek kada se gornji sloj uspešno poklopi, sistem putem čitanja fajla povlači konkretne sadržaje u kontekst. Najniži sloj je detaljno širenje pri izvršenju, model pri stvarnom generisanju postepeno vari instrukcije, fazno završava zadatke.
Iza ovog dizajna stoji veoma važan princip, to je filtriranje relevantnosti u teoriji informacija. Kontekstni prozor je u suštini fikan kapacitetni kanal, što više informacija u njega stavljaš, manji je odnos signal-šum, lošiji je kvalitet izlaza modela.
Progresivno otkrivanje radi u svakoj fazi zadržava samo one informacije sa najvišim odnosom signal-šum, šum ostaje spolja.
Sa tačke gledišta inženjerske implementacije, oslanja se na mehanizam dvofazne pretrage. Prva faza je semantički matching na osnovu opisa, trošak je minimalan, ekvivalentan pretrazi u vrlo malom indeksu; druga faza je učitavanje sadržaja na nivou fajla, trošak je relativno viši ali je preciznost takođe viša, jer je prošao kroz prvu fazu filtriranja.

Ovo je isto kao i logika baze podataka prvo ide indeks pa se vraća u tabelu, prvo minimalnom trošku sužava opseg, zatim precizno dobija potrebne podatke.
Dakle, suština progresivnog otkrivanja je korišćenje višeslojnog filtriranja da se maksimalizuje gustina efektivnih informacija u ograničenom kontekstnom prostoru.
Ovo nije nekomplikovani algoritamski problem, već problem alokacije resursa, osnovna misao se može videti u mnogim dizajnima sistema, na primer višeslojni keš CPU-a, slojevita distribucija CDN-a, osnovna logika je ista.
Referentna verzija odgovora 2
Tačka ispitivanja: Razumevanje ključnog dizajnerskog koncepta Skills-a
Referentni odgovor:
Progresivno otkrivanje je najosnovnija dizajnerska misao Skills-a, rešava problem ograničenog kontekstnog prozora.
Pozadina problema: Tradicionalni pristup je sbaćanje svih uputstava za alate, uputstva za upotrebu u System Prompt, što dovodi do: ogromna potrošnja Tokena (možda desetine hiljada Tokena uputstava), nebitne informacije ometaju modelovo mišljenje, kontekstni prostor je zagušen.
Slojevito učitavanje progresivnog otkrivanja:

Kao tehnički priručnik, sadržaj (metapodaci) nam brzo daje da znamo šta sve ima, sažetak poglavlja (glavni dokument) nam govori kako se koristi, detaljni primeri (dodatni fajlovi) samo se listaju kada je potrebno.
Prednosti su token efikasnost: ne učitava se kad nije potrebno, odgovor je precizniji: nema ometanja nebitnim informacijama, proširivost je dobra: može biti stotine Skillova, neće napuknuti kontekst.
memo: 3. aprila 2026. izmenjeno do ovde, danas saigrač javio dobru vest, dobio letnju praksu u Meituan-u, zaista april jeste mesec žetve! Dodajmo mozga! 💪

03, Zašto ne sačuvati Prompt u beleške, sledeći put samo kopirati i zalepiti? Zašto treba napraviti Skills?
Poštovani ispitujući, o ovom problemu, moje razumevanje je ovakvo.
Najveći problem kopiranja i lepljenja Prompt-a je visok trošak upravljanja kontekstom. Dobar Prompt je često vrlo dugačak, kada se scena množi, nakupi se desetine u beleškama, svaki put sam moram da sudim koji da koristim, teško ga je naći, a različite scene zahtevaju sitna podešavanja, nakon izmene ne mora nužno vratiti sinhronizaciju, verzija se poremeti.
Skills rešava osnovni problem automatskog okidača i strukturisanog upravljanja. Nakon što se Prompt enkapsulira u Skill, on više nije mrtav tekst, nego modul koji sistem može automatski prepoznati i učitati.
Na primer, kad tražim od Claude da napravi Word dokument, automatski će čitati odgovarajući SKILL.md da dobije najbolje prakse, ne treba mi ručno da pretražujem beleške. Ovo je kao razlika između ručnog i automatskog menejača, oba mogu voziti, ali automatski je očigledno lakši.

Druga tačka je ponovna upotreba i saradnja. Skills imaju standardnu strukturu, imaju naziv, opis, uslove okidača, mogu se deliti unutar tima, osiguravaju konzistentnost kvaliteta izlaza. Kopiranje i lepljenje, verzija Prompt-a kod svake osobe može biti različita, kvalitet je nejednak.
Treća tačka je kompozabilnost. Jedan kompleksan zadatak može istovremeno zahtevati učitavanje više Skillova, sistem će automatski suditi koje da koristi, teško je to postići ručnim lepljenjem, nemoguće je svaki put lepite tri ili četiri Prompt-a redom da se ne mešaju.
Dakle, u suštini, kopiranje i lepljenje je kao prepisivanje recepta na papir i sam listati, Skills je unosenje recepta u pametni sistem da ga sam poziva. Efikasnost, konzistentnost i održavljivost, Skills je stepen iznad.
04, Kako napraviti Skill?
Poštovani ispitujući, napraviti Skill zapravo nije komplikovano, u srcu je dobro napisati SKILL.md fajl, zatim ga staviti u određeni direktorijum.
Prvo treba jasno definisati koji problem ovaj Skill rešava.
Na primer, ako želim da AI generiše tehnički blog prateći specifični stil stavljanja i standarde pisanja, onda je pozicioniranje ovog Skill-a jasno.

Nakon što se jasno pozicionira, sledeće je pisanje sadržaja SKILL.md, ovaj sadržaj obično sadrži nekoliko delova: prvi je opis zadatka, šta ovaj Skill radi; drugi su konkretni standardi i ograničenja, na primer format naslova, stil pasusa, kako se pišu placeholderi slika, koji se znaci interpunkcije koriste; treći su primeri, pokazuju modelu kako izgleda odgovarajući izlaz. Ovaj deo primera je veoma ključan, mnogo puta samo opisom model ne razume dobro, ali daje dobar primer i brzo se poravnaju.
Nakon što se dobro napiše SKILL.md, treba mu dodeliti opis okidača. Uloga ovog opisa je da kaže sistemu u kojoj sceni treba učitati ovaj Skill, što se tačnije napiše, viša tačnost okidača.
Na primer, ako u opisu stoji "okida se kada korisnik zatraži generisanje tehničkog članka u stilu javnog naloga na WeChat-u", sistem će automatski matchovati kada naiđe na srodne zahteve. Ovaj opis je ekvivalentan "indeksnoj reči" Skill-a, direktno odlučuje da li se može pojaviti kada treba.
Organizaciji fajlova, obično se SKILL.md stavlja u nezavisni direktorijum, ako ovaj Skill pri izvršenju treba koristiti pomoćne resurse kao što je šablon fajl, referentni materijal, takođe se zajedno stavljaju u isti direktorijum, održavajući jasnu strukturu.
Nakon razvoja postoji još jedan veoma važan korak testiranje i iteracija. Stvarno pokrenuti nekoliko tipičnih scena, videti da li je izlaz u skladu sa očekivanjima, gde model nije pratio standard, vratiti se i podesiti formulaciju i prioritete instrukcija.
Ovaj proces je u suštini isti kao i podešavanje Prompt-a, samo što je Skills stepen strukturiranosti viši, iteracija je metodološkija, nego što se rasuti Prompt menja izmena i lako gubi kontrolu.
Dakle, ukupan proces je: definisati scenarijsko pozicioniranje, napisati sadržaje instrukcija i primere, podesiti opis okidača, staviti u određeni direktorijum, testirati iterativnu optimizaciju. Prag nije visok, ali da se dobro radi, treba duboko razumevati specifičnu scenariju zadataka, znati u kojim tačkama model lako pravi probleme, ciljano ograničiti.
Referentna verzija odgovora 2
Osnovna misao pravljenja Skill-a je: sažeti i izvuciti iskustvo iz rada (indukcija),enkapsulirati u Skill, da bismo odgovorili na srodne probleme (dedukcija), ili ponovo povratiti informacije da bi se unapredio ovaj Skill.
Zvudi malo apstraktno, objasniću konkretnim primerom.
Pretpostavimo da često trebamo da AI pomogne da radi "inverzno modeliranje". Šta je inverzno modeliranje? Ima postojeći kod, hoćemo da AI analizira njegov dizajnerski tok misli, zatim generiše odgovarajući dizajnerski dokument ili arhitektonsku sliku.
Ovo je jedna od najčešćih scena u procesu razvoja, odgovara našoj najčešćoj sceni primene: iteracija zahteva.
Prvi korak, posmatranje Prompt procesa.
"pomozite mi da analiziram dizajnerski tok ovog koda, zatim nacrtaj arhitektonsku sliku." "Obratite pažnju da jasno označite odgovornosti svakog modula." "Koristite PlantUML sintaksu." "Odnose modula prikažite strelicama."
Drugi korak, sažimanje i izvlačenje. Ove instrukcije enkapsulirati u jedan Skill:
---
name: reverse-modeling
description: Inverzno modeliranje, analizira dizajnerski tok koda i generiše arhitektonsku sliku
trigger:
- inverzno modeliranje
- analiza koda
- arhitektonska slika
---
## Cilj zadatka
Analizirati dati dizajnerski tok koda, generisati jasnu arhitektonsku sliku.
## Izlazni zahtevi
1. Jasno označiti odgovornosti svakog modula
2. Koristiti PlantUML sintaksu
3. Odnose modula prikazati strelicama
4. Uključiti ključne tokove podataka
## Primer
Ulaz: kod Spring Boot aplikacije
Izlaz: arhitektonska slika koja pokazuje hijerarhiju Controller -> Service -> RepositoryTreći korak, verifikacija i iteracija. U stvarnoj upotrebi, možda otkrijemo da ovaj Skill nije dovoljno savršen. Na primer, ponekad treba podržati Mermaid sintaksu, ponekad treba generisati vremenski dijagram. Možemo dodati nove zahteve, ovaj Skill će postajati sve moćniji.

Ovde postoji jedna ključna tačka: da li imamo oštrouvidnost da otkrijemo problem.
U ovom eru brzog razvoja AI-a, sposobnost rešavanja problema će postepeno zameniti AI, ali tačno otkrivanje vrednog problema je upravo najteško zamenjiva srčana sposobnost, takođe je i koren vrednosti Skill-a.
Mnogi ljudi koriste AI da reše problem, zatim zatvore dijalog, nastave sledeći zadatak. Ali ako želimo da AI bude sve drugačiji razumije nas, moramo naučiti da mu pomažemo da akumulira iskustvo.
04-1, Koje Skillove ste dizajnirali?
Dizajnirao sam jedan Skill za optimizaciju životopisa.
Scena ovog Skill-a je: imam životopis, hoću da AI mi pomogne da poboljšam formulaciju, istaknem snage, izbegnem česte probleme.
Prvo, napraviti Skill fajl. U Skills direktorijumu, napraviti resume-optimizer/SKILL.md fajl:
---
name: resume-optimizer
description: Ekspert za optimizaciju životopisa, pomaže da poboljšate formulaciju, istaknete snage, izbegnete česte probleme
trigger:
- optimizacija životopisa
- životopis
- CV
- traženje posla
---
## Definicija uloge
Vi ste iskusni ekspert za optimizaciju životopisa, imate više od 10 godina iskustva u HR i headhunting-u. Dobar ste da sa tačke gledišta regrutata pregledate životopis, pomažete kandidate da istaknu ključne konkurentske prednosti.
## Principi optimizacije
1. govoriti podacima: mutne opise prevesti u kvantificirane rezultate
2. istaknuti ključne reči: prilagoditi gustinu ključnih reči prema ciljnoj poziciji
3. skratiti suvišno: izbrisati iskustva nevezana za ciljnu poziciju
4. izbegnuti mine: izbegavati korišćenje slabih glagola kao "učestvovao", "pomoć"
## Proces optimizacije
1. Analizirati ciljnu poziciju JD, izvucići osnovne zahteve
2. Porediti sadržaj životopisa, pronaći tačke poklapanja i razlike
3. Poboljšati formulaciju, istaknuti rezultate a ne proces
4. Proveriti format i stavljanje, osigurati profesionalno lepo
## Format izlaza
### Dijagnoza životopisa
- Trenutni problemi: [izlistati 3-5 glavnih problema]
- Smer optimizacije: [dati konkretne predloge optimizacije]
### Optimizovan životopis
[izlistati optimizovane sadržaje životopisa]
### Istaknute snage
[izlistati 3 ključne snage u životopisu]Zatim, možete izravno koristiti ovaj Skill. U Claude Code dijalogu unesite:
"koristi resume-optimizer Skill da mi pomogneš da optimizujem ovaj životopis: [zalepiti sadržaj životopisa]"
AI će automatski učitati ovaj Skill, prema mojoj definisanoj proceduri mi pomoći da optimizujem životopis.

04-2 Kako se prave Skills, na šta treba obratiti pažnju?
Poštovani ispitujući, pravljenje Skills ima nekoliko vrlo ključnih stvari na koje treba obratiti pažnju, kombinovaću stvarno iskustvo da kažem.

Prva je da opis okidača mora biti napisan precizno. Ovo je najlako zanemariva ali najviše utiče na efekt stvar. Opis suviše širok, nebitni zadaci će pogrešno okiniti ovaj Skill, ekvivalentno uvođenje šuma; opis suviše uzak, kada treba okiniti se ne može matchovati.
Na primer Skill za obradu Excel fajlova, u opisu se ne sme samo pisati "obrada tabela", jer su HTML tabele, Markdown tabele takođe tabele, treba jasno napisati da je rad sa .xlsx, .csv ovom vrstom formatova fajlova. Najbolje je jasno reći granicu okidača i ne-okidača, slično pozitivnom poklapanju plus uslovu isključenja u kodu.

Druga je da instrukcije moraju biti konkretne do izvršljivosti, ne smeju biti previše apstraktne. Na primer pisati "izlaz treba biti lep" ovakvu reč model ne može precizno izvršiti, ne zna šta lepo znači. Treba konkretizovati do "naslov koristi drugi font povećan, razmak između pasusa 1.5 puta, boja koristi tamnoplavu glavnu boju sa svetlosivom pozadinom" ovog stepena. Što je konkretnije, konzistentnija izlazna konzistentnost modela, što je apstraktnije, svaki put rezultat je nasumičniji.
Treća je dati dobre primere. Mnoge standarde samo opisom lako dvosmisleno, ali postaviti jedan primer zadovoljavajući zahtev tamo, model odjednom može poravnati. Naročito kada se radi o formatu, stilu ove vrlo subjektivnih zahteva, efekat primera je daleko bolji od dužih pravila.
Četvrta je kontrolisati granularnost Skill-a. Jedan Skill ne pokušava da pokrije previše scena, u suprotnom instrukcije unutar će se sukobiti ili model ne zna kojoj liniji treba da sledi.
Na primer "pisati članak" i "raditi PPT" iako su oba generisanje sadržaja, ali je razlika velika, treba razdvojiti u dva nezavisna Skill-a. Princip jedne odgovornosti ovde takođe važi, jedan Skill fokusira rešavanje jedne vrste problema, održivost je takođe bolja.
Peta je obratiti pažnju na priority instrukcija. U Skill-u može biti mnogo standarda, ali pri obradi dugih instrukcija raspodela pažnje modela nije ravnomerna, instrukcije ispred i posebno naglašene instrukcije se lakše prate.
Dakle najosnovniji standardi staviti napred, ili jasnim oznakama priority reći modelu koje su tvrda ograničenja koja se moraju poštovati, koje su meke preporuke što treba koliko se može zadovoljiti.
Poslednja je kontinuirana iteracija. Prva verzija je verovatno neperfektna, treba u stvarnoj upotrebi kontinuirano otkrivati gde model "prekrša pravila", zatim vratiti se dopuniti ili ispraviti instrukcije. Ovaj proces je malo kao pisanje unit testova, svaki put kada se otkrije granični uslov dodati jedno ograničenje, kvalitet Skill-a se tako malo malo brusi.
memo: 3. aprila 2026. izmenjeno do ovde, danas sam izmenio 26 životopisa, uključujući Univerzitet u Nanjingu, Univerzitet u Shenzhenu, Univerzitet za poštu i telekomunikacije u Pekingu, Univerzitet Yanshan, Univerzitet kineskih studija u Hong Kongu, Kineski geološki univerzitet, Zhejiang tehnološki univerzitet, Univerzitet u Fuzhouu, Univerzitet za naftu i hemiju u Istokoj Kini, Univerzitet za elektroniku u Xi'anu itd.

05, PaiAgent koristi Skills?
U projektu PaiAgent zapravo postoji jedan set kompletnijeg Skills sistema, i to je sopstveni Skill sistem.
https://github.com/itwanger/PaiAgent

Sa tačke gledišta totalne arhitekture, backend je implementirao set Java mehanizama registracije i učitavanja Skill-ova. SkillRegistry je zadužen za jedinstveno upravljanje registracijom i pronalaženjem svih Skill-ova, SkillLoader se koristi za parsiranje SKILL.md fajlova, svaki Skill koristi Skill.java ovaj model podataka za nošenje, uključuje naziv, opis, sadržaj i referencirane dokumente.
Frontend takođe ima prateće komponente, na primer SkillSelector.tsx, uglavnom za izbor Skill-a na sučelju.
Definisanje Skill-a se završava putem SKILL.md fajlova u direktorijumu resources/skills/, koristi YAML frontmatter oblik deklaracije naziva i opisa. Trenutno u projektu ugrađen jedan ai-podcast Skill, za generisanje skripti podcasta, uz to dolazi sa dva referentna dokumenta: šablon skripta i vodič za stil zvuka.
Ovde mislim da je zanimljiv dizajn troštro nivo progresivnog učitavanja za kontrolu potrošnje Token-a.
Prvi nivo učitava samo naziv Skill-a i kratak sažetak opisa, za preliminarni izbor;
@PostConstruct
public void init() {
// Skeniraj sve SKILL.md fajlove iz classpath
Resource[] resources = resolver.getResources("classpath*:" + skillsPath + "/*/SKILL.md");
for (Resource resource : resources) {
Skill skill = skillLoader.load(skillDir);
register(skill);
}
}Drugi nivo ponovo učitava kompletan sadržaj SKILL.md;
public Map<String, String> loadAllReferences(String skillName) {
Skill skill = skills.get(skillName);
Map<String, String> references = new HashMap<>();
for (String refName : skill.getReferences()) {
String content = skillLoader.loadReference(skill.getSkillPath(), refName);
references.put(refName, content);
}
return references;
}Treći nivo je po potrebi učitava referentne dokumente.
public String getFullExecutionPrompt(Map<String, String> referenceContents) {
StringBuilder sb = new StringBuilder();
sb.append("# Veština: ").append(name).append("\n\n");
sb.append(description).append("\n\n---\n\n");
sb.append("## Vodič za veštinu\n\n").append(content).append("\n\n");
// Direktno ugraditi sve reference sadržaje
for (Map.Entry<String, String> entry : referenceContents.entrySet()) {
sb.append("### ").append(entry.getKey()).append("\n\n");
sb.append(entry.getValue()).append("\n\n");
}
return sb.toString();
}Prednost ovog dizajna je što Agent pri izboru Skill-a ne mora odjednom učitati sve kompletne sadržaje Skill-ova, efektivno se izbjegava da se kontekst rasprsne.
if (config.getSkillName() != null && !config.getSkillName().isBlank()) {
skill = skillRegistry.getSkill(config.getSkillName());
// Direktno učitati sve reference, spakovati u Prompt
skillReferences = skillRegistry.loadAllReferences(config.getSkillName());
}
String systemPrompt = buildSystemPrompt(skill, skillReferences);Pored toga, ovaj Skill sistem je integrisan sa Spring AI. Skill će se izložiti velikom modelu putem FunctionCallback, model može sam otkriti i pozvati ove Skill-ove. Sistem takođe pruža REST API, spolja podržava upit liste Skill-ova, dobavljanje detalja Skill-a i pristup referentnim dokumentima.
06, Kako znati koji Skill treba pozvati?
Poštovani ispitujući, oceniti koji Skill treba pozvati, oslanja se na proces semantičkog poklapanja, može se razumeti kao dva koraka.

Prvi korak je uspostavljanje kandidatskog skupa. Pri pokretanju sistema, nazivi i opisi svih dostupnih Skill-ova će se kao metainformacije stalno nalaziti u kontekstu. U opisu svakog Skill-a će pisati za koju scenu je pogodan, koju vrstu zadataka obrađa, za koju situaciju nije pogodan, ovi opisi su u suštini osnov za poklapanje.
Drugi korak je match kad uđe zahtev. Korisnik pošalje zahtev, model će uporediti semantiku zahteva i opise svih Skill-ova, videti koji Skill-ovi imaju veze sa tekućim zadatkom.
Ovo upoređenje nije jednostavno poklapanje ključnih reči, nego se oslanja na modelovu sopstvenu sposobnost semantičkog razumevanja. Na primer ako korisnik kaže "pomozite mi da ovaj izveštaj sredim u PPT", model može razumeti da je ovo zadatak generisanja prezentacijskog materijala, matchovaće sa pptx Skill-om. Ako korisnik kaže "pomozite mi da pročitam šta piše u ovom PDF-u", model će se matchovati sa pdf-reading Skill-om, a ne pdf kreiranjem, jer u opisu jasno razlikuje dve vrste scena "čitanje" i "kreiranje".
Ovde postoji veoma ključan detalj dizajna, to su uslovi isključenja u opisu Skill-a. Dobar opis Skill-a piše ne samo šta može raditi, nego i šta ne radi.
Na primer u opisu xlsx Skill-a će jasno reći "nije pogodno za scenarije generisanja Word dokumenata ili HTML izveštaja", tako da čak i ako u zahtevu korisnika istovremeno postoje reči "tabela" i "izveštaj", model neće pogrešno suditi. Ova misao je ista kao negativne ključne reči u pretraživaču, kroz isključenje poboljšavaju preciznost poklapanja.
Postoji još jedna situacija da jedan zahtev istovremeno matchuje više Skill-ova, ovo je takođe dozvoljeno. Na primer ako korisnik želi "iz ovih Excel tabeleskih podataka generisati Word izveštaj", tada će se učitati i xlsx i docx dva Skill-a, model će integrisati dva seta instrukcija da završi zadatak.
Dakle mehanizam u srhu je zapravo neka model bude ruter, na osnovu semantičkog razumevanja vrši distribuciju zadataka. Što je preciznije napisan opis Skill-a, što je jasnija granica, viša će biti tačnost rutera.
Referentni odgovor 2
Ovo je srčani mehanizam Skills sistema, takođe mislim da je najpametnije dizajnirano mesto.
Kada korisnik unese jednu rečenicu, Claude Code će skenirati frontmatter svih Skill-ova, izvući name i description, zatim suditi koji Skill se najviše matchuje sa namerom korisnika. Obratite pažnju, ovde nije jednostavno poklapanje ključnih reči, nego kroz description da razume stvarnu namenu korisnika.
07, Kako se SKILL.md čita?
Poštovani ispitujući, SKILL.md se dinamički učitava putem alatke za čitanje fajlova u vreme izvršenja.
Konkretno, kada model putem semantičkog poklapanja oceni da tekući zadatak treba određeni Skill, on će pozvati view alatku da pročita odgovarajući SKILL.md fajl u putanji.

Na primer ako korisnik želi generisati Word dokument, nakon što se model matchuje sa docx Skill-om, će aktivno čitati /mnt/skills/public/docx/SKILL.md ovaj fajl, povući sadržaje u tekući kontekstni prozor. Nakon što se učita, ove instrukcije postaju standardi koje model sledi u ovom razgovoru, vodeći ga kako da generiše dokument.
Ovde postoji veoma važna tačka, to je ovo čitanje je inicirao sam model, nije sistem unapred ubacio. Sistem samo u kontekstu pruža direktorijum Skill-ova, kaže modelu koje Skill-ove postoje, gde je fajl svakog Skill-a, ali prvo pokretanje čitanja model samostalno odlučuje na osnovu potreba zadataka.
Ovaj dizajn je veoma pametan, jer predaje pravo zakazivanja modelovoj sopstvenoj sposobnosti zaključivanja, a ne se oslanja na hardkodirana pravila za rutiranje.
Sa vremenske tačke gledišta, ceo proces je ovakav: korisnik šalje zahtev, model prvo pregleda direktorijum Skill-ova u kontekstu, oceni koji da koristi, zatim pozove view alatku da učita odgovarajući SKILL.md, nakon čitanja prema instrukcijama unutra vrši konkretan zadatak. Ako je zadatak komplexan i treba više Skill-ova, model će redom čitati više fajlova.
Ovaj mehanizam je u suštini dinamičko proširenje konteksta vođeno alatkama (Tool Use).
Model ne pasivno prima instrukcije, nego aktivno dobija informacije koje treba, misao je slična RAG-ovom pretraga pojačanom generiranju, razlika je u tome što RAG pretražuje eksterno znanje, a ovde se pretražuju izvršni standardi. Osnovna logika je ista, pre generiranja prvo vuče najrelevantnije informacije u kontekst, poboljšava kvalitet izlaza.
memo: 3. aprila 2026. izmenjeno do ovde, danas dok sam saigraču menjao životopis, saigrač je jasno rekao: u tri meseca više nego što sam sam naučio u pola godine, i planetu preporučio saigračima.

08, Znate li create-skill?
Znam.
create-skill je ugrađena "meta Skill" Claude Code-a, specijalno namenjena da nam pomaže da pravimo Skill-ove.

On definise standardni proces od 6 koraka:
Prvi korak RazumevanjeUnderstanding, prvo jasno razumeti zahtev. Agent će nas pitati koje funkcije ovaj Skill treba podržati, da li ima konkretne primere, koje scene će ga okinuti.
**Drugi korak PlaniranjePlanning.**Agent će analizirati naše zahteve, odlučiti da li treba pisati skripte u scripts, da li staviti referentne dokumente u references/.
Treći korak InicijalizacijaInitializing, automatski generisati strukturu direktorijuma i SKILL.md šablon.
Četvrti korak UređivanjeEditing, popuniti sadržaj.
Peti korak PakovanjePackaging, spakovati u .skill fajl.
Šesti korak IteracijaIteration, prema stvarnoj upotrebi iterativno unaprediti, ovo je opcioni korak.
08-1, Šta radi faza razumevanja?
Svrha ovog koraka je da se izbegne napravljanje Skill-a kojih niko neće koristiti. Agent će pitati:
- "Which functionality should the skill support?" (Koje funkcije Skill treba da podrži?)
- "Can you give some examples?" (Da li možete dati neke konkretne primere?)
- "What would trigger this skill?" (Koje scene će okinuti ovaj Skill?)
Poziv funkcije:
step1_understanding()
└── ask_user_questions([...])
└── prikupljanje povratnih informacija korisnika
└── validate_examples(examples)Na primer, korisnik kaže "hoću da napravim jedan Skill za obradu Excel-a", tada će Agent pitati: koju vrstu Excel-a obradjuje? Da li je finansijski izveštaj ili analiza podataka? Koje operacije treba podržati? Da li čitanje, pisanje ili konverziju formata?
Samo ako se jasno reše ovi problemi, Agent može napraviti zaista koristan Skill.
08-2, Šta radi faza planiranja?
Apstrahuje konkretne korisničke zahteve u ponovljive tipove resursa.
Lanac poziva funkcija:
step2_planning(user_examples)
└── analyze_example(example)
│ └── identify_reusable_resources(example)
│ ├── need_script? → dodati u scripts/ listu
│ ├── need_reference? → dodati u references/ listu
│ └── need_asset? → dodati u assets/ listu
└── generate_resource_plan()Agent treba razmisliti koje funkcije je pogodno implementirati skriptama, koje trebaju referentne dokumente, koje trebaju resurse šablona. Dobar plan može učiniti sledeću implementaciju efikasnijom.

08-3, Šta radi faza inicijalizacije?
Agent će pozvati init_skill.py skriptu da generiše kompletna Skill šablon.
Lanac poziva funkcija:
step3_initialize(skill_name, output_path)
└── run_script("scripts/init_skill.py", args=[...])
└── init_skill.main()
├── validate_skill_name(skill_name)
├── skill_dir = Path(path) / skill_name
├── skill_dir.mkdir(parents=True)
├── generate_skill_md(skill_name)
├── generate_example_script()
├── generate_example_reference()
└── generate_example_asset()08-4, Šta radi faza uređivanja?
Ovo je najduži deo celog procesa, takođe je deo koji najviše odražava kvalitet Skill-a.
Poziv funkcije:
step4_edit_skill(skill_dir)
├── edit_scripts(skill_dir / "scripts")
├── edit_references(skill_dir / "references")
├── edit_assets(skill_dir / "assets")
└── update_skill_md(skill_dir / "SKILL.md")Postoji nekoliko ključnih tačaka na koje treba obratiti pažnju:
- description mora sadržati uslove okidača, jer određuje kada će Skill biti okinut.
- Održavati jednostavnim, SKILL.md ne preko 500 linija
08-5, Šta radi faza pakovanja?
Agent će pozvati package_skill.py skriptu, Skill spakovati u .skill fajl.
Lanac poziva funkcija:
step5_package(skill_dir, output_dir=None)
└── run_script("scripts/package_skill.py", args=[...])
└── package_skill.main()
├── validate_skill(skill_path)
│ └── quick_validate.validate_skill()
│ ├── check_skill_md_exists()
│ ├── parse_frontmatter()
│ ├── validate_name_format()
│ └── validate_description_length()
└── create_zip_file()Obratite pažnju, pre pakovanja prvo se validira. Kao CI provera pre predaje koda, može se u poslednjem trenutku otkriti problem.
08-6, Šta radi faza iteracije?
Opcioni korak, unapređenje Skill-a prema stvarnoj upotrebi. Dobar Skill se ne piše odjednom, nego se stalno poboljšava u upotrebi.
step6_iterate(skill_dir)
└── observe_usage_patterns()
└── identify_improvements()
└── update_skill_md_or_resources()08-7, Kako se progresivno otkrivanje manifestuje u create-skill?
Dizajnerska filozofija "progresivnog otkrivanja" prolazi kroz celu arhitekturu Skills sistema. Kroz progresivno otkrivanje, sistem učitava samo trenutno potrebne sadržaje, ističe se i funkcionalnost kompletna, i neće potrošiti kontekstni prostor.
| Nivo | Sadržaj | Veličina | Vreme učitavanja |
|---|---|---|---|
| L1 | Metadata (naziv + opis) | ~100 tokena | Uvek učitano |
| L2 | SKILL.md telo | <5k tokena | Nakon okidanja Skill-a |
| L3 | Resursi paketa | Neograničeno | Učitavanje po potrebi |

08-8, Znate li kompletni redosled poziva create-skill?
Jednom slikom sumirati ceo proces izvršenja:
Unos korisnika → ocena okidača → učitavanje SKILL.md → izvršenje 6 koraka → validacija → pakovanje → završeno
│ │ │ │ │ │
│ │ │ │ │ └── .skill fajl
│ │ │ │ └── validate_skill()
│ │ │ └── step1() → step2() → ... → step6()
│ │ └── inject_to_context()
│ └── match_skill()
└── "pomozite mi da napravim Skill"
09, Koja je razlika između Skills-ova i GPTs, Rules?
Skills sistem Claude Code-a ima nekoliko jedinstvenih mesta:
1. Progresivno otkrivanje: Samo nakon okidanja učitava kompletan sadržaj, štedi kontekst 2. Razvrstavanje slobode: Može birati različite stepene ograničenja prema kompleksnosti zadataka 3. Mehaničam validacije: Pre pakovanja obavezna validacija, osigurava kvalitet 4. Izvršne skripte: Podržava bundled scripts, može izvršiti determinističke operacije

U poređenju, GPT-ovi GPTs su više fokusirani na skladište znanja i prilagođavanje razgovora, Cursor-ovi Rules su više fokusirani na ograničenja standarda kodiranja, dok Claude Code-ovi Skills kombinuju upravljanje kontekstom, domensko znanje i izvršnu sposobnost.
10, Kako napisati visokokvalitetan Skill?
1. description treba jasno napisati uslove okidača
Ovo je ključ da se Skill ispravno okine. Treba tačno opisati koji problem Skill rešava, u kojim scenama treba koristiti.
Na primer, dobar description treba biti ovakav: "Use when working with PDF documents for: (1) Extracting text and tables, (2) Merging or splitting PDFs, (3) Filling form fields, (4) Converting to other formats"[Kad se radi sa PDF dokumentima koristiti, pogodno za: (1) Izvlačenje teksta i tabela, (2) Spajanje ili razdvajanje PDF-ova, (3) Popunjavanje polja formulara, (4) Konverzija u druge formate]
2. Održavati SKILL.md jednostavnim
Ne preko 500 linija. Ako je sadržaj previše, detaljne sadržaje staviti u references, SKILL.md zadrži samo osnovni proces. Zapamtite, SKILL.md je vodič, ne enciklopedija.
3. Više pisati primere
Primjeri su korisniji od instrukcija. U SKILL.md stavi više konkretnih primera, neka Claude zna kako da radi različite situacije. Na primer možeš napisati: "When user says 'merge these PDFs', use scripts/merge_pdf.py" (Kada korisnik kaže "spoj ove PDF-ove", koristi scripts/merge_pdf.py). Što su konkretniji primeri, to je preciznije izvršenje modela.
4. Testirati Skill
Pre objavljivanja, više puta testirati. Videti da li je okidač precizan, da li izvršenje odgovara očekivanjima. Dobar Skill treba više puta brusiti. Predlažem bar testirati 5 različitih scena, osigurati pokrivanje različitih graničnih uslova.
5. Pametno koristiti references
Ako Skill uključuje kompleksno domensko znanje, na primer shema baze podataka, API dokumentacija, poslovna pravila, ova staviti u references direktorijum. Tako se SKILL.md održava jednostavnim, detaljni sadržaj se učitava po potrebi.

11, Koje su mjere optimizacije performi pri čitanju Skill-ova od strane Agent-a?
Prvo kažemo mehanizam keširanja. Kod Skill-ova keširanje trenutno više manifestuje na nivou indeksa opisa, to jest nazivi i opisi svih Skill-ova su stalni u kontekstu, ovo je samo po sebi keš, izbjegava svaki put ponovno dobijanje informacija "koji Skill-ovi su dostupni".
Ali za konkretne sadržaje SKILL.md, nakon što se jednom učitaju istom razgovoru već su u kontekstu, kasnije citiranje ne mora ponovo čitati, ovo može smatrati prirodnim "keširanjem na nivou razgovora" kontekstnog prozora.
class SkillMetadataCache:
def __init__(self):
self.cache = {}
self.last_update = None
def get_metadata(self, skill_name):
if skill_name in self.cache:
if not self.is_expired(skill_name):
return self.cache[skill_name]
# Keš promašaj ili istekao, ponovo čitati sa diska
metadata = self.load_from_disk(skill_name)
self.cache[skill_name] = metadata
return metadata
def is_expired(self, skill_name):
# Proveriti vreme modifikacije fajla
file_mtime = os.path.getmtime(skill_path)
return file_mtime > self.cache[skill_name].loaded_timeMeđutim, preko razgovora se ne kešira, svaki novi razgovor ako treba koristiti određeni Skill, mora se ponovo čitati jedanput, jer je kontekst potpuno nov.
Drugo kažemo strategiju inkrementalnog učitavanja. Za velike reference fajlove, Agent koristi strategiju inkrementalnog učitavanja. Neće odjednom učitati ceo fajl u kontekst, nego učitava samo deo koji treba.
def load_reference_incremental(ref_path, section=None):
if section:
# Učitati samo određeno poglavlje
content = extract_section(ref_path, section)
else:
# Prvo učitati sadržaj i sažetak
content = extract_toc_and_summary(ref_path)
inject_to_context(content)Ova strategija je posebno korisna za reference dokumente od nekoliko stotina linija.
Konačno kažemo prekompajliranje skripti. Za Python skripte, Agent će proveriti da li postoje prekompajlirani bajtkod (.pyc fajlovi). Ako postoje i nisu istekli, direktno koristi bajtkod, štedi vreme kompajliranja.
run_script("scripts/init_skill.py")
├── check_pyc_exists("scripts/init_skill.py")
│ └── if exists and not expired:
│ └── execute_pyc("scripts/__pycache__/init_skill.cpython-311.pyc")
│ └── else:
│ ├── compile_to_pyc("scripts/init_skill.py")
│ └── execute_pyc(compiled_path)12, Koji su sigurnosni mehanizmi pri izvršenju Skill-ova od strane Agent-a?
- Izvršno okruženje peska, skripte se izvršavaju samo u okruženju peska, tako dobro sprečavaju zlonamerne skripte da oštete sistem. Čak i ako skripta ima problem, može samo raditi u ograničenom okruženju, ne može pristupiti osetljivim resursima.
def run_script_in_sandbox(script_path, args):
sandbox = Sandbox()
sandbox.restrict_network_access() # Ograničiti mrežni pristup
sandbox.restrict_file_access(allowed_dirs=["./temp"]) # Ograničiti pristup fajlovima
sandbox.restrict_system_calls() # Ograničiti sistemske pozive
result = sandbox.execute(script_path, args)
return result- Svi ulazi korisnika koji ulaze u skriptu prolaze kroz strogu validaciju, sprečavaju napade kao što je injekcija komandi. Ulazi korisnika će se očistiti, osiguravajući da se ne izvrše ili raščlanjuju kao komande.
def validate_user_input(user_input):
# Proveriti da li sadrži opasne karaktere
dangerous_patterns = [';', '&&', '||', '`', '$(']
for pattern in dangerous_patterns:
if pattern in user_input:
raise SecurityError(f"Ulaz sadrži opasan uzorak: {pattern}")
# Proveriti dužinu
if len(user_input) > 1000:
raise SecurityError("Ulaz je predugačak")
return sanitize_input(user_input)- Pri izvršenju skripti postoje ograničenja korišćenja resursa, sprečavaju napade iscrpljivanjem resursa:
script_limits = {
"max_execution_time": 30, # Najviše 30 sekundi izvršenja
"max_memory_mb": 512, # Najviše 512MB memorije
"max_file_size_mb": 100, # Najviše 100MB čitanje/pisanje fajlova
"max_network_requests": 10 # Najviše 10 mrežnih zahteva
}memo: 3. aprila 2026. izmenjeno do ovde, danas saigrač javio dobru vest, rekao da je dobio letnje ponude od Tencent, Alibaba Cloud, Meituan tri firme, i posebno se zahvalio Pai Congming+mydb ovim dva projekta, jasno je rekao da je planetu preporučio saigračima.

13, Koja je razlika između Skills-ova i Prompt-ova?
Prompt je jedan razgovor između nas i AI, završi se kad se kaže. Sledeći put ako hoćemo da koristimo istu sposobnost, moramo ponoviti, ili tražiti iz istorije razgovora kopirati i zalepiti.

Skills je drugačije. On kreira rešenje jedne klase problema u modul koji se može ponavljati pozivati. Kao enkapsulirana alatka pri pisanju koda, jednom razvijeno, svuda se koristi.
13-1 To li je samo šablonizacija Prompt-a?
Ne samo šablonizacija. Šablonizacija je statička, Skills su dinamički, evolutivni.
Na primer. Pretpostavimo da često tražimo od AI da radi reviziju koda. Prompt način, svaki put moramo reći: "pomozite mi da pregledam ovaj kod, obratite pažnju na sigurnost, performanse, čitljivost, prema Alibaba Java standardima."
Skills način, postaje enkapsuliranje ove logike revizije u jedan Skill. Sledeći put direktno kažem "koristi code-review Skill", AI zna šta treba raditi, kako, do kog stepena.
Važnije je, ovaj Skill se može kontinuirano unapređivati. Ako otkrijemo da smo izostavili proveru bezbednosti niti, dodamo; ažuriramo timske standarde, sinhronizujemo. Svi koji koriste ovaj Skill mogu odmah uživati u poboljšanjima.

14, Koja je veza između Skills-ova i MCP-a?
Mislim da su komplementarni.
MCP (Model Context Protocol) rešava problem povezivanja AI i eksternih sistema. Na primer da AI pozove GitHub API, upita bazu podataka, operiše fajl sistem, otvori pretraživač itd.
Ja često koristim Chrome Devtools MCP da AI vrši automatizovano testiranje.

Skills rešava problem enkapsulacije AI sposobnosti. Na primer da AI ima sposobnost revizije koda, generisanja dokumentacije, revizije tehničkog rešenja.
MCP je kao da AI-u montira robotsku ruku, omogućava mu da dodirne spoljni svet. Skills je kao da dao AI uputstvo za upotrebu, omogućava mu da zna kako da radi posao.
Kombinovani, AI zaista može postati alat produktivnosti.
15, Koje Skills-ove obično koristite?
Frontend-design (Frontend dizajn)
Adresa za preuzimanje: https://mcpservers.org/claude-skills/anthropic/frontend-design
Pozicioniranje ovog Skill-a je "ekspert za frontend dizajn". Opišemo zahteve, on direktno izbacuje HTML+CSS kod, nosi responzivan raspored.
Želite videti koje su Skills instalirane u Claude Code?
Možete izvršiti komandu /skills.

Prompt: "dizajniraj modernu stranicu za prijavu, uključuje polja za unos emaila i lozinke, podržava prebacivanje tamnog režima".

- Boja: Tamni režim koristi tamno ugljenoljubu zlatnom akcentom, svetli režim koristi toplobelu + tamnosivu
- Font: Playfair Display (naslovi) + Source Serif 4 (sadržaj) - klasična elegantna kombinacija
- Vizuelno: Fina gradijentna pozadina, suptilna tekstura šuma, fini okviri, fluidna animacija
- Diferencijacija: Zlatni efekat sjaja, staklomorfna kartica, elegantna animacija lebdenja

Naravno, ovo ima određenu vezu sa modelom iza, ja trenutno koristim GLM-5 za testiranje.
UI-UX-PRO-MAX
Adresa za preuzimanje: https://skillsmp.com/skills/nextlevelbuilder-ui-ux-pro-max-skill-claude-skills-ui-ux-pro-max-skill-md
Ovaj Skill je više fokusiran na UX proces od Frontend-design. Neće direktno dati kod, nego prvo izbacuje opis žičnog okvira, proces interakcije, zatim vizuelno rešenje.

Isti zahtev za stranicu prijave, njegov izlaz je: tok korisnika → informaciona arhitektura → opis žičnog okvira → vizuelne preporuke. Pogodno za scene koje trebaju potpunu dizajnersku dokumentaciju, ako samo želite brzo dobiti kod, osećaće da je "previše reči".
Interaction-design (Frontend dizajn interakcije)
Adresa za preuzimanje: https://github.com/wshobson/agents/tree/main/plugins/ui-design/skills/interaction-design
Ovaj Skill se fokusira na interaktivne efekte. Mikrointerakcija, povratne informacije o stanju, tranzicijska animacija, njegova je jaka strana.

Zamolio sam ga da doda jednu "mikrointerakciju vidljivosti lozinke" na stranicu prijave.

Izlaz uključuje: animaciju klika, animaciju promene ikonice, povratne vibracije greške. Kod je direktno upotrebljiv, parametri animacije su takođe podešeni prilično udobno.
Skill-creator
Adresa za preuzimanje: https://github.com/anthropics/skills/tree/main/skills/skill-creator
Ovaj Skill je Skill za generisanje Skill-ova, malo konfuzno, ali veoma koristan.
Opišite jedan ponavljajući proces rada, može nam pomoći da enkapsuliramo u ponovo upotrebljiv Skill.
Claude je nedavno napravio veća unapređenja ovim Skills-ima, dodao potpuni okvir evaluacije veština i benčmark testiranja.
- generate_review.py - skripta za generisanje izveštaja o evaluaciji
- viewer.html - interaktivni veb pregledač, podržava dva jezička prozora, jezičak Outputs - pregledati izlaze test slučajeva jedan po jedan. Pružiti povratne informacije; jezičak Benchmark - prikazuje kvantitativne statističke podatke, stopu prolaska, vreme i korišćenje tokena
Takođe sam prvi put ažurirao Codex, celokupno osećaj korišćenja nije loše.

Da, Codex takođe može koristiti Claudeove Skills.
Skill za rešavanje ponavljajućeg pronalaženja informacija
Adresa za preuzimanje: https://github.com/YuJunZhiXue/github-skill-forge
Ovaj Skill je pogodan za scene koje često traže materijale. On kreira proces pretrage, sledeći put direktno poziva.

Zamolio sam ga da nađe da li na GitHub-u ima projekata koji pomažu pisanje romana, on će prvo klasifikovati po kineskom i engleskom, zatim konvertovati projekte u Skills.

Find-Skills
Adresa za preuzimanje: https://github.com/vercel-labs/skills
Ovaj Skill služi za otkrivanje drugih Skill-ova. Kada ne znate koji Skill treba koristiti za neki zahtev, može nam preporučiti.
Testirao sam pitati ga: "hoću da generišem grafikon vizualizacije podataka, koji Skill treba koristiti?" Preporučio je 3 relevantna Skills-a, i objasnio primenu svakog.

web-access

Jezgra dizajnerske filozofije web-access-a se zove "misli kao čovek", nakon prijema zadatka prvo jasno definisati cilj, izabrati najverovatniji direktan način verifikacije, u procesu prema povratnim informacijama u realnom vremenu prilagođavati strategiju, tek nakon što se dostigne cilj prestaje.
Celo Skill fajl ne samo definisao interfejs alata, nego napisao mnogo logike odlučivanja, podučava Agent u kojoj sceni koji alat koristiti, na koji problem naići kako zaobići.
Njegov set alataka je podeljen u tri sloja:
Prvi sloj je laka pretraga i dobavljanje. WebSearch traži ključne reči, WebFetch dobija poznat URL sadržaj, curl dobija sirovi HTML, Jina pretvara veb stranice u Markdown štedi token.
Ovo su postojeće Agent sposobnosti, web-access je dodao strategiju planiranja—kad koji alat koristiti, kad treba odustati i promeniti misao.
Drugi sloj je CDP direktna veza pretraživača. Ovo je pravo "oružje" web-access-a.
Prvo malo popularizuj šta je CDP. CDP pun naziv Chrome DevTools Protocol, je set protokola za debugiranje koji Chrome pretraživač izlaže. Možeš ga razumeti kao "zadnja vrata" Chrome-a, kroz ovaj protokol, eksterni program može potpuno kontrolisati ponašanje pretraživača: otvoriti stranicu, izvršiti JavaScript, kliknuti element, napraviti screenshot, čak kontrolisati reprodukciju videa.
web-access se kroz CDP direktno povezuje sa Chrome pretraživačem koji korisnik svakodnevno koristi, prirodno nosi stanje prijave, može operisati bilo koju stranicu koja zahteva interakciju. Xiaohongshu, javni nalog WeChat-a, pozadinski sistem upravljanja koji zahteva prijavu, sve su u redu.
Treći sloj je paralelna podela rada. Više istraživačkih zadataka može se podeliti pod Agent-ima za paralelno izvršenje, svaki pod Agent sam otvara tab, sam operiše, sam zatvara, glavni Agent samo prima sažetak rezultata. Brzina je brza, i neće napuknuti kontekst.
16, Kako će se Skills razvijati u budućnosti?
Mislim da će postojati dva trenda.
Prvi trend je standardizacija Skills-ova. Trenutno format Skills-ova svakog tima može biti različit, u budućnosti će se možda pojaviti industrijski standard, kao npm, pip.
Drugi trend je komercijalizacija Skills-ova. Lični programeri mogu objaviti Skills u radnju, drugi plaćaju ili besplatno koriste. Ovo će podstaći novi ekosistem.

17, Koja je osnovna konkurentska prednost programera u budućnosti?
Prvo, sposobnost definisanja problema. AI može pomoći rešiti probleme, ali pretpostavka je da tačno možemo definisati problem. Mnogi ljudi ne mogu jasno reći šta žele, AI koliko je moćan nema koristi.
Drugo, sposobnost dizajna sistema. AI može pisati kod, ali arhitektonski dizajn, podela modula, definisanje interfejsa, ovo i dalje zahteva ljudsku kontrolu. AI je izvršilac, ljudi su dizajneri.
Treće, sposobnost kontinuiranog učenja. Tehnologija se tako brzo ažurira, danas korisni Skills, sutra možda zastari. Održavati učenje, može održavati konkurentnost.
18, U stvarnim projektima, kako upravljati i kontrolisati veliki broj Skill-ova?
Može unutar preduzeća deployovati SkillHub, SkillHub pruža rešenje na nivou preduzeća, to je samostalni host, open source Agent Skill registar centra, cilj je pomoći timovima da objavljuju, otkrivaju i upravljaju ponovljivo upotrebljivim Skill paketima.
GitHub adresa: https://github.com/iflytek/skillhub

SkillHub dozvoljava preduzećima da registar centra Skill-ova deployuju na svoj server, osiguravajući da su svi sopstveni Skill-ovi u vatrenom zidu.
Takođe pruža funkcionalnost punog teksta pretrage, podržava filtriranje po namespace-u, broju preuzimanja, oceni i najnovijem stepenu.
Podržava organizaciju timova ili globalni scope namespace. Svaki namespace ima svoje članove, uloge (vlasnik/administrator/član) i politiku objavljivanja, ostvarujući detaljnu kontrolu dozvola.
Pruža prirodni REST API i sloj kompatibilan sa clawhub CLI. Programeri mogu putem komandne linije objavljivati, instalirati i upravljati Skills-ovima.
memo: 3. aprila 2026. izmenjeno do ovde, danas saigrač u emailu o izmene životopisa je rekao, uputstva koja mi je dao su više od svih profesora škole zajedno, beskonačno zahvalan. Zaista dobijanje ovakve zahvalnosti, veoma je potresno. 🥹

Ništa me ne zaustavlja—osim cilja, makar na obali bile ruže, hlad, mirna luka, ja sam brod bez veza.
Serijski sadržaj:
- Intervju pobeda Java SE deo 👍
- Intervju pobeda Java kolekcija okvir deo 👍
- Intervju pobeda Java konkurentno programiranje deo 👍
- Intervju pobeda JVM deo 👍
- Intervju pobeda Spring deo 👍
- Intervju pobeda Redis deo 👍
- Intervju pobeda MyBatis deo 👍
- Intervju pobeda MySQL deo 👍
- Intervju pobeda operativni sistem deo 👍
- Intervju pobeda računarske mreže deo 👍
- Intervju pobeda RocketMQ deo 👍
- Intervju pobeda distribuirani sistem deo 👍
- Intervju pobeda mikroservis deo 👍
- Intervju pobeda dizajn patern deo 👍
- Intervju pobeda Linux deo 👍
- Intervju pobeda OpenClaw deo 👍
- Intervju pobeda Skills deo 👍
GitHub je ozvezdia 17000+ open source baza znanja "Intervju pobeda" drugo izdanje PDF konačno je stiglo! Uključuje Java osnovu, Java kolekcija okvir, Java konkurentno programiranje, JVM, Spring, Redis, MyBatis, MySQL, operativni sistem, računarske mreže, RocketMQ, distribuirani sistem, mikroservis, dizajn patern, Linux, OpenClaw, Skills itd, ukupno preko 320 hiljada reči, 500+ ručno nacrtanih crteža, može se reći da je lako razumljivo, duhovito... Detalje kuknjaj: Intervju pobeda 2.0 izdanje PDF objavljeno, Java backend programeri moraju znati, možda najbolje pitanja za učenje 2026. godine
