oh-my-agent — Üretim kullanımı için çoklu yapay zeka IDE ajan harness'ı
(github.com/first-fluke)Ajanlara “TODO uygulaması yap” dediğinizde bir şeyler yapıyorlar. Sorun şu ki sık sık alakasız bir şey yapıyor, kapsamın dışına çıkıyor ve aynı hataları tekrar ediyorlar.
Bu sorunları çözmek için başlangıçta AGENTS.md, daha yakın zamanda ise Skills gibi yapısal yaklaşımlar yaygınlaştı. Ancak gerçekte paylaşılan skill'lere bakınca birkaç ortak sorun görülüyor.
- En önemli kütüphane sürüm bilgileri eksik
- Rol açıklaması
"You are a Senior engineer"gibi bir beyanla bitiyor - Birkaç anahtar kelimenin yeterli olduğu içerik gereksiz yere uzatılarak token israfına yol açıyor
Sonuç olarak bu tür skill'ler model tarafından iyi takip edilemiyor, yalnızca context harcayıp uzun vadede kimsenin açıp bakmak istemeyeceği dead code'a dönüşmeye yatkın oluyor.
[Yaklaşım]
oh-my-agent ile bu sorunu prompt'la değil süreçle çözmek istedim. Ajan işi yanlış yaptığında sadece “tekrar yap” demek yerine, neden yanlış yaptığını kaydedip bir sonraki çalıştırmada bunu yansıtan bir yapı kuruyoruz.
Bunun başlıca mekanizmalarından biri Clarification Debt(CD) puanlamasıdır. Ajan gereksinimleri yanlış anlarsa ya da kapsam dışına çıkarsa puan birikir.
- clarify: +10 — basit doğrulama sorusu
- correct: +25 — niyetin yanlış anlaşılması nedeniyle yön düzeltme
- redo: +40 — kapsam dışına çıkma nedeniyle rollback sonrası yeniden başlatma
- Charter'ı kontrol etmeden işe başlama: +15
- izin verilen kapsam dışındaki dosyaları değiştirme: +20
- aynı hatayı tekrar etme: x1.5 multiplier
50 puanı aşınca Root Cause Analysis(RCA) yazmak zorunlu oluyor, 80 puanı aşınca oturum sonlandırılıyor. Buradan çıkan dersler lessons-learned.md içinde birikiyor ve sonraki oturumlardan itibaren doğrudan uygulanıyor. Prompt'lar basit yazılsa da sürecin bunu telafi ettiği bir yapı söz konusu.
Buna ek olarak, ajanın kafasına göre hareket etmemesi için birkaç ortak protokol tanımlanıyor.
- Clarification Protocol
Gereksinim belirsizliği LOW / MEDIUM / HIGH olarak ayrılıyor. LOW ise devam edilir, MEDIUM ise seçenekler sunulur, HIGH ise iş durdurulup netleştirme yapılır. - Difficulty Guide
Task'ler Simple / Medium / Complex olarak ayrılır ve gerekli protokol derinliği buna göre ayarlanır. - Context Budget
Model bazında token bütçesi belirlenerek gereksiz context israfı azaltılır.
Bu yaklaşım, OpenAI'ın sözünü ettiği Harness Engineering anlayışıyla da örtüşüyor. Ajanları iyi kullanma meselesi tek satırlık bir prompt meselesi değil, ajanı hangi yapıyla kontrol ettiğinizin meselesi diye düşünüyorum.
[Proje yapısı]
oh-my-agent bunu proje yapısının içinde yönetiyor.
.agents/= SSOT
Skill'ler, workflow'lar ve ayarlar.agents/altında toplanarak tek gerçek kaynak olarak kullanılıyor. Belirli bir IDE'ye bağımlı değil.- Rol tabanlı ajan ekibi
PM, QA, Frontend, Backend, Mobile, Debug gibi temel rollere ek olarak bu kez DB Agent ve TF Infra Agent eklendi.- DB Agent: SQL / NoSQL / Vector DB modelleme, ISO 27001 güvenlik önerileri dahil
- TF Infra Agent: Multi-cloud Terraform, OPA / Sentinel politikaları, ISO 42000 serisi kontrol rehberi dahil
- Workflow merkezli orkestrasyon
Planlama, inceleme, debug ve paralel çalıştırma temel akış olarak yer alıyor. Yeni eklenen/brainstormworkflow'u kod yazmadan önce tasarımı keşfediyor.
Kod tabanı analizi → netleştirme soruları → yaklaşım önerisi → kullanıcı onayı → tasarım belgesini kaydetme sırasıyla ilerliyor, ardından/plan → uygulamaakışına geçiliyor.
[İki orkestrasyon modu]
/coordinate, hızlı çalıştırıp sorun çıkarsa düzeltme yaklaşımını izler. PM task'i parçalara ayırır, ajanları çalıştırır ve ardından QA bir kez gözden geçirir. CRITICAL/HIGH sorun çıkarsa ilgili iş yeniden çalıştırılır; genel olarak hafif ve hızlı bir 7 adımlı döngüdür.
Buna karşılık /ultrawork, kalite doğrulamasını çok daha sıkı tutar. PLAN → IMPL → VERIFY → REFINE → SHIP olmak üzere beş aşamaya ayrılır ve her aşamada bir geçit bulunur; geçilemezse sonraki aşamaya ilerlenemez. 17 adımın 11'i review aşamasıdır ve REFINE aşamasında dosya bölme, tekrarları kaldırma, yan etki analizi ve dead code temizliği de yapılır.
Biraz fazla görünebilir ama makine dilinden programlama dillerine, oradan doğal dile doğru programlamanın soyutlama seviyesi yükseldikçe sonunda en önemli şeyin doğrulama olduğu fikrine katılacağınızı düşünüyorum.
[Projenin genişleme arka planı]
Bir ay önce bunu oh-my-ag adlı, yalnızca Antigravity için bir orkestratör olarak tanıtmıştım. Ancak bu arada birçok AI IDE .agents/skills/ yolunu proje skill dizini olarak kullanmaya başladı ve bunu belirli bir IDE'ye özel tutmak için bir neden kalmadı. Bu yüzden genel amaçlı bir harness biçimine genişletilerek oh-my-agent oldu.
[Başlarken]
curl -fsSL https://raw.githubusercontent.com/first-fluke/oh-my-agent/… | bash
Antigravity, Claude Code, Codex CLI, Cursor gibi başlıca AI IDE'lerin tamamını destekliyor.
Zaten bir AI IDE kullanıyorsanız bir kez denemeye değer olabilir. Sonuçta geliştiricinin hedefi QCD (Quality, Cost, Delivery) dengesini aynı anda yakalamaktır. Bunu, ajan geliştirme için de istisna görmeyen bir anlayışla yaptım.
🔗 GitHub: first-fluke/oh-my-agent
4 yorum
Ben zaten uzun süredir kullanan bir kullanıcıyım; sevindirici bir haber olmuş.
coordinate'i memnuniyetle kullandım.Zaten daha fazla doğrulama yapabilsek iyi olur diye düşünüyordum; ultra modun daha titiz olduğunu duyunca yarın hemen denemeliyim diye düşünüyorum.
Teşekkürler! Bu arada, sözümü pek dinlemezse lütfen bana haber verin.
package.jsoniçinde script eklerken çalışma alanı klasörünü bırakıp diğer tüm dosyaları silmiş. Şu anda geri yüklemeye çalışıyorum ama gerçekten saçma bir durum.Claude içinde ya da ajan içinde mi çalıştırdınız?
package.jsonveya tüm dosyaları silen bir kod yok. Tüm akışı paylaşırsanız sevinirim!tarball.ts:33,35,43— yalnızca/tmp/oh-my-agent-*geçici dizinlerini silercleanup.ts:108,231— PID dosyası, yalnızca açıkça verilenoma cleanupkomutunda çalışıragent.ts:665,1027— PID/log dosyaları (süreç sonlandığında)skills.ts:234—.cursor/skillsiçinde 1 sembolik bağlantımigrate.ts:45-80— eski.cursor/skillssembolik bağlantı dizini