docs

CLI-referansen

Én binær, alle flatene. Hver kommando har --json med stabilt schema, og ingen kommando stiller interaktive spørsmål når --json eller CI=true er satt.

kontrakt 0.2.80--json på alt

Felles flagg og miljø

nysky  [--json] [--konto ] [--config nysky.toml] [--api URL]
  • --json — maskinlesbar utgang med stabilt schema; feil følger RFC 7807. Svaret bærer kontraktversjonen.
  • --konto — velg konto når innloggingen har flere. Navn eller konto-id.
  • --config — peker på et annet manifest enn ./nysky.toml.

Miljø: NYSKY_API_URL (default api.nysky.no/v1) og NYSKY_API_TOKEN. NB: er NYSKY_API_TOKEN satt, vinner den stille over nysky login-innloggingen.

Innlogging og team

  • login — logg inn med nysky ID (passkey) i nettleseren — du krysser av hvilke kontoer maskinen får. login status viser tilstanden, login --nytt tvinger ny runde. --varighet 90d|36t|2d12t setter token-levetid (standard 7 døgn, maks 365 — vises og godkjennes på innloggingssiden).
  • logout [--overalt] — fjern innloggingen lokalt; --overalt trekker tokenene tilbake på plattformen, også for andre maskiner og agenter.
  • team list | add <epost> [--admin] | remove <epost> — utviklerne på kontoen. En gatet app uten delingsliste slipper inn nettopp disse.
  • allow list <app> | add <app> <epost|@domene> | remove — delingslisten per app — virker med én gang, uten redeploy.

Bygg, deploy og status

  • dev — bygg og kjør appen lokalt, i samme kjøretid som i drift. dev --prove starter appen, beviser at modulene laster, og avslutter — samme sjekk som push-to-deploy kjører før en bundel slippes inn.
  • plan — vis hva en deploy ville endret — ruter, bindings, nivå — uten sideeffekter.
  • deploy [--wait] — bygg bundelen deterministisk, last opp og konvergér. Samme kilde gir samme resultat.
  • apps — alle appene dine: navn, tilstand, adresse.
  • status [app] — tilstand, adresse, rollout-feil og siste push-deploy.
  • feilbilde [app] — helsesignal uten forespørselsdata — trygt å dele med en assistent.
  • secret put <NAVN> — sett hemmelighet skriv-kun; verdien leses fra stdin og kan aldri hentes ut. --preview setter preview-miljøsettet; --app <navn> setter for en app uten lokalt manifest; secret request lager en engangslenke der et menneske limer inn verdien; secret delete fjerner.
  • ci — kjør [ci]-kommandoen i plattformens byggemiljø i Norge — ingen egen CI-runner. ci revoke <token-id> trekker et CI-token.
  • logs — les appens krypterte logg, dekryptert lokalt med din nøkkel. logs keygen lager nøkkelpar og registrerer mottakeren på kontoen; logs purge sletter lagrede segmenter.

Previews og livssyklus

  • preview <app> — liste over PR-previews. behold <navn> [dager] forlenger, riv fjerner, klone kopierer appens database inn i previewet (bekreftes med passkey), planlegg <navn> <tid> promoterer bygget på et tidspunkt med automatisk tilbakerulling, planer/avbryt styrer køen.
  • app vekk|slett [navn] [--permanent] — livssyklus via bekreftelsesluken: CLI-en lager intensjonen, et menneske bekrefter med passkey. Sletting har 28 dagers angrefrist; --permanent hopper over den.
  • wake [app] — vekk en parkert app.

Git og push-to-deploy

  • git login — koble git-credential til nysky ID — engangs; deretter virker vanlig git mot git.nysky.no.
  • git repo create <navn> [--public] — opprett repo og sett origin. repo collab add gir andre tilgang.
  • git branch | pr | issue … — grener (ls/create/rm/protect), pull requests (create/ls/merge) og issues (create/ls/close).
  • git deploy enable <eier>/<repo> [--branch <gren>] — push-to-deploy: hver push til grenen ruller ut appen. list/status/disable styrer koblingen.
  • git deploy now <app> — rull ut grenens nåværende HEAD uten nytt push — typisk første deploy etter en (om)kobling. Ruller hele gruppen i et monorepo.
  • git api <METODE> </sti> [json] — hele Git-API-et, autentisert.
  • git import <github-url> [--navn <n>] [--pat-stdin] — engangs-import av et GitHub-repo til nysky Git — ingen videre kobling. PAT for privat repo kun via stdin.
  • git synk <github-url> [--navn <n>] [--intervall 10m|1t|8t|24t] — løpende synk fra GitHub (pull-mirror). Godkjennes i handlingsluka med passkey og tydelig advarsel; PAT for privat repo limes inn der.
  • git synk hent <eier>/<repo> [--branch <gren>] — hent fra GitHub nå, utenom intervallet — deployen følger automatisk via webhooken.

Jobber du på GitHub? Slik blir «merge til main» = deploy

Koden kan bli liggende på GitHub — nysky speiler repoet og bygger herfra, uten lokal PC i loopen:

  1. nysky git synk https://github.com/<eier>/<repo> --intervall 10m — du godkjenner speilingen med passkey i bekreftelsesluken. Privat repo: lag et fint-scopet GitHub-token (kun contents: read, kun det ene repoet) og lim det inn i luken — det brukes bare til hentingen og vises aldri igjen.
  2. Sørg for at hver app har sin nysky.toml i repoet. Monorepo? Én manifestfil i hver undermappe (f.eks. backend/nysky.toml og frontend/nysky.toml) — ett speil kan mate flere apper, og apper på samme gren ruller alltid ut i takt.
  3. Koble hver app: stå i appens mappe og kjør nysky git deploy enable <deg>/<repo> --branch main (stien utledes fra mappen; --sti backend overstyrer). Merk rekkefølgen: har du nettopp pushet manifestet til GitHub, kjør git synk hent først — plattformen leser manifestet fra speilet, ikke rett fra GitHub.
  4. Første utrulling: nysky git deploy now <app> — koblingen gjelder ellers bare fremtidige pushes. Deretter er hver merge til grenen ute innen intervallet; vil du se en deploy med en gang: nysky git synk hent <deg>/<repo>.

Merk grensen: GitHub ligger utenfor nyskys residens- og logggarantier — derfor bekreftes speilingen av et menneske. Det som hentes inn, driftes i Norge som alt annet.

Konto, domener og data

  • konto — saldo og apper. kvitteringer [--pdf id], forbruk, varsler, eksport; flytt/pafyll flytter kreditt i kontofamilien; sandkasse foreslår en agent-sandkasse med budsjett (mennesket bekrefter); avslutt går via bekreftelsesluken.
  • domene — .no-domener selvbetjent: sjekk, mine, poster [sett], ns, dnssec på/av, forny auto/av, authkode, overta <navn> (flytt inn med authkode — mennesket bekrefter med passkey). Kjøp gjøres av et menneske på kontosiden.
  • datastore — ps (aktivitet), restart, skjema (tabeller og kolonner — aldri radene), ovingsdata (fyller testmiljøet med syntetiske rader).
  • container aktiver — slå på container-kjøretiden for kontoen (390 kr/mnd, stor 790): CLI-en lager forslaget, et menneske bekrefter med passkey i bekreftelsesluken.
  • konsoll — åpne kontosiden i nettleseren — kjøp og eierskifte krever et menneske.

Alle kommandoer har --json med stabilt schema.

Hemmeligheter og handlinger med konsekvens krever et menneske med passkey.

CLI-en er hele flaten — alt UI-et kan, kan CLI-en.

Videre