@localhostdevs/sdk 0.14.0 → 0.16.0
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 +97 -29
- package/dist/argSchema.d.ts +7 -0
- package/dist/argSchema.d.ts.map +1 -0
- package/dist/argSchema.js +63 -0
- package/dist/argSchema.js.map +1 -0
- package/dist/bot.d.ts +5 -5
- package/dist/bot.d.ts.map +1 -1
- package/dist/bot.js +112 -16
- package/dist/bot.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/jsonSchema.d.ts +5 -0
- package/dist/jsonSchema.d.ts.map +1 -0
- package/dist/jsonSchema.js +7 -0
- package/dist/jsonSchema.js.map +1 -0
- package/dist/transport.d.ts +4 -0
- package/dist/transport.d.ts.map +1 -1
- package/dist/transport.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types.d.ts +104 -33
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +64 -61
package/dist/types.d.ts
CHANGED
|
@@ -1,15 +1,23 @@
|
|
|
1
|
+
import type { ZodType } from 'zod';
|
|
1
2
|
import type { CollectResult } from './collect.js';
|
|
2
3
|
import type { CollectOption } from './collectStore.js';
|
|
3
4
|
export type { CollectResult, PluralityResult, ListResult } from './collect.js';
|
|
4
5
|
export type { CollectOption } from './collectStore.js';
|
|
5
6
|
export type CommandHandler = (ctx: CommandContext) => Promise<void> | void;
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
/** Options object for `ctx.collect()`. Extracted so `FullReplyApi` and
|
|
8
|
+
* `bot.ts`'s implementation share the same inline type. */
|
|
9
|
+
export type CollectArgs = {
|
|
10
|
+
prompt: {
|
|
11
|
+
text: string;
|
|
12
|
+
};
|
|
13
|
+
submission: 'option' | 'text';
|
|
14
|
+
options?: CollectOption[];
|
|
15
|
+
aggregate: 'plurality' | 'list';
|
|
16
|
+
after?: number;
|
|
17
|
+
until?: number;
|
|
18
|
+
};
|
|
19
|
+
/** The complete reply surface (all methods currently on CommandContext). */
|
|
20
|
+
export interface FullReplyApi {
|
|
13
21
|
/** Send the final reply. Exactly once per command. */
|
|
14
22
|
reply(body: ReplyBody): Promise<void>;
|
|
15
23
|
/**
|
|
@@ -42,14 +50,6 @@ export interface CommandContext {
|
|
|
42
50
|
alt?: string;
|
|
43
51
|
text?: string;
|
|
44
52
|
}): Promise<void>;
|
|
45
|
-
/**
|
|
46
|
-
* The answering user's id on action dispatches (Interactive Prompts).
|
|
47
|
-
* Threaded from the server-injected reserved `args._user`. Undefined for
|
|
48
|
-
* normal typed commands. Server-controlled → un-spoofable.
|
|
49
|
-
*/
|
|
50
|
-
readonly user?: {
|
|
51
|
-
id: string;
|
|
52
|
-
};
|
|
53
53
|
/**
|
|
54
54
|
* Send the final reply as an interactive buttons component (0.11.0+).
|
|
55
55
|
* Generates a `promptId` (nanoid). Exactly once per command.
|
|
@@ -74,6 +74,14 @@ export interface CommandContext {
|
|
|
74
74
|
args?: Record<string, unknown>;
|
|
75
75
|
charge?: boolean;
|
|
76
76
|
}): Promise<void>;
|
|
77
|
+
/** Open a generic collect (the primitive `ctx.poll` builds on). Posts a
|
|
78
|
+
* `collect` component as the dispatch reply and returns `{ promptId }`; the
|
|
79
|
+
* result is delivered later via the bot's collect result sink. Requires at
|
|
80
|
+
* least one of `after` (time close, seconds) / `until` (submission-count
|
|
81
|
+
* close). Exactly once per command. */
|
|
82
|
+
collect(opts: CollectArgs): Promise<{
|
|
83
|
+
promptId: string;
|
|
84
|
+
}>;
|
|
77
85
|
/** Open a poll (Phase 2b). Wrapper over `ctx.collect` with
|
|
78
86
|
* `submission:'option'` + `aggregate:'plurality'`. Posts a `collect`
|
|
79
87
|
* component as the dispatch reply and returns `{ promptId }`; the result is
|
|
@@ -86,23 +94,24 @@ export interface CommandContext {
|
|
|
86
94
|
}): Promise<{
|
|
87
95
|
promptId: string;
|
|
88
96
|
}>;
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
97
|
+
}
|
|
98
|
+
type ReplyApi<R extends ReplyKind> = [
|
|
99
|
+
ReplyKind
|
|
100
|
+
] extends [R] ? FullReplyApi : R extends 'text' ? Pick<FullReplyApi, 'reply'> : R extends 'list' ? Pick<FullReplyApi, 'replyList'> : R extends 'table' ? Pick<FullReplyApi, 'replyTable'> : R extends 'image' ? Pick<FullReplyApi, 'replyImage'> : R extends 'buttons' ? Pick<FullReplyApi, 'replyButtons' | 'askYesNo' | 'askChoice'> : R extends 'collect' ? Pick<FullReplyApi, 'collect' | 'poll'> : FullReplyApi;
|
|
101
|
+
/** Base fields shared by all CommandContext variants (no reply methods). */
|
|
102
|
+
export interface CommandContextBase<Args = Record<string, unknown>> {
|
|
103
|
+
/** Bot-scoped command name (e.g., 'price', 'analyze'). */
|
|
104
|
+
readonly command: string;
|
|
105
|
+
/** Decoded argument map from the publisher. */
|
|
106
|
+
readonly args: Args;
|
|
107
|
+
/** The answering user's id on action dispatches (Interactive Prompts).
|
|
108
|
+
* Threaded from the server-injected reserved `args._user`. Undefined for
|
|
109
|
+
* normal typed commands. Server-controlled → un-spoofable. */
|
|
110
|
+
readonly user?: {
|
|
111
|
+
id: string;
|
|
112
|
+
};
|
|
113
|
+
/** Unique id assigned by the publisher; used for idempotency dedup + reply correlation. */
|
|
114
|
+
readonly msgId: string;
|
|
106
115
|
/** Send an intermediate progress frame. Only present when the command's
|
|
107
116
|
* effective streaming flag is true. Throws if called after reply(). */
|
|
108
117
|
update?(args: {
|
|
@@ -112,6 +121,13 @@ export interface CommandContext {
|
|
|
112
121
|
mimeType?: string;
|
|
113
122
|
}): Promise<void>;
|
|
114
123
|
}
|
|
124
|
+
/**
|
|
125
|
+
* Context passed to every command handler. Generic form: `CommandContext<Args, R>`
|
|
126
|
+
* narrows `args` to `Args` and exposes only the reply method(s) valid for the
|
|
127
|
+
* declared return kind `R`. Default (no params) keeps the full reply surface so
|
|
128
|
+
* `bot.ts` and existing handlers compile unchanged.
|
|
129
|
+
*/
|
|
130
|
+
export type CommandContext<Args = Record<string, unknown>, R extends ReplyKind = ReplyKind> = CommandContextBase<Args> & ReplyApi<R>;
|
|
115
131
|
/** Collect component body (Phase 2b). Emit via `ctx.collect` / `ctx.poll`. */
|
|
116
132
|
export interface CollectResponse {
|
|
117
133
|
kind: 'collect';
|
|
@@ -288,7 +304,7 @@ export interface BotOptions {
|
|
|
288
304
|
/** When true, command handlers can call ctx.update() to emit progress
|
|
289
305
|
* frames before the final ctx.reply(). When false (default), ctx.update
|
|
290
306
|
* is not exposed; calling it would be a type error. Per-command override
|
|
291
|
-
* available via bot.cmd(name,
|
|
307
|
+
* available via bot.cmd({ name, streaming: true }, handler). */
|
|
292
308
|
streaming?: boolean;
|
|
293
309
|
/** How many commands this bot's machine can process concurrently. Advertised
|
|
294
310
|
* in IDENTIFY so the gateway paces delivery and queues overflow beyond this.
|
|
@@ -334,10 +350,28 @@ export interface CommandHandlerOptions {
|
|
|
334
350
|
* that only set `text`). Doesn't affect runtime behavior — the actual
|
|
335
351
|
* mimeType sent on the wire is whatever ctx.reply({ mimeType }) passes. */
|
|
336
352
|
mimeType?: string;
|
|
353
|
+
/** Human-readable description of what the command does. Mirrored from
|
|
354
|
+
* `cmd({ description })` and advertised in IDENTIFY so the gateway can
|
|
355
|
+
* persist it to the command catalog. */
|
|
356
|
+
description?: string;
|
|
337
357
|
/** Internal action handler (Interactive Prompts). Registered via
|
|
338
358
|
* `bot.action()`; EXCLUDED from the IDENTIFY advertised command list so it
|
|
339
359
|
* never appears in the public command catalog / marketplace. */
|
|
340
360
|
internal?: boolean;
|
|
361
|
+
/** zod schema for this command's args (`ctx.args`). Advertised as JSON Schema
|
|
362
|
+
* in IDENTIFY and validated at dispatch — a bad dispatch is rejected. */
|
|
363
|
+
input?: ZodType;
|
|
364
|
+
/** zod schema for this command's reply `data` payload. Advertised as JSON Schema
|
|
365
|
+
* and validated inside `ctx.reply` (warn-only on mismatch). */
|
|
366
|
+
output?: ZodType;
|
|
367
|
+
/** Internal, set by cmd(): pre-built JSON-Schema advertised in IDENTIFY (from the args descriptor). */
|
|
368
|
+
advertiseInput?: Record<string, unknown>;
|
|
369
|
+
/** Internal, set by cmd(): pre-built JSON-Schema advertised in IDENTIFY (from returns.data). */
|
|
370
|
+
advertiseOutput?: Record<string, unknown>;
|
|
371
|
+
/** Internal, set by cmd(): declared reply kind, advertised + enforced at the reply path. */
|
|
372
|
+
outputKind?: ReplyKind;
|
|
373
|
+
/** Internal, set by cmd(): compiled zod schema used ONLY when validate:true. */
|
|
374
|
+
argsZod?: ZodType;
|
|
341
375
|
}
|
|
342
376
|
/** Internal: command frame the gateway sends to the bot. */
|
|
343
377
|
export interface CommandEnvelope {
|
|
@@ -362,4 +396,41 @@ export interface HeartbeatEnvelope {
|
|
|
362
396
|
botId: string;
|
|
363
397
|
ts: number;
|
|
364
398
|
}
|
|
399
|
+
export type ArgType = 'string' | 'number' | 'boolean' | 'enum';
|
|
400
|
+
export interface ArgSpec {
|
|
401
|
+
type: ArgType;
|
|
402
|
+
required?: boolean;
|
|
403
|
+
description?: string;
|
|
404
|
+
values?: readonly string[];
|
|
405
|
+
}
|
|
406
|
+
export type ReplyKind = 'text' | 'list' | 'table' | 'image' | 'buttons' | 'collect';
|
|
407
|
+
export interface ReturnsSpec {
|
|
408
|
+
kind: ReplyKind;
|
|
409
|
+
data?: Record<string, 'string' | 'number' | 'boolean'>;
|
|
410
|
+
}
|
|
411
|
+
export interface CommandDef {
|
|
412
|
+
name: string;
|
|
413
|
+
description?: string;
|
|
414
|
+
args?: Record<string, ArgSpec>;
|
|
415
|
+
returns?: ReturnsSpec;
|
|
416
|
+
validate?: boolean;
|
|
417
|
+
streaming?: boolean;
|
|
418
|
+
mimeType?: string;
|
|
419
|
+
input?: ZodType;
|
|
420
|
+
output?: ZodType;
|
|
421
|
+
}
|
|
422
|
+
type ScalarOf<S extends ArgSpec> = S['type'] extends 'string' ? string : S['type'] extends 'number' ? number : S['type'] extends 'boolean' ? boolean : S['type'] extends 'enum' ? S['values'] extends readonly (infer V)[] ? V : string : unknown;
|
|
423
|
+
type RequiredKeys<A extends Record<string, ArgSpec>> = {
|
|
424
|
+
[K in keyof A]: A[K]['required'] extends true ? K : never;
|
|
425
|
+
}[keyof A];
|
|
426
|
+
type StrictArgs<A extends Record<string, ArgSpec>> = {
|
|
427
|
+
[K in RequiredKeys<A>]: ScalarOf<A[K]>;
|
|
428
|
+
} & {
|
|
429
|
+
[K in Exclude<keyof A, RequiredKeys<A>>]?: ScalarOf<A[K]>;
|
|
430
|
+
};
|
|
431
|
+
type LooseArgs<A extends Record<string, ArgSpec>> = {
|
|
432
|
+
[K in keyof A]?: ScalarOf<A[K]>;
|
|
433
|
+
};
|
|
434
|
+
export type ArgsOf<D extends CommandDef> = D['args'] extends Record<string, ArgSpec> ? D['validate'] extends true ? StrictArgs<D['args']> : LooseArgs<D['args']> : Record<string, unknown>;
|
|
435
|
+
export type ReturnsOf<D extends CommandDef> = D['returns'] extends ReturnsSpec ? D['returns']['kind'] : ReplyKind;
|
|
365
436
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/E,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAE3E,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const SDK_PACKAGE_VERSION = "0.
|
|
1
|
+
export declare const SDK_PACKAGE_VERSION = "0.16.0";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
// AUTO-GENERATED by scripts/generate-version.mjs from package.json.
|
|
2
2
|
// Do not edit by hand — run `npm run build` after bumping package.json.
|
|
3
|
-
export const SDK_PACKAGE_VERSION = '0.
|
|
3
|
+
export const SDK_PACKAGE_VERSION = '0.16.0';
|
|
4
4
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -1,61 +1,64 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@localhostdevs/sdk",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "JavaScript SDK for building bots on localhostdevs — run your app on your laptop, publish it as a command-driven bot.",
|
|
5
|
-
"keywords": [
|
|
6
|
-
"localhostdevs",
|
|
7
|
-
"bot",
|
|
8
|
-
"websocket",
|
|
9
|
-
"chatops",
|
|
10
|
-
"cli",
|
|
11
|
-
"sdk"
|
|
12
|
-
],
|
|
13
|
-
"homepage": "https://github.com/jugod0/localhostdevs-sdk",
|
|
14
|
-
"repository": {
|
|
15
|
-
"type": "git",
|
|
16
|
-
"url": "git+https://github.com/jugod0/localhostdevs-sdk.git"
|
|
17
|
-
},
|
|
18
|
-
"bugs": {
|
|
19
|
-
"url": "https://github.com/jugod0/localhostdevs-sdk/issues"
|
|
20
|
-
},
|
|
21
|
-
"license": "MIT",
|
|
22
|
-
"type": "module",
|
|
23
|
-
"main": "./dist/index.js",
|
|
24
|
-
"types": "./dist/index.d.ts",
|
|
25
|
-
"exports": {
|
|
26
|
-
".": {
|
|
27
|
-
"types": "./dist/index.d.ts",
|
|
28
|
-
"import": "./dist/index.js",
|
|
29
|
-
"default": "./dist/index.js"
|
|
30
|
-
}
|
|
31
|
-
},
|
|
32
|
-
"files": [
|
|
33
|
-
"dist",
|
|
34
|
-
"README.md"
|
|
35
|
-
],
|
|
36
|
-
"engines": {
|
|
37
|
-
"node": ">=22.5"
|
|
38
|
-
},
|
|
39
|
-
"scripts": {
|
|
40
|
-
"generate-version": "node scripts/generate-version.mjs",
|
|
41
|
-
"build": "npm run generate-version && tsc -p tsconfig.build.json",
|
|
42
|
-
"typecheck": "npm run generate-version && tsc --noEmit",
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
"
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
"
|
|
60
|
-
}
|
|
61
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "@localhostdevs/sdk",
|
|
3
|
+
"version": "0.16.0",
|
|
4
|
+
"description": "JavaScript SDK for building bots on localhostdevs — run your app on your laptop, publish it as a command-driven bot.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"localhostdevs",
|
|
7
|
+
"bot",
|
|
8
|
+
"websocket",
|
|
9
|
+
"chatops",
|
|
10
|
+
"cli",
|
|
11
|
+
"sdk"
|
|
12
|
+
],
|
|
13
|
+
"homepage": "https://github.com/jugod0/localhostdevs-sdk",
|
|
14
|
+
"repository": {
|
|
15
|
+
"type": "git",
|
|
16
|
+
"url": "git+https://github.com/jugod0/localhostdevs-sdk.git"
|
|
17
|
+
},
|
|
18
|
+
"bugs": {
|
|
19
|
+
"url": "https://github.com/jugod0/localhostdevs-sdk/issues"
|
|
20
|
+
},
|
|
21
|
+
"license": "MIT",
|
|
22
|
+
"type": "module",
|
|
23
|
+
"main": "./dist/index.js",
|
|
24
|
+
"types": "./dist/index.d.ts",
|
|
25
|
+
"exports": {
|
|
26
|
+
".": {
|
|
27
|
+
"types": "./dist/index.d.ts",
|
|
28
|
+
"import": "./dist/index.js",
|
|
29
|
+
"default": "./dist/index.js"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"files": [
|
|
33
|
+
"dist",
|
|
34
|
+
"README.md"
|
|
35
|
+
],
|
|
36
|
+
"engines": {
|
|
37
|
+
"node": ">=22.5"
|
|
38
|
+
},
|
|
39
|
+
"scripts": {
|
|
40
|
+
"generate-version": "node scripts/generate-version.mjs",
|
|
41
|
+
"build": "npm run generate-version && tsc -p tsconfig.build.json",
|
|
42
|
+
"typecheck": "npm run generate-version && tsc --noEmit",
|
|
43
|
+
"typecheck:fast": "tsgo --noEmit -p tsconfig.json || echo '[tsgo preview] advisory only — stable tsc is the source of truth'",
|
|
44
|
+
"test": "npm run generate-version && vitest run",
|
|
45
|
+
"prepare": "npm run build",
|
|
46
|
+
"prepublishOnly": "npm run build"
|
|
47
|
+
},
|
|
48
|
+
"dependencies": {
|
|
49
|
+
"nanoid": "^5.1.11",
|
|
50
|
+
"ws": "^8.18.0",
|
|
51
|
+
"zod": "^4.0.0"
|
|
52
|
+
},
|
|
53
|
+
"devDependencies": {
|
|
54
|
+
"@types/node": "^22.19.19",
|
|
55
|
+
"@types/ws": "^8.5.13",
|
|
56
|
+
"@typescript/native-preview": "^7.0.0-dev.20260624.1",
|
|
57
|
+
"tsx": "^4.21.0",
|
|
58
|
+
"typescript": "^6.0.3",
|
|
59
|
+
"vitest": "^2.1.9"
|
|
60
|
+
},
|
|
61
|
+
"publishConfig": {
|
|
62
|
+
"access": "public"
|
|
63
|
+
}
|
|
64
|
+
}
|