@mmerterden/multi-agent-pipeline
v19.0.0
Published
6-phase AI development pipeline with full orchestration on Claude Code, Copilot CLI and Codex CLI. Analysis, planning, TDD, CLI-aware parallel review with consensus surfacing + Fable triage, default-FAIL evidence gates, secret + intent guards, per-phase c
Maintainers
Readme
@mmerterden/multi-agent-pipeline
🇬🇧 English: README.md
Claude Code, Copilot CLI ve Codex CLI için 6 fazlı bir AI geliştirme pipeline'ı. Bir Jira issue'sunu veya GitHub URL'sini tek komutla merge edilmiş bir PR'a dönüştürür - analiz → plan → TDD → review → test → commit → PR - çoklu-repo orkestrasyonu, bir plan-onay kapısı, CLI-farkında paralel review ve store-uyumluluk kontrolleriyle birlikte. Component ve Figma-to-code işleri paket içine gömülmek yerine stack başına marketplace plugin'lerine (iOS/SwiftUI, Android/Compose) devredilir, böylece component skill'leri tek bir yerde yaşar.
Claude Code, Copilot CLI ve Codex CLI üzerinde native çalışır. Yalnızca macOS. Sıfır runtime dependency.
📐 Mimari diyagramları - 6 faz akışı, çalışma modları, review/triage, Figma subphase'leri, component yapısı. Ekosistem diyagramı - bu repo, multi-agent-plugins marketplace'i ve multi-agent-toolkit-mcp'nin nasıl bir araya geldiği.
Önkoşullar
- Node.js >= 20.11 - zorunlu; pipeline'ın kendi araçları bunun üzerinde koşuyor.
jq- opsiyonel ama önerilir. On üç kabuk yardımcısı ona başvuruyor ve yokken sessizce atlıyor: maliyet özetleri, faz izleyicisinin JSON okumaları, konvansiyon çıkarımı, skill imzalama. Kurulum, eksikse bir not basıyor.gh- GitHub issue ve PR işleri için. Kendi dahili--jq'su,jqikilisinden bağımsız.
Hızlı Başlangıç
# public registry'den (auth gerekmez) - sadece kullandığın CLI'ları seç
npx @mmerterden/multi-agent-pipeline install --claude # sadece Claude Code (varsayılan)
npx @mmerterden/multi-agent-pipeline install --copilot # sadece Copilot CLI
npx @mmerterden/multi-agent-pipeline install --codex # sadece Codex CLI
npx @mmerterden/multi-agent-pipeline install --all # üçü birden
# sonra, bir kere:
/multi-agent:setup # keychain token taraması + git kimliği + varsayılan stackO makinede npx yoksa
npx npm ile, npm de Node ile gelir - yani "npx: command not found" neredeyse her
zaman o kabukta Node olmadığı anlamına gelir, pakette bir sorun olduğu değil. Önce
bak, sonra sana uyan satırı uygula:
node -v; npm -v; command -v node npm npx| Gördüğün | Yapılacak |
|---|---|
| hiçbiri yok | Node >= 20.11 kur: brew install node ya da nodejs.org'dan LTS installer |
| node çalışıyor, npx çalışmıyor | npm i -g @mmerterden/multi-agent-pipeline sonra multi-agent-pipeline install --claude |
| nvm kurulu ama kabuk görmüyor | source ~/.nvm/nvm.sh && nvm use --lts, ya da yeni bir terminal aç |
| npm çok eski (< 5.2, npx'ten önceki sürümler) | npm i -g npm@latest, ya da üstteki global kurulum satırı |
Ne npx ne de global kurulum isteyen yol - klonla ve installer'ı doğrudan çalıştır:
git clone https://github.com/mmerterden/multi-agent-pipeline.git
cd multi-agent-pipeline
node index.js install --claude # önce --dry-run ile ne yazacağını görebilirsinnpm exec @mmerterden/multi-agent-pipeline install --claude de, PATH'te npx
olmayan her npm 7+ üzerinde çalışır.
npx sorunu olmayan bir hata. Bu paket os: ["darwin"] beyan eder; npm başka
hiçbir yerde kurmaz ve npm ERR! notsup Unsupported platform der. Bu kasıtlıdır
(ADR-0012), eksik bir araç değil: her credential
okuması security, her iOS build'i xcodebuild, her görsel kanıt simctl
çağırıyor.
Tool flag'leri birleştirilebilir (--claude --codex). Hiç tool flag'i verilmezse installer sadece Claude Code'u hedefler. Diğer flag'ler: --dry-run (ne yazılacağını gösterir, hiçbir şey yazmaz), --platform=ios|android|all (ihtiyacın olmayan stack skill'lerini atlar), --link (kopyalamak yerine symlink, lokal geliştirme için).
Bir görev çalıştır - girdi tipi otomatik algılanır:
/multi-agent "PROJ-1234" # Jira id → çek, planla, geliştir
/multi-agent "https://github.com/org/repo/issues/42" # GitHub issue URL'i
/multi-agent "my-app#42" # repo + issue numarası
/multi-agent "fix dark-mode contrast on LoginView" # serbest-metin bug/özellik
/multi-agent:jira # açık Jira issue'larını gez → seç
/multi-agent:issue # atanmamış GitHub issue'larını gez → seçHer girdi aynı kısa intake'ten geçer - hesap → (repo) → maturity kontrolü → dev-context - sonra Phase 0'a girer. Bir Jira id'si veya GitHub URL'i hiçbir kod yazılmadan önce çekilir ve maturity-kontrol edilir; serbest-metin bu çekimi atlayıp doğrudan planlamaya geçer. Çoklu-repo görevleri dev-context adımında ekstra repo ekler.
Onayları atlamak için autopilot ekle (örn. /multi-agent:autopilot "PROJ-1234"). Derinlik de çalışma alanı da artık bayrak değil, koşunun sorduğu iki soru: /multi-agent Faz 0'da önce nerede koşacağını (worktree/lokal), sonra ne kadar derin koşacağını (Tam/Kısa) sorar. --local ve :local ilkini baştan cevaplar.
Sonra /multi-agent:update ile güncelle. Kaldırmak için (tokenlar korunur) npx @mmerterden/multi-agent-pipeline uninstall.
Stack skill'leri marketplace plugin'leridir. Claude Code'da ai-<stack>-toolkit plugin'leri (multi-agent-plugins marketplace) tek stack-skill kaynağıdır - ~/.claude/skills altına kopya konmaz. Repo başına aktif stack'leri /multi-agent:stack ile seç (çoklu seçim: ios backend, ya da argümansız native picker); her plugin ai-<stack>-toolkit:help ile dilinde katalog sunar. Copilot CLI ve Codex CLI'da plugin loader olmadığından onlara aynı enabled stack'lere filtreli lokal kopya iner.
Nasıl çalışır
Tek komut en fazla 6 fazı çalıştırır, riskli olanlar arasında bir kapı ile. Faz 0 geri kalanın şeklini belirleyen iki soru sorar: koşu ne kadar derin olacak (Tam mı Kısa mı) ve branch nerede yaşayacak (worktree mi, mevcut checkout'un mu):
- 0 · Init - girdiyi ayrıştır (Jira id / GitHub URL / serbest metin), hesap + repo(lar) seç, issue'yu çek, maturity kontrolü yap.
- 1 · Plan - stack'i tespit et, codebase'i tara ve analiz dokümanını yaz; sonra onu dosya seviyesinde hedefleri olan görevlere böl ve koda dokunmadan önce onayın için dur. Analiz ve planlama 19.0.0'a kadar iki ayrı fazdı; derinlik seçici ikisini hep birlikte atlıyordu, çünkü tek bir karar. Codebase taraması explorer persona'sı üzerinde koşar (Sonnet).
- 2 · Dev - TDD: başarısız test → kod → yeşil, repo'nun stiline + aktif stack skill'lerine uyarak. Faz kendi kapısında biter: build, lint, test ve sır taraması, bir kez koşar. Review eskiden ikinci kez build ediyordu ve aradaki farkı kimse okumuyordu.
- 3 · Review - Dev'in ürettiği log'lara karşı CLI-farkında paralel review - Claude Code 3 model çalıştırır (Fable + Opus + Sonnet), Copilot CLI 3 (GPT-5.4 + Opus + Sonnet) - ve bir Fable triage sadece aksiyon alınabilir bulguları tutar; blocker'lar Phase 2'ye geri döner. Opsiyonel kullanıcı testi burada, bekleme durumunu koruyarak.
- 4 · Commit/PR - conventional commit, push (başarılı olmalı), bir PR aç (
Ref: #N, asla otomatik kapatma). - 5 · Report - teknik özet + test senaryolarıyla bir Jira yorumu, channels katmanından gönderilir. Autopilot'un her modda hâlâ durduğu tek adım bu.
/multi-agent:analysis kendi kısa zincirini koşar ve v16.12.0'dan beri yazdığını yayınlamadan önce review ediyor: taslak, bir kod diff'iyle aynı üç-reviewer setinden ve triyajdan geçiyor, bloklayıcı bulgu dokümanı sentez fazına geri gönderip dispatch'i kapatıyor, hayatta kalan boşluklar ya aranıyor ya sana soruluyor ya da sahibiyle birlikte kayda giriyor. Önceden yalnızca yapısal bir validator'ın arkasından yayınlıyordu.
18.0.0: tek bir durum dizini, ve kurulumun gerçekten o kurulum olup olmadığını sorma yolu
multi-agent-pipeline verify. Kurulum bir kopyadır ve yazıldığı andan itibaren iki taraf birbirinden bağımsız kayar: kurulu ağaçtaki bir düzenleme kaynağı olmayan bir davranıştır, kurulumun atladığı dosya ise dokümanın anlattığı ama kimsede olmayan bir script.verifyikisini de paketleme anında üretilen bir manifest'e karşı karşılaştırır. Yeşil sonucun ne kanıtladığı açıkça yazılıdır: baytlar yayıncının kaydettiğiyle aynıdır, kimin yayınladığı değil.- Maliyet, tek koşunun ötesinde. Görev başına tavan, bütçeyi gerçekten bitiren iki şeyi göremez: hiçbir koşuyu aşmayan kayma, ve her koşu tavanın altında kalırken bir saatte bir haftayı yakan tek oturum.
cost-analyzeprojeksiyon yapar, medyan mutlak sapmayla aileden ayrılan günü bulur ve ivmeyi raporlar - liste fiyatından tahmin olarak, ve bunu dipnotta değil her koşuda söyler. - Bir koşunun durumu tek yerde.
{project}/{taskId}/kanonik, düz yerleşim hâlâ okunuyor, ve iki yerde birden duran koşu bir kez sayılıyor. - Sunucu hazırlığı, tamamen opt-in.
doctor --profile=serveryalnızca klavyede kimse yokken anlamı olan dört kontrol ekler,install --unattendedizin profilini yazmadan önce gösterir, autopilot runner artık bir ay gözetimsiz ayakta kalır. Varsayılan kurulum hiçbir izin yazmaz ve varsayılan doctor koşusu değişmez: sunucu kontrolünden kaldığı söylenen bir dizüstü, doctor'ı görmezden gelmeyi öğrenir.
Paket yöneticisi, hook'lar ve MCP yüzeyi
17.6.0'da üç küçük iş; üçü de pipeline'ın bakmak yerine varsaydığı bir yeri kapatıyor:
- Faz 3 artık
npmyazmıyor. pnpm, yarn ya da bun kullanan bir repo geliştirme fazında, worktree ve branch zaten açılmışken patlıyordu. Yönetici artık reponun kendisinden çözülüyor: önce ortam değişkeni, sonrapackage.json#packageManager, sonra lock dosyası, sonra kanıt değil varsayılan olarak bildirilen npm. iOS ve Android'e dokunulmadı. - Compaction bir fazın öğrendiğini artık yemiyor. Yakalama hook'u oturum sonunda koşuyordu; otomatik compaction ise uzun bir review ya da geliştirme fazını tam koşarken özetliyor ve henüz yazılmamış olan her şey oturum sonu hiç gelmeden kayboluyordu. Hook şablonu artık
PreCompact'te de yazıyor. doctorMCP sunucularını sayıyor. Kayıtlı her sunucu her turda araç listesini gönderiyor ve sunucular teker teker ekleniyor, yani toplamı kimse görmüyor. Sadece sayıyı bildiriyor: uyarı yok, engelleme yok, kapatma yok.
Olgunluk: kontrolün artık bir sonucu var
Faz 0 hiçbir şey inşa edilmeden önce maddenin ne kadar hazır olduğunu puanlıyor, ve 17.6.0'a kadar puanlayıp duruyordu: bir blocker koşuyu durduruyor, autopilot sırası bir sonraki maddeye geçiyor, madde bulunduğu kadar olgunlaşmamış kalıyordu. Kimseye söylenmediği için hiçbir şey değişmiyor, bir sonraki tarama aynı maddede aynı sebeple duruyordu.
İnteraktif koşu artık o adımda soruyor - maddeyi açıp düzelt, onsuz devam et, ya da iptal - ve yalnızca devam ettiğini değil, hangi eksiği görmezden geldiğini kaydediyor. Autopilot koşusuna ise maddenin kendisine sorması söylenebiliyor (prefs.global.maturityFollowup.autopilotCommentsOnIssue, varsayılan kapalı): eksiği adıyla söyleyen tek bir yorum, sonra durup bekliyor. Durum değişmiyor, atanan kişi değişmiyor, kapatma yok; Ref: var, Closes: yok.
Maddeyi düzenlediğinde bir sonraki tarama yeniden kontrol ediyor; eksik kapandıysa geliştirme kendiliğinden başlıyor. Düzenleme yalnızca yeniden bakma sebebi - "sonra yaparım" diyen bir yorum da damgayı ilerletir ve hiçbir şeyi düzeltmez, o yüzden kontrol yeni içerik üzerinde yeniden koşup karar veriyor. Aynı soru iki kez sorulmuyor.
Temel branch: önce kanıt, sonra soru
Faz 0 Adım 3 sormadan önce adayları her birinin arkasındaki kanıtla topluyor. Hedef sürüm alanı taşıyan ya da release'i temsil eden ayrı bir maddeye bağlı bir issue, release dallarını sürümle adlandıran bir repoda branch'i zaten söylüyor - bu, nedenini açıklayan sıralı bir satır oluyor; yanında "reponun varsayılan dalı" ya da "geçen sefer bunu kullandın" diyen satırlar duruyor. Seçim yine senin; kanıt yalnızca sıralamayı değiştiriyor.
Hiçbir şey gömülü değil: şeması version'a çözülen her Jira alanı, board ona ne ad verirse versin okunuyor; release dalı konvansiyonu da tablodan değil, var olan ref'lerden çıkarılıyor - aynı koddan bir repoda <prefix>/develop_<version>, başkasında release-<version> çıkıyor. Dalı henüz açılmamış bir sürüm not olarak bildiriliyor, checkout edemeyeceğin bir seçenek olarak sunulmuyor.
Başarısız bir git fetch sessizce değil, yüksek sesle bozuluyor: liste lokal ref'lere düşüyor, soru bunu söylüyor, bir yeniden dene satırı kazanıyor, ve bozuk bir koşu listesini uzaktakinin cevabı diye kaydederse exit gate Faz 0'ı kapatmıyor. Tamamını kapatmak için prefs.global.baseBranchEvidence.enabled: false - Adım 3 eskisi gibi soruyor.
Çalışma alanı: worktree mi lokal mi
Faz 0 Adım 5b branch'in nerede yaşayacağını sorar. Worktree (.worktrees/{id}/) mevcut checkout'una dokunmaz; Lokal proje kökünde yeni bir branch'te çalışır, bu da Faz 5'i düşürür - kullanıcı-test kapısı değişikliği bir worktree'den checkout eder, ortada worktree yoktur - ve proje kökünün temiz olmasını ister. /multi-agent:local ve --local bu soruyu baştan cevaplar. Her autopilot girişi sormadan worktree'ye karar verir: gözetimsiz bir koşu nerede duruyorsa oradan commit'leyip push eder, ve bunu senin kendi checkout'unda yapmak tam olarak worktree'nin engellemek için var olduğu şeydir. :local-autopilot bunun açık opt-out'u.
Perde arkasında: her görev kendi git worktree'sinde çalışır (ya da lokal seçtiğinde mevcut branch'te), commit'ler repo'nun origin URL'inden yönlendirilen git kimliğini kullanır, ve çoklu-repo görevleri repo başına worktree artı bir integration build alır. Tokenlar OS keychain'de kalır; hiçbir şey commit edilmez ya da loglanmaz. /multi-agent:review mevcut bir GitHub/Bitbucket PR'ını da review edebilir - file:line'a bağlı bulgu-başına inline yorumlar + açık bir Approve / Needs-Work durumu.
Bunun arkasındaki disiplin - sınırlı loop'lar, kanıt kapıları, token-bütçeli faz dokümanları, değişmez testler, taze-context handoff'lar - docs/engineering.md'de kataloglanmıştır. Tam özellik listesi docs/features.md'te. Bu repo, multi-agent-plugins marketplace'i ve multi-agent-toolkit-mcp sunucusunun install zamanında ve run zamanında nasıl bir araya geldiği docs/ecosystem.md'de diyagramlanmıştır.
Modlar
| Mod | Komut | Akış |
| --------- | ------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Full | /multi-agent "task" | Tüm 6 faz, interaktif |
| Autopilot | /multi-agent:autopilot "task" | 6 faz (interaktif Test kapısı atlanır), onaysız |
| Local | /multi-agent:local "task" | İnteraktif Test kapısı hariç tam pipeline, mevcut branch (worktree yok) |
| Derinlik | Faz 0 Adım 7.5'te sorulur | Full (tüm fazlar) veya Short (Dev → Review → Test → Commit → Report). Komut adı değil - /multi-agent ve :local sorar, iki autopilot girişi de her zaman Full koşar |
| Ship | /multi-agent:resume-local | Lokal iş üzerinde review→test→commit→report kuyruğunu çalıştır |
| Audit | /multi-agent:design-check | Mock-mode vs Figma uygunluğu, yalnızca lokal |
| Audit | /multi-agent:testflight-validation | TestFlight build için pre-submission kapıları: statik archive denetimi → Apple'ın altool --validate-app'i → Review-Guidelines kontrolü. Yalnızca doğrular, asla yüklemez |
Koşunun kendisinde ayarlanabilen tek şey derinlik, autopilot ve --local; geri kalan her şey kendi komutu. Tam katalog aşağıda.
Pipeline derinliği: Tam mı Kısa mı
Derinlik, koşunun kendi şekli hakkında sorduğu tek soru. /multi-agent ve /multi-agent:local bunu Faz 0 Adım 7.5'te sorar - issue çekildikten ve görev tipi belirlendikten sonra, çünkü öneri onlardan çıkıyor.
- Tam hepsini koşar: Analiz kod tabanını okuyup etki alanını çıkarır, Planlama görev kırılımını yazıp onayını bekler, Dev de o plandan çalışır.
- Kısa doğrudan Dev'den başlar: Init → Dev → Review → Test → Commit → Report. Analiz ve Planlama koşmaz; plan kapısı ve analiz dokümanı yoktur, görev listesini Dev issue'dan kendi çıkarır ve takip edecek bir planı olmadığı için Sonnet yerine Opus üzerinde koşar. Review, deterministik kapılar ve test paketi aynen kalır - Kısa düşünmeyi atlar, kanıtı değil.
Kısa'yı düzeltmeyi ve dosyayı zaten biliyorsan seç: tek satırlık bir guard, bir metin değişikliği, bir yeniden adlandırma, bir geri alma. Neden hâlâ bir hipotezse, görevde Figma referansı ya da analiz dokümanı varsa (bunları kırılıma çeviren şey Planlama'dır) ya da değişiklik birden fazla repoya yayılıyorsa yanlış seçim olur.
Widget cevabı tahmin etmek yerine takip eder: sen seçmeden önce yalnızca Faz 0 karosu çizilir, Kısa koşu Analiz karosunu hiç çizmez. İki autopilot girişi de bu soruyu sormaz, her zaman Tam koşar. Hangisinin koştuğunu agent-state.json onlyDevelop alanında tutar.
Komutlar
/multi-agent ve 56 alt komut. /multi-agent:help aynı katalogu terminalde, outputLanguage ayarına göre gösterir.
Pipeline girişleri
| Komut | Ne yapar |
| ------------------------------------- | ----------------------------------------------------------------------------------------------- |
| /multi-agent "task" | Worktree'de tam pipeline. Faz 0'da Full mu Short mu diye sorar |
| /multi-agent:local "task" | Aynı pipeline, mevcut branch üzerinde, worktree yok |
| /multi-agent:autopilot "task" | Worktree, onay yok, her zaman Full |
| /multi-agent:local-autopilot "task" | Mevcut branch, onay yok, her zaman Full |
| /multi-agent:resume-local | Lokalde bitmiş iş için pipeline kuyruğu: Review → Build+Test → Commit/PR → Report. Dev fazı yok |
Görev kontrolü
| Komut | Ne yapar |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| /multi-agent:status | Her görevin ID'si, fazı, branch'i ve durumu |
| /multi-agent:log [#N] | Görevin agent-log.md dosyası (varsayılan: en son görev) |
| /multi-agent:resume [#N] | Durmuş ya da hata almış görevi kaldığı fazdan sürdürür |
| /multi-agent:kill [#N] | Görevi durdurur, worktree'sini ve branch'ini siler |
| /multi-agent:steer #N "<talimat>" | Koşan bir görevi durdurmadan düzeltir; talimat bir sonraki faz sınırında uygulanır |
| /multi-agent:search | Tüm görev loglarında sıralamalı arama; --semantic triyaj corpus'unu sorgular |
| /multi-agent:garbage-collect | Artık scratch, sahipsiz worktree ve offload edilmiş payload'ları süpürür. --abandoned ile durup bir daha dönülmemiş koşuları da toplar. Önce dry-run |
| /multi-agent:prune-logs | Görev loglarını yaş / proje / görev filtresiyle siler. Denetim izi ve metrikler kalır |
| /multi-agent:purge | Tüm worktree, branch, log ve state dosyalarını siler. Çift onay |
Review
| Komut | Ne yapar |
| ---------------------------------- | ------------------------------------------------------------------------------------------------ |
| /multi-agent:review | Branch diff'i veya PR üzerinde paralel review; PR girdisinde inline yorum + approve/needs-work |
| /multi-agent:review-jira | Bir Jira issue'sunun geliştirmeye hazırlığını puanlar, eksikleri yorum olarak yazar |
| /multi-agent:review-issue | Aynı puanlama, GitHub issue'su için |
| /multi-agent:review-analysis | Yazılmış analiz dokümanını review eder; bulgular ihlal edilen Locked kuralını gösterir |
| /multi-agent:diff-explain | Faz 4 triyaj bulgusunu onu doğuran diff satırlarına eşler |
| /multi-agent:refactor | Best-practice çıkarımı + bug avı + türetilmiş skill drift'i + toolkit MCP araştırması → tek plan |
| /multi-agent:scan | Yerel skill dizinlerini kademeli desen kataloğuna göre güvenlik taraması |
| /multi-agent:prune-prompts | Sürekli yüklü talimat yükünün sıfır-tabanlı incelemesi; kural başına tut / dene / sil |
| /multi-agent:ios-coding-standard | Bir iOS modülünü 99 kurallık registry'ye göre denetler, düzeltme planı çıkarır |
Analiz
| Komut | Ne yapar |
| --------------------------------- | ---------------------------------------------------------------------------------------------- |
| /multi-agent:analysis | Bağımsız özellik spesifikasyonu: global (23 bölümlük doküman) veya kurumsal (IG/UC/FG) profili |
| /multi-agent:analysis-resolve | Analiz dokümanının Bölüm 20 açık sorularını satır satır cevaplar |
| /multi-agent:complaint-analysis | Graylog kanıtıyla şikayet triyajı: client / bff kök neden ya da core'a yönlendirme |
Cihaz üstü test
| Komut | Ne yapar |
| ------------------------------------- | ------------------------------------------------------------------------------- |
| /multi-agent:test | Açık simülatör veya emülatörde UI Bug Hunter: screenshot, tap, analiz |
| /multi-agent:test-dark-mode | Her ekranı önce light sonra dark gezer, kontrast ve renk hatalarını raporlar |
| /multi-agent:test-accessibility | VoiceOver etiketleri, 44pt altı dokunma alanları, kontrast, trait'ler |
| /multi-agent:test-dynamic-type | Her ekranı XL'den accessibility-XL'e kadar yeniden gezer, kırpılmaları raporlar |
| /multi-agent:test-screenshots [dil] | Bir dilde App Store screenshot seti (varsayılan tr) |
| /multi-agent:manual-test | Faz 5'in bağımsız hali: görev branch'ine geçer, Xcode için hazırlar |
Tasarım, build ve store
| Komut | Ne yapar |
| ------------------------------------ | ------------------------------------------------------------------------------------------------ |
| /multi-agent:design-check | Kapsam geçitli mock-mode vs Figma denetimi; annotasyonlu HTML + PDF rapor |
| /multi-agent:store-ready | iOS ve Android için yayın öncesi kapılar: paket denetimi, store doğrulaması, politika incelemesi |
| /multi-agent:testflight-validation | store-ready'nin iOS'a sabitlenmiş hali. Yalnızca doğrular, asla yüklemez |
| /multi-agent:build-optimize | Xcode build'ini ölçer, analizörleri koşar, önce-öneri yaklaşımlı plan üretir |
Ticket ve raporlama
| Komut | Ne yapar |
| -------------------------- | --------------------------------------------------------------------------------------------- |
| /multi-agent:jira | Açık Jira issue'larını gez → seç → branch → mod → başlat |
| /multi-agent:issue | Atanmamış GitHub issue'larını gez → seç → otomatik ata → başlat |
| /multi-agent:create-jira | Projenin kendi konvansiyonlarına uygun Task / Bug / Story taslağı, oluşturmadan önce önizleme |
| /multi-agent:channels | Çok kanallı raporu gönderir: Jira, Confluence, Wiki, PR açıklaması, board durumu |
| /multi-agent:feedback | Bakımcıya tek mesaj. Yalnızca yazdığın metin gider, log ve yol gitmez |
Kendi rutinlerin
| Komut | Ne yapar |
| -------------------------- | -------------------------------------------------------------------------------------- |
| /multi-agent:save [ad] | Tekrar eden bir işi /multi-agent:<ad> olarak kaydeder. Local-only, asla sync edilmez |
| /multi-agent:routines | Kaydettiğin rutinleri ve ne yaptıklarını listeler |
| /multi-agent:forget [ad] | Kayıtlı bir rutini ve registry kaydını siler |
Kurulum ve bakım
| Komut | Ne yapar |
| -------------------------------- | ---------------------------------------------------------------------------------- |
| /multi-agent:setup | İlk kurulum sihirbazı: keychain token keşfi, git identity, pipeline hazırlığı |
| /multi-agent:stack [id] | Bu repo için marketplace plugin'lerini etkinleştirir. Çoklu seçim |
| /multi-agent:language [en\|tr] | outputLanguage'i gösterir veya değiştirir; promptLanguage İngilizce kalır |
| /multi-agent:sync | Tek atımlık senkron: Claude Code, Copilot CLI, pipeline repo, website, toolkit MCP |
| /multi-agent:update | npm'deki son yayına günceller ve migration'ları koşar |
| /multi-agent:uninstall | Pipeline'ı her CLI'dan kaldırır. Keychain token'larına hiç dokunmaz |
| /multi-agent:help | Bu katalog, terminalde, outputLanguage'ine göre |
Alt agent'lar
Komutlarla birlikte sekiz agent kurulur ve fazlar bunları çağırır: explorer ve task-clarifier (Faz 0-1), ios-architect / android-architect / backend-architect (Faz 2), dev-critic (Faz 3), code-reviewer ve security-auditor (Faz 4).
Komut olmayan skill'ler
İki uyumluluk skill'i her host'a kurulur ve store kapılarını besler: apple-archive-compliance (ITMS kod eşlemeli 18 kurallı Apple review taraması) ve google-play-compliance (Console hata kodlu 21 kurallı Play politika kataloğu). Stack'e bağlı geri kalan her şey - SwiftUI, Compose, backend, frontend - aşağıda anlatılan marketplace plugin'lerinden gelir.
Sürekli mod
Yukarıdaki her şey sen başlattığında başlar. Sürekli mod, aynı pipeline'ın senin seçtiğin tek makinede, senin seçtiğin repolardan işi kendi başına alması.
| Komut | Ne yapar |
| --- | --- |
| /multi-agent:autopilot-on | Bu makinenin izleyeceği repoları seçersin. Etiketli GitHub issue'ları ve sana atanmış + etiketli Jira maddeleri worktree'de koşar, açık PR'da durur. Listeyi değiştirmek için tekrar çalıştır |
| /multi-agent:autopilot-status | Ne koşuyor hangi fazda, sırada ne var, ne cevap bekliyor, son bir günün PR'ları ve yuvarlanan harcama |
| /multi-agent:autopilot-off | Zamanlamayı kaldırır. Koşan iş biter; repo seçimi saklanır |
Varsayılan olarak hiçbir şey açık değil ve hiçbir repo kendiliğinden eklenmez.
Paketi kurmak ne durum yazar ne zamanlama kurar; bu bir gün değişirse
smoke-autopilot-default-off.sh derlemeyi düşürür. Etiket bir filtredir, kapı
değil - push yetkin olan bir repoda issue açabilen herkes etiket ekleyebilir -
o yüzden kapı picker'dır ve makine başınadır.
En büyük kazanç paralellik değil. Ölçüm: medyan koşu 44 dakika, ama 14:00'te biten bir madde sen masaya oturana kadar bekler; gece boyunca bu 40 dakikaya karşı 16 saat. Sürekli mod işi değil, beklemeyi kaldırıyor.
Yapmayacakları. Merge etmez - koşucu açık PR'da durur, karar sende kalır.
Senin elle koşturduğun bir işe dokunmaz: repo başına eşzamanlılık her zaman 1,
yani kuyruk senin çalıştığın repoyu .git/index.lock için yarışmak yerine atlar.
PR sayısına tavan yok; sınırlar 24 saatlik yuvarlanan costCeilingUsd ve
makinenin kapasitesi.
swiftc varsa menü çubuğu göstergesi aynı status.json'ı sağ üstte çizer ve
kendi kendine tazelenir: madde başına tek satır - id, Full ya da Short, kesir
olarak faz, geçen süre, stack. Madde biter bitmez satır kaybolur ve PR'ıyla
Raporlar altında görünür. Yalnızca çizer; bir koşuyu başlatamaz, durduramaz,
değiştiremez. ActivityKit macOS'ta yok, o yüzden bu bir NSStatusItem ve
imzalanması gerekecek bir ikili olarak değil, yerinde kaynaktan derleniyor.
Yeniden başlatmadan sonra çalıştırman gereken komut yok. launchd işi
girişte yükler, boot'ta değil - ve bu bir eksiklik değil doğrusu: token'ları
açan şey login keychain'in açılması, giriş öncesi ateşlenen bir tick zaten ne
Jira'ya ne GitHub'a bağlanabilirdi. autopilot-resume diye bir komut yok -
hatırlanması gereken komut, unutulduğunda sessizce duran kuyruk demektir.
Bunun yerine doctor gerçek arızayı söyler: kurulu, ama launchd'de iş yok.
Uyku yalnızca prizdeyken engellenir. Prizde olmayan bir laptop'u boşaltan kuyruk hatadır; bataryada assertion bırakılır ve prize takınca kaldığı yerden devam eder.
Üç komut da üç CLI'a birden kurulur ve hepsinde aynı şekilde çalışır, çünkü
kontrol ettikleri şey bir CLI özelliği değil: tick'i claude --bg çocuğu doğuran
bir launchd kullanıcı ajanı, ve komutu hangi CLI'da yazdığın bunu değiştirmiyor.
Dolayısıyla sürekli mod her hostta claude binary'sinin PATH'te olmasını
istiyor. Kuyruk ve repo seçimi her hostta ~/.claude/autopilot/ altında durur;
bu bilinçli - bir makinedeki iki CLI tek kuyruk okumalı, iki değil.
Stack'ler
Stack skill'leri mmerterden/multi-agent-plugins marketplace'inde versiyonlu plugin'ler olarak gönderilir. Repo başına bir stack seç:
/multi-agent:stack ios # veya android / frontend / backend / mobile / allBu, ilgili plugin'i (+ ortak ai-common plugin'ini) repo'nun .claude/settings.json'unda etkinleştirir. Phase 1, routing için stack'i otomatik tespit eder. Yeni repo'lar varsayılan olarak iOS'tur.
Araç desteği
Pipeline Claude Code, Copilot CLI ve Codex CLI üzerinde native çalışır - üçü de aynı pipeline/ kaynağından kurulur ve aynı 60 komutu alır.
| Araç | Bayrak | Ne kurar |
| ----------- | ----------------------- | ---------------------------------------------------------------------------------------------------------------- |
| Claude Code | --claude (varsayılan) | slash komutları + skill'ler + agent'lar + üç PreToolUse hook'u (secret scan, agent-guard, okuma-boyutu geçidi) |
| Copilot CLI | --copilot | talimatlar + 60 alt-komut skill'i + script'ler |
| Codex CLI | --codex | bir router skill + ref olarak 60 spec + 9 agent TOML + AGENTS.md bloğu + codex mcp add |
Skill'leri stack'e göre filtrele: --platform=ios\|android\|all.
Codex neden 60 değil de tek bir skill alıyor. Codex, keşfettiği her skill'in adını
ve açıklamasını tek bir prompt bloğuna toplar ve blok taştığında girdileri hatasızca
düşürür. 0.145 üzerinde ölçüldü: 142 skill deklare eden bir plugin kurulduğunda sadece
75'i yüzeye çıktı ve alakasız bir kullanıcı skill'i tahliye edildi. Bu yüzden Codex'te
pipeline tek bir multi-agent router gönderir ve alt-komut spec'lerini, okunana kadar
hiçbir maliyeti olmayan referans dosyaları olarak tutar - aynı komutlar, aynı davranış,
host'un gerçekten tutabildiği bir düzen.
Reviewer setleri farklı çünkü mevcut modeller farklı: Claude Code 3 reviewer çalıştırır (Fable + Opus + Sonnet), Copilot CLI 3 (Opus + GPT-5.4 + Sonnet), Codex CLI 3 (xhigh'da gpt-5.6, gpt-5.4, medium'da gpt-5.6). Codex tek-vendor olduğu için üçü arasındaki konsensüs, iki-vendor'lu bir host'taki aynı konsensüsten daha zayıf bir kanıttır ve triage notu bunu belirtir.
Token'lar ve entegrasyonlar
setup OS keychain'ini tarar ve her token'ı mantıksal bir isimle (örn. jira) gerçek keychain girdisine eşler - pipeline token'ları bu eşleme üzerinden çözer (credential-store.sh), böylece literal keychain isimleri hiçbir sync edilen dosyada görünmez. Token'lar macOS Keychain'de kalır, asla commit edilmez ya da loglanmaz, ve hepsi opsiyoneldir - pipeline Phase 0'da ihtiyaç duyduğu herhangi birini sorar.
| Token | Ne için kullanılır | Faz |
| --------------------- | ------------------------------------------------------------------ | ----------------------- |
| jira | issue'yu çek · rapor yorumunu gönder | 0, 7 |
| github | issue'lar · PR'lar · gh auth | 0, 6 |
| bitbucket | PR create/update (reviewer koruyarak) · diff | 6 |
| confluence | analiz / wiki sayfaları yayınla | 7 |
| figma + figma_mcp | design context çek | yalnızca analiz |
| fortify | security-scan bulgu kapısı | 4 |
| firebase | Firebase projeleri için servis hesabı JSON'ı | gerektiğinde |
| jenkins | CI tetikleme / durum | build / deploy |
| npm | paket publish (çoğunlukla CI) | release |
| appstore_connect_* | TestFlight / App Store pre-submission doğrulaması (opsiyonel, iOS) | testflight-validation |
Secret scan, Claude Code'da bir PreToolUse hook'u olarak (bulgu halinde commit'i sert-engeller) ve diğer yerlerde bir pre-push kontrolü olarak çalışır.
Pipeline koşusu dışında
Pipeline'ı kurmak yalnız onu çalıştırdığında işe yaramıyor. Sıradan bir oturum açtığında aynı üç şey elinin altında; her sohbette yüklenen rules/outside-the-pipeline.md bunları duyuruyor:
- Zaten onboard ettiğin servisler.
setup'ın eşlediği token okunabilir durumda - mantıksal adıcredential-store.shile çöz, issue'yu, sayfayı, logu getir. Okuma sıradan iş, yazma değil. Jira yorumu, issue düzenleme ve PR açma pipeline komutlarından geçer, çünkü onları güvenli kılan kurallar (issue asla otomatik kapanmaz,Closes:değilRef:, dışa dönük metinde humanizer) orada yaşıyor. /multi-agent:stack'in bu repo için açtığı stack skilleri. Yönlendirmeyi her toolkit'in kendiindexskill'i yapar; pipeline o tablonun kopyasını tutmaz.multi-agent-toolkitMCP. Çalışan uygulama için 80+ araç - ekran durumu, crash logu, tasarım karşılaştırma, store ön-kontrolü.
Uninstall bu katmanı korur: token'lar, onları açan okuyucu, adlarını tutan eşleme ve MCP kaydı. Pipeline'ı kaldırmak, onun üzerinden onboard ettiğin credential'ları kaybetmek anlamına gelmemeli.
Platform desteği
Yalnızca macOS üzerinde çalışır. Paket os: ["darwin"] beyan eder, yani npm başka bir platformda kurulumu reddeder - koşunun yarısında başarısız olmasındansa. Her credential okuması security, her iOS build'i xcodebuild, her ekran kaydı simctl çağırıyor. Node.js 20.11+ (20 ve 22'de test edildi). Gerekçe: ADR-0012.
Yan repolar
| Repo | Ne olduğu |
| --------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| mmerterden/multi-agent-plugins | Stack-başına skill toolkit'lerinin marketplace'i (iOS / Android / Frontend / Backend + common). /multi-agent:stack ilgili plugin'i etkinleştirir. |
| mmerterden/multi-agent-toolkit-mcp | UI testing / simulator capture / xcodebuild için MCP sunucusu - Phase 5 UI Bug Hunter'ı güçlendirir. Public npm registry'de @mmerterden/multi-agent-toolkit-mcp olarak yayınlanır; installer her CLI'a onu senin için register eder, böylece npx ekstra konfigürasyon olmadan onu çözer. |
Lisans
MIT - bkz. LICENSE. Güvenlik sorunları: bkz. SECURITY.md (zafiyetler için public issue açma).
