cc_server CLI
Her süreç bayrağı bir CLI bayrağı ya da bir ortam değişkeni alır; önce bayrak, sonra ortam, en son varsayılan geçerlidir. Üçüncü taraf kimlik bilgileri bunun istisnasıdır — aşağıya bakın.
Çekirdek
Bölüm başlığı “Çekirdek”| Bayrak | Ortam | Varsayılan | Anlam |
|---|---|---|---|
--data-dir |
CC_SERVER_DATA_DIR |
işletim sisteminin kullanıcı başına uygulama verisi dizini (aşağıya bakın) | Veritabanları, sırlar, modeller ve önbelleğe alınmış medya |
--port |
CC_SERVER_PORT |
9030 |
TCP bağlantı noktası (0 = geçici) |
--bind |
CC_SERVER_BIND |
loopback |
loopback ya da tüm arayüzler için any/all/0.0.0.0 (TLS ya da --insecure gerektirir) |
--repo-roots |
CC_SERVER_REPO_ROOTS |
sunucu kullanıcısının ana dizini | Bir istemcinin depo kaydederken göz atabileceği, virgülle ayrılmış temel dizinler. Bir kökün üstüne göz atmak reddedilir |
--log-level |
CC_SERVER_LOG_LEVEL |
warning |
debug, info, warning ya da error. Başlatma/hazır satırları her zaman yazdırılır |
--server-name |
CC_SERVER_NAME |
makinenin ana makine adı | Seçicilerde, keşif ve eşleştirme yüzeylerinde gösterilen ad |
Erişilebilirlik ve TLS
Bölüm başlığı “Erişilebilirlik ve TLS”| Bayrak | Ortam | Varsayılan | Anlam |
|---|---|---|---|
--tls-cert |
CC_SERVER_TLS_CERT |
ayarlı değil | PEM sertifika zinciri. Anahtarla birlikte ayarlandığında süreç içinde wss:// sunar |
--tls-key |
CC_SERVER_TLS_KEY |
ayarlı değil | Sertifikayla eşleşen PEM özel anahtarı |
--insecure |
CC_SERVER_INSECURE |
kapalı | Düz metin, loopback dışı bir bağlamaya izin verir. Yalnızca güvenilen bir ağda TLS sonlandıran bir proxy arkasında kullanın; TLS yapılandırıldığında yok sayılır |
--public-url |
CC_SERVER_PUBLIC_URL |
bağlamadan türetilir | Bu sunucunun eşleştirilmiş istemcilere duyurduğu RPC URL’si. Bir proxy, NAT ya da tünel arkasındaysanız bunu açıkça ayarlayın — varsayılan, yerel bağlamaya dair bir tahminden ibarettir |
--allowed-origins |
CC_SERVER_ALLOWED_ORIGINS |
https://app.usectrl.dev |
/rpc adresini çapraz kaynaktan arayabilecek, virgülle ayrılmış tarayıcı kaynakları. Loopback ve yerel istemcilere her zaman izin verilir |
--web-client-url |
CC_SERVER_WEB_CLIENT_URL |
ayarlı değil | Tek oturum açma geri çağrılarının döndüğü barındırılan web istemcisinin kaynağı |
--signaling-url |
CC_SERVER_SIGNALING_URL |
wss://signaling.usectrl.dev |
Doğrudan yolu olmayan bir telefonun bu sunucuya ulaşabilmesi için sunucunun katıldığı aktarma aracısı |
--mdns |
CC_SERVER_MDNS |
auto |
LAN duyurusu: auto (yalnızca loopback dışına bağlanıldığında), on, off. Keşif yalnızca varlığı duyurur — katılmak için yine de eşleştirme gerekir |
--tunnel |
CC_SERVER_TUNNEL |
off |
Yönetilen tünel sağlayıcısı: off, cloudflared, ngrok, tailscale. Herkese açık erişim isteğe bağlıdır |
--tunnel-binary |
CC_SERVER_TUNNEL_BINARY |
PATH üzerinden çözümlenir |
Açık tünel ikili yolu |
--tunnel-sha256 |
CC_SERVER_TUNNEL_SHA256 |
ayarlı değil | Bu ikiliden beklenen SHA-256; her başlatmadan önce doğrulanır |
--tunnel-args |
CC_SERVER_TUNNEL_ARGS |
boş | Tünel çağrısı için virgülle ayrılmış ek bağımsız değişkenler |
Dizinleme ve üçüncü taraf kimlik bilgileri
Bölüm başlığı “Dizinleme ve üçüncü taraf kimlik bilgileri”| Bayrak | Ortam | Varsayılan | Anlam |
|---|---|---|---|
--sandbox |
CC_SERVER_SANDBOX |
on |
Bir arka uç mevcut olduğunda ajan çalıştırmalarının ana makinenin işletim sistemi sandbox’ına sarılıp sarılmayacağı. Bir etkinleştirme değil, vazgeçme anahtarıdır — aşağıya bakın |
--code-index |
CC_SERVER_CODE_INDEX |
on |
Arka planda kod grafiği dizinlemesi için sahadaki kapatma anahtarı. off yeniden derleme olmadan temiz başlatır |
--code-index-defer |
CC_SERVER_CODE_INDEX_DEFER |
15 |
Hazır bildiriminden sonra ilk dizin taramasının bekletileceği saniye (0–300 aralığına sınırlanır) |
--tool-deferral |
CC_SERVER_TOOL_DEFERRAL |
on |
Harness çalıştırmalarının küçük bir yerleşik araç kümesi ile bir ad dizini gönderip kalanları ilk kullanımda yükleyip yüklemediği. Aşağıya bakın |
--credential-gate |
CC_SERVER_CREDENTIAL_GATE |
900 |
Kendisine hizmet edemeyen bir kimlik bilgisini bir insanın düzeltmesini beklerken bir çalıştırmanın parkta kalacağı saniye (0–3600 aralığına sınırlanır). Aşağıya bakın |
Bir kimlik bilgisi için boş değer ayarlı değil gibi okunur; böylece yerleşik geri dönüş yine geçerli olur. Kaynaktan yapılan bir derleme hiçbir yerleşik kimlik bilgisi taşımaz.
Google Calendar ve Klipy GIF seçici yalnızca ortam değişkeniyle çalışır —
--google-client-id / --klipy-app-key diye bir bayrak yoktur (bilinmeyen
bayraklar yok sayılır). GOOGLE_OAUTH_CLIENT_ID + GOOGLE_OAUTH_CLIENT_SECRET
ve KLIPY_APP_KEY değişkenlerini ortamda (ya da sunucunun yanındaki bir .env
dosyasında) ayarlayın. Boş bırakmak, başlatmayı başarısız kılmak yerine o
özelliği devre dışı bırakır.
--sandbox
Bölüm başlığı “--sandbox”Sunucu, başlangıçta ana makineyi bir kez yoklar ve bir arka uç mevcutsa ajan
komut yürütmesini işletim sisteminin yerel sandbox’ına sarar: macOS’ta
sandbox-exec (Seatbelt), Linux ve WSL2’de bwrap ile socat. Hiçbirinin
bulunmadığı yerlerde — Windows ya da bu araçlardan yoksun bir Linux ana
makinesi — çalıştırmalar ortam arındırmasına, komut politikasına ve eylem
korumalarına geri düşer ve başlangıç günlüğü hangi durumun geçerli olduğunu
söyler.
--sandbox off, yoklayıcının göremediği durum için sahadaki kapatma
anahtarıdır: sandbox profilinin kendisinin kötü davrandığı bir ana makine.
Yeniden derleme gerektirmez ve sunucu, süreç yaşadığı sürece bir uyarı günlükler;
böylece bu durum asla sessiz kalmaz.
--tool-deferral
Bölüm başlığı “--tool-deferral”Yerleşik harness çalıştırmaları, küçük bir yerleşik araç tanımı kümesi ile
kalanların yalnızca adlardan oluşan bir dizinini gönderir; bu araçlar şemalarını
ilk kullanıldıklarında yükler. Bu, araç bloğunu yaklaşık %78 küçültür ve her
zaman görünen kümeyi, modellerin araçları güvenilir biçimde seçtiği aralıkta
tutar. Ertelenen araçlar baştan sona adlarıyla çağrılabilir kalır ve search_tools
onları amaca göre bulur. Bkz. Araç bağlamı ve istem önbelleği.
--tool-deferral off, kabul edilen her aracı yeniden yerleşik hale getirir ve
sunucunun erteleme var olmadan önce yaptığı istekleri yeniden üretir. İki
katmanlı yüzeyle kötü baş eden bir model için kapatma anahtarıdır — yeniden
derleme yerine bir bayrak. Yalnızca yerleşik harness’ı etkiler; dış istemcilerin
MCP tools/list üzerinden gördüğü şey her zaman tam katalogdur.
--credential-gate
Bölüm başlığı “--credential-gate”Sağlayıcı kimlik bilgisi eksik ya da tükenmiş bir çalıştırma, başarısız kılmak yerine park edilir: operatöre bunu düzeltmesi için bir istem gösterilir ve operatör düzeltirse çalıştırma kaldığı yerden devam eder. Varsayılan süre 900 saniyedir (15 dakika) ve 0–3600 aralığına sınırlanır.
Bu süre, onay istemininkinden kasten çok daha uzundur: onay, birinin saniyeler içinde verdiği bir karardır; oysa bir kimlik bilgisini düzeltmek bir terminal açmak, oturum açmak ve geri dönmek anlamına gelir. Üst sınır, başında kimsenin olmadığı bir çalıştırmanın — bir pipeline adımı, bir cron tetikleyicisi, bir webhook — uyuyan birini beklemesini engelleyen şeydir. Süre dolduğunda çalıştırma, zaten alacağı iletiyle başarısız olur.
--credential-gate=0 kapatma anahtarıdır: hiçbir şey asla park edilmez ve kötü
bir kimlik bilgisi, bu kapı var olmadan önce olduğu gibi turu sonlandırır.
Alt komutlar
Bölüm başlığı “Alt komutlar”| Komut | Ne yapar |
|---|---|
cc_server |
Sunucuyu SIGINT/SIGTERM gelene kadar çalıştırır |
cc_server pair |
Bir cihaz sağlar ve kimliğini ve eşleştirme anahtarını yazdırır. Bir sunucunun hâlihazırda hizmet verdiği bir veri dizini karşısında güvenlidir — çalışan sunucu, yeniden başlatma olmadan cihazı alır |
cc_server calendar connect --workspace <id> |
Cihaz kodu akışı üzerinden bir Google hesabını bir çalışma alanına bağlar ve çıkar |
cc_server update |
Daha yeni bir bağımsız sürümü denetler, indirir ve doğrular |
cc_server --version |
Derleme sürümünü ve git SHA’sını yazdırır — /healthz ve RPC el sıkışmasının duyurduğu kimliğin aynısı |
| Bayrak | Varsayılan | Anlam |
|---|---|---|
--device |
web-client |
Cihaz kimliği. Platform bundan çıkarılır; bu yüzden --device desktop bir masaüstü satırı, --device ios/android ise bir telefon satırı üretir; başka her şey web olarak değerlendirilir |
--label |
platform adı artı bu makinenin ana makine adı | Cihazlar listesinde görünen ad |
--host |
localhost ya da herhangi bir arayüze bağlanıldığında <this-host> |
Yazdırılan URL’ye gömülecek ana makine. Bir istemcinin gerçekte arayacağı LAN IP’sine ya da tünel ana makinesine ayarlayın |
--client-url |
ayarlı değil | Barındırılan web istemcisinin kaynağı. Taranabilir bir derin bağlantı ve terminal QR kodu ekler |
pair ayrıca çekirdek --data-dir, --port ve --bind bayraklarını da kabul
eder: bunlar yazılacak veri dizinini seçer ve yazdırılan sunucu URL’sini
biçimlendirir (loopback’te ws, --bind any olduğunda wss). Aynı --device
için pair komutunu yeniden çalıştırmak anahtarını döndürür ve o cihazın açık
oturumlarını düşürür. Burada üretilen bir kimlik bilgisinin, uygulama içi
eşleştirmenin belirlediği 30 günün aksine hiçbir son kullanma tarihi yoktur.
update
Bölüm başlığı “update”--apply kurulumun yerini alır; yapılandırılmış bağlantı noktasında hâlâ bir
sunucu yanıt veriyorsa, --force vermediğiniz sürece reddedilir.
--allow-downgrade daha eski bir sürüme izin verir.
Komut, sahibi olmadığı kurulumlar için hata yerine bir açıklamayla doğrudan reddeder:
| Ortam | Neyle algılanır | Ne söyler |
|---|---|---|
| Masaüstünün gömülü sunucusu | CC_EMBEDDED=1 ya da CC_BOOTSTRAP_DEVICE_ID |
Bunun yerine uygulamayı güncelleyin — yükleyici ağacın tamamını değiştirir |
Bir dart run kaynak kopyası |
betik yolu .dart ile biter |
git ile güncelleyin |
| Docker | kapsayıcı işaretleri | Daha yeni bir imaj çekin |
Süreç yaşam döngüsü
Bölüm başlığı “Süreç yaşam döngüsü”cc_server, SIGINT / SIGTERM gelene kadar çalışır. Bunu yöneten bir ek
ortam değişkeni vardır ve bunu siz değil masaüstü ayarlar:
| Değişken | Etki |
|---|---|
CC_EXIT_WITH_PARENT=1 |
Sunucu, üst süreci sona erdiğinde çıkar; bu, üst sürecin stdin borusunun yazma ucunu kapatmasıyla algılanır. Masaüstü bunu, çöken bir uygulamanın arkasında veri dizinini tutan yetim bir sunucu bırakmaması için ayarlar |
Bunu yalnızca cc_server’ı bir alt süreç olarak yönetiyorsanız ve aynı garantiyi
istiyorsanız kendiniz ayarlayın.
Veri dizini düzeni
Bölüm başlığı “Veri dizini düzeni”Varsayılan veri dizini macOS’ta ~/Library/Application Support/control-center,
Windows’ta %APPDATA%\control-center, diğer yerlerde
$XDG_DATA_HOME/control-center (yoksa ~/.local/share/control-center) olur.
Geçerli çalışma dizinine göreli bir .cc_server yalnızca hiçbir ev ya da
uygulama verisi dizini çözümlenemediğinde kullanılır.
| Yol | İçerik |
|---|---|
global.db |
Çalışma alanı kaydı, kullanıcılar, eşleştirilmiş cihazlar, haber akışı ve filo kuyruğu |
<workspaceId>/workspace.db |
Çalışma alanı başına bir veritabanı — ajanlar, alanlar, biletler, bellek, kod grafiği |
<workspaceId>/chat_credentials/ |
Sohbet botu belirteçleri, düz JSON olarak; böylece çalışma alanıyla birlikte taşınırlar |
secrets.json |
Eşleştirme anahtarları, sağlayıcı uygulama kimliği, kullanıcı başına belirteçler ve Google belirteçleri, SSO (0600) |
backups/<timestamp>/ |
Bir kurulum anlık görüntüsü — manifest.json, global.db ve her çalışma alanının bir kopyası |
backups/exports/ |
Tek çalışma alanı dışa aktarımları, <workspaceId>-<timestamp>.db |
backups/transfer/ |
Yedek indirme ve yüklemeleri için hazırlık alanı; onu yazan rota tarafından temizlenir |
models/ |
Cihaz üzerindeki gömme, diarizasyon ve konuşma modelleri |
meetings/<meetingId>/ |
Saklanan toplantı sesi |
rigs/images/ |
İçe aktarılmış rig disk imajları (QEMU masaüstü yüzeyi) |
rigs/smolvm/<rigId>/ |
Rig başına microVM çalışma zamanı durumu (aracı sırrı, 0600) |
rigs/smolvm-packs/ |
Önceden çıkarılmış makine paketleri — rig’lerin tekrar açılışlarını hızlandıran önbellek |
rigs/tls/ |
Rig HTTPS’i için geliştirme alanı sertifika otoritesi (anahtarlar 0600) |
rigs/run/<rigId>/ |
QEMU kaplamaları, tohum imajları ve VM başına anahtarlar (0600) |
Ayrıca bakınız
Bölüm başlığı “Ayrıca bakınız”- Headless bir sunucu çalıştırma — bu bayrakların ait olduğu kurulum tarifi
- Bir filo worker’ı çalıştırma — bu sunucuya kaydolan ayrı
cc_workerikilisi - Yedekleme ve geri yükleme — bu dizini güvenli bir yere kopyalama
- Yedekleme, dışa ve içe aktarma — anlık görüntü düzeni ve her yedekleme işlemi
- Uzak bir sunucuya bağlanma — bir istemciyi ona yönlendirme
- Dağıtım ve istemciler — sunucu neden her şeye sahiptir