stitchkit 0.118.1 → 0.120.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.
Files changed (180) hide show
  1. package/CHANGELOG.md +92 -0
  2. package/README.md +10 -7
  3. package/dist/browser/http.d.ts.map +1 -1
  4. package/dist/contract/client-types.d.ts +6 -3
  5. package/dist/contract/client-types.d.ts.map +1 -1
  6. package/dist/contract/define-validation.d.ts.map +1 -1
  7. package/dist/contract/define.d.ts +18 -12
  8. package/dist/contract/define.d.ts.map +1 -1
  9. package/dist/contract/endpoint-capabilities.d.ts +28 -0
  10. package/dist/contract/endpoint-capabilities.d.ts.map +1 -0
  11. package/dist/contract/factory.d.ts +49 -19
  12. package/dist/contract/factory.d.ts.map +1 -1
  13. package/dist/contract/tool-view.d.ts +1 -1
  14. package/dist/contract/tool-view.d.ts.map +1 -1
  15. package/dist/contract/transports.d.ts +5 -0
  16. package/dist/contract/transports.d.ts.map +1 -0
  17. package/dist/entrypoints/agent-runtime/coding-tools.js +9 -8
  18. package/dist/entrypoints/agent-runtime/harness.js +9 -8
  19. package/dist/entrypoints/agent-runtime/realtime.js +3 -3
  20. package/dist/entrypoints/agent-runtime/sandbox.js +10 -9
  21. package/dist/entrypoints/agent-runtime/sqlite/bun.js +12 -11
  22. package/dist/entrypoints/agent-runtime/sqlite/node.js +12 -11
  23. package/dist/entrypoints/agent-runtime/testing.js +12 -11
  24. package/dist/entrypoints/agent-runtime.js +22 -19
  25. package/dist/entrypoints/application/diagnostic-journal.js +3 -3
  26. package/dist/entrypoints/application/directory-inbox.js +4 -4
  27. package/dist/entrypoints/application/opentelemetry.js +1 -1
  28. package/dist/entrypoints/application.js +10 -10
  29. package/dist/entrypoints/cli/publish.js +4 -4
  30. package/dist/entrypoints/cli.js +13 -12
  31. package/dist/entrypoints/contract.d.ts +1 -1
  32. package/dist/entrypoints/contract.d.ts.map +1 -1
  33. package/dist/entrypoints/contract.js +6 -4
  34. package/dist/entrypoints/files.js +3 -3
  35. package/dist/entrypoints/geo/contract.d.ts +7 -0
  36. package/dist/entrypoints/geo/contract.d.ts.map +1 -0
  37. package/dist/entrypoints/geo/contract.js +6 -0
  38. package/dist/entrypoints/geo.js +60 -23
  39. package/dist/entrypoints/http.js +3 -3
  40. package/dist/entrypoints/index.js +9 -7
  41. package/dist/entrypoints/live.js +1 -1
  42. package/dist/entrypoints/node.js +7 -6
  43. package/dist/entrypoints/primitives.js +1 -1
  44. package/dist/entrypoints/process/owner-loss.js +1 -1
  45. package/dist/entrypoints/process.js +3 -3
  46. package/dist/entrypoints/react.js +1 -1
  47. package/dist/entrypoints/remote.js +4 -3
  48. package/dist/entrypoints/server.js +16 -15
  49. package/dist/entrypoints/telegram/screens.js +5 -5
  50. package/dist/entrypoints/telegram.js +7 -7
  51. package/dist/entrypoints/testing.js +7 -6
  52. package/dist/entrypoints/tools/agent.d.ts +9 -0
  53. package/dist/entrypoints/tools/agent.d.ts.map +1 -0
  54. package/dist/entrypoints/tools/agent.js +16 -0
  55. package/dist/entrypoints/tools/connections.js +7 -6
  56. package/dist/entrypoints/tools/contract.js +1 -1
  57. package/dist/entrypoints/tools/invoker.js +5 -4
  58. package/dist/entrypoints/tools/mcp.js +110 -9
  59. package/dist/entrypoints/tools/toolkit.d.ts +9 -0
  60. package/dist/entrypoints/tools/toolkit.d.ts.map +1 -0
  61. package/dist/entrypoints/tools/toolkit.js +40 -0
  62. package/dist/entrypoints/tools.d.ts +0 -10
  63. package/dist/entrypoints/tools.d.ts.map +1 -1
  64. package/dist/entrypoints/tools.js +38 -80
  65. package/dist/entrypoints/tracking/contract.js +5 -3
  66. package/dist/entrypoints/tracking/performance.js +3 -3
  67. package/dist/entrypoints/tracking.d.ts +1 -1
  68. package/dist/entrypoints/tracking.d.ts.map +1 -1
  69. package/dist/entrypoints/tracking.js +63 -83
  70. package/dist/entrypoints/xlsx.js +1 -1
  71. package/dist/geo/index.d.ts +2 -1
  72. package/dist/geo/index.d.ts.map +1 -1
  73. package/dist/geo/record.d.ts +8 -0
  74. package/dist/geo/record.d.ts.map +1 -0
  75. package/dist/geo/resolver.d.ts +1 -3
  76. package/dist/geo/resolver.d.ts.map +1 -1
  77. package/dist/geo/schema.d.ts +44 -0
  78. package/dist/geo/schema.d.ts.map +1 -0
  79. package/dist/geo/types.d.ts +2 -13
  80. package/dist/geo/types.d.ts.map +1 -1
  81. package/dist/{index-n5sv4z0w.js → index-0qyrcjfs.js} +16 -18
  82. package/dist/index-1psbyyhj.js +21 -0
  83. package/dist/{index-tsngj2b5.js → index-2fc1k9k2.js} +206 -206
  84. package/dist/index-3prvb42w.js +30 -0
  85. package/dist/{index-073nw9qr.js → index-3yb5kft5.js} +524 -522
  86. package/dist/{index-d9hq291n.js → index-4jpykzvw.js} +70 -81
  87. package/dist/index-568w258r.js +76 -0
  88. package/dist/index-69t14s4a.js +39 -0
  89. package/dist/{index-dky0dcmf.js → index-72r9k0av.js} +6 -2
  90. package/dist/{index-6p3frkv5.js → index-7zwtbak8.js} +9 -50
  91. package/dist/{index-90p34rts.js → index-8ryydawp.js} +7 -5
  92. package/dist/{index-vv1sch8a.js → index-8vzh5wpv.js} +13 -8
  93. package/dist/{index-75ns2ybj.js → index-8xyf8h2k.js} +1 -1
  94. package/dist/{index-xx1j310k.js → index-8yxgcyt6.js} +171 -169
  95. package/dist/{index-p6apg0jg.js → index-9frf01t9.js} +16 -9
  96. package/dist/{index-q0th8q0z.js → index-9mjrnqxs.js} +1 -3
  97. package/dist/{index-6f49krb5.js → index-aa50qwv4.js} +1 -1
  98. package/dist/{index-ega3yz4c.js → index-aqwg2dm5.js} +1 -1
  99. package/dist/{index-p0rf7sq9.js → index-bgcwxhxh.js} +225 -223
  100. package/dist/index-bph35vpy.js +77 -0
  101. package/dist/{index-tdpmfks8.js → index-bz479f0x.js} +1 -1
  102. package/dist/index-d3xdyjt6.js +38 -0
  103. package/dist/{index-q968hy6y.js → index-e452syyh.js} +1 -1
  104. package/dist/{index-86nbfysb.js → index-ff39f9dr.js} +3 -3
  105. package/dist/index-h1j71dr1.js +48 -0
  106. package/dist/{index-mgb7r8b8.js → index-jswst0h3.js} +1 -1
  107. package/dist/{index-095ya5hm.js → index-knmnj11j.js} +22 -191
  108. package/dist/{index-vwhrnp67.js → index-kz9734jc.js} +3 -3
  109. package/dist/{index-txg1npmg.js → index-mtwh9hyp.js} +1 -1
  110. package/dist/{index-dr3t5n1v.js → index-nn9qvkww.js} +46 -46
  111. package/dist/{index-ghtpfz4z.js → index-nyyam9ce.js} +2 -2
  112. package/dist/{index-qezhmp51.js → index-nz06qw5a.js} +3 -1
  113. package/dist/{index-1bx1xv1k.js → index-pfvde2fz.js} +5 -2
  114. package/dist/{index-w7jq3fz9.js → index-pq2m7t46.js} +1142 -1212
  115. package/dist/{index-yk4g8805.js → index-pq7rkwkk.js} +1 -30
  116. package/dist/{index-s80awwsw.js → index-qch1vcaa.js} +3 -1
  117. package/dist/{index-hdjmdwsj.js → index-qctbzmg9.js} +521 -511
  118. package/dist/{index-n8z3rvzw.js → index-qevqn3d3.js} +3 -5
  119. package/dist/{index-nqxrm176.js → index-r3db01kh.js} +1 -1
  120. package/dist/{index-v6vb5qx8.js → index-s3yxw6kt.js} +1 -1
  121. package/dist/{index-cqmqyjax.js → index-sa99p98w.js} +1 -1
  122. package/dist/index-sb9dr3tq.js +14 -0
  123. package/dist/{index-0gxvns6s.js → index-sba3e6m4.js} +1 -0
  124. package/dist/{index-f24bdt13.js → index-v1swr26p.js} +3 -1
  125. package/dist/{index-rhzkndr5.js → index-x4p3kw1p.js} +533 -530
  126. package/dist/{index-cycp3r3e.js → index-yb9n4pgj.js} +2 -2
  127. package/dist/{index-htxh46ej.js → index-ycqhyars.js} +2 -2
  128. package/dist/{index-9bwcthxw.js → index-yj6saztf.js} +31 -13
  129. package/dist/{index-f6m4c545.js → index-zrdcmg6j.js} +4 -6
  130. package/dist/{index-tvtacc9a.js → index-zyc64nbh.js} +1 -34
  131. package/dist/process/bun-child.d.ts +3 -2
  132. package/dist/process/bun-child.d.ts.map +1 -1
  133. package/dist/server/contract-method.d.ts.map +1 -1
  134. package/dist/tools/internal/surface-projector.d.ts.map +1 -1
  135. package/dist/tools/operations/async-operation-canonical-types.d.ts +1 -1
  136. package/dist/tracking/attribution.d.ts +21 -25
  137. package/dist/tracking/attribution.d.ts.map +1 -1
  138. package/dist/tracking/client-visit.d.ts +5 -7
  139. package/dist/tracking/client-visit.d.ts.map +1 -1
  140. package/dist/tracking/client.d.ts +2 -2
  141. package/dist/tracking/client.d.ts.map +1 -1
  142. package/dist/tracking/contract.d.ts +1 -1
  143. package/dist/tracking/host.d.ts +0 -1
  144. package/dist/tracking/host.d.ts.map +1 -1
  145. package/dist/tracking/privacy.d.ts +6 -0
  146. package/dist/tracking/privacy.d.ts.map +1 -1
  147. package/dist/tracking/schemas.d.ts +2 -2
  148. package/dist/tracking/schemas.d.ts.map +1 -1
  149. package/llms/agent-runtime-harness.txt +4 -3
  150. package/llms/agent-runtime-sandbox.txt +1 -1
  151. package/llms/agent-runtime.2.txt +3 -2
  152. package/llms/agent-runtime.3.txt +4 -46
  153. package/llms/agent-runtime.4.txt +113 -0
  154. package/llms/agent-runtime.txt +11 -13
  155. package/llms/cli.txt +1 -1
  156. package/llms/contract.txt +46 -24
  157. package/llms/geo-contract.txt +23 -0
  158. package/llms/geo.txt +40 -4
  159. package/llms/stitchkit.txt +16 -9
  160. package/llms/testing.txt +4 -6
  161. package/llms/tools-agent.txt +24 -0
  162. package/llms/tools-mcp.txt +71 -6
  163. package/llms/tools-toolkit.txt +23 -0
  164. package/llms/tools.2.txt +8 -5
  165. package/llms/tools.3.txt +9 -78
  166. package/llms/tools.txt +8 -8
  167. package/llms/tracking-contract.txt +1 -1
  168. package/llms/tracking.txt +27 -5
  169. package/llms/{upgrading-0.105.0-0.118.0.txt → upgrading-0.106.0-0.120.0.txt} +152 -410
  170. package/llms/upgrading-0.37.0-0.53.0.txt +969 -0
  171. package/llms/{upgrading-0.44.0-0.62.0.txt → upgrading-0.55.0-0.68.0.txt} +509 -528
  172. package/llms/{upgrading-0.63.0-0.83.0.txt → upgrading-0.69.0-0.95.0.txt} +506 -509
  173. package/llms/{upgrading-0.84.0-0.104.0.txt → upgrading-0.96.0-0.105.0.txt} +410 -506
  174. package/llms/upgrading.txt +5 -5
  175. package/llms-full.txt +475 -154
  176. package/llms.txt +17 -14
  177. package/package.json +32 -20
  178. package/llms/upgrading-0.37.0-0.44.0.txt +0 -444
  179. package/dist/{index-arjmb6de.js → index-1jwsfkfz.js} +0 -0
  180. package/dist/{index-qndsr7f0.js → index-5efrpfmj.js} +3 -3
package/CHANGELOG.md CHANGED
@@ -15,6 +15,98 @@ additive**; the first breaking change landed in 0.10.0. Grep the file for
15
15
 
16
16
  ## [Unreleased]
17
17
 
18
+ ## [0.120.0] - 2026-11-05
19
+
20
+ ### ⚠️ Breaking changes
21
+
22
+ **Who must act:** code importing the MCP server, `mountAgent` or `createToolkit` from `stitchkit/tools`. Code that imports only the registry, tool names, runtime and native tools, the invoker, the OAuth provider or the durability engine from `stitchkit/tools` changes nothing. See the [migration](docs/guide/upgrading.md#tools-barrel-subpaths).
23
+
24
+ - `stitchkit/tools` — **the tools barrel loads no optional peer; MCP, the agent mount and the toolkit have their own subpaths.**
25
+ An application serving its operations over HTTP and CLI could not import `listToolNames` without
26
+ installing `@modelcontextprotocol/server` and `ai`: the barrel re-exported the MCP server factories,
27
+ `mountAgent` and `createToolkit`, and ESM resolution of the entry needed both optional peers. Import
28
+ the MCP server — `createMcpHandler`, `createMcpHttpRoute`, `buildMcpServer`, `mountMcp`,
29
+ `mountMcpResource`, `validateMcpSchemas`, `createStdioMcpServer`, `bindStdioProcessSignals`, the
30
+ catalog stamp and MCP Apps helpers and their config types — from `stitchkit/tools/mcp`, which already
31
+ exported them; `mountAgent`, `AgentMountConfig` and `AgentContext` from the new
32
+ `stitchkit/tools/agent` (the `ai` peer); `createToolkit` and `Toolkit` from the new
33
+ `stitchkit/tools/toolkit` (both peers). A build check walks the built `stitchkit/tools` graph and fails
34
+ on any optional peer import. `// before: import { createMcpHandler, mountAgent } from 'stitchkit/tools'`
35
+ → `// after: import { createMcpHandler } from 'stitchkit/tools/mcp'; import { mountAgent } from 'stitchkit/tools/agent'`.
36
+ [ADR 0284](docs/decisions/0284-the-tools-barrel-loads-no-optional-peer.md);
37
+ [migration](docs/guide/upgrading.md#tools-barrel-subpaths).
38
+ **Affects:** `stitchkit/tools` createMcpHandler, createMcpHttpRoute, buildMcpServer, mountMcp, mountMcpResource, validateMcpSchemas, createStdioMcpServer, bindStdioProcessSignals, inlineMcpAppBundle, mcpCatalogMeta, readMcpCatalogStamp, EXT_APPS_BUNDLE_PLACEHOLDER, MCP_CATALOG_META_KEY, RESOURCE_MIME_TYPE, McpServer, McpHandlerConfig, McpHttpConfig, McpHttpHandler, McpHttpSecurityConfig, McpLegacyPolicy, McpMountConfig, McpServerBuildConfig, McpServerSharedConfig, DirectMcpSurfaceConfig, FiniteMcpSurfaceConfig, McpSurfaceDefinition, McpSurfaceRegistry, McpSchemaValidationConfig, ValidateMcpSchemasConfig, IncompatibleSchemaPolicy, McpStdioHandle, StdioMcpServerConfig, StdioAuthConfig, StdioCloseTarget, StdioProcessSignalsOptions, StdioProcessSignalsBinding, StdioProcessSignalsErrorPhase, McpCatalogStamp, McpResourceDef, McpAppResourceMeta, McpAppCsp, mountAgent, AgentMountConfig, AgentContext, createToolkit, Toolkit
39
+
40
+ ### Added
41
+
42
+ - `stitchkit/tools/agent` — `mountAgent` with only Zod and the `ai` peer; `stitchkit/tools/toolkit` — `createToolkit`, the one subpath that needs both the MCP server SDK and `ai`. Both start evolving.
43
+
44
+ ## [0.119.0] - 2026-11-04
45
+
46
+ ### ⚠️ Breaking changes
47
+
48
+ **Who must act:** code configuring `createContractFactory`, importing its `Explicit*` exposure types or calling HTTP clients of endpoints typed as `EndpointDef` / `FactoryScopedEndpoint`; tracking clients passing `referrerMap` and servers reading `utm` from an event batch; code comparing, strictly parsing or mutating a `stitchkit/geo` snapshot. An application on the no-config factory with literal endpoints and the default GeoIP mapper only re-reads its snapshots. See the [migrations](docs/guide/upgrading.md).
49
+
50
+ - `stitchkit`, `stitchkit/contract`, `stitchkit/http` — **factory exposure is a transport default, configured after scope.**
51
+ `createContractFactory<Scope>({ toolExposure: 'explicit' })` →
52
+ `createContractFactory<Scope>().configure({ toolExposure: { default: ['HTTP'] } })`.
53
+ Choose `['HTTP', 'CLI']` to expose ordinary endpoints through HTTP and CLI; explicit endpoint arrays
54
+ replace the default. Intrinsic HTTP-only endpoints intersect implicit defaults with HTTP, preserving
55
+ an empty intersection. Explicit non-HTTP multipart exposure is now refused rather than silently
56
+ disappearing from tools, and multipart endpoints refuse tool options. The constructor rejects
57
+ arguments, including the removed string policy, instead of silently opening MCP/AGENT. No-config
58
+ authoring keeps its runtime defaults. `ExplicitToolExposureEndpoints` and `ExplicitScopedDefineContract`
59
+ are renamed `ConfiguredToolExposureEndpoints` and `ConfiguredScopedDefineContract`. Configuration
60
+ keys outside the policy fail to compile.
61
+ [ADR 0283](docs/decisions/0283-factory-default-exposure-is-materialized-by-capability.md);
62
+ [migration](docs/guide/upgrading.md#factory-default-exposure).
63
+ HTTP client methods and URLs now require guaranteed HTTP, not a possible member of a widened array:
64
+ an endpoint typed as the broad `EndpointDef` or `FactoryScopedEndpoint` has none, with or without a
65
+ factory; keep helper endpoints literal with a const generic.
66
+ **Affects:** `stitchkit` createContractFactory, ContractFactoryConfig, ContractFactoryToolExposure, ExplicitScopedDefineContract, ExplicitToolExposureEndpoints, EndpointDef, FactoryScopedEndpoint, defineContract(behaviour), createClient, createClients, createScopedClients, createUrlBuilder, createUrlBuilders, createScopedUrlBuilders, ScopedHttpClient, TypedHttpClient, ScopedUrlBuilder, TypedUrlBuilder; `stitchkit/contract` createContractFactory, ContractFactoryConfig, ContractFactoryToolExposure, ExplicitScopedDefineContract, ExplicitToolExposureEndpoints, EndpointDef, FactoryScopedEndpoint, defineContract(behaviour), ScopedHttpClient, TypedHttpClient, ScopedUrlBuilder, TypedUrlBuilder; `stitchkit/http` createClient, createClients, createScopedClients, createUrlBuilder, createUrlBuilders, createScopedUrlBuilders
67
+
68
+ - `stitchkit/tracking` — **attribution carries raw facts; channel classification belongs to the server.**
69
+ Remove `referrerMap`, `ReferrerRule`, `parseReferrer` and `hostname` from resolver inputs and host page contexts. A referrer never
70
+ becomes UTM; real `utm_*` tags retain case and whitespace, including tags without a source. Current-touch
71
+ contains the current capture rather than retaining an earlier campaign, and unversioned stored attribution
72
+ resets once because inferred tags cannot be distinguished from real ones. An event batch no longer
73
+ carries `utm`: attribution is the visit's entry fact, sent with the bootstrap. The value of every
74
+ configured click marker is masked in a referrer, and `createTrackingClient` refuses an invalid
75
+ `clickIdParams` list at creation. `// before: { referrerMap: rules }`
76
+ → `// after: { clickIdParams: ['gclid', 'msclkid'] }; classify entry.referrer on the server`.
77
+ [ADR 0282](docs/decisions/0282-tracking-carries-facts-not-channel-classification.md); [migration](docs/guide/upgrading.md).
78
+ **Affects:** `stitchkit/tracking` resolveAttribution, ResolveAttributionInput, ResolvedAttribution, ReferrerRule, parseReferrer, parseUtmFromSearch, TrackingClientConfig, TrackingPageContext, browserTrackingHost, createTrackingClient(behaviour); `stitchkit/tracking/contract` TrackEventsRequest, createTrackingSchemas(behaviour), createTrackingContract(behaviour)
79
+
80
+ - `stitchkit/geo` — **the default snapshot is the complete City + ASN record, readonly and owned by a schema.**
81
+ The default mapper and resolver add continent, registered country, all GeoNames IDs,
82
+ `accuracyRadiusKm` and every source language in `localizedNames` for five place groups, so an
83
+ unchanged record yields new keys: a snapshot compared by equality or parsed by an application's
84
+ strict schema changes. `GeoAttribution` is inferred from `GeoAttributionSchema` and readonly down
85
+ to its dictionaries; an empty label or an out-of-range coordinate is omitted as a field. The
86
+ registered country is its own fact and never fills the located country. Custom `map` results are
87
+ untouched. `// before: expect(await geo.resolve(ip)).toEqual({ city: 'Bangkok' })` →
88
+ `// after: { city: 'Bangkok', localizedNames: { city: { en: 'Bangkok' } } }`.
89
+ [migration](docs/guide/upgrading.md#geo-full-snapshot).
90
+ **Affects:** `stitchkit/geo` GeoAttribution, mapGeoIpRecord(behaviour), createGeoIpResolver(behaviour)
91
+
92
+ ### Added
93
+
94
+ - `stitchkit/geo/contract` — a browser-safe entrypoint with `GeoAttributionSchema` and
95
+ `GeoAttribution`, so a shared contract validates a stored or transported place snapshot without
96
+ the server-only resolver.
97
+
98
+ - `stitchkit/tracking/contract` — attribution and visit bootstrap include optional `clickId`, the name of
99
+ the first nonempty parameter in the application's ordered `clickIdParams` list. The client retains no
100
+ click-ID values and recognises no markers by default.
101
+ **Affects:** `stitchkit/tracking/contract` AttributionData, AttributionDataSchema, VisitEntryContext, VisitEntryContextShape, createTrackingSchemas
102
+
103
+ ### Fixed
104
+
105
+ - `stitchkit/tracking` — a bootstrap preserves partial campaign tags without passing absent values to the
106
+ redactor, and collects raw landing facts even when browser storage is unavailable. Campaign credentials
107
+ are masked before persistence as well as before transport.
108
+ **Affects:** `stitchkit/tracking` createTrackingClient(behaviour)
109
+
18
110
  ## [0.118.1] - 2026-11-03
19
111
 
20
112
  ### Added
package/README.md CHANGED
@@ -86,7 +86,8 @@ Server code imports server entrypoints:
86
86
  ```ts
87
87
  import { createServer, createHandler, implement } from 'stitchkit/server'
88
88
  import { createSocketIOServer, createAuthHook } from 'stitchkit/server'
89
- import { createMcpHandler, mountAgent } from 'stitchkit/tools'
89
+ import { createMcpHandler } from 'stitchkit/tools/mcp'
90
+ import { mountAgent } from 'stitchkit/tools/agent'
90
91
  import { createAgentRuntime, defineAgentProtocol } from 'stitchkit/agent-runtime'
91
92
  import { createBunSqliteAgentRuntimeStore } from 'stitchkit/agent-runtime/sqlite/bun'
92
93
  import { createApplication, defineManagedResource } from 'stitchkit/application'
@@ -115,7 +116,9 @@ Credential-free replay, scripted provider failures and deterministic race
115
116
  controls live in `stitchkit/agent-runtime/testing` for Bun and Node tests.
116
117
  The separately installed `stitchkit-tui` package adds a maintained Bun/OpenTUI host over those
117
118
  headless contracts; its `stitchkit-tui/core` entrypoint exposes renderer-neutral terminal state
118
- without React, OpenTUI or agent-runtime imports. Neither enters the core dependency graph.
119
+ without React, OpenTUI or agent-runtime imports, and `stitchkit-tui/widgets` builds any terminal
120
+ application on it — tables, pickers, forms, charts, meters, dialogs — with no agent runtime
121
+ (`bunx stitchkit-tui-gallery` shows them all). Neither enters the core dependency graph.
119
122
 
120
123
  ## Managed application kernel
121
124
 
@@ -249,7 +252,7 @@ size is the server's call — the contract's `limit` default — never the clien
249
252
  ### 5. MCP tools (for Claude, Cursor, etc.)
250
253
 
251
254
  ```ts
252
- import { createMcpHandler, createMcpHttpRoute } from 'stitchkit/tools'
255
+ import { createMcpHandler, createMcpHttpRoute } from 'stitchkit/tools/mcp'
253
256
 
254
257
  const mcp = createMcpHandler({
255
258
  serverInfo: { name: 'my-app', version: '1.0.0' },
@@ -268,7 +271,7 @@ createServer({
268
271
  ### 6. AI Agent tools
269
272
 
270
273
  ```ts
271
- import { mountAgent } from 'stitchkit/tools'
274
+ import { mountAgent } from 'stitchkit/tools/agent'
272
275
  import { generateText } from 'ai'
273
276
 
274
277
  const tools = mountAgent(service, { context: { userId: 'agent-1' } })
@@ -437,14 +440,14 @@ peer — an install pulls in only what the project actually uses.
437
440
  |------------|------|--------------|
438
441
  | `ky` | bundled, runtime | The HTTP client behind the typed client — ~13 KB, `fetch`-based, with retry, hooks and timeouts built in. The only thing stitchkit installs for you. |
439
442
  | `zod` | peer, **required** | Schemas are the single source of truth. A peer so your app and stitchkit share **one** `zod` instance — `z.infer` types and `instanceof` checks break across two copies. |
440
- | `@modelcontextprotocol/server` | peer, optional | MCP server surfaces in `stitchkit/tools`; SDK v2, protocol `2026-07-28`. |
443
+ | `@modelcontextprotocol/server` | peer, optional | MCP server surfaces in `stitchkit/tools/mcp` and `stitchkit/tools/toolkit`; SDK v2, protocol `2026-07-28`. |
441
444
  | `@modelcontextprotocol/client` | development dependency, optional | Only consumers that run MCP client integration tests or build an MCP host. |
442
445
  | `@modelcontextprotocol/ext-apps` | peer, optional | Only MCP Apps (`ui://` resources and UI metadata). |
443
- | `ai` | peer, optional | `stitchkit/tools` agent tools and the optional server-only `stitchkit/agent-runtime`. |
446
+ | `ai` | peer, optional | agent tools in `stitchkit/tools/agent` and `stitchkit/tools/toolkit`, and the optional server-only `stitchkit/agent-runtime`. |
444
447
  | Headless harness | optional surface | `stitchkit/agent-runtime/harness`; uses the same optional `ai` peer and canonical runtime. |
445
448
  | Agent coding tools | optional surface | `stitchkit/agent-runtime/coding-tools`; peer-free, host-authorized direct file and shell tools. |
446
449
  | Agent runtime testing | optional test surface | `stitchkit/agent-runtime/testing`; peer-free local fault server, replay and race fixtures. |
447
- | `stitchkit-tui` | separate optional package | Renderer-neutral `./core` state plus a Bun/OpenTUI terminal controller, commands, model/session pickers and authenticated local attachment over a caller-composed harness. |
450
+ | `stitchkit-tui` | separate optional package | Renderer-neutral `./core` state, `./widgets` for terminal applications, plus a Bun/OpenTUI terminal controller, commands, model/session pickers and authenticated local attachment over a caller-composed harness. |
448
451
  | `@openrouter/ai-sdk-provider` | peer, optional | Only `stitchkit/agent-runtime/openrouter`; neutral runtime imports do not resolve it. |
449
452
  | SQLite | runtime built-in, optional | `bun:sqlite` through `stitchkit/agent-runtime/sqlite/bun`, or `node:sqlite` on Node ≥ 22.5 through the Node leaf. |
450
453
  | `grammy` | peer, optional | Only `stitchkit/application/grammy` at run time, and the declarations of `stitchkit/telegram/screens` and `stitchkit/telegram/grammy`; the neutral application kernel does not resolve it. |
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/browser/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/browser/http.ts"],"names":[],"mappings":"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"}
@@ -131,9 +131,12 @@ export type EndpointFn<E> = [keyof EndpointArgs<E>] extends [never] ? ClientEndp
131
131
  export type TypedClient<C extends Record<string, EndpointDef>> = {
132
132
  [K in keyof C]: EndpointFn<C[K]>;
133
133
  };
134
- type ExposesHttp<E> = E extends {
135
- expose: readonly Transport[];
136
- } ? 'HTTP' extends E['expose'][number] ? true : false : true;
134
+ type GuaranteesHttp<Exposure extends readonly Transport[]> = Exposure extends readonly [
135
+ infer First,
136
+ ...infer Rest extends readonly Transport[]
137
+ ] ? [First] extends ['HTTP'] ? true : GuaranteesHttp<Rest> : Exposure extends readonly [...infer Rest extends readonly Transport[], infer Last] ? [Last] extends ['HTTP'] ? true : GuaranteesHttp<Rest> : false;
138
+ type ExposureHasHttp<Exposure> = Exposure extends undefined ? true : Exposure extends readonly Transport[] ? GuaranteesHttp<Exposure> : false;
139
+ type ExposesHttp<Endpoint> = Endpoint extends unknown ? 'expose' extends keyof Endpoint ? ExposureHasHttp<Endpoint['expose']> : true : never;
137
140
  type ArgsWith<E, Extra> = EndpointArgs<E> & Extra;
138
141
  export type ScopedEndpointFn<E, Extra> = [keyof ArgsWith<E, Extra>] extends [never] ? ClientEndpointWithoutArgs<EndpointOutput<E>> : ClientEndpointWithArgs<ArgsWith<E, Extra>, EndpointOutput<E>>;
139
142
  export type ScopedHttpClient<C extends Record<string, EndpointDef>, Extra> = {
@@ -1 +1 @@
1
- {"version":3,"file":"client-types.d.ts","sourceRoot":"","sources":["../../src/contract/client-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client-types.d.ts","sourceRoot":"","sources":["../../src/contract/client-types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"define-validation.d.ts","sourceRoot":"","sources":["../../src/contract/define-validation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG5C,+DAA+D;AAC/D,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI,CAkC1F;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI,CAQpF;AAED,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,EAAE,EAAE,WAAW,GACd,IAAI,CAuCN;AA4BD,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,EAAE,EAAE,WAAW,GACd,IAAI,CAoBN;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI,CAIxE;AAED,uEAAuE;AACvE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI,CAMrF;AAED,6EAA6E;AAC7E,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI,CAYxF;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,EAAE,EAAE,WAAW,GACd,IAAI,CAMN;AAED,gFAAgF;AAChF,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,EAAE,EAAE,WAAW,GACd,IAAI,CAqBN"}
1
+ {"version":3,"file":"define-validation.d.ts","sourceRoot":"","sources":["../../src/contract/define-validation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG5C,+DAA+D;AAC/D,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI,CAmC1F;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI,CAIpF;AAED,wBAAgB,+BAA+B,CAC7C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,EAAE,EAAE,WAAW,GACd,IAAI,CAmCN;AA4BD,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,EAAE,EAAE,WAAW,GACd,IAAI,CAoBN;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI,CAIxE;AAED,uEAAuE;AACvE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI,CAMrF;AAED,6EAA6E;AAC7E,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,GAAG,IAAI,CAQxF;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,EAAE,EAAE,WAAW,GACd,IAAI,CAMN;AAED,gFAAgF;AAChF,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,EAAE,EAAE,WAAW,GACd,IAAI,CAiBN"}
@@ -1,13 +1,10 @@
1
1
  import type { ZodType } from 'zod';
2
2
  import type { MultipartDescriptor } from './client-types.js';
3
3
  import type { EndpointToolOptions } from './tool-options.js';
4
+ import { type Transport } from './transports.js';
4
5
  export type { PathParams } from '../internal/route-pattern.js';
6
+ export { ALL_TRANSPORTS, TOOL_TRANSPORTS, type ToolTransport, type Transport, } from './transports.js';
5
7
  export type HttpMethod = 'GET' | 'HEAD' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
6
- export declare const ALL_TRANSPORTS: readonly ['HTTP', 'MCP', 'AGENT', 'CLI'];
7
- export type Transport = (typeof ALL_TRANSPORTS)[number];
8
- /** The transports a model or a tool client reads — every transport except HTTP. */
9
- export declare const TOOL_TRANSPORTS: readonly ["MCP", "AGENT", "CLI"];
10
- export type ToolTransport = (typeof TOOL_TRANSPORTS)[number];
11
8
  /** Successful HTTP statuses that may be declared by a typed-data endpoint. */
12
9
  export type HttpSuccessStatus = 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 226;
13
10
  /** Successful statuses that permit a response body. */
@@ -153,7 +150,7 @@ interface EndpointDefBase extends EndpointRouteBase {
153
150
  safelistedBody?: true;
154
151
  }
155
152
  interface HttpOnlyEndpointDef extends EndpointDefBase {
156
- expose: readonly ['HTTP'];
153
+ expose: readonly 'HTTP'[];
157
154
  tool?: never;
158
155
  rawResponse?: never;
159
156
  rawBody?: never;
@@ -162,12 +159,21 @@ interface HttpOnlyEndpointDef extends EndpointDefBase {
162
159
  /** The endpoint shape that may reach a tool transport. */
163
160
  export interface ToolEndpointDef extends EndpointDefBase {
164
161
  expose?: readonly Transport[];
162
+ multipart?: never;
165
163
  /** What the tool surface reads that HTTP does not. */
166
164
  tool?: EndpointToolOptions;
167
165
  rawResponse?: never;
168
166
  rawBody?: never;
169
167
  responseMeta?: never;
170
168
  }
169
+ interface MultipartEndpointDef extends EndpointDefBase {
170
+ multipart: MultipartDescriptor;
171
+ expose?: readonly 'HTTP'[];
172
+ tool?: never;
173
+ rawResponse?: never;
174
+ rawBody?: never;
175
+ responseMeta?: never;
176
+ }
171
177
  /** A validated JSON endpoint that also retains the original decoded body text. */
172
178
  interface RawBodyEndpointDef extends EndpointDefBase {
173
179
  method: 'POST' | 'PUT' | 'PATCH';
@@ -176,7 +182,7 @@ interface RawBodyEndpointDef extends EndpointDefBase {
176
182
  multipart?: never;
177
183
  rawResponse?: never;
178
184
  tool?: never;
179
- expose?: readonly ['HTTP'];
185
+ expose?: readonly 'HTTP'[];
180
186
  responseMeta?: never;
181
187
  }
182
188
  interface ResponseMetaEndpointDefBase extends EndpointDefBase {
@@ -184,7 +190,7 @@ interface ResponseMetaEndpointDefBase extends EndpointDefBase {
184
190
  rawResponse?: never;
185
191
  tool?: never;
186
192
  contentType?: never;
187
- expose?: readonly ['HTTP'];
193
+ expose?: readonly 'HTTP'[];
188
194
  }
189
195
  /** HTTP-only typed data with a declared body-capable success status. */
190
196
  interface ResponseMetaDataEndpointDef extends ResponseMetaEndpointDefBase {
@@ -262,7 +268,7 @@ interface RawResponseEndpointDef extends EndpointDefBase {
262
268
  /** Never a tool, so tool options would be dead metadata. */
263
269
  tool?: never;
264
270
  /** Redundant but allowed, so `expose: ['HTTP']` survives a migration. */
265
- expose?: readonly ['HTTP'];
271
+ expose?: readonly 'HTTP'[];
266
272
  responseMeta?: never;
267
273
  }
268
274
  /** A validated HTTP-only stream whose client yields schema-derived items. */
@@ -274,7 +280,7 @@ interface StreamingResponseEndpointDef extends EndpointDefBase {
274
280
  responseMeta?: never;
275
281
  multipart?: never;
276
282
  tool?: never;
277
- expose?: readonly ['HTTP'];
283
+ expose?: readonly 'HTTP'[];
278
284
  }
279
285
  /** An explicit HTTP HEAD operation. Headers/status are handler-owned; the body is always stripped. */
280
286
  export interface HeadEndpointDef extends EndpointRouteBase {
@@ -287,11 +293,11 @@ export interface HeadEndpointDef extends EndpointRouteBase {
287
293
  maxJsonBodyBytes?: never;
288
294
  safelistedBody?: never;
289
295
  tool?: never;
290
- expose?: readonly ['HTTP'];
296
+ expose?: readonly 'HTTP'[];
291
297
  responseMeta?: never;
292
298
  contentType?: string;
293
299
  }
294
- export type EndpointDef = HttpOnlyEndpointDef | ToolEndpointDef | RawBodyEndpointDef | ResponseMetaDataEndpointDef | ResponseMetaEmptyEndpointDef | ResponseMetaRawBodyDataEndpointDef | ResponseMetaRawBodyEmptyEndpointDef | RawResponseEndpointDef | StreamingResponseEndpointDef | HeadEndpointDef;
300
+ export type EndpointDef = HttpOnlyEndpointDef | ToolEndpointDef | MultipartEndpointDef | RawBodyEndpointDef | ResponseMetaDataEndpointDef | ResponseMetaEmptyEndpointDef | ResponseMetaRawBodyDataEndpointDef | ResponseMetaRawBodyEmptyEndpointDef | RawResponseEndpointDef | StreamingResponseEndpointDef | HeadEndpointDef;
295
301
  export interface ContractMeta<TScope extends string = string> {
296
302
  prefix: string;
297
303
  scope?: TScope;
@@ -1 +1 @@
1
- {"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../src/contract/define.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define.d.ts","sourceRoot":"","sources":["../../src/contract/define.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { z } from 'zod';
2
+ import type { EndpointDef, EndpointStreamDescriptor } from './define.js';
3
+ type EndpointCapabilities = Pick<EndpointDef, 'method' | 'rawResponse' | 'rawBody' | 'responseMeta' | 'multipart'> & {
4
+ stream?: EndpointStreamDescriptor;
5
+ };
6
+ declare const HTTP_ONLY_FEATURES: ("multipart" | "rawBody" | "rawResponse" | "responseMeta" | "stream")[];
7
+ export type HttpOnlyFeature = (typeof HTTP_ONLY_FEATURES)[number];
8
+ export type HttpOnlyEndpointShape = {
9
+ method: 'HEAD';
10
+ } | {
11
+ [Feature in (typeof HTTP_ONLY_FEATURES)[number]]: Required<Pick<EndpointCapabilities, Feature>>;
12
+ }[(typeof HTTP_ONLY_FEATURES)[number]];
13
+ export declare const HTTP_ONLY_EXPOSURE: readonly ["HTTP"];
14
+ export declare const ExposureSchema: z.ZodReadonly<z.ZodArray<z.ZodEnum<{
15
+ AGENT: "AGENT";
16
+ CLI: "CLI";
17
+ HTTP: "HTTP";
18
+ MCP: "MCP";
19
+ }>>>;
20
+ /**
21
+ * Whether a transport other than HTTP can carry the endpoint. A contract HEAD
22
+ * endpoint also declares `rawResponse`; the method is checked as well because
23
+ * a `MethodDef` assembled at runtime never met that type.
24
+ */
25
+ export declare function isHttpOnlyEndpoint(endpoint: EndpointCapabilities): boolean;
26
+ export declare function assertEndpointExposure(prefix: string, key: string, endpoint: EndpointDef): void;
27
+ export {};
28
+ //# sourceMappingURL=endpoint-capabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-capabilities.d.ts","sourceRoot":"","sources":["../../src/contract/endpoint-capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAGtE,KAAK,oBAAoB,GAAG,IAAI,CAC9B,WAAW,EACX,QAAQ,GAAG,aAAa,GAAG,SAAS,GAAG,cAAc,GAAG,WAAW,CACpE,GAAG;IAAE,MAAM,CAAC,EAAE,wBAAwB,CAAA;CAAE,CAAC;AAE1C,QAAA,MAAM,kBAAkB,yEAM2B,CAAC;AAEpD,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE,MAAM,MAAM,qBAAqB,GAC7B;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;KACG,OAAO,IAAI,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,GAAG,QAAQ,CACxD,IAAI,CAAC,oBAAoB,EAAE,OAAO,CAAC,CACpC;CACF,CAAC,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAE3C,eAAO,MAAM,kBAAkB,mBAAoC,CAAC;AACpE,eAAO,MAAM,cAAc;;;;;IAKd,CAAC;AAEd;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAK1E;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,WAAW,GACpB,IAAI,CAeN"}
@@ -20,18 +20,45 @@
20
20
  * The returned contracts are ordinary `ContractDef`s — `implement`, `createClient`
21
21
  * and the tool mounts treat them exactly as before.
22
22
  */
23
+ import { z } from 'zod';
23
24
  import type { ContractDef, ContractMeta, EndpointDef, Transport } from './define.js';
24
- export type ContractFactoryToolExposure = 'explicit';
25
- export interface ContractFactoryConfig {
26
- /** Missing endpoint `expose` becomes HTTP-only; every tool surface is opt-in. */
27
- toolExposure: ContractFactoryToolExposure;
28
- }
29
- export type ExplicitToolExposureEndpoints<T extends Record<string, EndpointDef>> = {
30
- [K in keyof T]: T[K] extends {
31
- expose: readonly Transport[];
32
- } ? T[K] : T[K] & {
33
- expose: readonly ['HTTP'];
34
- };
25
+ import { type HttpOnlyEndpointShape, type HttpOnlyFeature } from './endpoint-capabilities.js';
26
+ declare const ContractFactoryToolExposureSchema: z.ZodObject<{
27
+ default: z.ZodReadonly<z.ZodArray<z.ZodEnum<{
28
+ AGENT: "AGENT";
29
+ CLI: "CLI";
30
+ HTTP: "HTTP";
31
+ MCP: "MCP";
32
+ }>>>;
33
+ }, z.core.$strict>;
34
+ declare const ContractFactoryConfigSchema: z.ZodObject<{
35
+ toolExposure: z.ZodObject<{
36
+ default: z.ZodReadonly<z.ZodArray<z.ZodEnum<{
37
+ AGENT: "AGENT";
38
+ CLI: "CLI";
39
+ HTTP: "HTTP";
40
+ MCP: "MCP";
41
+ }>>>;
42
+ }, z.core.$strict>;
43
+ }, z.core.$strict>;
44
+ export type ContractFactoryToolExposure = z.infer<typeof ContractFactoryToolExposureSchema>;
45
+ export type ContractFactoryConfig = z.infer<typeof ContractFactoryConfigSchema>;
46
+ type HttpExposure<Exposure extends readonly Transport[]> = Exposure extends readonly [
47
+ infer First extends Transport,
48
+ ...infer Rest extends readonly Transport[]
49
+ ] ? First extends 'HTTP' ? readonly [First, ...HttpExposure<Rest>] : HttpExposure<Rest> : number extends Exposure['length'] ? readonly Extract<Exposure[number], 'HTTP'>[] : readonly [];
50
+ type PossibleHttpOnlyFeature<Endpoint> = {
51
+ [Feature in keyof Endpoint & HttpOnlyFeature]: Exclude<Endpoint[Feature], undefined | false> extends never ? never : Feature;
52
+ }[keyof Endpoint & HttpOnlyFeature];
53
+ type DefaultEndpointExposure<Endpoint, Defaults extends readonly Transport[]> = Endpoint extends HttpOnlyEndpointShape ? HttpExposure<Defaults> : [PossibleHttpOnlyFeature<Endpoint>] extends [never] ? Defaults : Defaults | HttpExposure<Defaults>;
54
+ type WithEndpointExposure<Endpoint, Exposure> = Exposure extends readonly Transport[] ? Omit<Endpoint, 'expose'> & {
55
+ expose: Exposure;
56
+ } : never;
57
+ type MaterializedEndpoint<Endpoint, Defaults extends readonly Transport[]> = Endpoint extends {
58
+ expose: readonly Transport[];
59
+ } ? Endpoint : 'expose' extends keyof Endpoint ? WithEndpointExposure<Endpoint, Exclude<Endpoint['expose'], undefined> | DefaultEndpointExposure<Endpoint, Defaults>> : WithEndpointExposure<Endpoint, DefaultEndpointExposure<Endpoint, Defaults>>;
60
+ export type ConfiguredToolExposureEndpoints<T extends Record<string, EndpointDef>, Defaults extends readonly Transport[] = readonly ['HTTP']> = {
61
+ [K in keyof T]: MaterializedEndpoint<T[K], Defaults>;
35
62
  };
36
63
  /** A factory-defined contract whose concrete scope remains required in metadata. */
37
64
  export interface ScopedContractDef<T extends Record<string, EndpointDef> = Record<string, EndpointDef>, TScope extends string = string> extends ContractDef<T, TScope> {
@@ -44,7 +71,7 @@ export interface ScopedContractDef<T extends Record<string, EndpointDef> = Recor
44
71
  * held to the same union as the contract's.
45
72
  *
46
73
  * Constraining the type parameter (rather than intersecting the argument) keeps
47
- * `T` itself unchanged, so `ExplicitToolExposureEndpoints<T>` and the boundary
74
+ * `T` itself unchanged, so `ConfiguredToolExposureEndpoints<T>` and the boundary
48
75
  * mapping below still see the endpoints the caller wrote. The check is
49
76
  * structural, so it also covers `HeadEndpointDef`, which declares its own
50
77
  * `scope` outside `EndpointDefBase`.
@@ -58,20 +85,23 @@ export type ScopedDefineContract<TScope extends string> = <const TContractScope
58
85
  scope: TContractScope;
59
86
  meta?: Record<string, unknown>;
60
87
  }, endpoints: T) => ScopedContractDef<T, TContractScope>;
61
- /** Scoped contract authoring where every omitted exposure becomes HTTP-only. */
62
- export type ExplicitScopedDefineContract<TScope extends string> = <const TContractScope extends TScope, const T extends Record<string, FactoryScopedEndpoint<TScope>>>(meta: {
88
+ /** Scoped authoring with every omitted exposure materialized from the factory default. */
89
+ export type ConfiguredScopedDefineContract<TScope extends string, Defaults extends readonly Transport[] = readonly ['HTTP']> = <const TContractScope extends TScope, const T extends Record<string, FactoryScopedEndpoint<TScope>>>(meta: {
63
90
  prefix: string;
64
91
  scope: TContractScope;
65
92
  meta?: Record<string, unknown>;
66
- }, endpoints: T) => ScopedContractDef<ExplicitToolExposureEndpoints<T>, TContractScope>;
93
+ }, endpoints: T) => ScopedContractDef<ConfiguredToolExposureEndpoints<T, Defaults>, TContractScope>;
67
94
  /**
68
95
  * Build a `defineContract` that requires a `scope` from the application's own
69
96
  * union. Call once per app and re-export the returned `defineContract`.
70
97
  */
71
- export declare function createContractFactory<TScope extends string>(): {
98
+ export declare function createContractFactory<TScope extends string>(...args: []): {
72
99
  defineContract: ScopedDefineContract<TScope>;
100
+ configure: <const Config extends ContractFactoryConfig>(config: Config & { readonly [Key in Exclude<keyof Config, keyof ContractFactoryConfig>]: never; } & {
101
+ readonly toolExposure: { readonly [Key in Exclude<keyof Config['toolExposure'], keyof ContractFactoryToolExposure>]: never; };
102
+ }) => {
103
+ defineContract: ConfiguredScopedDefineContract<TScope, Config['toolExposure']['default']>;
104
+ };
73
105
  };
74
- export declare function createContractFactory<TScope extends string>(config: ContractFactoryConfig): {
75
- defineContract: ExplicitScopedDefineContract<TScope>;
76
- };
106
+ export {};
77
107
  //# sourceMappingURL=factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/contract/factory.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGlF,MAAM,MAAM,2BAA2B,GAAG,UAAU,CAAC;AAErD,MAAM,WAAW,qBAAqB;IACpC,iFAAiF;IACjF,YAAY,EAAE,2BAA2B,CAAC;CAC3C;AAED,MAAM,MAAM,6BAA6B,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,IAAI;KAChF,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;QAAE,MAAM,EAAE,SAAS,SAAS,EAAE,CAAA;KAAE,GACzD,CAAC,CAAC,CAAC,CAAC,GACJ,CAAC,CAAC,CAAC,CAAC,GAAG;QAAE,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;KAAE;CACzC,CAAC;AAEF,oFAAoF;AACpF,MAAM,WAAW,iBAAiB,CAChC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EACnE,MAAM,SAAS,MAAM,GAAG,MAAM,CAC9B,SAAQ,WAAW,CAAC,CAAC,EAAE,MAAM,CAAC;IAC9B,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,qBAAqB,CAAC,MAAM,SAAS,MAAM,IAAI,WAAW,GAAG;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,0EAA0E;AAC1E,MAAM,MAAM,oBAAoB,CAAC,MAAM,SAAS,MAAM,IAAI,CACxD,KAAK,CAAC,cAAc,SAAS,MAAM,EACnC,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC,EAE7D,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,cAAc,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EAC/E,SAAS,EAAE,CAAC,KACT,iBAAiB,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;AAE1C,gFAAgF;AAChF,MAAM,MAAM,4BAA4B,CAAC,MAAM,SAAS,MAAM,IAAI,CAChE,KAAK,CAAC,cAAc,SAAS,MAAM,EACnC,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC,EAE7D,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,cAAc,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,EAC/E,SAAS,EAAE,CAAC,KACT,iBAAiB,CAAC,6BAA6B,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;AAEzE;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,SAAS,MAAM,KAAK;IAC9D,cAAc,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC;CAC9C,CAAC;AACF,wBAAgB,qBAAqB,CAAC,MAAM,SAAS,MAAM,EACzD,MAAM,EAAE,qBAAqB,GAC5B;IACD,cAAc,EAAE,4BAA4B,CAAC,MAAM,CAAC,CAAC;CACtD,CAAC"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/contract/factory.ts"],"names":[],"mappings":"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"}
@@ -99,7 +99,7 @@ export interface ToolViewNeedsToolTransport {
99
99
  'toolView needs a tool transport — add MCP, AGENT or CLI to expose': never;
100
100
  }
101
101
  type ToolTransportEndpoint<E> = E extends {
102
- expose: readonly ['HTTP'];
102
+ expose: readonly 'HTTP'[];
103
103
  } ? ToolViewNeedsToolTransport : E;
104
104
  /** The endpoint with its view in `tool.view`, next to any tool options it already had. */
105
105
  export type WithToolView<E> = Omit<E, 'tool'> & {
@@ -1 +1 @@
1
- {"version":3,"file":"tool-view.d.ts","sourceRoot":"","sources":["../../src/contract/tool-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-view.d.ts","sourceRoot":"","sources":["../../src/contract/tool-view.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare const ALL_TRANSPORTS: readonly ['HTTP', 'MCP', 'AGENT', 'CLI'];
2
+ export type Transport = (typeof ALL_TRANSPORTS)[number];
3
+ export declare const TOOL_TRANSPORTS: readonly ["MCP", "AGENT", "CLI"];
4
+ export type ToolTransport = (typeof TOOL_TRANSPORTS)[number];
5
+ //# sourceMappingURL=transports.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transports.d.ts","sourceRoot":"","sources":["../../src/contract/transports.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,YAAI,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,CAAU,CAAC;AACvE,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AACxD,eAAO,MAAM,eAAe,kCAAkE,CAAC;AAC/F,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -1,19 +1,20 @@
1
+ import"../../index-69t14s4a.js";
1
2
  import"../../index-ct75c3at.js";
2
- import"../../index-rhzkndr5.js";
3
+ import"../../index-x4p3kw1p.js";
3
4
  import"../../index-k42ckyzx.js";
4
5
  import {
5
6
  AgentCodingToolLimitsSchema2,
6
7
  AgentCodingToolAuthorizationSchema2,
7
8
  AgentCodingToolPathAuthorizationSchema2,
8
9
  createAgentCodingTools2
9
- } from "../../index-n5sv4z0w.js";
10
+ } from "../../index-0qyrcjfs.js";
10
11
  import"../../index-2kbysk9s.js";
11
- import"../../index-f6m4c545.js";
12
- import"../../index-dr3t5n1v.js";
13
- import"../../index-6f49krb5.js";
14
- import"../../index-q968hy6y.js";
15
- import"../../index-arjmb6de.js";
16
- import"../../index-ega3yz4c.js";
12
+ import"../../index-zrdcmg6j.js";
13
+ import"../../index-nn9qvkww.js";
14
+ import"../../index-aa50qwv4.js";
15
+ import"../../index-e452syyh.js";
16
+ import"../../index-1jwsfkfz.js";
17
+ import"../../index-aqwg2dm5.js";
17
18
  export {
18
19
  AgentCodingToolAuthorizationSchema2 as AgentCodingToolAuthorizationSchema,
19
20
  AgentCodingToolLimitsSchema2 as AgentCodingToolLimitsSchema,