@kvell007/embed-labs-local-bridge 0.1.0-alpha.24 → 0.1.0-alpha.26
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 +34 -2
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -19,12 +19,16 @@ are complete.
|
|
|
19
19
|
`@embed-labs/local-bridge-linux-arm64`, and
|
|
20
20
|
`@embed-labs/local-bridge-win32-x64`.
|
|
21
21
|
- Local health endpoint.
|
|
22
|
-
-
|
|
23
|
-
USB Loader/Maskrom style devices,
|
|
22
|
+
- Event-maintained device inventory for serial ports, RP2350-compatible UF2
|
|
23
|
+
volumes, Rockchip USB Loader/Maskrom style devices, RP2350 Monitor endpoints,
|
|
24
|
+
and TaishanPi USB ECM or configured-host probes.
|
|
24
25
|
- Bounded TCP, serial path, serial capture, and SSH command probes.
|
|
25
26
|
- Non-destructive debug tool availability scans for OpenOCD, probe-rs, pyOCD,
|
|
26
27
|
and SEGGER J-Link command-line tools.
|
|
27
28
|
- Flash plan endpoints and local job tracking.
|
|
29
|
+
- RP2350/Pico 2 monitor capability catalog plus first-class GPIO, UART, I2C,
|
|
30
|
+
SPI, logic-analyzer, Wi-Fi, and debug-probe operations routed through the
|
|
31
|
+
shared `/api/operation` bridge.
|
|
28
32
|
- Stable HTTP/JSON response contracts used by the CLI and agent plugins.
|
|
29
33
|
|
|
30
34
|
## Install
|
|
@@ -62,6 +66,9 @@ omitted during install, reinstall without `--omit=optional`.
|
|
|
62
66
|
|
|
63
67
|
- `GET /healthz`
|
|
64
68
|
- `GET /v1/devices`
|
|
69
|
+
- `GET /v1/devices?refresh=1`
|
|
70
|
+
- `GET /v1/devices/<local_device_id>`
|
|
71
|
+
- `GET /v1/devices/stream`
|
|
65
72
|
- `GET /v1/debug/tools`
|
|
66
73
|
- `GET /v1/tools/capabilities`
|
|
67
74
|
- `POST /v1/tools/invoke`
|
|
@@ -81,15 +88,37 @@ Examples:
|
|
|
81
88
|
```bash
|
|
82
89
|
curl -fsS http://127.0.0.1:18083/healthz
|
|
83
90
|
curl -fsS http://127.0.0.1:18083/v1/devices
|
|
91
|
+
curl -fsS http://127.0.0.1:18083/v1/devices?refresh=1
|
|
84
92
|
curl -fsS http://127.0.0.1:18083/v1/debug/tools
|
|
85
93
|
curl -fsS http://127.0.0.1:18083/v1/devices/probe \
|
|
86
94
|
-H 'content-type: application/json' \
|
|
87
95
|
-d '{"host":"198.19.77.2","ports":[22,15301],"timeout_ms":1000}'
|
|
96
|
+
curl -fsS http://127.0.0.1:18083/v1/tools/invoke \
|
|
97
|
+
-H 'content-type: application/json' \
|
|
98
|
+
-d '{"capability_id":"rp2350.monitor.capabilities","input":{}}'
|
|
99
|
+
curl -fsS http://127.0.0.1:18083/v1/tools/invoke \
|
|
100
|
+
-H 'content-type: application/json' \
|
|
101
|
+
-d '{"capability_id":"rp2350.monitor.gpio.read","approved":true,"input":{"pins":[16,17],"pull":"none"}}'
|
|
88
102
|
curl -fsS http://127.0.0.1:18083/v1/tools/invoke \
|
|
89
103
|
-H 'content-type: application/json' \
|
|
90
104
|
-d '{"capability_id":"rp2350.monitor.spi.transfer","approved":true,"input":{"hex":"a55a3cc3"}}'
|
|
91
105
|
```
|
|
92
106
|
|
|
107
|
+
RP2350/Pico 2 monitor capabilities are intentionally exposed as a complete
|
|
108
|
+
hardware surface: `rp2350.monitor.capabilities`, `status`, `gpio.read`,
|
|
109
|
+
`gpio.write`, `uart.write`, `i2c.transfer`, `spi.transfer`, `logic.capture`,
|
|
110
|
+
`logic.decode`, `wifi.manage`, `probe.debug`, `operation`, and legacy
|
|
111
|
+
`command`. Agents should ask for the catalog first when the protocol or
|
|
112
|
+
operation is unclear, then use the specific tool rather than scraping the
|
|
113
|
+
monitor UI.
|
|
114
|
+
|
|
115
|
+
`GET /v1/devices` and `/v1/devices/stream` read the bridge's current
|
|
116
|
+
in-memory inventory. They do not perform hardware scans as a side effect. The
|
|
117
|
+
bridge keeps that inventory warm through startup refresh, platform device
|
|
118
|
+
events, cheap locator polling, and a low-frequency fallback scan. Use
|
|
119
|
+
`/v1/devices?refresh=1` or the `device.scan` tool only for explicit diagnostic
|
|
120
|
+
refreshes.
|
|
121
|
+
|
|
93
122
|
## Hardware Support Boundary
|
|
94
123
|
|
|
95
124
|
Current local behavior is intentionally narrow:
|
|
@@ -101,6 +130,9 @@ Current local behavior is intentionally narrow:
|
|
|
101
130
|
they do not open probes, start GDB servers, or create debug sessions.
|
|
102
131
|
- RP2350 UF2 flashing copies a `.uf2` artifact to a mounted UF2 volume only
|
|
103
132
|
after a ready flash plan and explicit approval.
|
|
133
|
+
- RP2350 Monitor protocol operations are exposed through the capability catalog
|
|
134
|
+
and specific local tools. Agents should not scrape the monitor UI or call raw
|
|
135
|
+
serial/TCP endpoints to learn operation formats.
|
|
104
136
|
- TaishanPi image-set planning can check required image files and
|
|
105
137
|
`rkdeveloptool` availability, but real destructive TaishanPi flashing is
|
|
106
138
|
guarded and not enabled. The bridge returns a blocked job until the exact
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kvell007/embed-labs-local-bridge",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
3
|
+
"version": "0.1.0-alpha.26",
|
|
4
4
|
"description": "Local hardware bridge service for Embed Labs Cloud. Experimental npm publish.",
|
|
5
5
|
"private": false,
|
|
6
6
|
"type": "module",
|
|
@@ -18,10 +18,10 @@
|
|
|
18
18
|
"embed-local-bridge": "dist/index.js"
|
|
19
19
|
},
|
|
20
20
|
"optionalDependencies": {
|
|
21
|
-
"@embed-labs/local-bridge-darwin-arm64": "npm:@kvell007/embed-labs-local-bridge-darwin-arm64@0.1.0-alpha.
|
|
22
|
-
"@embed-labs/local-bridge-linux-arm64": "npm:@kvell007/embed-labs-local-bridge-linux-arm64@0.1.0-alpha.
|
|
23
|
-
"@embed-labs/local-bridge-linux-x64": "npm:@kvell007/embed-labs-local-bridge-linux-x64@0.1.0-alpha.
|
|
24
|
-
"@embed-labs/local-bridge-win32-x64": "npm:@kvell007/embed-labs-local-bridge-win32-x64@0.1.0-alpha.
|
|
21
|
+
"@embed-labs/local-bridge-darwin-arm64": "npm:@kvell007/embed-labs-local-bridge-darwin-arm64@0.1.0-alpha.26",
|
|
22
|
+
"@embed-labs/local-bridge-linux-arm64": "npm:@kvell007/embed-labs-local-bridge-linux-arm64@0.1.0-alpha.26",
|
|
23
|
+
"@embed-labs/local-bridge-linux-x64": "npm:@kvell007/embed-labs-local-bridge-linux-x64@0.1.0-alpha.26",
|
|
24
|
+
"@embed-labs/local-bridge-win32-x64": "npm:@kvell007/embed-labs-local-bridge-win32-x64@0.1.0-alpha.26"
|
|
25
25
|
},
|
|
26
26
|
"publishConfig": {
|
|
27
27
|
"access": "public",
|