Commando's van ERPC CLI

Elke commandogroep van ERPC CLI in één tabel, de opties die bij elk commando werken, en de exitcodes waarop een script kan vertrouwen.
Deze pagina beschrijft ERPC CLI v0.1.0-rc.4, een pre-release.

Commandogroepen

Voer een commandogroep zonder werkwoord uit, zoals erpc validator of erpc worker, om de werkwoorden ervan te tonen.
CommandoWat het doet
validator (v), rpc (r), node (n)Validators en RPC-nodes
rpc callStuurt één JSON-RPC-verzoek naar een shared, aangepast of x402-endpoint (RPC-aanroepen en webhooks)
webhookBeheert lokale RPC-abonnementen en levert events af bij een HTTP-callback
ai, resume, memory, skillsERPC AI, de opgeslagen gesprekken, de onthouden feiten en de skills
worker (w)Uw eigen apps op een server
storage (st), backupERPC Global Storage en back-ups van machines (hieronder)
walletDe Base-wallet die ERPC Credit koopt met EURC (Betalen vanuit een wallet)
signup, login, logout, whoamiUw ERPC-account (Inloggen en sleutels)
doctorMeldt hoe deze machine uw sessie opslaat
configLeest en wijzigt ~/.erpc/config.toml (alleen openbare instellingen). erpc config init schrijft een startbestand met commentaar, tenzij er al een is
versionVersie-, build- en componentinformatie
completionsGenereert shell-completions: erpc completions zsh, en ook bash, fish, powershell en elvish

Globale opties

  • --json geeft machineleesbare uitvoer: erpc --json <command>. ERPC_JSON=true heeft hetzelfde effect. Bij node-commando's moet --json vóór het commando staan.
  • --lang stelt de taal in die erpc spreekt: en, ja, zh of ru. Zonder deze optie gebruikt erpc de instelling locale, en als die ontbreekt, de taal van het systeem.

Fouten en exitcodes

Een fout ziet er overal hetzelfde uit: een regel error: die zegt wat er misging, en een regel hint: die zegt wat u vervolgens kunt doen, als die er is. Met --json is een fout één object op standaarduitvoer, {"error": {"code", "exit", "message", "hint"}}. In twee gevallen verschijnt in plaats daarvan het eigen bericht van clap en is de exitstatus 2: een commandoregel die clap aan een terminal niet kan parsen, en een argument dat het werkwoord van een node-boom (erpc validator, rpc, node) niet accepteert, ook met --json. Een veld details verschijnt alleen wanneer een commando een script meer te vertellen heeft over wat het deed voordat het mislukte, en nooit aan een terminal.
ExitstatusCodeBetekenis
0Het is gelukt
1failedHet kon niet doen wat er werd gevraagd
2usageDe commandoregel was niet bruikbaar
3needs_terminalIemand moet antwoorden: geef --yes mee of voer het uit in een terminal
4not_signed_inVoer erpc login uit
5problems_foundEen controle (status, doctor) heeft problemen gevonden, en het rapport ervan zegt welke
6declinedU hebt nee gezegd, en er is niets gewijzigd
7networkERPC of een andere service was niet bereikbaar
Wordt erpc gestopt met Ctrl-C (of SIGTERM, SIGHUP), dan eindigt het door het signaal zelf, zodat ook een lus in een script stopt. Een gepubliceerde code behoudt zijn naam en zijn exitstatus, en een code wordt nooit hergebruikt.

Opslag en back-ups

bash
erpc storage buy 5        # an ERPC Global Storage plan
erpc backup init          # back this machine up with restic, on a schedule if you like
erpc storage buy koopt een abonnement voor ERPC Global Storage, betaald met ERPC Credit. Abonnementen en prijzen staan op de pagina Prijzen.

erpc storage

  • erpc storage put versleutelt een bestand op deze machine voordat er iets van wordt verstuurd, tenzij --no-encrypt is opgegeven. ERPC slaat alleen de versleutelde bytes op en heeft nooit de sleutel. erpc storage get herkent een versleuteld bestand en ontsleutelt het.
  • Er is één opslagsleutel per account, bewaard in de opslagplaats die erpc login heeft gekozen. erpc bewaart hem niet in de keyring van de Linux-kernel, die bij een herstart verloren gaat: log in met --store 1password of --store file, of gebruik --no-encrypt. Met de opslagplaats file staat de sleutel onversleuteld in ~/.erpc/storage-key (modus 0600). --no-encrypt uploadt het bestand dat u verstuurt zoals het is, onversleuteld.
  • Wie de opslagsleutel verliest, verliest elk bestand dat ermee is versleuteld, en ERPC kan hem niet herstellen. erpc storage key export --show toont de sleutel, zodat er een kopie buiten de machine kan worden bewaard, en erpc storage key import zet hem op een andere machine terug.
  • Het pad waaronder een bestand is opgeslagen, en de grootte ervan, zijn zichtbaar voor ERPC.
  • erpc storage keys list toont de toegangssleutels voor de opslag, en erpc storage keys revoke <n> trekt er een in.

erpc backup

erpc backup maakt met restic een back-up van een machine in ERPC Global Storage. Bestanden worden op uw machine versleuteld voordat ze die verlaten, en ERPC heeft nooit een wachtwoord dat de back-ups opent.
CommandoWat het doet
erpc backup initInstalleert restic, maakt de toegangssleutels en de repository aan, en geeft deze machine een eigen restic-sleutel
erpc backup run [paths]Maakt een back-up. Op Linux zonder paden: / zonder pseudo-bestandssystemen, mounts en vluchtige paden. Elders geeft u de paden op
erpc backup snapshotsDe snapshots van deze machine; --all-hosts voor die van elke machine
erpc backup restore <id|latest>Herstelt naar een nieuwe map, tenzij --target een andere noemt. --in-place schrijft over deze machine heen, na het eerst te hebben gevraagd
erpc backup checkControleert de repository en leest 5% van de data terug
erpc backup pruneBewaart 7 dagelijkse, 4 wekelijkse en 6 maandelijkse snapshots van één machine, na het eerst te hebben gevraagd
erpc backup schedule daily|weekly|off [paths]Voert run uit op een timer, om --at (standaard 03:00)
erpc backup statusHet schema, en hoe de laatste run is afgelopen
erpc backup password --showToont het masterwachtwoord van de repository, om elders een kopie te bewaren
  • Elke machine krijgt een append-only-sleutel die de eigen back-ups niet kan verwijderen. De machine waarop u erpc backup init hebt uitgevoerd, heeft ook de sleutels die dat wel kunnen, dus de bescherming geldt alleen op een machine die noch de sessie van erpc noch de back-upsecrets van het account bewaart.
  • Bewaar een kopie van erpc backup password --show buiten de machines. Wie het masterwachtwoord en de backup.env van elke machine verliest, verliest de back-ups.
  • Een back-up laat bekende sleutelbestanden en systeemsecrets weg, zoals .ssh/id_*, .config/solana/id.json, de sessie van erpc en de SSH-hostsleutels. Sleutelmateriaal onder een andere naam of op een andere plek komt in de back-up zoals elk ander bestand: laat het weg met --exclude.
  • erpc installeert restic 0.19.1 en controleert zowel het archief als het programma tegen SHA-256-digests die in erpc zijn meegecompileerd.
  • Planning: op Linux sudo erpc backup init, daarna sudo erpc backup schedule daily. Op macOS erpc backup schedule daily ~/Documents; de taak draait onder uw gebruiker, zolang u bent ingelogd.
  • Back-ups gaan naar de standaardregio van het account. erpc backup draait op de machine waarvan het een back-up maakt; de server van een worker wordt in plaats daarvan ingesteld met erpc worker backup on (Een back-up maken van de toestand van de app).