@kvell007/embed-labs-cli 0.1.0-alpha.7 → 0.1.0-alpha.70
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +87 -23
- package/dist/assets/embed-labs-icon-dark.png +0 -0
- package/dist/assets/embed-labs-icon-light.png +0 -0
- package/dist/embed-labs-mcp-bridge.mjs +3139 -0
- package/dist/index.js +2443 -187
- package/dist/index.js.map +1 -1
- package/dist/install-progress.d.ts +2 -0
- package/dist/install-progress.js +75 -0
- package/dist/install-progress.js.map +1 -0
- package/dist/local-toolchain.d.ts +190 -5
- package/dist/local-toolchain.js +1774 -94
- package/dist/local-toolchain.js.map +1 -1
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -22,8 +22,8 @@ names.
|
|
|
22
22
|
- Auth token login, logout, and status commands.
|
|
23
23
|
- Account registration, API key issue/list, token usage metering, and billing
|
|
24
24
|
statement preview commands.
|
|
25
|
-
-
|
|
26
|
-
|
|
25
|
+
- Board knowledge/method discovery through Cloud API, plus local-first
|
|
26
|
+
toolchain installation, validation, compile, and hardware handoff.
|
|
27
27
|
- Debug tool, device, serial, SSH, and flash commands routed through the local
|
|
28
28
|
bridge.
|
|
29
29
|
- Project, task, artifact, and cloud status commands routed through the cloud
|
|
@@ -41,12 +41,29 @@ public SDK until a versioned API contract is approved.
|
|
|
41
41
|
Current experimental npm install:
|
|
42
42
|
|
|
43
43
|
```bash
|
|
44
|
-
npm install -g @
|
|
44
|
+
npm install -g embedlabs@latest
|
|
45
45
|
embedlabs --help
|
|
46
46
|
embedlabs help getting-started
|
|
47
|
+
embedlabs local toolchain list
|
|
48
|
+
embedlabs plugin update check
|
|
47
49
|
embedlabs plugin install all
|
|
48
50
|
```
|
|
49
51
|
|
|
52
|
+
Clean reinstall:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
npm uninstall -g embedlabs
|
|
56
|
+
npm install -g embedlabs@latest
|
|
57
|
+
embedlabs plugin install all --force
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
If an early test build was installed under legacy alias names, remove those
|
|
61
|
+
aliases once with:
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
npm uninstall -g embedlabs-cli embedboard embedboard-cli
|
|
65
|
+
```
|
|
66
|
+
|
|
50
67
|
Future organization-scope install after final release approval:
|
|
51
68
|
|
|
52
69
|
```bash
|
|
@@ -81,32 +98,60 @@ embedlabs doctor
|
|
|
81
98
|
embedlabs auth login --token <token>
|
|
82
99
|
```
|
|
83
100
|
|
|
101
|
+
If a cloud or plugin command reaches a protected API before a token is
|
|
102
|
+
configured, the CLI returns `auth_token_missing` with the registration URL and
|
|
103
|
+
these setup options:
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
open https://api.embedboard.com/dashboard
|
|
107
|
+
embedlabs auth login --token <your_token>
|
|
108
|
+
# or for automation:
|
|
109
|
+
export EMBED_API_TOKEN=<your_token>
|
|
110
|
+
embedlabs auth status
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
If `.embed-labs/auth.json` was copied from another computer, protected Cloud
|
|
114
|
+
requests fail before network I/O with `tool_integrity_check_failed` and the
|
|
115
|
+
message `工具完整性校验失败,请在当前电脑重新执行 embedlabs auth login --token <key>`.
|
|
116
|
+
|
|
84
117
|
For the current public API plus local TaishanPi verification path, see
|
|
85
118
|
`docs/runbooks/PUBLIC_CLI_USER_VERIFICATION.md`.
|
|
86
119
|
|
|
87
|
-
For
|
|
120
|
+
For board knowledge and local toolchain work:
|
|
88
121
|
|
|
89
122
|
```bash
|
|
90
|
-
embed
|
|
91
|
-
embed
|
|
92
|
-
embed
|
|
93
|
-
embed
|
|
94
|
-
embed
|
|
95
|
-
embed
|
|
96
|
-
embed
|
|
123
|
+
embed board registry list
|
|
124
|
+
embed board methods taishanpi-1m-rk3566
|
|
125
|
+
embed board knowledge search taishanpi-1m-rk3566 --query "UART pinout"
|
|
126
|
+
embed local toolchain list
|
|
127
|
+
embed local toolchain latest --board taishanpi-1m-rk3566
|
|
128
|
+
embed local toolchain validate --board taishanpi-1m-rk3566 --mode minimal
|
|
129
|
+
embed local compile taishanpi --source ./main.c --output ./.embed-labs/build/main
|
|
97
130
|
```
|
|
98
131
|
|
|
132
|
+
Server-side user workspaces and server Docker builds are disabled in the
|
|
133
|
+
local-first product mode. The server remains responsible for accounts, API
|
|
134
|
+
keys, model routing, billing, plugin releases, SDK/download metadata, and small
|
|
135
|
+
image/DTB/logo package generation.
|
|
136
|
+
|
|
99
137
|
For local hardware access:
|
|
100
138
|
|
|
101
139
|
```bash
|
|
102
140
|
embed bridge start
|
|
103
141
|
embed device list
|
|
104
142
|
embed tool call wifi.scan --input-json '{"host":"198.19.77.2","user":"root"}'
|
|
143
|
+
embed tool call rp2350.monitor.capabilities --json
|
|
144
|
+
embed tool call rp2350.monitor.gpio.read --input-json '{"pins":[16,17],"pull":"none"}' --approve
|
|
145
|
+
embed tool call rp2350.monitor.spi.transfer --input-json '{"hex":"a55a3cc3"}' --approve
|
|
146
|
+
embed tool call rp2350.monitor.uart.write --input-json '{"baud":115200,"text":"hello","line_ending":"lf"}' --approve
|
|
147
|
+
embed tool call rp2350.monitor.i2c.transfer --input-json '{"address":"0x50","write":"00","read_len":4}' --approve
|
|
148
|
+
embed tool call rp2350.monitor.wifi.manage --input-json '{"action":"scan"}' --approve
|
|
149
|
+
embed tool call rp2350.monitor.probe.debug --input-json '{"action":"status"}' --approve
|
|
105
150
|
embed tool call chip.temperature --input-json '{"host":"198.19.77.2","user":"root"}'
|
|
106
151
|
embed flash plan --board <rp2350|taishanpi> --artifact ./artifact.bin
|
|
107
152
|
```
|
|
108
153
|
|
|
109
|
-
For
|
|
154
|
+
For local Cloud API development, override the production default:
|
|
110
155
|
|
|
111
156
|
```bash
|
|
112
157
|
EMBED_CLOUD_API_URL=http://127.0.0.1:18100 embed cloud status
|
|
@@ -159,14 +204,25 @@ embed billing snapshot create --account <account_id> [--from <iso>] [--to <iso>]
|
|
|
159
204
|
embed billing snapshot list --account <account_id> [--json]
|
|
160
205
|
embed billing snapshot show <billing_snapshot_id> [--json]
|
|
161
206
|
|
|
207
|
+
embed board registry list [--json]
|
|
208
|
+
embed board methods <template_id> [--json]
|
|
209
|
+
embed board knowledge <template_id> [--json]
|
|
210
|
+
embed board knowledge search <template_id> --query <text> [--json]
|
|
162
211
|
embed build template list [--json]
|
|
163
212
|
embed build template show <template_id> [--json]
|
|
164
|
-
embed
|
|
165
|
-
embed
|
|
166
|
-
embed
|
|
167
|
-
embed
|
|
168
|
-
embed
|
|
169
|
-
embed
|
|
213
|
+
embed local toolchain list [--board <board_id>] [--json]
|
|
214
|
+
embed local toolchain installed [--board <board_id>] [--json]
|
|
215
|
+
embed local toolchain latest [--board <board_id>] [--json]
|
|
216
|
+
embed local toolchain current [--json]
|
|
217
|
+
embed local toolchain install [--board <board_id>] [--mode minimal|runtime|compile|qt|firmware|full|images] [--json]
|
|
218
|
+
embed local toolchain validate [--board <board_id>] [--mode minimal|runtime|compile|qt|firmware|full|images] [--json]
|
|
219
|
+
embed local compile taishanpi --source <main.c|main.cpp> --output <artifact> [--json]
|
|
220
|
+
embed local build qt-smoke --build-dir <build_dir> [--source <qt-cmake-dir>] [--target-name <executable>] [--json]
|
|
221
|
+
|
|
222
|
+
The `qt-smoke` subcommand name is kept for compatibility. When `--source` and
|
|
223
|
+
`--target-name` are supplied, it builds the supplied TaishanPi Qt/CMake
|
|
224
|
+
application, including official board-pack examples such as
|
|
225
|
+
`board-packs/taishanpi/examples/modbus-loop-demo/taishanpi`.
|
|
170
226
|
|
|
171
227
|
embed bridge start [--host 127.0.0.1] [--port 18083]
|
|
172
228
|
embed bridge status [--json]
|
|
@@ -182,6 +238,14 @@ embed tool call chip.cpu.frequency --input-json '{"host":"198.19.77.2","user":"r
|
|
|
182
238
|
embed tool call chip.temperature --input-json '{"host":"198.19.77.2","user":"root"}' [--json]
|
|
183
239
|
embed tool call qml.runtime.status --input-json '{"host":"198.19.77.2","user":"root","port":18130}' [--json]
|
|
184
240
|
embed tool call qml.runtime.start --input-json '{"host":"198.19.77.2","user":"root","port":18130}' [--json]
|
|
241
|
+
embed tool call rp2350.monitor.capabilities [--json]
|
|
242
|
+
embed tool call rp2350.monitor.gpio.read --input-json '{"pins":[16,17]}' --approve [--json]
|
|
243
|
+
embed tool call rp2350.monitor.spi.transfer --input-json '{"hex":"a55a3cc3"}' --approve [--json]
|
|
244
|
+
embed tool call rp2350.monitor.uart.write --input-json '{"baud":115200,"text":"hello","line_ending":"lf"}' --approve [--json]
|
|
245
|
+
embed tool call rp2350.monitor.i2c.transfer --input-json '{"address":"0x50","write":"00","read_len":4}' --approve [--json]
|
|
246
|
+
embed tool call rp2350.monitor.wifi.manage --input-json '{"action":"scan"}' --approve [--json]
|
|
247
|
+
embed tool call rp2350.monitor.probe.debug --input-json '{"action":"status"}' --approve [--json]
|
|
248
|
+
embed tool call rp2350.monitor.operation --input-json '{"action":"logic.stop","params":{}}' --approve [--json]
|
|
185
249
|
|
|
186
250
|
embed serial list [--json]
|
|
187
251
|
embed serial capture --path <port> [--baud 115200] [--duration 5] [--json]
|
|
@@ -248,7 +312,7 @@ preview records; they are not invoices and do not collect payment.
|
|
|
248
312
|
- `EMBED_BRIDGE_URL`: local bridge URL used by bridge-backed commands. Default:
|
|
249
313
|
`http://127.0.0.1:18083`.
|
|
250
314
|
- `EMBED_CLOUD_API_URL`: cloud API URL used by cloud-backed commands. Default:
|
|
251
|
-
`
|
|
315
|
+
`https://api.embedboard.com`.
|
|
252
316
|
- `EMBED_API_TOKEN`: auth token source for non-interactive sessions.
|
|
253
317
|
- `EMBED_AUTH_PROFILE`: profile name used with `EMBED_API_TOKEN`.
|
|
254
318
|
- `EMBED_AUTH_FILE`: token file path for `embed auth login`. Default:
|
|
@@ -274,10 +338,10 @@ Current local workflows are intentionally guarded:
|
|
|
274
338
|
evidence without opening probes or starting debug sessions.
|
|
275
339
|
- RP2350 UF2 flashing requires a mounted UF2 volume, a `.uf2` artifact, a ready
|
|
276
340
|
flash plan, and explicit `--approve`.
|
|
277
|
-
- TaishanPi
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
341
|
+
- TaishanPi initialization image flashing resolves the installed local SDK
|
|
342
|
+
image set by default. `embed flash run --board taishanpi --approve` writes
|
|
343
|
+
through Local Bridge only after the ready plan validates `rkdeveloptool`,
|
|
344
|
+
`parameter.txt`, and all required images.
|
|
281
345
|
|
|
282
346
|
These commands should be treated as current local evidence and planning tools,
|
|
283
347
|
not broad hardware support claims.
|
|
Binary file
|
|
Binary file
|