Tổng quan CLI
Imbrace CLI (@imbrace/cli) là một công cụ dòng lệnh để tương tác với nền tảng Imbrace. Các lệnh gọi trực tiếp đến nền tảng Imbrace thông qua gói @imbrace/sdk. Nguồn: imbraceltd/imbrace-cli.
imbrace (CLI) → https://app-gatewayv2.imbrace.co (Nền tảng Imbrace)Luồng xác thực
CLI hỗ trợ hai phương thức xác thực:
1. API Key (thông tin xác thực bắt đầu bằng sk- hoặc api_):
- Được truyền trực tiếp đến SDK:
new ImbraceClient({ apiKey: credential }) - Được lưu nguyên trạng trong cấu hình cục bộ
2. Email + Mật khẩu (trả về JWT token):
- SDK:
client.login(email, password)→ token được lưu cục bộ - JWT token được lưu làm thông tin xác thực
Lưu trữ thông tin xác thực
Thông tin xác thực được lưu qua gói conf với projectName: "imbrace".
| Hệ điều hành | Đường dẫn cấu hình |
|---|---|
| macOS | ~/Library/Preferences/imbrace-nodejs/config.json |
| Linux | ~/.config/imbrace-nodejs/config.json |
| Windows | %APPDATA%\imbrace-nodejs\Config\config.json |
Các trường được lưu: credential, method ("api-key" | "password"), email.
Tự động đăng nhập
Mọi lệnh CLI (ngoại trừ login) đều kế thừa BaseCommand, lệnh này gọi ensureLoggedIn() khi khởi tạo. Nếu không tìm thấy thông tin xác thực, nó sẽ tương tác yêu cầu người dùng chọn phương thức đăng nhập (API Key hoặc Email + Mật khẩu).
Cấu trúc dự án
imbrace-cli/└── cli/ ← oclif CLI └── src/ ├── base-command.ts ← Tự động đăng nhập ├── config.ts ← Lưu trữ thông tin xác thực (conf) └── commands/ ├── login.ts / logout.ts / whoami.ts / docs.ts ├── data-board/ (8 lệnh) ├── ai-agent/ (9 lệnh) ├── document-ai/ (7 lệnh) ├── orchestrator/ (4 lệnh) ├── guardrail/ (5 lệnh) └── workflow/ (32 lệnh)Kiến trúc Workflow Node
Workflows sử dụng cấu trúc danh sách liên kết thông qua con trỏ nextAction:
{ version: { trigger: { name: "trigger", type: "PIECE_TRIGGER" | "EMPTY" | "PIECE" | "ROUTER" | "LOOP_ON_ITEMS" | "CODE", settings: { pieceName, pieceVersion, input, ... }, nextAction: { ... }, children?: any[], // ROUTER branches firstLoopAction?: any, // LOOP_ON_ITEMS body } }}Tất cả các thao tác node đều sử dụng applyFlowOperation() với các loại: UPDATE_TRIGGER, ADD_ACTION, UPDATE_ACTION, DELETE_ACTION, LOCK_AND_PUBLISH, CHANGE_STATUS, CHANGE_FOLDER.