İçeriğe atla
ColliePWA

04/Documentation

Terminaller

Collie'yi Herdr, tmux, zellij, tuios veya Tern'e yönlendirme, her birinin ne yanıtlayabildiği ve aracı işaretçileri. tmux, zellij, tuios ve Tern için deneyseldir; hata bildirimleri beklenmektedir

Collie'nin oturumlar okuduğu terminaller şunlardır: Herdr, tmux, zellij, tuios ve Tern. Collie, kurulum başına bir terminal yönetir ve varsayılan Herdr'dır. Bu sayfa; Collie'yi bunlardan herhangi birine yönlendirmeyi, her birinin neye yanıt verebileceğini ve Collie'nin bir paneldeki agent'ı tespit etmek için kullandığı işaretçileri (beacon) kapsar. Ekranı olmayan dayanıklı bir agent bir terminal değildir ve Dayanıklı aracılar bunu kapsar.

tmux ve zellij kendi en üst düzey gruplarına oturum (session) adını verir. Collie bunu bir alan (space) olarak gösterir.

Collie'yi bir çoklayıcıya yönlendirme

Arka ucu COLLIE_MUX içinde adlandırın, bir uç noktaya yönlendirin, yeniden başlatın ve işaretçi kancalarını yükleyin.

Deneysel. tmux ve zellij (1.0 sürümünden beri) tmux 3.6b ve zellij 0.44.2 üzerinde, tek bir ana makinede test edildi. tuios (1.15.0 sürümünden beri) tuios 0.8.4 üzerinde test edildi. Tern, katkıda bulunanı tarafından bakımcıların çalıştıramadığı kapalı bir beta olan tern 0.4.5 üzerinde denendi. Herdr varsayılan ve birincil desteklenen arka uçtur. Test edenler aranıyor: çoğullayıcınız, sürümünüz, işletim sisteminiz ve karşılaştığınız durumla birlikte tmux: …, zellij: …, tuios: … veya tern: … başlıklı bir sorunu AltanS/collie üzerinde açın.

Komut satırında çoğullayıcıyı adlandırın:

COLLIE_MUX=herdr collie start
COLLIE_MUX=tmux collie start
COLLIE_MUX=zellij collie start
COLLIE_MUX=tuios collie start
COLLIE_MUX=tern collie start

Varsayılan hedef istediğiniz hedef olmadığında uç noktayı ayarlayın:

# in your .env: ~/.config/collie/.env, or Herdr's plugin config dir on a Herdr
# install. See Configure for the full precedence.
COLLIE_MUX=tmux
COLLIE_MUX_ENDPOINT_TMUX=/run/user/1000/collie-tmux.sock
COLLIE_MUX_ENDPOINT_ZELLIJ=collie-zellij

# only if the binary sits somewhere unusual
# COLLIE_TMUX_BIN=/usr/bin/tmux
# COLLIE_ZELLIJ_BIN=/home/you/.local/bin/zellij
değişkendeğeranlamı
COLLIE_MUXherdr, tern, tmux, zellij veya tuiosbu kurulumun hangi terminali yönettiği
COLLIE_MUX_ENDPOINT_TMUX/run/user/1000/collie-tmux.sockbir soket PATH değeri (tmux -S), çünkü bir / içerir
COLLIE_MUX_ENDPOINT_TMUXworkbir soket NAME değeri (tmux -L work), / içermez
COLLIE_MUX_ENDPOINT_TMUXboştmux'ın kendi varsayılan sunucusu
COLLIE_MUX_ENDPOINT_ZELLIJcollie-zellijbir oturum NAME değeri, yol değil
COLLIE_MUX_ENDPOINT_ZELLIJboşçalışan tek oturum
COLLIE_MUX_ENDPOINT_TUIOS/run/user/1000/tuios/tuios.socktuios arka plan programının soket PATH değeri
COLLIE_MUX_ENDPOINT_TUIOSboş$XDG_RUNTIME_DIR/tuios/tuios.sock, aksi halde /tmp/tuios-<uid>/tuios.sock
COLLIE_MUX_ENDPOINT_TERN/run/user/1000/tern/daemon.sockTern arka plan programının soket PATH değeri
COLLIE_MUX_ENDPOINT_TERNboş$XDG_RUNTIME_DIR/tern/daemon.sock, aksi halde /tmp/tern-<uid>/daemon.sock
COLLIE_TERN_BIN/home/you/.local/opt/tern/ternyalnızca tern alışılmadık bir konumdaysa
COLLIE_TMUX_BIN/usr/bin/tmuxyalnızca tmux alışılmadık bir konumdaysa
COLLIE_ZELLIJ_BIN/home/you/.local/bin/zellijyalnızca zellij alışılmadık bir konumdaysa

Herdr'ın burada bir uç nokta değişkeni yoktur: soketi HERDR_SOCKET_PATH şeklindedir, bir COLLIE_MUX_ENDPOINT_ adı değildir.

Bu soket yerel olandır ve başkası değildir. Herdr içine kaydedilmiş bir makine crew üyesi değildir ve yalnızca bir Collie crew başka bir makinenin panellerini telefona getirir. Her listenin ne olduğu ve birinin neden diğeri olmadığı Herdr makineleri ve ekip içindedir.

Ardından yeniden başlatın, işaretçi kancalarını kurun ve telefonun görebileceği yerde bir ajan başlatın:

collie restart                 # after every .env edit
collie hooks install claude    # once per host; tmux, zellij and tern need it, Herdr gets hook edges

# open a window or a tab for the agent
tmux -S /run/user/1000/collie-tmux.sock new-window -n claude
zellij --session collie-zellij action new-tab --name claude

claude                         # in that window or tab

Bu komutlar ne yaptı

Komut satırındaki COLLIE_MUX, seçimi hem o çalıştırma hem de sonraki tüm çalıştırmalar için ayarlar. start, adı .env dosyasına yazar; böylece daha sonra collie start komutunu çalıştırmak aynı çoğullayıcıyı yönetir.

COLLIE_MUX ayarlanmadığında, start Herdr, tmux ve zellij için yoklama yapar, bir arka uç seçilmesini ister ve yanıtı .env dosyasına yazar. Yapılandırma referansının tamamı için MUX_CONTRACT.md → Bir collie'yi çoğullayıcıya yönlendirme bölümüne bakın.

collie hooks install claude, tmux, zellij ve tern'in gerektirdiği Collie'nin beacon kancalarını yükler. Bunlar bölmeleri genel kabuklar olarak sunar, dolayısıyla kancalar olmadan her bölme bash olarak görünür.

Komut ~/.claude/settings.json öğesini günceller ve proje yapılandırmalarına dokunmaz (ayrıntılar aşağıda). Claude Code 2.1.301 çalışırken kancalarını (hook) yeniden yükler. Daha eski bir Claude sürümünü yeniden başlatın.

Not. Bu modda Herdr gerekli değildir. COLLIE_MUX=tmux veya COLLIE_MUX=zellij ile köprü yalnızca seçilen bağdaştırıcıyı yükler ve Herdr soketini yok sayar. Herdr yapılandırma kökleri genelinde birden çok Herdr oturumunun keşfedilmesi devre dışı bırakılır (bridge/index.ts). Herdr'ın kurulu veya çalışıyor olmasına ihtiyacınız yoktur ve .env, eklenti yapılandırma dizini yerine ~/.config/collie/ içinde yer alır.

tmux notları

COLLIE_TMUX_BIN genellikle ayarlanmadan bırakılır. Collie standart yolların bir listesini denetler ve arka plan servislerinin ve Herdr eylemlerinin oturum açma kabuklarıyla paylaşmadığı PATH değerini okumaz.

Not. Soket yollarını kısa tutun. Yaklaşık 100 karakterden uzun Unix alan adı soketlerine bağlanılamaz ve tmux error connecting to … (File name too long) döndürür. Derin bir dizin yolu yerine /run/user/<uid>/ veya /tmp kullanın.

window-size değeri manual olarak ayarlanmış 3.7 sürümünden önceki tmux sürümlerinde bir pencere oluşturmak sunucuyu çökertecektir. Collie bu durumda pencere oluşturulmasını engeller ve sizden tmux set -g window-size latest komutunu çalıştırmanızı ister; Gereksinimler test edilen sürümleri listeler.

automatic-rename açıkken tmux, bir pencereyi içinde çalışan programın adına göre yeniden adlandırır; bash adını taşıyan bir ekran dolusu sekme hiçbir şey ifade etmediğinden, Collie bunun yerine o pencerenin etkin bölmesinin son klasörünü gösterir. Kendi adlandırdığınız bir pencere bu adı korur.

zellij notları

Dağıtımınızda zellij paketleri yoksa zellij'in GitHub sürümleri adresinden bir ikili dosya indirin ve bunu PATH yolunuza yerleştirin.

Uç noktanın boş bırakılması varsayılan olarak tek çalışan oturumu kullanır. Sıfır veya birden fazla oturum varsa Collie bunlardan birini seçmek yerine bir hatayla durur. Adlandırılmış bir oturum sonlanırsa Collie etkin bir oturuma geçmek yerine bunu adıyla bildirir.

Zellij oturumları bulmak için XDG_RUNTIME_DIR değişkenini gerektirir. Collie tüm oturumların sonlandığını bildirirse systemd servisinin bu ortam değişkenini içerdiğini doğrulayın (contract).

Zellij oturumları ilk uçbirimlerinden bağımsız olarak varlığını sürdürür. zellij -s collie-zellij ile bir oturum oluşturun ve Ctrl o d kullanarak ayrılın. Başsız ana bilgisayarlarda zellij attach --create-background collie-zellij doğrudan ayrılmış bir oturum başlatır (zellij 0.44.2 üzerinde doğrulanmıştır).

Not. Collie etkin oturumları yönetir, ancak bunları oluşturmaz veya yeniden başlatmaz.

Zellij 0.44 ve sonraki sürümler her bölmenin klasörünü bildirir; bu sayede zellij bölmeleri Dosyalar düğmesini alır ve dallarını gösterir. Daha eski bir zellij hiçbir klasör bildirmez ve bölmelerinde ikisi de bulunmaz.

tern notları

Collie'yi Tern'e yönlendirin:

COLLIE_MUX=tern collie start
collie hooks install claude   # beacon hooks for agent detection

Collie, Tern oturumlarını alanlar, sekmeleri sekmeler ve blokları bölmeler olarak okur. Uç nokta, varsayılanı $XDG_RUNTIME_DIR/tern/daemon.sock (veya /tmp/tern-<uid>/daemon.sock) olan Tern arka plan programı soketidir. Bir Tern bölmesinin içinde $TERN_PANE bloğu tanımlar ve $TERN_PANE_SOCKET arka plan programı soketini gösterir.

Tern, yaşam döngüsü olaylarını tern events aracılığıyla bildirerek anlık topoloji değişikliği bildirimlerini etkinleştirir.

"Terminalde göster", Tern pencerenizi panelin Tern oturumuna ve sekmesine taşır ve bloğuna odaklanır. Collie'nin oluşturduğu bir sekme veya bir Tern oturumu arka planda açılır ve pencerenizi taşımaz.

Collie, tuios'u kendi kendine algılamadığı gibi Tern'i de algılamaz: COLLIE_MUX=tern ile belirtin. Bir komut satırı argümanı olarak aktarıldığından, 128 KiB'den uzun yazılan metinler reddedilir.

durable notları

Bağladığınız dayanıklı bir agent bir terminal değildir ve ekranı yoktur. Dayanıklı aracılar; collie durable attach ile bir tanesini nasıl bağlayacağınızı, COLLIE_MUX=durable ile tek başına dayanıklı bir agent yöneten eski formu, dayanıklı bir agent'a ulaşmanın iki yolunu, telefonda neler yapabileceğini ve erişilemez olarak göründüğünde nelerin kontrol edileceğini kapsar.

tuios notları

tuios aracıları kendisi bildirir, bu nedenle işaretçi kancalarına ihtiyaç duymaz:

COLLIE_MUX=tuios collie start
tuios integration install claude-code   # once, so tuios hears the agent's hooks

Collie aracıyı, durumunu ve konuşmasını tuios arka plan programından okur. Sizi bekleyen bir bölme engellendi olarak görünür ve aracı konuşmasını bildirdiğinde bölmenin geçmişi açılır. Collie'nin donanımına sahip olmadığı bir aracı kabuk olarak görünür.

Collie her tuios oturumunu bir alan, her çalışma alanını bir sekme ve her pencereyi bir bölme olarak gösterir. Bir çalışma alanı, bir bölme barındırdığı sürece sekme olarak görünür. Başka bir makinede çalışan bölme gösterilmez. O makinedeki bir Collie'yi kendi tuios örneğine yönlendirin.

Uç nokta, arka plan programının soketidir. tuios uygulamasının kendisinin kullandığı soketi kullanmak için burayı boş bırakın. Collie soketi bulmak için XDG_RUNTIME_DIR değişkenini okur, bu nedenle hizmetin bu değişkene sahip olduğundan emin olun. Bir tuios bölmesi içinde echo $TUIOS_SOCKET yolu yazdırır.

Collie, tuios 0.8.3 veya daha yenisi sürümüne ihtiyaç duyar: arka plan programı workspace-renamed olayını duyurmalıdır, 0.8.2 sürümü bunu yapmaz. Daha eski bir arka plan programında Collie köprüyü bağlantısı kesilmiş olarak gösterir ve günlük neyin güncelleneceğini belirtir.

Bazı şeyler tuios üzerinde farklı çalışır:

  • Yeni bir sekme en düşük numaralı boş çalışma alanında açılır. Bir tuios oturumu varsayılan olarak dokuz çalışma alanına sahiptir, bu nedenle Collie onuncu bir sekmeyi reddeder.
  • Terminalde göster, tuios-web sekmesi de dahil olmak üzere panelin tuios oturumunu gösteren her terminali taşır. tuios, bir terminali başka bir tuios oturumuna taşıyamaz. Panelin tuios oturumunu hiçbir terminal göstermiyorsa Collie işlemi reddeder ve terminalin gösterdiği tuios oturumunu adlandırır.
  • Yeni sayfasındaki Yeni worktree anahtarı kapalı kalır ve Herdr gerektiğini belirtir.

Çalıştı mı?

collie doctor   # the `mux` check names the multiplexer, its endpoint,
                # and whether it answered (durable: the six `durable-*` checks)

# `[bridge] mux: tmux · socket /run/user/1000/collie-tmux.sock`, printed at
# startup; a multiplexer it cannot reach is one warning line more
collie logs

# the herd, as the phone is given it; reads need the pairing token
curl -s -H "Authorization: Bearer $COLLIE_TOKEN" http://127.0.0.1:8787/api/snapshot | head -c 400

Her okuma işlemi eşleştirilmiş bir cihazın belirtecine ihtiyaç duyar, bu nedenle bu curl çağrısı bir belirteç gönderir. Bu olmadan köprü 403 device not paired yanıtını verir. Bir betik için belirteç almak üzere 1.18.0 sürümüne yükseltme bölümüne bakın. collie doctor, ana makinede belirteç gerektirmez. COLLIE_DEVICE_HEADER hâlâ yalnızca yazma işlemlerini ve Dosyalar görünümünü (Bir cihazı eşleyin) sınırlar.

Telefon arayüzünü denetleyin: gösterge paneli tmux pencereleri veya zellij sekmeleri değerinizi görüntülemeli ve Claude paneli bash yerine bir ajan olarak tanımlanmalıdır. Paneller hala standart kabuklar olarak görüntüleniyorsa aşağıdaki beacon kancası kurulumunu doğrulayın.

Collie kancaları Claude'un kendi ayarlarına yazar

$ collie hooks install claude
$ collie hooks status
would install: /home/you/collie/bin/collie beacon emit  (this checkout)
/home/you/.claude/settings.json: installed (v1)

tmux, zellij ve tern panelleri genel kabuklar olarak sunduğundan, agent'lar kendilerini bildirmelidir. Bu, Collie'nin beacon kancalarının Claude Code yapılandırmasına kurulmasını gerektirir. Herdr üzerinde aynı kancalar yalnızca kanca kenarları sağlar.

Çıktı bu depodaki bin/collie yolunu referans alır. Paket kurulumları sürümlenmiş dizinler yerine kurulu ikili dosya yolunu (~/.local/bin/collie veya ~/.local/share/collie/current/bin/collie) kullanarak bağlantıların güncellemeler boyunca geçerli kalmasını sağlar.

Claude yapılandırma değişiklikleri için davranış ayrıntıları:

  • genel ~/.claude/settings.json dosyasını ve tüm etkin CLAUDE_CONFIG_DIR öğelerini değiştirir. Proje düzeyindeki .claude/settings.json dosyalarına dokunulmaz.
  • 10 saniyelik zaman aşımlarına sahip # collie-beacon v1 etiketli beş kancası ekler. Mevcut kancalar korunur. hooks uninstall claude yalnızca Collie girdilerini kaldırır.
  • Siz istemedikçe statusLine değerinizi kendi haline bırakır. Bir bayrak olmadan kurulum statusLine değerine dokunmaz. Kemerin üstündeki modelin yanındaki bağlam noktasını almaya devam edersiniz: kancalar oturum dökümünü ve oturum başlangıcından itibaren pencere boyutunu okur.
  • 5 saatlik ve 7 günlük pencereler kendiliğinden görünür. Ne kancaya ne de statusLine'a ihtiyaç duyarlar. Bir Claude bölmesi açıkken köprü bu makinedeki Claude oturum açma bilginizi okur (~/.claude/.credentials.json veya $CLAUDE_CONFIG_DIR/.credentials.json; dosya bulunmayan bir Mac üzerinde Keychain) ve Claude Code'un /usage çağrısının yaptığı çağrının aynısı olan api.anthropic.com/api/oauth/usage sorgusunu yapar. Bölme göründüğünde, bir tur bittikten sonra (dakikada en fazla bir kez) ve her beş dakikada bir sorgular. Oturum açma bilgisine dair hiçbir şey saklamaz, bunu asla yenilemez ve başka hiçbir yere göndermez. Başkalarının okuyabileceği bir oturum açma dosyasını (0600 değerinden daha gevşek olan her şeyi) ve süresi dolmuş bir oturum açma bilgisini atlar; Claude Code bir sonraki çağrısında bunu yeniler. Bir API anahtarı, Bedrock veya Vertex oturumunun gösterecek penceresi yoktur. Codex bölmeleri kendilerininkini aynı şekilde, aynı zamanlamayla, hiçbir oturum açma bilgisi okunmadan kendi oturum dosyalarından alır. OpenCode Go ve Grok siz onları COLLIE_ACCOUNT_WINDOWS=all veya bir liste ile adlandırana kadar kapalıdır (bkz. Kullanım pencereleri). COLLIE_ACCOUNT_WINDOWS=0 (veya [bridge] account_windows = false) tümünü kapatır ve collie doctor, account-windows satırında hangisi olduğunu belirtir.
  • statusLine değerinizi sarmak ikinci yoldur. collie hooks install claude --statusline ile Collie kendi statusLine değerinizi de sarar ve pencereler Claude Code'un sağladığı verilerden gelir. Oturum açma okuması yerine bunu tercih ediyorsanız COLLIE_ACCOUNT_WINDOWS=0 ile alın. Komutu collie beacon statusline … haline gelir ve betiğiniz eskisi gibi çalışmaya ve çıktı vermeye devam eder. Collie asla bir statusLine eklemez ve hooks uninstall claude komutunuzu aynen geri koyar. Bayrak olmadan yapılan bir kurulum mevcut bir sarmayı korur ve onu geçerli ikiliye yönlendirir. Artık istemediğiniz bir sarmayı kaldırmak için collie hooks uninstall claude komutunu ve ardından --statusline olmadan collie hooks install claude komutunu çalıştırın. Windows üzerinde geçerli değildir.
  • Sarılmış bir statusLine'ı değiştirmek için önce sarmasını kaldırın. collie hooks uninstall claude çalıştırın, statusLine.command düzenleyin, ardından collie hooks install claude --statusline tekrar çalıştırın. Sarılan komut collie ikilisini yoluyla adlandırır, bu nedenle ikili taşınırsa siz kurulumu tekrar çalıştırana kadar statusLine hiçbir şey yazdırmaz. collie update, sarılmış bir statusLine daha eski bir ikiliye işaret ettiğinde size hatırlatır. Sarmalayıcıyı elle denemek için çoğullayıcının dışında çalıştırın (env -u HERDR_PANE_ID -u TMUX_PANE -u ZELLIJ_PANE_ID …), aksi takdirde çalışan her köprüye bir okuma yazar.
  • Claude Code çalışırken kancalarını yeniden yükler. Bu durum 2.1.301 için geçerlidir. Kanca kenarı gelmezse daha eski bir Claude sürümünü yeniden başlatın.
  • Yalnızca Linux. Aracının canlılık denetimi /proc bileşenine bağlıdır. Diğer işletim sistemleri sinyal göndermez.
  • Sinyaller çoğullayıcıya özeldir. Etkin arka uç için bölme ve oturum tanımlayıcılarını kaydederler. COLLIE_MUX değiştirmek mevcut sinyalleri geçersiz kılar. Eski sinyaller temizlenene kadar diskte kalır ve collie doctor altındaki beacons sayısında görünür.
  • COLLIE_STATE_DIR kullanıyorsanız aracının kabuk ortamında dışa aktarın. collie beacon emit bu değişkeni doğrudan okur; aksi takdirde sinyaller, köprünün onları bulamayacağı varsayılan durum dizinine yazılır.

collie doctor, eksik kancaları veya yeri değiştirilmiş depolara yönelik bozuk yolları gösteren bir beacon-hooks-claude tanılama denetimi içerir. Çalışma zamanı ayrıntıları için Aracı sinyalleri bölümüne bakın.

Herdr ile karşılaştırıldığında ne değişiyor

Aşağıdaki tablo temel farklılıkları özetlemektedir. Kesin belirtim için MUX_CONTRACT.md belgesine bakın.

Herdrtmuxzellij
bir alan şudur:bir çalışma alanıbir oturumtam olarak tek bir oturum, böylece telefon boşluk şeridini kaldırır
bir sekme şudur:bir sekmebir pencerebir sekme
bir bölme şudur:bir bölmebir bölmebir uçbirim bölmesi
bir bölmenin aracı içerdiğini kim belirtirHerdr, bizzat kendisibir beacon veya hiçbir şeybir beacon veya hiçbir şey
duurulmamış bir değişikliğin ne kadar sürede görüleceğiitildiitildibir takvime göre sayılır, 12 sn üst sınır
"Terminalde göster"evetevethayır, zellij isteği kabul eder ve hiçbir şeyi taşımaz
sekme aç / yeniden adlandır / kapatevetevet (yukarıdaki tmux çökmesi durumunda açma işlemi reddedilir)evet
alan açevetevethayır, oluşturduğu bir oturum kendisi tarafından görülemezdi
bölme geçmişiHerdr'ın kendi bölme kaydındanbeacon'ın oturum anahtarındanbeacon'ın oturum anahtarından

Aktif işaretçiler olmadan tmux, zellij ve tern bölmeleri ham kabuklar olarak sunar ve bölme geçmişi boş içerik döndürmek yerine kullanılamaz olarak işaretlenir.

Telefonda farklı hissettiren iki şey

  • "N sn önce senkronize edildi": Bu gösterge, veri yaşını göstermek için pano başlığında görünür. zellij gibi yalnızca arka uç zamanlanmış yoklamaya dayandığında görüntülenir (12 saniyeye kadar yoklama aralığı). Herdr ve tmux durum değişikliklerini anında iletir, bu nedenle güncellik rozeti gösterilmez.
  • "Terminalde göster": Bu bölme eylemi, seçilen bölmeyi etkin ana bilgisayar terminalinizde odaklar. zellij'in odak komutu görünüm durumunu değiştirmeden talimatı kabul ettiği için bu eylem zellij üzerinde devre dışı.
Not. Mobil arayüz, ana bilgisayar terminali odağını hiçbir zaman otomatik olarak değiştirmez. Yalnızca açıkça yapılan "Terminalde göster" eylemi ekranı günceller. Panoda gezinmek veya bölmeleri açmak etkin ana bilgisayar imlecini etkilemez (ADR 0031).

tmux ipuçları, yeniden başlatmanın ardından pencerelerinizi geri alma

claude --resume      # reconnects the conversation, not the window

Collie çoğullayıcı durumunu saklamaz. Bir tmux sunucusunu yeniden başlatmak pencerelerini yok eder ve panoyu boş bırakır. Standart tmux eklentileri pencere düzenlerini ve çalışma dizinlerini geri yükler: eklenti yönetimi için tpm, oturum ağaçlarını kaydetmek için tmux-resurrect ve otomatik anlık görüntüler için tmux-continuum.

Not. Çalışan ajan süreçleri korunmaz. Kurtarma işleminden sonra Claude Code'u manuel olarak yeniden başlatın.

zellij ipuçları, yeniden başlatmanın ardından geri yüklenecek bir şey yoktur

zellij -s collie-zellij                                  # start the session
zellij attach --create-background collie-zellij          # headless: start it detached
claude --resume                                           # reconnects the agent

Zellij, tmux-resurrect eşdeğeri bir özellik sunmaz. Terminal bağlantısı kesildikten sonra sürdürülen oturumlar (EXITED - attach to resurrect) olarak görünür ve bağlanmak oturum komutlarının yeniden yürütülmesini tetikler; bu nedenle yeniden başlatma, oturumu yukarıdaki komutlardan biriyle sıfırdan başlatmak, içine ajanları yüklemek ve her birini claude --resume veya claude --continue ile yeniden bağlamak anlamına gelir.

Not. Bağlanmak yan etkilere yol açtığı için Collie oturumlara bağlanmaz veya onları yeniden canlandırmaz. Sonlandırılmış oturumlar ulaşılamaz olarak görünür ve kullanıcı arayüzü boş bir oturum listesi yerine bağlantı kesildi başlığı görüntüler.

Ajan sinyalleri (isteğe bağlı, Linux)

Bir bölmenin aksi takdirde genel bir kabuk olarak göründüğü tmux, zellij ve tern üzerinde bir beacon, aracının Collie'ye kendini tanıtma biçimidir.

$ collie hooks install claude
$ collie hooks status
would install: /home/you/collie/bin/collie beacon emit  (this checkout)
/home/you/.claude/settings.json: installed (v1)

Claude Code ayarlarındaki bir kanca, koşum takımı adını, oturumu ve hedef bölmeyi içeren bir dosya yazan collie beacon emit komutunu çalıştırır. Herdr bunu yerel olarak izler. Kurulum ayrıntıları Collie'yi bir çoklayıcıya yönlendirme içindedir; bu bölüm mekanizmayı açıklar.

Yukarıdaki yol, yerel kopyadaki bin/collie konumuna başvurur. İkili paket kurulumu, ~/.local/bin/collie konumuna veya bu ad bağlanmadığında yukarıda açıklandığı gibi belirtildiği üzere ~/.local/share/collie/current/bin/collie konumuna işaret eder. status komutu hiçbir yazma işlemi gerçekleştirmez.

hooks uninstall claude komutunu çalıştırmak yalnızca Collie tarafından eklenen girdileri kaldırır. Proje düzeyindeki dosyaları değil, genel Claude yapılandırmanızı değiştirir. Bu yalnızca Linux içindir: canlılık denetimi /proc öğesini inceler ve Collie diğer işletim sistemlerinde hiçbir sinyal yazmaz.

Claude başlangıçta hemen görünür hale gelir. Kanca SessionStart üzerinde tetiklendiğinden, girdi bekleyen açık bir bölme bir kabuk yerine boşta bekleyen bir ajan olarak görüntülenir.

Görünürlük işlem sonlandığında biter. Collie yayımlanan PID'yi her denetimde doğrular; böylece ajan sonlandığında bölme bilinmeyen bir durumda asılı kalmak yerine hemen standart bir kabuk olarak raporlanır.

Collie bunu yapmak için sinyal dosyasını silmez: dosya diskte kalır, collie doctor bunu beacons altında süresi doldu olarak raporlar ve sonraki kanca çağrısı dosyanın üzerine yazar.

Bu, panonun bölmeleri bash yerine ajan adına göre etiketlemesine olanak tanır. "size ihtiyacı var" durumunun bölmeleri engellenme durumuna göre sıralamasını sağlar ve uyarılar için gereken durumu sunar. Bölme geçmişi de günlük tarafından kullanılan oturum anahtarını sağlamak için sinyale dayanır.

Kanca kenarları

Aynı kancalar her olay için bir kanca kenarı da yazar. Bir kanca kenarı (hook edge), tek bir panel hakkında kısa bir nottur. Örnekler: "bir komut istemi girildi", "sıra durdu" ve "bir izin iletişim kutusu açık". Collie, Herdr da dahil olmak üzere her çoğullayıcıda kanca kenarlarını kullanır. Herdr kendi agent'larını kendisi adlandırır. Dolayısıyla Herdr üzerinde kancalar yalnızca kanca kenarlarını yazar, işaretçi (beacon) yazmaz.

Bir hook edge, bir bölmenin boş olduğuna asla kendi başına karar vermez. Her edge sonrasında Collie, yaklaşık 0,7 saniye sonra ekranı yeniden okur. Yalnızca ekran giriş kutusunun boş olduğunu ve açıkta bir iletişim kutusu bulunmadığını belirtebilir. Bir edge, bir turun çalıştığını veya bir iletişim kutusunun açık olduğunu bildirebilir. Collie daha sonra kapanış edge'i gelene kadar bölmeyi meşgul olarak tutar. On saniye içinde gerçekleşen üç boş ekran okuması da bu bekletmeyi sonlandırır. Bir alt ajandan gelen araç edge'i bölmeyle ilgili değildir; bu nedenle Collie'nin orada okuduğu şeyi asla değiştirmez.

Telefondan yapılan bir gönderim Onaylandı olarak görünebilir. Bu durum, bir komut istemi kenarı gönderimden kısa bir süre sonra aynı metni taşıdığında gerçekleşir. Bu süre aralığı 30 saniyedir veya bir sıranın arkasında kuyruğa alınmış bir gönderim için on dakikadır. Kenar, komut isteminin tuzlanmış bir karmasını (hash) taşır, asla metnin kendisini taşımaz.

Claude Code ve Codex, bir tur sırasında mesaj veya komut kabul eder. Collie bunu hemen yazar ve harness tur bittikten sonra çalıştırır. Kendi turu sırasında gönderme işlemi alamayan bir harness, bunun yerine bekletilen bir gönderme alır. Giriş kutusunu boş bulamayan (örneğin bir açılır pencerenin altında kalan veya Collie'nin iki okuması arasında değişen bir ekrandaki) veya başarısız olan ve Collie'nin tekrar temiz okuduğu bir kutudan tek bir Backspace ile geri alınan bir yoklama karakterine denk gelen mesaj da bekletilir. Böyle bir mesaj, on saniye içinde beş boş yoklamadan sonra veya Collie'nin gördüğü bir turun ardından gider. Oradaki bir komut yine reddedilir; Type here ile onayladığınız bir ekrandaki gönderme işlemi de reddedilir. Profili olmayan bir bölmedeki gönderme işlemi asla bekletilmez. Collie metni saklar ve terminal görünümünün altında yüzen bir kart gösterir: "Kuyruğa alındı. Tur bittiğinde gönderilir." Collie'nin sürümünü okuyamadığı bir aracıda kart bunu belirtir ve collie doctor işaret eder: Collie, çalışan bir tura yalnızca aracının bildirdiği bir sürümde metin yazar. Kart metni ve bir Cancel düğmesini gösterir. Collie, bölme art arda iki yoklamada boş okunduktan sonra, tur bittiğinde en eskiden başlayarak gönderir. Daha sonraki her bekletilen gönderme, kendisinden önceki göndermenin başlattığı turu bekler. Hiçbir tur görünmezse, on saniye içinde beş boş yoklamadan sonra gider. pi, OMP veya Codex üzerindeki bekletilen bir komut Enter gönderir ve orada Enter bir turu yönlendirir. Böyle bir komut tur bitene kadar bekler; Collie'nin sürümünü okuyamadığı bir aracıdaki bekletilen her komut da öyle: en az iki saniye arayla iki boş yoklama veya Collie hiç tur görmediyse on saniye içinde beş yoklama. OMP bir tur sırasında /goal komutunu hemen çalıştırır, bu yüzden Collie /goal, /goal pause veya /goal resume komutlarını Enter ile hemen gönderir. Bunları asla bekletmez ve diğer bekletilen gönderimlerin arkasında sıraya girmezler. Bu bölmedeki daha sonraki bir mesaj, bekletilenlerin arkasında bekler. Bekletilen bir metin 30 dakika, bekletilen bir komut 10 dakika geçerlidir. Bundan sonra satır mesajın gönderilmediğini belirtir ve Resend seçeneğini sunar. Bir telsiz mesajı da taslak varken bekletilir, asla taslağın içine yazılmaz ve bekletilme süresi 60 dakikadır (Telsiz). Taslak varken yaptığınız gönderme işlemi Append ve Replace ile yine reddedilir. Collie bir taslağı reddetmeden, ekleme yapmadan veya temizlemeden önce, kutunun tuş vuruşlarını aldığını doğrulamak için bir yoklama karakteri yazar ve siler; ekrandaki kutu tuşları almadığında gönderme reddedilir ve hiçbir şey silinmez. Aracının ekranını yeniden çizmesi için masaüstünde o bölmeye odaklanın veya bölmeyi yeniden boyutlandırın, ardından tekrar gönderin. Bazı komutlar asla beklemez ve Collie bunları bir tur sırasında reddeder. Claude Code üzerinde bunlar /clear, /exit, /quit, /logout, /resume, /branch ve her ! satırıdır. Codex üzerinde bunlar /quit, /exit, /new, /resume, /logout ve her ! satırıdır. Hermes üzerinde bunlar /exit, /quit, /clear, /new, /resume ve her ! satırıdır. Bekletilen bir gönderme, Collie yeniden başlatılsa bile korunur. İptal işlemi, gönderme çıkmaya başlayana kadar ve yalnızca bu makinenin kendi bölmelerinde çalışır. İki veya daha fazla bekletilen gönderme olduğunda kart bir sayaç ve ilk metni gösterir; Show all ise her göndermeyi kendi Cancel düğmesiyle listeler. Collie bekletilen metni diskte düz biçimde, yalnızca kullanıcınızın okuyabileceği bir dosyada (0600 modu) saklar. Gönderme çıktığında ve bekletme sona erdikten en geç bir saat sonra metni siler.

Collie her edge'i tek bir bölmeye yerleştirir. Edge, aracının sürecini ve bölmesini (HERDR_PANE_ID, TMUX_PANE veya ZELLIJ_PANE_ID) belirtir. Collie bölme belirtmeyen, iki bölme belirten veya artık mevcut olmayan bir süreci belirten bir edge'i düşürür. Köprü günlüğü bu durumda bir surface.edge.dropped satırı gösterir. Her dakika neden ve süreç başına en fazla bir satır gösterir. 30 saniyeden eski bir edge veya edge olmayan bir dosya sayılır ancak hiçbir zaman günlüğe kaydedilmez.

Hangi köprüler edge'leri alır

Hook edge'lerini alan her köprü, önyükleme sırasında kendini ~/.local/state/collie/hook-targets/ içine listeler. XDG_STATE_HOME ayarlandığında klasör $XDG_STATE_HOME/collie/hook-targets/ olur. Bir köprü düzgün şekilde durduğunda kendi dosyasını kaldırır. Çalışan bir köprü, dosyası kaybolduğunda iki saniye içinde dosyasını yeniden yazar. Hook, her edge'i süreci hâlâ çalışan listelenmiş her köprüye yazar. Artık mevcut olmayan bir köprünün dosyasını siler. Listelenmiş köprü olmadığında hook varsayılan durum dizinine yazar. Aracının kendi ortamındaki bir COLLIE_STATE_DIR de edge'leri her zaman alır.

Bölme bilgisi

Telefondaki bölme bilgisi, bir bölmenin hook edge'leri gönderip göndermediğini gösterir:

  • Hook'lar: etkin, o bölmedeki aracının hook edge'leri gönderdiği anlamına gelir.
  • Hook'lar: etkin, izinleri bekletir, aracının hook'larının telefon için izinleri de beklettiği anlamına gelir. Bkz. Telefon için bekletilen izinler.
  • Hook'lar: yok, Collie'nin o bölmeden hiçbir hook edge'i almadığı anlamına gelir. Hook'lar kurulu değildir veya aracı kurulumdan bu yana bir olay göndermemiştir. Claude Code 2.1.301 çalışırken yeni hook'ları alır. Daha eski bir Claude sürümünü yeniden başlatın.

Bir köprü, kendi yeniden başlatılması boyunca etkin bölmeleri korur. Köprü yeniden başlatıldıktan sonra satır "etkin" kalır.

Daha eski bir Collie sürümünden yapılan bir kurulum, izin iletişim kutusu için edge göndermez. collie hooks status bunu kısmi olarak gösterir. Yerinde güncellemek için collie hooks install claude komutunu tekrar çalıştırın.

Telefon için bekletilen izinler

$ collie hooks install claude --hold-permissions

Bu işlem Claude'un PermissionRequest üzerine bir hook daha ekler. Claude bir izin istediğinde, hook isteği bekletir ve dokunmanızı bekler. Telefon isteği bir kart olarak gösterir. Evet veya Hayır üzerine dokunulduğunda bu yanıt hook aracılığıyla Claude'a geri iletilir. Collie bunun için bölmeye hiçbir tuş göndermez. Kurulum, bu hook'a sahip ilk sürüm olan Claude Code 2.0.45 veya daha yenisini gerektirir. Daha eski bir sürümü reddeder.

  • Hook, çalışan her köprüyü hook edge'lerinin bulduğu şekilde bulur. hook-targets/ okur ve her etkin köprüyle bekletir. İlk yanıt kazanır. Diğer telefonlar bu durumda "Başka bir Collie yanıtladı" der.
  • Masaüstü çalışmaya devam eder. İletişim kutusunu terminalde yanıtlayın; telefon kartı "Önce masaüstü yanıtladı" der. Collie bundan sonraki bir dokunmayı kullanmaz.
  • Hook üzerinden yalnızca Evet ve Hayır geçer. "Bir daha sorma" gibi bir seçenek ekran yanıtı olarak kalır. Collie, bekletilen bir karttaki bu dokunmayı reddeder.
  • Bekletilen bir isteğin 290 saniyelik bir zaman sınırı vardır. Bundan sonra iletişim kutusu ekranda kalır ve yeni bir kimliğe sahip sıradan bir karta dönüşür. Eski bir dokunma hiçbir zaman tuş vuruşuna dönüşmez.
  • Köprü yok, bekletme yok. Dinleyen bir köprü olmadığında veya herhangi bir hatada hook hiçbir şey yazdırmaz. Claude daha sonra kendi iletişim kutusunu eskisi gibi gösterir. Hook hiçbir zaman kendi başına yanıt vermez.
  • Kart gösterilen girdiyi gösterir. Bu; komut, dosya yolu veya başka bir tuş girdisidir. Riskli Bash bayraklarını ve bir yazma işleminin dosyaya koyduğu metnin tamamını ekler. Collie metni gizleyen veya yönünü değiştiren karakterleri düşürür. Gösterilen girdi, yazılan metin dahil 1000 karakterlik bir sınıra sahiptir. Collie daha uzun bir isteği asla bekletmez: kart tamamını gösteremez, bu nedenle ekrandaki iletişim kutusu bunu yanıtlar. Girdi kutunun gösterdiğinden daha fazla satıra sahip olduğunda, kart bunu belirtir.
  • Bekletilen bir istek, yalnızca söz konusu isteği gösteren iletişim kutusuna sahip olur. İletişim kutusunun başlığı isteğin aracını adlandırmalıdır. Tam olarak bir alt aracı sorduğunda "... aracısından" demeli ve aynı alt aracı türünü adlandırmalıdır. Girdinin her satırı iletişim kutusunda sırayla görünmelidir. Bekletilen iki istek tek bir iletişim kutusuna uyduğunda, hiçbiri ona sahip olmaz. Diğer herhangi bir iletişim kutusu telefondaki kendi kartını korur. İstek daha sonra kendi bekletme kartında bekler ve yalnızca o karttan gelen bir dokunma isteği yanıtlar. Kart, yeni bir istek göründükten sonraki ilk 400 ms içinde dokunma kabul etmez. O diğer iletişim kutusunu tuşlarla yanıtlarsanız ve Claude ardından hook'u sonlandırırsa, bekletme kartı tuşların yanıtladığını belirtir.
  • Kanca isteği bekletirken bir alt aracının isteği hiçbir iletişim kutusu göstermez. Bu durum Claude Code 2.1.301 için geçerlidir. Bekletme kartı isteği görmenin tek yoludur, bu nedenle aracı ve gösterilen girdiyi görüntüler.
  • Bir arka plan isteği, izleyen bir telefon olmasa bile bekletme sınırına kadar bekler. Ardından Collie kancayı serbest bırakır ve Claude iletişim kutusunu ekranda gösterir. Claude 2.1.301 isteği reddetmez.
  • Sorular ve planlar ekran kartı olarak kalır. AskUserQuestion ve ExitPlanMode hiçbir zaman bekletilmez.

Soket <stateDir>/hold/sock konumundadır. Klasörü 0700 modundadır ve soket 0600 modundadır, bu nedenle başka bir kullanıcı bağlanamaz. Kanca bağlanmadan önce soketin, klasörünün ve durum dizininin size ait olduğunu doğrular. Ayrıca iki klasöre de başka kimsenin yazamayacağını denetler. Köprü, istekleri yalnızca bir pane üzerine yerleştirdiği süreçten kabul eder. Diğer tüm istekleri tek bir surface.hold.dropped satırıyla düşürür. Kanca ve ayarlar belirteç taşımaz. Her kart aracın, gösterilen girdinin ve etiketlerin bir karmasını taşır. Farklı bir karma içeren bir dokunma, kancayı yanıtsız serbest bırakır.

Claude'un okuduğu ayarlar kancayı beklettiğinde pane bilgisi "holds permissions" ifadesini gösterir. Collie kullanıcı ayarlarını, iki proje ayar dosyasını ve yönetilen ayarları okur. disableAllHooks bekletmeyi kapatır; yönetilen dosyadaki allowManagedHooksOnly da aynı işlemi yapar.

Bekletmeyi tekrar kaldırmak için collie hooks install claude komutunu bayrak olmadan çalıştırın. collie doctor, kancaların kaç ayar dosyasında izinleri beklettiğini belirtir.

Not. İşaretçiler ve kanca kenarları bir denetim kanalı sağlamaz. Yalnızca Collie'nin neyi görüntüleyeceğini ve bir pane'i ne zaman okur değiştireceğini belirler. Metin gönderemez, tuş vuruşu enjekte edemez, pane'leri yeniden adlandıramaz, oturumları kapatamaz veya erişim denetimlerini atlayamaz. Tehdit modeli ve atlanan alanlar ADR 0024 içinde belgelenmiştir. İzin bekletme tek denetim kanalıdır. Telefondaki bir dokunma, Claude'un bir izne verdiği yanıt haline gelir. Bunu dört unsur korur. Soket yalnızca sizindir (0700 klasöründe 0600 modu) ve kanca bağlanmadan önce bunu denetler. Köprü yalnızca bir pane üzerine yerleştirdiği süreci yanıtlar. Dokunma işlemi; aracın, gösterilen girdinin ve kartın gösterdiği etiketlerin karmasını taşımalıdır. Yanıt her zaman yalnızca bir kişinin dokunmasıdır: Collie kendi başına asla izin vermez veya reddetmez.

Codex

Codex'in bir harici kancası vardır, bu da notify komutudur. Collie, bir Codex turu sona erdiğinde bunu bir kanca kenarı için kullanabilir:

$ collie hooks install codex
$ collie hooks status
/home/you/.codex/config.toml: installed

Kurulum, $CODEX_HOME/config.toml dosyasının en üstüne bir satır yazar (CODEX_HOME ayarlanmadığında ~/.codex/config.toml). Satır, dosyanın başındaki yorumların ardına eklenir:

notify = ["/home/you/.local/bin/collie", "beacon", "emit", "codex"]

Codex yalnızca tek bir bildirim komutu çalıştırır. Yapılandırmanızda zaten bir komut belirtilmişse Collie bunu olduğu gibi bırakır ve kurulum bir iletiyle durur. Collie dosyayı TOML olarak okuyamazsa kurulum durur ve ilgili satırı belirtir. Collie, ilk değişikliğinden önce dosyanın bir kopyasını saklar. collie hooks uninstall codex, kurulumdan önceki baytları birebir geri yükler. Dosyayı kurulum oluşturduysa kaldırma işlemi dosyayı siler. Halihazırda açık olan bir Codex, yeniden başlayana kadar yeni satırı görmeyebilir.

Codex her turun sonunda tek bir olay gönderir: agent-turn-complete. Collie bunu bir durma kenarı olarak yazar ve sonrasındaki ekran okuması pane'in boşta olup olmadığına karar verir. Sınırlar şunlardır:

  • Codex bir onay iletişim kutusu veya yeni bir komut istemi için olay göndermez. İletişim kutusunu yalnızca ekran gösterir ve telefondan yapılan bir gönderim Codex pane'inde hiçbir zaman Confirmed olarak görünmez.
  • Codex 0.163.0, bildirim komutunu bir arka plan yardımcısından (codex app-server) çalıştırır. Collie, /proc içindeki Codex penceresini aynı CODEX_HOME ve olayın klasörüyle eşleştirerek bulur. Bu yalnızca Linux içindir.
  • Tek bir CODEX_HOME üzerindeki tek bir klasörde bulunan iki Codex penceresi kenar almaz. Collie bunları birbirinden ayıramaz. Pane'leri, kanca olmadan olduğu gibi ekrandan güncellenmeye devam eder.
  • Codex ayrıca yeni bir görevi adlandırmak için kısa ve gizli bir tur çalıştırır. Bu tur bir durma kenarı daha gönderir, böylece pane bir ekran okuması daha alır.

Collie bir Codex iletisi için Tab tuşuna basar. Bir tur sırasında Codex bunu kuyruğa alır. Codex'te Tab, boşta bir kutuda iletiyi gönderir ve bir tur sırasında kuyruğa alır. Dolayısıyla Tab her iki durumda da doğrudur. Enter çalışan bir turu yönlendirir, bu nedenle Collie bir ileti için asla Enter tuşuna basmaz. / veya ! ile başlayan bir metin bir komuttur. Boştaki bir kutuda Enter alır, çünkü Tab burada bir / komutunu tamamlardı. Bir tur sırasında Tab alır ve Codex bunu bir ileti gibi kuyruğa ekler. Codex bir ! metnini kabuk komutu olarak çalıştırır. Alındı bilgisi, yalnızca Codex metinle birlikte kuyruğa alınan satırı gösterdiğinde queued yazar.

Collie bir Codex onayını tek bir tuşla yanıtlar: seçeneğin basamağı, y veya Escape. Yalnızca Codex 0.156 güven istemi gezinir. Orada Collie ok tuşlarına basar, işaretçiyi geri okur, ardından Enter tuşuna basar. Bir Codex soru iletişim kutusu da tek bir tuş alır: seçeneğin basamağı. Codex 0.163.0 sürümünde basamak anında yanıtlar. Son soruda tüm yanıtları gönderir.

Harness profilleri

Collie, telefondan bir mesaj göndermeden önce bir aracının giriş kutusunu denetler. Bir profil dosyası, bu kutuyu tek bir aracı için tanımlar. Kutunun nerede başlayıp bittiğini belirtir. Bir taslağın nasıl göründüğünü, hangi tuşun gönderdiğini ve uzun bir yapıştırma için aracının hangi metni çizdiğini belirtir. Düz bir kabuk ve profili olmayan bir aracı yine de gönderimleri kabul eder. Collie bunların giriş kutusunu okuyamaz; bu nedenle denetim yapmadan metni yazar ve her seferinde bir satır olacak şekilde Enter tuşuna basar. Yalnızca son satırlardaki bir parola istemi bunu durdurur: Collie oraya hiçbir şey yazmaz ve telefon Type seçeneğini sunar.

AracıTur sırasında EnterGönderme tuşuSondaDenetlenen hedef
OpenCodeİletiyi kuyruğa alırEnterEvet1.18.33
piSırayı yönlendirir; Alt+Enter kuyruğa alırAlt+Enter, Windows'ta Ctrl+QKısa metinler yazar ve bir sıranın içine gönderir1.1.0
OMPSırayı yönlendirir; Ctrl+Q kuyruğa alırCtrl+QEvet18.4.10
GrokÖlçülmediEnterEvet1.0.41
Antigravity (agy)ÖlçülmediEnterEvet1.1.17 ekranları
MuseÖlçülmediEnterEvet1.4.7
Hermes (klasik CLI)Varsayılan olarak turu keser; Hermes'in /busy ayarı bunu kuyruğa alabilir veya yönlendirebilirEnterEvet0.22.2
Cursor CLI (cursor-agent)İletiyi kuyruğa alırEnterEvet2026.10.16
Kiro (kiro-cli)Turu yönlendirir; Collie tur bitene kadar gönderimi bekletirEnterKısa metinler2.32.0

/model gibi bir komut her zaman Enter ile gider. Yoklamalı bir gönderim önce fazladan bir karakter yazar. Collie karakterin kutuya ulaştığını doğrular, ardından karakteri kaldırır.

  • OpenCode, kutusunu bir ╹▀▀▀ çizgisiyle kapatılan ┃ satırlık bir sütun olarak çizer. Collie kutuyu bu satırlardan bulur. Çalışan bir sıranın içine gönderilen ileti, dökümde QUEUED rozetiyle bekler. Yeni satır Ctrl+J olarak girer. Collie, kutunun gösterebileceğinden daha uzun iletileri geri okuyamadığı için reddeder.
  • pi, kutusunu komut istemi işareti olmayan iki çizgi arasına çizer. Collie bunu çizgi çiftinden ve pi'nin altına çizdiği durum satırından bulur. Bir pi iletişim kutusu aynı iki çizgi arasında açılır. Bu nedenle Collie tuş ipuçlarını ve listeyi üst çizgiden aşağıya doğru okur. pi içinde Enter çalışan bir sırayı yönlendirir; ancak Alt+Enter boştaki kutuda gönderir ve bir sıranın içinde kuyruğa alır. Bu yüzden Collie Alt+Enter ile, Windows'ta ise Ctrl+Q ile gönderir. pi, kuyruğa alınmış bir iletiyi kutunun üstünde Follow-up: satırı olarak gösterir. 30 satırdan daha yüksek bir kutu, kutu olarak okunmaz. Ekran bilinmeyen olarak okunur ve gönderim için dokunmanız gerekir.
  • OMP kutusunun kenarlık stilini seçmenize izin verir, böylece Collie bunlardan beşini tanır. Biri, üstünde durum satırı bulunan açık kutudur. Diğerleri bir kural çifti, alt kuralı olmayan bir kural, ortası boş bir çift ve kenarlıksız bir kutudur. Collie, OMP'nin komut istemi satırının sağ ucunda çizdiği ipucunu keser. OMP'de Enter çalışan bir turu yönlendirir, ancak Ctrl+Q boşta bir kutuda gönderir ve bir tur sırasında kuyruğa alır. Bu yüzden Collie Ctrl+Q ile gönderir. OMP kuyruğa alınan bir mesajı kutunun üstündeki bir After yield bloğunda listeler. OMP metninizin ardından soluk bir tamamlama gösterebilir. Böyle bir tamamlama ile karşılaşan bir gönderme işlemi, gönderme tuşundan önce durur ve metni kutuda bırakır. Açık kutuda OMP, uzun bir mesajın en fazla 17 satırını, yani son satırları gösterir. Collie daha sonra bu satırları yazdığı metnin sonuyla karşılaştırarak denetler ve makbuz bunu belirtir. Replace bu 17 satırı dolduran bir taslağı reddeder, çünkü Collie başlangıcını göremez. Hiçbir şey silinmez.
  • Grok, ❯ komut satırı ve altında tuş ipuçları satırı olan yuvarlatılmış bir kutu çizer. Yüksek bir taslak, kutunun sağ kenarında bir kaydırma çubuğu gösterir. Böyle bir ekran okunamayan olarak değerlendirilir, bu nedenle gönderim için dokunmanız gerekir. Kutunun üzerinde bir model listesi açılır ve kutunun parçası sayılır. Liste açık kaldığı sürece bölme asla boş olarak okunmaz.
  • Antigravity (agy), kutusunu ? for shortcuts alt bilgisine sahip bir çizgi, bir > satırı ve bir çizgi olarak çizer. Sıra, kutunun üstünde ... ve altında esc to cancel bulunan bir dönen simge satırı gösterir. Herdr bu aracı agy veya antigravity olarak adlandırır. Collie her ikisini de agy altında dosyalar.
  • Muse, kutusunu etiket taşıyabilen bir çizgi, bir ❯ satırı ve bir çizgi olarak çizer. Boş bir kutu gri bir ipucu gösterir ve Collie bu ipucunu metin yok şeklinde okur. Kutunun altında açılan bir komut paleti taslağınız olarak görünür. Kutunun altındaki arka plan görevleri listesi bilinmeyen olarak okunur ve gönderim için dokunmanız gerekir. Çalışan bir sıra, zamanlayıcı ve esc to interrupt içeren bir satır gösterir.
  • Hermes (klasik CLI; hermes --tui okunmaz) kutusunu bir çizgi, bir ❯ satırı ve bir çizgi olarak çizer. 64 sütunun altında kutunun altına çizgi çizmez. Adlandırılmış bir profil adını ❯ öncesinde gösterir. Yeni satır Alt+Enter olarak girilir: display.cli_multiline_shortcuts kapalı olduğunda Ctrl+J mesajı gönderir. Kutu en fazla sekiz satır gösterir. Daha uzun bir mesaj geri okunamaz, bu nedenle gönderim Enter öncesinde durur. Gönder bunu iletir ve telefon daha sonra gittiğini doğrulayamaz. Hermes metninizden sonra daha önceki bir mesajın geri kalanını gri renkte gösterebilir. Bu gönderim de Enter öncesinde durur ve Gönder yalnızca yazdığınızı iletir. Model seçici ve komut paleti dökümün üzerinde açılır ve bölme bunların altındayken hiçbir zaman boş okunmaz.
  • Bir tur sırasında Hermes satırını ☤ ile başlatır ve Collie turu bu işaretten okur. Enter tuşunun o sırada ne yaptığı Hermes'in kendi ayarıdır, bu nedenle Collie bir tur sırasında buna asla basmaz. Bir tur sırasındaki gönderim bekletilir ve tur bittiğinde gider. Collie yazarken bir tur başlarsa gönderim Enter öncesinde durur ve metin kutuda kalır.
  • Hermes'in soruları: bir sorunun yazılı yanıtı bir ✎ satırı açar ve telefondan yapılan bir gönderim bunu yanıtlar. Bekletilen bir mesaj asla bu satıra girmez. Soru kapanana kadar bekler, ardından bir mesaj olarak gider. Bekletilen bir mesaj beklerken yeni bir gönderim ona katılır; bu nedenle telefondan yanıtlamak için bekletileni iptal edin.
  • Cursor CLI (cursor-agent) kutusunu bir ▄ çizgisi, bir → satırı ve bir ▀ çizgisi olarak çizer. Boş bir kutu gri bir ipucu gösterir: "Plan, search, build anything" veya "Add a follow-up"; Collie bu ipucunu metin yok olarak okur. ! kutuyu kendi ipucuna sahip bir kabuk komut istemine dönüştürür. Collie bu ipucunu metin olarak okur, bu nedenle bir mesaj kabuk moduna asla geçmez. Çalışan bir tur, kutunun üzerinde Running ve → satırının sağ ucunda ctrl+c to stop gibi bir döngü satırı gösterir. Collie bu ipucunu keser. Bir tur sırasında Enter, mesajı giriş kutusunun üzerindeki bir follow-ups kutusunda kuyruğa alır. Kutu en fazla altı satır gösterir ve daha uzun bir taslağı kaydırır. Collie daha yüksek bir mesajı geri okuyamaz, bu nedenle yazılan metni kutuda bırakır ve Enter tuşuna basmaz. İletişim kutuları (bir komut onayı, bir soru, dizin güven istemi) kutunun yerini alır, bu nedenle ekran okunamaz olarak değerlendirilir. Canlı olarak yoklanan gönderimler 2026.10.14 ve 2026.10.16 tarihlerinde başarılı oldu.
  • Kiro kutusunu bir kuralın altına çizer: bir durum çubuğu, klasör, boş bir satır ve bir › komut istemi satırı. Collie yalnızca bu çerçevenin tamamı ekranda olduğunda yazar. Yeni satır Ctrl+J olarak girilir. Bir tur çalışırken komut istemi satırında Kiro is working yazar. Kiro'da Enter metni o tura yönlendirir. Collie çalışan bir tura Enter basmaz. Ctrl+S Kiro'yu yönlendirme ile kuyruğa alma arasında değiştirir, bu nedenle Collie bir kuyruk tuşu belirtmez. Böylece Collie Kiro meşgulken gönderimi bekletir ve kutuda boş yazdığında gönderir. Profili tmux veya zellij üzerinde değil, yalnızca Herdr üzerinde kontrol edildi.

Grok, Antigravity ve Muse derleme ana bilgisayarında kurulu değildir. Profilleri her bir aracının kayıtlı ekranlarına dayanır. Onlara bir profil üzerinden canlı mesaj gitmedi, bu nedenle Collie oradaki her gönderimi dener. Kimse bir tur sırasında Enter'ın onlar için ne yaptığını ölçmedi. Bu yüzden Collie ekran turun çalıştığını gösterirken gönderimi reddeder ve hiçbir şey yazmaz. Bir koşumun çalışan işareti çizmediği yerlerde Collie bunu anlayamaz ve Enter'ın ne yapacağına aracı karar verir. OpenCode ve OMP kontrol edilenin üzerindeki bir sürümde canlı gönderimleri geçti. Collie kontrol edilen aralıkta bir gönderim geçene kadar onlardaki her gönderimi dener. Hermes (klasik CLI) 0.22.2 sürümünde, aralığı içinde, yalnızca Herdr üzerinde canlı gönderimleri geçti. Ink TUI (hermes --tui veya onu başlatan bir yapılandırma) henüz okunmadı; göndermek için Type here ögesine dokunun. Yoklama her Hermes iletişim kutusunda denenmedi, bu nedenle Collie orada da her gönderimi dener.

Denetlenen sürümün üzerindeki bir sürüm çalışmaya devam eder ve makbuzda provisional yazar.

Yönlendir veya kuyruğa al

Bir aracı çalışırken, telefondan yapılan bir gönderim turu bekleyebilir veya turun içine girebilir. Send düğmesine düz bir dokunuş metninizi turdan sonrası için kuyruğa alır. Bu her aracıda geçerlidir. Collie bir turu asla kazara yönlendirmez.

Bir yönlendir tek bir gönderim için yapılan kendi seçiminizdir. Send düğmesini basılı tutun ve Yönlendir ögesine dokunun. Aracı, aynı tur içinde, geçerli araç çağrısından sonra satırı okur. Satır yalnızca aracı çalışırken ve yalnızca profilinde bir yönlendirme tuşu bulunan bir aracıda gösterilir; örneğin bugün pi, Codex ve OMP. Kutunun altındaki kısa bir ipucu dokunmanın kuyruğa aldığını, basılı tutmanın ise yönlendirdiğini belirtir. Codex hemen ardından Enter gelen bir metni yapıştırma olarak okur, bu nedenle Collie yönlendirme tuşuna basmadan önce metinden sonra bir saniye bekler.

Makbuz size ne olduğunu bildirir:

  • Yönlendirildi. Aracı satırı çalışan tura aldı. Collie aracının onu çizdiğini gördü.
  • Bunun yerine kuyruğa alındı. Yönlendirmek istemenize rağmen aracı satırı tur sonrasına sakladı. Hiçbir şey kaybolmadı.
  • Yazıldı, gönderilmedi. Metin kutuda ve yönlendirme tuşu onu göndermedi. Send ögesine dokunun veya kutuyu temizleyin.
  • Bu bölmede kullanılamaz. Aracının profilinde yönlendirme tuşu yok, Collie çalışan bir turda onun sürümüne güvenmiyor veya metin bir komut. Hiçbir şey gönderilmedi. Steer olmadan gönderin.
  • Yalnızca telefondaki bir kişi yönlendirebilir. Başka herhangi bir kaynaktan gelen yönlendirme reddedilir.

Collie yazarken tur biterse, satır normal bir gönderim olarak gider. Collie bir yönlendirmeyi bekletmez. Uzun bir yönlendirme net bir işaret olmadan bitebilir. Bu durumda makbuz Collie'nin bilmediğini söyler ve metin tekrar gönderilmez.

Bir aracının başka bir aracıya gönderdiği mesaj (Telsiz) asla yönlendirmez. Her zaman turu bekler.

Bu sayfayı GitHub üzerinde düzenleyin

The rest of the documentation