Gå til innholdet

cc_server CLI

Hvert prosessflagg tar et CLI-flagg eller en miljøvariabel; flagget vinner, deretter miljøet, deretter standardverdien. Tredjepartslegitimasjon er unntaket — se nedenfor.

Flagg Miljøvariabel Standard Betydning
--data-dir CC_SERVER_DATA_DIR operativsystemets appdatamappe per bruker (se nedenfor) Databaser, hemmeligheter, modeller og hurtiglagret media
--port CC_SERVER_PORT 9030 TCP-port (0 = flyktig)
--bind CC_SERVER_BIND loopback loopback, eller any/all/0.0.0.0 for alle grensesnitt (krever TLS eller --insecure)
--repo-roots CC_SERVER_REPO_ROOTS hjemmekatalogen til serverbrukeren Kommaadskilte basiskataloger en klient kan bla i når den registrerer et repo. Å bla over en rot avvises
--log-level CC_SERVER_LOG_LEVEL warning debug, info, warning eller error. Linjene for oppstart og klar skrives alltid ut
--server-name CC_SERVER_NAME vertsnavnet til maskinen Navnet som vises i velgere, oppdagelses- og paringsflater
Flagg Miljøvariabel Standard Betydning
--tls-cert CC_SERVER_TLS_CERT ikke satt PEM-sertifikatkjede. Betjener wss:// i prosessen når den settes sammen med nøkkelen
--tls-key CC_SERVER_TLS_KEY ikke satt PEM-privatnøkkel som hører til sertifikatet
--insecure CC_SERVER_INSECURE av Tillat en klartekstbinding utenfor loopback. Bare bak en TLS-terminerende proxy i et klarert nettverk; ignoreres når TLS er konfigurert
--public-url CC_SERVER_PUBLIC_URL utledet fra bindingen RPC-URL-en denne serveren annonserer til parede klienter. Angi den eksplisitt bak en proxy, NAT eller tunnel — standardverdien er bare et anslag ut fra den lokale bindingen
--allowed-origins CC_SERVER_ALLOWED_ORIGINS https://app.usectrl.dev Kommaadskilte nettleseropphav som får kalle /rpc på tvers av opphav. Loopback og native klienter er alltid tillatt
--web-client-url CC_SERVER_WEB_CLIENT_URL ikke satt Opphavet til den hostede nettklienten som tilbakekallinger for enkel pålogging vender tilbake til
--signaling-url CC_SERVER_SIGNALING_URL wss://signaling.usectrl.dev Relémegleren denne serveren kobler seg til, slik at en telefon kan nå den uten en direkte vei
--mdns CC_SERVER_MDNS auto LAN-annonsering: auto (bare når den er bundet utenfor loopback), on, off. Oppdagelse annonserer bare at serveren finnes — tilkobling krever fortsatt paring
--tunnel CC_SERVER_TUNNEL off Administrert tunnel-leverandør: off, cloudflared, ngrok, tailscale. Eksponering mot internett er noe du velger selv
--tunnel-binary CC_SERVER_TUNNEL_BINARY løses opp fra PATH Eksplisitt sti til tunnelbinæren
--tunnel-sha256 CC_SERVER_TUNNEL_SHA256 ikke satt Forventet SHA-256 for den binæren, verifisert før hver oppstart av den
--tunnel-args CC_SERVER_TUNNEL_ARGS tom Kommaadskilte tilleggsargumenter til tunnelkjøringen
Flagg Miljøvariabel Standard Betydning
--sandbox CC_SERVER_SANDBOX on Om agentkjøringer pakkes inn i vertens OS-native sandkasse når en finnes. En utmelding, ikke en aktivering — se nedenfor
--code-index CC_SERVER_CODE_INDEX on Kill-bryter i felt for indeksering av kodegrafen i bakgrunnen. off starter rent uten å bygge på nytt
--code-index-defer CC_SERVER_CODE_INDEX_DEFER 15 Sekunder å vente med den første indeksgjennomgangen etter klar-banneret (begrenset til 0–300)
--tool-deferral CC_SERVER_TOOL_DEFERRAL on Om harnesskjøringer sender et lite fast verktøysett pluss en navneindeks, og laster resten ved første bruk. Se nedenfor
--credential-gate CC_SERVER_CREDENTIAL_GATE 900 Sekunder en kjøring parkeres og venter på at et menneske fikser en legitimasjon den ikke kan bruke (begrenset til 0–3600). Se nedenfor

En tom verdi for en legitimasjon leses som ikke satt, så den innebygde reserveverdien gjelder fortsatt. Et bygg fra kildekode har ingen innebygd legitimasjon i det hele tatt.

Google Calendar og Klipy-GIF-velgeren er bare tilgjengelige via miljøet — det finnes ikke noe --google-client-id / --klipy-app-key-flagg (ukjente flagg ignoreres). Sett GOOGLE_OAUTH_CLIENT_ID + GOOGLE_OAUTH_CLIENT_SECRET og KLIPY_APP_KEY i miljøet (eller i en .env ved siden av serveren). Tom verdi slår av funksjonen i stedet for å få oppstarten til å feile.

Serveren sonderer verten én gang ved oppstart og pakker agentens kommandokjøring inn i den OS-native sandkassen når en backend finnes: sandbox-exec (Seatbelt) på macOS, bwrap pluss socat på Linux og WSL2. Der ingen finnes — Windows, eller en Linux-vert som mangler disse verktøyene — faller kjøringene tilbake på miljøsanering, kommandopolicyen og tillatelsesreglene for handlinger, og oppstartsloggen sier hvilken tilstand som gjelder.

--sandbox off er kill-bryteren i felt for tilfellet sonderingen ikke kan se: en vert der selve sandkasseprofilen oppfører seg feil. Den krever ingen ny bygging, og serveren logger en advarsel så lenge prosessen lever, slik at tilstanden aldri er taus.

Kjøringer på det innebygde harnesset sender et lite fast sett med verktøydefinisjoner pluss en navneindeks over resten, som laster skjemaene sine første gang de brukes. Det kutter verktøyblokken med omtrent 78 % og holder det alltid synlige settet innenfor båndet der modeller velger verktøy pålitelig. Utsatte verktøy kan kalles ved navn hele tiden, og search_tools finner dem ut fra intensjon. Se Verktøykontekst og promptbuffer.

--tool-deferral off gjør hvert tillatt verktøy fast igjen og gir nøyaktig de samme forespørslene serveren sendte før utsettelsen fantes. Det er kill-bryteren for en modell som håndterer flaten med to nivåer dårlig — et flagg i stedet for en ny bygging. Det påvirker bare det innebygde harnesset; MCP-tools/list som eksterne klienter ser, er alltid hele katalogen.

En kjøring der leverandørlegitimasjonen mangler eller er brukt opp, blir parkert i stedet for å mislykkes: operatøren får en melding om å fikse den, og kjøringen fortsetter hvis de gjør det. Standardfristen er 900 sekunder (15 minutter), begrenset til 0–3600.

Fristen er med vilje mye lengre enn godkjenningsforespørselens: en godkjenning er en beslutning noen tar i løpet av sekunder, mens å fikse en legitimasjon betyr å åpne en terminal, logge inn og komme tilbake. Taket er det som hindrer en uovervåket kjøring — et pipeline-steg, en cron-utløser, en webhook — i å vente på noen som sover. Når den utløper, mislykkes kjøringen med meldingen den uansett ville ha mislykkes med.

--credential-gate=0 er kill-bryteren: ingenting parkeres noensinne, og en dårlig legitimasjon avslutter turen nøyaktig som før porten fantes.

Kommando Hva den gjør
cc_server Kjører serveren til SIGINT/SIGTERM
cc_server pair Provisionerer en enhet og skriver ut id-en og paringsnøkkelen dens. Trygt mot en datamappe en server allerede betjener — den kjørende serveren plukker opp enheten uten omstart
cc_server calendar connect --workspace <id> Kobler en Google-konto til et arbeidsområde via enhetskodeflyten og avslutter
cc_server update Ser etter, laster ned og verifiserer en nyere frittstående utgivelse
cc_server --version Skriver ut byggeversjonen og git-SHA-en — den samme identiteten /healthz og RPC-håndtrykket annonserer
Flagg Standard Betydning
--device web-client Enhets-id-en. Plattformen utledes fra den, så --device desktop oppretter en skrivebordsrad og --device ios/android en telefonrad; alt annet behandles som web
--label plattformnavnet pluss vertsnavnet til denne maskinen Visningsnavn i enhetslisten
--host localhost, eller <this-host> når den er bundet til alle grensesnitt Verten som skal bygges inn i den utskrevne URL-en. Sett den til LAN-IP-en eller tunnelverten en klient faktisk vil kalle
--client-url ikke satt Opphavet til den hostede nettklienten. Legger til en skannerbar dyp lenke og terminal-QR

pair godtar også kjerneflaggene --data-dir, --port og --bind: de velger datamappen som skal skrives, og former den utskrevne server-URL-en (ws på loopback, wss med --bind any). Å kjøre pair på nytt for samme --device roterer nøkkelen dens og dropper de aktive øktene til den enheten. En legitimasjon som utstedes her, har ingen utløpsdato, i motsetning til de 30 dagene en paring i appen setter.

--apply erstatter installasjonen; den avvises så lenge en server fortsatt svarer på den konfigurerte porten, med mindre du oppgir --force. --allow-downgrade tillater en eldre utgivelse.

Kommandoen nekter kontant, med en forklaring i stedet for en feil, for installasjoner den ikke eier:

Miljø Oppdages av Hva den sier
Skrivebordsappens innebygde server CC_EMBEDDED=1 eller CC_BOOTSTRAP_DEVICE_ID Oppdater appen i stedet — installasjonsprogrammet bytter ut hele treet
En kildekodeutsjekk kjørt med dart run skriptstien slutter på .dart Oppdater den med git
Docker containermarkører Hent en nyere avbildning

cc_server kjører til SIGINT / SIGTERM. Én ekstra miljøvariabel styrer dette, og den settes av skrivebordsappen og ikke av deg:

Variabel Effekt
CC_EXIT_WITH_PARENT=1 Serveren avsluttes når foreldreprosessen gjør det, oppdaget ved at forelderen lukker skriveenden av stdin-røret sitt. Skrivebordsappen setter den for at en krasjet app aldri skal etterlate en foreldreløs server som holder datamappen

Sett den bare selv hvis du overvåker cc_server som en barneprosess og vil ha den samme garantien.

Standard datamappe er ~/Library/Application Support/control-center på macOS, %APPDATA%\control-center på Windows og $XDG_DATA_HOME/control-center (ellers ~/.local/share/control-center) ellers. En .cc_server relativ til cwd brukes bare når verken hjemmemappen eller appdatamappen lar seg oppslå.

Sti Innhold
global.db Arbeidsområderegisteret, brukere, parede enheter, nyhetsstrømmen og flåtekøen
<workspaceId>/workspace.db Én database per arbeidsområde — agenter, områder, saker, minne, kodegrafen
<workspaceId>/chat_credentials/ Chatbot-tokener, som ren JSON, slik at de følger med arbeidsområdet
secrets.json Paringsnøkler, leverandørappens identitet, tokener per bruker og Google-tokener, SSO (0600)
backups/<timestamp>/ Ett øyeblikksbilde av installasjonen — manifest.json, global.db og en kopi av hvert arbeidsområde
backups/exports/ Eksporter av enkeltarbeidsområder, <workspaceId>-<timestamp>.db
backups/transfer/ Mellomlagring for ned- og opplasting av sikkerhetskopier; ryddes av ruten som skriver den
models/ Innbyggings-, diariserings- og talemodeller på enheten
meetings/<meetingId>/ Lagret møtelyd
rigs/images/ Importerte diskavbildninger for stasjoner (QEMU-skrivebordsflaten)
rigs/smolvm/<rigId>/ Kjøretidstilstand per stasjon for mikro-VM-er (meglerhemmeligheten, 0600)
rigs/smolvm-packs/ Forhåndsutpakkede maskinpakker — bufferen som gjør gjentatte stasjonsoppstarter raske
rigs/tls/ Sertifikatmyndigheten for utviklingsdomenet til stasjons-HTTPS (nøkler 0600)
rigs/run/<rigId>/ QEMU-overlegg, startavbildninger og nøkler per VM (0600)