İçeriğe geç

AI oturumlarıyla birlikte çalışma

İpuçları MQTT QoS 2 ile aktarılır. Ajan bağlamına enjeksiyon mevcut Mongo teslim claim’iyle en fazla bir kez yapılır. Harness çağrısı sırasında çökme olursa teslim uncertain olur ve otomatik tekrarlanmaz; yalnız alıcı açıkça isterse yeniden gönderilir. Sadece worker sınırlı süreli kalıcı broker oturumu kullanır; publisher ve doctor probe’u temiz oturum ve rastgele kimlikle kalır. bee collaborate doctor QoS düşürülmesini bildirir; teslim Mongo polling ile sürer. İpucu yayınlanmadan süresi dolan mesajların da her alıcısı için sonuç kaydedilir.

Bee Collaborate, mevcut AI oturumlarını MQTT ve ortak MongoDB üzerinden bağlar. Harness destekliyorsa mesaj aynı yerel konuşmaya ulaşır ve boşta duran oturumu harekete geçirebilir. Her yerel oturum ayrı bir kimlikle kaydolur.

İlk çalıştırma ile ekibin MongoDB bağlantısını kurun. Katılımcı profiller aynı veritabanı ve collaboration space kullanır. EMQX gibi bir MQTT broker yapılandırın ve alıcıyı açık tutun:

Terminal window
bee config set collaboration.enabled true
bee config set collaboration.space my-team
bee config set mqtt.host broker.example.com
bee config set mqtt.port 8883
bee config set mqtt.tls true
bee worker

TLS varsayılan olarak açıktır; port 8883’tür. BEE_MQTT_USERNAME ve BEE_MQTT_PASSWORD değerlerini secret sağlayıcınızdan aktarın veya maskelenen mqtt.username / mqtt.password ayarlarını kullanın. Maskeleme, veritabanı şifrelemesi değildir. Broker izinleri bee/v1/<space>/... alanını kapsamalıdır. Ayar değişikliğinden sonra worker’ı yeniden başlatın.

Yerel queue --thread desteği olan canlı Codex oturumunun araç ortamında çalıştırın:

Terminal window
bee collaborate join --harness codex --name backend --native-id "$CODEX_THREAD_ID" --json
BEE_COLLABORATE_SESSION_ID='<session.id>' bee collaborate subscribe 'projects/bee/#' --json
BEE_COLLABORATE_SESSION_ID='<session.id>' bee collaborate publish projects/bee/backend --message 'API ready for review' --json

<session.id> yerine join sonucunu yazın. Sonraki komutlarda bu genel seçiciyi açıkça geçirin; ayrı shell araçları önceki export’ları taşımaz. Aynı BEE_HOME profilini kullanın. Seçici gerçek harness kimliğine bağlıdır; tekrar kullanılabilir bir credential değildir. Eski transcript, canlı oturum yerine geçmez. Ayrıldıktan veya konuşmayı değiştirdikten sonra yeniden katılın.

Aşağıdaki komutlarda da aynı oturum seçicisinin açıkça geçirildiği varsayılır:

Terminal window
bee collaborate peers --json
bee collaborate send --to '<peer-id>' --message 'Review complete' --json
bee collaborate ask --to '<peer-id>' --message 'Which API route?' --json
bee collaborate reply --request '<question-message-id>' --message 'Use /orders' --json
bee collaborate status '<message-id>' --json
bee collaborate ack --delivery '<delivery-id>' --state model_acknowledged --json
bee collaborate unsubscribe 'projects/bee/#' --json
bee collaborate leave --json

publish topic notu, send kişiye mesaj, ask/reply bağlantılı soru ve cevap oluşturur. Topic filtrelerinde + ve sonda # desteklenir; yayın topic’i somut olmalıdır. Sonradan abone olmak eski işleri tekrar oynatmaz. Gelen metin, sahibin ve harness’in mevcut talimatları altında değerlendirilen dış katılımcı içeriğidir.

bee who --json --limit 20, oturum katılırken kaydedilen makine, işletim sistemi, harness ve Bee sürümünü içerir. Lease ve stale durumu bu tanıtıcı alanlardan ayrıdır; presence, modelin mesajı okuduğunu kanıtlamaz.

Terminal window
bee collaborate inbox --since 2h --limit 20 --json
bee collaborate inbox --all --limit 20 --json
bee collaborate group list --limit 20 --json
bee collaborate group members projects/bee --limit 20 --json
bee collaborate group history projects/bee --limit 20 --json

Katılmış native konuşma içinde, o oturumun seçicisiyle çalıştırın. Gelen kutusunu okumak teslimatı üstlenmez, onaylamaz, etkinleştirmez veya silmez. --all, bu oturumun onaylanmış gelen mesajlarını da içerir. Geçmiş için mevcut generation’da tam konuya aktif abonelik gerekir; wildcard aboneliği geçmişe erişim sağlamaz.

Grup ve üye listesi varsayılan 20 kayıt döndürür, 1–100 kabul eder; shown, hasMore ve omissions bildirir. Gelen kutusu ve geçmiş varsayılan 50 mesaj döndürür, 1–500 kabul eder. Düz metin en fazla 160 karakterlik önizleme sunar; JSON tam mesaj gövdesini içerir. Oturum alanları ve düz metin önizlemeleri terminal kontrol karakterlerini temizler. Bağlamı dar tutmak için küçük bir limit seçin.

  • Codex CLI/TUI: kayıtlı canlı konuşmanın yerel kuyruğu kullanılır. macOS/Linux’ta lsof ve writer lock ile sahiplik kontrol edilir; Windows wake uygulanmadı. Windows Codex katılımı, yerel kimlik, binding veya uzak oturum oluşturmadan önce unsupported_platform ve çıkış kodu 5 ile reddedilir. Windows Codex teslim desteği eklenmez.
  • Claude Code: oturumun MCP ayarında Bee Channel sunucusu (bee collaborate channel), Channels izni ve yaşam döngüsü hook’ları gerekir. Sadece MCP kaydı yeterli değildir. Channel, kendisine sahip olan host’u, CLAUDE_PID değişkeni varsa ondan, yoksa işletim sisteminin üst sürecinden kanıtlar. Claude, CLAUDE_PID değerini hook ve shell alt süreçlerine verir, MCP sunucusu alt süreçlerine vermez; bu yüzden bir MCP sunucusu her zaman üst süreç yolunu izler. Windows bu aramaya 1.0.0-beta.10 ile kavuştu; önceki Windows derlemeleri başlangıçta boş bir stdout ile çıkıyordu ve MCP istemcileri bunu yalnızca kapanmış bağlantı olarak bildirir. Yapılandırma örneği aşağıdadır.
  • Hermes CLI: bee collaborate install-hermes --home /path/to/hermes-home plugin dosyalarını kurar. Aynı profilde hermes plugins enable bee-collaborate --no-allow-tool-override ile etkinleştirip doğru HERMES_HOME ve BEE_HOME ile yeniden başlatın. İlk bee_* aracı asıl CLI konuşmasına katılır. Gateway/Desktop teslimi bu adaptörün kapsamında değildir.

Alıcı sürecin beklenmedik kapanışı, MCP el sıkışması tamamlanmadan önce de kanalı çıkış kodu 1 ile durdurur. El sıkışmasından sonra alıcı EOF, G/Ç hatası veya açık hata sonucu da kanalı durdurur. Tanılar stderr üzerinden verilir. Kapanış, sınırlı beklemeler içinde generation kontrolüyle leave dener. Teslim durumlarının anlamı korunur; transport yazımı modelin mesajı okuduğunun kanıtı değildir.

Bee, MQTT bildirimi göndermeden önce mesajı ve alıcıları kaydeder. Bildirim yeniden gönderilebilir; kalıcı alıcı durumu yinelenen bildirimin ikinci bir yerel teslim oluşturmasını önler. transport_written, host_accepted, model_acknowledged ve bağlantılı cevap ayrı kanıt düzeyleridir. Broker onayı, modelin mesajı okuduğunu kanıtlamaz.

Süreç çökmesi sırasında belirsiz teslim uncertain olur; modelin tam bir kez çalışması garanti edilmez. İşlerin süresi dolar; yerel profilde alıcı kaydı başına 60 saniyelik pencerede en fazla 30 uygun teslim denenir. Bu model token bütçesi değildir. MQTT haberleşmesi, ayrı A2A protokolüne uygunluk iddiası taşımaz.

İlk bloğu .mcp.json, ikinciyi .claude/settings.json içine mevcut kayıtları koruyarak ekleyin. Tam yolları değiştirin; worker ile aynı BEE_HOME kullanın. Hook komutları macOS/Linux içindir. CLAUDE_CODE_SESSION_ID değerini kendiniz ayarlamayın; canlı host sağlar. Channels önizlemesinde yerel geliştirme izni gerekir. Normal araç izinleri ve organizasyon politikası geçerlidir. Konuşma değişince yeniden abone olmadan önce MCP sunucusunu bağlayın veya Claude’u yeniden başlatın. Modelden bee_subscribe kullanmasını isteyin; bee_publish, bee_send, bee_ask, bee_reply, bee_peers, bee_ack aynı oturumda çalışır.

{
"mcpServers": {
"bee-collaborate": {
"command": "/absolute/path/to/bee",
"args": ["collaborate", "channel"],
"env": { "BEE_HOME": "/absolute/path/to/bee-profile" }
}
}
}
{
"hooks": {
"SessionStart": [{ "hooks": [{
"type": "command",
"command": "BEE_HOME='/absolute/path/to/bee-profile' '/absolute/path/to/bee' collaborate channel-hook --event SessionStart"
}] }],
"SessionEnd": [{ "hooks": [{
"type": "command",
"command": "BEE_HOME='/absolute/path/to/bee-profile' '/absolute/path/to/bee' collaborate channel-hook --event SessionEnd"
}] }]
}
}

Windows’ta VAR='value' command geçerli bir shell sözdizimi değildir; bu yüzden hook komutları BEE_HOME taşımaz ve kullanıcının ana dizinindeki varsayılan profil kullanılır. Eğik çizgi kullanmak JSON kaçışlarına gerek bırakmaz.

{
"hooks": {
"SessionStart": [{ "hooks": [{
"type": "command",
"command": "\"C:/absolute/path/to/bee.exe\" collaborate channel-hook --event SessionStart"
}] }],
"SessionEnd": [{ "hooks": [{
"type": "command",
"command": "\"C:/absolute/path/to/bee.exe\" collaborate channel-hook --event SessionEnd"
}] }]
}
}

MCP command değeri olarak bir .cmd shim’i kullanılamaz: Node tabanlı MCP istemcileri çalıştırılabilir dosyayı doğrudan spawn eder ve bunu reddeder. Gerçek bee.exe dosyasını ya da kurulu araç klasörüne işaret eden kalıcı bir dizin bağlantısını gösterin; böylece yol güncellemelerden sonra da geçerli kalır.

Terminal window
claude --dangerously-load-development-channels server:bee-collaborate

Bu dosyaları elle yazmak istemiyor musunuz? Ajandan yapmasını isteyin →

Katıldıktan sonra bee collaborate work set --repo bee --branch feature/example --task "Testleri incele" kullanın. Eksik repo/dal alanları geçerli Git worktree’den bulunur; görev metni tahmin edilmez.

bee who --json --limit 20, kapanmamış oturumları gösterir; süresi dolan lease’ler stale olarak işaretlenir. Varsayılan limit 20, kabul edilen aralık 1–100’dür. shown, hasMore, omissions.recordsAtLeast ve satırdaki truncatedFields, toplam atlanan sayısını uydurmadan sınırları açıklar. Görev en fazla 512 UTF-16 karakter; repo/dal 256, worktree 1024 karakter olabilir. Yeni iş girişinde kontrol karakterleri reddedilir; düz liste çıktısında temizlenir.

Worktree yolu ve görev açıklaması yapılandırılan alanla paylaşılır. Güncelleme mevcut çağıran kimliğini ve canlı oturum kontrollerini gerektirir. Yeniden bağlanma başarılı iş güncellemelerini korur. Bunlar oturum bilgileridir; otomatik görev ataması veya işin bittiğine dair kanıt değildir.

Bir eş listede göründüğü halde iş konuşmasına ulaşmıyorsa bu sırayı kullanın. Yukarıdaki depo/broker ve yerel ajan ortamı gerekir. Komutlar yardım/kaynak üzerinden doğrulanmış örneklerdir; canlı mesajlaşma kaydı değildir. Seçicileri kendi dönen kimliklerinizle değiştirin.

Önce bu okumaları yapın; her ayrı kabuk çağrısında BEE_COLLABORATE_SESSION_ID açıkça bulunsun:

Terminal window
BEE_COLLABORATE_SESSION_ID='<session.id>' bee collaborate inbox --since 2h --limit 20 --json
BEE_COLLABORATE_SESSION_ID='<session.id>' bee collaborate status '<message-id>' --json
bee who --json --limit 20

Inbox okumak ACK değildir. Publish/send çıkışının başarılı olması eşin okuduğunu değil işlemin kabul edildiğini gösterir. transport_written taşıma yazımını, host_accepted ortam kabulünü, model_acknowledged alıcının onayını kaydeder. İlişkili yanıt cevap kanıtıdır; görevin veya QA’nın geçtiğini göstermez. Alıcı iletimi gerçekten tükettikten sonra onaylayın; uyarıyı kapatmak için ACK üretmeyin.

Presence eskiyse sahibi olan canlı konuşmayı toparlayıp oradan yeniden katılın. Yeni seçiciyi kullanın; başka thread’in bağlamasını kullanmayın. Ayrılma veya konuşma değişiminden sonra join ve subscribe tekrarlanır. Broker/ayar değişince worker’ı yeniden başlatın. Kanal/receiver kapanış tanıları için stderr’e bakın. uncertain, çökme sırasında çalıştırmanın doğrulanamadığını gösterir: iki kez çalışabilecek işi yeniden göndermeden önce durumu inceleyip alıcıyla netleştirin.

Komut hataları geçersiz kullanım (4), bulunamadı (3), devre dışı/kullanılamıyor/desteklenmeyen platform (5) ve çatışmayı (8) ayırır; diğer retler 1 olabilir. JSON hata kodunu da okuyun. Windows Codex unsupported_platform, yeniden join veya uydurma native ID ile düzelmez. Destek bölümündeki ortam/platformu kullanın. receive aktif tüketicidir; salt okunur incelemede inbox kullanın.

İş bitince aynı kimlikle unsubscribe ve leave yapın. Bağımlılık takibi için kayıtlı planlar kullanın; mesaj göndermez ve sonuç onaylamaz. Talimat iletimi soruları için davranış yönetimine bakın.