analyst
Sorunları teşhis eder ve plan üretir; kodu hiçbir zaman değiştirmez. UI'ın ekran görüntüsünü alabilir ve gerçekten bakabilir.
Loop Harness · Kullanım Rehberi
Her projenin kendi dizini, git deposu, container'ı, portu ve web UI'ı var. Projelerin içinde üç rol çalışır: analyst, build ve verifier.
Temel kavram
Harness, her biri tamamen izole bir çalışma ortamı olan proje sandbox'larından oluşan bir altyapıdır. Her projenin kendi dizini, git deposu, container'ı, portu ve web UI'ı bulunur. Bir projedeki iş hiçbir zaman başka bir projeye sızmaz.
Her projenin iki genel adresi vardır: yayın adresi
(<proje>.loopsmith.pro, dist/ içeriğini sunar) ve
dev sunucu adresi (<proje>.dev.loopsmith.pro, dev sunucusu
çalışırken erişilebilir). opencode yönetim arayüzü ise yalnızca WireGuard
üzerinden http://10.0.0.1:<PORT> adresinde sunulur.
Üç rol
Sandbox'ların içinde opencode ajanları çalışır. Her rolün net bir görevi vardır:
Sorunları teşhis eder ve plan üretir; kodu hiçbir zaman değiştirmez. UI'ın ekran görüntüsünü alabilir ve gerçekten bakabilir.
Kodu yazar ve uygular. Net ve kapsamı dar bir istek geldiğinde doğrudan devreye girer.
Bitmiş işi bağımsız olarak kontrol eder; kodu değiştirmez. Önemli işlerden sonra ayrı bir geçiş olarak çalıştırılır.
Neler yapabilirsin
Nasıl çalışır
Özel bir komut diline gerek yok. Doğal dille isteğini yaz, ajan anlasın. Örnekler:
"Projeleri listele""Yeni proje oluştur""lab projesine şu görevi ver""lab'da nerede kalmıştık?"Yönlendirme kuralı: net ve dar bir istek doğrudan build'e gider; belirsiz bir belirti önce analyst'e; önemli tamamlanmış işler verifier geçişinden geçer.
Referans
Sık kullanılan ve ileri düzey istekler aşağıda tablo halinde özetlenmiştir. Tüm istekler doğal dille yazılır; tablolardaki örnekler yalnızca başlangıç noktasıdır.
| İstek | Açıklama | Örnek kullanım |
|---|---|---|
| Projeleri listele | Tüm projeleri durumları ve portlarıyla gösterir. | "Projeleri listele" |
| Yeni proje oluştur | İsim kuralına uygun yeni bir sandbox başlatır. | "Yeni proje oluştur — adı lab" |
| Görev ver (build) | Net ve dar işlerde kodu yazıp uygulayan ajana görev iletir. | "lab'a build ver: login ekranını yap" |
| Önce analiz al (analyst) | Belirsiz belirti veya büyük işlerde önce teşhis ve plan ürettirir. | "lab'a analyst ver: CLI mimarisini çıkar" |
| Doğrulama iste (verifier) | Bitmiş önemli işi bağımsız bir geçişle kontrol ettirir. | "lab'daki işi verifier ile doğrula" |
| Kaldığın yerden devam | Son oturumun durumunu ve kaldığı noktayı gösterir. | "lab'da nerede kalmıştık?" |
| Kullanımı kontrol et | Token ve bütçe istatistiklerini özetler. | "Bu ayki kullanım ne kadar?" |
| Dosya / fotoğraf bırak | Gönderdiğin dosyayı veya fotoğrafı projeye yerleştirir. | "lab'a şu fotoğrafı koy: …" |
| Dosya çek | Projeden bir dosyayı (ekran görüntüsü, rapor) çekip gösterir. | "lab'dan son raporu çek" |
| Dosyaları doğrudan oku | Projenin dosyalarını anında gösterir — ajan çalıştırmaz. | "lab'ın dosyalarını göster" |
| İstek | Açıklama | Örnek kullanım |
|---|---|---|
| Yayın adresi | Projenin yayın adresi; dist/ içeriğini sunar. |
"lab'ın adresi ne?" → lab.loopsmith.pro |
| Dev sunucu adresi | Dev sunucusu çalışırken erişilebilen adres; talep üzerine başlatılır/durdurulur. | "lab'ın dev sunucusunu başlat" → lab.dev.loopsmith.pro |
| Admin UI adresi | opencode yönetim arayüzü; yalnızca WireGuard üzerinden erişilir. | "lab hangi portta?" → http://10.0.0.1:<PORT> |
| Zamanlanmış görev tanımla | Periyodik veya tek seferlik işleri cron ile planlar (proje sandbox'larından ayrı). | "her gün 09:00'da lab'ın durumunu raporla" |
| Sorun bildir | Beklenmedik davranışı tarif ederek düzeltilmesini ister. | "lab şu hatayı veriyor: …" |
Adresler
Her projenin iki genel adresi vardır; opencode yönetim arayüzü ise yalnızca WireGuard üzerinden sunulur.
<proje>.loopsmith.pro
dist/ klasöründeki güncel siteyi sunar; her zaman açıktır.
<proje>.dev.loopsmith.pro
Yalnızca dev sunucusu çalışırken erişilebilir; talep üzerine başlatılıp durdurulur.
http://10.0.0.1:<PORT>
Yalnızca WireGuard üzerinden erişilir. PORT, projeye atanan porttur ve
"Projeleri listele" komutuyla öğrenilir.
Bütçe
Tüm projeler ortak bir bütçeyi paylaşır (OpenCode Go planı):
Zamanlanmış görevler (cron) proje sandbox'larından ayrı tanımlanır ve yine bu ortak bütçeden beslenir.
Adım adım
Mevcut projeleri ve hangi portta çalıştıklarını gör.
Sen"Projeleri listele"
Harness"lab (port 8080), docs (port 8081) — 2 proje var."
İsim kuralına dikkat: küçük harf / rakam / tire, harfle başlar.
Sen"Yeni proje oluştur — adı lab olsun"
Harness"lab oluşturuldu. Container, git deposu ve port hazır."
Net ve dar istekler doğrudan build'e gider; belirsiz işlerde önce analyst'e danış.
Sen"lab'a analyst ver: CLI aracının mimarisini çıkar"
Harness"Plan hazır. Onaylarsan build ile uygulatabilirim."
Sen"Onayladım, build ile uygula"
Harness"Build tamamladı. İstersen verifier ile doğrulatayım."
Oturum geçmişini incele, işi bıraktığın yerden sürdür.
Sen"lab'da nerede kalmıştık?"
Harness"Son oturum CLI mimarisini onayladı; build kısmı bekliyor."
Bir tasarım fotoğrafı bırak, sonra da çıkan raporu geri çek.
Sen"lab'a şu arayüz fotoğrafını koy"
Harness"Fotoğraf lab'a eklendi."
Sen"lab'dan son ekran görüntüsünü çek"
Harness"Son ekran görüntüsü hazır, aşağıda."
Ara sıra kullanım istatistiklerine göz at.
Sen"Bu ayki kullanım ne kadar?"
Harness"Aylık $60 bütçesinden $14 harcandı."
Sıkça sorulanlar
En çok merak edilenler, kısa ve net cevaplarla.
Hayır. Harness her projeyi hazır bir sandbox içinde başlatır: dizin, git deposu, container ve portlar sizin için oluşturulur. Tek yapmanız gereken projeye doğal dille komut vermek.
Gerekmez. Doğal dille isteğini yazarsın; ajan hedefi ve beklenen
sonucu anlayarak çalışır. Örnek: "Projeleri listele".
analyst sorunları teşhis eder ve plan üretir, kod değiştirmez. build kodu yazar ve uygular. verifier bitmiş önemli işi bağımsız olarak kontrol eder, kod değiştirmez. Net ve dar istekler doğrudan build'e gider; belirsiz belirtiler önce analyst'e; tamamlanan önemli işler verifier geçişinden geçer.
Her projenin iki genel adresi vardır: yayın adresi
<proje>.loopsmith.pro (sürekli açıktır, dist/
içeriğini sunar) ve dev sunucu adresi
<proje>.dev.loopsmith.pro (yalnızca dev sunucusu
çalışırken erişilebilir; talep üzerine başlatılıp durdurulur).
Yalnızca WireGuard üzerinden http://10.0.0.1:<PORT>
adresinden ulaşırsın. PORT, projeye atanan porttur ve
"Projeleri listele" komutuyla öğrenilir.
Evet. Gönderdiğin bir dosyayı ya da fotoğrafı doğrudan projeye
bırakabilirsin; örneğin "lab'a şu tasarımı koy: …".
Ters yönde de projeden bir dosyayı (ekran görüntüsü, rapor) çekip
görüntüleyebilirsin.
Evet. Projenin dosyalarını doğrudan, anında okuyabilirsin — bu işlem ajan çalıştırmaz, yani beklemek gerekmez.
Periyodik veya tek seferlik işler cron görevleridir ve proje
sandbox'larından ayrı çalışır. Örneğin
"her gün 09:00'da lab'ın durumunu raporla" gibi doğal
dille tanımlayabilirsin.
Tüm projeler ortak bir bütçeyi paylaşır: $12 (5 saat), $30 (haftalık) ve $60 (aylık). Kullanım istatistiklerini izleyerek limite yaklaşmadan önlem alabilirsin.
Evet. Her projenin kendi dizini, git deposu, container'ı, portu ve web UI'ı vardır. Bir projedeki iş hiçbir zaman başka bir projeye sızmaz.
Oturum geçmişi her proje için saklanır. "lab'da nerede kalmıştık?"
gibi bir soru, son oturumun durumunu ve kaldığın noktayı gösterir.
Sorunu açıkça tarif et, örneğin "lab şu hatayı veriyor: …".
Gerekirse önce analyst'ten teşhis ve plan iste, ardından build ile
uygulat ve önemli işlerde verifier ile doğrulat.