Flagg
-
--host <url>API-host å autentisere mot. -
--token <key>Send nøkkelen ikke-interaktivt i stedet for ledeteksten.
Eksempel
sonenta login --host https://api.sonenta.com CLI
v0.2.1 · npm · MITEt lett, skriptbart kommandolinjeverktøy for alt du ellers ville gjort i dashbordet: importere et eksisterende i18next-prosjekt, pushe og pulle oversettelser, sammenligne CI mot fjerntjeneren, publisere en CDN-release, og ta et snapshot av bundlene for et offline-first-bygg. MIT, på npm.
Brudd · 0.1 → 0.2
Hele CLI-en går nå gjennom MCP-flaten: den trenger en API-nøkkel med mcp:*-scope — prosjektbegrensede nøkler returnerer 403. Generer en i dashbordet under Org Settings → API Keys, og utsted på nytt alle nøkler du brukte med 0.1.
Kun npm — det finnes ingen Homebrew-formel for CLI-en. Krever Node 18 eller nyere, og installerer kommandoen sonenta.
terminal 1# installer én gang, globalt2npm i -g @sonenta/cli 4# eller kjør uten å installere5npx @sonenta/cli <command> Hvert kall sender Authorization: ApiKey <prefix>.<secret> med mcp:*-scope. Logg inn én gang for å lagre nøkkelen i ~/.sonenta/credentials, eller sett SONENTA_TOKEN i CI.
terminal 1# interaktiv — lagrer nøkkelen per host i ~/.sonenta/credentials (0600)2sonenta login --host https://api.sonenta.com3API key: snt_live_••••••••.••••••••••••••••4✓ lagret for https://api.sonenta.com 6# CI — ingen ledetekst, nøkkelen leses fra miljøet7export SONENTA_TOKEN=snt_live_<prefix>.<secret>8sonenta push Oppløsningsrekkefølge, den første vinner: miljøvariabelen SONENTA_TOKEN, deretter ~/.sonenta/credentials for aktiv host. Generer nøkkelen under Org Settings → API Keys med mcp:*-scope.
sonenta init skriver en sonenta.config.json i repoet ditt (løses ved å gå oppover fra arbeidskatalogen). Legitimasjonen ligger separat, per bruker, og committes aldri.
sonenta.config.json 1# committet til repoet ditt — ingen hemmeligheter her2{3 "host": "https://api.sonenta.com",4 "project_uuid": "<project_uuid>",5 "version_slug": "main"6} ~/.sonenta/credentials 1# ~/.sonenta/credentials — modus 0600, per bruker, commit aldri2{ "default": "https://api.sonenta.com",3 "hosts": {4 "https://api.sonenta.com": { "api_key": "snt_live_..." }5 } } version_slug er main som standard. Hold API-nøkkelen utenfor sonenta.config.json — den hører kun hjemme i legitimasjonsfilen eller i SONENTA_TOKEN.
Gruppert etter hva du gjør — sette opp auth og config, inspisere et prosjekt, eller synkronisere oversettelser. Hver kommando går mot MCP-flaten og respekterer sonenta.config.json.
--host <url> API-host å autentisere mot. --token <key> Send nøkkelen ikke-interaktivt i stedet for ledeteksten. sonenta login --host https://api.sonenta.com Ingen flagg.
sonenta logout Ingen flagg.
sonenta whoami --project <uuid> Prosjekt-UUID som skrives inn i config (obligatorisk). --version <slug> Versjon-slug å sikte mot (standard main). --force Overskriv en eksisterende config-fil. sonenta init --project <uuid> --version main Ingen flagg.
sonenta projects list --namespace <slug> Begrens til ett namespace. sonenta keys list --namespace common --language <code> Begrens sammenligningen til ett språk. --namespace <slug> Begrens sammenligningen til ett namespace. --src <dir> Kildekatalog (standard locales). sonenta status --language <code> Filtrer etter språk. --namespace <slug> Filtrer etter namespace. --limit <n> Begrens antall rader. sonenta missing --limit 50 --dry-run Kun forhåndsvisning; sender ingenting. --status <draft|translated> Innkommende status (standard translated). --language <code> Tving språket i stedet for å utlede det fra stien. --namespace <slug> Tving namespace (obligatorisk for en naken <lang>.json). --version <slug> Sikt mot en ikke-standard versjon. sonenta import locales/fr/common.json --src <dir> Kildekatalog (standard locales). --dry-run Kun forhåndsvisning; sender ingenting. --status <state> Innkommende status (standard translated). sonenta push --dry-run --language <code> Begrens til ett språk. --namespace <slug> Begrens til ett namespace. --dest <dir> Målkatalog (standard locales). sonenta pull --language fr --nested Skriv ut nestede trær i stedet for flate nøkler. --out <dir> Skriv filer til en katalog i stedet for stdout. sonenta export --nested --out ./dump --version <slug> Versjon å publisere (standard main). --dry-run Kun forhåndsvisning; publiserer ingenting. sonenta releases publish --format <ts|json> Utdataformat: ts (standard) eller json. --out <file> Skriv til en fil i stedet for stdout. --cdn <base> CDN-base (standard https://cdn.sonenta.com). sonenta snapshot --out src/sonenta-bundles.ts Hver kommando godtar også --host <url> for å overstyre den konfigurerte API-hosten for én enkelt kjøring.
Oppgraderer du fra 0.1? To endringer krever handling.
mcp:*-scope — prosjektbegrensede nøkler returnerer nå 403. push sender nå hele locales/-treet ditt i ett enkelt import-kall (det var én nøkkelopprettelse pluss én PUT per oversettelse). Det er idempotent og skriver ut opprettet / oppdatert / uendret. import, export, releases publish, snapshot og projects list er nye i 0.2.0.