İçeriğe geç

Seçili bağlam ve açık sağlayıcılar

Bu özellikler Bee 1.1.0 ile yayımlandı ve güncel sürümde kullanılabilir. Önce bee --version ile kurulu sürümü kontrol edin. Komutlar seçilen girdileri işler; hiçbirisi tek başına kaynak kodu anlamış, testi çalıştırmış veya model maliyetini düşürmüş olduğunuzu kanıtlamaz.

context packet, tek checkout içindeki açıkça seçilmiş dosya ve satırları okur. Model çağırmaz, veritabanı başlatmaz veya grafiği yenilemez. Görev için gerekli aralığı seçin; gerekiyorsa önce kod grafiği ile sembolü bulun. Aşağıdaki selection.json dosyası gerçek yollar ve aralıklarla düzenlenmelidir:

{
"selections": [
{"id":"rules","path":"AGENTS.md","required":true},
{"id":"source","path":"src/Example.cs","representation":"body",
"startLine":10,"endLine":30,"dependsOn":["rules"]}
]
}
Terminal window
bee context packet --root /absolute/checkout --manifest selection.json --budget 8192

--budget tüm UTF-8 JSON paketini ve son satır sonunu kapsar. Zorunlu kaynaklar ve bağımlılıkları sığmalıdır; çok küçük bütçe çıkış 5 ve açıklamalı stderr üretir. complete, omitted, kaynak hashleri ve gerçek aralıkları kontrol edin. --cache-dir DIR isteğe bağlı özel yerel cache yazar; her istekte kaynak hashleri yine doğrulanır. Cache isabeti sağlayıcı token tasarrufu değildir. bee mcp serve içindeki salt okunur bee_context_packet aynı seçimi manifestJson ile alır; araç çıktı bütçesi tüm serileştirilmiş sonucu kapsar.

Asıl komutun stdout/stderr dosyalarını ve gerçek çıkış kodunu önce siz saklayın. output reduce komutu testleri tekrar çalıştırmaz; capture.json içindeki göreli dosya yollarını okur:

{"argv":["dotnet","test"],"cwd":"/absolute/checkout","exitCode":1,
"stdoutPath":"test.stdout","stderrPath":"test.stderr","captureComplete":true}
Terminal window
bee output reduce --manifest capture.json --store /private/raw-output --budget 8192 > reduced.json
bee output recover --packet reduced.json --out /private/recovered-run

Kaynak yakalama toplam 8 MiB ile sınırlıdır. Kısmi yakalamada captureComplete: false yazın. Küçültme özeti tanısal satırları önceler, atlananları sayar ve özgün iki akışı hashli özel eserde saklar. Başarılı küçültme, asıl komutun başarılı olduğu anlamına gelmez. recover hashleri doğrular, yeni dizine tam stdout.bin ve stderr.bin yazar; mevcut hedefi reddeder. Hatalı yazma kısmi dizin bırakabilir; teslim için başarılı receipt gerekir.

Profil protokolü, modeli, kimlik doğrulamayı, çalışma dizinini ve native istemcide çalıştırılabilir dosyayı açıkça seçer. Bee başka modele veya kimlik doğrulama yöntemine sessizce geçmez. Yerel Ollama örneği:

{"profiles":[{"id":"local-model","provider":"ollama","protocol":"OllamaChat",
"model":"your-installed-model","authMode":"None",
"workingDirectory":"/absolute/checkout","endpoint":"http://localhost:11434"}],
"aliases":{"local":"local-model"}}
Terminal window
bee providers inspect --profiles profiles.json --profile local
bee providers run --profiles profiles.json --profile local --context selection.json --prompt-file question.txt --budget 8192
bee providers run --profiles profiles.json --profile local --context selection.json --prompt-file question.txt --stream --json

inspect yalnız profil şeklini denetler; runnable: not_verified gerçek model erişimi değildir. run yerel paketi hazırlar ve seçilen sağlayıcıyı bir kez çağırır; zorunlu bağlam eksikse çağrı başlamaz. Receipt kaynak ve kullanım bilgilerini ayrı verir. --session-out NEW_FILE özel konuşma durumunu kaydeder; aynı profil bağıyla --session FILE sürdürür. Başarısız kayıt sonrası model çağrısı tekrarlanmaz. --budget giriş paketini sınırlarken yanıtı ve receipt’i sınırlamaz.

Canlı yanıt için --stream ve betiklerde ayrıca --json kullanın. JSON akışı InvocationStarted, TextDelta, InvocationFinished olaylarını verir; parçaları bir kez gösterin, son receipt ile çıkış kodunu denetleyin. Ctrl+C uzak sağlayıcı faturasının duracağını garanti etmez. API anahtarı profil/argv içine yazılmaz: secretSource çevre değişkeni veya mevcut vault referansı kullanır; API uç noktası HTTPS ya da açık loopback olmalıdır. Native hesap profili NativeAccount ve açık nativeHome kullanır; inceleme kimlik doğrulamasını kanıtlamaz.

Desteklenen API protokolleri OpenAiResponses, OpenAiChatCompletions, AnthropicMessages, GeminiGenerateContent, GeminiInteractions, AntigravityInteractions ve OllamaChat’tir. API streaming; OpenAI, Anthropic, Gemini ve Ollama yollarında desteklenir. Native protokoller Codex, ClaudeCode, GeminiCli ve AntigravityCli’dir; ilk üçünde stream desteklenir. Antigravity stream için Unsupported döner. Codex stream, kurulu istemcinin app-server yolunu ve NativeAccount gerektirir; korunamayan native seçenekler çağrıdan önce reddedilir.

secretSource: {"kind":"environment","name":"VARIABLE"} veya mevcut vault referansı ile authMode: "ApiKey" kullanın. Profilin maxInputBytes varsayılanı 1 MiB, üst sınırı 16 MiB’dir; tüm serileştirilmiş devam oturumu dosyası da bu sınıra tabidir. savedPath: null kayıt teslim edilmedi demektir. Kaydedilen oturum dosyası konuşma verisi içerir ve özel tutulmalıdır. Native Claude Code varsayılan hesabında nativeHomeMode: "Default" ile gerçek varsayılan ~/.claude yolunu açıkça seçin; Explicit ayrı yapılandırma namespace’idir. Profil inceleme, hesabın giriş yaptığını veya model hakkını kanıtlamaz.

worker summarize ayrıca model çağırır; özet kayıplıdır. Girdi --context-budget, tüm worker JSON yanıtı --budget ile sınırlanır. context.complete, selectionComplete ve atlanan öğeleri okuyun. Native özet --allow-native-authority ister; native istemcinin izinleri aktiftir. Yönetilen ajan özeti yetki doğrulaması olmadığı için reddedilir.

Terminal window
bee worker summarize --profiles profiles.json --profile local --context selection.json --prompt-file summary-request.txt --context-budget 8192 --budget 6000
bee worker generate --profiles profiles.json --profile local --context selection.json --prompt-file generation-request.txt --store /private/worker-artifacts --target src/Example.cs --expected-sha256 TARGET_SHA --budget 16384 --diff-budget 4096
bee worker apply --store /private/worker-artifacts --root /absolute/checkout --target src/Example.cs --expected-sha256 TARGET_SHA --artifact ARTIFACT_ID --candidate-sha256 CANDIDATE_SHA

worker generate yalnız araçsız API profiliyle bir aday üretir. Model tek content dizesi olan JSON döndürmelidir. Çıktı özel depoya yazılır, hedef değişmez. Tam adayı inceleyin, receipt içindeki artifact.id ve candidateSha256 değerlerini apply komutuna verin. apply kaynak/hedef/adayı hashlerle doğrular ve model çağırmaz; normal dosya sistemi compare-and-swap garantisi yoktur. Yeni dosyada iki adımda da --expected-sha256 absent kullanılır. Aday en çok 256 KiB, komut talimatı 64 KiB ve diff 16 KiB olabilir. Başarısız veya boş stdout sıfır model kullanımı kanıtı değildir.

bee context claude-hook-config --root /absolute/checkout, Claude Code için isteğe bağlı ayar parçası yazdırır; hiçbir ayarı kurmaz/değiştirmez. Hook, en az 32 KiB kaynağın sınırsız Read çağrısını açık bağlam seçimine yönlendirir; normal host izinlerini atlamaz. Codex/Hermes için genel çıktı değiştirme hook’u iddia edilmez; CLI/MCP paketlerini açıkça kullanın. Gelişmiş CLI ve komut referansı diğer yerel işlemleri kapsar.

Paket bütçesi tüm UTF-8 JSON çıktısını ve son satır sonunu kapsar. Zorunlu seçimin bağımlılık kapanışı bütünüyle sığmalıdır. Metadata bile sığmazsa Bee stdout üretmez, çıkış kodu 5 döner ve stderr daraltma önerir. complete, omitted, gerçek satır aralıkları ve kaynak hash’lerini kontrol edin. Yerel token tahmini sağlayıcı kullanımı değildir; kaynak dosyasındaki komutlar çalışma yetkisi vermez.

İsteğe bağlı –cache-dir /private/bee-context-cache seçili metni özel bir yerel önbelleğe yazar. Bee her istekte kaynak hash’ini yeniden doğrular; önbellek isabeti sağlayıcı token tasarrufu kanıtı değildir. Dizini silerek önbelleği atabilirsiniz. Önbellek makbuzu stderr’e yazılır ve stdout bütçesine dahil değildir. Seçenek yoksa önbellek yazılmaz; salt okunur MCP aracı bunu kullanmaz.

MCP bee_context_packet aracı manifestJson içinde aynı seçimi alır; kökü sunucunun başlangıç checkout’udur. budgetBytes 512–262144 aralığındadır ve JSON kaçışları ile metadata dahil bütün serileştirilmiş araç sonucunu sınırlar; JSON-RPC çerçevesini kapsamaz. Paketin kendi budgetBytes alanı daha küçük içerik sınırıdır. Bu yerel araca Bee initialization veya kimlik doğrulama gerekmez. MCP başvurusu diğer araçları açıklar.

capture.json içindeki çıktı yolları manifest’e görelidir. Toplam yakalama girdisi 8 MiB ile sınırlıdır. Eksik yakalamada captureComplete değerini false yapın. Azaltma tanı bloklarına öncelik verir, atlanan tanı satırlarını bildirir, iki ham akışı hash’li özel artefaktta tutar. Saklama başarısızsa orijinal dosyaları koruyun. Azaltma başarısı yakalanan komutun başarılı olduğu anlamına gelmez.

output recover, artefakt ve iki akış hash’ini kontrol ettikten sonra yeni dizine stdout.bin ve stderr.bin yazar; mevcut hedefi reddeder. Makbuz orijinal exitCode, signal ve captureComplete değerlerini taşır. Dosyalar ikili veri içerebilir. Yazma hatası eksik hedef dizini bırakabilir; teslimi yalnız başarılı makbuz doğrular. Azaltılmış tanılar eksikse ham akışı geri alın.

Sağlayıcı yürütmesi açık bir çağrıdır ve ücret veya yerel araç faaliyeti doğurabilir. Profil protokolü, modeli, kimlik doğrulamayı, çalışma dizinini; yerel istemcide yürütülebilir dosyayı ve hesap evini sabitler. Bee başka sağlayıcı, model, hesap veya ücretli API’ye otomatik geçmez. providers inspect yalnız profil şeklini denetler: runnable not_verified, giriş veya model erişimi kanıtı değildir. Bunun için başarılı bir providers run makbuzu gerekir.

API profili örneği; model ve hesabı kendi ortamınıza göre doğrulayın:

{
"profiles": [{
"id": "openai-api", "provider": "openai", "protocol": "OpenAiResponses",
"model": "gpt-6", "authMode": "ApiKey",
"secretSource": { "kind": "environment", "name": "TOOL_OPENAI" },
"workingDirectory": "/absolute/checkout",
"endpoint": "https://api.openai.com/v1/",
"maxInputBytes": 1048576, "maxOutputBytes": 1048576,
"maxOutputTokens": 4096, "timeout": "00:05:00"
}]
}

secretSource, environment değişkenine veya var olan vault girdisine işaret eder; anahtar değeri profil veya argümana yazılmaz. Vault okuması mevcut kimliği kullanır; anahtar oluşturmaz/döndürmez. API endpoint’i HTTPS olmalıdır; açık loopback istisnadır. API protokolleri OpenAiResponses, OpenAiChatCompletions, AnthropicMessages, GeminiGenerateContent, GeminiInteractions, AntigravityInteractions, OllamaChat’tir. Yönetilen AntigravityInteractions ayrıca managedAgent ister; bu ajan kimliği, model ise istenen modeldir. API oturumları Microsoft Agent Framework kullanır; framework tool loop desteklenmez.

Yerel Codex’te shell alias’ı değil gerçek binary ve mevcut hesap evini seçin:

{
"profiles": [{
"id": "codex-account", "provider": "openai", "protocol": "Codex",
"model": "gpt-6", "authMode": "NativeAccount",
"workingDirectory": "/absolute/checkout",
"executable": "/absolute/path/to/codex",
"nativeHome": "/absolute/private/codex-home",
"arguments": ["--sandbox", "read-only", "--config", "model_reasoning_effort=\"xhigh\""]
}],
"aliases": { "codex-external": "codex-account" }
}

Yerel protokoller Codex, ClaudeCode, GeminiCli ve AntigravityCli’dir. Adapter model, auth, çıktı biçimi ve devam bayraklarını kendisi yönetir; yalnız doğrulanmış ek seçenekleri kabul eder. arguments içine login, secret veya model override koymayın. Güven ve izin hataları hata kalır; Bee login yapmaz, trust ayarı değiştirmez veya ücretli API’ye geçmez. AntigravityCli için özel home seçimi desteklenmez.

Claude Code’un varsayılan hesap depolaması ayrı native keychain ad alanıdır. Gerçek varsayılan hesap için şu açık bağlamayı kullanın:

{
"profiles": [{
"id": "claude-default-account", "provider": "anthropic", "protocol": "ClaudeCode",
"model": "your-entitled-model", "authMode": "NativeAccount",
"workingDirectory": "/absolute/checkout",
"executable": "/absolute/path/to/claude",
"nativeHome": "/absolute/your-home/.claude", "nativeHomeMode": "Default",
"arguments": ["--permission-mode", "plan", "--tools", ""]
}]
}

Bee, Claude config override’larını kaldırmadan önce yolun mevcut kullanıcının varsayılanına eşit olduğunu denetler. Varsayılan nativeHomeMode Explicit, yol metni aynı olsa bile override ad alanını seçer. Auth hatasında iki mod arasında otomatik geçiş yoktur. Eski profillerin bağlaması korunur; Default şimdilik yalnız ClaudeCode yerel hesabında desteklenir.

Terminal window
bee providers run --profiles profiles.json --profile openai-api \
--context selection.json --prompt-file question.txt --stream
bee providers run --profiles profiles.json --profile openai-api \
--context selection.json --prompt-file question.txt --stream --json

JSON akışı InvocationStarted, sıfır veya çok sayıda TextDelta ve InvocationFinished üretir. Her textDelta bir kez gösterilir; son receipt sağlayıcı metnini tekrar etmez. Kısmi metin geçicidir: son makbuz ve süreç çıkış kodunu kontrol edin. Girdi hatası sağlayıcı başlamadan bitirebilir. Akışsız kullanım tek JSON makbuzunu korur. Ctrl+C uzak üretim veya faturalamanın durduğunu garanti etmez.

API akışı OpenAiResponses, OpenAiChatCompletions, AnthropicMessages, GeminiGenerateContent, GeminiInteractions, OllamaChat’te; yerel akış ClaudeCode, GeminiCli, Codex’te vardır. AntigravityCli ve AntigravityInteractions akışta Unsupported verir. Codex akışı kurulu app-server arayüzü ve NativeAccount kullanır; açık –sandbox ile -c/–config model_reasoning_effort ayarını taşır, korunamayan yerel bayrakları çağrıdan önce reddeder. Akışsız Codex exec kullanır. inspect protokolün ilan edilen kabiliyetini gösterir; hesap/istemciyi gerçek run ile sınayın.

–session-out NEW_FILE özel devam dosyası kaydeder; –session FILE yalnız aynı profil bağlamasıyla yükler. Mevcut dosya üzerine yazılmaz. maxInputBytes varsayılan 1 MiB, en çok 16 MiB’dir; dış zarf ve JSON kaçışlarıyla bütün serileştirilmiş oturum dosyasını da sınırlar. Manifestler için ayrı 256 KiB sınırı vardır. Kaydetme çağrıdan sonra başarısızsa Bee modeli tekrar çağırmaz; gerçek metin, kullanım ve çağrı ID’si receipt’te kalır. savedPath null teslim edilmediğini, returnedWithSuccessfulTurn ise devamın başarılı turla gelip gelmediğini gösterir. –cache-dir isabeti yalnız localCache.status içinde yerel azaltmayı anlatır; sağlayıcı yine çağrılır. run –budget yanıtı değil giriş bağlam paketini sınırlar.

worker summarize için context.complete, selectionComplete, atlanan kaynak satır/öğeleri ve summaryOmittedBytes alanlarını kontrol edin. Yerel token tahmini worker talimatını, çerçeveyi, çıktıyı veya sağlayıcı faturasını kapsamaz. Native özet –allow-native-authority ister; istemcinin mevcut araç/yazma izinleri etkin kalır ve Bee salt okunur sandbox sağlamaz. AntigravityInteractions yönetilen ajan özeti yetki doğrulanmadığı için çağrıdan önce reddedilir. Başarısız yardımcı çağrılar toplam tüketimden çıkarılmaz.

Hedef SHA-256’sını önce alın ve gerçek küçük harfli hash’i TARGET_SHA yerine koyun:

Terminal window
shasum -a 256 src/Example.cs
bee worker generate --profiles profiles.json --profile local \
--context selection.json --prompt-file generation-request.txt \
--store /private/worker-artifacts --target src/Example.cs \
--expected-sha256 TARGET_SHA --budget 16384 --diff-budget 4096

Talimat dosyası istenen içeriği tarif eder. Model yalnız string content alanı olan tek JSON nesnesi döndürür. Bee özel adayı ve manifest/hash’ini kaydeder, sınırlı diff kesiti verir; hedef değişmez. artifact.candidatePath içindeki tam adayı inceleyin; diff çalıştırılabilir patch değildir. Native ve yönetilen aday üretimi, araç/yazma yetkisi sınırlandırılamadığı için desteklenmez; araçsız API profili kullanın.

Makbuzdaki artifact.id ve artifact.candidateSha256 değerlerini aynı özgün hedef hash’iyle apply’a verin. Yeni dosyada hem generate hem apply için –expected-sha256 absent kullanın; üst dizinler önceden var olmalıdır. apply kaynak/hedef/aday hash’lerini kontrol eder, değişmiş girdiyi reddeder ve model çağırmaz. Snapshot denetimi ile atomik değiştirme, dosya sistemi compare-and-swap garantisi değildir. Aday 256 KiB, CLI talimatı 64 KiB, diff 16 KiB, worker stdout 1 MiB ile sınırlıdır. Çağrı sonrası receipt stdout’a sığmazsa stderr çağrı ve artefakt referansını korur. Unix’te özel olmayan depo reddedilir; Windows ACL gizliliği bağımsız doğrulanmamıştır.

Claude ayar parçasını inceleyerek hedef proje ayarına ekleyin. Hook en az 32 KiB kaynak dosyasında sınırsız Read isteğinde yalnız metadata denetler; host izninden önce metin okumaz/enjekte etmez. Offset/limit okumaları, dokümanlar ve talimat dosyaları normal izin akışında kalır. Yönlendirme hatası bunu bozmaz. Komutun ve yazdırılan host ayarının timeout’u iki saniyedir; hook model çağırmaz veya graph oluşturmaz.

Host Kullanım Sınır
Claude Code İsteğe bağlı PreToolUse yönlendirmesi ve CLI/MCP paketi Sonraki araç çağrısı ayrıca yapılır; üretilen parça POSIX shell hedefler.
Codex Açık CLI/MCP paketi Genel sonuç değiştirme hook’u iddia edilmez.
Hermes Açık CLI/MCP paketi Mevcut retained-context ayrıdır; genel interception kurulmaz.