veryfront 0.1.48 → 0.1.49

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 (524) hide show
  1. package/esm/cli/app/components/inline-input.d.ts +1 -4
  2. package/esm/cli/app/components/inline-input.d.ts.map +1 -1
  3. package/esm/cli/app/components/inline-input.js +1 -1
  4. package/esm/cli/app/components/list-select.d.ts +0 -8
  5. package/esm/cli/app/components/list-select.d.ts.map +1 -1
  6. package/esm/cli/app/components/list-select.js +0 -13
  7. package/esm/cli/app/operations/project-creation.d.ts +2 -14
  8. package/esm/cli/app/operations/project-creation.d.ts.map +1 -1
  9. package/esm/cli/app/operations/project-creation.js +3 -68
  10. package/esm/cli/app/shell.js +1 -1
  11. package/esm/cli/app/utils.d.ts +1 -2
  12. package/esm/cli/app/utils.d.ts.map +1 -1
  13. package/esm/cli/app/utils.js +1 -17
  14. package/esm/cli/app/views/dashboard.d.ts +0 -4
  15. package/esm/cli/app/views/dashboard.d.ts.map +1 -1
  16. package/esm/cli/app/views/dashboard.js +0 -15
  17. package/esm/cli/app/views/startup.d.ts +0 -4
  18. package/esm/cli/app/views/startup.d.ts.map +1 -1
  19. package/esm/cli/app/views/startup.js +0 -7
  20. package/esm/cli/auth/login.d.ts.map +1 -1
  21. package/esm/cli/auth/login.js +1 -2
  22. package/esm/cli/auth/token-store.js +1 -1
  23. package/esm/cli/auth/utils.d.ts +2 -1
  24. package/esm/cli/auth/utils.d.ts.map +1 -1
  25. package/esm/cli/commands/generate/integration-generator.js +1 -1
  26. package/esm/cli/commands/install/types.d.ts +2 -2
  27. package/esm/cli/help/formatters.d.ts +1 -1
  28. package/esm/cli/help/formatters.d.ts.map +1 -1
  29. package/esm/cli/help/formatters.js +8 -4
  30. package/esm/cli/help/main-help.d.ts.map +1 -1
  31. package/esm/cli/help/main-help.js +2 -2
  32. package/esm/cli/mcp/server.d.ts +0 -1
  33. package/esm/cli/mcp/server.d.ts.map +1 -1
  34. package/esm/cli/mcp/server.js +2 -5
  35. package/esm/cli/mcp/tools/dev-tools.d.ts +1 -1
  36. package/esm/cli/mcp/tools/dev-tools.d.ts.map +1 -1
  37. package/esm/cli/mcp/tools/dev-tools.js +1 -2
  38. package/esm/cli/mcp/tools/scaffold-tools.d.ts +2 -2
  39. package/esm/cli/mcp/tools.d.ts +1 -2
  40. package/esm/cli/mcp/tools.d.ts.map +1 -1
  41. package/esm/cli/mcp/tools.js +1 -2
  42. package/esm/cli/shared/reserve-slug.d.ts.map +1 -1
  43. package/esm/cli/shared/reserve-slug.js +1 -3
  44. package/esm/cli/sync/ignore.d.ts +1 -1
  45. package/esm/cli/sync/ignore.d.ts.map +1 -1
  46. package/esm/cli/sync/ignore.js +22 -18
  47. package/esm/cli/ui/colors.d.ts +0 -1
  48. package/esm/cli/ui/colors.d.ts.map +1 -1
  49. package/esm/cli/ui/colors.js +0 -10
  50. package/esm/cli/ui/dot-matrix.d.ts.map +1 -1
  51. package/esm/cli/ui/dot-matrix.js +2 -5
  52. package/esm/cli/ui/tui.js +2 -3
  53. package/esm/cli/utils/index.js +1 -2
  54. package/esm/cli/utils/package-manager.d.ts.map +1 -1
  55. package/esm/cli/utils/package-manager.js +3 -4
  56. package/esm/deno.d.ts +3 -0
  57. package/esm/deno.js +22 -19
  58. package/esm/src/agent/chat-handler.d.ts.map +1 -1
  59. package/esm/src/agent/chat-handler.js +8 -23
  60. package/esm/src/agent/factory.d.ts +0 -8
  61. package/esm/src/agent/factory.d.ts.map +1 -1
  62. package/esm/src/agent/factory.js +50 -1
  63. package/esm/src/agent/index.d.ts +16 -1
  64. package/esm/src/agent/index.d.ts.map +1 -1
  65. package/esm/src/agent/index.js +16 -1
  66. package/esm/src/agent/memory/memory.d.ts +2 -2
  67. package/esm/src/agent/memory/memory.d.ts.map +1 -1
  68. package/esm/src/agent/memory/memory.js +0 -1
  69. package/esm/src/agent/react/use-chat/types.d.ts +2 -0
  70. package/esm/src/agent/react/use-chat/types.d.ts.map +1 -1
  71. package/esm/src/agent/react/use-chat/use-chat.d.ts.map +1 -1
  72. package/esm/src/agent/react/use-chat/use-chat.js +15 -9
  73. package/esm/src/agent/runtime/index.d.ts +18 -0
  74. package/esm/src/agent/runtime/index.d.ts.map +1 -1
  75. package/esm/src/agent/runtime/index.js +167 -36
  76. package/esm/src/agent/runtime/tool-helpers.d.ts +6 -1
  77. package/esm/src/agent/runtime/tool-helpers.d.ts.map +1 -1
  78. package/esm/src/agent/runtime/tool-helpers.js +10 -1
  79. package/esm/src/agent/schemas/agent.schema.d.ts +4 -4
  80. package/esm/src/agent/types.d.ts +10 -0
  81. package/esm/src/agent/types.d.ts.map +1 -1
  82. package/esm/src/ai/registry-manager.d.ts.map +1 -1
  83. package/esm/src/ai/registry-manager.js +2 -1
  84. package/esm/src/build/bundler/code-splitter/manifest-builder.d.ts +0 -2
  85. package/esm/src/build/bundler/code-splitter/manifest-builder.d.ts.map +1 -1
  86. package/esm/src/build/bundler/code-splitter/manifest-builder.js +1 -1
  87. package/esm/src/build/compiler/mdx-compiler/validator.d.ts.map +1 -1
  88. package/esm/src/build/compiler/mdx-compiler/validator.js +2 -3
  89. package/esm/src/build/compiler/mdx-to-js.d.ts +0 -2
  90. package/esm/src/build/compiler/mdx-to-js.d.ts.map +1 -1
  91. package/esm/src/build/compiler/mdx-to-js.js +0 -81
  92. package/esm/src/build/index.d.ts +0 -6
  93. package/esm/src/build/index.d.ts.map +1 -1
  94. package/esm/src/build/index.js +0 -1
  95. package/esm/src/build/production-build/build/route-collector.d.ts.map +1 -1
  96. package/esm/src/build/production-build/build/route-collector.js +2 -3
  97. package/esm/src/build/production-build/templates.d.ts +5 -9
  98. package/esm/src/build/production-build/templates.d.ts.map +1 -1
  99. package/esm/src/build/production-build/templates.js +6 -18
  100. package/esm/src/build/vendor-cache.d.ts.map +1 -1
  101. package/esm/src/build/vendor-cache.js +0 -5
  102. package/esm/src/cache/tokenizing-gateway.d.ts +0 -2
  103. package/esm/src/cache/tokenizing-gateway.d.ts.map +1 -1
  104. package/esm/src/cache/tokenizing-gateway.js +1 -3
  105. package/esm/src/chat/index.d.ts +2 -2
  106. package/esm/src/chat/index.d.ts.map +1 -1
  107. package/esm/src/chat/index.js +1 -1
  108. package/esm/src/config/define-config.d.ts.map +1 -1
  109. package/esm/src/config/define-config.js +28 -25
  110. package/esm/src/config/loader.d.ts.map +1 -1
  111. package/esm/src/config/loader.js +10 -7
  112. package/esm/src/config/schemas/config.schema.d.ts +58 -12
  113. package/esm/src/config/schemas/config.schema.d.ts.map +1 -1
  114. package/esm/src/config/schemas/config.schema.js +12 -0
  115. package/esm/src/data/data-fetcher.d.ts +1 -2
  116. package/esm/src/data/data-fetcher.d.ts.map +1 -1
  117. package/esm/src/data/data-fetcher.js +14 -15
  118. package/esm/src/data/server-data-fetcher.d.ts +0 -3
  119. package/esm/src/data/server-data-fetcher.d.ts.map +1 -1
  120. package/esm/src/data/server-data-fetcher.js +1 -8
  121. package/esm/src/data/static-data-fetcher.d.ts +1 -3
  122. package/esm/src/data/static-data-fetcher.d.ts.map +1 -1
  123. package/esm/src/data/static-data-fetcher.js +1 -3
  124. package/esm/src/discovery/discovery-engine.d.ts.map +1 -1
  125. package/esm/src/discovery/discovery-engine.js +19 -1
  126. package/esm/src/discovery/discovery-utils.d.ts +0 -4
  127. package/esm/src/discovery/discovery-utils.d.ts.map +1 -1
  128. package/esm/src/discovery/discovery-utils.js +0 -6
  129. package/esm/src/discovery/file-discovery.d.ts +3 -1
  130. package/esm/src/discovery/file-discovery.d.ts.map +1 -1
  131. package/esm/src/discovery/file-discovery.js +3 -8
  132. package/esm/src/discovery/handlers/index.d.ts +1 -0
  133. package/esm/src/discovery/handlers/index.d.ts.map +1 -1
  134. package/esm/src/discovery/handlers/index.js +1 -0
  135. package/esm/src/discovery/handlers/skill-handler.d.ts +26 -0
  136. package/esm/src/discovery/handlers/skill-handler.d.ts.map +1 -0
  137. package/esm/src/discovery/handlers/skill-handler.js +87 -0
  138. package/esm/src/discovery/handlers/task-handler.d.ts.map +1 -1
  139. package/esm/src/discovery/handlers/task-handler.js +1 -5
  140. package/esm/src/discovery/transpiler.d.ts.map +1 -1
  141. package/esm/src/discovery/transpiler.js +7 -4
  142. package/esm/src/discovery/types.d.ts +3 -0
  143. package/esm/src/discovery/types.d.ts.map +1 -1
  144. package/esm/src/embedding/resolve.d.ts.map +1 -1
  145. package/esm/src/embedding/resolve.js +1 -3
  146. package/esm/src/embedding/upload-handler.d.ts.map +1 -1
  147. package/esm/src/embedding/upload-handler.js +4 -3
  148. package/esm/src/embedding/upload-store.js +4 -4
  149. package/esm/src/errors/error-registry.d.ts +2 -1
  150. package/esm/src/errors/error-registry.d.ts.map +1 -1
  151. package/esm/src/errors/http-error.d.ts +1 -2
  152. package/esm/src/errors/http-error.d.ts.map +1 -1
  153. package/esm/src/errors/http-error.js +2 -2
  154. package/esm/src/errors/middleware/cli-error-boundary.d.ts.map +1 -1
  155. package/esm/src/errors/middleware/cli-error-boundary.js +13 -2
  156. package/esm/src/errors/middleware/wrap-unknown.d.ts +0 -7
  157. package/esm/src/errors/middleware/wrap-unknown.d.ts.map +1 -1
  158. package/esm/src/errors/middleware/wrap-unknown.js +0 -9
  159. package/esm/src/errors/veryfront-error.d.ts +0 -3
  160. package/esm/src/errors/veryfront-error.d.ts.map +1 -1
  161. package/esm/src/errors/veryfront-error.js +0 -5
  162. package/esm/src/html/schemas/html.schema.d.ts +2 -2
  163. package/esm/src/html/styles-builder/css-hash-cache.d.ts.map +1 -1
  164. package/esm/src/html/styles-builder/css-hash-cache.js +1 -2
  165. package/esm/src/html/styles-builder/plugin-loader.d.ts.map +1 -1
  166. package/esm/src/html/styles-builder/plugin-loader.js +50 -21
  167. package/esm/src/html/styles-builder/tailwind-compiler-cache.d.ts.map +1 -1
  168. package/esm/src/html/styles-builder/tailwind-compiler-cache.js +12 -4
  169. package/esm/src/html/utils.d.ts +0 -7
  170. package/esm/src/html/utils.d.ts.map +1 -1
  171. package/esm/src/html/utils.js +0 -25
  172. package/esm/src/modules/component-registry/registry.d.ts +0 -3
  173. package/esm/src/modules/component-registry/registry.d.ts.map +1 -1
  174. package/esm/src/modules/component-registry/registry.js +0 -3
  175. package/esm/src/oauth/handlers/callback-handler.d.ts +2 -0
  176. package/esm/src/oauth/handlers/callback-handler.d.ts.map +1 -1
  177. package/esm/src/oauth/handlers/callback-handler.js +10 -4
  178. package/esm/src/oauth/providers/common.d.ts.map +1 -1
  179. package/esm/src/oauth/providers/common.js +0 -23
  180. package/esm/src/observability/auto-instrument/react-instrumentation.js +2 -1
  181. package/esm/src/observability/instruments/instruments-factory.d.ts +1 -1
  182. package/esm/src/observability/instruments/instruments-factory.d.ts.map +1 -1
  183. package/esm/src/observability/instruments/instruments-factory.js +5 -4
  184. package/esm/src/observability/metrics/config.js +5 -4
  185. package/esm/src/observability/metrics/manager.js +1 -1
  186. package/esm/src/observability/tracing/span-operations.d.ts.map +1 -1
  187. package/esm/src/observability/tracing/span-operations.js +14 -8
  188. package/esm/src/platform/compat/console/node.d.ts +0 -1
  189. package/esm/src/platform/compat/console/node.d.ts.map +1 -1
  190. package/esm/src/platform/compat/console/node.js +4 -11
  191. package/esm/src/platform/compat/fs.d.ts.map +1 -1
  192. package/esm/src/platform/compat/fs.js +4 -2
  193. package/esm/src/platform/compat/opaque-deps.d.ts +4 -2
  194. package/esm/src/platform/compat/opaque-deps.d.ts.map +1 -1
  195. package/esm/src/platform/compat/opaque-deps.js +1 -1
  196. package/esm/src/platform/compat/path/basic-operations.d.ts.map +1 -1
  197. package/esm/src/platform/compat/path/basic-operations.js +8 -7
  198. package/esm/src/platform/compat/path/resolution.d.ts.map +1 -1
  199. package/esm/src/platform/compat/path/resolution.js +15 -10
  200. package/esm/src/platform/compat/path/url-conversion.d.ts.map +1 -1
  201. package/esm/src/platform/compat/path/url-conversion.js +3 -2
  202. package/esm/src/platform/compat/process.d.ts +2 -14
  203. package/esm/src/platform/compat/process.d.ts.map +1 -1
  204. package/esm/src/platform/compat/process.js +92 -70
  205. package/esm/src/provider/index.d.ts +1 -1
  206. package/esm/src/provider/index.d.ts.map +1 -1
  207. package/esm/src/provider/index.js +1 -1
  208. package/esm/src/provider/local/ai-sdk-adapter.d.ts.map +1 -1
  209. package/esm/src/provider/local/ai-sdk-adapter.js +18 -18
  210. package/esm/src/provider/local/env.d.ts.map +1 -1
  211. package/esm/src/provider/local/env.js +2 -1
  212. package/esm/src/provider/model-registry.d.ts +10 -0
  213. package/esm/src/provider/model-registry.d.ts.map +1 -1
  214. package/esm/src/provider/model-registry.js +43 -0
  215. package/esm/src/proxy/retry.d.ts +3 -3
  216. package/esm/src/proxy/retry.d.ts.map +1 -1
  217. package/esm/src/proxy/retry.js +0 -7
  218. package/esm/src/proxy/tracing.d.ts +1 -5
  219. package/esm/src/proxy/tracing.d.ts.map +1 -1
  220. package/esm/src/proxy/tracing.js +1 -7
  221. package/esm/src/react/components/ai/chat/components/code-block.js +1 -1
  222. package/esm/src/react/components/ai/chat/components/skill-badge.d.ts +12 -0
  223. package/esm/src/react/components/ai/chat/components/skill-badge.d.ts.map +1 -0
  224. package/esm/src/react/components/ai/chat/components/skill-badge.js +34 -0
  225. package/esm/src/react/components/ai/chat/components/step-indicator.js +4 -4
  226. package/esm/src/react/components/ai/chat/composition/chat-message-list.d.ts.map +1 -1
  227. package/esm/src/react/components/ai/chat/composition/chat-message-list.js +8 -2
  228. package/esm/src/react/components/ai/chat/composition/message.d.ts.map +1 -1
  229. package/esm/src/react/components/ai/chat/composition/message.js +8 -2
  230. package/esm/src/react/components/ai/chat/index.d.ts +4 -1
  231. package/esm/src/react/components/ai/chat/index.d.ts.map +1 -1
  232. package/esm/src/react/components/ai/chat/index.js +4 -3
  233. package/esm/src/react/components/ai/chat/utils/message-parts.d.ts +2 -0
  234. package/esm/src/react/components/ai/chat/utils/message-parts.d.ts.map +1 -1
  235. package/esm/src/react/components/ai/chat/utils/message-parts.js +9 -0
  236. package/esm/src/react/components/ai/chat-with-sidebar.d.ts +1 -0
  237. package/esm/src/react/components/ai/chat-with-sidebar.d.ts.map +1 -1
  238. package/esm/src/react/components/ai/chat-with-sidebar.js +1 -0
  239. package/esm/src/react/components/ai/chat.d.ts +1 -1
  240. package/esm/src/react/components/ai/chat.d.ts.map +1 -1
  241. package/esm/src/react/components/ai/chat.js +1 -1
  242. package/esm/src/rendering/cache/index.d.ts +1 -5
  243. package/esm/src/rendering/cache/index.d.ts.map +1 -1
  244. package/esm/src/rendering/cache/index.js +1 -5
  245. package/esm/src/rendering/orchestrator/pipeline.d.ts +11 -2
  246. package/esm/src/rendering/orchestrator/pipeline.d.ts.map +1 -1
  247. package/esm/src/rendering/shared/context-aware-cache.d.ts.map +1 -1
  248. package/esm/src/rendering/shared/context-aware-cache.js +0 -4
  249. package/esm/src/repositories/schemas/index.d.ts +1 -1
  250. package/esm/src/repositories/schemas/index.d.ts.map +1 -1
  251. package/esm/src/repositories/schemas/index.js +1 -1
  252. package/esm/src/repositories/schemas/repository.schema.d.ts +0 -11
  253. package/esm/src/repositories/schemas/repository.schema.d.ts.map +1 -1
  254. package/esm/src/repositories/schemas/repository.schema.js +0 -13
  255. package/esm/src/repositories/types.d.ts +1 -1
  256. package/esm/src/repositories/types.d.ts.map +1 -1
  257. package/esm/src/routing/api/module-loader/loader.d.ts.map +1 -1
  258. package/esm/src/routing/api/module-loader/loader.js +63 -7
  259. package/esm/src/routing/api/openapi/path-utils.d.ts +0 -19
  260. package/esm/src/routing/api/openapi/path-utils.d.ts.map +1 -1
  261. package/esm/src/routing/api/openapi/path-utils.js +0 -34
  262. package/esm/src/routing/api/openapi/spec-generator.d.ts.map +1 -1
  263. package/esm/src/routing/api/openapi/spec-generator.js +1 -19
  264. package/esm/src/routing/api/openapi/types.d.ts +1 -0
  265. package/esm/src/routing/api/openapi/types.d.ts.map +1 -1
  266. package/esm/src/routing/api/openapi/types.js +18 -0
  267. package/esm/src/sandbox/sandbox.d.ts +1 -0
  268. package/esm/src/sandbox/sandbox.d.ts.map +1 -1
  269. package/esm/src/sandbox/sandbox.js +7 -8
  270. package/esm/src/security/http/cors/constants.d.ts +0 -2
  271. package/esm/src/security/http/cors/constants.d.ts.map +1 -1
  272. package/esm/src/security/http/cors/constants.js +0 -2
  273. package/esm/src/security/http/response/index.d.ts +3 -4
  274. package/esm/src/security/http/response/index.d.ts.map +1 -1
  275. package/esm/src/security/http/response/index.js +2 -3
  276. package/esm/src/server/context/enriched-context.d.ts +0 -8
  277. package/esm/src/server/context/enriched-context.d.ts.map +1 -1
  278. package/esm/src/server/context/enriched-context.js +1 -12
  279. package/esm/src/server/dev-server/server.d.ts.map +1 -1
  280. package/esm/src/server/dev-server/server.js +11 -4
  281. package/esm/src/server/dev-ui/manifest.d.ts +20 -20
  282. package/esm/src/server/dev-ui/manifest.js +20 -20
  283. package/esm/src/server/handlers/dev/framework-candidates.generated.d.ts.map +1 -1
  284. package/esm/src/server/handlers/dev/framework-candidates.generated.js +426 -179
  285. package/esm/src/server/runtime-handler/index.d.ts.map +1 -1
  286. package/esm/src/server/runtime-handler/index.js +14 -24
  287. package/esm/src/server/shared/renderer/memory/pressure.d.ts +0 -7
  288. package/esm/src/server/shared/renderer/memory/pressure.d.ts.map +1 -1
  289. package/esm/src/server/shared/renderer/memory/pressure.js +1 -13
  290. package/esm/src/server/utils/domain-lookup.d.ts +0 -4
  291. package/esm/src/server/utils/domain-lookup.d.ts.map +1 -1
  292. package/esm/src/server/utils/domain-lookup.js +0 -3
  293. package/esm/src/skill/allowed-tools.d.ts +54 -0
  294. package/esm/src/skill/allowed-tools.d.ts.map +1 -0
  295. package/esm/src/skill/allowed-tools.js +87 -0
  296. package/esm/src/skill/executor.d.ts +28 -0
  297. package/esm/src/skill/executor.d.ts.map +1 -0
  298. package/esm/src/skill/executor.js +187 -0
  299. package/esm/src/skill/index.d.ts +19 -0
  300. package/esm/src/skill/index.d.ts.map +1 -0
  301. package/esm/src/skill/index.js +24 -0
  302. package/esm/src/skill/parser.d.ts +30 -0
  303. package/esm/src/skill/parser.d.ts.map +1 -0
  304. package/esm/src/skill/parser.js +162 -0
  305. package/esm/src/skill/path-safety.d.ts +22 -0
  306. package/esm/src/skill/path-safety.d.ts.map +1 -0
  307. package/esm/src/skill/path-safety.js +156 -0
  308. package/esm/src/skill/prompt-augmentation.d.ts +19 -0
  309. package/esm/src/skill/prompt-augmentation.d.ts.map +1 -0
  310. package/esm/src/skill/prompt-augmentation.js +36 -0
  311. package/esm/src/skill/registry.d.ts +25 -0
  312. package/esm/src/skill/registry.d.ts.map +1 -0
  313. package/esm/src/skill/registry.js +42 -0
  314. package/esm/src/skill/tools.d.ts +27 -0
  315. package/esm/src/skill/tools.d.ts.map +1 -0
  316. package/esm/src/skill/tools.js +149 -0
  317. package/esm/src/skill/types.d.ts +85 -0
  318. package/esm/src/skill/types.d.ts.map +1 -0
  319. package/esm/src/skill/types.js +27 -0
  320. package/esm/src/studio/bridge/bridge-bundle.generated.d.ts +1 -1
  321. package/esm/src/studio/bridge/bridge-bundle.generated.d.ts.map +1 -1
  322. package/esm/src/studio/bridge/bridge-bundle.generated.js +1 -1
  323. package/esm/src/studio/element-selector-injector.d.ts +0 -2
  324. package/esm/src/studio/element-selector-injector.d.ts.map +1 -1
  325. package/esm/src/task/runner.d.ts +6 -0
  326. package/esm/src/task/runner.d.ts.map +1 -1
  327. package/esm/src/task/runner.js +8 -8
  328. package/esm/src/tool/factory.js +31 -39
  329. package/esm/src/transforms/esm/http-cache-helpers.d.ts +0 -8
  330. package/esm/src/transforms/esm/http-cache-helpers.d.ts.map +1 -1
  331. package/esm/src/transforms/esm/http-cache-helpers.js +0 -20
  332. package/esm/src/transforms/esm/path-resolver.d.ts +0 -14
  333. package/esm/src/transforms/esm/path-resolver.d.ts.map +1 -1
  334. package/esm/src/transforms/esm/path-resolver.js +1 -92
  335. package/esm/src/transforms/esm/source-url-embed.d.ts +0 -14
  336. package/esm/src/transforms/esm/source-url-embed.d.ts.map +1 -1
  337. package/esm/src/transforms/esm/source-url-embed.js +0 -47
  338. package/esm/src/transforms/esm/transform-cache.d.ts.map +1 -1
  339. package/esm/src/transforms/esm/transform-cache.js +2 -6
  340. package/esm/src/transforms/mdx/index.d.ts +0 -1
  341. package/esm/src/transforms/mdx/index.d.ts.map +1 -1
  342. package/esm/src/transforms/mdx/index.js +0 -4
  343. package/esm/src/transforms/pipeline/context.d.ts +0 -1
  344. package/esm/src/transforms/pipeline/context.d.ts.map +1 -1
  345. package/esm/src/transforms/pipeline/context.js +0 -1
  346. package/esm/src/transforms/pipeline/index.d.ts +1 -2
  347. package/esm/src/transforms/pipeline/index.d.ts.map +1 -1
  348. package/esm/src/transforms/pipeline/index.js +0 -3
  349. package/esm/src/transforms/pipeline/stages/ssr-http-cache.d.ts.map +1 -1
  350. package/esm/src/transforms/pipeline/stages/ssr-http-cache.js +0 -1
  351. package/esm/src/types/entities/getEntityInfo.js +1 -1
  352. package/esm/src/types/index.d.ts +2 -13
  353. package/esm/src/types/index.d.ts.map +1 -1
  354. package/esm/src/types/server.d.ts +2 -1
  355. package/esm/src/types/server.d.ts.map +1 -1
  356. package/esm/src/utils/cache-file-ops.d.ts +1 -1
  357. package/esm/src/utils/cache-file-ops.d.ts.map +1 -1
  358. package/esm/src/utils/cache-file-ops.js +5 -6
  359. package/esm/src/utils/lru-wrapper.d.ts.map +1 -1
  360. package/esm/src/utils/lru-wrapper.js +2 -4
  361. package/esm/src/workflow/claude-code/event-publisher.d.ts +0 -4
  362. package/esm/src/workflow/claude-code/event-publisher.d.ts.map +1 -1
  363. package/esm/src/workflow/claude-code/event-publisher.js +2 -6
  364. package/esm/src/workflow/executor/workflow-executor.d.ts.map +1 -1
  365. package/esm/src/workflow/executor/workflow-executor.js +6 -1
  366. package/esm/src/workflow/react/use-workflow-list.d.ts.map +1 -1
  367. package/esm/src/workflow/react/use-workflow-list.js +2 -1
  368. package/esm/src/workflow/schemas/workflow.schema.d.ts +8 -8
  369. package/package.json +1 -2
  370. package/src/cli/app/components/inline-input.ts +0 -5
  371. package/src/cli/app/components/list-select.ts +0 -21
  372. package/src/cli/app/operations/project-creation.ts +4 -109
  373. package/src/cli/app/shell.ts +1 -1
  374. package/src/cli/app/utils.ts +0 -22
  375. package/src/cli/app/views/dashboard.ts +0 -17
  376. package/src/cli/app/views/startup.ts +0 -13
  377. package/src/cli/auth/login.ts +1 -2
  378. package/src/cli/auth/token-store.ts +1 -1
  379. package/src/cli/auth/utils.ts +2 -1
  380. package/src/cli/commands/generate/integration-generator.ts +1 -1
  381. package/src/cli/help/formatters.ts +11 -4
  382. package/src/cli/help/main-help.ts +2 -3
  383. package/src/cli/mcp/server.ts +2 -5
  384. package/src/cli/mcp/tools/dev-tools.ts +1 -2
  385. package/src/cli/mcp/tools.ts +8 -2
  386. package/src/cli/shared/reserve-slug.ts +1 -4
  387. package/src/cli/sync/ignore.ts +26 -21
  388. package/src/cli/ui/colors.ts +0 -12
  389. package/src/cli/ui/dot-matrix.ts +3 -6
  390. package/src/cli/ui/tui.ts +3 -3
  391. package/src/cli/utils/index.ts +1 -1
  392. package/src/cli/utils/package-manager.ts +3 -4
  393. package/src/deno.js +22 -19
  394. package/src/src/agent/chat-handler.ts +8 -23
  395. package/src/src/agent/factory.ts +58 -9
  396. package/src/src/agent/index.ts +16 -1
  397. package/src/src/agent/memory/memory.ts +0 -9
  398. package/src/src/agent/react/use-chat/types.ts +2 -0
  399. package/src/src/agent/react/use-chat/use-chat.ts +15 -9
  400. package/src/src/agent/runtime/index.ts +213 -35
  401. package/src/src/agent/runtime/tool-helpers.ts +9 -0
  402. package/src/src/agent/types.ts +10 -0
  403. package/src/src/ai/registry-manager.ts +2 -1
  404. package/src/src/build/bundler/code-splitter/manifest-builder.ts +1 -1
  405. package/src/src/build/compiler/mdx-compiler/validator.ts +3 -7
  406. package/src/src/build/compiler/mdx-to-js.ts +0 -101
  407. package/src/src/build/index.ts +0 -8
  408. package/src/src/build/production-build/build/route-collector.ts +2 -4
  409. package/src/src/build/production-build/templates.ts +9 -18
  410. package/src/src/build/vendor-cache.ts +0 -6
  411. package/src/src/cache/tokenizing-gateway.ts +1 -9
  412. package/src/src/chat/index.ts +3 -0
  413. package/src/src/config/define-config.ts +30 -29
  414. package/src/src/config/loader.ts +10 -9
  415. package/src/src/config/schemas/config.schema.ts +12 -0
  416. package/src/src/data/data-fetcher.ts +15 -21
  417. package/src/src/data/server-data-fetcher.ts +1 -8
  418. package/src/src/data/static-data-fetcher.ts +1 -6
  419. package/src/src/discovery/discovery-engine.ts +27 -0
  420. package/src/src/discovery/discovery-utils.ts +0 -7
  421. package/src/src/discovery/file-discovery.ts +3 -9
  422. package/src/src/discovery/handlers/index.ts +1 -0
  423. package/src/src/discovery/handlers/skill-handler.ts +123 -0
  424. package/src/src/discovery/handlers/task-handler.ts +1 -5
  425. package/src/src/discovery/transpiler.ts +7 -4
  426. package/src/src/discovery/types.ts +3 -0
  427. package/src/src/embedding/resolve.ts +1 -3
  428. package/src/src/embedding/upload-handler.ts +7 -3
  429. package/src/src/embedding/upload-store.ts +4 -4
  430. package/src/src/errors/error-registry.ts +2 -2
  431. package/src/src/errors/http-error.ts +7 -3
  432. package/src/src/errors/middleware/cli-error-boundary.ts +28 -2
  433. package/src/src/errors/middleware/wrap-unknown.ts +0 -10
  434. package/src/src/errors/veryfront-error.ts +0 -9
  435. package/src/src/html/styles-builder/css-hash-cache.ts +5 -2
  436. package/src/src/html/styles-builder/plugin-loader.ts +58 -21
  437. package/src/src/html/styles-builder/tailwind-compiler-cache.ts +11 -4
  438. package/src/src/html/utils.ts +0 -33
  439. package/src/src/modules/component-registry/registry.ts +0 -3
  440. package/src/src/modules/server/websocket-handler.ts +1 -1
  441. package/src/src/oauth/handlers/callback-handler.ts +17 -5
  442. package/src/src/oauth/providers/base.ts +3 -3
  443. package/src/src/oauth/providers/common.ts +0 -23
  444. package/src/src/observability/auto-instrument/react-instrumentation.ts +2 -2
  445. package/src/src/observability/instruments/instruments-factory.ts +6 -6
  446. package/src/src/observability/metrics/config.ts +5 -5
  447. package/src/src/observability/metrics/manager.ts +1 -1
  448. package/src/src/observability/tracing/span-operations.ts +14 -9
  449. package/src/src/platform/compat/console/node.ts +4 -14
  450. package/src/src/platform/compat/fs.ts +14 -3
  451. package/src/src/platform/compat/opaque-deps.ts +10 -5
  452. package/src/src/platform/compat/path/basic-operations.ts +9 -7
  453. package/src/src/platform/compat/path/resolution.ts +15 -8
  454. package/src/src/platform/compat/path/url-conversion.ts +10 -6
  455. package/src/src/platform/compat/process.ts +133 -76
  456. package/src/src/provider/index.ts +1 -0
  457. package/src/src/provider/local/ai-sdk-adapter.ts +40 -37
  458. package/src/src/provider/local/env.ts +4 -1
  459. package/src/src/provider/model-registry.ts +47 -0
  460. package/src/src/proxy/retry.ts +0 -9
  461. package/src/src/proxy/tracing.ts +1 -9
  462. package/src/src/react/components/ai/chat/components/code-block.tsx +1 -1
  463. package/src/src/react/components/ai/chat/components/skill-badge.tsx +51 -0
  464. package/src/src/react/components/ai/chat/components/step-indicator.tsx +4 -4
  465. package/src/src/react/components/ai/chat/composition/chat-message-list.tsx +9 -2
  466. package/src/src/react/components/ai/chat/composition/message.tsx +9 -2
  467. package/src/src/react/components/ai/chat/index.tsx +6 -1
  468. package/src/src/react/components/ai/chat/utils/message-parts.ts +11 -0
  469. package/src/src/react/components/ai/chat-with-sidebar.tsx +2 -0
  470. package/src/src/react/components/ai/chat.tsx +3 -0
  471. package/src/src/rendering/cache/index.ts +12 -5
  472. package/src/src/rendering/orchestrator/pipeline.ts +12 -2
  473. package/src/src/rendering/renderer.ts +1 -1
  474. package/src/src/rendering/shared/context-aware-cache.ts +0 -5
  475. package/src/src/repositories/schemas/index.ts +0 -2
  476. package/src/src/repositories/schemas/repository.schema.ts +0 -15
  477. package/src/src/repositories/types.ts +1 -6
  478. package/src/src/routing/api/module-loader/loader.ts +88 -3
  479. package/src/src/routing/api/openapi/path-utils.ts +0 -39
  480. package/src/src/routing/api/openapi/spec-generator.ts +1 -20
  481. package/src/src/routing/api/openapi/types.ts +20 -0
  482. package/src/src/sandbox/sandbox.ts +8 -8
  483. package/src/src/security/http/cors/constants.ts +0 -4
  484. package/src/src/security/http/response/index.ts +3 -9
  485. package/src/src/server/context/enriched-context.ts +1 -19
  486. package/src/src/server/dev-server/server.ts +11 -4
  487. package/src/src/server/dev-ui/manifest.js +20 -20
  488. package/src/src/server/handlers/dev/framework-candidates.generated.ts +426 -179
  489. package/src/src/server/runtime-handler/index.ts +17 -28
  490. package/src/src/server/shared/renderer/memory/pressure.ts +2 -15
  491. package/src/src/server/utils/domain-lookup.ts +0 -4
  492. package/src/src/skill/allowed-tools.ts +107 -0
  493. package/src/src/skill/executor.ts +215 -0
  494. package/src/src/skill/index.ts +60 -0
  495. package/src/src/skill/parser.ts +214 -0
  496. package/src/src/skill/path-safety.ts +203 -0
  497. package/src/src/skill/prompt-augmentation.ts +48 -0
  498. package/src/src/skill/registry.ts +51 -0
  499. package/src/src/skill/tools.ts +197 -0
  500. package/src/src/skill/types.ts +107 -0
  501. package/src/src/studio/bridge/bridge-bundle.generated.ts +1 -1
  502. package/src/src/studio/element-selector-injector.ts +0 -2
  503. package/src/src/task/runner.ts +10 -8
  504. package/src/src/tool/factory.ts +54 -54
  505. package/src/src/transforms/esm/http-cache-helpers.ts +0 -20
  506. package/src/src/transforms/esm/path-resolver.ts +1 -140
  507. package/src/src/transforms/esm/source-url-embed.ts +0 -53
  508. package/src/src/transforms/esm/transform-cache.ts +3 -7
  509. package/src/src/transforms/mdx/index.ts +0 -5
  510. package/src/src/transforms/pipeline/context.ts +0 -2
  511. package/src/src/transforms/pipeline/index.ts +0 -4
  512. package/src/src/transforms/pipeline/stages/ssr-http-cache.ts +0 -1
  513. package/src/src/types/entities/getEntityInfo.ts +1 -1
  514. package/src/src/types/index.ts +1 -20
  515. package/src/src/types/server.ts +1 -1
  516. package/src/src/utils/cache-file-ops.ts +5 -5
  517. package/src/src/utils/lru-wrapper.ts +2 -8
  518. package/src/src/workflow/claude-code/event-publisher.ts +13 -4
  519. package/src/src/workflow/executor/workflow-executor.ts +7 -2
  520. package/src/src/workflow/react/use-workflow-list.ts +3 -2
  521. package/esm/src/transforms/mdx/parser.d.ts +0 -4
  522. package/esm/src/transforms/mdx/parser.d.ts.map +0 -1
  523. package/esm/src/transforms/mdx/parser.js +0 -49
  524. package/src/src/transforms/mdx/parser.ts +0 -65
@@ -10,7 +10,6 @@ export const githubConfig: OAuthServiceConfig = {
10
10
  clientSecretEnvVar: "GITHUB_CLIENT_SECRET",
11
11
  apiBaseUrl: "https://api.github.com",
12
12
  defaultScopes: ["repo", "user"],
13
- additionalAuthParams: {},
14
13
  };
15
14
 
16
15
  export const slackConfig: OAuthServiceConfig = {
@@ -23,7 +22,6 @@ export const slackConfig: OAuthServiceConfig = {
23
22
  clientSecretEnvVar: "SLACK_CLIENT_SECRET",
24
23
  apiBaseUrl: "https://slack.com/api",
25
24
  defaultScopes: ["channels:read", "chat:write", "users:read"],
26
- additionalAuthParams: {},
27
25
  };
28
26
 
29
27
  export const notionConfig: OAuthServiceConfig = {
@@ -52,7 +50,6 @@ export const figmaConfig: OAuthServiceConfig = {
52
50
  clientSecretEnvVar: "FIGMA_CLIENT_SECRET",
53
51
  apiBaseUrl: "https://api.figma.com/v1",
54
52
  defaultScopes: ["file_read"],
55
- additionalAuthParams: {},
56
53
  };
57
54
 
58
55
  export const discordConfig: OAuthServiceConfig = {
@@ -65,7 +62,6 @@ export const discordConfig: OAuthServiceConfig = {
65
62
  clientSecretEnvVar: "DISCORD_CLIENT_SECRET",
66
63
  apiBaseUrl: "https://discord.com/api/v10",
67
64
  defaultScopes: ["identify", "guilds"],
68
- additionalAuthParams: {},
69
65
  };
70
66
 
71
67
  export const linearConfig: OAuthServiceConfig = {
@@ -78,7 +74,6 @@ export const linearConfig: OAuthServiceConfig = {
78
74
  clientSecretEnvVar: "LINEAR_CLIENT_SECRET",
79
75
  apiBaseUrl: "https://api.linear.app",
80
76
  defaultScopes: ["read", "write"],
81
- additionalAuthParams: {},
82
77
  };
83
78
 
84
79
  export const gitlabConfig: OAuthServiceConfig = {
@@ -91,7 +86,6 @@ export const gitlabConfig: OAuthServiceConfig = {
91
86
  clientSecretEnvVar: "GITLAB_CLIENT_SECRET",
92
87
  apiBaseUrl: "https://gitlab.com/api/v4",
93
88
  defaultScopes: ["read_user", "api"],
94
- additionalAuthParams: {},
95
89
  };
96
90
 
97
91
  export const airtableConfig: OAuthServiceConfig = {
@@ -105,7 +99,6 @@ export const airtableConfig: OAuthServiceConfig = {
105
99
  apiBaseUrl: "https://api.airtable.com/v0",
106
100
  defaultScopes: ["data.records:read", "data.records:write", "schema.bases:read"],
107
101
  useBasicAuth: true,
108
- additionalAuthParams: {},
109
102
  };
110
103
 
111
104
  export const dropboxConfig: OAuthServiceConfig = {
@@ -133,7 +126,6 @@ export const hubspotConfig: OAuthServiceConfig = {
133
126
  clientSecretEnvVar: "HUBSPOT_CLIENT_SECRET",
134
127
  apiBaseUrl: "https://api.hubapi.com",
135
128
  defaultScopes: ["crm.objects.contacts.read", "crm.objects.contacts.write"],
136
- additionalAuthParams: {},
137
129
  };
138
130
 
139
131
  export const salesforceConfig: OAuthServiceConfig = {
@@ -146,7 +138,6 @@ export const salesforceConfig: OAuthServiceConfig = {
146
138
  clientSecretEnvVar: "SALESFORCE_CLIENT_SECRET",
147
139
  apiBaseUrl: "https://login.salesforce.com/services/data/v59.0",
148
140
  defaultScopes: ["api", "refresh_token"],
149
- additionalAuthParams: {},
150
141
  };
151
142
 
152
143
  export const twitterConfig: OAuthServiceConfig = {
@@ -160,7 +151,6 @@ export const twitterConfig: OAuthServiceConfig = {
160
151
  apiBaseUrl: "https://api.twitter.com/2",
161
152
  defaultScopes: ["tweet.read", "users.read", "offline.access"],
162
153
  useBasicAuth: true,
163
- additionalAuthParams: {},
164
154
  };
165
155
 
166
156
  export const asanaConfig: OAuthServiceConfig = {
@@ -173,7 +163,6 @@ export const asanaConfig: OAuthServiceConfig = {
173
163
  clientSecretEnvVar: "ASANA_CLIENT_SECRET",
174
164
  apiBaseUrl: "https://app.asana.com/api/1.0",
175
165
  defaultScopes: ["default"],
176
- additionalAuthParams: {},
177
166
  };
178
167
 
179
168
  export const mondayConfig: OAuthServiceConfig = {
@@ -186,7 +175,6 @@ export const mondayConfig: OAuthServiceConfig = {
186
175
  clientSecretEnvVar: "MONDAY_CLIENT_SECRET",
187
176
  apiBaseUrl: "https://api.monday.com/v2",
188
177
  defaultScopes: ["me:read", "boards:read", "boards:write"],
189
- additionalAuthParams: {},
190
178
  };
191
179
 
192
180
  export const zoomConfig: OAuthServiceConfig = {
@@ -200,7 +188,6 @@ export const zoomConfig: OAuthServiceConfig = {
200
188
  apiBaseUrl: "https://api.zoom.us/v2",
201
189
  defaultScopes: ["meeting:read", "meeting:write", "user:read"],
202
190
  useBasicAuth: true,
203
- additionalAuthParams: {},
204
191
  };
205
192
 
206
193
  export const intercomConfig: OAuthServiceConfig = {
@@ -213,7 +200,6 @@ export const intercomConfig: OAuthServiceConfig = {
213
200
  clientSecretEnvVar: "INTERCOM_CLIENT_SECRET",
214
201
  apiBaseUrl: "https://api.intercom.io",
215
202
  defaultScopes: [],
216
- additionalAuthParams: {},
217
203
  };
218
204
 
219
205
  export const freshdeskConfig: OAuthServiceConfig = {
@@ -226,7 +212,6 @@ export const freshdeskConfig: OAuthServiceConfig = {
226
212
  clientSecretEnvVar: "FRESHDESK_CLIENT_SECRET",
227
213
  apiBaseUrl: "https://domain.freshdesk.com/api/v2",
228
214
  defaultScopes: ["freshdesk"],
229
- additionalAuthParams: {},
230
215
  };
231
216
 
232
217
  export const mailchimpConfig: OAuthServiceConfig = {
@@ -239,7 +224,6 @@ export const mailchimpConfig: OAuthServiceConfig = {
239
224
  clientSecretEnvVar: "MAILCHIMP_CLIENT_SECRET",
240
225
  apiBaseUrl: "https://server.api.mailchimp.com/3.0",
241
226
  defaultScopes: [],
242
- additionalAuthParams: {},
243
227
  };
244
228
 
245
229
  export const shopifyConfig: OAuthServiceConfig = {
@@ -252,7 +236,6 @@ export const shopifyConfig: OAuthServiceConfig = {
252
236
  clientSecretEnvVar: "SHOPIFY_CLIENT_SECRET",
253
237
  apiBaseUrl: "https://shop.myshopify.com/admin/api/2024-01",
254
238
  defaultScopes: ["read_products", "write_products", "read_orders"],
255
- additionalAuthParams: {},
256
239
  };
257
240
 
258
241
  export const quickbooksConfig: OAuthServiceConfig = {
@@ -265,7 +248,6 @@ export const quickbooksConfig: OAuthServiceConfig = {
265
248
  clientSecretEnvVar: "QUICKBOOKS_CLIENT_SECRET",
266
249
  apiBaseUrl: "https://quickbooks.api.intuit.com/v3",
267
250
  defaultScopes: ["com.intuit.quickbooks.accounting"],
268
- additionalAuthParams: {},
269
251
  };
270
252
 
271
253
  export const xeroConfig: OAuthServiceConfig = {
@@ -284,7 +266,6 @@ export const xeroConfig: OAuthServiceConfig = {
284
266
  "accounting.transactions",
285
267
  "offline_access",
286
268
  ],
287
- additionalAuthParams: {},
288
269
  };
289
270
 
290
271
  export const boxConfig: OAuthServiceConfig = {
@@ -297,7 +278,6 @@ export const boxConfig: OAuthServiceConfig = {
297
278
  clientSecretEnvVar: "BOX_CLIENT_SECRET",
298
279
  apiBaseUrl: "https://api.box.com/2.0",
299
280
  defaultScopes: [],
300
- additionalAuthParams: {},
301
281
  };
302
282
 
303
283
  export const webexConfig: OAuthServiceConfig = {
@@ -310,7 +290,6 @@ export const webexConfig: OAuthServiceConfig = {
310
290
  clientSecretEnvVar: "WEBEX_CLIENT_SECRET",
311
291
  apiBaseUrl: "https://webexapis.com/v1",
312
292
  defaultScopes: ["spark:all", "spark:kms"],
313
- additionalAuthParams: {},
314
293
  };
315
294
 
316
295
  export const trelloConfig: OAuthServiceConfig = {
@@ -338,7 +317,6 @@ export const clickupConfig: OAuthServiceConfig = {
338
317
  clientSecretEnvVar: "CLICKUP_CLIENT_SECRET",
339
318
  apiBaseUrl: "https://api.clickup.com/api/v2",
340
319
  defaultScopes: [],
341
- additionalAuthParams: {},
342
320
  };
343
321
 
344
322
  export const pipedriveConfig: OAuthServiceConfig = {
@@ -351,7 +329,6 @@ export const pipedriveConfig: OAuthServiceConfig = {
351
329
  clientSecretEnvVar: "PIPEDRIVE_CLIENT_SECRET",
352
330
  apiBaseUrl: "https://api.pipedrive.com/v1",
353
331
  defaultScopes: [],
354
- additionalAuthParams: {},
355
332
  };
356
333
 
357
334
  export const commonServices = {
@@ -1,5 +1,5 @@
1
1
  import * as dntShim from "../../../_dnt.shims.js";
2
- import type { Span } from "@opentelemetry/api";
2
+ import { type Span, SpanStatusCode } from "@opentelemetry/api";
3
3
  import { endSpan, setSpanAttributes, SpanNames, startSpan, withSpan } from "../tracing/index.js";
4
4
  import { recordRenderError } from "../metrics/index.js";
5
5
 
@@ -48,7 +48,7 @@ function handleRenderError(span: Span | null, error: unknown, componentName: str
48
48
  if (!span) return;
49
49
 
50
50
  span.recordException(error as Error);
51
- span.setStatus({ code: 2, message: String(error) }); // 2 = ERROR
51
+ span.setStatus({ code: SpanStatusCode.ERROR, message: String(error) });
52
52
  }
53
53
 
54
54
  function recordRenderDuration(span: Span | null, startTime: number): void {
@@ -16,8 +16,8 @@ export function initializeInstruments(
16
16
  meter: Meter,
17
17
  config: MetricsConfig,
18
18
  runtimeState: RuntimeState,
19
- ): Promise<MetricsInstruments> {
20
- const instruments: MetricsInstruments = {
19
+ ): MetricsInstruments {
20
+ const emptyInstruments: MetricsInstruments = {
21
21
  httpRequestCounter: null,
22
22
  httpRequestDuration: null,
23
23
  httpActiveRequests: null,
@@ -53,7 +53,8 @@ export function initializeInstruments(
53
53
  };
54
54
 
55
55
  try {
56
- Object.assign(instruments, {
56
+ return {
57
+ ...emptyInstruments,
57
58
  ...createHttpInstruments(meter, config),
58
59
  ...createCacheInstruments(meter, config, runtimeState),
59
60
  ...createRenderInstruments(meter, config),
@@ -62,10 +63,9 @@ export function initializeInstruments(
62
63
  ...createDataInstruments(meter, config),
63
64
  ...createMemoryInstruments(meter, config),
64
65
  ...createErrorInstruments(meter, config),
65
- });
66
+ };
66
67
  } catch (error) {
67
68
  logger.warn("Failed to initialize metric instruments", error);
69
+ return emptyInstruments;
68
70
  }
69
-
70
- return Promise.resolve(instruments);
71
71
  }
@@ -14,14 +14,14 @@ export const DEFAULT_CONFIG: MetricsConfig = {
14
14
  };
15
15
 
16
16
  function getEnvVar(env: unknown, key: string): string | undefined {
17
- const envObj = env as Record<string, unknown> | null | undefined;
17
+ if (env == null || typeof env !== "object") return undefined;
18
18
 
19
- const getter = envObj?.get;
20
- if (typeof getter === "function") {
21
- return getter.call(envObj, key) as string | undefined;
19
+ const envObj = env as Record<string, unknown>;
20
+ if (typeof envObj.get === "function") {
21
+ return envObj.get(key) as string | undefined;
22
22
  }
23
23
 
24
- const value = envObj?.[key];
24
+ const value = envObj[key];
25
25
  return typeof value === "string" ? value : undefined;
26
26
  }
27
27
 
@@ -82,7 +82,7 @@ export class MetricsManager {
82
82
  this.api = await import("@opentelemetry/api");
83
83
  this.meter = this.api.metrics.getMeter(finalConfig.prefix, VERSION);
84
84
 
85
- this.instruments = await initializeInstruments(this.meter, finalConfig, this.runtimeState);
85
+ this.instruments = initializeInstruments(this.meter, finalConfig, this.runtimeState);
86
86
  this.recorder.instruments = this.instruments;
87
87
 
88
88
  logger.info("OpenTelemetry metrics initialized", {
@@ -84,14 +84,19 @@ export class SpanOperations {
84
84
  private mapSpanKind(kind?: SpanOptions["kind"]): SpanKind {
85
85
  if (!kind) return this.api.SpanKind.INTERNAL;
86
86
 
87
- const kindMap: Record<string, SpanKind> = {
88
- internal: this.api.SpanKind.INTERNAL,
89
- server: this.api.SpanKind.SERVER,
90
- client: this.api.SpanKind.CLIENT,
91
- producer: this.api.SpanKind.PRODUCER,
92
- consumer: this.api.SpanKind.CONSUMER,
93
- };
94
-
95
- return kindMap[kind.toLowerCase()] ?? this.api.SpanKind.INTERNAL;
87
+ switch (kind) {
88
+ case "internal":
89
+ return this.api.SpanKind.INTERNAL;
90
+ case "server":
91
+ return this.api.SpanKind.SERVER;
92
+ case "client":
93
+ return this.api.SpanKind.CLIENT;
94
+ case "producer":
95
+ return this.api.SpanKind.PRODUCER;
96
+ case "consumer":
97
+ return this.api.SpanKind.CONSUMER;
98
+ default:
99
+ return this.api.SpanKind.INTERNAL;
100
+ }
96
101
  }
97
102
  }
@@ -17,16 +17,10 @@ type PicoColors = {
17
17
  reset: (s: string) => string;
18
18
  };
19
19
 
20
- let pc: PicoColors | null = null;
21
-
22
- async function ensurePc(): Promise<PicoColors> {
23
- if (pc) return pc;
24
-
25
- const mod = await import("picocolors");
26
- pc = mod.default as PicoColors;
27
-
28
- return pc;
29
- }
20
+ // NOTE: pc is null because lazy initialization was removed as dead code.
21
+ // Colors on Node.js currently fall through to identity (no-op).
22
+ // The console/index.ts fallback colors and ANSI module handle the actual coloring.
23
+ const pc: PicoColors | null = null;
30
24
 
31
25
  function lazyColor(fn: keyof PicoColors): (s: string) => string {
32
26
  return (s: string) => pc?.[fn]?.(s) ?? s;
@@ -65,7 +59,3 @@ export const {
65
59
  strikethrough,
66
60
  reset,
67
61
  } = colors;
68
-
69
- export async function initColors(): Promise<void> {
70
- await ensurePc();
71
- }
@@ -310,12 +310,22 @@ export async function symlink(target: string, path: string): Promise<void> {
310
310
  await fs.symlink(target, path);
311
311
  }
312
312
 
313
+ type DenoGlobal = typeof dntShim.dntGlobalThis & {
314
+ Deno?: {
315
+ errors?: {
316
+ NotFound?: new (...args: unknown[]) => Error;
317
+ AlreadyExists?: new (...args: unknown[]) => Error;
318
+ };
319
+ };
320
+ };
321
+
313
322
  export function isNotFoundError(error: unknown): boolean {
314
- if (isDeno && error instanceof (dntShim.dntGlobalThis as any).Deno.errors.NotFound) return true;
323
+ const NotFound = (dntShim.dntGlobalThis as DenoGlobal).Deno?.errors?.NotFound;
324
+ if (isDeno && NotFound && error instanceof NotFound) return true;
315
325
  if ((error as NodeJS.ErrnoException)?.code === "ENOENT") return true;
316
326
  if (
317
327
  error instanceof Error && error.name === "VeryfrontError" &&
318
- (error as any).slug === "file-not-found"
328
+ (error as { slug?: string }).slug === "file-not-found"
319
329
  ) {
320
330
  return true;
321
331
  }
@@ -323,6 +333,7 @@ export function isNotFoundError(error: unknown): boolean {
323
333
  }
324
334
 
325
335
  export function isAlreadyExistsError(error: unknown): boolean {
326
- if (isDeno && error instanceof (dntShim.dntGlobalThis as any).Deno.errors.AlreadyExists) return true;
336
+ const AlreadyExists = (dntShim.dntGlobalThis as DenoGlobal).Deno?.errors?.AlreadyExists;
337
+ if (isDeno && AlreadyExists && error instanceof AlreadyExists) return true;
327
338
  return (error as NodeJS.ErrnoException)?.code === "EEXIST";
328
339
  }
@@ -22,13 +22,16 @@ function resolve(pkg: string, version: string): string {
22
22
  return isDeno ? `npm:${pkg}@${version}` : pkg;
23
23
  }
24
24
 
25
+ // deno-lint-ignore no-explicit-any -- Opaque deps have unknown shapes; callers cast at call site
26
+ type OpaqueModule = any;
27
+
25
28
  /** Lazily import `@huggingface/transformers` (+ onnxruntime, ~500MB). */
26
- export function importTransformers(): Promise<any> {
29
+ export function importTransformers(): Promise<OpaqueModule> {
27
30
  return dynamicImport(resolve("@huggingface/transformers", "3.4.2"));
28
31
  }
29
32
 
30
33
  /** Lazily import `@anthropic-ai/claude-agent-sdk` (~69MB). */
31
- export function importClaudeAgentSDK(): Promise<any> {
34
+ export function importClaudeAgentSDK(): Promise<OpaqueModule> {
32
35
  return dynamicImport(resolve("@anthropic-ai/claude-agent-sdk", "0.2.37"));
33
36
  }
34
37
 
@@ -49,9 +52,11 @@ export async function importKreuzberg(): Promise<{
49
52
  }> {
50
53
  if (isDeno) {
51
54
  // Regular import — visible to deno compile, resolved via deno.json import map
52
- const mod = await import("@kreuzberg/wasm");
53
- await (mod as any).initWasm();
54
- return mod as any;
55
+ const mod = await import("@kreuzberg/wasm") as unknown as
56
+ & { initWasm?: () => Promise<void> }
57
+ & { extractBytes: (data: Uint8Array, mimeType: string) => Promise<{ content: string }> };
58
+ await mod.initWasm?.();
59
+ return mod;
55
60
  }
56
61
  // Opaque import — resolved from node_modules at runtime
57
62
  return dynamicImport("@kreuzberg/node");
@@ -1,7 +1,11 @@
1
1
  import { hasNodePath, isDeno, nodePath } from "./runtime.js";
2
2
 
3
- function useNodePath(): boolean {
4
- return !isDeno && hasNodePath;
3
+ function hasWindowsLikePath(path: string): boolean {
4
+ return path.includes("\\") || /^[A-Za-z]:/.test(path) || path.startsWith("\\\\");
5
+ }
6
+
7
+ function useNodePath(paths: string[]): boolean {
8
+ return !isDeno && hasNodePath && !paths.some(hasWindowsLikePath);
5
9
  }
6
10
 
7
11
  /** Normalize backslashes to forward slashes (for Deno on Windows). */
@@ -10,8 +14,6 @@ function normSep(p: string): string {
10
14
  }
11
15
 
12
16
  export function join(...paths: string[]): string {
13
- if (useNodePath()) return nodePath!.join(...paths);
14
-
15
17
  const joined = paths
16
18
  .map(normSep)
17
19
  .filter((p) => p.length > 0)
@@ -23,7 +25,7 @@ export function join(...paths: string[]): string {
23
25
  }
24
26
 
25
27
  export function dirname(path: string): string {
26
- if (useNodePath()) return nodePath!.dirname(path);
28
+ if (useNodePath([path])) return nodePath!.dirname(path);
27
29
 
28
30
  const p = normSep(path);
29
31
  const lastSlash = p.lastIndexOf("/");
@@ -33,7 +35,7 @@ export function dirname(path: string): string {
33
35
  }
34
36
 
35
37
  export function basename(path: string, ext?: string): string {
36
- if (useNodePath()) {
38
+ if (useNodePath([path])) {
37
39
  // Only pass ext if defined - Bun is strict about this parameter
38
40
  return ext === undefined ? nodePath!.basename(path) : nodePath!.basename(path, ext);
39
41
  }
@@ -52,7 +54,7 @@ export function basename(path: string, ext?: string): string {
52
54
  }
53
55
 
54
56
  export function extname(path: string): string {
55
- if (useNodePath()) return nodePath!.extname(path);
57
+ if (useNodePath([path])) return nodePath!.extname(path);
56
58
 
57
59
  const base = basename(path);
58
60
  const lastDot = base.lastIndexOf(".");
@@ -1,8 +1,12 @@
1
1
  import * as dntShim from "../../../../_dnt.shims.js";
2
2
  import { hasNodePath, isDeno, nodePath } from "./runtime.js";
3
3
 
4
- function useNodePath(): boolean {
5
- return !isDeno && hasNodePath;
4
+ function hasWindowsLikePath(path: string): boolean {
5
+ return path.includes("\\") || /^[A-Za-z]:/.test(path) || path.startsWith("\\\\");
6
+ }
7
+
8
+ function useNodePath(paths: string[]): boolean {
9
+ return !isDeno && hasNodePath && !paths.some(hasWindowsLikePath);
6
10
  }
7
11
 
8
12
  /** Normalize backslashes to forward slashes (for Deno on Windows). */
@@ -14,9 +18,9 @@ function normSep(p: string): string {
14
18
  const DRIVE_LETTER = /^[A-Za-z]:\//;
15
19
 
16
20
  export function resolve(...paths: string[]): string {
17
- if (useNodePath()) return nodePath!.resolve(...paths);
21
+ if (useNodePath(paths)) return nodePath!.resolve(...paths);
18
22
 
19
- let resolvedPath = normSep(dntShim.dntGlobalThis.Deno?.cwd() ?? "/");
23
+ let resolvedPath = normSep(dntShim.dntGlobalThis.Deno?.cwd?.() ?? "/");
20
24
 
21
25
  for (const rawPath of paths) {
22
26
  if (!rawPath) continue;
@@ -53,15 +57,18 @@ export function resolve(...paths: string[]): string {
53
57
  }
54
58
 
55
59
  export function isAbsolute(path: string): boolean {
56
- if (useNodePath()) return nodePath!.isAbsolute(path);
57
- // Deno fallback: Unix, Windows drive letters, and UNC paths
60
+ if (useNodePath([path]) && nodePath!.isAbsolute(path)) return true;
61
+ // Cross-platform fallback: Unix, Windows drive letters, and UNC paths
58
62
  if (path.startsWith("/")) return true;
59
63
  if (/^[A-Za-z]:[/\\]/.test(path)) return true;
60
64
  return /^\\\\[^\\]+\\[^\\]+/.test(path);
61
65
  }
62
66
 
63
67
  export function relative(from: string, to: string): string {
64
- if (useNodePath()) return nodePath!.relative(from, to);
68
+ if (useNodePath([from, to])) {
69
+ const relativePath = nodePath!.relative(from, to);
70
+ return relativePath || ".";
71
+ }
65
72
 
66
73
  const resolvedFrom = resolve(from);
67
74
  const resolvedTo = resolve(to);
@@ -90,7 +97,7 @@ export function relative(from: string, to: string): string {
90
97
  }
91
98
 
92
99
  export function normalize(path: string): string {
93
- if (useNodePath()) return nodePath!.normalize(path);
100
+ if (useNodePath([path])) return nodePath!.normalize(path);
94
101
  if (path === "") return ".";
95
102
 
96
103
  const p = normSep(path);
@@ -2,6 +2,11 @@ import * as dntShim from "../../../../_dnt.shims.js";
2
2
  import { hasNodePath, isDeno } from "./runtime.js";
3
3
  import { isAbsolute, resolve } from "./resolution.js";
4
4
 
5
+ type GlobalWithRequire = typeof dntShim.dntGlobalThis & {
6
+ require?: (specifier: string) => { fileURLToPath?: (url: string | URL) => string };
7
+ Deno?: { cwd?: () => string; build?: { os?: string } };
8
+ };
9
+
5
10
  let _fileURLToPath: ((url: string | URL) => string) | null = null;
6
11
 
7
12
  function getFileURLToPath(): ((url: string | URL) => string) | null {
@@ -9,10 +14,8 @@ function getFileURLToPath(): ((url: string | URL) => string) | null {
9
14
  if (!hasNodePath) return null;
10
15
 
11
16
  try {
12
- const nodeUrl = (dntShim.dntGlobalThis as any).require?.("node:url");
13
- const fileURLToPath = nodeUrl?.fileURLToPath as
14
- | ((url: string | URL) => string)
15
- | undefined;
17
+ const nodeUrl = (dntShim.dntGlobalThis as GlobalWithRequire).require?.("node:url");
18
+ const fileURLToPath = nodeUrl?.fileURLToPath;
16
19
 
17
20
  if (!fileURLToPath) return null;
18
21
 
@@ -30,8 +33,9 @@ export function fromFileUrl(url: string | URL): string {
30
33
  const urlString = typeof url === "string" ? url : url.toString();
31
34
 
32
35
  if (isDeno) {
33
- const hasCwd = Boolean((dntShim.Deno as any).cwd);
34
- const isWindows = (dntShim.dntGlobalThis as any).Deno?.build?.os === "windows";
36
+ const g = dntShim.dntGlobalThis as GlobalWithRequire;
37
+ const hasCwd = Boolean(g.Deno?.cwd);
38
+ const isWindows = g.Deno?.build?.os === "windows";
35
39
 
36
40
  if (hasCwd && isWindows) {
37
41
  return decodeURIComponent(urlString.slice(8).replace(/\//g, "\\"));