@beeos-ai/bma-executor-sdk 0.4.1 → 0.4.2

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.
Files changed (2) hide show
  1. package/README.md +23 -21
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,26 +1,28 @@
1
1
  # @beeos-ai/bma-executor-sdk (TypeScript)
2
2
 
3
+ [![npm](https://img.shields.io/npm/v/@beeos-ai/bma-executor-sdk.svg)](https://www.npmjs.com/package/@beeos-ai/bma-executor-sdk)
4
+
3
5
  Executor (`ExecutorClient`), harness (`Harness`) and agent ends of the BMA
4
- executor protocol `bma.executor.v1.1`, with protocol types generated from the
5
- BMA contract (`contracts/bma/executor`). Transports: WebSocket, WebSocket over
6
- a Unix domain socket or Windows named pipe (`unix://`, `npipe://`), in-process.
7
- Node >= 20.
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.2 (tag `executor-ts/v0.4.2`), 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.2
11
22
  ```
12
23
 
13
- The REST/façade client is the separate
14
- `@beeos-ai/bma-sdk` package.
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/executor/local.ts`](src/executor/local.ts)). When the harness
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
- | — (TCP WebSocket only) | `Harness.listenLocal` / `listenExecutor` + `Harness.dialExecutor` / `inProcessPair` |
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, besides the REST tests: the conformance examples against
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). Go has no Unix-socket dialer yet, so TS ↔ Go
171
- local-socket interop is pending.
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.1",
3
+ "version": "0.4.2",
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": {