Preskoči na vsebino

Veščine in priročniki (Skills)

Izvorna Markdown koda.md
---
title: Veščine in priročniki (Skills)
description: Modularni postopkovni priročniki z uporabo postopnega razkrivanja v orodju Antigravity.
sidebar:
  order: 7
---

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

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)

Č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):**
1. Agent ima v aktivnem spominu naložen le **enovrstični opis** posamezne veščine.
2. Ko se pogovarjate o drugih temah, veščina porabi natanko **nič žetonov**.
3. V trenutku, ko se vaše vprašanje ujema z opisom, agent dinamično sname dotični `SKILL.md` s 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](/commands-shortcuts/#pregled-razporeditve-žetonov-context). Naš pregledovalnik `/context` je potrdil, da so vse aktivne veščine skupaj porabile le **777 žetonov** (0,1 % celotnega okna), pri čemer je `antigravity_guide/SKILL.md` vzel pičlih **44 žetonov**!

---

## Primer iz prakse: Veščina za zameglitev slik (Image Redaction)

Tukaj je resničen primer, ki smo ga zgradili ravno za to spletno dokumentacijo.

### Težava
Ž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`?
Č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)
Ustvarili smo veščino **`image-redaction`** v mapi `.agents/skills/image-redaction/`:

```text
skills/image-redaction/
├── SKILL.md            # Kdaj in kako zamegliti občutljive podatke
└── scripts/
    └── redact.py       # Rešitev v Pythonu z uporabo knjižnice Pillow
```

#### 1. Recept veščine (`SKILL.md`)
```markdown
---
name: image-redaction
description: 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`)
```python
import argparse
from 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

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, interaktivne `LinkCard` kartice ter uvedbo v produkcijo na Vercel z enim ukazom.
* Vsebuje skripto `./scripts/scaffold.sh` za zagon nove dokumentacije v nekaj sekundah.

---

## 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

* **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.

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).


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):

  1. Agent ima v aktivnem spominu naložen le enovrstični opis posamezne veščine.
  2. Ko se pogovarjate o drugih temah, veščina porabi natanko nič žetonov.
  3. V trenutku, ko se vaše vprašanje ujema z opisom, agent dinamično sname dotični SKILL.md s 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 /context je potrdil, da so vse aktivne veščine skupaj porabile le 777 žetonov (0,1 % celotnega okna), pri čemer je antigravity_guide/SKILL.md vzel 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.

Č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.

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 Pillow
---
name: image-redaction
description: 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.
import argparse
from 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, interaktivne LinkCard kartice ter uvedbo v produkcijo na Vercel z enim ukazom.
  • Vsebuje skripto ./scripts/scaffold.sh za 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/

  • 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.