stitchkit 0.100.1 → 0.100.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/CHANGELOG.md +99 -0
- package/README.md +2 -1
- package/dist/application/process-lifecycle-transitions.d.ts +13 -2
- package/dist/application/process-lifecycle-transitions.d.ts.map +1 -1
- package/dist/application/process-lifecycle.d.ts +2 -1
- package/dist/application/process-lifecycle.d.ts.map +1 -1
- package/dist/entrypoints/agent-runtime/browser.js +119 -119
- package/dist/entrypoints/agent-runtime/coding-tools.js +15 -20
- package/dist/entrypoints/agent-runtime/harness.js +55 -63
- package/dist/entrypoints/agent-runtime/openrouter.js +6 -6
- package/dist/entrypoints/agent-runtime/sandbox.js +20 -25
- package/dist/entrypoints/agent-runtime/sqlite/bun.js +11 -13
- package/dist/entrypoints/agent-runtime/sqlite/node.js +11 -13
- package/dist/entrypoints/agent-runtime/testing.js +32 -34
- package/dist/entrypoints/agent-runtime.js +395 -402
- package/dist/entrypoints/application/diagnostic-journal.js +26 -27
- package/dist/entrypoints/application/directory-inbox.js +16 -17
- package/dist/entrypoints/application/grammy.js +13 -13
- package/dist/entrypoints/application/opentelemetry.js +13 -13
- package/dist/entrypoints/application/schemas.js +24 -24
- package/dist/entrypoints/application.d.ts +1 -1
- package/dist/entrypoints/application.d.ts.map +1 -1
- package/dist/entrypoints/application.js +218 -214
- package/dist/entrypoints/bin/upgrade-cli.js +2 -2
- package/dist/entrypoints/cli.js +81 -84
- package/dist/entrypoints/contract.js +54 -57
- package/dist/entrypoints/declaration.js +22 -22
- package/dist/entrypoints/files.js +18 -21
- package/dist/entrypoints/geo.js +7 -8
- package/dist/entrypoints/google.js +2 -2
- package/dist/entrypoints/index.js +150 -154
- package/dist/entrypoints/live.js +45 -47
- package/dist/entrypoints/node.js +68 -74
- package/dist/entrypoints/oauth.js +6 -6
- package/dist/entrypoints/observability.d.ts +1 -0
- package/dist/entrypoints/observability.d.ts.map +1 -1
- package/dist/entrypoints/observability.js +115 -87
- package/dist/entrypoints/primitives.js +35 -35
- package/dist/entrypoints/react/keyboard.d.ts +4 -0
- package/dist/entrypoints/react/keyboard.d.ts.map +1 -0
- package/dist/entrypoints/react/keyboard.js +397 -0
- package/dist/entrypoints/react.js +10 -10
- package/dist/entrypoints/release.js +7 -7
- package/dist/entrypoints/remote.js +15 -17
- package/dist/entrypoints/server.js +198 -200
- package/dist/entrypoints/telegram/html.d.ts +5 -0
- package/dist/entrypoints/telegram/html.d.ts.map +1 -0
- package/dist/entrypoints/telegram/html.js +26 -0
- package/dist/entrypoints/telegram/screens.d.ts +14 -0
- package/dist/entrypoints/telegram/screens.d.ts.map +1 -0
- package/dist/entrypoints/telegram/screens.js +2028 -0
- package/dist/entrypoints/telegram.d.ts +5 -1
- package/dist/entrypoints/telegram.d.ts.map +1 -1
- package/dist/entrypoints/telegram.js +548 -156
- package/dist/entrypoints/testing.js +75 -79
- package/dist/entrypoints/tools/connections.js +30 -32
- package/dist/entrypoints/tools/contract.js +18 -20
- package/dist/entrypoints/tools/invoker.js +12 -17
- package/dist/entrypoints/tools.js +223 -229
- package/dist/entrypoints/tracking/server.js +6 -6
- package/dist/entrypoints/tracking.js +40 -42
- package/dist/entrypoints/voice.js +3 -3
- package/dist/{index-eaysmdtq.js → index-0ndk4555.js} +56 -56
- package/dist/{index-2bxbyab0.js → index-1bx1xv1k.js} +1 -1
- package/dist/{index-p5r7qpdd.js → index-1eeqpadm.js} +4 -4
- package/dist/{index-hadmp193.js → index-3ct7hhq6.js} +210 -210
- package/dist/{index-e01r054k.js → index-45tdvqa3.js} +26 -26
- package/dist/{index-dce5wxcq.js → index-4s0fep5q.js} +8 -8
- package/dist/index-50ejfz75.js +9 -0
- package/dist/{index-m9zn6cpq.js → index-5107q189.js} +12 -12
- package/dist/{index-sbdmyz75.js → index-5cc6r990.js} +3 -3
- package/dist/index-6k1svmjh.js +141 -0
- package/dist/{index-c6bxbsnc.js → index-7kxw1awn.js} +2 -2
- package/dist/{index-0r0fbk7z.js → index-7z9ym7t8.js} +28 -28
- package/dist/{index-p7hgdyhb.js → index-814xpr6d.js} +2 -2
- package/dist/{index-gtj3zc53.js → index-8kzct1d6.js} +99 -99
- package/dist/{index-1zbbzgfh.js → index-9pw0a51a.js} +4 -4
- package/dist/{index-79z7m7dt.js → index-a9pd417t.js} +35 -35
- package/dist/{index-ham5sz8m.js → index-aaj97r4y.js} +45 -45
- package/dist/{index-s812ycat.js → index-aan6hqb9.js} +3 -3
- package/dist/{index-10x2hbx0.js → index-adhgd4pe.js} +44 -44
- package/dist/{index-2gxzjvyr.js → index-afjvjyck.js} +23 -23
- package/dist/{index-qmy6zq75.js → index-ahvsksw5.js} +16 -16
- package/dist/{index-hr4tzbwq.js → index-ap3gqe56.js} +3 -3
- package/dist/{index-znfs20ss.js → index-b2bz0kdm.js} +16 -16
- package/dist/{index-r066jx76.js → index-c6aagrbd.js} +148 -120
- package/dist/{index-k30h66yd.js → index-ck71tbcf.js} +9 -9
- package/dist/{index-eqqvgdb3.js → index-ct75c3at.js} +2 -2
- package/dist/{index-gw8bmyaj.js → index-djjhhgjk.js} +41 -41
- package/dist/{index-8qt2m66q.js → index-dvwj1f43.js} +43 -43
- package/dist/{index-fhwqwxe0.js → index-ej331hah.js} +1 -1
- package/dist/{index-9t3dffv2.js → index-ewbaywk5.js} +5 -5
- package/dist/{index-7p1f0vp2.js → index-fyphpknh.js} +25 -25
- package/dist/{index-83bdg97s.js → index-g149e9pk.js} +1 -1
- package/dist/{index-ngfhvfpd.js → index-g6a3na27.js} +4 -4
- package/dist/{index-qwhynv6x.js → index-h124epcf.js} +20 -20
- package/dist/{index-h6eeys1v.js → index-h97tqqp1.js} +9 -9
- package/dist/{index-zcgf3gqf.js → index-hby4qhax.js} +10 -10
- package/dist/{index-5jrd0yng.js → index-j8aw2c0e.js} +4 -4
- package/dist/{index-d8m8zpd8.js → index-jzczzcsb.js} +14 -14
- package/dist/index-kqnd6a85.js +26 -0
- package/dist/{index-35mh5bhj.js → index-kw1ws0cs.js} +12 -12
- package/dist/{index-yw4fzmdz.js → index-kzz6rq0w.js} +28 -17
- package/dist/{index-4gcnakhx.js → index-m38ej7e5.js} +2 -2
- package/dist/{index-ndddxtyx.js → index-m79yr938.js} +19 -19
- package/dist/{index-5p2m7we1.js → index-m9fndta6.js} +11 -11
- package/dist/index-mnkk1ffz.js +150 -0
- package/dist/index-n15jny5b.js +4 -0
- package/dist/{index-2vtcmrj9.js → index-n53mswt3.js} +20 -20
- package/dist/{index-bt14acb5.js → index-n5yqxd3d.js} +21 -21
- package/dist/{index-bm5rx7n6.js → index-n9tyz8z3.js} +12 -12
- package/dist/index-nmaqxdx7.js +463 -0
- package/dist/{index-mqv3b5rh.js → index-nx6eazt0.js} +30 -30
- package/dist/{index-3z73fh2c.js → index-q0th8q0z.js} +9 -9
- package/dist/{index-v260df89.js → index-qjeggp8w.js} +20 -20
- package/dist/{index-zfrhfn82.js → index-r1z0rd9c.js} +20 -20
- package/dist/{index-wqgjfstn.js → index-r5c4fedv.js} +3 -3
- package/dist/{index-cyktc4bp.js → index-r5hsgkz5.js} +118 -118
- package/dist/{index-0b1ess5e.js → index-r7a7r7ha.js} +1 -1
- package/dist/{index-1j8pm5t0.js → index-rfkh44ss.js} +15 -15
- package/dist/index-rz3z13e9.js +47 -0
- package/dist/{index-k6gpggb9.js → index-s80awwsw.js} +35 -35
- package/dist/{index-vqr7f7v8.js → index-ssmd41kh.js} +124 -124
- package/dist/{index-ensd0r74.js → index-v14qqmys.js} +41 -41
- package/dist/{index-paz6sgdp.js → index-v4a2fjtk.js} +36 -36
- package/dist/{index-d9pk3td4.js → index-w0eqdhyd.js} +14 -14
- package/dist/{index-5qn1kx34.js → index-w575evhq.js} +29 -29
- package/dist/{index-3gye9wzb.js → index-w5s3xftz.js} +26 -26
- package/dist/{index-tm88avnj.js → index-wykebpn9.js} +3 -3
- package/dist/{index-sh3s86na.js → index-xkhk5d6g.js} +17 -17
- package/dist/{index-6k1937bx.js → index-xqhede6x.js} +4 -4
- package/dist/{index-f4fx2tza.js → index-zs4ms3th.js} +181 -181
- package/dist/{index-k5hsfc3j.js → index-zsvzhjtk.js} +1 -1
- package/dist/observability/bounded-logger.d.ts +2 -0
- package/dist/observability/bounded-logger.d.ts.map +1 -1
- package/dist/observability/sanitize.d.ts +6 -0
- package/dist/observability/sanitize.d.ts.map +1 -1
- package/dist/observability/secret-values.d.ts +25 -0
- package/dist/observability/secret-values.d.ts.map +1 -0
- package/dist/react/keyboard/hooks.d.ts +71 -0
- package/dist/react/keyboard/hooks.d.ts.map +1 -0
- package/dist/react/keyboard/layers.d.ts +98 -0
- package/dist/react/keyboard/layers.d.ts.map +1 -0
- package/dist/react/keyboard/zone.d.ts +139 -0
- package/dist/react/keyboard/zone.d.ts.map +1 -0
- package/dist/telegram/crypto.d.ts +16 -0
- package/dist/telegram/crypto.d.ts.map +1 -0
- package/dist/telegram/html/check.d.ts +26 -0
- package/dist/telegram/html/check.d.ts.map +1 -0
- package/dist/telegram/html/nodes.d.ts +70 -0
- package/dist/telegram/html/nodes.d.ts.map +1 -0
- package/dist/telegram/html/parse.d.ts +35 -0
- package/dist/telegram/html/parse.d.ts.map +1 -0
- package/dist/telegram/html/render.d.ts +39 -0
- package/dist/telegram/html/render.d.ts.map +1 -0
- package/dist/telegram/init-data.d.ts.map +1 -1
- package/dist/telegram/operator-channel.d.ts +36 -3
- package/dist/telegram/operator-channel.d.ts.map +1 -1
- package/dist/telegram/screens/callback-codec.d.ts +34 -0
- package/dist/telegram/screens/callback-codec.d.ts.map +1 -0
- package/dist/telegram/screens/dispatch.d.ts +22 -0
- package/dist/telegram/screens/dispatch.d.ts.map +1 -0
- package/dist/telegram/screens/display.d.ts +70 -0
- package/dist/telegram/screens/display.d.ts.map +1 -0
- package/dist/telegram/screens/execute.d.ts +57 -0
- package/dist/telegram/screens/execute.d.ts.map +1 -0
- package/dist/telegram/screens/html.d.ts +36 -0
- package/dist/telegram/screens/html.d.ts.map +1 -0
- package/dist/telegram/screens/outcome.d.ts +74 -0
- package/dist/telegram/screens/outcome.d.ts.map +1 -0
- package/dist/telegram/screens/path.d.ts +29 -0
- package/dist/telegram/screens/path.d.ts.map +1 -0
- package/dist/telegram/screens/reconcile.d.ts +67 -0
- package/dist/telegram/screens/reconcile.d.ts.map +1 -0
- package/dist/telegram/screens/registry.d.ts +23 -0
- package/dist/telegram/screens/registry.d.ts.map +1 -0
- package/dist/telegram/screens/render.d.ts +70 -0
- package/dist/telegram/screens/render.d.ts.map +1 -0
- package/dist/telegram/screens/runtime.d.ts +133 -0
- package/dist/telegram/screens/runtime.d.ts.map +1 -0
- package/dist/telegram/screens/screen-types.d.ts +130 -0
- package/dist/telegram/screens/screen-types.d.ts.map +1 -0
- package/dist/telegram/screens/screen.d.ts +138 -0
- package/dist/telegram/screens/screen.d.ts.map +1 -0
- package/dist/telegram/screens/state.d.ts +115 -0
- package/dist/telegram/screens/state.d.ts.map +1 -0
- package/dist/telegram/screens/telegram-screens.d.ts +18 -0
- package/dist/telegram/screens/telegram-screens.d.ts.map +1 -0
- package/dist/telegram/screens/test-chat-telegram.d.ts +47 -0
- package/dist/telegram/screens/test-chat-telegram.d.ts.map +1 -0
- package/dist/telegram/screens/test-chat.d.ts +66 -0
- package/dist/telegram/screens/test-chat.d.ts.map +1 -0
- package/dist/telegram/screens/view.d.ts +89 -0
- package/dist/telegram/screens/view.d.ts.map +1 -0
- package/dist/telegram/send-failure.d.ts +19 -0
- package/dist/telegram/send-failure.d.ts.map +1 -1
- package/dist/telegram/update-intake.d.ts +78 -0
- package/dist/telegram/update-intake.d.ts.map +1 -0
- package/dist/telegram/update-store-sqlite.d.ts +26 -0
- package/dist/telegram/update-store-sqlite.d.ts.map +1 -0
- package/dist/telegram/update-store.d.ts +67 -0
- package/dist/telegram/update-store.d.ts.map +1 -0
- package/dist/telegram/webhook.d.ts +105 -0
- package/dist/telegram/webhook.d.ts.map +1 -0
- package/dist/tools/cli/args-fields.d.ts +8 -0
- package/dist/tools/cli/args-fields.d.ts.map +1 -1
- package/dist/tools/cli/args-route.d.ts.map +1 -1
- package/dist/tools/cli/args.d.ts.map +1 -1
- package/dist/tools/cli/help.d.ts.map +1 -1
- package/llms/application.2.txt +26 -1
- package/llms/application.txt +18 -27
- package/llms/cli.txt +8 -2
- package/llms/observability.txt +2 -1
- package/llms/react-keyboard.txt +193 -0
- package/llms/stitchkit.txt +7 -1
- package/llms/telegram-html.txt +35 -0
- package/llms/telegram-screens.txt +365 -0
- package/llms/telegram.txt +160 -4
- package/llms-full.txt +755 -11
- package/llms.txt +11 -6
- package/package.json +17 -2
- package/dist/index-2k4yrqkc.js +0 -9
- package/dist/index-crykmqkr.js +0 -26
- package/dist/index-y64k3s0h.js +0 -150
- package/dist/index-y91ry9h2.js +0 -4
- /package/dist/{index-hffjpmq9.js → index-9jfdm5tg.js} +0 -0
- /package/dist/{index-zjjyynm3.js → index-d4pa2bgs.js} +0 -0
- /package/dist/{index-rxfy4cq7.js → index-dwfv9a85.js} +0 -0
- /package/dist/{index-5jm36zv1.js → index-gfk7nrht.js} +0 -0
- /package/dist/{index-b9aefrqd.js → index-n1dqr7gf.js} +0 -0
- /package/dist/{index-q3pyb9n0.js → index-sykb5ag7.js} +0 -0
- /package/dist/{index-48ffdxgk.js → index-xhzq2qvj.js} +0 -0
- /package/dist/{index-kzfs85xp.js → index-zsarb5xp.js} +0 -0
package/llms.txt
CHANGED
|
@@ -9,19 +9,20 @@ Build with stitchkit: define a contract once, then `implement` it and serve it (
|
|
|
9
9
|
Load the slice for each entrypoint your code imports — `import … from 'stitchkit/server'` → `llms/server.txt`; the root `stitchkit` import → `llms/stitchkit.txt`. A slice holds that entrypoint's API reference section and the guide pages whose home it is; every guide lives in exactly one slice, and a slice that needs another's guide names it under "Also read". Each file is at most 50.0 KB; a longer one continues in numbered parts, each naming the next at its top. Moving across versions: load `llms/upgrading.txt` and the range slices it lists between your version and the target. `llms-full.txt` inlines everything; it is far larger than a context window, so do not read it whole.
|
|
10
10
|
|
|
11
11
|
## Entrypoint slices
|
|
12
|
-
- **stitchkit**: [llms/stitchkit.txt](llms/stitchkit.txt)
|
|
12
|
+
- **stitchkit**: [llms/stitchkit.txt](llms/stitchkit.txt) 16.5 KB → [llms/stitchkit.2.txt](llms/stitchkit.2.txt) 37.2 KB → [llms/stitchkit.3.txt](llms/stitchkit.3.txt) 16.1 KB
|
|
13
13
|
- **stitchkit/live**: [llms/live.txt](llms/live.txt) 21.6 KB
|
|
14
14
|
- **stitchkit/react**: [llms/react.txt](llms/react.txt) 9.0 KB
|
|
15
|
+
- **stitchkit/react/keyboard**: [llms/react-keyboard.txt](llms/react-keyboard.txt) 9.4 KB
|
|
15
16
|
- **stitchkit/tools**: [llms/tools.txt](llms/tools.txt) 45.0 KB → [llms/tools.2.txt](llms/tools.2.txt) 26.3 KB → [llms/tools.3.txt](llms/tools.3.txt) 25.4 KB
|
|
16
17
|
- **stitchkit/tools/contract**: [llms/tools-contract.txt](llms/tools-contract.txt) 0.2 KB
|
|
17
18
|
- **stitchkit/tools/invoker**: [llms/tools-invoker.txt](llms/tools-invoker.txt) 0.2 KB
|
|
18
19
|
- **stitchkit/tools/connections**: [llms/tools-connections.txt](llms/tools-connections.txt) 3.1 KB
|
|
19
|
-
- **stitchkit/cli**: [llms/cli.txt](llms/cli.txt) 42.
|
|
20
|
+
- **stitchkit/cli**: [llms/cli.txt](llms/cli.txt) 42.7 KB → [llms/cli.2.txt](llms/cli.2.txt) 8.1 KB
|
|
20
21
|
- **stitchkit/remote**: [llms/remote.txt](llms/remote.txt) 1.0 KB
|
|
21
22
|
- **stitchkit/contract**: [llms/contract.txt](llms/contract.txt) 31.9 KB
|
|
22
23
|
- **stitchkit/primitives**: [llms/primitives.txt](llms/primitives.txt) 9.3 KB
|
|
23
24
|
- **stitchkit/server**: [llms/server.txt](llms/server.txt) 45.3 KB → [llms/server.2.txt](llms/server.2.txt) 14.6 KB → [llms/server.3.txt](llms/server.3.txt) 45.6 KB → [llms/server.4.txt](llms/server.4.txt) 37.5 KB → [llms/server.5.txt](llms/server.5.txt) 21.8 KB
|
|
24
|
-
- **stitchkit/observability**: [llms/observability.txt](llms/observability.txt) 43.
|
|
25
|
+
- **stitchkit/observability**: [llms/observability.txt](llms/observability.txt) 43.7 KB
|
|
25
26
|
- **stitchkit/agent-runtime**: [llms/agent-runtime.txt](llms/agent-runtime.txt) 36.8 KB → [llms/agent-runtime.2.txt](llms/agent-runtime.2.txt) 46.7 KB → [llms/agent-runtime.3.txt](llms/agent-runtime.3.txt) 34.3 KB
|
|
26
27
|
- **stitchkit/agent-runtime/testing**: [llms/agent-runtime-testing.txt](llms/agent-runtime-testing.txt) 2.2 KB
|
|
27
28
|
- **stitchkit/agent-runtime/harness**: [llms/agent-runtime-harness.txt](llms/agent-runtime-harness.txt) 4.1 KB
|
|
@@ -30,7 +31,7 @@ Load the slice for each entrypoint your code imports — `import … from 'stitc
|
|
|
30
31
|
- **stitchkit/agent-runtime/openrouter**: [llms/agent-runtime-openrouter.txt](llms/agent-runtime-openrouter.txt) 1.1 KB
|
|
31
32
|
- **stitchkit/agent-runtime/sqlite/bun**: [llms/agent-runtime-sqlite-bun.txt](llms/agent-runtime-sqlite-bun.txt) 1.8 KB
|
|
32
33
|
- **stitchkit/agent-runtime/sqlite/node**: [llms/agent-runtime-sqlite-node.txt](llms/agent-runtime-sqlite-node.txt) 1.7 KB
|
|
33
|
-
- **stitchkit/application**: [llms/application.txt](llms/application.txt) 46.
|
|
34
|
+
- **stitchkit/application**: [llms/application.txt](llms/application.txt) 46.0 KB → [llms/application.2.txt](llms/application.2.txt) 40.0 KB
|
|
34
35
|
- **stitchkit/application/grammy**: [llms/application-grammy.txt](llms/application-grammy.txt) 2.3 KB
|
|
35
36
|
- **stitchkit/application/opentelemetry**: [llms/application-opentelemetry.txt](llms/application-opentelemetry.txt) 1.6 KB
|
|
36
37
|
- **stitchkit/application/directory-inbox**: [llms/application-directory-inbox.txt](llms/application-directory-inbox.txt) 0.3 KB
|
|
@@ -39,7 +40,9 @@ Load the slice for each entrypoint your code imports — `import … from 'stitc
|
|
|
39
40
|
- **stitchkit/testing**: [llms/testing.txt](llms/testing.txt) 30.8 KB
|
|
40
41
|
- **stitchkit/agent-runtime/sandbox**: [llms/agent-runtime-sandbox.txt](llms/agent-runtime-sandbox.txt) 8.1 KB
|
|
41
42
|
- **stitchkit/files**: [llms/files.txt](llms/files.txt) 2.9 KB
|
|
42
|
-
- **stitchkit/telegram**: [llms/telegram.txt](llms/telegram.txt)
|
|
43
|
+
- **stitchkit/telegram**: [llms/telegram.txt](llms/telegram.txt) 22.2 KB
|
|
44
|
+
- **stitchkit/telegram/html**: [llms/telegram-html.txt](llms/telegram-html.txt) 2.7 KB
|
|
45
|
+
- **stitchkit/telegram/screens**: [llms/telegram-screens.txt](llms/telegram-screens.txt) 21.2 KB
|
|
43
46
|
- **stitchkit/tracking**: [llms/tracking.txt](llms/tracking.txt) 16.8 KB
|
|
44
47
|
- **stitchkit/release**: [llms/release.txt](llms/release.txt) 8.9 KB
|
|
45
48
|
- **stitchkit/tracking/server**: [llms/tracking-server.txt](llms/tracking-server.txt) 2.5 KB
|
|
@@ -80,8 +83,10 @@ Load the slice for each entrypoint your code imports — `import … from 'stitc
|
|
|
80
83
|
- [Multi-tenant](https://github.com/max-listov/stitchkit/blob/master/docs/guide/multi-tenant.md): a /tenants/:id/… scenario end-to-end — scopePrefixes, scoped client, extend
|
|
81
84
|
- [Frontend integrations](https://github.com/max-listov/stitchkit/blob/master/docs/guide/frontend-integrations.md): React Router resource routes and a separate Vite development proxy
|
|
82
85
|
- [React Query policy](https://github.com/max-listov/stitchkit/blob/master/docs/guide/react.md): request-local SSR clients, a browser singleton and ApiError retry rules
|
|
86
|
+
- [Keyboard layers and list zones](https://github.com/max-listov/stitchkit/blob/master/docs/guide/keyboard.md): stitchkit/react/keyboard — which part of a screen gets a key: ordered layers, one Escape per level, list zones that move real focus
|
|
83
87
|
- [Voice](https://github.com/max-listov/stitchkit/blob/master/docs/guide/voice.md): stitchkit/voice — sentences cut while a reply streams, the text a voice reads, a speech queue that synthesises ahead and stops on interruption
|
|
84
|
-
- [Telegram bots](https://github.com/max-listov/stitchkit/blob/master/docs/guide/telegram.md): stitchkit/telegram — the journal, the operator channel, resumable broadcasts, local Bot API files; the bot as application resources
|
|
88
|
+
- [Telegram bots](https://github.com/max-listov/stitchkit/blob/master/docs/guide/telegram.md): stitchkit/telegram — the journal, the operator channel, resumable broadcasts, local Bot API files, webhook ownership and durable update intake, message markup (stitchkit/telegram/html); the bot as application resources
|
|
89
|
+
- [Telegram screens](https://github.com/max-listov/stitchkit/blob/master/docs/guide/telegram-screens.md): stitchkit/telegram/screens — a bot menu as declared screens: typed paths, actions and input, messages reconciled in place, state in a StorageAdapter, a test chat
|
|
85
90
|
- [GeoIP](https://github.com/max-listov/stitchkit/blob/master/docs/guide/geo.md): stitchkit/geo — a server-only managed reader, three observable states and last-known-good generation reloads
|
|
86
91
|
- [Upgrading](https://github.com/max-listov/stitchkit/blob/master/docs/guide/upgrading.md): moving a project across stitchkit versions; how breaking changes are marked
|
|
87
92
|
- [Project declaration](https://github.com/max-listov/stitchkit/blob/master/docs/guide/declaration.md): the optional machine-readable statement a repository makes about itself — identity, roles, build, requirements, release steps and the names of the values a deployment supplies
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "stitchkit",
|
|
3
|
-
"version": "0.100.
|
|
3
|
+
"version": "0.100.3",
|
|
4
4
|
"description": "Contract-first backend framework — one defineContract() into an HTTP API, MCP tools, AI-agent tools and a typed client. Bun and Node.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"bun",
|
|
@@ -62,6 +62,10 @@
|
|
|
62
62
|
"types": "./dist/entrypoints/react.d.ts",
|
|
63
63
|
"import": "./dist/entrypoints/react.js"
|
|
64
64
|
},
|
|
65
|
+
"./react/keyboard": {
|
|
66
|
+
"types": "./dist/entrypoints/react/keyboard.d.ts",
|
|
67
|
+
"import": "./dist/entrypoints/react/keyboard.js"
|
|
68
|
+
},
|
|
65
69
|
"./tools": {
|
|
66
70
|
"types": "./dist/entrypoints/tools.d.ts",
|
|
67
71
|
"import": "./dist/entrypoints/tools.js"
|
|
@@ -174,6 +178,14 @@
|
|
|
174
178
|
"types": "./dist/entrypoints/telegram.d.ts",
|
|
175
179
|
"import": "./dist/entrypoints/telegram.js"
|
|
176
180
|
},
|
|
181
|
+
"./telegram/html": {
|
|
182
|
+
"types": "./dist/entrypoints/telegram/html.d.ts",
|
|
183
|
+
"import": "./dist/entrypoints/telegram/html.js"
|
|
184
|
+
},
|
|
185
|
+
"./telegram/screens": {
|
|
186
|
+
"types": "./dist/entrypoints/telegram/screens.d.ts",
|
|
187
|
+
"import": "./dist/entrypoints/telegram/screens.js"
|
|
188
|
+
},
|
|
177
189
|
"./tracking": {
|
|
178
190
|
"types": "./dist/entrypoints/tracking.d.ts",
|
|
179
191
|
"import": "./dist/entrypoints/tracking.js"
|
|
@@ -308,6 +320,7 @@
|
|
|
308
320
|
"ky": "^2.1.0"
|
|
309
321
|
},
|
|
310
322
|
"devDependencies": {
|
|
323
|
+
"@happy-dom/global-registrator": "^20.14.5",
|
|
311
324
|
"@modelcontextprotocol/client": "^2.0.0",
|
|
312
325
|
"@modelcontextprotocol/ext-apps": "^2.0.0",
|
|
313
326
|
"@modelcontextprotocol/server": "^2.0.0",
|
|
@@ -319,12 +332,14 @@
|
|
|
319
332
|
"@types/bun": "^1.4.2",
|
|
320
333
|
"@types/json-schema": "^7.0.15",
|
|
321
334
|
"@types/react": "^19.3.0",
|
|
335
|
+
"@types/react-dom": "^19.3.0",
|
|
322
336
|
"@typescript/typescript6": "^6.0.2",
|
|
323
337
|
"ai": "^7.0.111",
|
|
324
338
|
"fake-indexeddb": "^6.2.5",
|
|
325
|
-
"grammy": "^1.46.0",
|
|
326
339
|
"google-auth-library": "^11.1.0",
|
|
340
|
+
"grammy": "^1.46.0",
|
|
327
341
|
"react": "^19.3.0",
|
|
342
|
+
"react-dom": "^19.3.0",
|
|
328
343
|
"react-query-kit": "^3.3.4",
|
|
329
344
|
"socket.io": "^4.8.3",
|
|
330
345
|
"socket.io-client": "^4.8.3",
|
package/dist/index-2k4yrqkc.js
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
// src/application/resource.ts
|
|
2
|
-
function managedResourceDependencyId(dependency) {
|
|
3
|
-
return typeof dependency === "string" ? dependency : dependency.id;
|
|
4
|
-
}
|
|
5
|
-
function defineManagedResource(resource) {
|
|
6
|
-
return resource;
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export { managedResourceDependencyId, defineManagedResource };
|
package/dist/index-crykmqkr.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
AgentMessageSchema,
|
|
3
|
-
AgentRecordIdSchema,
|
|
4
|
-
AgentRecordVersionSchema
|
|
5
|
-
} from "./index-gtj3zc53.js";
|
|
6
|
-
|
|
7
|
-
// src/agent-runtime/conversations.ts
|
|
8
|
-
import { z } from "zod";
|
|
9
|
-
var AgentConversationSummarySchema = z.object({
|
|
10
|
-
conversationId: AgentRecordIdSchema,
|
|
11
|
-
version: AgentRecordVersionSchema,
|
|
12
|
-
updatedAt: z.iso.datetime({ offset: true }),
|
|
13
|
-
preview: z.string(),
|
|
14
|
-
activeRuns: z.int().nonnegative()
|
|
15
|
-
}).strict();
|
|
16
|
-
var AgentConversationPageSchema = z.object({
|
|
17
|
-
items: z.array(AgentConversationSummarySchema),
|
|
18
|
-
nextCursor: z.string().min(1).optional()
|
|
19
|
-
}).strict();
|
|
20
|
-
var AgentConversationMessagePageSchema = z.object({
|
|
21
|
-
items: z.array(AgentMessageSchema),
|
|
22
|
-
compacted: z.array(z.string().min(1)),
|
|
23
|
-
nextCursor: z.string().min(1).optional()
|
|
24
|
-
}).strict();
|
|
25
|
-
|
|
26
|
-
export { AgentConversationSummarySchema, AgentConversationPageSchema, AgentConversationMessagePageSchema };
|
package/dist/index-y64k3s0h.js
DELETED
|
@@ -1,150 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
AgentAssistantPlaceholderSchema,
|
|
3
|
-
AgentMessageSchema,
|
|
4
|
-
AgentProviderEnvelopeSchema,
|
|
5
|
-
AgentRecordIdSchema,
|
|
6
|
-
AgentRecordVersionSchema,
|
|
7
|
-
AgentRunMetricsSchema,
|
|
8
|
-
AgentRunOperationSchema,
|
|
9
|
-
AgentRunSchema,
|
|
10
|
-
AgentRunStateSchema,
|
|
11
|
-
AgentTerminalReasonSchema,
|
|
12
|
-
AgentTimestampSchema
|
|
13
|
-
} from "./index-gtj3zc53.js";
|
|
14
|
-
|
|
15
|
-
// src/agent-runtime/event-schema.ts
|
|
16
|
-
import { z } from "zod";
|
|
17
|
-
var AgentAdmissionEventSchema = z.object({
|
|
18
|
-
type: z.literal("admission"),
|
|
19
|
-
eventId: AgentRecordIdSchema,
|
|
20
|
-
conversationId: AgentRecordIdSchema,
|
|
21
|
-
runId: AgentRecordIdSchema,
|
|
22
|
-
snapshotVersion: AgentRecordVersionSchema,
|
|
23
|
-
input: AgentMessageSchema,
|
|
24
|
-
run: AgentRunSchema,
|
|
25
|
-
assistant: z.union([AgentAssistantPlaceholderSchema, AgentMessageSchema]),
|
|
26
|
-
emittedAt: AgentTimestampSchema
|
|
27
|
-
});
|
|
28
|
-
var EventIdentitySchema = z.object({
|
|
29
|
-
conversationId: AgentRecordIdSchema,
|
|
30
|
-
runId: AgentRecordIdSchema,
|
|
31
|
-
emittedAt: AgentTimestampSchema
|
|
32
|
-
});
|
|
33
|
-
var AgentTransientDeltaEventSchema = EventIdentitySchema.extend({
|
|
34
|
-
type: z.literal("assistant-delta"),
|
|
35
|
-
runtimeEpoch: z.string().min(1),
|
|
36
|
-
sequence: z.int().nonnegative(),
|
|
37
|
-
textDelta: z.string()
|
|
38
|
-
});
|
|
39
|
-
var AgentTransientReasoningIdentitySchema = EventIdentitySchema.extend({
|
|
40
|
-
runtimeEpoch: z.string().min(1),
|
|
41
|
-
sequence: z.int().nonnegative(),
|
|
42
|
-
provider: AgentProviderEnvelopeSchema.optional()
|
|
43
|
-
});
|
|
44
|
-
var AgentReasoningStartEventSchema = AgentTransientReasoningIdentitySchema.extend({
|
|
45
|
-
type: z.literal("reasoning-start")
|
|
46
|
-
});
|
|
47
|
-
var AgentReasoningDeltaEventSchema = AgentTransientReasoningIdentitySchema.extend({
|
|
48
|
-
type: z.literal("reasoning-delta"),
|
|
49
|
-
textDelta: z.string()
|
|
50
|
-
});
|
|
51
|
-
var AgentReasoningEndEventSchema = AgentTransientReasoningIdentitySchema.extend({
|
|
52
|
-
type: z.literal("reasoning-end")
|
|
53
|
-
});
|
|
54
|
-
var AgentAttemptResetEventSchema = EventIdentitySchema.extend({
|
|
55
|
-
type: z.literal("attempt-reset"),
|
|
56
|
-
runtimeEpoch: z.string().min(1),
|
|
57
|
-
sequence: z.int().nonnegative(),
|
|
58
|
-
attempt: z.int().positive()
|
|
59
|
-
});
|
|
60
|
-
var AgentCheckpointEventSchema = EventIdentitySchema.extend({
|
|
61
|
-
type: z.literal("assistant-checkpoint"),
|
|
62
|
-
eventId: AgentRecordIdSchema,
|
|
63
|
-
snapshotVersion: AgentRecordVersionSchema,
|
|
64
|
-
message: AgentMessageSchema,
|
|
65
|
-
metrics: AgentRunMetricsSchema.optional()
|
|
66
|
-
});
|
|
67
|
-
var AgentRunStateEventSchema = EventIdentitySchema.extend({
|
|
68
|
-
type: z.literal("run-state"),
|
|
69
|
-
eventId: AgentRecordIdSchema,
|
|
70
|
-
snapshotVersion: AgentRecordVersionSchema,
|
|
71
|
-
state: AgentRunStateSchema
|
|
72
|
-
});
|
|
73
|
-
var AgentRunOperationEventSchema = EventIdentitySchema.extend({
|
|
74
|
-
type: z.literal("run-operation"),
|
|
75
|
-
eventId: AgentRecordIdSchema,
|
|
76
|
-
snapshotVersion: AgentRecordVersionSchema,
|
|
77
|
-
operation: AgentRunOperationSchema
|
|
78
|
-
});
|
|
79
|
-
var AgentToolStatusEventSchema = EventIdentitySchema.extend({
|
|
80
|
-
type: z.literal("tool-status"),
|
|
81
|
-
runtimeEpoch: z.string().min(1),
|
|
82
|
-
sequence: z.int().nonnegative(),
|
|
83
|
-
callId: AgentRecordIdSchema,
|
|
84
|
-
toolName: z.string().min(1),
|
|
85
|
-
status: z.enum(["started", "completed", "failed", "interrupted"]),
|
|
86
|
-
input: z.json().optional(),
|
|
87
|
-
output: z.json().optional()
|
|
88
|
-
});
|
|
89
|
-
var AgentTerminalEventSchema = EventIdentitySchema.extend({
|
|
90
|
-
type: z.literal("terminal"),
|
|
91
|
-
eventId: AgentRecordIdSchema,
|
|
92
|
-
snapshotVersion: AgentRecordVersionSchema,
|
|
93
|
-
reason: AgentTerminalReasonSchema,
|
|
94
|
-
policyName: z.string().min(1).optional(),
|
|
95
|
-
message: AgentMessageSchema,
|
|
96
|
-
metrics: AgentRunMetricsSchema.optional()
|
|
97
|
-
});
|
|
98
|
-
var AgentRuntimeEventSchema = z.discriminatedUnion("type", [
|
|
99
|
-
AgentAdmissionEventSchema,
|
|
100
|
-
AgentTransientDeltaEventSchema,
|
|
101
|
-
AgentReasoningStartEventSchema,
|
|
102
|
-
AgentReasoningDeltaEventSchema,
|
|
103
|
-
AgentReasoningEndEventSchema,
|
|
104
|
-
AgentAttemptResetEventSchema,
|
|
105
|
-
AgentCheckpointEventSchema,
|
|
106
|
-
AgentRunStateEventSchema,
|
|
107
|
-
AgentRunOperationEventSchema,
|
|
108
|
-
AgentToolStatusEventSchema,
|
|
109
|
-
AgentTerminalEventSchema
|
|
110
|
-
]);
|
|
111
|
-
var AgentRuntimeEventCursorSchema = z.object({
|
|
112
|
-
snapshotVersion: AgentRecordVersionSchema.optional(),
|
|
113
|
-
durableEventIds: z.array(AgentRecordIdSchema).optional(),
|
|
114
|
-
runtimeEpoch: z.string().min(1).optional(),
|
|
115
|
-
sequence: z.int().nonnegative().optional()
|
|
116
|
-
});
|
|
117
|
-
function isDurableEvent(event) {
|
|
118
|
-
return event.type === "admission" || event.type === "assistant-checkpoint" || event.type === "run-state" || event.type === "run-operation" || event.type === "terminal";
|
|
119
|
-
}
|
|
120
|
-
function advanceAgentRuntimeEventCursor(rawCursor, event) {
|
|
121
|
-
const cursor = AgentRuntimeEventCursorSchema.parse(rawCursor);
|
|
122
|
-
if (isDurableEvent(event)) {
|
|
123
|
-
const previous = cursor.snapshotVersion;
|
|
124
|
-
const durableEventIds = previous === event.snapshotVersion ? cursor.durableEventIds ?? [] : [];
|
|
125
|
-
if (previous !== undefined && event.snapshotVersion < previous || durableEventIds.includes(event.eventId)) {
|
|
126
|
-
return { status: "duplicate", cursor };
|
|
127
|
-
}
|
|
128
|
-
return {
|
|
129
|
-
status: "accepted",
|
|
130
|
-
cursor: {
|
|
131
|
-
...cursor,
|
|
132
|
-
snapshotVersion: event.snapshotVersion,
|
|
133
|
-
durableEventIds: [...durableEventIds, event.eventId]
|
|
134
|
-
}
|
|
135
|
-
};
|
|
136
|
-
}
|
|
137
|
-
const previousSequence = cursor.runtimeEpoch === event.runtimeEpoch ? cursor.sequence : undefined;
|
|
138
|
-
if (previousSequence !== undefined && event.sequence <= previousSequence) {
|
|
139
|
-
return { status: "duplicate", cursor };
|
|
140
|
-
}
|
|
141
|
-
return {
|
|
142
|
-
status: previousSequence !== undefined && event.sequence > previousSequence + 1 ? "gap" : "accepted",
|
|
143
|
-
cursor: { ...cursor, runtimeEpoch: event.runtimeEpoch, sequence: event.sequence }
|
|
144
|
-
};
|
|
145
|
-
}
|
|
146
|
-
function agentDurableEventId(type, runId, snapshotVersion) {
|
|
147
|
-
return `${runId}:${type}:${snapshotVersion}`;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
export { AgentAdmissionEventSchema, AgentTransientDeltaEventSchema, AgentReasoningStartEventSchema, AgentReasoningDeltaEventSchema, AgentReasoningEndEventSchema, AgentAttemptResetEventSchema, AgentCheckpointEventSchema, AgentRunStateEventSchema, AgentRunOperationEventSchema, AgentToolStatusEventSchema, AgentTerminalEventSchema, AgentRuntimeEventSchema, AgentRuntimeEventCursorSchema, advanceAgentRuntimeEventCursor, agentDurableEventId };
|
package/dist/index-y91ry9h2.js
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|