Skip to content

Commit 9bdae8b

Browse files
committed
docs: fix README accuracy
1 parent 144bc24 commit 9bdae8b

3 files changed

Lines changed: 65 additions & 1 deletion

File tree

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,12 @@ and this project adheres to
88

99
## [Unreleased]
1010

11+
## [4.0.1] - 2026-04-09
12+
13+
### Changed
14+
15+
- Documented `id()`, `register()`, `once()`, and `off()` methods in README
16+
1117
## [4.0.0] - 2026-03-18
1218

1319
### Changed

README.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,64 @@ await engine.debug(true): Promise<void> // sends "debug on"
216216
await engine.debug(false): Promise<void> // sends "debug off"
217217
```
218218

219+
### Querying the engine identity
220+
221+
```typescript
222+
async id(): Promise<ID>
223+
```
224+
225+
Waits for the UCI handshake to complete, then returns the engine's `ID` object
226+
(`{ name: string; author: string }`). Throws if the engine did not report an
227+
identity.
228+
229+
```typescript
230+
const { name, author } = await engine.id();
231+
console.log(`${name} by ${author}`);
232+
```
233+
234+
### Registering the engine
235+
236+
```typescript
237+
async register(options?: RegisterOptions): Promise<void>
238+
```
239+
240+
Sends a `register` command to the engine. Call without arguments to defer
241+
registration (`register later`), or pass `{ name, code }` to register
242+
immediately.
243+
244+
```typescript
245+
await engine.register(); // register later
246+
await engine.register({ name: 'My Name', code: '4359874324' });
247+
```
248+
249+
### Listening for one event
250+
251+
```typescript
252+
once<K extends keyof Events>(event: K): Promise<Events[K]>
253+
```
254+
255+
Returns a promise that resolves with the next emission of `event`. Useful for
256+
waiting on a single engine response without setting up a persistent listener.
257+
258+
```typescript
259+
const { move } = await engine.once('bestmove');
260+
```
261+
262+
### Removing a listener
263+
264+
```typescript
265+
off<K extends keyof Events>(event: K, listener: (data: Events[K]) => void | Promise<void>): void
266+
```
267+
268+
Removes a listener previously registered with `on()`.
269+
270+
```typescript
271+
const handler = ({ move }: { move: string | undefined }) => console.log(move);
272+
engine.on('bestmove', handler);
273+
//
274+
engine.off('bestmove', handler);
275+
```
276+
219277
### Low-level access
220278

221279
```typescript

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,5 +82,5 @@
8282
},
8383
"type": "module",
8484
"types": "dist/index.d.ts",
85-
"version": "4.0.0"
85+
"version": "4.0.1"
8686
}

0 commit comments

Comments
 (0)