Veščine in priročniki (Skills)
Veščine (Skills) so postopkovni priročniki in recepti na zahtevo (npr. kako uvesti aplikacijo na Forgejo, kako izvesti migracije baze v Dockerju ali kako zamegliti občutljive podatke na posnetkih zaslona).
Primerjava s kuhinjo: Pravila proti Veščinam
Razdelek z naslovom “Primerjava s kuhinjo: Pravila proti Veščinam”Da bi razumeli, kako Antigravity upravlja vaša navodila, ne da bi obremenjeval spomin modela, se ponovno spomnimo naše restavracijske kuhinje:
- Pravila (
AGENTS.md):
Pravilnik za zaposlene, nalepljen na steno. Preprost, vsem stalno viden in velja za čisto vsako dejanje: “Pred kuhanjem si umij roke”, “Vedno uporabljaj camelCase”. - Veščine (
SKILL.md):
Knjiga s specialnimi recepti na najvišji polici. Ko pečete preproste jutranje palačinke, ne berete 20 strani dolgega recepta za čokoladni sufle. Knjigo pustite na polici in jo snamete šele takrat, ko gost v restavraciji dejansko naroči čokoladni sufle.
Moč postopnega razkrivanja (Progressive Disclosure)
Razdelek z naslovom “Moč postopnega razkrivanja (Progressive Disclosure)”Če bi 20 zapletenih postopkov z vsemi podrobnostmi zapisali neposredno v AGENTS.md, bi ob vsakem vprašanju porabili več kot 50.000 žetonov — tudi ko bi agenta vprašali le preprosto vprašanje o barvi gumba v CSS.
Z uporabo Veščin (Skills):
- Agent ima v aktivnem spominu naložen le enovrstični opis posamezne veščine.
- Ko se pogovarjate o drugih temah, veščina porabi natanko nič žetonov.
- V trenutku, ko se vaše vprašanje ujema z opisom, agent dinamično sname dotični
SKILL.mds police, natančno sledi navodilom in ga po zaključku pospravi nazaj.
[!TIP] To učinkovitost lahko vizualno preverite v poglavju Ukazi in bližnjice. Naš pregledovalnik
/contextje potrdil, da so vse aktivne veščine skupaj porabile le 777 žetonov (0,1 % celotnega okna), pri čemer jeantigravity_guide/SKILL.mdvzel pičlih 44 žetonov!
Primer iz prakse: Veščina za zameglitev slik (Image Redaction)
Razdelek z naslovom “Primer iz prakse: Veščina za zameglitev slik (Image Redaction)”Tukaj je resničen primer, ki smo ga zgradili ravno za to spletno dokumentacijo.
Želeli smo objaviti posnetek zaslona ukaza /usage, vendar je vseboval zasebni e-poštni naslov (Account: samo.blatnik@gmail.com). Pred objavo smo morali e-poštni naslov varno zamegliti.
Zakaj tega nismo dali v AGENTS.md?
Razdelek z naslovom “Zakaj tega nismo dali v AGENTS.md?”Če bi knjižnice za obdelavo slik v Pythonu, koordinate pikslov in teorijo Gaussove zameglitve vpisali v AGENTS.md, bi to po nepotrebnem bremenilo kontekstno okno pri vsakem vprašanju.
Rešitev: Zapakiranje v veščino (Skill)
Razdelek z naslovom “Rešitev: Zapakiranje v veščino (Skill)”Ustvarili smo veščino image-redaction v mapi .agents/skills/image-redaction/:
skills/image-redaction/├── SKILL.md # Kdaj in kako zamegliti občutljive podatke└── scripts/ └── redact.py # Rešitev v Pythonu z uporabo knjižnice Pillow1. Recept veščine (SKILL.md)
Razdelek z naslovom “1. Recept veščine (SKILL.md)”---name: image-redactiondescription: Securely redact, blur, or sanitize sensitive information (emails, API keys, passwords, IP addresses) in screenshot images using Python Pillow before public sharing or uploading.---
# Image Redaction & Sanitization Skill
Ko slika vsebuje občutljive podatke:1. Določite pravokotne koordinate (x1, y1, x2, y2).2. Uporabite Gaussovo zameglitev (polmer >= 10), ki trajno uniči robove črk.3. Zaženite `python3 scripts/redact.py <slika> --box <x1> <y1> <x2> <y2>`.4. Vizualno preverite rezultat, da je besedilo neberljivo, okolica pa ostane jasna.2. Pomožna skripta (scripts/redact.py)
Razdelek z naslovom “2. Pomožna skripta (scripts/redact.py)”import argparsefrom PIL import Image, ImageFilter
def redact(image_path, box, output_path, radius=10): im = Image.open(image_path).convert("RGBA") crop = im.crop(box) blurred = crop.filter(ImageFilter.GaussianBlur(radius)) im.paste(blurred, box) im.save(output_path)
if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("image") parser.add_argument("--box", nargs=4, type=int, required=True) parser.add_argument("-o", "--output") args = parser.parse_args() redact(args.image, tuple(args.box), args.output or args.image)Zdaj kadarkoli rečete: “Pred objavo zamegli e-poštni naslov na tem posnetku zaslona”, agent samodejno prepozna in aktivira to veščino, izvede skripto z ustreznimi koordinatami in pripravi varno sliko!
Še en primer iz prakse: Veščina za postavitev dokumentacije
Razdelek z naslovom “Še en primer iz prakse: Veščina za postavitev dokumentacije”Ustvarili smo tudi veščino astro-starlight-deploy v .agents/skills/astro-starlight-deploy/:
- Združuje celoten potek dela: neinteraktivno postavitev (
npm create astro@latest), razbijanje dokumentacije na modularna poglavja, interaktivneLinkCardkartice ter uvedbo v produkcijo na Vercel z enim ukazom. - Vsebuje skripto
./scripts/scaffold.shza zagon nove dokumentacije v nekaj sekundah.
Primerjava: Veščine proti Pravilom proti Podagentom
Razdelek z naslovom “Primerjava: Veščine proti Pravilom proti Podagentom”| Koncept | Kaj to je | Poraba žetonov | Kje se nahaja |
|---|---|---|---|
Pravila (AGENTS.md) |
Stalna varovala in slogovni dogovori | Stalno v aktivnem spominu | Koren projekta ali ~/.config/AGENTS.md |
| Podagenti | Avtonomni delavci z ločenim oknom | 0 žetonov v glavnem klepetu | ~/.gemini/config/agents/*.md |
Veščine (SKILL.md) |
Postopkovni recepti po korakih | Naloženi le ob sprožitvi | .agents/skills/ ali ~/.gemini/antigravity-cli/skills/ |
Nivoji zaznavanja veščin
Razdelek z naslovom “Nivoji zaznavanja veščin”- Delovni prostor (
.agents/skills/<ime>/SKILL.md): Vezano na posamezen projekt, shranjeno v Git. - Globalni CLI (
~/.gemini/antigravity-cli/skills/<ime>/SKILL.md): Na voljo za vse projekte na tem računalniku. - Skupni Gemini nivo (
~/.gemini/skills/<ime>/SKILL.md): Deljeno med Antigravity CLI in okoljem Antigravity IDE.
V terminalu vpišite /skills za pregled in upravljanje vseh naloženih veščin.