Các lệnh của ERPC CLI

Mọi nhóm lệnh của ERPC CLI trong một bảng, các tùy chọn dùng được với mọi lệnh, và các mã thoát mà script có thể dựa vào.
Trang này mô tả ERPC CLI v0.1.0-rc.4, một bản pre-release.

Nhóm lệnh

Chạy bất kỳ nhóm lệnh nào mà không kèm động từ, chẳng hạn erpc validator hoặc erpc worker, để liệt kê các động từ của nhóm đó.
LệnhChức năng
validator (v), rpc (r), node (n)Validator và RPC node
rpc callGửi một request JSON-RPC đến endpoint dùng chung, endpoint tùy chỉnh hoặc endpoint x402 (Lệnh gọi RPC và webhook)
webhookQuản lý các subscription RPC cục bộ và gửi sự kiện đến một HTTP callback
ai, resume, memory, skillsERPC AI, các cuộc trò chuyện đã lưu, trí nhớ và skill của nó
worker (w)Ứng dụng của riêng bạn trên một server
storage (st), backupERPC Global Storage và sao lưu máy (bên dưới)
walletVí Base dùng EURC để mua ERPC Credit (Thanh toán từ ví)
signup, login, logout, whoamiTài khoản ERPC của bạn (Đăng nhập và khóa)
doctorBáo cáo cách máy này lưu phiên của bạn
configĐọc và thay đổi ~/.erpc/config.toml (chỉ các thiết lập công khai). erpc config init ghi một tệp khởi đầu có chú thích, trừ khi tệp đó đã có
versionThông tin về phiên bản, bản build và các thành phần
completionsTạo completion cho shell: erpc completions zsh, và cả bash, fish, powershell và elvish

Tùy chọn toàn cục

  • --json cho đầu ra mà máy đọc được: erpc --json <command>. ERPC_JSON=true có cùng tác dụng. Với các lệnh node, --json phải đặt trước lệnh.
  • --lang đặt ngôn ngữ mà erpc dùng: en, ja, zh hoặc ru. Nếu không có tùy chọn này, erpc dùng thiết lập locale, nếu không có thiết lập đó thì dùng ngôn ngữ của hệ thống.

Lỗi và mã thoát

Lỗi được trình bày giống nhau ở mọi nơi: một dòng error: cho biết điều gì đã sai, và một dòng hint: cho biết nên làm gì tiếp theo, nếu có. Với --json, lỗi là một object trên đầu ra chuẩn, {"error": {"code", "exit", "message", "hint"}}. Có hai trường hợp thay vào đó in thông báo riêng của clap và thoát với mã 2: một dòng lệnh mà clap không phân tích được khi chạy trong terminal, và một đối số mà động từ của cây node (erpc validator, rpc, node) không nhận, kể cả khi dùng --json. Trường details chỉ xuất hiện khi một lệnh còn điều cần cho script biết về những gì nó đã làm trước khi thất bại, và không bao giờ xuất hiện trong terminal.
Trạng thái thoátMãÝ nghĩa
0Thành công
1failedKhông thể làm điều được yêu cầu
2usageDòng lệnh không dùng được
3needs_terminalCần một người trả lời: truyền --yes hoặc chạy lệnh trong terminal
4not_signed_inHãy chạy erpc login
5problems_foundMột lần kiểm tra (status, doctor) đã phát hiện vấn đề, và báo cáo của nó cho biết đó là vấn đề nào
6declinedBạn đã từ chối, và không có gì bị thay đổi
7networkKhông thể kết nối tới ERPC hoặc một dịch vụ khác
Khi bị dừng bằng Ctrl-C (hoặc SIGTERM, SIGHUP), erpc kết thúc bằng chính tín hiệu đó, nên một vòng lặp trong script cũng dừng theo. Một mã đã công bố luôn giữ nguyên tên và trạng thái thoát của nó, và một mã không bao giờ được dùng lại.

Storage và sao lưu

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 mua một gói ERPC Global Storage, thanh toán bằng ERPC Credit. Các gói và giá có tại Bảng giá.

erpc storage

  • erpc storage put mã hóa tệp trên máy này trước khi gửi đi bất kỳ phần nào của tệp, trừ khi có --no-encrypt. ERPC chỉ lưu các byte đã mã hóa và không bao giờ giữ khóa. erpc storage get nhận biết tệp đã mã hóa và giải mã tệp đó.
  • Mỗi tài khoản có một khóa storage, được giữ ở nơi lưu mà erpc login đã chọn. erpc không giữ khóa này trong keyring của kernel Linux, vốn bị mất khi khởi động lại: hãy đăng nhập với --store 1password hoặc --store file, hoặc dùng --no-encrypt. Với nơi lưu file, khóa nằm trong ~/.erpc/storage-key (mode 0600) mà không được mã hóa. --no-encrypt tải lên tệp bạn đang gửi nguyên trạng, không mã hóa.
  • Mất khóa storage nghĩa là mất mọi tệp được mã hóa bằng khóa đó, và ERPC không thể khôi phục. erpc storage key export --show in khóa ra để có thể giữ một bản sao ở nơi khác ngoài máy, và erpc storage key import nhập lại khóa đó trên một máy khác.
  • ERPC có thể thấy đường dẫn nơi tệp được lưu, và kích thước của tệp.
  • erpc storage keys list hiển thị các khóa truy cập storage, và erpc storage keys revoke <n> thu hồi một khóa.

erpc backup

erpc backup sao lưu một máy lên ERPC Global Storage bằng restic. Tệp được mã hóa trên máy của bạn trước khi rời khỏi máy, và ERPC không bao giờ giữ mật khẩu nào mở được các bản sao lưu.
LệnhChức năng
erpc backup initCài đặt restic, tạo các khóa truy cập và repository, và cấp cho máy này khóa restic riêng
erpc backup run [paths]Sao lưu. Trên Linux, khi không có đường dẫn, sao lưu / trừ các hệ thống tệp giả, các điểm mount và các đường dẫn chứa dữ liệu tạm thời. Trên các hệ điều hành khác, hãy chỉ định đường dẫn
erpc backup snapshotsCác snapshot của máy này; --all-hosts để xem snapshot của mọi máy
erpc backup restore <id|latest>Khôi phục vào một thư mục mới, trừ khi --target chỉ định thư mục khác. --in-place ghi đè lên máy này, sau khi hỏi
erpc backup checkKiểm tra repository và đọc lại 5% dữ liệu
erpc backup pruneGiữ 7 snapshot hằng ngày, 4 snapshot hằng tuần và 6 snapshot hằng tháng của một máy, sau khi hỏi
erpc backup schedule daily|weekly|off [paths]Chạy run theo bộ hẹn giờ, vào lúc --at (mặc định 03:00)
erpc backup statusLịch chạy, và lần chạy gần nhất kết thúc như thế nào
erpc backup password --showIn mật khẩu chính của repository, để giữ một bản sao ở nơi khác
  • Mỗi máy nhận một khóa chỉ cho phép ghi thêm (append-only); khóa này không thể xóa các bản sao lưu của chính máy đó. Máy mà bạn đã chạy erpc backup init cũng giữ các khóa có thể xóa, nên lớp bảo vệ này chỉ có hiệu lực trên máy không giữ phiên erpc và cũng không giữ các secret sao lưu của tài khoản.
  • Hãy giữ một bản sao của erpc backup password --show ở nơi khác ngoài các máy. Mất mật khẩu chính và backup.env của mọi máy nghĩa là mất các bản sao lưu.
  • Bản sao lưu bỏ qua các tệp khóa và secret hệ thống đã biết, chẳng hạn .ssh/id_*, .config/solana/id.json, phiên của erpc và các khóa host SSH. Dữ liệu khóa mang tên khác hoặc nằm ở vị trí khác sẽ được sao lưu như mọi tệp khác: hãy loại trừ chúng bằng --exclude.
  • erpc cài đặt restic 0.19.1 và kiểm tra cả archive lẫn chương trình theo các digest SHA-256 được biên dịch sẵn trong erpc.
  • Lên lịch: trên Linux, chạy sudo erpc backup init, rồi sudo erpc backup schedule daily. Trên macOS, chạy erpc backup schedule daily ~/Documents; tác vụ chạy dưới quyền của bạn, trong khi bạn đang đăng nhập.
  • Bản sao lưu được gửi đến khu vực mặc định của tài khoản. erpc backup chạy trên chính máy mà nó sao lưu; thay vào đó, server của một worker được thiết lập bằng erpc worker backup on (Sao lưu dữ liệu trạng thái của ứng dụng).