Flaggor
-
--host <url>API-värd att autentisera mot. -
--token <key>Skicka nyckeln icke-interaktivt i stället för via prompten.
Exempel
sonenta login --host https://api.sonenta.com CLI
v0.2.1 · npm · MITEn liten, skriptbar kommandorad för allt du annars skulle klicka dig igenom i dashboarden: importera ett befintligt i18next-projekt, pusha och hämta översättningar, jämför CI mot fjärrservern, publicera en CDN-release och ta en snapshot av buntarna för en offline-first-build. MIT, på npm.
Brytande · 0.1 → 0.2
Hela CLI:t körs nu på MCP-ytan, så det behöver en API-nyckel med scopet mcp:* — projektbegränsade nycklar returnerar 403. Generera en i dashboarden under Org Settings → API Keys och återutfärda alla nycklar du använde med 0.1.
Endast npm — det finns ingen Homebrew-formel för CLI:t. Kräver Node 18 eller senare och installerar kommandot sonenta.
terminal 1# installera en gång, globalt2npm i -g @sonenta/cli 4# eller kör utan att installera5npx @sonenta/cli <command> Varje anrop skickar Authorization: ApiKey <prefix>.<secret> med scopet mcp:*. Logga in en gång för att lagra nyckeln i ~/.sonenta/credentials, eller sätt SONENTA_TOKEN i CI.
terminal 1# interaktivt — lagrar nyckeln per värd i ~/.sonenta/credentials (0600)2sonenta login --host https://api.sonenta.com3API key: snt_live_••••••••.••••••••••••••••4✓ sparad för https://api.sonenta.com 6# CI — ingen prompt, nyckeln läses från miljön7export SONENTA_TOKEN=snt_live_<prefix>.<secret>8sonenta push Upplösningsordning, den första vinner: miljövariabeln SONENTA_TOKEN, sedan ~/.sonenta/credentials för den aktiva värden. Skapa nyckeln under Org Settings → API Keys med scopet mcp:*.
sonenta init skriver en sonenta.config.json i ditt repo (löses ut genom att gå uppåt från arbetskatalogen). Autentiseringsuppgifter lagras separat, per användare, och checkas aldrig in.
sonenta.config.json 1# incheckad i ditt repo — inga hemligheter här2{3 "host": "https://api.sonenta.com",4 "project_uuid": "<project_uuid>",5 "version_slug": "main"6} ~/.sonenta/credentials 1# ~/.sonenta/credentials — läge 0600, per användare, checka aldrig in2{ "default": "https://api.sonenta.com",3 "hosts": {4 "https://api.sonenta.com": { "api_key": "snt_live_..." }5 } } version_slug är som standard main. Håll API-nyckeln utanför sonenta.config.json — den hör enbart hemma i autentiseringsfilen eller i SONENTA_TOKEN.
Grupperade efter vad du gör — ställa in autentisering och konfiguration, inspektera ett projekt eller synka översättningar. Varje kommando körs mot MCP-ytan och respekterar sonenta.config.json.
--host <url> API-värd att autentisera mot. --token <key> Skicka nyckeln icke-interaktivt i stället för via prompten. sonenta login --host https://api.sonenta.com Inga flaggor.
sonenta logout Inga flaggor.
sonenta whoami --project <uuid> Projektets UUID att skriva in i konfigurationen (obligatoriskt). --version <slug> Versions-slug att rikta in sig på (standard main). --force Skriv över en befintlig konfigurationsfil. sonenta init --project <uuid> --version main Inga flaggor.
sonenta projects list --namespace <slug> Begränsa till ett namespace. sonenta keys list --namespace common --language <code> Begränsa jämförelsen till ett språk. --namespace <slug> Begränsa jämförelsen till ett namespace. --src <dir> Källkatalog (standard locales). sonenta status --language <code> Filtrera efter språk. --namespace <slug> Filtrera efter namespace. --limit <n> Sätt ett tak för antalet rader. sonenta missing --limit 50 --dry-run Endast förhandsgranskning; skickar ingenting. --status <draft|translated> Inkommande status (standard translated). --language <code> Tvinga fram språket i stället för att härleda det från sökvägen. --namespace <slug> Tvinga fram namespace (obligatoriskt för en naken <lang>.json). --version <slug> Rikta in sig på en icke-standardversion. sonenta import locales/fr/common.json --src <dir> Källkatalog (standard locales). --dry-run Endast förhandsgranskning; skickar ingenting. --status <state> Inkommande status (standard translated). sonenta push --dry-run --language <code> Begränsa till ett språk. --namespace <slug> Begränsa till ett namespace. --dest <dir> Målkatalog (standard locales). sonenta pull --language fr --nested Producera nästlade träd i stället för platta nycklar. --out <dir> Skriv filer till en katalog i stället för till stdout. sonenta export --nested --out ./dump --version <slug> Version att publicera (standard main). --dry-run Endast förhandsgranskning; publicerar ingenting. sonenta releases publish --format <ts|json> Utdataformat: ts (standard) eller json. --out <file> Skriv till en fil i stället för till stdout. --cdn <base> CDN-bas (standard https://cdn.sonenta.com). sonenta snapshot --out src/sonenta-bundles.ts Varje kommando accepterar även --host <url> för att åsidosätta den konfigurerade API-värden under en enda körning.
Uppgraderar du från 0.1? Två ändringar kräver åtgärd.
mcp:* — projektbegränsade nycklar returnerar nu 403. push skickar nu hela ditt locales/-träd i ett enda importanrop (tidigare var det skapa-nyckel plus en PUT per översättning). Det är idempotent och skriver ut skapade / uppdaterade / oförändrade. import, export, releases publish, snapshot och projects list är nya i 0.2.0.