@beeos-ai/bma-executor-sdk 0.4.1 → 0.4.3
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 +23 -21
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,26 +1,28 @@
|
|
|
1
1
|
# @beeos-ai/bma-executor-sdk (TypeScript)
|
|
2
2
|
|
|
3
|
+
[](https://www.npmjs.com/package/@beeos-ai/bma-executor-sdk)
|
|
4
|
+
|
|
3
5
|
Executor (`ExecutorClient`), harness (`Harness`) and agent ends of the BMA
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
Executor Protocol `bma.executor.v1.1` (and `v1`), with the same three parts and
|
|
7
|
+
behavior as the [Go `executor` module](../README.md). Protocol types are
|
|
8
|
+
generated from the contract ([`src/generated/executor.ts`](src/generated/executor.ts),
|
|
9
|
+
snapshot and lock in [`contracts/bma/executor`](../../contracts/bma/executor));
|
|
10
|
+
the runtime is handwritten. Transports: WebSocket, WebSocket over a Unix domain
|
|
11
|
+
socket or Windows named pipe (`unix://`, `npipe://`), in-process.
|
|
12
|
+
|
|
13
|
+
| | |
|
|
14
|
+
| --- | --- |
|
|
15
|
+
| Version | 0.4.3 (tag `executor-ts/v0.4.3`), see [CHANGELOG](../../CHANGELOG.md) |
|
|
16
|
+
| Protocol | `bma.executor.v1.1` (contract 1.1.0, [`lock.json`](../../contracts/bma/executor/lock.json)) |
|
|
17
|
+
| Node.js | 20 or newer; ESM, depends on `ws` |
|
|
18
|
+
| Integration guide | [docs/executor](../../docs/executor/README.md) ([中文](../../docs/executor/README.zh-CN.md)) |
|
|
8
19
|
|
|
9
20
|
```sh
|
|
10
|
-
npm install @beeos-ai/bma-executor-sdk
|
|
21
|
+
npm install @beeos-ai/bma-executor-sdk@0.4.3
|
|
11
22
|
```
|
|
12
23
|
|
|
13
|
-
The REST/façade client is the separate
|
|
14
|
-
`@beeos-ai/bma-sdk`
|
|
15
|
-
|
|
16
|
-
## Usage
|
|
17
|
-
|
|
18
|
-
The executor protocol (`bma.executor.v1.1` and `v1`) for Node.js 20+, with
|
|
19
|
-
the same three parts and behavior as [Go `executor`](..). Protocol
|
|
20
|
-
types are generated from the contract
|
|
21
|
-
([`src/generated/executor.ts`](src/generated/executor.ts), snapshot and lock in
|
|
22
|
-
[`contracts/bma/executor`](../contracts/bma/executor)); the runtime is
|
|
23
|
-
handwritten.
|
|
24
|
+
The REST / façade client is the separate package
|
|
25
|
+
[`@beeos-ai/bma-sdk`](../../typescript).
|
|
24
26
|
|
|
25
27
|
### Executor quick start
|
|
26
28
|
|
|
@@ -99,7 +101,7 @@ negotiation, bearer token, close codes) over a Unix domain socket
|
|
|
99
101
|
(`unix:///path.sock`, 0700 directory, 0600 socket) or a Windows named pipe
|
|
100
102
|
(`npipe:////./pipe/<name>`), as the Go and Python SDKs do. Each start writes a
|
|
101
103
|
fresh local token (`createLocalToken`, 0600); environment keys are never used
|
|
102
|
-
locally (see [`src/
|
|
104
|
+
locally (see [`src/local.ts`](src/local.ts)). When the harness
|
|
103
105
|
dials the executor it also dials the session MCP channels (`session.mcp`).
|
|
104
106
|
|
|
105
107
|
### Agent executors
|
|
@@ -153,11 +155,11 @@ executor and in-memory platform in one process).
|
|
|
153
155
|
| `AgentPlatform` | `AgentPlatform` |
|
|
154
156
|
| `*RPCError`, `ErrNotConnected`, `ErrClientStopped`, `ErrSessionEnded`, `ErrToolOutcomeUnknown`, `ErrAssignRejected` | `RpcError`, `NotConnectedError`, `ClientStoppedError`, `SessionEndedError`, `ToolOutcomeUnknownError`, `AssignRejectedError` |
|
|
155
157
|
| `Core` (bash/files/stdio MCP) | not provided |
|
|
156
|
-
|
|
|
158
|
+
| `StaticToken("unix://…")`, `ListenUnixSocket` + `Harness.DialExecutor`, `InProcessDialer` | `Harness.listenLocal` / `listenExecutor` + `Harness.dialExecutor` / `inProcessDialer` (named pipes only in TypeScript) |
|
|
157
159
|
|
|
158
160
|
### Tests
|
|
159
161
|
|
|
160
|
-
`npm test` runs
|
|
162
|
+
`npm test` runs the conformance examples against
|
|
161
163
|
both TS ends ([`test/conformance.test.ts`](test/conformance.test.ts)), executor ↔
|
|
162
164
|
harness over every transport with reconnect and lease
|
|
163
165
|
([`test/executor.test.ts`](test/executor.test.ts)), the agent capability
|
|
@@ -167,5 +169,5 @@ agent ↔ Go platform, TS harness ↔ Go executor; needs Go), and interop with t
|
|
|
167
169
|
Python SDK over WebSocket on a Unix socket
|
|
168
170
|
([`test/interop-python.test.ts`](test/interop-python.test.ts): TS executor ↔
|
|
169
171
|
Python harness, Python executor ↔ TS harness; `BMA_PYTHON_SDK=<python dir with
|
|
170
|
-
.venv>`, skipped without it)
|
|
171
|
-
|
|
172
|
+
.venv>`, skipped without it), and TS ↔ Go over a Unix socket
|
|
173
|
+
([`test/interop-go-unix.test.ts`](test/interop-go-unix.test.ts)).
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@beeos-ai/bma-executor-sdk",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.3",
|
|
4
4
|
"description": "BMA executor protocol (bma.executor.v1.1): executor, harness and agent ends with WebSocket, local socket and in-process transports.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|