Hedefi calistirilabilir kabul kriterine cevir, kriter yesillenene kadar dur-durak bilmeden calis. Her turda olc, kirmiziyi teshis et, duzelt, tekrar olc. Triggers: goal, hedef, hedefe kadar devam, bitene kadar calis, kriter yesillenene kadar, goal loop.
Scanned 9/5/2026
Install to Claude Code
npx -y skills add SkyWalker2506/claude-config --skill goal --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Goal?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/skywalker2506-goal-claude-config)More formats (shields.io, HTML) on the badges page.
---
name: goal
description: "Hedefi calistirilabilir kabul kriterine cevir, kriter yesillenene kadar dur-durak bilmeden calis. Her turda olc, kirmiziyi teshis et, duzelt, tekrar olc. Triggers: goal, hedef, hedefe kadar devam, bitene kadar calis, kriter yesillenene kadar, goal loop."
user-invocable: true
argument-hint: "[hedef cumlesi] veya [check|status|stop]"
---
# /goal — Hedef kilidi: kriter yesillenene kadar durma
"Bitene kadar devam et" tek basina calistirilamaz bir emirdir, cunku **bitti**nin ne oldugunu
soylemez. Bu skill once onu soyletir: hedefi **calistirilabilir kabul kriterlerine** cevirir,
sonra o kriterler yesillenene kadar dongu doner.
Kriter yoksa dongu iki sekilde bozulur: ya ilk makul cikti gorulunce erken durur, ya da
hicbir zaman durmaz. Ikisi de ayni koktenlik: olculemeyen hedef.
## Argumanlar
| Arg | Ne yapar |
|-----|----------|
| *(hedef cumlesi)* | Kriterleri cikar → onaya sunmadan calistir → yesillenene kadar dongu |
| `check` | Sadece kriterleri calistir, rapor et, is yapma |
| `status` | Hangi kriter yesil, kac tur donuldu, son turda ne degisti |
| `stop` | Donguyu bitir, kalan kirmizilari acikca listele |
---
## Faz 1 — Hedefi kritere cevir
Hedef cumlesinden **3-8 kabul kriteri** cikar. Her kriter su testi gecmeli:
> Bir baskasi bu kriteri, benim ne yaptigimi bilmeden, tek komutla calistirip
> yesil/kirmizi diyebilir mi?
| Kotu kriter | Neden kotu | Iyi karsiligi |
|---|---|---|
| "Kart UI'i duzgun gorunuyor" | "Duzgun" olculemez | `sample sahnede 5 kart render ediliyor, screenshot'ta 5 ayri kart bbox'i var` |
| "Testler yaziliyor" | Faaliyet, sonuc degil | `dotnet test → 0 exit, >= 12 test` |
| "Performans iyi" | Esik yok | `1000 kartlik ListView'da frame time < 16ms` |
| "Derleniyor" | Neyin? | `Unity -batchmode -quit → log'da 0 adet "error CS"` |
`.goal/criteria.json` yaz:
```json
{
"goal": "Sample sahne gercek Guildbound sanatiyla oynanabilir",
"criteria": [
{"id":"C1","check":"unity -batchmode -quit ... && ! grep -q 'error CS' log","why":"derlenmeyen sahne oynanmaz"},
{"id":"C2","check":"ls Assets/Art/Sliced/**/*.png | wc -l → >= 44","why":"sanat gercekten dilimlenmis olmali"}
],
"blocked_by_human": []
}
```
**Kriteri sonradan gevsetme.** Kirmizi kriteri yesillendirmek icin esigi dusurmek, hedefi
degistirmektir; yapilacaksa kullaniciya **acikca** soylenir, sessizce degil.
## Faz 2 — Dongu
Her tur ayni dort adim:
```
OLC → TEshis → DUZELT → TEKRAR OLC
```
1. **Olc.** Butun kriterleri calistir. Kismi degil, hepsini — cunku bir duzeltme baska bir
kriteri kirabilir ve bunu ancak hepsini kosarak gorursun.
2. **Teshis.** Kirmizi kriterlerden **birini** sec: en cok digerini acan hangisiyse o.
Kirmizinin sebebini yaz. Sebep yazilmadan yapilan duzeltme tahmindir.
3. **Duzelt.** Sadece o sebebe yonelik. Yoldayken gordugun ilgisiz seyi duzeltme — kaydet,
gec.
4. **Tekrar olc.** Ayni turda. Yesillendiyse sonraki tura, yesillenmediyse teshis yanlisti;
yeni teshis yaz, eskisini tekrarlama.
Her tur sonunda `.goal/log.jsonl`'e bir satir: tur no, kriter durumlari, ne degisti, hangi
dosyalar.
## Faz 3 — Ne zaman durur
Ucu de mesru duruş, biri basari:
| Durum | Kosul | Ne yapilir |
|---|---|---|
| **Basari** | Tum kriterler ayni turda yesil | Commit + push, ozet yaz, dur |
| **Ilerleme yok** | 3 ardisik turda hicbir kriter durum degistirmedi **ve** yeni bilgi cikmadi | DUR. Kullaniciya: hangi kriter, uc teshisin neydi, neden tutmadi |
| **Insan kilidi** | Kriter, senin uretemeyecegin bir girdiye bagli (sanat varligi, kimlik bilgisi, urun karari) | O kriteri `blocked_by_human`'a tasi, **kalan kriterlerle devam et**, sonda acikca listele |
"Ilerleme yok" kurali `durmasin` emrinin karsiti degil, kosuludur: ayni duvara dorduncu kez
kosmak devam etmek degil, donmektir. Uc farkli teshis tutmadiysa problem senin
gormedigin bir yerde.
## Faz 4 — Yesil taklidi yasak
Bir kriteri yesillendirmenin sahte yollari — hepsi yasak, hepsi yasanmis:
- Testi `skip`/`ignore` isaretlemek
- Assertion'i gevsetip yesil almak
- Kriter komutunu daha kolay bir komutla degistirmek
- "Manuel dogruladim" deyip komutu hic calistirmamak
- Derleme hatasini kodu yorum satirina alarak susturmak
Bir kriter gercekten yanlis yazilmissa (olcmesi gerekeni olcmuyorsa) duzeltilebilir — ama
duzeltme **ayri ve gorunur** olur: neyin neden degistigi log'a ve ozete yazilir.
## /plan-build ile birlikte
`plan-build` bir **artis** teslim eder; `goal` o artisin hedefe vardigini **dogrular ve
varmadiysa donduru surdurur.** Birlesik akis:
```
plan-build: recon → Fable plan → kapi → Opus dalgalari → entegrasyon
↓
goal: OLC → kirmizi varsa TEshis → DUZELT → OLC
↓
hala kirmizi ve yapisal ise → Fable'a KALAN plani yazdir
↓
yeni dalga → tekrar OLC
```
Kural: kirmizi **noktasal** ise (tek dosya, tek hata) dogrudan duzelt — yeni plan turu acma,
o pahali. Kirmizi **yapisal** ise (paketler arasi sozlesme yanlis, eksik modul) Fable'a
sadece kalan isi yazdir; plani bastan yazdirma.
## Yapma
- **Kriteri hedefe gore degil, ulasabildigine gore yazma.** Kriter hedefi tarif eder, kapasiteni degil.
- **Tek turda her kirmiziya saldirma.** Paralel duzeltmeler birbirinin olcumunu kirletir.
- **Kismi olcumle tur kapatma.** Bir kriteri duzeltirken digerini kirdigini ancak hepsini kosarak gorursun.
- **Insan kilidini beklerken donguyu durdurma.** O kriteri isaretle, digerleriyle devam et.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!